From 104a161ff0369107698edd807a29e6ec35f539df Mon Sep 17 00:00:00 2001 From: lyy <2783432487@qq.com> Date: Fri, 10 May 2024 23:39:25 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=89=8D=E7=AB=AF=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E4=BB=A5=E5=8F=8A=E5=AF=B9=E5=BA=94=E7=B4=A0=E6=9D=90?= =?UTF-8?q?=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/assets/DetectUI.html | 231 + src/assets/GuideUI.html | 132 + src/assets/LoginUI.html | 158 + src/assets/MainPageUI.html | 192 + src/assets/RegisterUI.html | 147 + src/assets/assets/css/style.css | 288 + src/assets/assets/images/05.jpg | Bin 0 -> 726590 bytes src/assets/assets/images/Nginx.jpg | Bin 0 -> 36575 bytes src/assets/assets/images/R-C (1).png | Bin 0 -> 320599 bytes src/assets/assets/images/R-C blue.png | Bin 0 -> 151250 bytes src/assets/assets/images/R-C green.png | Bin 0 -> 177012 bytes src/assets/assets/images/R-C pink.png | Bin 0 -> 167905 bytes src/assets/assets/images/R-C red.png | Bin 0 -> 158312 bytes src/assets/assets/images/R-C.jpg | Bin 0 -> 1330305 bytes src/assets/assets/images/R-C.png | Bin 0 -> 2072669 bytes src/assets/assets/images/background.png | Bin 0 -> 242675 bytes src/assets/assets/images/bg.jpg | Bin 0 -> 545595 bytes src/assets/assets/images/bg.png | Bin 0 -> 757742 bytes src/assets/assets/images/button.jpg | Bin 0 -> 75442 bytes src/assets/assets/images/cg.jpg | Bin 0 -> 6372 bytes src/assets/assets/images/delete.png | Bin 0 -> 6218 bytes src/assets/assets/images/dove.png | Bin 0 -> 11389 bytes src/assets/assets/images/img1-1.png | Bin 0 -> 418454 bytes src/assets/assets/images/img1.jpg | Bin 0 -> 104580 bytes src/assets/assets/images/img2-1.png | Bin 0 -> 208957 bytes src/assets/assets/images/img2.jpg | Bin 0 -> 83170 bytes src/assets/assets/images/logo.svg | 4 + src/assets/assets/images/nginx.gif | Bin 0 -> 12532 bytes src/assets/assets/js/data.json | 20 + src/assets/assets/js/jquery.js | 2 + src/assets/assets/js/script.js | 149 + src/assets/css/index.css | 235 + src/assets/css/msgList.css | 0 src/assets/css/public.css | 138 + src/assets/css/rainbow.css | 93 + src/assets/css/reset.css | 76 + src/assets/echarts.js | 85683 ++++++++++++++++++++++ src/assets/echarts.min.js | 45 + src/assets/jquery.min.js | 2 + src/assets/msgList.css | 206 + 40 files changed, 87801 insertions(+) create mode 100644 src/assets/DetectUI.html create mode 100644 src/assets/GuideUI.html create mode 100644 src/assets/LoginUI.html create mode 100644 src/assets/MainPageUI.html create mode 100644 src/assets/RegisterUI.html create mode 100644 src/assets/assets/css/style.css create mode 100644 src/assets/assets/images/05.jpg create mode 100644 src/assets/assets/images/Nginx.jpg create mode 100644 src/assets/assets/images/R-C (1).png create mode 100644 src/assets/assets/images/R-C blue.png create mode 100644 src/assets/assets/images/R-C green.png create mode 100644 src/assets/assets/images/R-C pink.png create mode 100644 src/assets/assets/images/R-C red.png create mode 100644 src/assets/assets/images/R-C.jpg create mode 100644 src/assets/assets/images/R-C.png create mode 100644 src/assets/assets/images/background.png create mode 100644 src/assets/assets/images/bg.jpg create mode 100644 src/assets/assets/images/bg.png create mode 100644 src/assets/assets/images/button.jpg create mode 100644 src/assets/assets/images/cg.jpg create mode 100644 src/assets/assets/images/delete.png create mode 100644 src/assets/assets/images/dove.png create mode 100644 src/assets/assets/images/img1-1.png create mode 100644 src/assets/assets/images/img1.jpg create mode 100644 src/assets/assets/images/img2-1.png create mode 100644 src/assets/assets/images/img2.jpg create mode 100644 src/assets/assets/images/logo.svg create mode 100644 src/assets/assets/images/nginx.gif create mode 100644 src/assets/assets/js/data.json create mode 100644 src/assets/assets/js/jquery.js create mode 100644 src/assets/assets/js/script.js create mode 100644 src/assets/css/index.css create mode 100644 src/assets/css/msgList.css create mode 100644 src/assets/css/public.css create mode 100644 src/assets/css/rainbow.css create mode 100644 src/assets/css/reset.css create mode 100644 src/assets/echarts.js create mode 100644 src/assets/echarts.min.js create mode 100644 src/assets/jquery.min.js create mode 100644 src/assets/msgList.css diff --git a/src/assets/DetectUI.html b/src/assets/DetectUI.html new file mode 100644 index 0000000..730e903 --- /dev/null +++ b/src/assets/DetectUI.html @@ -0,0 +1,231 @@ + + + + + + Title + + + + + + +
+
+ Open main menu +
+
+ +
+ + +
+ +

消息类别统计表

+ + + + + + + + + + + + + + + + + + + + +
北京 +
+
上海 +
+
长沙 +
+
+ + + +
+ +
+

最近7天总共有:

+ + 478条 +
+ +
+ +2.4% + +

from last month

+
+ +
+ +
+ +
+ + +
+ + +
+
+
+
+
+ 消息列表: + 清空所有消息 + + 全部标记为已读 +
+ + +
+ + + + 2019-03-28 +
+
第一个测试发送消息的内容
+ +
  • +
    + + + + +
    +
    + + + + 2019-03-28 +
    +
    第一个测试发送消息的内容
    +
  • +
  • +
    + + + + +
    +
    + + + + 2019-03-28 +
    +
    第三个测试发送消息的内容,大声说出你们的爱
    +
  • + +
    + +
    + +
    +
    +
    +
    + + + + \ No newline at end of file diff --git a/src/assets/GuideUI.html b/src/assets/GuideUI.html new file mode 100644 index 0000000..bab7a5d --- /dev/null +++ b/src/assets/GuideUI.html @@ -0,0 +1,132 @@ + +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + + + +

    welcome

    + + + \ No newline at end of file diff --git a/src/assets/LoginUI.html b/src/assets/LoginUI.html new file mode 100644 index 0000000..200f410 --- /dev/null +++ b/src/assets/LoginUI.html @@ -0,0 +1,158 @@ + + + + +LoginUI + + + + + +
    +
    +
    + +
    +
    + 1 + 2 +
    +
    + + + + \ No newline at end of file diff --git a/src/assets/MainPageUI.html b/src/assets/MainPageUI.html new file mode 100644 index 0000000..a574603 --- /dev/null +++ b/src/assets/MainPageUI.html @@ -0,0 +1,192 @@ + + + + + + + + + + + + + 首页 + + + + + + + + + + +
    + +

    + +

    + +
    + +
    + +
    +
    +
    + + + + + +
    + +
    +

    版本更新情况

    + + +
    + +
    +

    服务器列表

    +

    北京 ip:192.168.20.2

    +

    广州 ip:192.168.21.4

    +

    长沙 ip:192.168.23.4

    +
    + +
    +

    最近操作

    +

    开启主备切换服务

    +

    开启Nginx服务

    + + +
    +
    + +
    +

    当前可用服务

    +
    +
    +
    +
    查看主动探测
    +
    +
    +
    +
    查看流量控制
    +
    +
    +
    +
    启用主备切换
    +
    +
    +
    +
    查看Nginx日志
    +
    +
    +
    + + + + + + + \ No newline at end of file diff --git a/src/assets/RegisterUI.html b/src/assets/RegisterUI.html new file mode 100644 index 0000000..16902a5 --- /dev/null +++ b/src/assets/RegisterUI.html @@ -0,0 +1,147 @@ + + + + + 注册页面 + + + + + +
    +
    +

    新用户注册

    +

    USER REGISTER

    +
    +
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    +
    +
    +
    +
    +

    返回登录界面

    +
    +
    + + diff --git a/src/assets/assets/css/style.css b/src/assets/assets/css/style.css new file mode 100644 index 0000000..6f672bf --- /dev/null +++ b/src/assets/assets/css/style.css @@ -0,0 +1,288 @@ +/*-----------------------------------*\ + #style.css +\*-----------------------------------*/ + +/** + * copyright 2022 codewithsadee + */ + + + + + +/*-----------------------------------*\ + #CUSTOM PROPERTY +\*-----------------------------------*/ + +:root { + + /** + * colors + */ + + --medium-slate-blue: hsl(240, 73%, 65%); + --space-cadet_10: hsl(226, 54%, 26%, 0.1); + --space-cadet: hsl(226, 54%, 26%); + --ghost-white: hsl(227, 69%, 97%); + --cool-gray: hsl(226, 19%, 63%); + --cultured: hsl(0, 0%, 95%); + --white: hsl(0, 0%, 100%); + + /** + * typography + */ + + --ff-dm-sans: 'Roboto', sans-serif; + --ff-helvetica: 'Helvetica', sans-serif; + + --fs-1: 3rem; + --fs-2: 2.4rem; + --fs-3: 1.5rem; + --fs-4: 1.2rem; + + --fw-500: 500; + --fw-600: 600; + --fw-700: 700; + + /** + * shadow + */ + + --shadow: 1px 1px 3px hsla(0, 0%, 0%, 0.15); + + /** + * radius + */ + + --radius-5: 5px; + --radius-15: 15px; + + /** + * transition + */ + + --transition-1: 0.25s ease; + --transition-2: 1s ease; + +} + + + + + +/*-----------------------------------*\ + #RESET +\*-----------------------------------*/ + +*, +*::before, +*::after { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +span, +data { display: block; } + +img { height: auto; } + +table, +tbody, +tr, +th, +td { + all: unset; +} + +html { + font-family: var(--ff-dm-sans); + font-size: 10px; +} + +body { + background-color: var(--ghost-white); + color: var(--cool-gray); + font-size: 1.6rem; + padding-inline: 15px; + min-height: 100vh; +} + + + + + +/*-----------------------------------*\ + #REUSED STYLE +\*-----------------------------------*/ + +.flex-center { + display: flex; + justify-content: center; + align-items: center; +} + +.balance-card, +.chart-card { + width: 300px; + height: 150px; + position: relative; + padding: 5px; + border-radius: var(--radius-10); +} + +.text { font-size: var(--fs-3); } + +.h2 { font-size: var(--fs-2); } + + + + + +/*-----------------------------------*\ + #BALANCE CARD +\*-----------------------------------*/ + +.chart-container { + width: 100%; + max-width: 540px; + margin-inline: 100px; + left: 50px; +} + +.balance-card { + background-color: var(--medium-slate-blue); + color: var(--white); + justify-content: space-between; + margin-block-end: 15px; +} + +.balance-card .text { + font-weight: unset; + margin-block-end: 5px; +} + +.balance-card .h2 { font-weight: var(--fw-700); } + +.balance-card .logo { width: 60px; } + + + + + +/*-----------------------------------*\ + #CHART CARD +\*-----------------------------------*/ + +.chart-card { + position: relative; + margin-right: 30px; + background-color: var(--white); +} + +.chart-card .h2 { + color: var(--space-cadet); + font-weight: var(--fw-500); + margin-block-end: 50px; +} + +.chart-card .card-table { + display: block; + padding-block-end: 24px; + border-block-end: 1px solid var(--space-cadet_10); + margin-block-end: 24px; +} + +.chart-card .table-body { + justify-content: space-evenly; + align-items: stretch; + gap: 12px; +} + +.chart-card .table-row { + flex-direction: column-reverse; + justify-content: flex-start; + gap: 10px; + min-height: calc(150px + 31px); +} + +.chart-card .table-heading { + color: var(--space-cadet); + font-family: var(--ff-helvetica); + font-size: var(--fs-4); +} + +.chart-card .table-data { + min-width: 20px; + height: 100%; + background-color: var(--cultured); + cursor: pointer; +} + +.chart-card .chart-bar { + background-color: var(--medium-slate-blue); + height: 100%; + transform-origin: bottom; + transition: transform var(--transition-2); +} + +.chart-card .chart-bar:hover { opacity: 0.75; } + +.tooltip { + position: fixed; + top: 0; + left: 50%; + transform: translateX(-50%); + background-color: var(--white); + color: var(--space-cadet); + font-family: var(--ff-helvetica); + font-weight: var(--fw-600); + padding: 8px; + border: 1px solid var(--cultured); + border-radius: var(--radius-5); + box-shadow: var(--shadow); + pointer-events: none; + opacity: 0; + transition: var(--transition-1); +} + +.tooltip.active { opacity: 1; } + +.chart-card .wrapper { + justify-content: space-between; + align-items: flex-start; +} + +.chart-card .meta-value { + color: var(--space-cadet); + font-weight: var(--fw-500); + margin-block-start: 5px; +} + +.chart-card .meta-value:not(.small) { font-size: var(--fs-1); } + +.chart-card .card-meta:last-child { + align-self: flex-end; + text-align: right; +} + +.piechart{ + margin-top: -180px; + left: 600px; + width: 150px; + height: 150px; + position: fixed; + padding: 5px; + border-radius: var(--radius-10); +} + + + +/*-----------------------------------*\ + #MEDIA QUERIES +\*-----------------------------------*/ + +/** + * responsive for large than 768px screen + */ + diff --git a/src/assets/assets/images/05.jpg b/src/assets/assets/images/05.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a059578bf43a093732c64579660e74507a736101 GIT binary patch literal 726590 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

    ?Q%**c1%JCArlM> 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]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

    CPlMo&RYDT&w~GJ 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%0DQUW2*)WCi)KRR{#1U6`?Job-3 zJ+2pX<@Ag{laTk8ZR_nf!y_W6cZ&GvxgOlT6Cu~<`=-lO+-4;XOTyz`92z=)$k1x+ z)QS^@yc%?_(BX8pWX+AY;4acUl}JJs>DhPLY{2om@r+diAZG>T1FYXxWu-+ylk{e# z{i^oEarG)TK2lEXzM72Nv247uu2ne5*R>)km0c8qu(rS0kWhv#Kdy^+xTFaf)aDN?`ATPauBe(aR?*L$b;!IHTEgv|%+JF+Qt$x<(5 z45%~UHUthi2i$R_TX?K>G31 zbHKFZet9tDG_=7@y}C}!)k4$B;2aPrKfar_dJb4I6_)4Ytf&&EFLMGzSAeQ|vazz` zwxTvi^-L_X9!$7Ntas+Mg-qMfW>}`g3EIw27_H|_zPUWePVvgAa$m1Wa(UBHXx?mP z=iamhiYypd`8JMsBW$gJ#h;IcygfJvs8tjP4`Z;;^ICWb#0k=h5CvQ2^W!xTzDE_d zm)&pFuBs%02KGACUc*=orHSl3sJWcDE%fSR!(Fy8EFPSF#J;!|f&3b9YiB_Led8b_ zZT>^PFteMQ+Vribl2_lFu!jitJRJ!Lx~<66*0Ss9hAV?;FV`w@3bEO>3x6JO?5*v( znb$jzH{~gJP^VH}p8^?udf#-YY}6X#hmDOf#a^lL&m-kBN(phC3R{v$v7RN#`%DY4Nz9fR7)0oow`UE`V0e|X ze|(A8_sop%Skg4()2>p>HDCdOH^i>rY#gB3Mm)?J+f$?9G0y9v{$+_ zk@5Ljx_9o!+8K*PY@SpJ_b%5L7mgf>8ESd3iu=$=V%!7?Jb)FN`PA#hnCzxat$+=J#vYCyZBW_yjx}#(`(+vOs?>ku&Xq zHk#$v3jF2@Whz{_V0TY1;0c8ghSe{@^c9qj|1kZ;O#)=crXWt;J6T-C6~3qz1y@B| zr47FVtvPSe#)pk4RkiWX?g6`@NtJZTQ1M1BEphObX>Ph}VGr2L`Km@l)m1)=2@0;g zS^lV~GwT%0+s5_g*m~VUH_lWsvEncqSehnpzzjBo?&9=i7*C%K z`m?X^Wa*r(K;o0yU7ZfQA8*B3zE>$~7)$ry=*y^v&D>nT{)VMT1|l*rWKE( zwS-}gc%Q0es6aIR*>OVGq#Gb6gz;4$;T?OuJo@ZAqDZ)%1DN(E4(RJLBZ`JwL+E;< z8n_>G%(sBf+I8vABGjT6JnaYjc7hN}$Qg7CaN=~BXD*~;-!p&_Sxrhy+bMci#(28U zGds~G&%M5SHsM`mzj~U#76=jcp|9H<<(;YQb=H#D4KB#j%aV(C{*~B6kY|xJ#u|%@ zPI-)XB`!g0wbFn*4>3%}bw%6f0Od?RDy|=Lh!Sd@VHr*hjPv8K0vQ-a4|CTg)rjf)GJFWHD$b#6G6?J^g-JH?@^eFBky2gtc- zS52P4GMiR7#zRUk+i@bLCBU0-F8ZGiP>wXDIeBF{6NvI8qLf1 z?m2J_I5y&YC%4Snv+}4z&xE zQ0GQJ%-_~eH4SF3U)PHx3(RYv@jF_+yW;qObw$7SHrbE_?8SaNl)VKXXd>`uwRu` z&H-Ih@Ahb?o+r&Lm4+w~6c#XM>os-!&FzkqWm%0DB-lDKC_^oJ8KQ3s`aTU~SXfy) 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 literal 0 HcmV?d00001 diff --git a/src/assets/assets/images/R-C (1).png b/src/assets/assets/images/R-C (1).png new file mode 100644 index 0000000000000000000000000000000000000000..94e593641ed4f9fc24c96425aed6a005c5a58b56 GIT binary patch literal 320599 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

  • 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 z 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

    sgcCn%R8yp^*jQ0fjY>dNCAKypKU*T)x3&KM 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%0AU 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%0DIp;FSgQ+nll%2|PX4cZ^7}{j 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 hRJ${d3?0$qd-SVWMB$XNpCj7C2T{F@vm literal 0 HcmV?d00001 diff --git a/src/assets/assets/images/R-C blue.png b/src/assets/assets/images/R-C blue.png new file mode 100644 index 0000000000000000000000000000000000000000..2cb2e959682a452e1736a098e3b599472ec1e1f4 GIT binary patch literal 151250 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%0AX zGgQk`nX91^MZLH{DH}jJ1;q}EBGw9Qc>zg@xC@Qpl#nt(%VJ0TtrbmKw9B9{hfXVy z3e2cC2ng$73I&ql3?to9RH8_-E+G|$Sna8HJj~?a?Xa65B*S)d?dW!w<$oSzggrbX zX3m21&LSObZeX+h7K+E0b#8i_p_stM8D;{4B?Yv?>py3}f@5T=0_=vRLTPl5Q#j$M zrEDXCspAgXpTOyG?`NE>F8G(1p;aY!g3eG%s{L0lMWOBW_uOZ${Q2hGUT>b75-_h0&LjN5TuSWz2QuXyTn&~k^9ep{amo6+2{+dKf5-gigx%gfHT z6Gy&IzwgNB{5`7Vze_?^FFJ5PIX)hwq_|sW@8G)ow$dryW>}joUj6hB-~BFq`)A+Z zUm3R(?km^bU_W-n_qgjGKW`pIAyE{t#RZeR;*yWY?>+y8$@9+sI>yecGfp^Gf9$o# zZZ(2E*J+wH*Z-G&{ly<8F?F?S`Dhuo_ei9Ci%^fs0ts()wW8Op&FvLNO%nqaC zTw7NN&qf%FSzr7kv#g`UI3X**jgfREdSQr;n8gf$j4dN>1cI2P=oo4a`s#O35q2zO z5h_?f1{q;GNJq?*6f7zZk;D){*wR2u7zlJHLLspdqR9ekQjl~rFAAgtvGNHtw7GRs zmibD)ZApb6P)U@p)<7VI_rkNeZB>|g)j98KlK($G(WZKn>8r|o0o2>uwxvM33?~Fe zTB0=bcz*9n5dsQcXkT05rwNUty1qd9kpLDln#>b*BLWIEMFZ6-pt1r|#bC6Xg@ZQ8tFOie|WxxU>elL_#2Q zJrl6=U8;={LROLj;kP}Uu;pvpt8Tf?-Fo->_@=8avM>73w--0e^%ZY=xBSs*XXziF zc`91f?2AA3iR6W6J{#H(ffq>Xu|qt&dVz=%@}w7k)Bg0Pg{>y@YSl=cchYlvqt^D~ zYkry>c-mPzQitoGgY#Z`!e;EMU5Q50wm(|)U_{BVy0RNjUpd6zIEVgyD&#ls`AoIn zv)*gxe)k>w!QVV)?AV<2pPw~{zWqZa#&=Ma+UDoAYuC@1uU>r{)+Q(=!=HZe?fQW) zT|%fQHhbKfb<^e}mtK#xu{!3kedT}r^YhfppY}Ws-*=cr$=jTG@#o{cUi)ry)s6S7 z*Bqrlr37;s)@4YWR~ZFKT>dMTjaU}Y zxV+2kF+6XFXahA~4ASgg=30w)H0F!&uDTL2_neX9&PcBAeNa>Z!%tA(-r67IM4V~~w z5T|w9Efb=HK{&^MfER^ZtIlYejlm zqLF^Lq3{)BI$WTX4Z&=Ntq9+8jV*S_k|0sdE^=6r(j{zUsGvZs8dN(aNF_;m7DX9m z4Q5D!Y*TI(v8li=?GjKz&ty0&a6y}Dwt|Sgi6}71Z8VoY0u>8Np&TfiQF~b7(hL`L zbFUaLDYe+ynw(B&a!m}IHv@eWtwPd(Ko;<}vePueHG~5$Uj)HPkTVNJ@dyzUSW?2- z|Gt{4UcJ@*`1-GY+5E#{YkiW+vC%ZCOY?bGr8(WCVS# zQHHwW^yi}0X0irqq%xrY=}8B1^npv+8GJBOtFS2F*>f(xVk-v6uEaO*`(twLH{Tmf z9CfPt;4_ayKT4g9oy6ZfA**Bd-CItKX@$n!6aR_d+%v;toos0~JNdu|0Q$$LzgwSm z;xo4t3fe5Jb=%Pse`PzrVGiw>q% z+pJpF&wkQDLwg)`54t_o*3dKB`cmLzk%EfC=!^R{(yrcO-i%VLc!;0^8e`M~ZmlVWznQLktWd zDd1e@SqMa=V&JAI82Xux?BU)mPr0572 z267fKL>m-t+M-Q{?iPtvf|U8^a-Qm^9VF5la+*bF)8-BrrK~_wR`djfwii+e$THtB z%mn4k{~P>Z2ojvka*P>T`Qx1MdKT8h-kXKWf2VUNHYJ32_$FTjf-cf(uXjA<2>%jz z{3I|0-7+f4XopRrtco&G!gH`kC*1O)jt z=g;pD%c(6CNXAnvDG3fsi^<_h81NfGn`K@TWPO54#t4`I#L95}H$Jshldl)GYNT&C z|IFyVFMOO(kK5;8e4cssdFPu$PTM?LpZL{xLAFi;HOhD~r8GBIfD#J*tY?0bX<|J0t$A`x{b+EXJ5e8J8$smFQ5GH9Cz4WJYL*)vf1L=zpS-bW1mplgMBBq zl5BW9@i+I>Q(rvpgy___ToTX!<_Dbevy1E%x9rp>Ppw)$Y9CzJU>h*NW{*2!|5f&; zd;0!(s#-1CW^;!sJL;{^f0jJ^q?6e&^A~gITR+oNciZZ5*PnA<^p7XKIi0@ye(%;l>Qx%{9GQW0_MZH^VL|V6`QzgEIo@94^29rOgL-dY{Yr ze_IJ=X-e1(VBTZZwujS8NV5zzq=-wiRHsW&2x-ltQT(JXGDl#LOKM@U%u1n-KOiRi=}`cU@j1K4?<1~8q5BQ<*&KRc+XyH6_pJ`xQ=hG>I{q)bXKG! zY7G!$F8KEI?R&rR^Sm_QbZ?yZ(i5Vy-g8O1@$PHPB|rS8{pb~&`$_f$;}2WCD!Tqt zpHEAbXTm~JFng-(7IFKKh7N?C3ZSUA4M2cJTAmn(2peBt%hh zGvT1#$B4W0_QBtL)&B46evEN3QB>>+7TL?L|GmBDray0)i~;!hzh4O>dn%SQv`|5( zUPUX#VX_Q6oYCZ7Qd*=WgluZ&1{A$aB^@jaq%2_RlHy&L1G0Pwz+iJMxrD+}LA(7> zGZ3U1QH~ck#trr0HWbqYEWt8}L}4=+X$=w3!BzzUFtjj1N)uC4FxN%70cL|H6dYl* z1T0_%A!;Zrnz-D;2#d58jEXVJ5w0(xrn~5_=QsyW^yzyES-!p~C`+u$tIk||!bpz~ zn;beYqW4_CKMo~G$)?&vZ1F=r<(PR`q5~*$<54LHb4bG~LAwWE^wgWA!^kemDU1W_ z^32`4F_h?kE}8iPICP*#6lo^0Y3892kvAQk=kEsH3>uc8GYs8;X045)>PM+-DYIBy zJD^lhByt|QReyda3?)Ls>5M=Zh>Md{Y!x-@NNO5WoTX$&sjP!qvVwqN3{7U`A89O0 zL3>ys6&b2-Db4Q*xkylwLlrhxi}N~vJ;5pqR0-$0P*vz0+6eRS5FlkO$&wTqh(6Or zcQdM!B_dV;CBoBR_hTyCfG$38#Sh}2T>U=#z(e=g3$D0rGdJp=yyF~w&xIHAtV33F z%bLH$Pkh};u<)QF%b-h#BnRdkUZP)O*+6pDSKeTran`%HGF;srfVCs)aPx0fWwFPMYH`K`=fp1zh#B2K63Q2;d|csm85n34|v=4U$o!2@lV@K zVmpc`3f1W^JJNpW8~?LS)wEtzt0hi7_E0Xm;#RDUiK0-gnyA`4*UYfE(vHGle0t3v zC*Sdbf8o+gAJF&y*JqVAseRSOpETFq^bm_yPc=SLwUhOjYBdOde*W7T9~iT*|NLjo zH8(xTHdfhi@+&{IW6O@IvPUs;t56L`*!6~_WEljCX03xECS?}Ioag7_H74k<{2uY! zR9;BvpEgB6mdh{}fI-H)2V$Cn(0Y3!BOx8J#PS{zVgi;?X)niwmQ>DBwd1IUB^kiq z?CCf`OF+#stL7ML4I&dod#s713^NipDCnpr)m8;nEHD{N64_y*IZ0X&gbNOr`GFH9 zd_n?ndDAQrK4As50!fe%&KA%Mfbi!>Xa2Z*$O4_i6v$-`l=PCHdDZNymQE@uWs+uj9Z@z)*wn;>4HN-kvqVzNNQ%=`T0^L& zBw5z>c1s&IvMXpTZxLn{)J9NRGCMLwK$(OVDSyd9tS1m|EMpfk0_PVVGgP2H_z;$! z#EK$e!3!zjcUlTT#FL0NM3{+$CTmEU$B+^+fbCzOMIy5=YJ=}B^kXC-8Qe(BUje%| z8GPKA967d`8hZ|>Z7-Dl0=@BAdj&Z3mi-5c&w%NyM- z2l(dwH`!0z_(vY2A?n|!Lav4($L+BfWC3+1?YFkx-tS7NLszfRhwZT%b|MJfY_T0SwTtnJ!TSTi=?FfVEp+R1to zugjzc3+NCTMeH?KR)YS!PttYDN04fGIYa%g;@H@Dl0%PWK<^u#->IX zpI*&G{V+z%QH*mW5eE~p4~kJzblzm~{=q7DkM>oHx4I072pD3-9*Am6Y6i6P$t@mB zX~?@sm}Q7DA|iq=)TRnlsgS4**iuH=5=3qk6U7$Rnda6qDG zp^C;GQRG#=%3VuPiliX1BB$gDU``SkL8shCQAWjzWWYDpRHsBD z1!=KC#f}opOYE4%3WIJ0=#C&+-X$VHO*$|c&5;J62qyzZ9vUNJw|s|nCw57aBVUz(b$8K3CNi{Jykeg02EM^sKzBoGiKS4UulYvAis4TU`d&$sqcqcMxrH3ddSVq zq^R~#&X12*>Ic7g-jyRv0E-a9epg!~3L$?y0f9?SX@aE%==c$KRc{E{d#!SPn%8%x0 zx2|8u`q>5fq!*th-~N;r{H>aMf4d6#t%n~OefrEx)8;K#x(japuKnn>e|R)2&h|om z{mrin_gYnrpLzP%Fm}7Ldityro{KCe=EL9lAFOTbGhTG;=tn;P6-{lq$t3Gvbi)2z z_2awL^6?tginjNxnNjSs8F#7K*Kk_Oa@3u#!?dQ!_q+W1cv5EX%56F1S5?yNh*lPV-jLUnj_c+ zMLd?E$cP#tRw|O}EMZndH=r??Vr7SDZU9#d=!7$j%njhWie#jNOv?mKzr_#pylf=- zr}Pzb|2xU6|2W??hO-%og`ORebQws2%Q0F+KE#s$e*!ygm*_>eQ9|B$%EM+EVLl+z zYaXgBuR<~pv-Ie0E}zy5T}F}*n7GUvjA|ihkAl>KU;joNGp;! zyoZDqey`>)$?_I_1Yt{o9S{F7`ecVND$Vvv9#lCGduuhJfAQLimf znGFdW6{uN~YK(3SP@5@HAD+e5ibOMxFdZfirU{}UYKw>_{pQkfP@XpsR?Z8KSHT zvleOv5;aS;QzK0TEVrb@RNLdImZLF|5$ig&_6TZLz;Z}fOU$2Pd>^6>kw52IhH6+s zwGtC`urx^U118=Hae}lfFky=pDH737#$Jgn%jZH<5)_udFg{Ynm;!Vh2uXrK%?=QZ ztf0eM!mpqGv*gO_w>B+3^NO#hBjc!rbb+;Nw`%^`%YJn|cTU#L3orf{Z@l?8@{Fhd zQ@HXU-)1R}Vx$wUi%UI-T`T^xa+Uj$8Nj8DOrO5`%rmI0 z*k2JAB32N_0+R`}b5yOsR0K`&0G2i(f;4w+$lnpm6fyVH){WjqbM(*5 zj?GXXUmzV(ATn$tqcWw5rpttNM`(PKQ<&CnN445}GgwPGrcr0Td~% zA%nsZwTDS@BsISkEu~{vn%J5^%{zi@5F5l^XCfISFuAY~zL}#k&~q7Nmb4-~8iSSi-=yG21qKQ9E4pZcxJ&^*P^Ok$%vnmK!DB@cFbCI)1r0rql ze&q;l&V-Tvz2gBe!cl2}UdR)DJHuphq8+VnuE86-?Pk za{6VLnAd*pd)OWHngD&pTi>ZpKKjW$2B5v_mfLm-XI4t~G&!~x_IFcj4Ww?oFvimH z$L+iKx51EKvF9PtelL1=+Pd*F^WmRgyGw&0f7&p~RK3kEnw$b)ZDw!z{RaD~Yx+9L zYTs28RI8gXUZrI1>Yx3%#y+ccHcF6bPj)}-IUkCC@u>?oQ+>16nX|s~Q+wl`52IAZ zbDp|?w9m8uUA_MJS8VC62S5}RIrbUl zO=8w!xQAJ8rY?U?edu>2WA_t}Iub2>^{Irv`9~e_5RekElv-ywOlQ>W1Whr89fHV7 zbUcJ*p15YQ3tejI2$nYOVMn=TD0OSJp!i;UD9~CODzjsx~=yJLxCyP5+muEFY5w zZ5KV>lPA3JevV69>9stfOymZ#{y3ZvUKRrXJB4pXB6GSPSw11ytDFVtTo-BlpoEkj zt9D8deuf-kE4&+b7!B) zyzX;fH`m_yXTYl09{sfN$}``t-~FOzpj3!bk|@+@C3>zI5B~EB`%ixR;uHDf56_OD zdBzzeW}`ahuzka?p7zqss%&eWyXrT$HrM{@TlS5g`FMXiaPhG|{HY&-T|LBJRMG)l zS9%3CnL#E1CU!)25X&sdupn#-qHKVvaMl}>)~f{5 zmc)5{w^v0f=ivpTK+bgiw;O@c`Df4kVv#7}xA?h(ho-0Li^p;E#{@`1L|;?FLN0=o z3(MpcFXRbc`sZsU2x|qX6)@Vrk783bZH5$#XvnK~oq3!)k>Cozfb;@Ma+5BG!Z+q zfL<7eSYXE&Jm+>QLlq>mrAcCnUV*P%pjoaHx&k6ObyAH=y#J*q=odfbnDE*UydFu-Jnb!?w5MIMnQSM3 zTGQU3yn_He1A)K$_^+pgH-F?qz2eK>w{9bTUSWr!UUc}u9Jp%J z)Sq`1*>P1h8P78}kHsOMGW^8HOM!db3E94A?|o|ryx?6)>$jKl)!TlFdyE9>fBpO? zx%S4tkSBBXtV8x;d}PN5_p`hIlwNb&4d&9{-Hf$~`j6*5ePr&A`&CIju|H&?wX!FD zoZO`HXK^H zucE3o6PTEOB_=aSYhYMQ!kkz2+J%9jkW$XE)HxNYliwJYh<(tlh%i;Yabz8~=4fyi zikOh)MDwGJOhp8Q)XTFFWvID~s5?R`XRtLv+IC1YLM$4nnnX1VC~6on0|OAwXewC+ zTkteGiJ)Th3e)9{${wS@K|n^e9pa?(`W3Jl^PxW~p80M+X9A-HuA6x}TYl9l^2bR3T%Rj9y{=Qf`Kg5Px(p>Sp~B=tA2xrE zubO@0Hxg3it70eojwF$OQL)mGZ#$8H1m$-wNKZ8jbBH6=8LHSN>;xoIVngqe9oc** zk@}=;5tw<0nlvz2pd~w0=c>rACK;*|P@pm>%#YlDt%qUEyknhfV+9`rGXZYBhlk62!1Zl2W z9OmSwm``BoRt;yC}fPk~wO=B!r;u-8vHKD>&;s zzS~Q3NI|8WVKay&$k;(wk`5^10_gmH3T>7%D0~CWGaj-Wo6V5IKgN)u^5oXzQ7c3) ziJ5;}MTwFEr#u{>9iZ|AozvfXm1%FV#0o*$yS1f2I#0FJ4s^j+f66$|6P6xw=r#82 zup${$=z{+|y$YQkwXN4A#ETpCsJ@#LE{jvPn2UNH`1S zMwJRMt3(4R)YKLYyZ!Pfk!2Nxk?=9~$uE)`El%DGNjt^RfT@ zdj?_+R%NiUOD$XGomHN7^hHE+#pXAy&FrE7{^8`==Y7z=;R{zR#(&k}D|b_89{n^{ zj}HOD-tgc(;sr(?%ZnqI2{c5C2D`D(?JQ+m6STkkt{ZSF&U* zRA|BNb9Z7l85%yGu=lOqnC$bKcXQLN4}(w8(VbsBmwi@mduARWii%3ppW1svS{mz#kjN1BS>NTJFT1oA> zyJCdM4ia^}^-z*0l60g)%3ra$0aHlNOmfGkHv$yB0YyQKA!3wTy3&_q(%&XYMKW3V zQ?7-vjHUB?5T(m#iCN-WiVZTT7f8_5OEcI(ftmyCAWgY}b~QuIfwE;fYL+<4D9@Cs zG5}=(1yDA_$h;CQ$UYy}f^X90G`oC|4m~GOsX*n`tH*N%vCJub{f3`URw_?KMgoHx zhBYS0;f(zFwFTYrZzPq>t7&{=Pzt1ju$7^k7P=0nyu@hee8WyPx&*Ubu(|Vv$okDX z<2;K4>uH19;j2`YSI@EsUt~niCu#)wsCV87Ty(n{a+oCRK|1uS<-}!FW(A}fq1nV| zwj%2{rIhqipQ+3+1&PtZ6Ea4@vOu^nhD#)7yai~~Oc7-j@mPz1B2hiUwJm0ON~#tJ zTf;Dyk&Xn^YtvL&fo8Rz{*?E?5=&b2+c}BnZO0-;(Z!IGU~)L3=LnrMVX$~CSs{@q z3dFP-;fX{u4jU@JKsk@;Tjz*oBQ!%e76|KCev?S=zS)IutmVP=vw&6mET8B#+vNGL z{I|-7KmDWdx1au0A8uIjrkBXqP?O^QXuf4VAp{bxSP^*8KrdQTmF z$iCsHUj4#e;bl(w%ID3IXMJ>gateJ)u0BZbd(3I3 zb@O+*@VCF%m1dqk@5JMGDnJjLuU5w$v>!?;CMNvvl#*)c_$KuxtqW@T$UxW~kP*X3 z3dAJdQQ^M(?qKD(*EZaiTHLaUq3T{wdzli&g89kq4{Sx(t5!>D&pn@-qRJKaM$Jo1 z*KTT97 zpw(rhvxI~;$>0K!$_Qsllo+I5tdmq6x~V9+aXPAwt%9B_FqG9$K^qr1!nqK{0!dXO z3zD!0H~2j`2$2tdc>FhVKKV(TSJ1QFJ|EdApOktSGTEl;$tUx?+OmGaEhU43r_JRW zO#XQ;L$w`h-g>D{DZIR9mVuNwn?X0*#EcNWqD>^|%=^K~%vbla$8A68eH)5pna`neD#`C3nV2$qCLE#GXJ>{U<=ZV;^%m^%AhjkFo{2xK{o^A zJmbR&w34KuBrQvtkwTRUn4-WG1(PEg_2L3SI!>kTNS3tyWjk9SG=kFHie?l|ktz`~SLRkZ z=NCZdqy8!0XaEEOBj|P&9ZQ-c>oF6)9cP5+Y{zpcLuM%vLl~(J<&>i*=;5-9LVxbn zr|7HCJwre6*^3DEgn8a4KGJy0na3wje)C&N%w+Fz?#7K*S-NxHl)=|a3W)NBgJ|M- zetWCf<_)))B~ejD`|Jasijq5(Y1k^ZfH$^^?>ulva@}R`l^bW)sWXn;cZULKJBY`g zkhM}gefbK7(sI^K+pBJ!Vi&L%_wgV7yswd}lvIcBzhY-AioN)%>*9T1cQ)7GumK?a z@#*glZ~WxB9ChS4fLb|To4DBO{osW^Fa)crtR!6U-6}0T<`^PydJ;dv zuz*D86>pJ{65F^2w+L_HuJF@HqdbY)oPyMkwQA>>9N9?BLj=?av;9dal9XpLHHqz5 zMp{GO!MD~y1&(k=Q_Y4*gBeWZsLV=++z5?A9W{_)X9Z!qk~=3um_#5Gl8SeTNR>~< zj-KLK)*mBIa~)%+Jyg?6vT06F3-c;T`)*gi^6YC*IG?POwk61XWh#Y#9^^b=At3b? zZ9Y3gkpEucJNo1_Gnw;^y&f_-+#&irVR~?L=99C_N2_J#lXx#L2dyqa%c0XAUC$@e zFcX-9ASh<20p%Bu{z!F?g4jDg-$XW9MqCg`C9z5pt6YW^zeu?JygA`_S2oK$OCc;k zm=f7Cs*}+!OF9T-BO+W-BuhG24AE?vFp;#EcZfxbZdA}suw!6L4XSnsHwo4W?2-kb zn48}=X%5YyO5h3#GD|oOB|CwlM29W`Wqb#tjn`Dkw-?gG@t6~`I{r!f>LzNh4arc}#0r_~8+Y;IL4FEK$7M)2-SqWwi(w=FhS-a+ zsi@A>P(*ap29hC%v5uiejTlGhKpw}HSSd*JjHmH9aj&vuK*E54oDHE7d1abcvMq;f zdg88?n-?C^<)ZWXw~^-mZSmFhX4g}Hq*~@b`GW0L@%5)_r+IRKp;W|8>C#QBF%FU175 z2py0X^g_na`j9Y&bfQCtjM7X**oJhuA1f}+4G_)?+Djb-O+qsWQ((0uSvp6`JW;ZY zO1dAG0b=gKjKxs2APdMWLq8G%%X8I1lV7*s71zLt)!FjBCa8mk zJ}Us_zIW5FAetu!0v(!s=pBnjk)odUw2Q)%kA8wa=jG2vsR4lG{a60L{ov+bV%-jh z%C?FqEUNQPJZ`fD?}tuy$hc5H+<2Ft<1~UpSC)7T`Sr0^$j2<(TM-n~=Jglbi+=Ol z$1<5`ufFA;_z9<+)myRjnJ+&!y7$ZHZ`ZFYkK~PC_*U|QbH9wS4PN+^0}_#j;N5op zI=(=##rk00^2KlP{qLO4E%k?RxbT~&y?*59-@m>(^@IQ7Sx0SCcwYYStzR<8m6{2n zHon_0@w`qcXvnoF+W95y-_H-3N^+-7ykeEfyZHsYS6WKMAOU4k1fWrNIm#&C;1ZAy zK_c!XWrl#2gtX9u4hm47E>U8HRMbgo1}hx3nFve3+GrL%AgI*~=xm6lo~1FEq2?6h zbAyn|yduqd83{AnCFm+_*+5wmW+E4R_f?|Kgx9B#qR*C)QV?|^bP}}k$yzA?SOs)4 zQUtP8KuVvWBt9`a0d%viFYkUb6_4&`%jhNNepcT0k7VaJfHV$mgkO#Fiag3`c}9Q@ z1y1|l`+<`jno$B3N=!j|%AoLTV5vv76QE2+CCPB*1!^v!G6T_^CG2D<?H?U zTK8GHxwb_)|9lQhkpzeO@+WTQ&HsFoI`z0Gp$KR+V|&)OezMrLWSbF%MRnp)hx9qb zak5~~x%BFtK5vV#S3Yo$x#nAEGjZhW)age)b6fqWoyB8I$Wc_}ANE{k$+T;vGyLYB zUE&_^EZnURuC-tL#ZNJ=1)x?hAJwlt?%?g>F-l3C>Szj?HvuhTaTw+Z&pP4X7dP{4 zGftW>egD_YnV@6_7*+;#^aBQ23D+!s1+hs5E-4r2)<%8gB>i7ps<*J zM_T2QnifBmZi(?zSbhTE?{7W#cAk_D0Wi*CM6o2zQ2-eTT;b1XIt=kd##$@T$uc(3 zz*OgP<&1J&6WKAKMRPDlDMz(lVuV4a!a8vc!dZyyAWF4BTTGhe6LAuqZ==)Pzb>2w zoWe#KCh+IP3P|O)zgU-Lqy>S&;haO~m}+mxLuL^6^l9i>EQvl%&{Nj7ky!r*n%w=^ zQPTDg@Skl_a$fvnB#>qV%`TXH@^(=LF3S=k0cC~hNp>nhyC_IPU#&~&Ut4Do8Luj5 z#iAjYalg2QGZ{T&f%2(S*qbpmBF8cW((6mm8~b_DI^DY0x3wFl9&U`GXUc?OV# zQv(nylJN{1O;XE72-$-aLsQ;MQn65w*n)z2%SgI6HHJ~Be23TL$CnlXZ%a|r4mGHO zX%q%SmxL~sY2u+6RbG@-G8lG$g!KXwLM4V%-x z`|bF5Kf1^^n^W{|(Dn5O*Zk&N0ctkQh3k7VNdZ}2zqjDRAAH?@>BoQADcfstKS?Rc ze?0%ud+}`<%_N~U=c&m5u;ekxaz3Vnte&^e-umEYp9Y07{oCm~aepIr#nm_6lX#1z zHh})}>;6N1_|v+vHvFXtC87CgAjyrO1 z7HM}R&-maujSpY=FY${$a3j$>lZ z8{Nj`SxgPWrbL@D6e*3tCX_N%T~W)1FohP;lH3Oz=_rh$N< zsW6!%sR}u~s_*u%?R4lzjtt|WYCEy0JDR>IT%NLc&zhUfuzb5;besnG83U;(}RpRzgn=pi@P% ze1SNah3*(?y=3ICRRTtVIpSzNCiE`TF3VtJMu}y9XoO;ZO=waKF$*XHDhm^kD9k{e z2Gbt9r9c(M5Q8MFg{s#I$<4ws(+gBsLWwfLOJ4MODqB>^fcngduMQ4=)|=H{yB(yD zJ9L7{Mr@vb_D9VV-t_Lp%{}vii$2o9=7K<;{o&>7Q%V%Ev@!pA<%XS2+flU|^XKVmP`qZ2bSFTdoXw7j6tF|_?XMN!p_WE1@!j?lIZ#?d( zpg26?D9O;(h*CwENpH-Vfho-s6Qih5CGwn0if9U6i7KbPMSTL1S%lHWl#kh#i@~sryZ@ylTz|P2{#WCjY;Q?Iz~MkjAE)!>T^INMuShKTNdId0csgC1e0gh+~>$xJ#-XGAAPF z$toQNNOI{-UtD-yiyBWr&4F18abNqQ2y{uYG+CfYlV&(gn421IbsqkAa{i?m~x=U1he%Ac#))~NVixaHg^Ze%ql&gv`pDpYXT}*qs73+oEo&ZhCtvav60=?P$nC~>me zc(ky^qgQ*2q9OdUujr9*Wrs*lo`L){hqdTOEDKKJt10u-d%mOTXTc2)*^> z?oCl!q1EowON^wT_E=3{U*F?EfMsH3b zRiLsAmF3E18M)vLNF`8OV96*gWTd`VM1a5+1(V!GN{bqM61EjGQOLn@jH(k4MpWA& zYF1FGj*}FoNvajXdCgF>#%#4kQrLhRTtYM_2t|z~11-G>4kDjg>*kA>@QpizSE-XC zBQc&k>#|K%tjvJSJB_5hs#)R3fMZKCpa@C|+0M|`Lm)Wc6f?pnDdjdnAltlJ9t%>j zjn~vc3EsI*%^twj)lVx%mov)NLjLZKn{W%Y9k;;@nNy+4j84Q+@bO~z4kqkmynnp1| zb-D8Nc;yY@Q1t~0RZ8fhDWDLP2CV0c7^Rb&pMYGt>oQyA=VTAI&78F%4+s zVN3S0nvh)(TkFN6u8`F;SM8w>dERN3@|e4;_290uD>jQI!xh!FrZ?xRs@0O(ceUS- zZ!fIPlKoHoQ1X(Gd<$b+@+D6`5Ee>?d0f7t&yuhu;+eeqQ(ulxx#+X;p07HC#B9{> zJMNX$Q{VIT(z&mB8%G^EwAJyQboAkrmW^vFGIFDYM)WJ6&;c^Th5}oXn6gBb6*f{d zBS|_S^JMJhF%`aARL=8JrGvm`*tSJ=GJ0mff$&?{R(YD3n26m_1f=B@LKtd5r9DQ3 zASusc2L<80BWjNV3GqM^8#6>K^V+MJyP!G_Iqz2%E5NzjMLMq*7gxis_a$%HV|y$i@@c|FKaV9g zyXbO}p&okz{O6aw4=Q9|b6I9UkCUA*s@M#v1hx!R3K%5_eS5*5KjmGr4L~L~8%O~^ zy%^@=M2Yl`LWG}y3@xZMLp>r$s+z`l6Ohzeqo^rMI_hYZrit7z;ZzY8eACaAW{KPo z(Z(ty65Fn#8KXnOWZ|!*Mbp=fR+Ea5mFRreXAwl~flDNINs42JO$G`%-I2T)!V;0u z(HpUWUxpF^GRsKgGL|7MwxqxG_NQ)zCFjXl?Z0Y;+Gph$pg8G>Bhct{kMVsulc^EOMd%X z`&if&mtOmOd+8<#V*S5Pd#gHNzt!;`C%&J=tVbzSu-J0H4(-`ubj9j5ZRlRuhJTvlZz zDgot0E*=E7qS#RQ1C~jkocEqxpRcJ9Q0&rkkPdLUWi!4fux&}0Oe*BlNrKlNrsF1(YA85z}^rW5@n8RW^-2?#?)>@pJLh`RK(h@}A8 z$@-lzm(dq&PvoX#+}notAPmQ2!^?KA5c1fB*S@2VT*o<&d^$ebio(Kl)L}osjhbD(kss)mAjH19$ zJp=>Ea?gdYEsUaPAqge%*c@O9+k=En53M9i9W6OU#4^B;@K=)IaRLK2v1qA?=0>oC zb-b3v3UnQ8QId#9NNHj6#OJk>yQIjxZvrtX36D@3UW!fy&Stbr1%d^z12qhD@RH|$ zn&_e%Y1;c19X{$shaapjeEn-wIgH|ex!^o|-W5M$ukjUnp)hTJfBS6japvitexd&D z$A6l_p8k7_u!y``HYCiV{`BWt%{PAi`)%!jw;Q!;qXz z<>%*Nf4=U|_E(pEAbiHlKW5)FeUtg!Wk1=~&++IJ@`2^u0+hCMg}S-^t~ve&?26m(W3V>2#WctBdv{L&TOn;&%rc3Dk!u&lOML~Gk z2Tx(P5ht(t@Krqui#g#V7n#L^)r((x-&GSyWpuZIKud-^>p(an1ZkGhC`{$eTLE~% zY{(e{{W4GIzw@jLozvO^Bpuo)iqv=lx+B4OJl6&?_a$>EDqu5o;t1zU1T{@VP1CBC zsLhuM8j5IO8I!t>swgT+g-RnJtPYdN8FZ~i*c6yB!Ui3v6rm}QU7wW6dJ1cP2%@i7 z;5?j>^u~>QM&=yFRSOWvNAX7^^E0!QqC&! z_kzI?qM22HK?l2GtnPo;K~lqoGbq*#@}}dLnU7rYXSQ^jZ@1>tP?yv}yDhQ5yZsS+ z$`?Mr<#%Fly6?{#ovK_c)qfH%kYp(kkkNd}hpwT%6GsrO6#sGDQ~B)Gw_$BeqZzx; zT=`3k+o8VlPGhp!QXA(|(3v~9x*AEqF3L(gs{2A6v3jK*Ste7uxHWTseN@zv9Yvg^ zBuW2^F;lI&{qg_&4D0D{;TPU`lK$99&qk@TilUHgK{~pGXet!YDD2hWdrR|kpMJ4D z>a;hLn2pi@de_^-=l}CZ`R9N57nB?TP)8oJ8l{Tc6%qOE+21s%-6M7<>_FJfysT!H zVJZs4B#Ja=N$koxRKR!64b8q<)+oV3gz4rQ5I}RFiDecTqsHDOs!lSPVv9hlKs6ad zBd8BdlhiU)Y+2f0=+Oo6nmWw4{3xz7gKepAa`Pxek?f32S1|B3%VNt zCbRkEn@=2x$Z_!uRN{dlQ&u^}ZF8#FHmSbs!szBsLgf>1TgP_Z@NvK2PNLTY?f>2H zHdJ2mD&t_jOW3yPJi(?iSCbQddmp%r#JOB;F4xVl_^HS&BM<_eWdwGUhO!j`J0dWp z4mK^4HZp7`NXjXdY=~&8h)Nvka!VXc6WS5VlU|G2PIPIMHc-t52&XE9)1XTQBFZQR zu|QIqLl*rtt(~N@zD&*SiJh?|BQVRu*xVJ}|LHJvNlDp!0Ll+V1$1DjfD{lIhf6Hc zl%>KbiiqgLZ~hWhy>juXwO8JBn>ph<-*F%Q{#WdOUVZy!`K2252QAb^C!YxAAunI+ z+xdzDCTCt)I_TeAa0*%tZ}t5y9jWy`s;XAX;fY5*1MTwzfW7R7o3@kzeN1tCW4!{y zP-!sd=j~EFI!eYrt=y9Xo_D&Lzv*(m{QKYHcEYYW{pH6-KREy2Hp5_cA?&Lz`Ev5= zk6(_l^C%^G@_{SV>tFF|LOCSg^1`E4p;75DNlZ+O4vGx!{Od!>TQB;Fx%JNVfJ=XL z$Ia$}8@{4$U-Mh6OTy2*@s;}W_q;QF=$jwos3W&FVys4?tS#G366laIoRwbLOZuuO z)lDojxm2OqC3(#r?^qF1Wq^=?h*fA)@D@WhqcsQ(9t7GfWi`50qLMBlCS`J91_r(B zLo{2WnvK#FQ`Bn<#6d=NCLnM%8lpi`F@z=~U2t9x0$>56ruI^p1C})O+8CkpO`|BM z+R5H9L!P9a+?14i>;j!Q%AE{7Z*jTo=;O(UyK;qYI}z_F{x*qumy)s+eZA>9HbfLZU$Y4YFB^~F>WvZ z>8NPSFU|Hh^2!M}VrL^cD${-UpQ ztqltVPu%YeBDrKUn(RxDI8^@Rz3<@g)k^?j>y1|O)H6Q(n7s9N;v~XV58oT#aOwM* zp4zBhbI9)Oq9o^|O33a><)r~iODDVb`!`Lp6GK09!DT;E+sJ)g>#Iy^JG*61&-kc{aTZY`EiD53e;<|Y6Q%;Yc z{)Vo&6PFAYO{!g5+r=Py_?A|&4Z zcIR8>puahnq%7bVC2R*MlQ&Q#G}RP-+?n4WP`6h(tNzd9NvzviEw=Zw{m-$>Z z=d_dbnJ<49N|h*wfzpM7)ygX!S?l6GPkMXW`pa#p*Zsrx@5fE|Wq9)^UKieV@kjOX zhwlq0d-;vOcc*>*yZrv486Gd@73zQ;TtN2r_3PF8=``H`gtO$o9dZOx{cRJn8m|p- zz;5FmOu;?UUbi#ywf|I`Lj&fn_3N7d`r$A3_~3?1Hc87R#!$u! z;aEKOmzHBxUKx9|OyoSs9e<~`PYv>?p~fl#TObu)L)Q+1WfDt9g#)oHFcmyZQcGwS zGiV6L+e=81B;{G;V1`N^VWUi#Rf)wU&8oq6Ew%+wUZN>HIlrMi7HI+90BtokaC8EX zZ5t&>9h8KilgqN%fW%N3H~#GjaU+=t+7iJO*zAff)iV3WPHf zo8;%&c@6F`r|2mMQGFCP2xM8)oM;iK1)_8bs;)7*Kz(^iGu(*EN{mcZQIn1&k|fLL z^MNJ}bZ8HPEQ$WaC0&s-e7(Go7pj-}?eE{;^X`3qN^XiJWCw3cgh&72?e8l6>%VWEupmus)R{hmkF=mW1NdEUv#Zl-M!CkyN>0X)>MgR*Y- z(u%)*h5U?Fd&vEdeOo|jlsg*_;U2vZy}jbvTe)xT41EALap^-3Jwjews8!2{)lmm- zrvA2c<3o3cZ+P`n0i};SYCopUhS2SnYL+5Vbm#(#G|N0`QYoqb^wp0>fBx1dw(`$= z$LD@%ue|PF?B*^7>f95L59AXDLq@2ilAyauHquE*_$%bC3yWlg5}Pi9?MDySQb+=J zgN_2{D<}zU5cdO3BK9R}YsMR+)Ust5<{_HI3^}ll>THqFj?kb^qcR5-N!S$B7RE_P zaY66%<`9eUKU(y}-}7OFmZjR1xsI{lMhC*Hwe>!i(gGI<(vruP1H9&OC*M-1d1YpL z2B4Yn^sOy^Y_@GGnqtx8{$Cf5J}LK}W}#mxCxX7?c9;*=kY?Cs7a9A#fp&`~7s)k~ zb4_KH`R~V=44o7RW&o2XV=FLHdghPt{Q!gKj@w~Dy}X`)5|x<>!IUMeLStl#P;{xz zk5F0fCwP+ODRE^z3QMiCgi-cJ5i-sFv`bwgn@{l79iyzEM3~P3D`Gm7@>?{`Z{^gF z2@&SJVBZq<`pL@q?^`-3TR~8lNGeD);gx4^rPAikx$-;dEx-6A^X*A)U)u#Td*zL{ z*&FYCn8i)NdK`xc=YbQybCr0H>;Of=JjwaL{G`3=#=F_FdANg6M<2MazUgCU_w$D_ zU3<7F*$=Q4twpL z512Q6=|{Z-l_x&=Q2p)qyc3;68cNCOi_d*a^3z}5r}kM{3qF17D}xW8ex;EMD+3lV z7~Jo!KHXgT-PhS;&v^%lnG7#D^dvBp71${Y#W<8$Q< zih^2GQHjSe3=>mlveF=}O7uL`T4Rh*#i%-FuuEVvYBOc@ytfDH2t0o5GHP8s?6PPL zujG4UmE}`ZS+>bNL*@#0ZHqJ+Ndc_R70*Nth2+eM9vx2YAgOMdc(>o2`+r+(T`l)^ z06U7_0xomcYNV&HrMaGk%jk>vBSfzAjJE;P0wetQqQs^tJtYLRx?aOs_#{hl6D1Tes5_6*sdeU z#()Cq8AqK(Np9BDvA3>Sn>_WMA5Hdt{pnkdGpkigN6Fb?@*AhV(NG&rv3OyzZeDy8 zNN9V$ePwo>ov_K&iANnC-u9_;`!b!syz5Wybzk|?W18e!d>p@7zm{vie@-y*%v1H- zk2qpiruKF{As<@V16+VWnyYVb^7tF*TZOsk7r!z`pL2fiO9-#~(AlLo9rrJ+|7##$ zee5%$eU5l_h^nQzFK)^Lc4mGqe%bpjGdJ9_7O>{rORq|PclCwba`&&e_4ZhQ=8dn6 zzW1TG1!tf9Dh@qln62(MB`J>#ml!BivO%y(p>dRE;lp$V-XX zlc=q{#G~|M#ckFRut1f)iL#Y6F*Hh3Obr?k5Y7ceW`Zgu>S`U0!59h|G$f%JCBYC6 zq^Nw|wV8(=Y+iLG(py;h4!!?r6nd2$1Ucx_+b8sR#X1wH*b&Yurc9@j6IA)1o;9PGqQHo8^&oW%Dr;L=SKtVy~j19ktCE8=j zo-6L(+u*Beo&O!@T~Um4gg|ZH!JL6%M?A2R0Le&Wgm6lE?((vET7^dls8O9Bq5Oyg zC1@;5i3g`h2(XliSxZ@Y55B0Ip{BYhhJhlAA_hmVL$Y{4#N{d5pQ|BijV0b!aM=R3 z?78S+*DpNbe3^(r5|S}qbX1uw@5>(Cxu_|pe|E+>`se4IrGN90ccRs>d&i|;PdoKn zK&6JRH*d&4TS(F4-S2+!>$mJ#snec+Z1}VD-rR>uue<9$d*_-zV_llRcV=(Ducv$a z*kfH|j{0`KIO zYVTW9r{f%j;cXXOsHiNLj1wgJe+lWEcaZ{SQFMq1=*{k%T+J9ZU6870 z%>yX9fb2JSB9{6)Q}{*=gDEi^&ZFe?i%o+uGNZ2)*Ta`J0$G;WvhdfM6lj}y zQ6lFTGNXiVcSzCyj{4W0$QMu{aiYia@QZ$EmY}BttdPVL9U8^;SR}RPa-#J`WF|?L zIc7(uv7*aJdyKIS6NF5V(xE+=kd%C{Ls~&(mgLUU3+Nme=&?k+A7qyhMF&a1AWJ)| z(Q$#+$_}x(8#}B}1%*}0@2=`8Fo-51{L-5~Nu-x=c~14GPdX{Q>*9~-^G`k&rAo}S z<}jpc>DUsK)b_r08%+7d$A<2%HBg{~$uVq0PspC3iC5@vzV%rBtu>#?Ef}86I~$kWMOemxpw}1=krBT5dP19o|zo>>i>K+YW>NlF6)o;$-5tU7({AmVW{R@;CWa! zc2soXyN-|lS%lejH#0u0x0c`F!hhUO*BynEdKddlK+)DtzzGG7G;ez1htf^{g7 z!y6e}E8_KDEB{kxqAz&WGo^J1*a%u!%(x{MGeCiwnLy1t!fr;gB%`6GJsopl6g``P z%Wxri?`eT1YZx!=M=CU-1UuP<7L}P0;mpqMli0hjsa= zsBftDdXh>C zC4p*X)aGhb+$fd~&4CtjAR}ri#@b8Jgjm@|4$#jLMhcY3(9S~()@@m)Zi7isl9-Aj z2?dCJS`YfBoLhz1;^+UUWV|^13D^~Ex&QF3ekaf-BaAa-%ld7LkUk0bnuJ-l`OhMy zIi!D$uqX5{y=%A?0$VGPENPR7S*mWBYP|+^OER2MUp7Zw%@NrpM3V#PX-864BugE$ z!_z3rgsi}ll2#porjLi$>~fT!|6|hyU-Ln3Ke96u)SZPo`jCCqafj{GXG~b@cFMN+!}|5+y6?PCF8#+- z)$0yAl%3es?OH!Y>b`BZqutN(FZfO`1h=e{wZFj{4Kz7O1V=a_*E&#VyWT#v%f z_V>ESf;4yk&`2T#iUQt?tdrAk#t4%FbiHbq1*XJ9cptrCoKi%s4B3qQh$@Z^#SOFu zI}k#tB?#vt$Rb*zLA}z#lptzpqJ@ZrlvZVdq~Zl^65$oVQUOYCBLTDdF(%G`CPGCT zcveNPiI>XlJbl|Q^?!6co}?V)>@h!D?(gfKmm%cv(xThlW?BE{i-q$Gan6{bB(Y-| zCX8_|BC3y~H%RP2Ml#WYLJRF`RO&LVngLp2#E+E}K<5)?&RJc11@ zi4?xFno=kRNKpj+d%#bkdNJ99P}736B4`vJAk8VAUeBdNG6<-QP)P5u*o6`!M3gCg z_%#<3=@pAlkG=CW_`1f9}suioAvfm!zZb$qZXAVy!pZ?bUSi2cqlCG9VDr}?~f=qg+WB?(EMUxiw zJQ@4BBSph=Xqrzsk1wY( zBOU}*SU_e4qPY?>A=kNR09~rtAZk`1Q!oRH)<{CaMj{3o=`2MyEXrDvlEk_KN)|}j zh^a28Y&=yiv=FllON*2aJz5*21gxf3FJgqCQF;id12RvF0zbVsO}Q|R>3RuQEd+L< zLRu^Wtpm1a460Tw9VHBMZLhmSp?i@pY(!_Xh;EUd#QW)dU@w%Pi$B!lKnzhsMlTJFf|BKznhH%c>`!=jo zM;tmBoP5l)Eb|d85Hf^fz;COsyXTL%OmyB5yYr#k7lr#P`!xx@(C7O+l0!QTX7CP;V$i$PMrkP_uAOfOzCNW>r!RWv0`Rv_$n zJz0dHBQgS)p+)8mH1XrHv7EsYQ)Lf=WQ=N1AdxX~FpCPxUzqVs-#s+y=-SEB%QZ@BwuBa zWK>Io&~(tvu#qAjPDq#`WRO~Wg0STszRjS+4Fwg(^$J~j(y)OLr+22da zcGr-Ld8vGeC52}^OR8J$sM)paTmFM9seg3NTlmAD|71@8+ApxS?aunax9mfc)0=kk z$)lGR-bUE_+tU`h2qPIEm#kgC-N)`cAs;-p)RJli*!vnAVaND!_~|$QtDWp@FdzNe z|7@$twku&TzvkBX@@sAd2+w`(3!-HQoRE@Ky&H!hr9}sWdfRhe&G{GKj+&^=F$X7 zae-J*!(a^+D@dW5!wX3+@)NcsXa%9A9XZ0bLiL2{wv7A?b@B~b;5Pl1zDk}bO zBHl)9PBD43%|4gI!Y<37SC$ZZMukoV#%*%7CSO2RUR}l`87M=|1kiNIv`dgD_t56F zx#^5#us{;Vq%$$s7`h7$cltMi49N%NwLjVM%iHUO|vI{SqviHtlLgxBxlGNqtEGw$QJ_R`nJQ__!{G?S%UE z#3;Ul%{LpNU@nS=%@cwx?fo@xj-9)AIO+GfKzFAE$XTexP2XRh~OI(H$0+nSXSw<4h zlcE@!AH#NXeY9a{7G^PYsZwQRZUWuOz&Tt1s_5;W5<0XBb0}RUNF<01X$FaO703w8 zo~X7YS=Pp}4n@*G4*?>#R_bY81f(?3as(?BWDb={Fcl(Q!W0Vsh-QFAVQ;$cLC*a4 z_vBzC>}A*A3v@9CjM+R7DJ7NIM}V)}4Hk`|gd?SZVjep?yWV~M*EisN1#G``?e&l1 z%iVr#0ex&4_MXYfJ7tDpI=A6NU0j$2e=dxh=J6Y^@kq(r9UPB71{_jR`Sru{d+ z>DGr9|J$8)<#!XU9f|LfhQI#E`+~imIMH17vJaA&4Mb6(U;W~P&F8;!=T@?JN=f$G zyH-M|4jDS1#7R02{)jssygq&Vm%mG5CiUB&{|ai+NN#P6TDg2Uy82^pleO}2{I)NA z&Rl-YeJn0qq9{;mOa&CsR-&x$PN#X5tP;cvny+jOLf$W_I1rLm+e&{Con9JZVFx4``*%qEVp+WAuXe`C9` zNC#xs9`4hY0Nw8C3bSauJVQyDTRJ)KzX$}4Eb~C1!lz3k8iqT%LPu=s*!y0 zQ=eeIaqT@=+X=t_)^{of#w>;iMM8p?3iayWmYC!%-~0~O-gMWleJR@yb;j|}wHN;P z4H(-5ATiswbn5+oecJDV_9!hu<|kttvEz}#k!o3wPRJAov+3;4s^e|NmI>ON_PuY| zRZ9jiZWf?=<=JoNNqes}U%u=^Sld>IAF@aI?w1@HpZI|vtCt?VcX04guj{~&p_>b$ zE0}9P5W%3N{nLz~I@efiC= zQ-~4CQj`&N@Rf&hkX8hBxt5r|J@(#~^TtS)%N}0b| zn$<1|(|Fs{B34LfXH;E4R2U^KI}%#NWkZcYjPWXNQC1@z5VYhxCM*+KL13XHGVe4Z zV4G&0c@-Qv=ww-L>*1&IOaW{tA#u4|$#%ZCNBc$p-`Fbr0{tkq7+bIudr(G*^p!52 z$KI1f?SJ<|Y_{`30uEZ5zSeR&W@*SNYLwA-7(M5}fG$8X;y}$4lTf0{PEFzKK{bxW`SMrKSTPrx<1vQtXC{*j z2?=W;7(f;Ukwp|y!3DP~?t%+07sVaL9mNf~xPqwQjtioQS5d?T#TyqEL3V+#1VWNY zCYkh1O;^|HbI$w6In~oMNdVV-_07YF&!l^LdaF85J?D9TOEYDN*h+BF#wV@`nUQfn zIeGA$s{j$XAGZ=ANCUjhub>En3(4346$TlhW+VlkCYsR-?7bnzSWQ${q|Cv(I!WfJ zZ4#ueLDrN^$Q+^;MHG`TKy%WeT-w8;wguFT{~0rjyy0dpegh~aP{xr1QO6N$;Uzci z)~jIi7vzv_@pp<@2n^|hgSQZ#7Apb)#EG8Ln-+b4u!W@D=!WM2q=^~U3sI8>sSSEi zktc0(CV(o5n?rNFiRyq6j$)t!18uUv$Qxr7BbA+@Q$Zoo<6WYrqFuccMLT=|6(}P) z21VXy^^{SdL;7g3fu2m)`VJHPRSSM?G@i z{Fqa}rS2ME#V&c%+_v_9EM0TS)i;dKeb!T${PJ}Xb04N~6c~~~SuqrF;*n3{YrnX? zlmiA(&wSK=pbGQD-`#_<3?lO;i=YNsw=>gyDcF98s zbIZhNLRIHdJ|LjQK;%5&EB@K78K1gR-q_p21#z8@H7#gFfqL?tdY|WusAO}7zNmTnhOdm zhy$2kGln5&m|ami#zcmk36vP87>J2!Vsu2BS!%9IyPA+!HB*c;HDF2HT+&QXls!a8 z4xex2thG!i6!KNhPIl*(x$;2;;H$VDTnGhWCY_Q8Y44ea&i<2^Fz{Zd#g+5(K(rf zHTBgfM#CP`V}Nz9ba8m|rn0XNWxB~2B~^o%iUQ+JcA2WvPHSXrSg@JqgE3aEyRWO} z@9v6;RvWPSNnbpl=C^BMuonnuc_*@)oRaec%0e?uG_SxT4*Oub;=Jw571#eEf7z%1 z8*L`|&&M7U?Y_rcbLrI|#pt!>C7(MdOOq!lCu~9HxjJE2Sz2=*X zu5WFrk5QGwX|o=So?Hti2i%RP#*1?OPI;hXOcm`l4f7T~I zt`?0nd$2Xwa-wY6HD=K4R$wB(a(xfmfB%z2I~;aW@x-Kwl0QeA3G%P z{GH%#{b6n&AImTQ=KGT)Uih)%8EgM&F1qQSEfu&A%+%Xn4k?VXPFk+GX_^YXwYYul z{a||^EdA9--j#grUC$`lck0jsmZ+sm=051_0_xdE?#~{3%$L+;L6sPgRIqyEFIc(y zw_zwa$}=B+c(nMS0oda$gs#{M`9$gaTLxGJ1|UA z;7Gk~DhX8*>Zrie2LgCUkf8eXR|Pd93>m~xT*2Uxe%VrvDyED0akNBEQotT z=wimVVYcx9w)p481Im&LKZKQ;C7CqHj@Lx?jv;J8{&Z#{29KOT1QS*3=LxOt9HR?1 zlEwE?qhQ3&Cmq|4`kIt@oh3>X6C;N41rub=br?0p2nzw_&&QCEm4jr=ks|`I%@I?l zO{sXLi2^A@&*+i)pE=_c6^nJwo4^8zZF-ERtwDuD<&ovu^Bmpzw$e-_7td9!ZS~)ToeUhQBcZt78v+WJ#$8 zKuU?++Ep@yQC4GMel*Bd824LkS*V4>4YprUGibrOeC)46SOjuM8T$3#JTJfLwsoaA zk$T*&k6?$n3kk@r^yjCYVjjM1=X|FZykG4&v>g;tLJ_n+9fL$nw2BtqtlYoGU8^>j zr@j5W-fJB5(KE6yaSx-D`mM%3E#Vnih-CKr-KhQ6$IWQ?L2rv=0TR6cuCFrBmn zk?-<_>e(>FB60(f^vO6Iuw+aSlaioNLZUKDBqWg-B(F;%smU0})-_P0PMzA6pw?|* zq9!J>XsOBT22Dhyr5DKE+WFKw?;Y(}V5p#nvEv)o)BC+oZr zeR-2U6*v)K7`>R;@907AhAL!HhjGzCB1oBonixWLB$08L0f`-TE$WuYu5#)tMAsAu-Eqpt)2vP!ZII~RnAPJSQi<~wGHf%&Of<%%S=Uus{ zDwu&7!^XMD&2v-q_Q(B4e8jWgW`4HpQF`$U-fTblvy09Ak&xJ|F}JN;Z}xiKo0Co7 zJVMdf!$a_VYo}~O#wQ(ptp3aoZXq}8XFq>0(zF^qa_K_7{QCPbrXWp|=ohEHNk8tL zU+Nj6{^{=fW|(w5ltJI!*@gsViovvLRKUv4immsMcOMy!_CD$)MPnXo^#)`A_VsJ7 zzvce^+xemIc;AfQS1YlSsuDf%@By>at^*nCq^CZ5T`hy5ebDaDPfq>MKj!Z}=YKG! zvl#&-%ZmJY?>T=OofQmL|-BAR1&G#7@voC7Q`Fh#(B?RFCyT7*wdxlhRaz z%WYW^bcq-yvC_8(EEsZPGzEjKV=YNdk<DP1^}_;Rh}dD&)e^wm>N`|6m7bTmSffB}&||nSq+1 zm!zfbYdM97l=7Sj!hZc+ z*ddxNFuC)(-GCgZFjenjgQT2c6r&cPD+=QvvJI51g&kJjgPM8ZTg7|2QjXT5@B!vB zV)rEK0KyCPOXn~XmUy5}K^2aAQk4rXnQ?{DE;8KnyKi#qy|-X&ZZ5g<2J@Sn?wB#y zYh`Ucy81RVQr{U&)t6M=a6wbB!?Kf-7d`Ro`S*S^$+&0wC1)RZygFd7#o1%u`FV1) zUOnTH`>MA+>#6$DZ~H99tR>5G{iIVr*^jg^x2^h%ovO{MsTL@M)mv@-ZapC{85}a8 z6be?gH}X#?sPf0W;{yO{$&T~p?S1fzGbV?M9wS|&$w}Gn5&D%!KcCY+e?#)#mp&?f z#gm^zR%~kRd;F)!_4?@K7anPEU3;JT@vrWjEfX3Y_vj-OwE@jMWXGc72xTpWb!gc| zg{_SVJu}mHDwSeFkc6vz2aWCB=PjP9C@U$Pqb)%*fuYL?JJXy>FjYyWG~;9x$rLFG zF?E!SP*aYyP$)YoC}nUq2@7At-1juDg$FZ^Ue^2=kdK`RoWR7 zwz++4es+T1Rx$tYhH_$NQZA#^7_q)3WkpFG@jY3I-}4&@%&DL&8t7nLL^2g)+K$K= zv~^@c&|1(&Gf7H=rX7Y&mZb3Bd`N*BR)JZX0qwBEn~Px-%~YUuJFFC#b`6udK#@)W zNkj#OBB6^HA%Fx+N|hFajI?(p+T>7)mny*cq6iC;8X!qdIN*@{qD$}SZ-JU;ocUiy zDLDi8yM@7?yno$2YGmgEOf{w!S}GovXXp^0clMQh@w9 z%r~#N(p<3os(#oD9Y!m7Feev^4?d0oQAE z;<1m>=U#Me{}=dI$0HuLLkkl_l>~)FU_H+FUOTn&_r+V!`wY3>pq{k!z{aA(UXpFP z;S!({ed@&LtN(cXAvL9B>)8{h^SdkWqb~)iU7Ab4R1+E=f84edu>@^_DGVB~qbkEy zUIs3nBk8p;x@2^axNzbL6dekhsKWQ7YYt3RvWEL9f@>ZQ%#=Y1#jt3AXpq+(IUO=F z4k>=CNCF*8Iw?r7!T(MWcOeS(f|;_!7Gf!BN1?h3$uH}oMVc+n&Y>saUi9Xx-;hXpPp`3jjhFa07CwnbH57bes$LC{N4A9=8lOC61wq%r@WhE zR{oFv#clV8uc;SXPsk&(2}Uw`#b@<@-+0IDKb#$EzlFPK<=U#B*gV}J)#Y2M$PMU!4jRT%h<>P;9jXdp*Wcq%9{KaQ~X6)1Q zUj4OS{T^+{)S@}_Vx=nJEZ1JUIh}D)`fwmoR49}nwt~20X;+1JdJfLH2G5T2_UAS< zOP~}>Aylr4ZjjxS#4I9l($kbBWU+s)m^qBG7E(b>!*`QSg(7z(n;eO%VyL2Ol3W=y zlVsHnx;lrXUGWx8{-r}pB2>Def2g$UX;Kst;$Whx`e1M#iSYo*cw4LD|5PX^K)C5P zh457|i9}XHORYP-^U*T&iYt<2qwUf7BkM3ykOu?R(l|ApvgkoY5o>?G(e`3ku1TB^ z5KUPU?Lb(xbC>~vt~*i&$+?d#o}wN#$UFWyBZes0M6IV>QTDtYDRC%rmXVG%QCgC3 zKS9Rr7zP*-yI_5d4^kkzHK^23xIK|7VOFCxdiyhOcJ;-}PnhV7o>mUcYfgd;7ryBPy{D5}e9|Kxq@BPr3N(Ty)vrOridZV^ynV zfA!rDn8!W)47;#C2b7v!3T-_h4@UzAEv2DruD$JnRq=uRRiFM^|84X2tA3%s^n>e4 zgoOa2KwZB&?!Y7CMLP}XuUxniWAf`TVWeCMaa=&#i?55Dr^{=sF<$CkflY0Zb{5c;vixZE1jOm!klA7HgMVvJi zN+qriUGG5_OOHZW$0iC2;@)sV5MwB)5R*_ag+h^Gi2@2Eqe6-#VRr`E9uw%yUWh11 zAxPPo!OlEP#V6c?f=q29O8tmqkQ8Gj@suS&U>KmO8a}z2;7~344x8UqlH)uFDJ--& zRLCW|!e2~6Ql5ovopGGDCFB2_5t4El()kUJExao@b{cV!tB}O4_tV4r%Gf9YLW1*4 zCPJXBz(~i&c$04{m?0Kz8X`B2#5fWRSwo?R9J!nXI<)ChV*o`HO@$@}Ht1T!PJkOA z6Dq75M`>r~3z>)^_9fa76A8iCf>9K!Xfqk+F_uI?5k8;FpqL|oEdaZe66*QK>=W;K z=xg}l{9W?JFMKn9xa%hKu;pJ?8z$CcY}Z`4{F-d-rZb~ofA|Rs(e&_DkMgJyQ(#a} z*maNm2WrKG6^0KMYR8eeX65Mg8%@&$W4h$|mIr*TJol!j8n&y>L5Ax@Uu-=g&yO0K zu41ygS)b#fgg*D8<^8ww$G!W5dEa(Jt!b@i53^l)JNn4ek5fDCI-DHwsH<7FWT;?L zfny^&5HuvFIq-<+<L!8N)qL&6QL?NYgo*o*CZXsFw2t72Q5 z;{Sfc;m{cYHn%;TswMQ26<|GbCs$r_GZumfg$*J^iIV}CYN zFecj=GGZ(fC?YpN+HDX`SXAMV^Qxqkl$=c@a*&7$S^zpGi3Ju#n*wjIRztCnLA!)> z17r=wc=c`y?#D2NrGjM&(}-wkK@v*qD07U=X|jfm@c1Jn7hN{}WfT;i2adm|@*@hUPiE%Q06 zH?5W}S|AVEYq9>yFK)t^w%TRkyy!b`dv*Spx1HBRS{%IlF02~6r6-D(We=X<4K^mh zG;1}p1q$_+6LOkX&B&rSK?#$|3DZ}V{?#$7_mjW)jPqvv`mF!?fq91ABftFW@!{`( z@{Jlf(q;mJpIwbAhUT*Pj2E4vzjVRt)Fbz;CtrQzD@|3^^4*X7Fu7hEz5iuTQ;QeJ z`D;G>v)SS#^7x|;f=Ze&mxk9>@ztb)NE*Pim~>#^sXjWiALvy`*p4PU6PX%u$9L6@ z05jk)xkKqd$dKR#yfX~zS)Ej=B{k~Qyzoi~lH6+t3+@n!osmOk~I|LNb7sAC>}Xn{+cq)Z4%!ZyEc{a~#K(t!!J9{xC?2F#(! zP7J#t$USAWEgUA5OfX5tT}WaUid`{6Q8>IwR6yZEi^8FW@X$5uRpJuq73097tR#1!T#Pm~l1=`MXlT&F zA|pXQSCUt9lqi5U6Br_5YQCvKUXvtkz<6r5VUQLZh!BjhAJL{Jsw2tgci1RyK`}*6 z5vbJ?Lj?s)kQ1wjq?pG1qzuraO8mmdKTDtdmEU8`14GQ3X-yrtbfNjx_4i>+p$^|? zX*#^;Z~-#L;t~9wy4^++a$p|Ab|+HA^S`pNSc+TOBy{YDBqNfb$NLOEf$ z^Zxa-eXz`)!;eTw>QF;E>8s4pL)M}D1(krbNEzZ`G?t8Hu?JDnXHe6}~1P7n{iI9U>A^Qc@kEIs|=Y ze9J>ZTMA+UW$U6Xy-r0DenL=zb9lYu^0W7U59L3$RmcA#F^#%VOhX!t2rx%c4%Pz6 zL;%iL$XPfS5*Ls+Qcx&~a)P++FjIm^8dO6;WXMH9ixys|CH4i0tr6=cY0DrDj4jX< zj8ll5NTnF#i-U*(Qih0FLNs1SX=shCBjY~kk*O;X25jEmsRFbpR0EVFw*GxfSMzg| zxr?4aOoN>1gshZ|e*3X^sgXHz^JV|}QF6UD`rhl_s&?CbuKda`f22Qn!E*VYCqEBS zU!oYV_!guMukFQhb0#T1{Q0Bx89(|Bxo!jK(=Yz%KjUbcbvgsP)tYF_3Ar9cfKY(m zq^APrY^#yH_c_OyD_32gpZ%>rVN55v@LeayJMNUW4twnv(RzbA`p{*`2~Rs9d%=5u zh}Po(>VSQAFxTF+b_Ux8kdNAJ7tnD8gv?o?XeK_SZ zVJ8SLOdr}F%DG@T>Rr(Fu%=Cm3`dPRhAOr02y)V*j3BX|bW%9uovr8i@*}2>VLeJz zK|~}5l&h1veM!bGI+BbI-iu)^zOd>B_MRfgvz9#+%>o?~=g=-ljw%7&*xQj|7R^?E zQ;%G_ld30iyz?Q)^YK^zCO_$%A5+*uS<%%}DnQuhpZ7`g$GsQiI}W`hLNz=&MfUp1 zDK%PWT(FXHJ<|~5pAf2*cOq~GoY{L(m8)0I7`bmbA&;bWU%vt458krKUVQqDez5-G zb=R2s9R_Qs0HRks?g;gmJ@!HIb2Q`0`(N?23ubqtybGGG%e zRltCthQd%KA_Zb^keXR=$}cVlM*2!vIfDK%J~88a$OMR6zsvN4p(?h;zi7DWV_VcE zwjz*1psXP-Y)_ZfSVt@+8i)eav2>KtCG#&lmzqjQOpGiX)&}?vj;JEZ2OVRo9iW|4 z#8^hjfi8*+sA8l~@>vC%8>$#7BP~ zN)XMd0`1M%OXkX3?u!0==Q>lXekuRlul|5B9sTr=pJDry;LO+<*-kHcZDK!rL?V_g z^Q}Vv9wd$!2Twmd=4-$B`>&KViOKSC@>7-oQ?Eoqnvxv2SGZ!Dk!ngS@WWK1#6SZs)6OTt`ISM!;@ z>-ta@p(iZ*`oYk5JM@&9EyLOOHMm(nx5d9u_|}DTV6;P8=Ls7YkU=Xuh)5YX-CI@! z+PsiHAqS%a3FzElnu@%UqbMlo1lVVX7>ObYrVw*Uiil*wpavpFt2u_;_pF_l_>3*I z=0Qtcj|t~L(9^YuiNd)l$$~6_7w76iqM+j|e`_7ll%+KX48;})9{F?5{Pc`FjB!B; zZsy%MCdi2pp=IGbUK>NS*N%(y;Nb0ykN0fp)T5T}Vy?Mum49JS?|Jqy{Q9mN%@xFGl>U35Ec(J+edE2^bKcRzE$3%l_#6F`KipzgtQ=Rje(LcNiz`u|x*DMp zwZd;n)RGn=9qp1YIoT64ZF9_};A`ubWI)xGpRs}8TQ68D-5>>n8RY8nIqez^hFpjw6f+1_j zs;;bz1w|zcdu*_G+R{5|hSMdL+y5}Gv8HezTBjE1OdsfAuNSP}zzvJ2HN1)C^hfz^UR4Y_lStJ^V*hr*=< z5cqZMaq%*=DSGNizM~uq{~m=y2B}OP)*we6S>=LDAGDHHBg0Ko7|r;24mkD9gZEQn z=b8#?8ip=03WcIzirU-Weo6eYCw;Ye)mf+Oivv!HeG|n39g^>OE7PC8==U?;$b*OsnXzn2f>j9YP?Yq28GYZ@ z>==@Dg%kPY6`wUfyZUba2`CG*Vx?DKYD9wp^ByW=5#DCLzWvUxo=L7p&5D(#xa!8c zc=WzXpZ59dF(x+=aXxmHj#1R+_yMBnkwW}hj*zUr&NyfErl}loW^8PNSD$shxqii(vO>BJPqz!=!l-h&7Jpr1cuj79v#%uj$Agp!_y36OP0QijE@|rB&0cFLqmE z{TZ82vYb1#x)i}NBn}!Y#jMSLtX$~rRvESf*e)a! zmcm-B^n*j|97_1YAaUM|K?h+0BNJi-x@(Dv$dN!Ec97k0U(pldDnCOhepMu5cmeD&m) zsU3H&XHR^S;(;%S|S{wyAIW5(Jx`hB9N~qF;P<2NbB&zL#BeWMLFBgw-enIt2 zBZZ@I(|&p7fUl%dE7vDZvn~F8qQs#Kf-;=1mV=6=Z(D?3b0McsfFh)x8BQbClCGCX z8KD)##(Kw@L_jsdD36lJh2L$qDVU%`!B`jqPLRj}B#I&usG!c6^;8g}9^2K>rNsI} ziAFXUEG-;qiEgrjtO6bz(nSq#w=b&a=?j3le#L#}QE&RljQh4w-P&`0b#e6AgI@v+ zs<6I#A>*A;z0LAJHvv9Y>T-q{y|J+Fv1G^;7i&VYgVk-K;OkXKjF-;p>>bd zk{|kx_vNqp(8ZZ>1tQpt?Z-(a4i zTS=&rOBqNScydK(8hC_)FEM>PB0^Dz04R?T#0=nxDqRd2HDV%aBrdp7JFr+1yaHB| zS7=T|G$(2_vLQyY1uUN2p2fui8g4F7XM|d)&b@!1k-inumSy67fUjQ6(mvkSGyb=a zUTZ=MikiTr5)!Y1qMRS>DK|~Gf57LGl5DPGYB(n!9H%wBp0T0(7)$SGUFCjqv4KMP znl~b1$Tn%1?HI=AGKD}nfd$e)MABghZi2u{2{TotP75})OxhtOJ7Nl?fYf;0ble4; z_u`YHIutVbgM1hzXf~_#Di$T8*F5J@ib_2Xt&wT;kwalr^r`ett-(6h)U)YKfPC{UzfVwhJ1 zs%xoHFhLvH(}gIZcHaJ_+*+wn6L{RQ#2{$VA;Ec_fKYLJ3N~2Um?WWL-Zx*ka+!qaNel3bc+aE(izq9wj}*;6TTG{kU|!4 z&JTehoSSS}juih=5=+*ISp)UvdXK9mHzy>kO#6j)^HBrUF;AV!PX_}-z|KLex(cB&L zr6+udT(3#K|K_)_&mKFOH-GsYebMqiNB{lSx5kfq?Ar>)=c<6&=zkJPbN$PMJJ)<1U3APXE5@1CYgTbIpm0+4267%cRHTx2kN_-`vG)iu zy?>jK;Z)e)6d2<0JT(+46)#~KD%BW69;VWe3mx{O=oa7k@$oBU2-$amwJ6^Mln=2@)o~=2+}} zyP_5eikieKP{I-k%cw9Yyfi0R?;3*jdsrC~D3H2{j0zKUktiZGP@zVZ0*wj6T?LLf zID>cr+TDmdk|><-xddzlBP|7HF0=BKdfZ;SM+ZIbM6>SJUq??lcvxR_#d=eZYq7Om zbMVrg`N8k+ws()NYIoP&Ohq1;K(z=3mv4b~$;run_@xuHvGv z^}sQ;z6w{4o_y!F`1cA^GTNN)6I;CWYybI@3)h3eZ7pJJX*U#O$wr`q#UgP)g_sJ8 z3JG!GlKRF4PJxIqp~ve7&Jrm+)qfl)IRsuMu}Yf`iVjJSK<)d>DNCtu8bE7-u@0mB z>_iEPw*GM`it$oI1^y!OlI zbHnPD(K)X>AEF(+C7Z{Vltq?4?qk1YT;DnU#Kt~|G1A{B3f(o}q^)fBYMb|vW2K^p zKjpQGbY3ZJ{Xh|&{K6xXPrT(RL}~y)9e%))bom$FND|EhP`fOen_ltRlgirw$wluw zF?rK*2cc9IAo=clPE0O3{UvI*U4}{PP|J3D8Zk`(^|E6QYTkVQsmbeJ z_$ZW$)jrF%PnUo8P3bpJdp?nB%zlrmuLAbeQ-?-|{h#TbBs$nLfu*28GewSPL3&xi z0vS$JP^9cnQh1gWVT(tgdn>w_L_keq52-2b&n0(XkLphLEgkAX4lrN;%^yHzexN9O&r;H;|JS0BezkTfS8Xr0B2e$i!q%4c-2=qU_uX$+ZIam1 zShlK^_p0)LH$0rGMMH}Tb2K$FJdiwWkCD96+>^7uaSKW6)LwfmNFH{?hf?Z;Ep8`c zj3jh%y(d;gM0Ftj!GAqDd-9vVk(_YYQ_^LRe|_}f1$*S@UHGQx(=UBlbjVZRV)woM z=fv{Yv$c?sB?L#HVv8yyQP;EUB;KYx3q5NUURNQ*zuUxA0@J9AMABqW8Z4rgOWM{? zylVl~;B_ntGS;I=XbVTI3`#*e@(#ce5h+!`p>Y(%#7G(p5O<`%NcXoV`V#5vwnZr_ zWI83Yu!|#{EM(x63Vn-2ne4czAQ%+%0b|tkt5KTz(u0hYWw8h<6#;8~Jhoa(r z|BM$KYSSg&Y?9LdB`7h&`);<#{L%&6dAMs86F{us%~xXt`HPPeob|=O>ihqjVvs~( zrH*-sD2wuLS9#E7tuMLa7X8gjZYr5H<`>IvYaRZYv&+7Wx%&EhTT5Q>c5;tNHlt&c z6OTLTzw)QQ<*R7ZBFl>6)bqbT{_rO(9b10E8z&fBuaH3y(?i5EG&vO6CocIV+Dw`o zMsI7a`TaMu%dhz<#%A2GYK2{W&9}_d#Q2s_(|)2`p%mgShZTMj?fLF13>%6t%**Kp zJh8_SYjQ?d#zG#?aAz^9Einn$Sa=+8kHYL-M+WT(gYCI2o*HH_o6q3X2n(|v*kx*G z7IqdB>-i*Rgh9I<3zX#J}jgt2t!0>2wKHK zJEF!wP;4A#m_uo9+5xlCq3d1p;rnTc>zH6AZ6=wLj!1aDmRxzJX&hjvn}t#$y78;; zN$>f}S<#XEF9BroxmO&Y-hB2)qPHCT7?i52!}nR5{_^9eCk!qG849Ix2ISLxa>mm? zp5Aue=_Jv7faqmM9+KQ}_6JBJ?_`vwiMsym50XR+%a@KWeEsV=_)*g+i^KO`%EFN* z)94OKnogrVwiH%*jGqb+l)l)kLRQ1gnnDQBNRw|}xbtraGdecINw$Z&h$iNzRQy1( z$0iE&>09r-h|4Zt2e|w-XMTg%ocWFN@AH#B{cZj6?_Fl@TD6I-5LpZz3>9w`W6B1< zgE0B^c*&SJTm&R0R03TL4MsSK!J>*Xf_7CfB{$OICKiZ;$b|yuPoNZm!TKJUqc{DY zfqXEI)J)?>weT$w8C2US$si@M!xs(HiMo96p>OD`C9ydXWLx}Ohf;z(2819gEXqz3 zKeQAiHn27W;b+&^wP@+*E^&~cP(WlY6Z7#&dtif{Lym^2s3K=&NlDXa^usR5$z@8c{j2NOu+zu_we)c(#IKB;{`5sR@#JND%fVe9n=xMZ`p#8~K>Kddrb$AQ zJnX2}u--sf=PYQT_ERu>(RN+eI6DdSfoylMfw#6`at$F}8e~Y4u>N-@{ z4?<#FA}C7ghYF|)KShpE6r_x>C$X7BqvM5H#%dWYZo$w3x?WGh`D(VnQ3P+kta2|| zB?@-v{yR^COG42*2Fh=pFi0dZbBL%CBZ6{}R z!M6C<38R8yrkZX~C;>=86qtFYF0mERV!DL&1&HfqnJHP2KsXP}9)-@+J&dEm*Q znnK42mz#&uLyna!>A})T`_DjGltMrzlFHB#{(wo^LEJ|XWB1+l$;9$oXtPNjefYBI zr2jZ1f5*8$;`$p$)xrDklz!pOFD~v{vpWBeQ@)Efn`S)!_4!Yl`|iFda;jOf*)j=< zb7Vn%N>KzC>9XIv2ZQWLntLkqSiQqIw*%`j0mM_{q|0Qir3cAp6b!O6DbtAdHf3j? zUQ+ghLhmJ(;;RxJhBSV$2%=C4=i%>^aVR@YJuO=sabGpPE&l%q)tN5Jj0paD4zC6n ziVm#=MwVoZprtKjC_MZOMUvAB#EC4N*X1BQ3%v+G+>VK`wCIwPA?c!}pokQ;uA^-n z3EQ)vI}awI)`iw^!76bl3a=gJ&wCT#tll^{p-O^ZJLUPSUCGql@&Hc1{c9KX!^X^Q zE7zKroq56Z9R_p4$1XN6ebR?=@`Z$pikCp>dg$tpmv^@65dDvg3KE=%`UZ{DznUGP zLVl=&A$9bj%cNBu{fp)IVvJS?AFy-s=3@`dUij`y(0W`Qu=ftpS5H16f8+`0kn1(7 z*-RQ&e(sd)r`KGm-~7qTRhqiSRiAyAl}ehS`gRdjGV(C2^3`(AB&fMNreFEs;o0-w z`Ge%$Pd>JJ=(FCK9k}$-tsS5KuILjlJR#cq$k#?Y-*#!P$e*2#|f6~^1B%q-}L{7qP46}r!P{an>HODxs$+&}Q6B0oZzB((Wsmrl- zY(xQ)NOv(^;X(Y+<9-?(rsB7cWrb6OK}>8Q*3K(%`DgF-kV`^Kc~DF#R4;s$QB-A+ z+;pHr1rnf9{{$eE>6#VY4Kbb|#zf3J|PUG8vEGzW+ z7vG?cJb0kRsW6VDsTxFGuSVx7(Y}uy6Eq9@OiK$@ z_WOeGUL<-KQDwGe;r}0^=MV$_IxYI_yd)Gs7rPXrDwjsC9EtTTPbC~1=lYhXhpY)d z@Is)Sml=oyJvwrNHi86!AG~Xf5Lj1gWk~Xdq!o{na}Q7uqbaBabJR|6R~J*Rmr~P0 zcz5g|L!edQ3v8(>R7xgSo&D~3PPN%S;heMe&fzuy%(wr4Zfu(dy2?{0!#FYXUx;zyu88c(dj<%Y~;p2B6@Pr-OY0A7AjhRdSd|r_A?5 z!mx!jHY^HDs3!dOGLwLHjJT3Zu*FAY0$Tg z!1r$xaY%&9`F2GTk}=YsFERAcKUNB?0BK!N2ZTa++p*Xwaxp!J@|H^uE&M=zLg?Vd z=K=%OQjqyI;JkJVc#pra_&N-e6ilIl$WV+RBMWm9k1IB$7&<6Q-54KIgqBO>U(alz z9#l&gjhLFOn_Ulng*x_{-|8!_SuGD(yl1+@qhF-oXIuKBE6$Xke8KaR-5z;d#>5;G z28do0*>epdD%Ae#)GOk5KJQ!EqUXJtT(438{g$`N1NPfp@A~pn$@OYAGTe+V|IjJ< zBTxEFi4s%qc;=JMfBkTIPknA=xWVYy%)#G-C3P>FgDlvLc(++XHrm)CTt!TkD*sH0 zI^8vj$a#FD4NRY!hrex@>{+Y8=17eP-nv*4DM_pgeKUVmPb`d>C8(}L8_4RK7Pq5W z6R6vkm^rj*qbY(kr)H3p9E(DuMQ9a-#;*x5IgqH1^Fr}Lgeuw*3osQ=6v;$6+z3|f zNa*btB}Tbq>?O`u z%vzRAIlu*9$c>UjRDBY+j#O59P&(!OzA!1>%@Gt0!OD1zM?i!kqmZCtKa6fu1S3@c zAH8bWPhMiYU!Dq@FdiGM$fZOYue;+VWPMFLn__HkS-B?q&aam9n05E(Z#d^y7?ay` zfB)0GIZx+r`trBYX560qop0p_9k|5oy2A+yIY$TM2}75N3JJ2U|NQGu7B{Z=Gsd<7 z`1Vy-C^^v5#^wMf&o%e0T?MxH7UUy#+}$X7H9FMy2QJy!T&M0~)#wD^h?F9Z6q(t& zuU=T#)@{C0H?NS5cSMZ=^H5Zl{*IwK-F8I9Wwh~fn04B8(LlQ0+}((&q64|)JtsW2 z_|ku0rLVnZy;`#4-1PgWy@pP=(>mleU+hwPRI$)(p7jt#zwa6re>t~S|mYIt0-_Z#!#Lf%2QV48$cTH>0ZDd4aEmKGbys|i$XXuXu1H5Z;&5EJ)KN)O8k z7eZO~ey0Kcy#ZeNdV(3c1wFG9km2&{#yg1kVY!E} zWj&Fh(&NsO3Fimi0;nht89rqjL1-}lWQ_TM%aFTc)Qy!^V}?Ny`W+0vJvoOG{z zieh4ppA&UM|JY!0CVTWrUu9hXx%W5Uyy8mp%`2|#J!vazo1@-$cK_?>V?RB^&(B

    }G02e~(bRESlSo8IIm{+)-*^ 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 IM6N<$f*ZU0a{vGU literal 0 HcmV?d00001 diff --git a/src/assets/assets/images/R-C green.png b/src/assets/assets/images/R-C green.png new file mode 100644 index 0000000000000000000000000000000000000000..c81abe01fb3f155a0c6ac3c0f865d9a1ee1aff50 GIT binary patch literal 177012 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®vi&vbguw+4{cCSN1JT6m9olzqqb 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

    +oMVeb9frPzqmtYP|9Nx0sQ!G3JXR{|YzlT0 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

    Kf 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 literal 0 HcmV?d00001 diff --git a/src/assets/assets/images/R-C pink.png b/src/assets/assets/images/R-C pink.png new file mode 100644 index 0000000000000000000000000000000000000000..4724b68e0ff85525be2b5ccb7cc3428bddb664b0 GIT binary patch literal 167905 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�k0kWG;!py-O5_2ia3U;6)tsA2xXYKqkt2UDI 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

    D;NChu^eX#E;w53VL~R|m)c3OsozU78r87)?87 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 LNkvXXu0mjfet{(z literal 0 HcmV?d00001 diff --git a/src/assets/assets/images/R-C.jpg b/src/assets/assets/images/R-C.jpg new file mode 100644 index 0000000000000000000000000000000000000000..41c03fa590d4674dedc1ab6fe85a928c5374fbc0 GIT binary patch literal 1330305 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

    VWf6xE^%T*Xk#(8s+xotiTS61tw@fl>r;GcFa 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%0D^ROa^L|vR*HYJ>k`Fu<6^UBZTVV#6}t1am6 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 &+GS>0Z^JqO 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

    $a1f3 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

  • V*6QCQ($jWljYoP^{1C(><7c*N-UMqM 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�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
      LUs>}=wtfm<wqwVUn71l$Pg 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%0D%KYuuj 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%0Aitz2`>e-$G>T%d%xHJ?a> zX?5mmkg&qBQ;{Fr*~baRGcmQV?6dU`1@QEx4D_#TAplogi+S!EiIS~<*F7l0O z{&K9WajT2*_@MHp)}v!=H&#{r{sPIP`QmoI$23bUnrj>$9iD?DsOOEYY3=k!dLf`w zmUNn8N)9$c1q;M+KdsUU0H5&mza%5XYvY3CjM2p=8Pd+So8zC5zS>GpR8$&u|eZ@?}Wk;N?TU6K^=G=G!sAkDAGJ#9_-Xj56vp~?MYg_Dz zp;nwN1hYZQvP1Hif$doB>u?>~WEc0G`Xq_&=l8^S7Ara-;lI zX^`2B=^z5D_4SDYVRWRzkFmxOo`16Sl9Fp?=J9+7R1lx|O` zXzioz{Kl?60=O-&susl}zE4SVfKwUY(FM4a;5uI)!v4hJ_6Y8A?B)J}Nj3KpXiau77FFDqCXn2DNv!M=oEYO7Ki`D3!uf4Pl zZ8;7n<^Qpw{AeNF+@^S0&lXO-Kc9$eh)mx9FPtJJiT5APzZy%k``W&g%^6stC z7!Iq0d2r)M?FI}V&NT*<@PfYLz12?WC>tf9{WnFmj?NQ2XTTcR@}uy+JnF)aQDqY7 z@A@a+0u5_zXkR_gwySeV;jmR%hZNXB6|zd@TuI*?gWg^W-VTvtWjn3=EMaQyCOYfB z_R@aYWEdz0!y4*=ET)RsG(KkVeI6b6LcmyBTbVks&>t1>mzmg>hf?Fo&jjadTkG?}Dn|ZD&2cCIElDkC|ghy}3jTv>_H!_6B%DCW z-)1Cp3@BJ%Gk1s+gJuZ#YVW%!byID??`#9G)SW`Mukfw8a3AT)u)~(d7l-^)6C=50T=5HZ;;%}W44jD_aJrihink#$31di&W`#IOt;1Gaosacgw3`e7Z~

      cia8dYU-mA$$fegEN{7rUsTnsvsVukG?gt(x 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

      I7U~Ee=NHSCM4M!Ge;;CjS06R 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 B9mD_t literal 0 HcmV?d00001 diff --git a/src/assets/assets/images/R-C.png b/src/assets/assets/images/R-C.png new file mode 100644 index 0000000000000000000000000000000000000000..02f0b7d323e7bf22a4d9370b44c6af5722f775ce GIT binary patch literal 2072669 zcmV(=K-s^EP){L$?oOJ)VE9lK6%}P`{}&+J0LUSUvXfxqX|v9MBEt3ZqLu0_)s5bzk-!M8YumLbSk=0>Fy*t8fz(fmTyL8I1-mlvyLrq#@yWE)d z`bPC(wKW=eF%#-0f;uJPR8wBKm!uU>WyG#xWOYK zruC1@?|>5Oy*n?m@@@;#nu!8H-P&eY{YE>^ll1;2B!Fm+)@}Cd=G=Fl`?qP14l!Qx6|I-lHiX-nuz#-QHVJChPw!0m5 zpD@)6{EAl7hp#8~v0j+_q^03C^@!MyiTfUY=gKddzW07n*g4@5q%mDhs?XWpd%@7SR>wE^o9x{^ijQ^WD`-|F#>07fj%bx#R zy7Xi1Y;WvuVSibt4<-O&>vSvIDQzrEHR)G=%9q=(y3W^{AwIkH({qsjzB6{(hr5-v zkLS}p_I$?SFmRvlho9Z?k2eB!mYLw;021FB=lr~7uk@lH`A|99-Q&!r{UlOAN&sWf86WJ5eSid}RK6Erjp0wu9Rt*mzyosB z?#nz3c)6ld77UfCf}85|=XW{{Hn~OGaK^*B|8VrDbXdIAjr}u+TfEkbRCtkdY&+_* zUctQJ-X$p&2YCBxD1N4$E?CbP(*JAkG#9G%**Wuoeau%iANbkwAhj+|mJ{%~ZLC5R z?{8$~y5oIkc*d~i1waF%X3PGP>aulZ&dba#6#$S_Z7ww$5XDC?_t&?xgXiizNEi^c zfdW8udjJwQz(8{Mf=SG6kw5?xAq`SC`yi1(K8v!crNu8l9d~Zhru-MFD`$Y@6+ey{5i0 z7aEC1Q~th@{Po5ea#`!oP9$9`N^m{COcIUC2tptX$!TYBZHut#xvHyxqdAy0un9Ql z)kxNnLpGo`!HjLFP8-lpIE)JK{b20pHvIBV@)pAQXXy1-g(ehH+6bEAnP>CA)*WsuBAaT*BMln1e^d4 zC+frLbpFN9pwH_v&p${K%Z)kP35R1djf1tHqjs3($j~1b(d#~*A`a_d_zNc9xt)7( zZgbJykJ5hU}o4c_kYR`u-RInN}f-}U+_3zoFJTs zIF`v>qx~4K+D$0lefK}Toe}h}KFvo1gdczZU3~E5r5-;%xy$P3ZrCof{8jHh{OJK< z=ZDS2tH*N=Ojlasju;+~wcwpBC+Xp-0Yl~K6Cx|9Q>M{GpGhlx0xq6E%h}4p@zL5D zu(rh0Vgx0Ja(b?YapxDCcV559G67b{v2Lfw>3;e|jZjWsZ@QCrACpN()bq(cY{nW) zls%6!o*jS$aPT|3+}*I8|MB{xKeCgQeV*$Hwa7aQQ}CR30E*}%=KO{CzlwxcC~m=> zq*4Kao*TJOFAHUT)Rec4(1E&Zk3F36SCm(gxx6pB_r{1c;reNE*Gy_#60-KQO# zj`xmZekbPd0tO!sX#8ATZUYd4g-jz83Pxdo zB#8hT9HihA2|8`~1isr@v`}PDdhOGj7S?K8^Y8f((C3F{*O(MFe*3KBOgfwZI)M5X$ybvu0YQK* zIxqGckcmMQK}W(&lY9bj7v_mzrjg)^px(7$QS*-Y*=JApy>>r( zrya6PY5-lXSunBVjoJtSSJ1U%Wbv}4k<;!WbB_$w`7aGEPejq>7)7)+%epyr$%?Gy zNs=0}avXo1kqn=WIWKOwY-GB&+jZ4k!H=Byg9Sk1SOLs+a~T1>!5#kZ*oKXy%+_KX z*t zWZ5mJ?Ruj-J17s!{31YS9_GqvqJ3h8e`z|BpJsa12NqU&T4|7T zn9#-1!s+q8Y`(C^gC+RmuZ*O>%FOyj?ST$_cGGLQVeMCI<^7wro&9nAVm%Q9+Mo(s zh4SW+cowwy&uzu;-aYhsL+efDbI9x8rp+Z^YhN32b9N)GkOOG~7~P<^0D|lU6G|%l zXTQgfHsL-P+@-#o`2Ri@aba^#&=Ja(*mJ@P!!g{A% z?I-UYpZ!Z+tE+zfi=STf#nJyEUv_=|;n$}u=jS*0;q&(?wSRX>9)M;5AB@lGp?G0w z=d0|~V}BvG@dKd5`t&L4!>5dUETnG+UW(#Y{=V-L8rEf=ai90!l!ua&JGHDk7pgme za$0lmO1_v^Pe;EAw_`#V+ccKFphU+TxP zXmI;ohVvl3Ka9iOD(3vr8BfRX^rF2!tQU$AH6Z6DV}LK1#VL62NZrLwpYr=pD{hi? zb_{{6ba@@0vAn#h^HL=Xr{&|&S$41c?z8ewb(w1(P5%6ZeSh*wNrH~dJk3koUHLI* zyq58YI6#SSoZ5jV1qUuY| zESz*1B6IsF3fI0b{LG>~??;D`QG4RFKL~E(7SYlJ9wT$%@~W|t9t2wo{7ty6?Qfuv zXn^Eaq>$C~pdH8@Kr3u;U8gIuDZQS0%H|+*2sWe{WOA7W6|WoX+_F?5r99bBvQ4HU zPcb%;R3JwgTZ7!dmfYYJx-<+8DYpNanQ#v!hF7>K0hvkf_a$%~Ep5x*GshkrDuayR zm{j6J)r5-7(Vos>a;yiOVZ3M@J@b${k?qWsDz={!8Kl5uu;hkx#Fo9lvRXoOpd>k+ z&>G3JJWJ8WALwR(x_9`|8Z^WR_=a5ey}g3%YY!2fGe&(fU-oN!6(IQ2TPlEr2LNzO z1sI6A|6_m{KpHZ|UjVqgdQxFubpRZ7Xdc<%>mQ!Ea$Iz5!Fo_|D#psa8@5mQGTpo& z>AHw0Xdm0DuaEKKJLf*Le2` zrzrB@*z%5`H?8A=A7fYl{*4AskC80&mPCW- zJ<6IRJ?s(xAx~z?u~`j3!06o`3=C|D27n%PM-IJ4qyE#{BR*@NGhP1UA|?7>pVvNr z0&qEDuh&4(i;H|{KQmlf7EyWpK-m}f0OIl4{0RGU(EuUaX%G&>nzT?%r=IyNzw^&} zu8(c9u22d@0s!TFT9n5G-1+NI?)wybebM%h{fBHoUunx#d9UnFrjL{JV{i5-@{ZF1xVP{pO7Qe>Oya?z7CIGu^4{tx0z?T>DtxB0jbht3XIgzL1ATjUAyl0QVlSID*2&!nu z0eqbYiqpTCKT6*H<*5pDFkCJ1^ke03qC0^nK1Jwm{?yD#PEPoo8^`3ldrgumGr%7< z)j2tL4}Eg-SQzyAt?gGn6ar~UnOHAk4K+}_zydSR_rgInn=Nads<4j} z=!xd?mo8OVjcd5i&^!47{9{VYu_J5q?8lsEpFTEEiD?W#U^76;PB}qKO!%aolq98f zsO~rgvoPqjUl!xCc>enf^Rr3#OPfUw&|u7{zZy((_;hO*hMSo=$Z}SBKn5>bfcu7d zvKV%*0lAo^pPLk)C#)VE>hohw4)Wn6nH6tM<_u;{gAFF^mxkA~JO21b=Q(=!9*;Bi z6uCOF#UCzD?9XNxS-f2F(h-GhvY38I_y!2rq?R7$xYq_+N|c3No|1`xf_Oj<3a}fZ z0fVqIt>X)IZilA4HH1Y=jaecHHCAZ26YiZ$?6<24J$ECrm{-sT`=Y zUr4Q3PDyU{(paVdOTxw+VvZX5+ETO9VMv}Pzv>79y3Moz(@719lBlugUbytCTGn2? zYz0Z6I%lGm46``Pr9EvTX*R?^zzcm9{&y2Q;3jXI$M3k^q#g}9c7|px-kDrh6o85! z*rKwc+)kfP1x4F;`5JctP?)^skj)u4qL*%duKcsuW0;EJY->^#5?Fc~paT`n(r?L( z7U*DZ9wV8|K@1fWTz9LUbTn{`L^|ckdpF6L6a(T&lKrb&0WKLAAeew|wCG`j3My>JSf$;E;wh22{MihOQ^10vN zu084u;A!zKc~BTu`diwPQ0oFS1ck#od>M2+uK$^A%E_qu-sAm*CFMMg0B~@@bV;?^ zLV*OMw}@*2(7EI0i$$=2?C*8)??pe?-HVMVE_O;K$j#Un(j%Wr*8cML6PwJjl^H-J zOoSt#1_}p(OxDIRR*00lg8Y9HpjoaX0}3)IW=WuV@n4AA8l#(s|Mi8-|2h5s>|UA4 zU|JyT;q1adv=pHYT9T9uD1G7y{yVj=0*Idj&Hr)ebG03V{x}+U&$}ZHKK=5==l_&u z9)R7nrJgXjfi+9T$B5)QDCcj*Ogo3j&{RPKE2s5y-}XE0YXOOunX8imS4`+V+JPyx zwbD=bN*hmi`=8n;Uw!4*Ea8`3`b)Nm1=K$F;q%x1J)C+E*q@*76HelbmGXgZd4C0; z#5tafVSTt@g576)_{@&~D5kcdry6I9Sm~bS<#E|apH1T(pWZ=Fu@@Q1v#6M7uyUDM z)!F)bBYF(G*ct+oEOPGn5f=IW=qO(9q)Jo)q5;WXS)?S8WMMM42PP&^PT8R85&>cP zR9N}GwvE@m)Qd2~5B>Ffk5vxl`uAimTPrN#%3oX(e3~bS858{tH3gg8`VAJ%f-%P1~pW zgmF)+!=6>T=qzgUvGC~gch_%|kis653Uyq$$Z$A`o|jvcb)((yt|{b)Cn)?d0#kZa;2i48NgF0mHy$?@l)-7Bcj}v&gvgFbU4Uj<7%$1 z8l4v>p#pZoI<%-(QK`oZS76~lgzL8(5mi#Kwl?uX++4U47J*>qfZRXb8H3(wtIT`Z zqj{S@G9+JUYjsV(9l02_m93JxEGxO+fZ26`Ojn`tOY5$Qa3eCwRCa!OY1> zP0p~){pqs53w~ch@WcFJ7B9Q@nwj}Ufg4qp%_#n&saIjT@3xQo_a51;{k;%0eW=?8 z)GmeW>4BepGA`KhGU-89yyahsZ#GsFrhj`Z_cq>JVC=@3xh}G8z%^U=Cp<_#}VUpI`i! zwby>%`QGyk$nc_Kk%1-te;+Feh98SF~6A$xo=ynb>ok7ECF}1uFnR zC)1=x`xbm>3YkYd{@?lSd}tY4#VyHLW?z}zNyXgiJTg1ojiKifPp{jH_ws9j>D}Nb z2`5s_F%?7HnS*N9TSjAEr*p-~CUnB%OlA5{Zp(BzZ4s3fJ&nU!m@ksb{~eo%e7Udg zZCTro1n_EpsT2DvTanhLzgmT>Dk1FSM;B4)Ui=MM-m5K;YDO9iXHg<&)Wp1%tkg8* zKAbyeAnnukhYrdWp08_^sYzHv8<1i$ho=a8;)FyWSNOM_fiI;3E1SOeAiuqHF|U#8}Jr^GQqc$ zUniB?={Mz*9RS=bqSZri7S8pkH(dIuMl#EP+{0a8X?IlC?;pn>=lM|u?(Ei?L8oa? z)*>fHyq=})z(_$EYrYhI3QWwc>_wW>B$kmyny$cBjHO(0fHE#1nzI}5l$V@XFmd=H z`x7xy=#tY%s^$Jtb|83~J+pctCqaZewf_l%WB?Jgv!Izd0y0nKosYq13bjD)S;j?U z^VH}d00^VAnZiyiI4+x3ALZ5@zQDf^2Z*S_=@I@XhSSuEH$hC%TD2HdGV|jik}4&a!ZuNGP*Nooia( z*>Sb%<~GT-HCtdTaWFi5_y-2$$%IJ=3{^fFC!k5ZL5(KdjWn}B>AVwR*oS78PyPNF zKK5`w<0ri|hj9Pi?+OIliks)^+yDD~8Oq9FsyQiiax+PEyU%@>HzL6c+!T?%nuBOo zC&Pw7IAJc~a@6r!3K(lwBmgKmBVK!ajCX78hueNqo@2}Bamzb1We?BP0YA*%l*wcS zi5$H!(e;8jhm@WHk2t1;Rs{IeovhmxCR_Ozz*vCtVV~hZzOvRak(ffU#|z!l-mxab zJZ~y<3u7+-lnF$D0XF0fy@N?P05Q?fEmVc3x#>>NIQkXtc9b7gQo_@>Qy0~ zT0nCWia7R0l9?yjlf!bYr&F{&LE(u4IOZ)04@tGau(V+?El5J3Z{}7iT~w;#B?2>N zNTq^v>ze!3gXd`9z9K%Ga!+XytLf?f@CuB32}pr6U8%1`Sj=SxgSqDpk?v^jpKJtZSrj(ng@^vgBYcE?pIy+h9m<|ADkLGC) zU$eKScoo|~323qM^h}QBgV^G2mU=2L@3Y>1xBVmxZDH!+j#>Fj4AnQ zA=*O9keT#w{#p$B)%yL<*oQxyQ>$3Qiv!FAP{g}>z{>X6Go)1Xlm&X^*(X2kr9A!D zr@!u?;K#eypY9omCusP5{fT1FUkf`;>c|rQc=dn*Tg;>|wSXZc9mn;UPL^l;yq%6? zoYE+qMX;T}ThH+-syc^)1h@-U@KZ15?oV7??=>Q46lF5}o_&|V6TVI(DrXKTt1^>A zJ{X5j9^e4Go<<<PnPUA$gQ2HJ6>W1eUtSukwTOfzN^R@3p!h zGpCNeFyN{5eQ;7d=*+xM0%>WbU=V$+N)X|6ox7fKQ7}DVlnBf`cN=&EV%1wyZNgb4 zKxg#l2pjAvC+kp|fz2F6JfFr0XRNdihBJat=v`)~Vom&+V05#bY|@1y+{+>?Ya?BS ziMttS{|~gy9r6DEwg;Ddm7y%+JE<99yhESw-V007qO6v+)fiw-RgFDjS2TFfFasCD zbr?hQN#Uxmo_ki#ep(bD+i5%B8DR?$*t^BFGs6%As1BVM44;9;Tt`to)c82x4omuF zyAN#Cb$=MhsJU0=JYwppWsx0W2$_g^K@kpWLo{NFSKMVy{Zx4M7q#c(liFr(n;K;? zQlu`9H|G^MS3ZDQdc@=BR{M{(W#wR&Z)Ro|%KGteCat-Cb59D}k6^O=RhyBFO0ZFY zeQ{V^!TDnf&du;->VGuQ|1z}6HcwOwn;ysjF(w;m47zH8L@Kv-8RNFcy4JVmOaBoJ z`V?&V8yYL{#KUne;CT^T-G3i(V$i{s5mkj>AVu4 zo$Z?>F*uMp-Qo1F>dv3uG~U5T%LR97idGFGoEUuy$ID>+gme0;y<{4`7`T`7`SCjC z^N8v6Km^>z!Y!J+O^;4@VkYbHL8b0Lv`rteO1}muRtQ=F7v48Yrwp?Q$G_jw?uW8;qz&u44-_8>1!S>}6;w zR;Kbhs*L}C(e8`;?Hk>M6js9G{_(|udz?S>yC<9H1TWor=dbqC1wHSm^he-@_y73L zdGLV_HmR+^eR;aop8>BL19A~u%$&)ZK*6<@&pUD9!|L0SfpxEaJ|7{Lafn80Nvlp4 z?P(Amo&a{~CC;xFP)O=2u9M@ibnd_(E=JGXiPqS9o25Qv9I5jU%dNcEqhQ^9LL7#7F}X_U@*X)^($9vcdMA*e&=<~@WPt0z?)Im9vtI+HoMvMhn*U6s ze6hA|dk?%%u<`&Nv^Je5;)Qdf?xBu5qfN`kJs-5pq3dm-RDjJ`Sq#J8q6Y18<4s(Ov5|ZEHE12m3IsIIB8oiJHK81l~0Lr-63LR{N~u0sd07Hd=nAB4aU3~(^+8*5d)(;ukcBSeHD%Ts z=Zuw;eIQ30R?H6!1?1JBrTFG`qq;QumFTN8HK`L{$1d;N zSM8+pGwxuB7CgXaU0n4rXS|0phNLlAq}p*y6JmLpBt3!8to_W;S9|ko8&^_uws3Lx zylkHA=vPj94vEa|H)~@Kjw{C?N?EA^JH_wCSp9`D%=^p#Z4X!=^3gYhT1#l~DEqz}{{YJ-|t$G#C^ie!u%djEk$z`riA`a^rv_N~t4GO;*%DX0Ny zh;!m4)q4A_I^X)cv#-B?w|$iX{o%W!y=3P0*51(H@3U`bJ3sQitja6G!Ugt^aHWyi zrkZ2J?Oy<<(vjE6d%E*I_VUNu^YO7Z#M=;Qw7j~%gIl&%5EE{{OGr~~>)Ohms_z8| z4`fFUc+}|q1sW+oh^)CXpvgXi1ZAd*2xn1w08A2NzJeitqBW`1oxl~A4bJ7{M$4J?oZ!0wD3TZtJa1b(B0mZSwce|L@*9M&RcVKJk>wi)CE z<{y%S=QQ8dHkMT5L4!Te9>lGpX6x>n<2D{0TXRPn3Qsdbyg(*zOcPh2R2*$IoA$6> zDd3m@1uA#{>W%Bs_QwGgLD;?1)URm{< z7eqNP!r=B+$CvY6zU~DTZKtQyQhlCW%AdX`LAwOR7d@OjK3@RT{fCcAc1H&4R5qFS zI-#{$mV0THa}=pBSdhxaMFsSrhduT~wmcf>0tU_WyKy77IRVfMa=AO5$Fz_nM5_g+ULsZ_Q}W!saj)d3?I^-aoAV?JJq* zEplD9++#QcXhwPPpbN%L;|6wk0Hd^dJ>=1ryzdUAuAPWJI-CWbe!w^D!{1ju{%TuK zSILrA#c z(AFR-8`Gdt;i}!Wp4@v~GLpnzLeT3a?mqZp07FwNwh|QP=0XyVW;H0q$Sk>i5zPE= zGAd6cHpWK#R{ZRl_2rTaTE-n+eE0o-&I+F0iQ}vd=$JOA7fRA21$ggx)#Wi5EhDNB zs_(zTHBSrmOOsX`eA6T~h&4Q<09*b-)lj2sf1;Y2A11k#FB zWYcr2@mZSyv{N~ll?6VlKH@a1t@~9CO!PU^_6)$;6~|<>3xXAY0TQvnLVnA^G{rYt zncV{*6q|Gz*vybbVhra9r<}F21WyE35kMvK+e|Y?XZ>q#GF8QO4u60H5UH{iGc~%G ztb%|=8JGoBxIWAr%%OEa(g;|q7)1#+fN%h&!UK7w+W7WA5Z|0Pq$4}Wzo>A$g@^OK z*kzf_u^*5X3E=yxS0-N<02^``FJ9ZJ#95 zq9a(O*=5;8#8#e@p}_FyW~wS$jxLP3UsrykZIu2CkLh^3TwF2%PE%@%NVc{2S4~`3!495~rgbQO zspb7QzUohY_q%n>d2Tr8F=s#<6{xI3WZ3Lix|btd<=?1aYlwieXzVk+1d!G`dF%=B z$Fs1qd5S|+hW;rX(-Rz#R^;b8RE-)F* z(WszdHP9MYj2qEw&QEcGG?*)tklM_p|wGgTR9 z(+xmumDdD7IVP>_hx+{Ld4HsN+V>~dXm!6K$J0&h<5QoHfAVp&;2a8of`YZR?lT$$ zk}%FeieI@PpN}Ec$e5`jHT@V+V8ajF_ph z91~2Z$uMA*U~8vCOWQzmG45U_|a z-UAG%kxUv52u#Oj6w#)9z`_}(GoEK$ZoZQJk(d9=9i(0eCTc=W#|0&BDVv#(^VXQ1 zT!TI8ruGR7`MHo}JXLwZre@ysr*pKOm~( z_$Zmn-MJ?BtZ3G-pI?gY1-UG5&dqhO+7uR&P$S@%<>Z@`h6}P52%F$@7opjNfqM%xgUW%kYCu!T}_adgXCXcx-tOa- zci!=b4|9EZ-+~F()F9CoGMnI-3RbRp7PTejEKbG8DCKh0r`=9I!0VrU_`_d+vX${s z{|}Q*ybW*l!bDY=bm74?HU$uyS;2-)YUz-!q`@0}C8miUf{4~KnyHyp0h%0&V%aVZ zpyt8VT8}A;|2TnQu5<6c|2TqUYu#`iW~vfY>tg@|YOXBh!lBHxpiSJQWDLE@O!b?T zVANhbLn{O(4|FZiqn~%U5AUVG7YX{X>PV8wm>Uz8+7UIVyfiEP@kI;asp?Yjm#mg* zBJ293m_xn_Lx^++I{cmz;vYndHd?#U1D+76i55}!CbmjRAqF)Heg5>|*`Mgn&bHgA z$^j*%nq0H19O!9B%=JLqEyn~y4+PC31-w}eB+%^}z|6OC75qks6siz`Q`|D&pg@CR zDNW~yaV-Tsow2!s-T+a1rjm0+jy56Dxj`1zTrWb3qsU%1O+kZLx_Wpl!TywiH2Pn4z0w!8x-wYeZxeQ+WEP;zSxVHKkV;KtyT|HfPd5NgE@X850US)+TLD(g9E> zMp|QR#v8fp1BBTY6@A34Jn&U>N12+~x})GLp!%Oqk-^A1o4C@>9-CiykjH^6Qmf)m zjZCaJ9#9Z~JL0WGhn;;6fjjaxOWz%5%FlZoPuuGYp3&jEZ|q;3@17wE+KMMfietcO zHMEvx{m+x0>%0%>L92h?`t;#;Tz{>#b0+;*vwrV1h6-sVqW0j^Rmz;rQaFfkv}`R` zx$`!Lb|Z3qr|gY3d{K+Cec|L7s1RQ4%)Ult4jHXac4{ouUi8) zBg7aA%_#d3*wFU|`7da^|Nr|AX&AAY%>XNaIj%%zd#h7LfLj}SbGxu?*>lyQe}^`0 zR4mun%#6|NXbF=HLS~q(a;ynZQC95orvAME=!e;I{Gh0WCq|eRGi5rJ6f@hmSqZ}# z;~j+6SSlRj#(Q1SulDH0|9;iDJ-DC-ro{1r&IAS`pvZZmB|sM0D=rgKFyt=*(0`=u z-us7r@`nLvo{;2M?`C2FBoxd;wyyfH{{PG~$2uHN?aq<;VtYP@scn%`h_WoT0ZfS? zqiS9ggq*-_(H^8q$-*EO{xBc%XAbW#wvX1-vk%>QrjRzbOEOBHyV9b|Mdj=B)GwCH zy~TCfb{?k69!_8-aUOkJyiuNYgE;-dlG0tP@|;9pmSMsS$0Z|*WC4^|&F+NI5Za|` z4AD2_BCpq|c=xM|y|q8f%Mk~#GNn83t?K}_mO}*2^Am8O5~rpOWYA-5HsBzG zYJjH8YBM7VZVmCaQe2TYl}9iaiTe%~19xQ(?ACMHZ%3aG$08OF0M@W_(y(+|Ynp&H zD+V|hawhX2Tbzc@tarU6ss+oAoqstEEN<0xr-2*LjZuQ}`?UM%ZT?|nDHt~kd$@bc ztfvbVB$rEjmd?uO+dYmI&nfqLR;VICXTVXc3c|?{FGh2ro4D29N-9k+xpVUF(3v>b zoE0FMm^9Y=-kvA%nnEBbPo0C~IGgZPt);u$eSY5U*j#m7MZ}(qzDN}n9bhXwmlWY5 zZ#zrp&3i}JreFT=-6Jn{;CVwM7SXe62F|54NyHBmf(wIQyF{Tq$wdQV*@OE-6EIA* zHNk2FOruXYpMvGsX1Co@N{@tLkMyLT9OHxa7EVy@{){?3<6Y0o<53x>G)X7h>6`Y6 z^08QcAKq2vL}U>q=UdP5S<0JD@2NaEI>&`+p8vgnnB>j`B#o*=V%fv!b0})t(FW3) z&YL+z=1dDc_g{A2XEuC9!0$f%>T!Oq+4m@?8xX~}p8-8|u!A6jXfDp}=*A#6vYRG@ z8E`6+Dxj^V#h@%{Dd+C_Um=cYkdQg&CBq0;5PZJ1l}0oTrgNVG9B*eX_5Ed?-l;2h zgp-&onl9XoiDsr9H|Ay={$08iuu;e^h5v1R?R+8hX-5=0H#HnFRYBtGD0`Ga>AHb57)_OpW#4 z>!queDKL6AlF>km(R;ntK5gSFcc~4QlsSk|G_zi6%lAl7)}}s%iU+Al6V8kof|B7p z(-G?Y$WZ`e0&qr7BKqBG-RGnWs?&ts>saE9g6=f=G}Gq5))ZExHs)v^LkuIw?;O3< zCv|%V;JDaCW(3ejIx|n9j+I4U9k!8$L6?)2Gsd>8ve`UUv5;ew#x6|TnX`fbxqDy7 zw9k~LfH-WHQpd`mxf_$Tm1HDkbIbge+5n};d8yVvb09H++%Gk+(~%@-r*;_}GIAgZ zW-wMMo3CEqrWzGy(8G27N1Gcv%Z5u}5K1;7(Ni8%*kK`ttjTA?Hyk1@Uu<762|v5| z3W3by&a(iAQn82U=ycn_HlUE{023Z_ITu;xD6Uu&ML+ORWvjt6B9+s^UixmB$?PMi zNoV+c&6H#g)pjmR38u4+&Z<>X5$}`U4`8{c-#c{^Nu?2r0K&Qy3C7tqIvz=2Uu{2l zQtRo5ZSUm}_urrrU3JOrQn__>PH_3&@ic>BjFKrV^EY8lGCntqt8=nVXq-h4))w-a z48qASdVV(iT6mP?Dp3j`S@Ja=KvL6(#q_IW3_2mMytLBW`ISiqKi;M+pf#GH3P28r zVhr@5?2@cVH8a4<_DYXi>%BLSng>nC>8YZCEa-Mo*#HYkXk92k&lK@QTm zq}oK@GoXuE_DsUx6?6ED8s(f|Ov2z8WZd5Vfs<2H{B78gw?W|YZHOF0{b~;`NAHif zui0K-zmBJwQa>dUQ3nA>2~*IOq7;aWHId4R2h79buW9@GeY&se!|$Jbj74amt%9Ts z!eq7KPNSLW6$4a26P~45tvNCpN)^=hl5Z=A_1B?6<=jrED z!&nwS08**QsSCj)4U_;7&isSt)c%@2O3WR#-HzSBPUn_Y!sF!b*q-VD&nHloD4d>@ zXa0IEt-~~pQp49J5rl=FI1GNeOyaB;UQP;S>0}2cw%MkmLySvL@F~?$3KyYWyIcf?C9a( z(4?_sxKT- z$xQ%ur5Z;-ou()K`7A534E?Et3|E+jB}l17ojf!s7AMUvX0b}H6**RX6MMH$wt$VC zc&_iEs^{%=(-LMW_}TU}ESY5U0vxoj)^dbD9D-{fIXz%vFcI525*%Y$Cp_ck&uoph@w#rx$T z&)kB!WSq%!5kk4NAeg1>c^*ydbN3{V#nW|P-18VUR>ng?)s6? zBzqXfpc`}n4GjBV6PpF0gc8o}HsSEDW)+{)b-(t zTEOlo+U(qy!0vy=WV<0M{w3{;t2WS4~ z**c%lTW05gB5h_8Gm~I4G_mJNu@M&lWt=f@8n;9eVMdHGkce-#k-ua6&5H2I*_q6o z>O-6wTPJG3jKft7Wq=yD_Ufcb19Un#x>_bUvXyYeJz9O*8_RTyVIxN|yLZIy9y>$y zWNe!nb8I6^6Jyrv@XRpk$P&H5$TKbdyKOQD_A_RV!@>B#^wbiWP{1EG7JsBM7%jOa z$*la`5^Y=7;pogO0CQVomE1QyU7#&z+&Y=#N7mG;scmW8Go?he*6Ied=ZAm{*}{9+5c2_&X#He0j8XS z6Eqr;huKE}7;I#V@m}>B0YZ^#P!pKiq_9Ux!Xu}XwFd3`81#K7|J;@^7z~xNpHM|v zVImO}Cv;n%O*zLg8!KS^X9Hy~G~A`(49DhZtSz>v7X5bsh%MVT*e0pRX$+7Wwnu|U zz>r%5F33ToN2kk1ozV85{9rHI8J0R5kP*;IYjY(5ZH%|Upc8rZ=yKnjh)ZflA~CM8 zwTL5s$MdWwIC&7$UV>88G=xf0sdSETPa{7(CR*mB+av(FQ`?}Ub|pbFw_GXcrgc&AIga~OgG zmN9&O@ISpB2gIr3+2fyP+ZVfq59-@1^f*89`Ca!({^2nvPPAxcQ$L^B59L3p?Wx>{ zEb7ds!+@>WjIc-2^2RdYXV`m<8($`CzKWFmC5Z~BE{O$^1n4PUoptU`e$uaX?T;?( z0MG$1P+khHcjiagg!_MY2>pCn8l?pf1{S20Q%Q4vav0!dMFskuo!-k$tZ~`B_+41z zE9=fSOT^FKp|WQIqaB|`;Yh_eA{W6?IqcC@r_{lLASwr1xWNB38Z7$?$WZnc`T#jV z#=o}ovayJSTw_~U%>x9159??Se&V;nq4?}e=PZ!H#A*{pVzANw#cMPDfV#O?*@ zIyYt2`jAjCHUK1q+{jq`&au2E0K%N1-`6YttTACZIUaH6J0r8$X>%L!dIe|XbhU)w zlpBk~S^L=}ZmYsnCg3C+a2vS=Z(vzZo-W~}Hpdd4J}~G+Y5}`5aB1-T<7(P}%*2Fffk%{iesm$! zo(}pm73>dRI`MQf7cj!d*)D`JGLvI2kXa+k*rDXb;4IW`;nCRSK*}K5jd9iiDzZs!qHlP;AWuEH|)g+&mf0^W!Zn+mrhG$!*to)wbjvxqsS3KF38O!-JWc~tJCjZe!>3z({P3T1Y%(*Kkjiu|uB*>VEbRDxFb z>bpBTSo>VEb75!p;@D3tcoIog-MRA0$>1#)=uN z$IOW-SK8Y8{qZ2jz<3^va5&d&FM|n4wZMiIJj)zNOV;gLN>Uj?MFL6zDH@k=LvJ2~ zxB+1_Zt%Zudyr$9O*`+UvaTv4ApvAQ2EgVQmmxB@IKWe6qaN^lswS=$AA{tWtDkIhKZ zNrOSVs8p37k%{c#bhK16#^mNiGq<@Xa2mQ*pSGO;Svd53m%B&!^Dw?s3~yOr^QRdk zjA6p0LZHVrhK=FkpE9a?_D&wNJI0+VD3QMNZT79wKude&XO+RRzH~640d%0x(lLu` ze_S5GN~`p$?U9*49Nu-!rjq-IkR!nym-yB!0U^sAOTH`RbdI6`eb;{YWNbhD^EhG9KhUec zq9qXXNUj<@?OVl5mU~pb)W8-T-BsBSafTHCjwVKo*2sv=RXlhg-XJbNe8$EhYFyPv zan+EHy!N&cm+2)l$jzg|%=jDm&*YH=wr~nTbnG>#ONINwU{Xk9ymJg<<^iFyXN@R3 z>Tv4r?B2inxlaF{7E2N6c_WG1@2g@P!!9K%I86`tn|))+oBl1mf87>K12~=wWK_B` z4dkfWgHWt2ss@Ga!w4PST6q%Ri%$K??cvt<+Z5?+^B*D=hLZ5C%FvOL$ErX`BGOrM zlggl&7_9JCWmMeV;@_Z^_S7@{^d5#j{r-_4`QpNJ>FpNpaSDD|l)v)rFWbYV*ox7U zf;=Pr{hiTL0mQ6S;0YuO;Rxn%UUiuFk0bEXj`~aXnfX!-aw~Z|!pz$aFYcbw=U4bb zdk9RP;3O0Qc2CtUBXoh_3-DTr$jb&OH{oEw7T1Siws{bdhT^aWT_3;{@5}uuk~_*V zp81t$1Mi0(`#djSuhKe|?0SkLQ`uwHB{P%&+>Ev+Ozi+o$W$0_$rj8U@0sP4emnYI z3fGjARp-#DdC4;~jRfvOP1DoA`|v?rn}EaP@>5YBdmhZqec3LbeO}z2}N()B|a6n{QP4l25=@q^SNGKavFrp z9iLq3{^xE?n<3|sT5m^0SOJff6YS*%uF;d|%N(}J*Dh#f7JXUZ(msh!;uarp<9+nJ z;FrmAuGMFv*n+1pRIVNK8B~A&Z2J^Xj9+abshEOCoADV<1c%)wvB3d1;06!mZ6JWg zqK-eqxbIQsr~1MVUwD309T7jDrh1 z26lYrWGZRR73LT%N88`gFqz)s$c9_9M7FOTCFE@9&i zG`J#}&dz=#aWNWY_!cb*$%6pldf!B(IlA|#4yn2_FwV2NfKD4dmE-7}!lc^{HP7<0 zkPaXZh_!yaKT(ylnM0PgOT#w}DK?V|D4LZrnK2K{@p8Myu&Y#T22bHlW)A-(Ih`lHEx7x#m&1-7FsBSQk9*bV&2W0LfMtsG!lZ?Gy*=eVRct4c}+RXj2p=IEJ8=V%(pqx;_ZgErN~60v0p1hYi`n8Rsc*D&oYW8@qIF8EtyUshwc3Z@$SegF~DVH z5WE+uylY+_)qab~GQfU1&mdnJG^u~24Y$BMvzukLggsj60OXAazYkS*{a3VCgYz|n z*Mx6ZU`zl)&6-It>l2##H968rlWK@y$*S1M%yErjFtSA{7-Fh>X@-aIFzCOb)eeBN z7oZ|;FXO=#_Q+Y(&M~gYOqfQt&1}|2_7byLd0l_cgMe*BgXrR2c`%34BN`FY@MY4e z(UF6-D8x>N0XW9ZIYP}uT44Fl`*HdAyrGY`HZjYZ<>0V-?`sem@0TuPnI>kibTp$Sr9_gA89ZH8|Yf0vfle_dcwATm6@%xgd zniUJ2a6%;=PtRh=0Dv5bl?|EJxY>8{MF0Fj`X@F6BFDFH_7Z`wdP4@B!1tqHkz)K7$(g7K%dq4KF% z`}g?c`{V~V?X-uNMS6~!uN>n0v^FQXSEOg;lyIGYdt}HKJYDR7yxN@v%AlI4&>$MV z(uB#(TDQm1~sXR8>`{y>9+E9^l^@td(_foW69 zpj?W+^CcyO(baiGI+120usv2@tT zt;*h4CbltPAPo+WsW|_XLb#UyM;`a%4sgP(fk{1!eO&iVX8%k=+LLl@oTM)9zoLDw zuxslOpgMQc*3>%R%nk!?5Lvn+Kr)G29fP({>NGpTN&udM&H(RmKR%F)_hoxtq&xhI z$2D8!$ELUbywNg?TD_4)Cmv4+d0k}s-6lESvY-=q?=z|Z=#Qw@oKjEN!2kd)(k_nm zehT#6U1?8Oziam){fF#AB;2N?&yoZpx4Hi5DTzJ9nFHD-W=f^8WnMzVe#Zj+r2P(g}=}$H7(Db=cac z9t|*H<-q9bS@f3#Dy59HC6%&|Z6Y!~x--j-lv7vsrciV(hAfE+h>u>?-n46J(St@6 zHUu)vk-a$1qbsk0d=oblc?(p174)qcWI9M@W*Vd8HVC)12Q+dhM{L&F2L>(8Zo; zwr_T3dd%zrGvSsw77D}ZN*tLY`e@TUZC*lj*r|Cu_K<000D$OEqbZ-=!mbcAlG&Zz zK)Cm914UX=#wAfQZ8TxEBshlh9WHsW83A6IjFl{Q96kOu=<{doeEmK1>He0f9K#LD zpa)29#bt4w1eCF?D32`oFAq-l{43)Fkd!1j^SKf(`SL=eWuo-g&EzajI8osGvUg(6 znK!}Q>zGx#95B@g%?%CEY4L95-bLbGPVz_C@@9?CHF>5M2PM zbXcvn7w>)u0Xv+|o5mH~9Fat3ZwWJqbg2juGm0=OJhPGzPdmp6gRb=zyFc(}%+fXa zH3gEu5v}qN1v&?oe1FXJ4!{Gub{Tx%i4=***qdyCy5eB1*0t}6Enllv!CS1F~rSOMoS63A_x8H z^`CTPUii;#wUC`9JDWs+qS|1hcV#V~1q>DQz}Jx%Rt&+Nd1G9r)nynG4;$~Vcx6A_ zT*Phf=FKe9P;p<3Zbn8pGZdsb-l1m7l>|z|qqGH<+3+XQy}c4BfBBUc8R7nylkrzB z#b*=m{8}G{K&Ta&$QtNCC_Q=K))4wv$X!(coae-9180``43m zANfCf0t*;Rm$I@ZY!?D+h@Vq@?%FSjjNH%XskAXZh`_u&=&gWu_E?hO7|5%aj0PD{ z%XwH0xC?+;T9IZW06)x@X~f%3LFLe;9aYsc;mJHg*l>30st+;y1Npie^^fo26~nS9sdK_Cdu%#o$J5>4 zfS3xXGIFKZ@@_@XXB6KIP0A7n9rX&TA|`QRy*uR?X;k^9orbjtF3b;`*!>Lru*E$f z(d6!m!v46cyquD+Ry8TlR0Gl1hv7YK;Dz8NNV7qWzLB5GJbu`#eTun!j1AOXK6dj3 zn)>i`l~z@rI7pEjp}}5@5Evqj4cr#*j3$)p81roktb1_L`_5Z;`2`abnsq7nu0D4A z@x83N)Aj_fnmHp&`_q?b!zyOC_*Of}i;`~fEM5t~pige<>Bi1`df-~U`*a6BzMj1h zq)RXr-0UDS>rd`*Gldyr$LfDN-^)G+K>lW26E}JX(=#mrCZ@vko-c!yEU+iG0O0q- z*I#QES>+Q&QodC{ROmp4?THs=(JUqW7)$9ofveFub9=XK!1w z#Hq(ETDx7_xKT8t%`HO-C~pm!K~r5LjFF7nRijH1lm=u4MzW8-0caOvMzS+=>o?>O z8DxUDk`RGgzY@-N=_=AOm?-+{$Nh9S9yuk&nc3fNeIsez01z8E2zqFYDq_?D8CN=B z=dJbIJN1oBnPi)|Uf+guyUd_MB0Y2)$^>f>CBd5lKn%C=I5D7~%)7#xNu~;gZ`5#> zdh1!i>S41sP@k7(6|zw=23BMYpl;6Mp_{zY0@ZCW-2TDrNKXzq61t>H8rA6`HdTeL zi~^-kU0z`2akL9ac(Vx%M&rzE+Rw{+kh0I(GA!B&hE}EDp199*EtHlBR%#nyTjtf? z2uzwD1&IBhDUlbr0vQMiqsBGj_y0Y<{g0s*+H||6uE-Rd6Dz8mUI03076Jf}lU!U7 zswB8g7o-y8rkW0>Pr_wnx$7IqP&qBI#Ch@yQ(gSAt0&U*$qX{Ek z&=aho7LV=s!KPV(%G&4G#!g37aYmj^gaL0*2e?by@5t$k_VOGRfxL3O&pXx)sBqrk z&TWf8vEH}!)caDO?;qgB^DbjA5omAgc2yAAftf{02FI2C3WehW z#m-F;O>+cIwQ)0SH1Fxde-~4jG3OECoLT>1YP@H>A5`ifg#+KkLRoec6B0i5BM<-&0ppAx* z9{X{;m@coM>%o%$em}oBKGQBk%l1}S33KFHbI3t$$l<&~-vFmJu(&)o)+T@1`sf@G zj8iTJUdSc?HS@Aqhco$S;U%CzF}~%vs-k>TjSjRxhWm)k)%SMc%)<5zs1%KQ1s&^2 z`O@C|Q`_ATsx`G?Z6Tz-d||h zQSJznosGrF87tTi@*B9pncCG@M-#z+%)tNZr@+c_AzLcUt%BRDz_TzCc%L-UGDQtw zWpp~-#5ZGJ= zu2(HWCrKIuvu5&9X=x{9OxtIjub)8A)p>Xn@<5flqTTE{O^Xstl_%5xAN2pWjdko2 zEhqIPiGBB|bz$Qu)$=jTR!HmqMu0o*fe)d_ox*j$m+suY^Q*KHb@hqDB_O>eHgVJp zGZTiq0p*_eiC6HF1hWS?Oh_<qW2YW3E(HCd=Lw`BvWC~6np60P14V!cL zM9K;4ck#c10p9=2Cph(}D5#Hbq#=sERsZDUZ&=xz)k%TdG+>xRP@klx7L*{n|Moe zHw$!Bay#jsAK)epR;EI|lpPw3xouWL*8JbTWuJ}Ri9XlGwKMc>F!#Lc)9cM+v1k-Y zQEC;$+gB*iXi+!d>PO{`hk5_fN#ouAUB|~}jDsW&@Q>j&2T5=JVof0{4PR-6(jMs7 zU{KA4@sr5m+ZEeCKw5#x_y+zUqBq+QdB}7nI;~lKzxSfdO~p_-OF~ub5NUB(c})+F z5*rD}EWNd+_cQLpgmh2haTMGlqR%9usYpm{2A#E$Z9XeNl>elY}Zxf<{J3pFBL)Oe6vx1je3q{!fOJEQP$DYrSiiK*QXI4w^&7 z*wS@olvBIs(_k(6zYTl_faK)*7WzCnUvAj~Y9txW3NuO?x%KN9od%KJqXY#qJO4BS z<{xP@KvN!(VxE#>RhdYbkc^SHEw7nro7%FyWpRwt&R*#Y>!=c4*ygL}<^KPECAfLI z9j$C~5b4sTh%wxREDtr+-XPr7>5oS0-_&@!21>vb5R;qP zIFfXhb_&3e9-TRW%(wtmS9wO=$7hr97j^Ovp8KZ?3NJtM452>#=J5g7^jNb5 z6o%X*^f}BxwDM;-u5>AqR~UGrT18tMSxymt%~7`3j48XAb-eD^KAShsUL~V=+@|4; zPGH1ha8Ae$tinx$Fa@@$9*hmaq=@MW$ zQ?Guq6|-}q<&$XnJfNlH5hk#(;5+RqH1s4 zDqKTtu(D=ORp10%$)+kKg~MI!aKan*`YsPI<&Gnao!0a8RN}5i^7w~*{73y%Rq;-# z=blxjC&w|0kjDkzj}9b6_+NyOPBAg$-vC<86jg3oy7yP7%zDhbf=2gP4c2db|C{MD zlwQ|jtJy`3p1qXDsDIy^S$D+vJYDo@1pe>&u(AL!l08Wl1z?5m~3=n+md=bB&{N<`v~lU z^qI~yHHgU3b`d4gJj8bMB1D^e~2fB}l*J7|{g4$sFNCRFHiHU%*`5epSv;sSua2Tx z4P+iwZWpO_p?vnzjM|9bqM7Og^}7FIzk@db@H_CW;Qa~m`pOvfqogvf9>bB7stnr^ z^EVQ5V9{^S=lj7`)H)%l;ZYaqYYZOpElQpa(;UkaOiXhOE6gO@;I}Z?2KtSeW|EBY zJ3U4OVq^a&n7aLckiU(8{GZk!q)d)?OFXIUyE32G^Uk=IYQHoiJ>qoaAK6=+Ta%0Q zMMzPj;T?274aNF;#WD#htElIR621>z0zli)nmEih+&sj)18{ymP0k`!$DDeK11^2v z{TEs9dRb{>X9%ucg_M85o%*aDK>msyCYxCAd3baJbg5Q^<1*NUp^?r-ashm=0`iBq z@*i@#7855IC3(g6p)8i7f(qyY6nR7dBGVYg22*L?Zj2-`)UsVvalhG~q0h&zE@x$> ztn*EloVhe!n7a`CtkUBw-F(mrlMNrX9n4IA85yl=nnU5bGnSPV_4bwy>LFqB*L1(|`v!jAXuAUcan8_cJ|n(T=~Cg_Cx`j3(tZ zCji6-2JsHq33J0h_dLxvKmYd&?Ez=`rR_5qn$(#Vw711EIUg*~;mstzV>CVJzx|vL zN586lvs1JxosrFADgp!j){s<7HLzJhGC3kiRQPJlT0~#eUVn)!-%sNcPyE%Dj{Exb z_{Zm6`ogsyhu~3h5s4{k>@Scu=|P#r$&Cv7z@|Ox58o5gKeksh%}aJ*TB0O1=3zT0 zK=s4N=Ya#zv8>5C7HFg}e0wkdiwx+^6?!aS2Fb!p-0dOfmWr6HoRPN`SK;^s+<4TSkAb(q` zdtFIapw+Y>Rf=NJ-|T_BfoA%iLG`7U6W*QWdFCuWI`_bls+GqiM9LOUwcK{M3rmwk z!Z5M?x`pa?Gl|VMOt9NsxDjJuNJ2D^G}9P#6+5igv4FTGDnHo+ck^heb{s0Bm7Gwk zxc$H;zth^7ATsZ^l`8O_9YE>J5u#g~S^6;C03D3FO6vz9XmZ8}i@U&=c2O}4IRVg# z@)P9?=;4!h@Syj9`1CA?oI_m?bziKDnMY5ku;(e6iJzyzU2`@Il@O32Y47P zV=iO(iOF{!EbV)l?-7;{4>zLtyA#R@rfelGCuX#vfu$z^Nmgmfn&tKRDgzOrTsL z)^(1bk4&41c(~{KlTrK4fbG!(=2(W&J`M}+7l6^-F14u@{WCEEwf&PjTGh8H&%=0-qIk0>ijsPO8@q40^0K*>4cVyT0KZeQH%x^;*0Nnn?g7Hisq|7m6 zJfOj`pC9!SqwR{7h{=Y;nniObS^tjEP)v7%x?x<_giPG|IkLyZ2kU1ceLknpRT@MR zn?Mf`qFN38*={Mu9jK@0C)fiUQ$bA#5XLuJ@)0Zcql&$>V44`WIj1GNHrPTC?y;a9;FMc zF_Ln2k1K+y79_XGq(d1S8SGa$&ERv{)_tm=q(#YDwYB6F6t((NbTW--CM%f6OnJaY+A=*57c+oVjy&s<(X)t8nX=&Xk~2Tiz6^{`&^1pJ z+cx@DK*FJmS%g%t(6Uz{*g7praQtvia2OVUK7IJbEi~Sx1b|L@r zP)oHsi_KD|-Z(0T{|)W6Rx+xl;#@?U`Kv`4%3-9))RqcRsW(87kprVMEn;Bob?ms( zXx0tBk74~uD>eyLCF`<$D8@!H(}@rXUXcSPT0kI8XEF9TK$vLR_H|TYztSOoUX$jt z_D2FF^N0be?opvUT=A<+pi^PR$U#^fi9lPb8VZ2nPB5cYEJRMAa}2CCH~}GdJcC(( zC(xnjtm`VcSszfuh_H&A9-nCz|`u}oeO~D!XN;Tf7vDZIulBg^USv`-kfqy>-y(R$N2`< zUL@_6q;Vi8JWTt$?^b9qSPHtx(tW-GK~#0fw|dy5Xeh79tAUdH4^A4F4@Pa?=Uutr zu7egYLlSL25@270B$1 z&zHE5ki`UrN=FKaK6(IQ|1)_NE(NL5a=rt}7A_B(A!%gQjkndoq^CTwUEH|3S5@7B znJ!>w9miahXL6S1TqvUN0qeU#o4K#|nBLuJS)j@8dA+Z?j(FeEW6---^Q` z8oXu2IWZK-0s*XtOJEf^!s6|dTI2f>|6XA3QUdxA>v(u!BF19fkz{IzCbR1JR63$K z$dT^g8xRx>Y1ZFDRp(45AZL`;Fw~C$UGMnl>ZwTOgr5Gm0rTSMs%cHK^h@or*1UlP zmudt41z&)04g!*mL6g|c&_$k{32jFNZ#-^cPa*_Gly-_r`$=c3pEfIan>mrb62bJ; zVW2&8yWl~=NsepYXg5sJvm|do+CwDVK-*UWnHf>JFvqZ*dw8(+7T0okTYDuQoQ;J_ zKXBO|AM4{d)W1ewdSUZzEKc$K98EX_D1nGZwwkBN|AXwnZKhZlwxgdJ@+I3%B(v&9HBAN8Q%MhSwmR_zlGV9c5q1=8ZWBjLSa| z|L~T2AD|>9_Ie&QZqr|oBn<(}fq+o}0#2!~T-m)cSTMuYE zgv_IalFQx{WNSTWe z{-wsHdoTzpcJ^kETWo;ut4|Dz^k|zqZljk4za>QqMcs*ihOU~* zaZX#ylwCvh5qkI~PVBF_&Z1o;AR^sUq{yKLJH{9_h&ec}J+|5gs4XkkwB*Paz*Ivf zqkQ9ByTlK-yqlkYpa|8xz=~0Ds%MM>C21wW^BAfUfzL#>0{<#~BA=KQe@9DqPd~=w zmIX6p67%E`sYy{R-?xq)O(iUk`NsbO4E?8?0Z0d@n{Xd9`!&;{3}K*j|1_L=orx;o zp1JcN(nm7CC+6_8al5D2x-->U!eV;RklKhhKptHl4yK_r)N21qg=Ye(P-<|agVyhp zqd@K6+fNmZ{Gzt?(mH!Y2}?m13x6R3gkj~)(Ms$Ph9j(?2iiAJX9KfxT8_9~;Q`U8 zX^T=jJXlV9;D?VE<6n%r${k6hQ#V^xNfB&5Z&oS_J|8e zs+^F)(dG9dDkc)_!KRs3yFc5W=mVHI5$W0*X5VL$+OBm5(6Cy` zI3z0gy{&BC<=5pf%}J{qfq9H!4>>|b)ie_)AM@vxH$F(Ee7@%-3z@;$7bP}htGodV zvg~18gSS+tf+P{ZX0pZmxV@)?6tUSixDzpK%8I+Y7aKbBP*X>FLnHu2)#)kcHx)T! zpwkJpi!;YEkowPZAJDgZ?|ge?mM z4l~03M&3$cjjB9?*$3~=*fACUkiEi(#Ih$JD4J)RVJjNA0t1Lbl!20~58#G;hYen8 zjEY%ocuH{0!)8&qSYS1FQuFifIoBbi#18Q7yU)&XCTT(|1oTkDx8!fksfC^;NX)#_ z|ClquFs{yPh0qOvg1bvnvb=^pV!7KmHW`_NrToO@A09IYB%gT>BI{XLAIUpx_v3&p zC#=}SFB0Lj@GP5B*oj<%%a-xa1q+r*T~Stp*V-DK%G!c!nh7Yzpwy0hi=%HpX2&H< z-3vtzFUzF*&`C7jZHRRbiKox6{XX6UWH9*#WVo6177<(C`Y4@eM6s15u#HfayUfW; zmBYgsD=5W1{-i*(iCfiQqY3a7O$AQ@YD-Wl`_EH3B?6gaj|k1J0_f3d4sZ`0Rq^4R zJm|!zOy67EzEM5!-s6poqyULmJ85Je*n*6pJ>G{dXm5j|l;f?0VagoIIu%aw9*NY@ zaZK)p4(u4YJ3qFm$f!)BwPliOF>YR_&pzFdRJOR2vnXuQbWVA9uK!gE%asEbgHcKy ziZtnzMWZuU#XRp3i=;5^%IZa`Z9WfC`2UYD8#f;?F6^(Y6>I z&d6jjMe8_GLxgMl#U$B}XaThxo3jxDXx`L%Yti%ucl!oNv$FOXNd3qfsDJ$NSM)O& z^aF8y6?)!z3d?B9s}*U`Nn8DDTP<8Q7$>mOaU3&R|F5j;?=Y(F|GJOQJ^GA4gh7*B zrtyC6t%3v(86>TNwe?#oKQnkxYhaJDmbDU5TM4T~eF5pg1STHGK8Sd3)7?zZ8RJ zdJjjTBws4M=AeL>NDiVSMK>_$QbMf{%w6VB>?7mpiSYSW{Iy$5Q1HkMe%%?)Z@hd> z_uDEH%{+h>c)N8a;%!dVdFe%jX`<hG4(8pa7M@E|iDE_N!46(IA`%n1_O!`uDga6XW{8ecWMs1VaY7q_sZ=?CQ_k11 z(^@ASXfc!642jIV*5fJ?$@Ewzil=0}T+t!BfmNd~rfAP?u7-t|CTZ!>N?)+Df#XjL zP(E!JtUY$#`y33IDCrS&W1-cOc32Dm(1;CcoTxHAnOOe|qaOcJTByd}~`lQx>j%)AOPdJ(?TS8^kv zT98o#QzHKMtPeIT8rp*eWK;}NYnJ?Bs?mp5i%|O}PTkf}Ek19)&AjzmnEY={mnuT5s60tj8!so^)0Zg#ilmsUyabiN z)O9`Q>=(FBJ2)aVvkBJgRu~GZ5d*$uA{D}K;$ZyFY!12-W08t7C&B@mnPVcwfy6B| z?YF`)r1SBBeJh9nSp_ajXbCGshAOw>s)P$s7Qj;1@Ct4*r78Y(w?RYED%js)NqyMc z<=bf3sP0YKt&3(}50vTgJ}BT4?$^sdG{U!kvcJdH%z=I_u}~6<0ooahxIIjS=JvYJ zlzQ}N&g>OqAtHp*(+Dkk>G5Gl8%~@=+e;W>aILsHcx;F4m1(uB)=*F>FXxr;pvZ4P zM!*`G{{jPfgF6LDP$zd4@YDSNQG1k#B*~#u=rtvUeu{v0e|am+W;5sPQfiqAGYu6}9=eUW%9PpTOw1hzCKznmqrG}YZ zw`l@LY*`P-aJ zU^C6ZmBeQ%BY616Od%3((RFD(-EY^xMlzXg1GEh!q3{L6*?W<=?_bIvc^!Z7RsPJ^ zM`n2VLTJ-4e6zxe)TWBd6@EJfyOWGTK^sKhOXvJR`?ZG0(dfHeTpISUmmj%)S=J+R zkTHRkxz<$N&IM1bZ!zmne^(Q@`k8Q6IVl2#J|laM4n?ho#0V=T+cYuj?F2qB?EYPv zM78Bl4viZtrJEwm+qF0$q3A?{0>c7h5D}4i$BHvf0_R_8pQE3jw;g6IWFlEg>Mh%r zY)p%TV|a39A#@DW&bARs83-B>Jv!5Ynco5Ig0Raxcva`~s~X>551gD}9Ue)%1+L|Q zqH7abve)hUzumrB4Hz__%Mds^DCXdJXC@-Dy)nc-{r!2PlTG#2PX4NvxC}LFV-C5{ z%Ilz-zKw|%ga*(7TfwYCE|n1L@zs9+f$8@I82vLwZTIYcqJ2Mju+PTBfIOhL)8}4p zV#i$fgdi@s?U4!v7HGxpCQr2zPgu1CzkcY zpjtVN&f4jxwa7Fu!c(}CFvg&7r4yYCUaG0dv~3;k>d%~NCvW#iw4QQjBMwaL{P+(t zjHA_(=CKs%r}@)m9$i7}a~fEA9(kUjXn z#z4`1U#Xy_YWwW+wA7lZ6bCVv0pFWl|(aL9`&dWx#Hz;i6?X?T&2NP5%Hx zfCboXyYGe#8jw4dDH<-|0up7hl10%X&8+L>%U9fU_7`&wH|AU`BEDi*_uTt3wQzCn z-rtTdV#SITYt1?4m}4pj>RR*242!TrkF;8d50c5-&Er_Al0{d%-Vv`h*NS0`lZ;0- zg8(%@IHsV$v)P#>xugM^*z3XQVMrqt(k-=)x^?X)Xk zmL*W?lQ~FN#h5-)!wxr=Q|1^QSbx@rFd)nmdqAUko7R;7Uu#ZEwWwvR`Qe z!f9T`2Vq9fhX+r~T!jzRd$R{fj&sDLk;^-VJ*<=?kd-iMok~du&x|t!hjUqrN2emH z5sVRpr_onunsVsx_!&Kg#Ks3=u1 z61GSobH<0v)##Fpan2RC0Osq8)cWvXYw+RwDPcL`ybc@P+P>?-KTNx_cS+R#WS(>( zTaMg}LP$QWB}z$4OD|z2w^@~V+KUyqIS?m_I4vgPAmK()FlE%6jbWA^&lFRw_zL{O0#Mg{4) z8kGv2L-w8k|XHQRM~=0VERI5l(He_W2*U9W0~HbEyFy0 zp>*Ee=8fEt1OYBfY3zIu>2T%REF_)+DG&Pl%=c7Se0*-e-@;#hW!o_mpJrWk>4M?6 zEvFS;k|ODZ2z&2v>YOmq*n3A=laX5JK1$@MR!(f>^e5VvhCZ_-^)-PKl_XO!m7prv zQQedzg{;!?%24c8eZ;wUVQ*X-`Co0z;#`!=ORVq*(U=vjOT?KFxDZsvX?>K^aFQ=v z&(vx~koy7N!Ob=_g%cPgiE`zY5Zu92Di~*PJ*9p^W&h{H0-hq}zA_>s<|dL)-s~+@ zYis+>=-GDjNTZ3i`jf`T7toNo(AVVwxi04qXCU5vy}dEDKcHBlbK(K+j(61eQ<)I$M62@M zez*WS+OqG}8$t_jY|Dd@mS?Pwt1V`>Gz00;p`@iE2`*;2q)4p5QdFUOTd7PYvEfKx zq&u&gnXhjzT9#h`JwU?0-iITeKBF_cK<{>_?T(r4daukKmk79;qRQgUWU24SobU=s z(oSa)fEV^E0B}|4>cDmSfwx|rU^J4Ru$CKW=el#?DhVcgXFF2?KP7EdB|vwz((FZ3 zU1zK~mD)>Ez5#_lA^+>gf)z`;p522k6z^-d|b5PQr4xf9%A9MOzx7l z=Oe@BJLeoXln*=oJ8n~Mf>c@bLo;^XCTRr~Ci4s!t+_XC%s?Jd+j1hAe(a9Dg+9E!m(y~7F;ct_T-qJNIe2w1#*N?f)*J|h5h>>&qF{xI})FO!~dahL4C&KzVjL1$tyk5~;{p$F&$ z)JkN)14eBqAi*>BKC4&4%+VODmW?Rr0!v^uJFSv&Qf}uSF!w^Itp+TX5v$-W0D>&` zmbC5Y4U}Uw_Y7<3d6Mjyl3W%dEdAk~m^5=^uAh@i7|iTq(p`RkfnimNPbQk`I(A=#INm@*xj^Hfk+||mM7;KFhiP9(%X;=NlqQ`ee22A zId{_T4Nbs&KuCQzbrMk*?A8It&(LBibI})=C#%FQ%Od5DHI;1sLvWi{EJ3?4iO9ds>A&t@jz&h}_i9YYZK4v>wV*+oR=*ID!t4H&m zx(;4lg@Vkf#KYS6?lQ_enXUv*V)SCLo-NZJz9Bos!`HQ*ECROX$241n1!mB?lnBW% z`>)XF`f%rY4xG8Mo}w*RyaDKqq-1Lv4=TZ;?F@U1#Sdp=0vGv7}nl4d8cwh{vlWY^C9vOP&7q(^7=Ek`_plxdI#^_d( zX|-PcGvt&3H1M4ydA+2mZCDI4qe4lgEsG+o#Ckx1iPy%QurM4sExR z=fQ2rCU@<>P9)(YLLS)Ax-cvd1Eg|c-LJ9C#w<*YBv-ik*Tj|a5#voZP}yEey;CIT zq#_aw!-7hMs0mrc(yvFN7ITZihIXK|)Q8GYrwdhzu0zNg_ZMMXJx$b|O*y7~DRY3+j) zB?4fsv-Th#*Q|v&d%p)=L<)?xbvXcG={WL{Jo{zhSubcMD`JM_U9u?l@^}OwKfxCI zg0v(QXIBIls$}R%!Okld3;D`Z7ix)U%e;hrczYf`i(p>!OKu-WidQe7EbSyvHdd|t zh=>%+5?Q$zNjodnqFJpEU-Qh&mA#Zzl#!8X7{SvKQK=EQd}VHOpN|r{H~us~zeRxBFayTIn4MF~HBlT%~ZT{g6uQ*$roZ0Mxl602Kxcs1%}sloDKI4`{VznSxr4 ztw_*V_x+yk`*x$dirR%b!5v)$LX-+2XMr*m=WfzfN~R)(n$e}m+O<>^fmLRa%c8=d zK`oFB9~{1dpqMiA9N4ky{I**vc9@cOOIFRkE@Lu`?Kyu8LSfCSUy&4u9Fl_D!Ii6B z@SzA~(uj9SV`ZA7r>7$#VYWzVp>^@JY@#q$$SeU{z;oh3Ny8&xAsJfKqyH@*iV5ut z0~rRnc;6BeN~5IM6ZU&BRQZPc%I6b3C8abl3rZAdsASim{ZLfxv3Rtikn=IILJvhh z?$H)#B)_ISXFfVm@Jn>X;Tp{S1A2Pt<2Zn5VTvqaMkv{|Xx4Rwa4coUZtDY+R(cLi zwrg~_C&oj1J>n7v&elul?K_fbTAATwHdt?^OWrda71n|!$<|!H3V1-4@saun zx{uJ*m=m2jcm$lLA)##sO>}zqevzEm(P72b80WFX9JYIn0f2!J-Rz-0U_K&6r;v)I zzDqjlKM>HWWYtY(5Ka*0%C#tx?FlNzjz8wv9s6+92P*s}4of4mzj`Qt%|#mtuKqu( zl(gd~ap!9m``WH0IBFnLIfu3h?c5>yuV@^7kR;10QC^XNXf(9loo42$i}%YdPYShp-PPA-yWlxxixIS5l5 zsGowFnU}7mySuXVYAIx?$w=Y7&Mm&2U;)4c_m3GBjZVpE5>BBqrXbV62kD{S6}P#}!t|KAf(Cy8Ju|x}X@)EZkQsyocVE=C z1cBvbv4ldo#xQ@0ZMo>&rS74ZjA~D|?1E_kFohjo-ii}igxoZVrJWQYXgJFj0=;{Z zo`4~oFd;&jA(36#4;`wVBeRx{!sDD4 z7gog1ZtEjaZu^!pHV@lPj9Lb8O2`=Uq&?6Uw6btLY0#9JN{iUaVVeUE(<1XQKqqF% z&R`;0vAWtl%D1OQCs}=>wkhuPy>*O~u!XjiT3BTpazD2fU8^b*%Soq) zh=f*Gf{gw~9lztp0apO!1(WERJ3XR=c86qf@tut|KY|S)3G<9c)5<2vNF@9Of56OG9QWb)Mhj3+>}Ct?87WfjKAP&|$YHy5yL#P;R0 z@tP*~{C6kfAVLCR16HWa0y#2cMI=d`7VxC3`DUV5yribNGL%8(o$2?Ywr4o*+y2wN zqj-7P=0FxS>kl6(p6-VNTn_i|Bg zP5-*r8B5p=rL_zGNjm%mn;4 z4;DtH$(I0LUwDcZ^js#(@#9``RWU@E%pua>QRpJ`WryjE^)W%6+*s-{!B};Ar(Bh5 zM+-|6;Q7GSOWVD2^>>dSd$u^lTg+99VXn&6WmrfVOq9Y(&hd;1z%qeH!FFbhFjPv0 zMPMVneNy!AJ)^rr@wRs1xqb1llZMUr$`jdU77fzUwN%>HI^=(K6;}Sc1~#%~%U#@Q z_P7&p8G*B(6AHK?&jJ5L@wX?Q<11PtrOYyFgfuW^h8QdflNpopB`K1YDp4$TwnR9W zw5o(*G*2r;2Bj*Nl@h9W<)gd1F&%$X{<$MplH;hH0}6?+i7pjc1@fW&1NpTW*yK_$Q0b#Hr#2-PaAUcJx97mHi?yKu#}t> z&Qb^uwO&?aq16;(GGYyY@{t7Op#>|?g5kj&iIw)T#$kr~4yDhonr)1ziS$uIM)i51 zB}KMs5s3nVv-Cxk8K4#ar}PYHj#jQvNjgA=5F#^&6Y3_X7WtWUrlilI6O8bM%+#9U z%!>1oT!EUE0?^!`Bi~@(2EK$rV=Ca-A|Z+M-M8|}Pt7aZBpju*Om_P0V4wEHFwz!Q zg1ekdX;HKZD4l>b593M3)JKxgNvf2BImnYjZ{$IA;)&;V^G->2`Zc6%Nx6aDwXa8( za{(#DdbO$GHc&=O7!6$l*I*Rg@E{->|67m-NFJn&3l)ja3$ER*UD-Fd&30}v%Pkh( z!4i$Y|LpoTaM&ZCC4rpd$rkTukKxYaO@h+JC7WiO&AwH|I*J^UqcE>1gHDhsO%ff< z5Q2?B){wsNvGk+qe;d{5S=6Vx0)ZuMtKM#zY^=8Cm(qCT0+6Q6J&$?>pepb(23i1& z3^SWbCC|^ZT`#Qy;L<25*5rC|1vwI0S58i|Oqr!nF|FPTTGWi+`!78YbO<=tevbtG z@KzKsRLA!x0N|4B0!(?nWuxb9LWQ|}!FsNu1TM(o!Wnj^U`zT^Wj#){{OmGa_D0yH ze@@bulsq#tH3BK!eP6DKhQEDsS`a#a9U;sHtVgOK3j zwz!{VOM-4IPZUDwki(?(RF%;y(`ggPms-<#mPc&dv~?^hLB(~KUU7AAEn)%#0~}ES z2bU0NNeD}t2O?5os?hG57K(=qX9_w8Rw@mPElI5)!Dte*QQ~@5Dy4;kcUsVy)jBwm zo=8_(CTi`g2UAbbOfv%XqIlv1%$b!LIIkkMp}UCez1MP(VLw5kwX5q}fSX8@@VHYrkGqcP)uOqjzh zCkJ^>+6+W463KVsY3(dK*%B&^WRgWN2d zZNLY2LW%o$)%a`%GB01H-4at9t@lV^3kI>sskx?Pe#+tf7CuA(3dfSRh(VTgF|Zi* zP!FZpzV|)Vrzy10Haq_Oj30F|ndfk=tz=(7nc3oLE`Ok;TumzkD9t?KG)tBu4I@4E zK2yw<_=r4JYJR5q5@w}V=D7pM#}?2(A9^whz>>^Z&Szr8LL`98dWQMBoE9?5zAAHO zU6=LTRbESkH&zI=la{3dFVV=Xtu)t2g=_H3=6>qIuJEx*@#cPgyGMoovKqJKt-h$C zQV%lXj9g6#^Du{<08qg=r&;<#OVcV1f&v*(P?e$tjiN~}Z*NCKFNCBzK22m0kMrCd ztP%~1R3n)6P^79D3lqFqtK1R&pvxJ)*MxaPd+p-C_4(rK%?)hPC-JbM7RA8`$SylO z^e%p|t(M31MX22+0n{?eq@e4q>VnaH zc>`B-^-0nUxBcky!^)c*Ck)86ETi0*l{Eqxq0AMzrm?iYq~Q7ynL0hxFr^Yq+DU{d zxz!4pMM~b-UJY0`*T>M&jVet`X4=|m<+&_MLdlfH$I{56S1^QCqZNuV>ueY{WyS77 zn~mB(+upDvJhM~Z8x)9?$2C{)vX-uBOF7!l!)Sl2D-$P<_UqPVk*S~ z+3RSDm`QITnbA^~D*@O7i$Uu8{nV^gtP&z<83`B-@v%5gSl+3|%&quqrW{IQrda8y zJxl~yj$H)D|INY2Tx>ik*7{S3SsxT*q`!|oe9d0N)gyu4*xpnSa z9I;f9UYR~ZRrW&3T$oHFfceDO^8U`tk%@}|gKntw4#K|Ka}pzqKUtZU@d%s&xILhJ z?+6Y}NXjbNG22^ItX1D0fFnIolumm%IT_TNxjLvk@U^!)+x(3*Sz*wm3jfJqW&!=p zw*X*{S=cFov6~{(C1vemk${^OKcV=a?|{V-%E(nr3jsVq@6!^iF&(EObtdyM`CvR1 zi$=;sKr4V%4#=3^73ZF9mykt)U@1)MWcfs-%uv+@HR!iR1s`~U@?e2YNVHDOk>1z{jguzG? z)}h7G0nSX%+@d1@6cpu#67LcXTnhL@KqWZNlCUT;JV7n?K@hYQAH|As8=WyQn!_Yi zO|%LS<{W2W0ErbZFE0I1#NKA_xV3?)j`tT}FM@^8s{5}JOIj#TSYfAW>AOimm5sC{ zs9NoWk-EAFnRu*6)QMJC59j%r*sAf&5%ZWZbk$-xaF=Dv&DRy^8&(!clcO^!73YG) z!NSXWM|b}1IIWFc_|;8{6cJ-`)tQT_Q90t)DHvCLB{5$UxYSSD=Eq%FR@GhZx9a|{Mce@A@G^<23GWnrHI zGtcFewgmvVn6wbc8T>$RUFl2uaxlbp5Y%{rV}5#1?XB>jF9IUgnzuf!WV7%k&6*(& z0&p>L3dwLb;sFr&SZ|=&qn|#f$XL=4TySzn<{1%=41t1Wh!$o@rpai`tR1mqdZX8r z5Nnm_#ip=x-FB7k=d_$DNJ-?%3=<3HPbZ*E5szp1xhTE0ze11k!IcD72w+s$XO$FA zlXhDF3~WiSbuRb`T0UG5q^d=k{CfMG_d8&$MW z?X+{mE)k^(@qk+fYvDlK zkxEu^#^qfW^31W&CE-Y|B;|$_&q)K#SKAdO!NtICmjbYxU@!G!-&CLaZj)5}IMTr- z3D`ox*6%B`ZFU7Rt)gwk)LE%m$`ocx*$AK#$`j%6)x5@Wi@gJF%Sy9|>yZ~jDo^J# zGOFZAmU9FlQ<9VEi^c+&sfTs-=qP?RRx3+jJu`_@*N6s?L?EJ&Khe#bp;dFhY9y*o zt15kO?rUGX?Qw_gLBAN~Owg#1QgMdDCxO&XSRN$0R>T>x4i&ZsA`PiXAep z9mR|R(ClG!H49_s?radxlb73ZIDTMIbfC4m2oYf!fPhrR?NZE-l3$l|RyQNK z%8;lU2F8GypMVvyLMu?w)WT_>>;I=@=x_H+*Mmfa-=!{T(DgwvYCq| zb&x$%WtHF!6jp?);*%Wej)!dbkrY%N=J@dPmM<6fT`c_eogAlP97Ougb^kqmB2bjOI|@dtGYW!S*<6rpca_Ofb4Vf+LVyhUd(bM#ZYs$l z6FRjAFEtEs?@f}_IobfmVw_D1W#^-FZwieW%)o+Gebbqd04H`8b?w%5>7lB1|2Rk5cG$43Cr8OCw&aKO=0 z&J~oBIBKmgnJ3~zS>jA9)ocQ`#7)&4ZR$KAM_$-Oie1nJYl^O7|@p zHfAED4kqDXYWUi#U@DeUe-aTHbT~w_ceO+c9~Cg1uw*?ubsRtfdD>8^9}ocD(~3pZH)Fo*pzaU~x(!GJsfDDN_>lUW79; zlTe0>wiF_iQ8rknRT^dPFPAkV#3K&=?A>j@XeoAiO||*lGeyFDzIvr4tIXbZ#)GT3 zkCACE@}!cL1C?h5lpoOgd@j7BI((M^?Hy^NNLNbhL{#UZol4Ryk-opLDz>s;|66dF z#Sopwf5AJMP!*M#pn1I*grO^DaS){kqAe1JRGvW~JtbQprcxuoB!S8*jJ|?JCicuK zws;Y_H$3T0T(<(vx976q&fb|ZQ-q2?ZKS!!5 zn6SBiJx_((ov^Ir=0z>0WJJc?vO1sIY{YhoL{RzEyRheG-`}9P)6Q0Q@OWJpiYBvR zPBg)jW;j7os9;zM3}5DhwuU5-GV(;SVv@CpRFz1$d&}5pr9v?CSRQ0i^khPmrQ7H3 za$hpagfdr1f*ZXsLzg6lSwiNEW+oU}5LCL8j3MDz-3yxB307S@!!CMxF*3W~%C=1a z6&>{@Xd`X9Zr)`k^EG=YDv5#tw*{aZPMHZj3ZENEoXktn-z+z^llTK?(ZXo#712FwuZat=#$Tk`!#IC?sI95?K-T>;fGl2odSV z#jsY60t#r3sN~sQGb$k#oZeXo>6wMFZ&+R%FkKhK4D0I%CuK+r876t#F&GlBL`Ej)nNH5` z5hNk<)MrU$#%T`hz)ig4Iw_H|wQ>Sd9xJ6PSvm7nD+sgbY|xpM@DYH*VqH*zT%Cg= zpfYYyQbwjS2YsN=y`G4zfKHVg0xYz{J9J}m)e}EFmg)I0_eCZ-K?iMlSU~NR+#6B= zq(FS6maaoN2Qtp)?=4s4BQgL(0O_aY6lBlaXL5Bfk&)-x7lkc`rPao(3-Tr9*5Q0WvEsMc3>gZBhXPkTXjyuZs zrx^T;(8x2(%fWMt6rfA9aTs6%pDb5v;Pr@?xc*+Pm#TTDQxBJ{Z zK34tSIb-Aw02$9cM`p@(GwzHzposAn0ecVSK#72fkGzuj{0f`!>Eo{~*ljvp(jPAJ z#&TeJ{jD3e!4I%8NfXj&$W)#?A5*K-LW%WbF?Ld-xB6w7C!`NCH82x;tc+WtGo4?g z9rVI(-gh9Wy%W)c&)u*S7*TV;kZ{pJSM5!<&=y-xwmxEg1i%Ub+tMUll9fa|T%8)X zLnrog@(s}QO#$eh8hfECu`*9;6A+J7!bG_(u3AS#naOAw$Rr%LWO37wn=f646N|G(s5Xch{(>&v z!$X8SZ&_CRpUV#81$4VR!&B|XWPX}He|?5&>Fhk^##uNq=)3(PU00Ez5y?+YV%^0H zx1V_B!)|}t{%1qegI+v317$iRBbNu!ZA~bJmCBNam}}|QjaRPQUq-VIHNlWz6;!KI z!1b_N1y3vi93a!oq=ba^bJ~NM69%O#rE?DU*%jRP#4b>OdVVxgJeHX6FHSPX^;a5g zD$}2^qOU?!W^P(oHF$T{jVFUQ+c7s+dl@+_pFUO7HX9+C zv%2D04Z_g2gB7V|A9;cn;T`ZGm~aL@NKI9CGDDF`UxjnSBsc8FLl-Abm09IWP_nBU zWYS)ZgjnIHLQc!BR?&)E>lv!(wnPO%ceA8SYeCh-Np!ZBe;5K-HHcOQ16C6iXC;Bt zAm$kIosp&5qy(&}xKG8^IFhz^=(7*^@Nxtsq~MFuRy5_&ayK9L4_8uV8qY|pT<@Zk zk#4lgYgT@QiTEtT5@CEN`zR!`34+JhDU)W&+7Jo@xMw_EE#33;UV#X27vF>yk41*j zvh;W~gmy26f+S=iNbc_J$U$ZV5)?%PD7+&VAi=ZgF~gl_*g`H6GZ!g|5Bs}om^2fl z5;RCTbU_n4vg00L1jr($CItpDkVDV28l|C8IVF0NMETh zLMYdAEt~0|sOp7HUw>J^b$cj7RbmYB7AdSs=NPamNhLF}Txvy+6HR9lz_vlo%r8;O zv2xnQeBC{X`mU*|@UJkH#u{h4pGVM8rOnWyC&ejNT&$?qA!RmTR2m(bGu^uo0ZiOy z7it(k&u+v#`HaR7L+9y*dt}`X&M;8crD*j-`03G5h*%bf2829yh8}1qarKAqF;^tX6BxiF zNyyn?4J=nkbiwnKT)Ws;V~FEzO36oPWJKzQdtZ;QX{|queGWGpbx_i9|1G=FyGUT7e|^vGhIJ-}8Xn%LN0 z5(|R{Z1E&5V+JiRhN7q#Rw*!~O3Fq}>##Y`H!oUC#@WooKx?N|Z3huaoKqvhf^+KQ z`pD(sOa$Z^op?^USoIGZd8(ZB^^GLNM8wlgJTrB>0veR)HZ5|nDmOGq*~TH#j0A|=Z^?W{MNRmN>wYR~iv zkeFdzE&X5-_T8nB>xrii05VP)g^b%SyjS>FGAVf3U}{!v?KbU2kEeSB0-LD8{+wU9 zz40WQzpY9UHHPQnxja}__U_pqAImVp$&WJG=4W z#d)*^A;v42l5#y8fE3u2&uzJWUiv_90Ra!)dL!sIL=3hvp|j9T|9TvU-4nd!%YEWD zJ903mjZj8KD%;gCDUx_JH6IQ#B5ghAaar4L|6sX}6#3w#jJYmH;V#XhHdHh#HTm+y&tE7r$&;JZm30#eJbbNPa)1TyI0)17wH_B^k3cb*Z(Piz z*e_F;J-Y~FKiA=#sC3zt*>6n`g~`ALhzXAGp%~&ME>$%S>F@{XB#^m6>yRFrmAs&c zMt@RDRvqm*1Hp?eKchY*_PEmPuIUC=0I(gv+W+hjnk( zxU0v}S}cjJuF`fpm;@*qb;^W!5C#NvM$|ku;RMusbXEr$DvXt67(F$2zxTq&8(WpE zrOu2>WO8S1UiixY%Gew!1A(Y|uq>M#o zYycAogG;75&!7hGcgm-ta4cCN-JEr`-Pg$18dx_d?Fw1WcP~Y4#WA1ejuoh(0j25c zfX1u`O!K1F_9&|ESvjr8rEo9(0T~NodP!!q?dG~&{pr%_Yp~cLMD+D%$6I(oE zh}w|lrk7yC6q?AWl2tt+GifGkEh@8+fFiRFQ1CEDJM_78{5w~7j!TuX9Xx0zdYwAb zr)+Xm%}hEQjq=PD`ban|$dz<8uhUGxyTG>|^N)V#@elp8hts=!%;i^qc=@|Owtk13 ztX{wu14^)>E6mPUa@3H`-ZiO!Y`2|Uw{536j)Sm}IkfM~{z}4(h+3|}gjr^00w*zh zk>y0|vamnNGrY<*q;~PTJ1w)&>T;sDl+K&BW+t3FT3)9?-PItjo37fJ07i|SjzrAU zWF^zrS{ML6kSAt^9j#Q!K%$gob>D)PAqcWKkX>M3Od0L}M9Z zsnV;;sVxzXHQ>b(pP`IA?x(v_0X;0_rCWLPq3{brqPtxtm5)RkPG$xrGn6ZM?-E9= zl2V2)s9m_{JTvR46swH!y$;->hFJ;W5r*+jV@o^k7)fSUArs{Z9dNSj*n34(02mC) zMdy5Y=k;(a_)imL7=>cUS_6|fjbIpekN!(z3crxRHIx%)x*~DP2Pe#hWHQgo8i{R3 z-WxjmrT21XeI=g!K8mw_CSBx`Z+yKQ!!nWO;bY4LSZ?fwDf)DKKf1YMA4}3bfBds; z3u0Zi1MVqZBS$x}ym46l?-M?(SDvau&iPm(f>gOMGP8_MFDMOU3PA7-oj_UT;1t_| zb&oTU(6$zCdJA8$-JS#626y*$RwcFxQo7dU3Cp|TLWQj#XNB{Gj7@2DCbAZjCS-J$ zCpY`{Q@1ja$1i*C^R3&jdK54RjPa2|r5|>5m%@4msnY}KjR~d_Bs@vl0(0h>8Rg4f z&7f;8@R!kc{J3orXZbZN0&+T`q{8BiijbSrn3k2~M<|!~hV0t5)6*ym(+UN`fD258 zUB4)}dpQVdB2iozfY09NaOEyPtRH3;SfigW*hV`1I_eqhH{a*K3>-a>QrFq=aW;wM za_!wZeB)-Ub<8TGkzkb>=hA6*zJMoasXE4elH&q|T;6o)(NJMJ|WXYWpsxWNL;Y^vItmvjsHqr}JNok<2s9fZkpt%d`Xh#VGX3@wV z)qxl=iFasjBcv7S`I;ge}Y{S(IEV7hq9g2)Pd1@X;TH`fSm@YByQmH^Si0E z3BJ6r-x_+LIId{>%PCtqW#A@b((EI~QtjLl+zZ>>`-!zbTz+L9Gw@8GaN)>UJ-k*Rl|M64yi$9F1t+1in1ArsuM!08jZja;so3z87H^;B5 z0&II~(pJI%3k7*1pge<_fCSG{r0?fmRMc^{ia?%f=iJ3G_E$Wvv$Edz2Mc?AYdUW; z+R-Vs<8#*bfA?bIJ(5gB z%2*m=9rUV5eoJ+!iOjwA^O9v&gJ4RT6CHBAN6D#pyGdPrRYRtAZn~7AbD02uR;8so za@L-?Y?!Jg)-m5bD66LIDj9jg)E4KeJlUvHN-%H1>a)cc!{t71b}a>?c|1YxFAgff`4QiM}E>|@N-(eK9e zGrG?eFAF-MqvWkh( z1T*E%y=RWM#?%rb+jcYV>j&2cO5U$tb$by5sQ}Xuh*f|ei#@7~=mO0CnYm+VwwTpd zc`G}ssh(?2dPSQ7Rx`1F{>^MbeOmd9R`_MVY! z`}L>VE!TS6UT=X)Y76H}CqY-+E<_qw^cYppHdU#6(N#w4k+tNMNs0B`&NIL&ol^?} z2~2iPvRN~qavs*xxraeF4u0{CMi>iosK{0-Rt)Em5aN-Nvoe;r&{v31XCS_5|8X|*qQe>b4&vFKg! zlkQktcW|`p_Cil~PdqyGY8vmybKE+%AcHZ-#{1HJK&9I369${#u|M(VFHb12H*D4V zU@c>76l~2rc`UYMqbB=_t*5EbU+w%H8GXrkgwg1PQ-KU=WjOqy%QbSLr3FEheF#g` zzTQHsdliDVyS_-@_R-%4Uu42s=Lf(Sti6SjQjbzlOHpc69HeGny1=4EQvkmQe{U#y zM`fSg3O6#g7sMvjm``%{vlgw+rG7i&pwKF#=RNP=8NeIz@tp3G!sIFa#@ zC{I>oDpy*GcPuDxq>S`5@m#p1wZpiU7&~}&cxbFqGL$#d$=^>6KQM(CG;9Y^q8%P# zxjdUr&rm+($e6q^1tloGA0-#kD-@9VNE54UY;E3%L_5O718_!X--dK1PdjlTYe|Y- z5w({rs)u8WO;tEWt%t2J1nV{b@`T5wJA3`pYAVAi5+~cPk^qVKU?-gms3MFBW%B?N z=BCQ8yV`&TMEOLvL0>5w7CSncd!=c_Q!qPC8X-C(k+xFONc z(s;Kz$lZ4D+07fNW6ZYkcVB*}dyGjdjFBx zxMS?wVTh+#AI@h}TC65L43!RRkRt|VqK&qv$J)`g{DN&s7NkFqg`V;pFPqdEoI7+{Yd6t z{PmB2@t4j&_H8{RW)zqMsecIl(SP=}-~Ng9JGJLovxCF?b)`nffbOIqFYfKKRKmj@ zXYb(Y)$rDRDc8cPsz+7KK~fH)n^<&cLh+!(B`#h-qA2If3PAA=z_69Mn|Rx7l+2fa zra}eB0RwX6d{+o~ow+Q4&5+-})SBmMD>}nz=)gF827&~ey25h1t#vQ}R19XjrOsaN zCCjWtHL(tfT23vUaZLF(q=ay*{GfSja}XxvM968NMP)z_{iYkO3O1HqV1~?qmU6ZS zkmQYR)l}yqB#my2mIij!21${|=C|%H;XzBqsiXd7%@1W5^iIGrF+dirzT1=(}4AXhbe#U2XwlY)5_An5EV`V=d#bfoo54!%c*X zy(@9fXCq)H;mlTNsG!sK`q(J{Q_~MjVSa;O2dNeSQMEsGL*~dR9V%vnfP(J+AS#~>FUdF zmqyZl4Y~ZUI+pdUS&_^Ta;1V1EeAE3VLxwu(R@md`@y@s)$kSz}V1saUUd))oa!PA5`6Pgow*1Dd845vJAREPnu9FqV>3o+0>Cj9b2HRe8y*z0(dZ z1~~|2kSUleG6iT%VwRa(4#S_Sc@1-yBgx%1(r&7%z#BtzphwT?5s-1@ri) z`3f25PJN*l(l5v1B)0XZhb57a8wp#_906wlja-7_VniAQA;S>GJS{8v=J?#3f-hhA z?w?>j*$usCFNq*T2{i)?`z!ao>)ePe;|V3fG2Wz|gHV&X2XDK?+geGE0stIH5gDgJ zhR5zDYLj=q*_;blb!^^$<*}HsZ2+AwFjo7TNma>xt>707L@>@1`Px5-xn$Lz4R9FF zgfyo5xPF`QbN)9>X~G56GES@V5OF*YTW67|hXeshtYD6U=hg2nO<@Y;BlK9G3t+3p z_t9nr+x2fX8l-P8|9H&+(6UrpL5s8Xkg5t#?M>(zXn|Rfru4y9v3@}9A1x((M?R1; zeh={IwQe01!fW0-xsWHZ!jkD+)fM@s?g9IKXF)Wzu!LDUK|Q$x%+aG|G?=B{QZM6N z0*tgK-FfXw^~5#ZzU@gGC3j_>fUkiL%HWmnGNwiaCPk*p>7Gf+Xzx1BLN;nO%&B02 z==qX&t-Hb?ys9Y8lT6#SLQiU! zT#xa)(F`f9P5!&FAeXj}13{+MUI7lK-C>8>Hl!VH3{0t$>&3nf=uB~1fXXzI%jn^4 zJz36J!Pt{4Sj5d1dTM8xbWV(g_1XBw{(wDC`Kd47^s?(A7XPtLf%X8~W-*^H?K6U-T`l6VzWE8b!Z)z94m%g;+{d)St%{V`rdiKQE z#tm#`!)ilfLKf?infSBc`QAVGi?CbgKU~W`{>bm)zw(_Q`oI7A@BL>5M+smAKr`py zT#GoJ&&t3^d~WVitdcSv56dvu)bLhBZ8npq2Bp?BwAf;!qOOU#l*rzGk}F-v%;og3 z#owx}=Tk+NhVBF;DooPJW)@X_%hxkvolk}!{O5l6{PVw%{zNK00N{l6FZ`N*`CBvn zhinOl@yVgXW6uNOozMOXvo2>uTADHWYBo;1PwPl<#i)(;wzk*cWGT9*iD323Q}zecfy_>09O<(w@%PG#WsMnC6_nXOTe+jf-dvMje}Q4g91MeaL1 ze^v>JX{j?<1;1{w1O9W^MxtN+_JzFIPujLX^6%p|+>Eb)NB3pWV{f)kJK$gRY-Pi3 zzrT$Hy<0{;?Tq5|WpgcR58t53`f1v>=U&|7EuQWkWVtb(LKn*(B5%klKOL(V!A?mV0^nMa#UV7&0h76; z<{ry7T4H-%i#M3XPlxsO9M3IkU;x@w7zQfCFXH!jZe-X$*3ZBWhyqwsb zGn#t{3&-i*umb|Bm*@f(*;ZBNa?=$ zU@kwDz>#3IztgTW4Zyz!CjfvQ z$n`o?ARcL;DK&leQJip$ZRcT^+<%HIAn8mQXso4qd!gnOl5hqf$dsy3oD6{BoJfZs zYvJY98GxNe+emfSV)PMzUoqf9s`U$QOszm&Ccep?P zvP*W+js2f4))`4x@W-*;=dElr=H8YwO%q*??@O2VO_AV*bCmPx-rl8-P|g$ArBGbQ z{o8o4oZWR`USnDqpd#B!J_Lrgj8TahpqaZc)UQ5CYYgjZLd))UzYJrDv6_B#jlb~A z&!f-PNW8~){_5ZTVg7~h{C|gTco?vdf}Kf98Dgwn>*lauD>cBBo``UmM^!C3#}d)< z#Q?Ty2J{R7$%s5O?VdRKkfHB)-5=jAk){#?(lJnfFzmXZvuXDuh7C8RTBnTh-W zmY-PTU;c&1Z~ZRrQq&K_^5G|b^Zg(BiSsW#0Hv&o?focy8+2y+K6QP}#@cCK^aPHV zy$OpOuolS?o%fMRf6fjYiAcN9+>_VsA9N*ygX3y**TlV-S4)Qto-Ic5E;;gIF1z7i zT=F;yVWe*5o|v%|a*tcfrW4Y+?AvXQ0s@yd&?d@3;ieiC#=EvfR!V4$4kYQx2pVI0*wub?cca;!V}HEUc+s@T(TwR= zdVMsFbe74N@sU=xbXQGI*@AlQ2)^!q?<%+LV!{A+;KdF59>7a*x68?J zp|khG#<}$auYSIF2UA<9u=25+vhHMDy7?ZPRp|KoDbY!~gSXs_7N zZ}(86Z^_~}m73hOYnhA{99;Ht3}2m-y=xO%{Q~EB(`7q_xtxQ+)VP~&wX=;;(XTgO zd7N#}(dkNDx1WyeA_@D(As6OkF$_jQ1vSnWU?s>7E3V`iK5^T&o7X@(7l_u;+MIDL z1&1fn_cHDC9eCIBQ}ZFoTHl$tsrYr#6E>aYc&N5ok&>*))@7*gi3NkqRK~ng;0io$ zr^&s`kfW~ON9rV@1_O|EM%m)DuuS*6Tj3&r|b^q*uS_aNpBumTb z+|~307eLZlg0~pk(;zO-bomsjEMtz>?TYz2b-{p}L6M8_?Zuz2Ki@uV6`J8n-#d~? zB=Tt^YELkND#g+Zsi>k73$*jd~ zH#-Xgs!M0MS-isjJS^*X;dlVoOqOS_5i8b&|E1s5`)5lW9NRm6`>*{+59dF*{?qpj zuBET%vp<+#{ z)*3+*@G{NN>%W_-*2lomIo`DvvOwkGNmiQbhdh|-#=Z!Ewne~%yhg0%GUAd-HJT$2 zWx%+Hkl^Ic?v|Hgux`um;g*^i5!67EQ>6D`ajw%KOZzI!tk|rh;9K?NYTTHeiD^{` zA_2gxc*tWAc5i`(0*0t`SO7KoaZoPWU!jJ0V5CYPI>Lz~Yq-#SCE-2uYmoLQyqFRh zn5st-TL@*RHgy<9RpPGz>?=fXQR1=>Tg0i*?WC1L_}wtc{!Wh{*cg_1L_$^~T(!d# z9B-!?7|^VYdYt5k1)P+yntSSiuoKJ3*YV6WE76SSnrz?kEuL6J#Ki6~O(y}hl9+?x z5GG&Jyzj^=wDXc(>}`nHOU{W`gYqwLUm?c&I%o1Q4euMfKaloS_2cCu zwtt8}_)$7I4bMcIU;4hh+ya00Jhwi5W{-aEoVV#_Uu`>F_f6f{tgma2pr8c9CONyY zmRR}+RVFPEB^xj>@YJg;?&o@Vv%PNBHQpX8jY~8JJ*ZXSQh<&S4NOPrOnK%?1b40( z+StD^S)YP{uRHiG1}%)lB#rn75Lj^a=p{`f$};2yz%SB0RwCuT$Wzh zY@9Ez58iz+U%H#riv1n2Z#i~nvA88cXbd$r7ZsR7S$&tt)6o~;C&NKOr5SIRAxaH8@jpLJm zl_@leT9tgHL4s9zp7NyXE=m-tyQdM$s8cy1Rbp%3bdhWlk0t;yj>oQ_34m48VzAx@ z`n;dy{d3LOO-JGS*2bv^?H~FTd^+E8UL14yRR&f8&nmgOLACdM0SYYzuJiNH z=7<~bPxiE@T=#g70ey$+b-elJCKSoAquqyF+Q0L(!w&cSeQ_)cLV4!br$zb9oYEiIpi4&(2>sx6^*MW;3bFCq@uY6f z(j+}IytCA+)I9t>@z;Lo{LlURK1TYYCh?~}j`~0eU{H3mr1NU!R?7+2)>$b=3FLiM zbsPU)1gO*OLLFkxs1Aad1&|I8l8nK8ym<++Xt_+YD)w$yr`-*mt^G}dQp!t}_Sra$ zkgMUkKl4)r%`&x*;%HhA!xic#3RdN^w`+}ev{EkC(vYgZ7$e~0^^D_mDp+4Os!p3{ z2KQ^xW=GaG$+ZF=#!3XkkYzZ6rya{x3$IsrJ0a0pj%v^WR3cL}pJ!OjmJAGGrrlXJ ztT&Fj3X)VZ*%~2q&4c%#fFvLy?c^z?@`TE0+sS}lJhMUYYW*yzY6uo&oZ}KX#;R6Y zNf*BD&ay0wWBZDf8&j2}u9FV6sgG4m{)X|i{VXNn$1`wt^%5h#Fm189D@XXg`7gHj zC`Lhsd!u*kLQi9whhkBJ=7m;_M`k7KXr4FTpo`aM|LX{oxK#NL@z|P z8a%K?Wom9<6xk!?%St-fDaQwb*s~t&mjOe+yxm!9?sZ$Y7pyPdzUW?mvs<46$oK=) zo*zRFi0{j9x8Z{utzOBolkPY1FW!j*)bZvs-2DC*EB&{DL4_Py_w%cQqF->GQ3B`k z<7+PP#R187`(?8t)Lsr{zmJrbDjJ0`R}bc_PU63Jt8NGYmk~g$3=XHK+wrd)__C-j|Z)iKz+YxJw6!<-R zuS6Y-_p@96Cg3)H*exiVpVfnTNG(I_z0{A*Be_ju+)uEpNYCAa$C>xnyd>vcW6;O1 zUvMnumSp49gLrjZM|H~}+|I0qJ9El#Z2q8;D2Y!D?MIqA$wiZ!xIyhKH>Jy(Y@c^_ za&s@L)=t;60h3VW%Xa0r>Q|q+oghNeS~$DY)((9YJ9vT*&6hWqx1RG|c!5J+yy^YD z$jsv}COw@fM6Ql)AM|QS%f~b`CzxR28_7Q_itRf{zNk))yg`Wj_Lsr z*oLvOn!3$-?|HE+W#OoOtwdwc2e-60luPs(X7%#k9kSYV=FfZEWc%8VS~ro;!vQa9 z&ts(XCo@FkZ2+32P5Fym+uZD(1zQd zEjg6PYf>s2wY+ij+z!UXi#zNyp}p!!khGcok306a6-0W(pnKMq##Rob=Hh*BK}j7X z$)1Iw_b>UAP5UeE`g_;4V5aAv|8<<+YDK)0{@O3w|Nc+p$L^<8pmWI$S4B0Oi8dW@ zW1^&agd`>Z+#wr=@;`S zzVnt@4lNJ1GR;X)vV}Oan7p+NO+k{{OVYf=^`CBc7jg59(9}KH`aweyw$_R*1kLS) zSS#Fj>r|HJyKhLT=QGK4ZAf` zB+A?o?~>U9{QK3G3CMS)#Ywp-F3q@YF4YJ~km#1s5|QP9aTh$VOZWnqkWkgT^UN6I zwquZW4NaF1l?OA(0@-2Yi*1Rf${#HntS^X6!Fj3ry^UB_f>2paAefnz!qrQBzm>

      +ZqosNEF?@AH>lH)mX9ZVw5(6 z8_}86!|uO^RQ9WZlEo z2(Ic&6E4d93SY1keLG*U1spH5oTQZ*qb4}}DN6|?Eqq}`Tfo&%tJa4O0Boji8EUzl zU=C&dO@QXyeja`9TmACU=P!nreF^PT_U8#_`#;wh^y|j(I7<6pz6{v&_LScB;lkv; za3JT`H^}_WwAlT|^x7}J?TYgR_x_-gkDvF{Y`aTO|iz+|<)=Z3m$4_3+$?JBL zba|r@C|VFZ-M%kV@C)5g20hkPP+m{-t<+nh_ z0aRU?=onVejjCv9P*vLwU~FCE&a~J%aCO@5+>yy~d?-(}{Sil7;y^ln_B>Aqhq5vU zE-pQRVC-k??e{cBXH9daQ;OVkZ>P`It8vw9Niz<^Ugjy8RP}LXZP1$-Ak1JJVI|F7 zCA_PRbu|2oFeNRmK4%qK&1OFJ=xNpmC*cgdc=2buz9JEgv**zl1^~0^Iu&#lCdYUf z$3;M7Y~*f}qMTP#Rs7q}92<$MrO;){A@7gQ>dqbzrgN}7uc$EhEdTlFy?95kBuHoO z8RAJ|@79?s^Kg~+vzYDHAt{%FMlz+_K))(@$`Q}7Ghs;Hi|znv7zxoebbVVlwjq)n zLsbCS9)P`w<(O?S@ev`s-iC5MI|<`W%_FB_4tSc`%O~57Tj2ENFM3i`(G52Sle9Yw zXr`If;yB*e9p>AGpms4jat5?7X^&J5eSh#uTGQ@HVA8}2*Cu%(K|Ij?oh;_oXJeBM z2ZCUtJTnhPrMj!SfL)rNjD2=tuiEDI*YRFmHyhjSVCrHKe(d9q{>V24{_gL52fzMx ztk+*lpmgKXbh$l$f>zM;9Hj9??7opLQIP%AhYx@FH}GajDf010{u%%JKjy#tCjiXb zRB}YuF|tt-@Pt64)THrx-ERo+%~!D~7O7;*+v@@nJpLubn^|W-vP*B3cV9;BM~1a~HHM=yy!0VbltA zn2Qu-$t2yEMX3%d_QBJ(2w(Ok3uGSP1rNGfnweRLj?0!cPcW5!FpVn1$HJVT-e3co zQ3{#uzFW(*0J!DI!yx>fxxozQR2GMKBvny>%r$E(kD&{~THEW;!o1^<7^{$Z3d)$3 z^lUo`hZ>1dk{hY0l@{2oApYE6;i-77XLfJO@Gi^UoOIbqo? z_8_SqfyTC11+6@DwV~`}v`4lHyK}G% zwkd@6`ZlU>L)%R31D2h9#Q9_|Dj!^UTWH&{o^2mfwsJ9J`m}m^9;Z(#o^am9}$ML590#GS~G9@3i*H%vVou#gghgl$1l} zX`W@BO9IV2Oc85>eyDlESWdYtXvl@ielr$mynyrIo45R=;N7QcvkJ}aKHO^e*QDF~ z%gfr^!L_^4!^{i%ec1Nf_twKN7;O0B0Ob#IymtHGE2q6`34ZC}7oKRZc>R|bTy-hSNi7z$=T2#*2x$Bjk1%4c7b z7rh8ywia(WgcqpsH4s)kDY#|pmBwgXjmgUavRmyLk}Lp};@=w-7w)*UnoqXeOr||& z*xuauI8Xyzyc?GX90hGU>zvWpNMayy@3T+%`N-*1|oM)SU-wsv-@S<#yM>p-83r&*hU@}(+s@WRkS#3_z{pQ8 zte1z3$?8| z^tm6g<%kU!CG#Xb){B>7yhUDEyd|O#$kYrTRO?YSii2BSpOb{e@HqAl8tf$aF?7vh zzY5ci^9+O?*nDv9AuP?u*TJoF*)9O<3lpxN$Ti>Va*4QCJ7?g=(@5E`U}o5NyFR%K zW6=Z&SqNR!{4pyi@Wv`uNb#r=WdmYh$#hPZ+#4Fn(&U{(Ht5MY2UHafA<;rcguDy5 zwIMV(apN^^oX8A=cP1uTioGQh|BnP)HAY-&sckWH*%(E+ePEmw?fs!nmJ^d8+n$b+Zh(LZ6pbpr_*AcXf=c|!o8jg zGC9tli&H6S!j8T7(qz7J3cN({3w6r!d^zjUW7vCIugTvE%xKVc9tPY^+(7Aq=fKUudRj0*>3!u1lAw#C~|e zl+1iR8Dq5!W!8#jzU1Pqb8;awa&uUQB=>gLLij=$GfYtyoy_2t=E;t-r07Tou$;~` zFw?Vdf~WzsZ7|fY7n+IZ|B~n=YZ@3nF;XqAX&Eq2K~w;gPZ8{lb5Qdt50q> zwcv#B`Zgeduez04_QHcNNq-yOx0~2wvpK-fy(Mv6?Y{BZQpL9$Z}#=xdwp;6ya1Sf z!Z5yj@G!!Q{WG1S?4Fp0N>hEO4u%ma?uK-1j>_jZk=-SpXtVy_-gwL28OJd@I#XLq zFE{vQStQD7Q9L=LuAkS@z_>(+Y!Iy{dGT;}SBjq;{jrA9`dv=SF1V{qq%?|YZ+ZM_m~baF|0RYBupjVQ`lv5D{Dr;L-px?Wr73eB|!*m7JgafIg%4Z(m}dq<~}3e3})sG5*bqS!;&-_kaYz$&raG3Qe*B+2zj~i zl&lAa2o+hiAh5%!wtnnohb0M74{F{ZfWqzpq2^D^piJs*RWI9*ZA0E0`aJ*i8sm#5 zWC=@dy!d(kncmHhJpA&+*>Z~UKs?)(1)rw1&4K8M9>smVfhq=1CA^+z~#et3VT zVSQZI;NC_YwI*^rN|WN@{h8GHHPWvQO+%9f1BeysysK6q{YRNBRntzf&J5!aOZ(3LG55H(YmK{VQ(#WS4w7^W6Z5m(IsqJ^5Zws3y4`fgx?;(e(ib*muNY zHtB$u8R{EO_cFKS)~wh9Y&VW?gSLO}!*Y5rO>*K8viQ>5)otFN=NCslH=c8c-NPea z6xR8&A}CwOF36HE{`%FZO-Hv_y*GwyZ+qW3;UG`k`um<)iQ}_)*}O$wT=}NG{X7o- zV*j`8+j{|nr*5{|&77eZg=4Axes}Ef9YWIm^IsbhuSNha+QE;$cg)?t=3E0ger?6o z0&7^st8;IQUaac-5YZEzd>YQ)L*8lwHYeOURnj$BsJCWs#~@i?C+h`CBvm!l_Z18G zojDeUy=0@_Tz{B*eNG{+NBB73_N1<@+j}Q{LNGhaHenohjh!UIMvj{{?bQRyJ1F_l z0lD=;4Yvz(w1*?C?F=TMifixO(hU~lwt`*SiWkod!&xlDc&$H3E4kFD4C}dpi>Xt5 z(d*HN!<_=W#Ymm~9KRQ!-)G*PVlPW5K^ulfUaoIRpfmCbAci8hNGGNWLK4ml7rVwS4)ybi{AA@N)Wf{LmwY<8#_J`6Bz9E+?>bRa))SRtAme<& zwm{#U$2nI8@=|7bAb=z~pwv^)n%E`hk@-wgRb+E_7d1ygod5D~+Mj;>xBrd**?;%1 z{&(Il@Bh(n{G#l3WT^I~3C!1n2rEZ+(O}n=ou}cIrT^Ox0{d5~W3CJp&{$u-_p((1Un^!!quG5{AMVBwYmjcZ%gg*>-VOhP9~v{14(ueR>XieipMpz;KVNiC6Hn&v}7 zs)E=zN;wNbYX=Ab#LTjGeb!E>RKrxtC_aFQtXoP#P~6ba{3PvF(fj?@@b*jY-K3j; z`a!n4h)HcYGFAl)BRWUrJ@OHm&G+c(vr*^1aEJ2KoaYDDZri1~oP~ z%LV49P?THS31C&hSR-Vl;kaNwv6-yLSaLVIKR5Q*5PR#q~ZS)qPDUR^=z$`A7_v|@v?EfW6qk%aIjNRyJejV)_5~w&! z{jB|i+XVwal71c%qnCrbzrmW4#(sg4U`-I_5FtoFExl*;L=#@z7Yu>Z{U!EJ2mals8jCObNyybPgZBe)#vl5jbzCR&g7Pmc?US^!-H$LL8{2KqCe;AE!6m4gF)3*G?l1T93>{w6^acrzP?E*C?6*kI` zny(qBeG=ymIcmt#2Vi9$v2qu2-R6~Gw1?$qzy0A~{!d`Hz-0*pzxV##Z~esjaXp>< z<2SyYKk?nChJcLU^yT(&9qgg0bn(>Lo@%#DlOfJqTDO{jC>?YWNthfs$I7~W#R(bE z*)LwY8M^F>8COfhwQVE=m{Bj(cp8`yO9G>W19oK0v1b^!U9(VNlCv6s1c_5Cqm-8` zFd=jJXXoXFB=CKwD^r571Wu(31tv_{6z5YgeG7e~RCoJ{a4j={TgJ)3Tvl>az6PoN zeg@2tI{;)>khY*k8FfY9xM<0KY6LP1osSdTg3By3kuW%XY4GH{90GIQ!t`a3kyXMuE5Ml$j8H17ko748B;i380l8N>NuY?3l%hoC zLJ6j+`E`^wE;0)wW}GssbVr)`{-CLWJ|1_fnGVM}FsRcb(=#Q@u$h+FFJ^0ccc@0N z(k8DvwBOKCvUPa=u=7zPGkFU*-;wbZ;KsR>;Vm(|iq2zp5qR@(0jt z1sIYH6$^SuF_?@;NSm7Ju}2lF1CoO@v3EpYVrje;Grb>FC1V(BovUO^x|epUVjZ=< zJE-?U(EN+F0}$}s92p1OFZAS zx%Shsw~Kl5f_8f*?9*XyU!8};?soDq+jwf$SP)&Z;Fy0*Lw_L)*U0HOCG1y{B{Q-jKH)b32>N1Z3Gyr6YW6B{+Ok6t4-! zmQxJ~FbN7*^B*~s1CHlvf3qfG2ljkkrRFdIZDq7ZUM~QI>ZZ0`vdJzTXmMo&=w<06YgVU^V=N)Ce51v!SCPS0sz1rmn*nq&A zx<~?S8FG>s{@CaPreN9fqR1=#Txk|I&YJf16)>_}YK-Fa0ecQnZ?&DV@dKqhF&m;tJXpa0zt zKmVWX;HP=}iSNIE_$Plv|MZ=H`$yNu_u$7zoPGHj|JVM1=Rf*ucZVYLhd%t+$KArZ zTOmIcY;iYAHZqthHtH=u)-T8jfD{bRV1^0rw4RC?w=Czu@|`MU9Y%gut#R%mnYF^4 zGHW?bbJ4TexMe#^1-@rg^&N|qfRjk8m;^|HK`ixl7xy!A$)M83B;fAuD_CIP$?}wV zpvm~ni0`K?!xLuw3>k(;@Z*ATP?-W8UNBrrl4p2sHWtR<*TNNZ;zz3jceFY86tmVc~(3QWl<)laH{1Gi+hg6osXoI%;equGD1}`KOWYZU=|s2cQC~^BWtID@-`l^A^Z#uu8ih=T7x~el=?> z^17dD51|D*=4q#f^=8K3Qt_U6E}KAheZ+paE;xLbq}pSLFK+5kn?xAt|Ha7JOD+`b zSoWtb%+yg?=XQJDE5GmX{$9rCo=5=RQ#!hD#}OF6N=O3|UH+$;8CqyGKBOmYC1N}V zB>_=#<*2Hs1^h^w8R$82tqtHxW-=yn1oVhiYY&BtATs;etacw6KW?15H)9&mhOCf#ivY6Y^#q!HU zLn^hTGbLCh?|(HsXzjXzIk=;n@>%~1m~c5I?sR5z)bGN;Y$i-hY2F>1#Fv7_pnz%H z`9kXGL~(rUT1d!@9GWpTp3xl!0Q}r{;Q9XH{rl7Vi<|rAXFq)7mY3kqe^>v99|oPL zuqC-9V2A`WyGA0dx1y7{3>uE}5I)`3>$fv3cKX`uXCK$)d;?3BmS6c%`#V3m{_5#- zi+3lUe(YoZi{JkIkN?(7FzE07`Cs_jFa9a}K4n2mf~5;w;P-%Jp{j-r z_9aJkGBSKgGaG4}W*!++DyYGl0hxvQ)Mf=B^H9cIAV`O353&CBfBg9$|7VvDp@igT z|LH&f_;-FhzvsaB0dfgR!~-PzfBiB3XU6B%#f)n<4qK^^nFVmLn|qc@8T_n@A7(y~%=~=u zb7oRm6G`IeMn{W5C|&8Y)lXHW(JOqMQM6DSLD!mZmI3nu@(xtWsd3+_QUy34C_I4J)_ z2n2_v`5Mu^tu4NcSaa>}QH?u)D40=?6wHivo+udo z6h>P5B4nsz*CJ8UI_{vIK`3hz57K-=MuDnZii{b|E0(aC9lk&r5mch$nxud*ufm%e zfCvDZ*K4&e+sF||vHG>jn9yhsCQ5WJC%_)hT=N~pMnA`-mjZoK+mMNKE4p^DIx$S6Er5E zWnE#C*SbO}h5YCw=<(nXXS_V_dpP+akZ_mw{zfYFYvW{BSJ?ndZa-8QU>FRYRQrm) z?eW|_Ap4q5c2`+c$I-4P{{@MA_iH~Xqn-M0b{KT^?9jt!81>J++Q+%^?29l#!2L%X ze6~4;l6LA|T@%Q`=8*2Qy{C@KuD$T7J=NQCE65^cP6)_=i~)4++r{%O^gK}>E+)PN zK!$P#GdMgdcN25hf`_G}pTf z0C!1DD=phyBv@h$HR=J>nuJ7>TX3SjlHmnyk9)UfOj{;45pR+yDwXrd#>;Ad0X~Z!Yu_G@kOI#QhycO+il7eXbx_$K%-TIC_MG%5$ zcfQl+b8HRhCYjuuo`C0-KBdfP-duf<(5}AO z2v8K+Ee#|IcCCjZMHQ4V-qKyLuDSq15XUq;?hXBGb}*z6X%v@epqc(Po`2>$aQ^!5 z{Mvu;PyhCR`A`4r`#boX|DV5kV=*MxpZSh|{V~65$OO;kkj}J+4zlEmjW4G0&-LCq zZ({~lwiQBGhwj?dXbVEV{|WzKdHE&j;ltPMZ~YV!52u8f3jOwi|I3fR`?Jf(f9cn6 zUtxE*ddSDW@@uER^+$}76R=ex619LqlEG#QgR%sVlD^27j|Bu$CV>nvNL9RRKvW{Q zoYssbVm@w>Fw?S7Y{7vNuy5kwKF#p!T>iCRJO9+TFJ(6}Prvq)_}f4I_#2-ANUY>L zAQUy!5>|aTe(1YD@q6!n<+dL5M?e4Od&?9349Z#v;gk5{*XI}!nEp5ETujPPLOO#c zI_w<@=!`hKTt+)VSd;;+?tp^Jh}NJIURoTcFxguj>0obNTtbBHlDIh%$_zrv04%Pt zqcPT^!y6F0w-o>*LHa~K0Y+Me&Fx2gAYHHkC3n7~L$;D9hRz>ofy~d1Tuk6+XNL0~ zf|0>x9hndUsB}d;^TzBhF*87rvG@{Tr$}UYW`D6d(;QGUWd=*_Y^-uHL8PGoA4f54 z)d_0jUiNohLKG$tW@uS$e*Rz!Nya&##5+|zS{hEDS)75@NWp5QbQ;}-Kz8s(ZTzKq zr4+R4@c?rRWVgYR=w>c61JL5Xz5R=<;x4`20!6h>(q+-0c_kn97E^gu(HhDoH~7L; zlG4)wQehwssz@?HUur{kKEfqalrn{hqiiuqrKUz6O{@ejQ7KWh0-&>vpJ7S#6f}8% zmQoQ7I811c=w?qsUkVJaz(9{sNf>l?Oqq-FIQz1k#WmK1fBpOj;FOdtRFnix!Oh6< zv~Yi{PDI*zwhXfpdE(dw#7sZ8sCP|1Wi0F2+G=EUW*h~1B(W~QR^#--Y2?tzyYRzF zDlNle^)BZPpx)gCfLI-XDnY?Yy0yHc9xzdsXDT4QNC^0XbN2%H<0YW;@qRxQxO}+< z|Nd$BeZ^*kB@H%N8^cT}s1s==WvGqG{spc(odKX$(oZv1Un!P%kKK0k1a8l({g~YM z9PT;QV<{VhRs;weLZlL8^=`V%JB+FoRRd>gmo>fU>Hc5;`3t@&bMLFWI}%GbJ7wxm zF}se#zN=5#u%E7d64>#^XzuT%NI;i$@2*aAzbM}yh&JIl02eRC6ZiER4Eo}at6;!Ftal#AOUU&vSxLsYY9Ealj@_;E*_Oo6LK%Z$Gu3NTl@=N% zy>o}S7M?CK)~*{hW=>KrnUEnZZTbp8Vu=YoT?ALu+#>KP2;o39B??kWaR->}?oC!+ z%wilvR~V3UvONn}y(mtblzC?3+Wn!rTvK6iUaqfE2x7_1H5-}Pw*VnWmfzRi%jB$- z)DSbPPKhH8R^{4z!e{j3Ad6nL&F4&6iv}j^r5K8fyLV?>$}(8BnkqIi{+k1~L5Pxt z;K&Y?NSXC=_p=)>w*e-F(&*edSyM1%vPiwH^j5mPM4$fvwK7j7ZAAz(b9=x|5!c}h zTWcSEOC$Pp1F@kk-9?NT%f(fwLWkA(l?HY0rG37U2B_@^4nw$@@q0$|IA(6H9k=8B zc``S{e?lMm5u`Hz&Hwek`8WRif8$U6OQqP#LcOKCJGWp6Cs0GJaYdi}Gx7#S9r>hFpkb?h*?{>p<#v9hy{Y!%pl@T2ds zeE9iadWHv0p1<|Gr+?v__=n$c3ck8Zq1EeUG+)hS9<+{k5fIhY)8LQi)-@stOM>QE zoOHk|l1ajs)rup&^IV3Q)(9X^Ez(&A?hk)F|MmZD{h?#YLCMa`XMgu!`0)3BWa1oz z??d50^_HKXKio#2Q$O@OKlS%^;i2%;b z0*#!u)XXnrusT&`I4k}!0-=Gc8FSsWaY)%5MAa?q^o1dM)e&z~3f>4`hK+i0iKE3; z-;FHUoLYz|)vr=tqJ(Z&Cm>U%omZYen7@m4(HXMnT5oAExh~@wVu&v_*nc$(dVhe zO$%jhD;0fAy4B~UkFl>IDHJ27pChr(8y<@-$KcFS$#GrtLQ0jA45u<(3-GLEJt9v= zc_0}f>I6i`-S|%UNNuNI&vI*rDiadT(AusEv^gg zDJ0E}42c(8`Td>UBt+j4C9{#=mu1fB6zQ@6D@aTr;fuvtIE&5{*T+Wj$$RU^p#xt+ zwYo20x_lwz%kF;tE5%P|D+O^_g;soO)i*w`pw0%umOlJ-!!}=#doc7>cRo?O4{TlV z$lloQ1I>r~+HK9R9Jo8SlQa!)rqLSATC*$~qpalhtX5uTC=w|9&9CqJ@>HRZX>J*r>x^%xCi=KwH!1eL4y{_U?0*yA`55KL~O=sqx@n?0TJdU0ULXH zkUd#50fdYx+qeNwOxqnMpy}r0$~I`JXG7*i+(m%I6lp~{F#uu| zok6ltvMJ2_D8=msq2cC9AI|M2M;N==kx7^!75Pd^hG+-1bYh^ z9q!JP{NbPY#`kMGJK2ByOaI`n{agRafBi4~*M974KlUH|!r%Ts{m1_vh}+Pl^rPQ; z_dCD*Ia%*&FMmQ33r6Ha+P$?l(38O>ytTx>a3|d#)+9#2zQf-+3bgs}r3i4K3lFu_v$u$udZb!3C%dzxl*YWjg->pkGHU6pypo%$ z@%4#=nPI-9)TtPp3d`Wd+ASele#s(R%d}ub@}!1(4NB#T{79^3wz?vcJV{Bs2cSiX z)$_e9L#y$9DCp<(v~(GRXRGi;^&e5O)Eb#gR1pZkGfcKp)*Bdex6BT(RU9GKojTh# z$htSk_aEO0NIF0l->o1?OA*NRZ0ni`(ZH6bNm}w`Sd9ic6hrFwOgee$%PD50jU)uC z$Zk=y#g0lk0R@HzT-eLI3~6@CHW655H0K=l zv5f3rJxW0{%$WA5Quv6~{T=OnJQ8GPQbsbNiuspqRAMViqp!jeE1{M_EBCRobTZF` zRsIJS!BTn3B+S8cku0p|&Wt^m$W_=~6lpMycYl|ZvXs+ecmrldtt@JUx$?oJg=Zj5 zlFo|nn~cbKw}=bk5j}&>pWKxA((sx;$VT7&MiRb=&Z;X4QW)=cbFZ>eYc*GsAr2k&f$XX|=l=?el zFji1BOF&s8Vx*8OV^zk0d4b-TL^wJ-=ZF{Zet&f7f!C(+w%2V)j@C4DGm|eOk*UfD zW(y4Ux@k+>F`2yR`Ipx2KFXa+*xSyFtNz~$RQ!O^=TF_PkgvRczbFu%Pt*pueP-R9 z61;jyPtTkiD0$-s^E5AvVBK|mhLON&B)oDV`ZOVd0Z_(^SHdUG^QE`>Q0`qW8w@a+ zrRYY;smC&U=XX{wZc2KdNXSnH04J=U-@fh+lYL2>PS4@PH^o$Tdtpi}dPM;>Km!O& zrI|XX(6AF0zuS_SrC)$s2?V>e)$U3=h5NghX7u*S{vLNsIAA04OJoy!4Q6JR2`P;G z0nWh>CAB0Mni)JaQ^0Sm8=tlvrrF^3JryRbY1XFx1c(Ks;Z$@S0U6-(02=c#hZ-o# zB-j!PhXz1kROMNR3zbp{zYd|lPEAuWXIVV{8!9@3(wn7m3U!RZ285csN4{-FAsCdT z1T#;R3yjXQyd-Frnc+$r-w`ebkzf|p30?lZ1aFC!&M<(4&+3KaRGpbe#i(_!yi=f3 zTAR=Yjq@1biONGz4HTf}z>Vpe71z$`uVs0oJHWT15liN|%E%Ahh*o5tBe07h;Rsgj zm+p&sTfAmX8tX2_@ET|y)w}*cwX3j=NmzCRWRe%ElHtdNr=YtE8q}{|dDAb(G~dz& z6nOJbbKTPf&2c2?-S6||$?EUe{znYBPW6)9zsDIB8Mu=AEkXd6xeL{u?6-dJH~v@u z-v1H+3^*Oq*snSjo6O>-xZ3o4Rb|KxPjpo!vO(+r!mTW$F@P#OzEk6Fa-|+wIPeG!|6oh34sUffJ$?b+gDm_=N zVMar1(5rd^IgnmG868FWNe$cW?xpd4)T%UeZ{a`pyWjouzle7`%?HWP@BBadqxPSE z69&M6b?8nET)Ro)btTC4;oWy{JZS0RcYbvJ<##=Q(#3?8fYI(5Z1hU538c^WmjunG zc1L|!lyNdsRQim`kuVdv6*MrjOmcChM@V#mR@j_`MM!n2VKQ^bKc#0@R50o!Bw#gH ziy!I$I*5H4rtVc(*}k_lQshkIRjvitlj(qgYjVhLxVq+H+a*8_ny}MWDV3)Y_FocP zk{bOXGnn5=dWtg7aL9-?8N@?CEzx8jk#hR~pSeG6vMoEV1HrX??{gzwW@1PTnHUHr z1_B@fkRU0EGKo^FP2JYkpNN0ZRb|%JZQXyT&DyN1WUXd>R$CiCR+&_#DorebDiR<7 z4gdsD020KIi6Ms!<{1HUR>DmvksC=nO2JCKNlZeaLIgMflVlO0pjgn$DjHyAf(V7AqXX7@csT525Gahvgj{1?RWg)E z(q!5(Zj%zuN#S*3Dq%rHX(+}BnxOzDj5J0o`jJ|iQ}^pFrXwCN9Ny4FIvZ#03{R;1C5Np1XabAu||j!D5qpG5{h!={Fx zGS|L`ds*{{sr1xOfLgRiE}IA$Yfp4DL2SGjtI}rsgcnu;;|Uai{gq8>(ZWSd*-a;e zArn9&Og2}Lp+>4slhkqy}P|cjf&-kXa$?*$aD|ue2goZ6ge{?8&plKd!K% zw<7M&%GJxo2Is$?*;dEHxNRqHE&}1~uYcDamIrNbxMEXoBS`0iW_jGU9T?0r3utw? ztf`v!XY#HiDZAZDv{<^c-#U522ZPaKOKZ~)T&k3)1E(m{E#=A*CCbn*ieVsSV&X@Z zbt#VJXMTmtrdaUSg+z6ts}E#G8|KjTE;iEyNM~FWK;f`7ypxYoL1h)YoTj4ArO5ll zM22kVjKS-$!Z2_mCh3Nf z%z@_sBS!V4i{5-DD{ma9C8nH0%c&b=fhsW4q-i*_?;5ZxQ#flO0Cy%!Monky<(mk! zEXpRyT49@Z5YGzp8fgRoPHAU}qhu`z|6m2Ic3jAq1F@v1vhguv(coQd#@22|gTjvQIS0S-8RwB>m~dnQhD&6ptWFz3_!|Uj`Pa{_R7b z@7K|V(sQ%8&`_I3O?&t#mMfv^<^@|^wepKvgf()2afAOuBmj}Q=Mtbif{J*I^$#@R33Mt8B8xL5#b3D4ya zNVc3mz4#lD3*I;5e;!Tf4_I_u%}#;Lh_xfXo?EA;cKSw4x^=8N;cq8bgd$ z`qHz|(?!!RQNLzUSS|pINWi@_T-2QeicB1z43s&7DF-=4Nz103u^@x6B4Dh(>LpFhe^ett-Gne~}X8cw-n9W=~r>&=5HO!UxjC9$QQVX>&LAXN}CjZ^@^ zZpp9LOm}{-kJM9B_OMjXcV7C0`saCI`rvn4|L}l^UCK(a%+%_<-|AYcsSgNNRcZn<3N?x}jV1)$_WXRsD-36yU1=?NDth!lf!VZ!jRuXGz=tfXHIOM(eGN)IG#|?aBl-#YpDmi6FdGp95XxHH z>4~SMhfC9(>n}UuEuJ%wnejQv4Z&(P7T#j>3kq;PrQYAsx>28f0{|;BhkI(1q!5L4 zS#d9<+YA^^(UT|iIVw>KG&06@?Y=&M(f_-AelE;{%pjH2NMm-ubbr`9Vun@4nnf~n z*~7JXj0VnLjR)+< z{^Dt#XHrmtMa6(ZTs3f+PBT%4&?HSGv7*MOW3tuVAr^My;oGTO(sScl(Yt$xs+nW= zz<2;yIILu+GTbsVxR_kniu0~+UvX$ zhS|yOSK5G67Td#!GhICc$9wMCMj?EA+B`K&9PTN){++jZ_*dSZW<5lICQY5y99o}` zSHofoq*2&4bUP=Q8(cWUYI6o#^#=hr--G?m5DlrkXOr1*``x}|JH0L6tSc^k*>P$d zisq(eH*3%7M%w77CkA0XaE6AY3cz#zu2CC5iaq>f)f1qf zuqQjPmJR}N{kyNe@vGlo2?znKU;DWJJmjp{f9|hN zq#scXKYIR+uV)_N)CnD#;l6ZUZNF41l0^&9C;;Yc;E8NnDPgh9H>IcwKyxjroJWNx zkJXS>2UI);3bc?WWL-O&1fOWtXr0JRMnkkK8{P%7@gE@%XDKF&j5=t?_GVnwm{&&| zQxaOq(B)WKyC2z{lexbVy_?nd<-NO5TbcKYNiBJnS&=;py>2qWsVX^GWFuPMv?3Nm z5%v*Nc9sanK4L;#^FAVLdaSZe%#&oE@@5_5k37^gW;4l8Yn4QdTnZC%Iw%^)Y`>m9f+pXI7rnYEZG9GmKBa>#&R9Y zs<4oXPhbS9t2(ZdmMsJ@$gUG^Q|!&niqEu#aC7IJ?~I)hEQL>2YKpGNY~-Gli+O{$ zZc{Q(iiX9kR*z1gw)l6XJ|*;1y|EQBL+_HS(LG3KLA{c!$OG&}C#ow7=JFgJeQsg1 zoBe{OG^e`1f^K_``)(o3aB520bCU5CG3_)9Z@IF7LDY%FWUPisBrw3jIM9XZ77SYT z0xtu}Do&Xh#3#fAO$A^pLH@8}cTXCtzJhET#2hF8dLCG5)Pd!ber3x^chs?ywhhm` zK+m6a&(~A`@2t@*-BuaE0h}x*Ypf*;f*vH8UJfe(g+zLf0GOz$-`(!ko)6IHi;Ux= zo}bWskGRSA8j5qw#1mzyHeWkFvX2bDyw4eBY8ys+_WJqPdA;>dw7P__D%Mop(r*bA zDUc>!O!QHt%8oQCEE-FiWYoc}!U`0v7I0?TM+xZcINYZwX!h?ca&ZD!U%pMwAS+nh z3Yj^4lFCSwnoe`%rW0V+wns#!p48ilKI4u-cnDT_@p0XpT|Qy-sJxznlLyP==r*0$ zb}-;)L8UX>=PcxUmfF1jAC9N{9!T`tVL~4B%kFLml;;a=g-mU5z4NEf(v!{o8Nc}K zD(!(X!DN;Ooh+d06_yp@Se$IU;;?QFcTM}mT^m8_{A`{jr9R0kY!?#yj3mca3dGpa zE}0quBE=mAvLr_oqF}^;!T^I1D+q?CP1!@;pPGZ@tV3w|DWk~9R%ZspAeusjk!4ya z6v_o=t_|A(qU~BpQ=h5SpU+_dI)khCU2yoPZqm)@=jN77pm8-RT}$trkN%4N{?QaB zqnQN+8XI3qKp2vB9+E+#nd}PMNuvm|P(cMWCPnK(yXe#&KRLfVmZ<#}o9kzKMixgW zO)#*MMGcV3oX8HKm%ZC^dh%On$%#D8fL`G{f0J$L#(AWhZO^%7#L4pc-8*q>3as>K z9$qG9`OFj6QtJR0-qjla^`Bw)gLmG1;FXKy--DZK_oH|CPjlU{iLS01W#$c%&BAHK z9IgV9^6BSZej}r{hxow{%PLRrR?#sQKsiRAnANe8n;F~!%>;D&pX?pq|E1SHbTJVJ zIlbde{pu_D!wQPSb!4qfz(CU<0Rwig) z0LPSR@jKMIV39p=vK?Ao@+9nN{hHF=TMhIK8G|TVy~sSsd&TW@N(vt%`6gA^M* zcAns#gQ&-Jl8j&v-B`P?V_w+dR_U@K>JFLS!%PvJZbd7EqpDT3L%=e=iY&0|6B#t$ zgN{&C30E>&6ou3ZJXjLSz3X|{%H_0J!d2=_f}mtn1;Z8+=K#F-J>?!dt6ueMca zVwGrY-bKfJko6+$P>4Ev{}j1EQYj9}6_OPDf+FohCP1~C)d_^6Xp)Z+UN#Cn0myPA z`~p1OCy(Yk&g(VwOg8&rV-;W2O=tT5<>#(6j(+YvOfNgs;K7PIL>7V6Bq?A4luRyJ zDhz@LjNv85C`6`%7YWO=q~H1AjZ#OMe}9@2H#@^lkdhu)3$FKm^{rJ`dFF0sCNj>= zu$|F!jtF8W@4dWWKwR`L%TO2yqzi?G=A(Rq8Ex0AM@|5u?1Ctu%n+!)Z}qqo8xq3P zsHDd=Z~y2O&V4wOn_va3nQ_W!EmxCONAq=CzD3J^;q*wqW0!+}gYD_SQm5N0-H_%G z+Plr&114T&#d24*vzCXah52yWeznofpvLc&%M;c zj=xTvTUw%Tq+nMBpv7amH+F&xR~6VhOn9jgu6{r2OjaoEDpy~rmUJ-vC% zFR1z_wL6_Tn$P8RS$E#HKQEr?6QJ!X^9EpM72$%jFRB#+vt(;o-Q;aFzH-J_05sQ} zxBn~v=((*)TD zjIjsZ;ied#)6H-G#i_E58ov0;)6dol`#)3uLCXS|H?LkXE2f?QzNc zz}=~$3^!T;I?S&j02H|0c5{qO|22`sgg9-3M+1@<36yjtKBir90BwZPv^TpJ2eBet zQ5d(-lyir+ttMdVXn%H3Geq9!4l{zho)@XXk^N7rvyB<=Qv$TeWWE^^eR7ZkgqmpE zOka!>F=dTV@(M|mFquGFAmAt{5dn=p8OybmDoNmks4!^Ha8bf8RDlUF^<-6cpyl+V zQ7RJHGXD&cfrnOTvv4vG5tUT>h*{t$t3I2N?y)t{UNEoPaWX3vUPJIAb?8VJY zQpij-bt9j8>IiAIRfWFLWd*W~925z&vID9>41~3odhqO}w-{p3svt0x`PL*n0KAGXs%}q|IQfKv&&2jZ) zsLSEaH^25$;1hix5N$xI1jG{U$WW_9*9x>>N80m+fO0<^4H{SfJ*TtYe>x71>`hyp zEL#fF{ce4_t@sVw*^ryp&+YEj^~V!*^7?YGHFrnr4)tRu>~h*Z!DF7j?RIvkpUxn> zeTME^;;x<$<`>&NcGPxSH}TYS0fh~R>D(QjthHmG467)GiFsuxr+IM+MTC4TzV88^ z?Oa=-&-Z)QX55~xt7e0MC-mHYV}TWMP$@k~a!`nvAcYmNq<1hq=&&LWK^B5fEx)j4 zO|SL*;XCTUM!2J8Y+U9coU8mf1lz#|iL@!gk(CDFvg;Z*z+S9|eE~*UF^i-Eg-Z>6 zh83Yu5?yoUs2;=A9sIqw4X-A8eVWs~<>s}tVO1XTMmw4J_^dR7Eo!@+Vgo_;e(^quX&uUh# z*sC6`jXKL3UtAWWu?SNdwCEJbyf}Xf^4tnIRyx;6<#LyNbVEfk169Wu?))uI-z(4j z<%iz<^vfsE+vBEq?pq%mzq?_k&$%O7jn2+4?Bjp~St*GpgMODBOi~(@nCq%lgc|D+ zGn8xv^xP5V{K+FshGF%rh0ElYOT42B6HsX(h+&dA_he}oY-Ru`?}(d!^bNi9X8ACp z{>6vm-@Z7x#EA^(N~)+k@Nobb3=pOLqzsJDRcDOVl-|}CIOz*X%_2Pwl#6TRstFfhX_R>LlIKSav?2Pu!O+$7A6iqcG*?R%qj9SJ)JBP(gFHrbkq+4`Hn8A&UMUP$A3_exos zuS*Pbd7jNFSc3?~M5@o-75HWls0EP5y-v*?g4C#1ai&BBZ5@<AJ(7+i{Z>W?MTdit2vkXO?;Y^D!JPat|vxh6*`EH$PP9BEgy>LH8KK*58I ziC(g#9cLVH?T?*-TFSy{1;}uRHZx__ZO!63A@zjLBVtaG*6+Gdp_97nq9J+RMnW-K zj4eu3mTAaZv>%`lr`r+{lWC4zCJB*+py1RqU*D(X(Q3^sVK%v>Am?rowBG9}?-F1denR!wbEH0h1hZT>5pvIa)LCrCmNJ2Aqn@Jg-7g&7VXP{)0l3JnJ^s@HEBVrZlVmMIfxuMh4K|HwIi_td7L?Lzh8R|nrUyaX2aN2K zeZC-M&h_)2a>>9}rVKDz4H{{(hUGLs&nhXg$_6n_T97E=8uumhl0_^1vL+QiG57xH zMeezOn`O~z$k0$~Mn9SjXs}C8#0YxiX*fOxYvR-ZGEpV4gHhHh1{o$OE4(c*iOQ5n*j6^t4YV_32B3~dkJ zEB5O+T&>thb06;D5Zn=(c2608Ff8j&vu7?zm>QWzwa57;BwJ;kXIt`?(bz3w=kmAr z%l}Cd3g{h|YvJmq(YBsOkWt4+TB<0=l4g|wEX*%(%c(i9Voh%tdsH-a@% zRFKe)#j@Xor}G?1mS2roY1Abnb&SsS<uH%A+lMP@In2{m^ znkoeYORG042Rt#8hk9P0pqZJw*Ewh+LHhai5J{yxv(3_1u^swPee#!{fBw1SCw=3a zFTe82&+pkSNedx`@#xX@Z~VqbPm0O!e)rYyeeZ{vteH(ND@&{93(mLffEY>q=5Kxc zYImG?UP%r`Zo{razeWVhSpX~h;` z1pz<#$s6DNk3UA6bVbS;Q7Uy`uJGtquPsPA`R32|8CT9$agKli<2a%a&eyNSa9P=v`1!(OlMutR23dC08pub2;pL0C{&^^Eaz?a^5{I|Xv z&pvLiCUL4)|NfKXpFIy!rijT9z@B_mI9W_!QQcKwa+w4bVPD`-gs#f3y}JM9@2&HA zK&X$Ou|Ikd-*{J-O6|WJIwG*D7!jFf1fm)-_4Mhu`pkjKHfxE0B#}8mMM;gXh{O_e z2#f$CGYNPK1XFtUOkjf%0j;n_W1|KLO~j{SU~RRXv>O(fN1Y?g}d~jg#VT1$}wexAc#xf0k)w; zr8yftWFdJj5p#zk%79WK%Np#+)Kn1?j74VN$_C0%Qc#9bbW>2%${8-Ot_zD1)|1z_ zbi=f)pxOx0-NT1gps}CLm^U3aS(W>h%KIzFO%|zNh6u@uXv9>^DOlWijAeLc#DD;% zk-(g>JGsw*m$?oHy$+P5=&`i(%4%y5$xcAqAd{getn0YlA`$^w@sdpQo;LPyDQ{cz zE5HF+p-%{cHn3^KNs%ZT3IUod#*kB{QecHH%F8&37L|lSmeh*0PP$q(Z?}_eYXV>F zDsYe@;Oq;|kIR^X^_?!=yqf`1oA0&yc>(BI0lRNUJN;X(WbRDxi#0xkvXuHFOtwxJ%~KUu3&H4tGeud)$83+Mndx_h^>^$~gF0&1^cnZlig> zrEXl3NGC059f^VNv^Hr8T{>#9`tQLY+zr~Uhy`7Y3y7dR6EDeVV3>)dhnC>B1xP*B zv+Pe=e|LI+*I#*(w(%&G3edSD3XBULsgRTfM-VjZB6$l5FJx-M2zo5|l%=WFRPMyJ z`*YqRgZo}EG+US&gk*muV-byYQ3qzdmT+hua_%&60S4*)txZzjH+d#Ss|zrSP8lJ_wAB~#3`KmrL(WNs5>4^0FabZHa< zyb_#D-M*(o$*ef-g<6jQfnio7)XnX#$z&-k$&6<6PQ0V@-PlB$*Z?~*sL7rnz+zTe z5GJyu7-gn>L{Sv7LXRm}d($acL@O4AtfaeqZ}}p#t(U|eOP*Px933`O7Id45z-_0O zB}fdU%t|-YPHfDM&$f$`uY7V44AFBs3NV^Xm>MDHL|fk(2{`Cd{tat}7~7WF9Eh6@ zMzX1LjJXyUPH7a({YG4rC(#K#%w$CKx0UiiMGe+Kx(qB6*KR@^-nJrt3~k!ZKRH-=!F;F{lW|HK7Q8w-uJHm?!W(|X?j4xka^ID!9Mbl_no}vjW=#y zet9|O+FqoC8ACs(7tbpKrVoDb`Hz3>1NZO7g(m6MSKs)~cV0om)3|hjvk2@^#UAB< z_<;T0pYK2YYKN{4?+0-A&G+)(zf1dhVN$YpzU$G4Km7c02R{6v=YRIIKY#7DoBlyZ zACk+4n4zoQnj`~6mS6hN^R=EJ6P04${Et8Ew@Q5?!>=^mhJJX3552y=rGM`cWR`NI zS=2F`*8RU-h&tZ+r=R%Q?|$uwJ95x?^K0MPed{yhYiTJZ2|@%SR4fa%X{qNN1RY@{ zH$CCmo-C_I@Q?p={N3-u`chZe8`t))K01Ey9kNR1t&3$vyW+%~^2ZpS8^Z>`_?Vc4 zfFuUAyL!&v{M zF-92xT`#5F3<#HT)84bR#aNlf=n%=0yK_z#mFHZ`^m~-K;>;j# zl!>8xWp}mEvq~j>^O!JteVyBFCzmsIwZrb0{~fKfohDU>NL=o6+tsDb>OQW-5a%vN6!QJ5-VPhBON!wbp*t|&1SL?wgak$FKF zhUse9<96?**zQq;c78M7hOwYUCqTWROtmQMboP`PJ<{E1tF=)wH%O_A0$nOY@GvPr zN7HnXC~GlT$u-F=LEhU56L&3wtN@~C@^`CQF{UMnA&SJ&jm@M4mRzPqk zhRdyO-h_zfc&z@WZyA`O9>%1Oc7QG~zILUpSNQs5vBM{veqKY^SK9wwHqldV6g(Aw zP9=ic%MEmxiMu@SdMq%YkeMqiBmP?6oN`htZR2p}b?ySJ&+z8@z|V$lTk30w@N(NK z?bW=@^G?s)vb-I&B$^%ePRm$ z51^MDVug|6(MdY%`#j}#SWW(dwi+wNdvgdL1Tx>d8ITD0>bPI|1<%>KE4S#qhU6iR zhpxgsuswWn{mrxoVbHT>%1j=2k2kz9Wvf5U;_W`r?c6RpHcmcN7H~D1O;3z4xfB|9 zXr)R59>pE8&m6TYr=6u=@GS=(JUOn>P(lc@$lArtT^vb1Xah@COEk0?>gZFSld>8 z-#zil6nc@q{=5v%-L+CcN}d)0!6(uQqV5#Y5@#z*yB7lkp0o_4G1_e?E6B7DM-Ml0 zO3m(Jm^q`d(^lH-_5zwQSP4nD7D>+-V1)(YkI9aP8?wTp;#L4?X5pn!&j0`(Lq*6u z&P50_n00iALADf>-F3MPWyxJ`0HsJ`jb>xv_>FSVqzvf41Uxp*%M!F2=VI*U>ofK@ zFE*?08%f@CYGcL&=hda9cH%il_3A;LmcHT`t(A=p4t~70Np`Vq;*hlZwn0gt2x^RD zh2+pEU|n)BQKYAMf^UYR{h*rmv)No+C|L#R1hojJQvyJrBsa4aQr0~cLHE;J_v&i+ z+kg90U;N@^3$LC zz<0j;3KtM+#-Ifp^=!2G*YCdi&NKe&Kk@g!DHC!uiZNJTdA5G_`S|wL>Psyou@gE^ zw7>JWe)-@2;kRyX&Tg=-)FdgfvC07fnx;4jK)Y)$rICdTO!P+R*VRwnwg1p7tE=_y z^1fH$&3A$zVMa;OlJy>%>yN)#%1iI|mwtNbOef>n$Nt+dZNC1c|ZT<2dCF|PRMUiuL?|*8;eoH zMC_zzr}7A6-TS!H4IKe^QH|Z+pY@-U|KH!?yKbI&uimUb-M#kC>92RwzSc(`B_Oxh zw`oW+5w;5`K_?Ng#`bAkgz%V!Gax|Q<1U$j;Y8&%QADK zGO6>*Y&RflJPLUfnFE9}s(@N_tdn+2vd(3h!7Hr40ojmoFGaRuh?6KbveJE+U1II1 zuq3~#J(mHX*u=8)fZ{RAb&-kab2k!Ks+#IE*w?-959aP>dM>9V4<&%cfrPu&-OhDl z?zYRg%?nqh(?|-rff57F4C!O~#EY$m<>VmeQQmUnY^6$(vRuc(^f7D@OF%XZfbn)R zmPt2l5j9qLqvNval>vYl0Enx?f($0{xor@qv3Xkn3bf2S-$>le6v&blnQ9r8y`IKA zDl_h!yLE;;on8g`4ItK?S2GMYjk2{piFGE zWm}Su&ogGotXtM6E03EHU`q+_P&0G--6R91bmxRp0T0u#+`D;?)5TJl3L0TCmFd=u zHVENy{fID(llhH-7|Jw>tj&8x5~@XY2yjx6=Fk-owF)#$1+5};?z?FiqSWa68Rrj4 zg%`CG-_l7}YFG(il8jcQ0!%<%XLg#;cW_JD3YtyBPSaFFU}^d3N(B72%DvFbGcx9O zj>!QRE9y3GPTsE4XUYohPHr{G?t@=p&H<^JiLa?$_%i}df z3dz$KfQm|tZ-$H}i-=Rzv3cP@-?koxm?Ln8`76gNF)%w}Fzt%v!56uAhaNR)Lj0+PG4ozV7a+R!MA8$ca z%%NeG8XK>i$n;Y4+B?v(&jOUO`oe*`@j*=%k|8vWDg&%YZgTTvRG8CfRWt(0ck^Kg z4Q0GxL>Qp_QyaYX<3l=2AU&6I zq3d5?`oBFm?+YB?0sqcqw+q)CKmAlYN5Y-Y4nx=E)}36o>ZTuUJI^;0VkKA>tpAMl ze!Qt?94%lQd%8)Chi~B4bDorV>(R&&AeTfAw(j}rhj}rO{iX_@S;OlkbOFUUP0bdA z3Wh6G35>UrSO;eT2O#JpG@4H!Cst#{P=iJnW2E1Zq)x2o_NZCh9=+y$y0^X8>Gw)t zDOD8qGJ29qAUFxdWDbXs;~p^Wo`anJx(Py+8OoJNhLIistq5?i4A9huf ztP5Xk3Y96EKF}~}h{bC)0VO8*WTq(BfnqTs9>asp9&*RfW1j=8L%Q9NENDl=R)GmxryHx6es zU3-^QY#>@lIX{SINCxdB9D1ycCqjX+YOHE;>}bSXsns;{Nw_r0vjg{U&p-d{r$6<9Z+zniw16^EGtn}Xrv`fX z75}Rp{?m)QcZI+3#(Q3P2Y{dc__gxGXZ)w-z%iHqKQw>0?cMKw<{$k1PyCPn(>GSg zeiKjZ##=)p(|guxc3$$4F)OD-AlJ}$%DwU16`$L{H?RKSHR;i8w~=ARf!W=f0l&n` zO1%2xUwZS!*Ks{vQh#aVOFy{&@cYK^?J}#1BrfM4nR)AFQsH_vu6ojGfCoKUTsy<( zUVrsBzlqtDh^XIrH~#QL+QZ5OlZoLV1S&CY_%2AYI;sUQO01|OG?Y^1y9{#1 z^;Zh`Xiq6vYNH}2ve{0BHC33zhHTgHvhIILH8ursSD0-v zm##3H7>vgWFO6lFxq^DIaE@xE%R0TyjW5XxL{AOUyi7zubFT|0BN=oG$u(Zh-EE6q%4OqMtGUyuxeE}qDT1&H3RJA-4wvU{ zH5DXindN!?xv?kfoc(v}u{kx!WgcYmVEVjGA6C;>cO^9$5f&AWX%C~|0EwaLN^r6? z27ys9GK3(au)1QQ_w;B@gql#1(WVw$X09mR#?1M(6#_3{oudOQQ=Dfg3A5JEu!0N< zC7~9b1eh`+J1_D*3Q(?~NhE0WVoFz-h?oI%($n!on$$_?rrD#DG{YQlGXk-Oy7FZN z?|BHOhRcUaT_a+?OsNb=ez6mj zs%{bmR{Hv~*p^>saJ?@EEw?!XG~cgXwqe)3ed=v96#0<|Dm0C(1B{9=8bO6)907m@ zFqDcsa!4v9Zzl^7P!Q!|UADLQijwA#;I;xY@zr8+c^AU%h(S|UJ5aJj6yFni`_HIZ zv;;vWQ!zuP!Utv?Eu}MUsyiB?sm84uA1enTXa&srTI`nG9Wdo_doa*^_C}GoJHrDY zBdZIF2vjQrX|tn3YBAA?M6VLFfIUx(R$wAehVY<0@9w_cBQN$zfnf800Q4BxC#2M! z?85^L!UfShqwU{w9{HrwsgZ2E5V8~}4-e_RKpH*s(8JchJ}WT4=w_G4@IVjj%0%2b zN0&KttEaErw5Scpm~H?tvmZ=RhDVA$W6$susjy-&nsxeX0FgTP1=N0x72L0f51L;P z5$fp{+O8jCbO3Uy2&ITLnj+{E%YYIg6u$~O%C*?xC#HJOO4<4o?-Tnm600Z$@HrZ+TgcUa>B zw*zwql-qkzB(sDH)~<#n2RDG3eBJt)D3Ae7KpPpd5|I{g#sr&;u9%d?n+gJ?M(RdN zBxwM5U<9(1VuN+TUBlC51j25l2u{RvEMhn<0~9uu{qmj6NQEzmeC7|;(Loj@N~NTT zPEky(Yo3brESe<3Hq}06y#9FATBc*Rn1TN6LqdF;47VmGD+77DS)Y^{_wVfWOzCB! zHr<;&2iDl&GZ9KarkNonTINu zaPxr2gRQ_G3q>I|y}%WS_j_x%R;iyyvBtUi_=S`oY6`|9~1Pi=i95`}yZS`70lKYT9#ezxwG9e&@SC+V2AmSeli43H5l1G&Jz%tgk=!^KUr_!!yYf zR6`fGxXdBb{;<9Co!7tm=@-8GwZ8_idR$`-w6)a1v;4E9axn%cA+zqy3vczlNlCBl zuKxPHw=ez}B%tb#;^)@_W_A)yJq;HjgA@>=iw^;?{ZCl_{C)nL-@oHzuhQRr8UMeR z<~K?KllfJWj~JPmL0K3T*!G0mo(NK?@exe=2Y>y>$A7q_X_nskl~0a;@~k_o0B{-^ z@F`uGUR6DU6G*@+orEw&@R40hd^TcoFW??g3_Ead3@L!U1YoC@x+nF`^}DYr5NJNG zn2Y&!&@)-gEil-T)#u=uG%8}@?+D-wuBRR)kPTRwkJrds<&jS) zJS*d+TW*#Hv_RzaCHgy2W*qwT!4U)9eDs)DcN+64g)N&&ASlwnOr%f>OaTQ=oa|Wa zHH6W}6Ef7iX)*J)Wl8}mKxy1}@@$UwP zMaxY`HnIZ1gp$p73^RyCDPDF6m1z$TSZ9hc14s7PrHtyaV7$#rq_ckA=sy7IFci*- zy4GiR2}y9m6ehSCSe!mS&zhmO7oKGeo^J)yj}H7J%0CEM_dL<6tDsow_ZG z?TcMF$M3JdZCWn=Ll4kaaYwT`bDJF!1Dn`s?cVzIJsGmUkoMIt{r+b^|6eGhG)e$q zK%c+On60QLWs?3JB1em_iLhcEf)F%?!3u^!a*iXAtc1oQ!K@tifqiJ-?xRb8<;%bS zx!?FNPXBEtQOfDc!eB%=%}NO~F>OFa1WRQQ?u?KeJTXm8)thzPGi&l3MDaFo9aBWd z6O8TIcF7ugK!(G&za29!dpna>awARd3QvBTL;93ji;!q#Rk9g?+3abTshiS_It!;S zeQ{P3pj)~_4icGw0v6?pB$)o=Npge02~F-FzfR1LTX*B+xzNoq07ss@ID^z%Pehwl zfno#_Xil@PfF(J!76ox50=O1vnoI#%7|}wnMvD;Kt-^MOpl+~=f!ms8CjtfT74C3a zK%M4~&r5evRN7xVWG_(;o5UgQ6&hQOnAjtn@a$@2ioo{_8juW^6Pa`~|9&Xr2tPGya4K6v<17R6t=BHUI`pGM8Xwh_=WY=zxq~ zk6XfEQCMJm+AgcVM=$4&<_nogbs|&ptklqzKQ&*99cKnq%1o)8voaj%C;63ixY3e! zV<90OT+c;xYxUnn&UYVqSZU%j^B>GuZub{tGXsK7n>x*^qt!>nG&dOZQe-Z5+J|`T z*u%*MFd|0EGbslFpg@z5I^-cURd*nC59z}hv3XpM?~d=B{P0eVA=_{N)~}4?^zzF~ z4u^FehMtgQMaRB;JRjseXb9suyGzxt6>0C& zbk@RVp(d#$;=huGVwl;qBv##u)Vr3zr#|`qY0{tn#mgkD%%uUej2`>?TOM%!rlc%E z(2}KKmTo3(?JMuZ3qNW$%uR_~>t46a<&yW932F^NXiz|!OwjP>FY?nro31ZbWh8Ik z^~&`p-#`83GeF1LdQdhAvp}jAP%n4f!yXKObXMp+6}tR(#r*f)CflCHY>u3W`hzGp?dCH zB}e8!qiUHAI!1%y7T>@}sOCo^jgu6IE@RE(5rLclFcdJ6@In`jJp|j~?kVftU|_ro+lIiFQJD&4b$qS*t-_?}^-8 z^YkSs-0hk^eG_CQh=>TVSRLpUDqeGtaECz%?@1x2AmmZW=k z-Gy`h3TCzz6veVu)_$plD7p~$Oi>h>vLj+qfvn9h8#N%y8#bj%g{*;ziXuh`90Uj> zBT%AA2A?pqQdwlRv2nv&uth&k7s}2W;UzeydQ7Z&d&14z@PLrjm)!i{O?xQleEj!2 zzW-F)%0+jfZEX9NN|7rSGei9B-tAtzGvvw6A>m_W_)Qp|win5)niovkqtuKOnNeNH_qx zQ={Z_cYEH?yvI5%%v*S!`(lD|h!&k0!}}OVZy&1lH15pv+vthfT?yQEk3l;(+NZv? z;@ECU(2FzmUb6Il&B$%!?%}&!Twp7z!P~MWGqf&RO_`QQuF>wShE=gp4n?@bCl0$7 zhUt5#r3)a?;uj=rmy??gM~MEkdQKSSOB>^e^^0uI-e{mDWVH(88k`4xdB^N)Unv zL>R1OHb4de3j=I00O8aGOy}jm;oChx5^i?rNynbyjO(Q^IVde%od8%NN}9Y`4bK$R z2#o|7A(}XdwZIjRv%jks*@%J}TA9zlRFu0WENr)s%|o%uqkHMq=L5B;U{)(y=M0LH znXn@bbj7V=gotF?D)H43aM~^aU_#jeX4)wxDRt1661x+Cx{9w2fR-)m^UUwwt_;o& zl0=YaYzG|#-@eprMy)?zYMIQa<30WHvxu8%^?8Sd(@iidL&8?H>qu-m(~6w9?d%s^ zccA5gJl)Rfx1?I3G!e@1vL+|%RhA*506m6A077Z0wo|TZUcyh>)N!FRl;vzSbDfwi z*O6@VA(NyH&KqP}#hd+n&%I6ZbD#a_Pk!?HlZZ)59ldAARYCZ++_rk8k#^8*|WadPO2V8<}~Xr5LcP->7D1%TyR`wdA+i zTo-pP0+OHl?!!ru{D;#6SAx9VfVP`mOJl?|stW z?1E{9%#tv3)q=2@c$hsY^<+;d1gq*l{=u6cex-LP_~!2FPk!0I{*IKjOt2@pRdAHb zm@;F8;|khkZ8w83Mx^_Q0}S954513VZrCTIhp5n1R!YmH7V>=_D!G*)v0=DcDO11< zMOsjq{C6{J8J=a#xZL$X(k!ziat3+Y{i)dtldCb11s(ID8OGa2nk^2c`5j6%INT?| zy7w&l$(O!|%o<&EL5W-+?Pv7;1O>YXSRF^O2q;P_Lt!!l&3lAKCbORBPHpb2GA6JH za$G|@u=ct0)!Yf((GV(uHwyM#&E0UXx$EyYn=}g2vI=mHHaO2PnTemQv)%K(iBb#! zci#>&mO_iMbmFP13+vV%CFmDmJn6_gj+APZNLr|X0XoNQpdX^ zQ!#=tAxucZR|pkyx)+!TSP=@1pp#0%P6Edw!>C#j3NIF;V(NQhCNg$NeFZ~fzC+&; z>kT+JUcw>o)i#2vSqqjttBG^=9-oN4I7wN{1d6E9GPdmILTaf8OS4Oj7eb zFaE+8zVHWs@CWm+fA&ZJPXM3!t^X^10zzre%zrKwtZhI-@)2^li_3hq!rVHP(r-sg z=z0G6GzL9GNSy;kKt4e-t6?<{Aj*Y6?4dwQMW#c-*C8Ts&arWJ!2$P2pO0H?o$hm6 zyYxwfJ*jmoyLPkwEy7q0fy1A*zMjX}3goMuC}M=pbQ7Vf$CJ=gH)nasXTiGJGq z;#|^?Oi_AjRGa7cR0ta0vPU5@H!xaF4x*@(#y27`oBzJ{?C?k z^XQH4+m84DE%v4TTnsd5#D+#^8h5lOjCB8sXZ zn%S5VyJpcq`k975Y9 zSCPBR!67y7rdFvk$d1S*6xJoT*zO#Gj5=L)QjN*Ia;-@U6>Xs1$c#b8GqPQq$^nUy z9y`DezL^yaO;ETX$t@QKuYn?s!j1Lp${>XSEFhs|<$H$LpXkrU*19U2afvLY$dFaE>>01tElX^qGL zKwP+~l7YCf4soPInAvat*00#zCestPtE>8(pa0mu{lhOlt;mZjE8EcfRx4 z?saaXnuq#0POrUo1N2B>i~Fm6!%+VI-}}VB{8xYe_|01h0xgJMM5~2&lT%2R0G#Qp zr6mrv0EjWvw#A$WR-yv-Z(ij8?lnEPe_wgwmFfo4+zjbxfk7(yUd?x!Kn4{MWi7ts zTkqI?=Dqv(zj_g4=k)9w_{%8!tNP}%*Z=a9G&+#gg&>InC6*oq5ELbq=8e&0+nWUKnbgve?wA2X-{_boAm5v7pME|QiY#9BmySu}qSgH)*{5&+3eIn5gcTI6W76O(}iT3hA{ zo2kZf(%S1Nt0!uZMyr9OF1B~sjZwy+!4OWuJtVJCK&7nDmk7r+nzvfJrnVGAQWZ)q zjUI>qI0byFQy9=v=Tq{438kvovRfq&-%XQ6%fH+efCvB=Jeesr(^;09{BvH7%czRZuPZ4{(pV;H~uSGp)i+M6|!U>s+(ItVOcV&FtFjW zC~dhWntH*Kx4#`wp*zBrM_|wC2`J0sM3dcFuBR~FpCvb2z^r5GvyT>=A0GTtJhP-P zE|dF`pnI220;Bi9ye`nzE&#ZxU-cd>W_D{2wJp!u3#UFj0~x>lNhg{o<7ik`s6_K3 z_g|NkR;!*rg>Gy}Y!4w|wkyw|^9NwW{coEuYjwyYI!Mb93YfBpvBEq9vqj zL|3=g3Sn;t*kXSR_As@(&fpEUa_3tJ>j_FnxQt-Usvwj@Fj){*O0cBUAyYkAO!8Y| zP$^V`>DH9Gw3v_R)pzvgX?O)rwMIHt3d$@InVNSvP&|rgWDTf-Nw4i>eoNyQaNYK6`sQ9AJfg!Q?`6w#mrvy`h-$oFhAR zotCSYB<{DTPPW8>8$$rxo=_reLx`3&s3@&XE6Y?xvma-A0vai+`!`phNxtxXO|W;q z^O?_m?qh%QC*MBox(GmyQcUP{yz@yyvU}`7=;to`*vDRc=9#N|_U*~qi!Z+WJ@0w$ zCqH?E4MaQJnP30hFaPpK-hc8>?(xt6$1mU9c>j7^A@}UVFqGf;>@WTMFMccS4i`;u zgJs&8EKyYkVVG3ol12;F%yVHdS2!~AM>F=p`04QMzx>P_|J$$r?0b((ck-k=tf#h* zdGWM^DN&E^WX=CwfAOXL|NbYqJUQg_$sauW=KIH=G7B#xJGHx@8sW2)*;mMOJ;D2K z_W$@V@$5986a49L{jYv?|4JV9-b0OK%*?Tc#o)EW!B$X&qHyym{Kn%kU|CMf_KyQq z7!zJbt+Fc(1I$ZIf)pb{fOAd7N;GDX!ZQTjA*qCrizr1zh@?STsbl(KhK^RlGP|W&$zTIT@@&J5c~qa7 zzQj-qZ9RRNvx}4>CKFJGmd@Brx<(7lGgesv6bfIF$ij-UP{>L}XgD}2$)uKd%#5TW zTC@jyn3)-DTYHS0GrKCn7mdMW78_h!Rs!LZ>JA9X7^8y)3Tww?Cdd*kh8?6b?P-SH z5K*C^0dhh{A(`^c^h|9SRw6UeHNDzoa9Sq|E~s>XqS077jzbaFm<@T%E-d(BASMq3 z%3|RPrMT?IV-N?5F@{E=PDAksunb|t?MNRBqogeaW*tRDNHL*~WFSC8xWv{k(Eci0N~)(a+O#pQ>_{)&TKJ;f{lZoRQ7L+pQyS0*#aVU)}xSx1oLY%m4JV zCm((PR_Dw4ugOpyuTokS#DODe=xe>ih=-3ugoT5YC6AL2Xm7Fz%l zD5IIV2aB0m$SJB+s-i(e$tqwg0}#Gleh*%XvnL6g(Kt)IJ&8|s-q|ri7yXAP>Dxo| zk{|EQWP7bTd4I#=&bDy_u6{n%=c8?S@AfodYodoxbX4dU)((K_mE9^E z+=$G0mEoZ=7CGuJU_ls44A+ob?88dp$R&$^wjMgHbl`8%d=@nSR6p;70G^~SUj71E z!V0aT7$vxy?_ni4z#ZX*R2hN{^Q0d^ zu+8Tf(9v6P7dFs_$W<$cY}^eMg+AmBz74wFk5EgWcdt{NP9egz#s ztH`NW7xJBSC?!0an0AKUn&6o_f>sNZrRf6}-q7mkP32y(i@YNmKKAcQ^QS)zh~_O1Ll08vr0uwl2ziULz?OG@nVbq>#32WsO9W3&8 z{R|&-H7N>Z*3P5eo-QLn6!cwx;;$?~5C}Q@?IaOzsNv2OEdLQ>-ye#YsH|^x4{PM8 zb?km+32t%Y#j=x0s(mid z=gmtN=u+ZlDOqWWjmEKfdG?uSKJ#lYUAV)yzWt-W{_CGD(zFXL63miQNDd+-UR_;% z{x?2iM?qC2KKGel{0%byJ_iit~_^#jiJ0Jgd zfB3Cj!xOA3ObArvB4&UN0f#E`=4BYBOt-WvW$)qRimsS>MS1%Q%0K^Djc3O>dR-K~ zSOQguU}C}R!I)Q63XI1;)YZ2?c>AgE9T$Jtv}=#Q^?m${4+B6l9MNEY&WNVwo!_eD zm4wU;;RN{TgLvZ~eG`wSzDi|3e}@13qqnc67zI)CCOQ0ahbCG9*j+xB)C>60BBEk8Lu{fe))ZygBeGo97QDbdPa>C^f6Q2bJ7R z7i@#D^qeh1&{&eQmM~q*{MfdYBpM_m&1x7UeV@iX(7f1iyOV8RI&9ii1x2&XxgmAMG31%9KlDsMzmGLB5!vKs-2ualK+)dC( zt7t(9X?W+{?J>D@1DXO%O0Pc-q0imbJa^p8-Ob_L&F{56Fcu-1Ztx^m*TnODt}H1f zCpuw4Ck7IdOHMnU^Vy!2bq3iP>B^EED6<{aUpz`FYQ9Zh!fi-2-@DJ6p%p5^N@ym?Ffc>IC~TQM z-6p8)AjyM%W0_-R7!d000s)hv!iLz@OuTZ%5}Fi+nLgvzlUo4-ErBw?Ak0dOR#TL8 zzJ?~CNHk+6T_!3RFeOC0qC8|d9)`orgr34bNMfi`Bz=39fQ3TQUK*o0pQL@!RS+IN z#SLS>V>M+S3l1Lp1en7ND46Q*dW<3g(qP8W-nF-wLqh_vfLT0G* zm{Izcg*Gi5R@(s@)3u`Es_BVt+oy(t@)9&F0wbUZSwT-oZ@pkNC`PGfSHVfs<060) zlw}Yh(5#9`{&s`-r;){?fKpZj64zG5jC5~2|Lh*2c_|)X&^TaCZ>7>^3wQInJIhX@ zOD8^``}LOFrL+FT{qI6^`sl66eK51c{qwJd=7AV8IZu>n4^0qcg$>-y0x6k##q&g2 z>6iC5=-wLh@q`_?5MBy^QY^Ae*36kWH=O;8U-|MsJ&i%X{p~Gc&|x)+Z|e^oGKI5J z!60@6gTbJ?+Ac1Db*;moRB<=$0FQV(T0;LxXKsx++|;5Xj9IA2l1%`!q!DqZ_RxT! zqFGBD2K2d=d2SsZUw_}V{fUqM=$qeOXeB4H>GQ1_emDf+?t1zi=<~cg*6PYi1;1ZP z&<8f25@Ox*+F!Kzd zdwao&cJ8)R=A{V6EyElAM5CgpRG zWE;<|=6|2>KD5!UWJNGT2E$FVI*emLpt0;Cf|^KVId&v6-^kMmt{G?j`wYr|@Ok_7 z=xvrSE`;cV#hI!_+kFZ2x4&3&$f}GCT1>(iWv5KBz#(`=1QkUQ2(p+EM&ng-XTXWE zH+Z1B0UFoP!Pd2Arz3Cg)9xV^a~zVsk`Q1EBUtdX&Sq|cVakOFO2w#03=iK|xWa;l z8At(5F@JK$QNjc9<(RX>wIJ!fQ#BKJ1Rx@;+uRbPGyeO38}F>6hoS5o@jtSJlO;@`g-a3FPz48Kq((!L&9M|{=upjGrH{nc=S5x8%aM{<@jj%jY<~Bpt6&g?mMx zHUi5FUg-awj^x>qu=>mZ!FEAIVn?wDZqosfX-fsS1cIMP1I%(|hn)l<3%S`gY*nnt znq*NxM7S07?93pPhJxD497_*j+Np2*_F* z!;@nr`{XA-RO?x=_4aoB(wDw7O<6c=k-rLNs?+4Si58Az&Oh^L_vuf6;P_VWeeXM7 z`sEkD_3a-lY*bl9G^155&xyxb(IzP-$l0P1=Mte0X)nI`&X0Zkec$}XD@jOnma%Ot zlN1y=8Rd06XYMLE?F~Iu8l!tN=!Au5L^f!^PoLR$`<6^A)k0A$C|GfyOfpM3mm;wh zhiH!i$p7#nUwlRHy2XX%PTqdx2fGixC%*rvms4of$ReV9O=k(4zF!NAQj&1$_Coyp zAO1P6JNm3BuRmx1-6!YH^CtjiGSLb0&}Qi0Ms3X)!Wnqd+18Fg>0e zrA)5tCJK!x3Z>5?h#~kUv#V?+){tI4C8Cu@6}lAenI+~yBbQQ@oqq|f)ZP|6-4o8x zW;6y!jgY0sAc|d?1M^)VpvV=@@CLTBG`eC#$d$Kk6F9ewWJSmq9W?i9h3a|aZx=B`G%d~@!& znL7|rrc2McYZ7U#OcTE70qRIr1EC8r0oL=(pbzrKin?q1D4=NS)8~@J!g2+`;Fu?>J;e#YavAx0+w&n zt4e1&epyN7eP(Jvk#r16PL<4jf{X>9Wf|1u&m1u)6Jxf2psCkaL_=T``)O&EEuc^# zCTbTxQp9vqc;%8xOS9eeD7h42={lUIrX-eTofa2MgB!y|I5j9!z4_E4OCxh2!lYmQ&;Q z)i3|k{NXEaos9gX?TIny-}}AaEAauh+R_t&DUi*j!H9sB^b4i1QL%LAWL7e6c8lp? z{j8L;)9q=bP*@Lp?@lfoi&8VLL&RJ-i$V_z?P=`U);3x4pix8%kppxohV*V=x@+*9 z|8sI7rO<0{^re3S;B%ko?tO(9ZqZTztB3>(}d#Tiv$dk1^V`hg>k#K`dY>OxzI@6f8rDJ$(X98EqA#H7id- z_W-ddJb8(k7DGg)n43qB;P!YjY~S=uo5!$+FK!OkL@^uDHZx5|M3v;XM1TdV09=G* zM6l&;ExB`wl_+ikqV8{;Y7Q`&nUW8v-rL^o`;yRC+WuzP@7?;^Yy3o^?2;zRxFxEm z-AH7tZAy;?T@*70uFRNs%A!97(g2q| za0>bvcMljkW-wF+50*(1G(n?OP{|HDIk)JB3WDB@q1m65cW7ndC8gRMW`T$fTG=kwIm}#hW4vn4p>w>tQXpbt~R-6r_x4HDPZ{B>lnooM@}h zb3p+cD_|LCMW#tCF2dH5bJ;jS02cBglaU0J=?oEU75_FMIK*(3LLz$FK9jsOqj$kl z@@e5#i?0u#1BcLwwyNm69)byO+yS5*h%kazjk_tDoVs;PHG7hABtg?C1ynBONI34m zg#s1xi&*NQHGFEBgd(JpAp`R*W5>)cYWj|@4N5{-}vSa$8lP_ZTk5?WO6t2x~2%0sGDAh?O0H?%2+1&g(AD2{y;x`i4J1wiLSs}LS{&E*38!Ia9sZS*`K`m*_UzE zH@0H;S0B*-@&Uaupo0KHOHKnIowFF|~07a^9icyu6?Md|=66RadqWcAi3K)13R z(iI`PQGg5Kfx<4v0HxUNVd4Q0)+)~(@oJC8BWCMkr7I9UiAPW5&u*qz#`G^PP!MpU zsFNxKnd!E57|6^3wP|rpe{FO_Bs>fzsjlO#XVz5frp}lRo3EtL)688irGv=8j2^6A`1Vf03DcqnTkn)4m-VM=UZ5B_Wx=-P6S{;g2 zp|}&VGs$CbN|n8t*_;JYMpOkOQaLD@OonV7PF*ccX+_78o0A}?SP4uo%YFvy+nLyt zJCkTDIZw`pP%G$@hM`2b;yPUnp$RPTH<9_gS!QRn_Re9F7*k=&y*9{BTO2C#We;I(Cn)-n#uNA!11&GrQ5+1$m5;04n6w=zEeVSMpmEGY2w<_2;EyCK1?d9(8CtbfMl5a$};J(r7P&Vjq!kf7N#JhJiDrhV8DSI?I5 zF(kCy;%{qv5>@K{Euxzs=@`xx0)ji#@Ky98d#at%5rD7$>3^HJ;U@jXjHL9V{mz#7 z@6$zo!$(#l3km~!hOhf}xih~o40;B>pZL*V_`(-RMg--cSh}esC(IO11EL5Kjz}R? zP;5n^H_SCA06h&r`MCYsr(U~!K{5$sMRgE(u#3AA=?Jw_IdjtgEe1yoKmeX;+1erV z_D~T|wG9t7x%zy$+sQ9B zymB7K)uSlD8r(ep`P_i7=Hl{F9^K-T#0$vnZ*7JJ5AG0tgEa7$geDPOylaf@VrE^IyO9m)Uk|{mZ;C zxDharI(*VGC6Z#U94`dou@JOf6a&CgT%^%_6d~=UD{-V0R%Ns>X)icnutE)!1?0kQ zf8^Yy^=iSB&*$Y5siBr3gdw>wN+Twa1HxgIR=^^;VxmUcGf-IE0*P@A!Gik8Vnnh5 z;EcxJqJ{TfuYG~+j=lAV#}HX6^GjD7!6Ij2`A|Y+g)a%6`@f`005+}{?vPNAU~s{} z9gNnP4NbylqT$3?JxG}_h2CsHMcccps+hquLUB9Vq@-{bn~81@Ye&iJLz1jz9BG?H zL<{e`cnoPqAIconecs+r-3D!IqOo1qDoQ_UFOe`G+6F#K?}+T0G$_y#bUHz{?323* zX1Z-*6Nt5zb>EX{OF%g%-ez@zi*v=U+NtD7Umn z&1f%oP01R2!+~eybDulB`MUk&r*C}y>pwtW4Vw|46M$kv87CRRuYdiACtvxw=dM5V zYaeO!xCO9SI;y6nTz((+l(@OddA?fU>1M{yef9&-K08$|Wm#qUFUwpNE z^5;1tVI|6y>UGp>?5KZ$y^Zpq#^kPvLt4p=5H!^~fqUq&{0;eSOk>=RnD!;6;$AQ^r3@ip z+Pgb_vhWgN;ijliM$WG#S|7KA>FDFU+6C5W4wT?gJgP?tw}|3e@&L|mI!O_Vkv>A> zgfYSu4n>s>!JSwO2m}>!DG*USO5WCkq2k>IrH&1soaoan(~R89gB7I8kgk!^V`o6t zOLIr{6c){LlkS|mH&=5vZssn#EKFk@&0TisVD9>Sot(SPIGmij8g3pIsvZ}n&)W3u zBPPX^)3*!mT8#@iebnUPCB_mHu^0AJ>~CXCB)E}(+Yd5D38zmC&m_X;4j(hO4Z3f9 zO%l00%SN=SixKe2d}25w6kgmJUKItHDQqc56@i$Nnal7JUbL4yY05o#DwG0F`)PVS zO^-b$k3D=p`4~R+L|y#|%#$k>8lTL)ge-#L3^!@Xq_)zNO0t7J;K9l1VIDS@f;9J?8kPDX3uV=~J}w zcSDk%bAh$VHMX2UHs2O=Czm-*GCKvTmD6B4v6jO$w@#P&mj4a}Pjv5*O%vsUW4fgR zsw|f7ucy==sBESTIsSKNldW-Bn{LW@!>Rp)-!_Ci%&#e9pRrocN9WfaPkf6IonZHIbRD!DeDo3PjQ%6lF{Sr$29^6hW?5iuq6

      v>Tt10E?>DyRqF?_jViwy>lzZLrkL8|^pnJpf~!AKe56 z%StdUNY|aS(fe~r3?3e2z2(zW6y#qcv!|p(7oIX^=8xXlhl3Vu|4#NKt0OIeI2#{{ z=1<;|QnnNoGswbr;Eo)?5GF9B8~E#pRtHGf(XNORs8C(N1zIkAC!p=bwM}!lVD}&%Qs76J}Yt z@+obw_0>U}KYZ(3KmO5=UO#!yPkj8v=bn3ngB`M>3EVZOUCHZM-jg}-uCD6u{_aN~ zJu0vOoDq$pXehfVSAlZDJd+s8nuTGU5BtvAGn17m3#rX~I#O1m)DElw0L)m5N(ov9 z^3OxCekFx4eCflyQ-`CCpZQ+d4HzDwUa?lTf|?AgvYK51MGG^Lc=S7u$KU+xWz0RE z`%f>$|NNpg(78F$fzokFlo~xbp#d_`3Wi!5UJLy)F55m_#rtA$-PR}yahN3 zW6PCaGSNRkj~bC6xFMJ#%7Z?2HqaWfq_8y-=8UCC;zc{AND?xaJWOF|$toxz+DSN(ySLxSXv{H zmg=Q8_9$Qnb7z<54)>Znt>(@H(>!-t&7GHnxr?)NHv`|>xjXgZ2XmK@qQr;?P2Z!5 zkNWgYjJ-`xL`3zl0H6Yy6cQ07ra@5^jErSw1TeWxz7B0kNV>Wo>k4;S(JS*Q9O33J z$yRY;)hF|G`m2DE^BZn4TI7+Ls!vN0XP#vrIL)SoR3ZpR_=stg-zdh2P*jg1q#86E zMa83}VS<*@#}uVcB9}>&MIb^U3I)hMScD?zZ7t0+-hgRugV~Ba1Q2sEfR0&Xi3mY= z9T^arP;7N3#(FPg{kQ(t#IJi%<#ltvQ#&gkPc zAW6g&vT#E&!6H-!FU2jIhC~Y*TjKC3Z0BW=?Zl#HF9~zu>D3N8FqzgtLz^br>P-!1 zu&;jU_rLn3-=8U67xX2PjA%i7O9Ib3h1f%3*t^^1el8}*xqsVc6qHz=EH^+n!x?+? zeHm|U|G11doc5R|x>F!audV|CU;X3%W~x`y@QhzQ($zB>t~gw?TpiV3ySqI__mZnCW(=qA=?Pf-3b6hgYrpq< zzt=KmhUgP~Z<>lvHjNx_Z5++_CA_3@j3l+Sf0R*XC~W^W2uMoZOcc}qS+W+M?B5f& zKmGDQq4GEZN=3br4Y1M>y$q}0d?W79|J}ArnzK$ht5R#;{JQzhDn|#fhM`F&Zk?!l zitFtId1la>WADE2G^1CigxIEaK;Zy)=-A3#PsufNz^A@{FOTlFYIbgFny6g-1pVu8 zZOLuBa$5dVA$U?Q+M_9A3Ztyj1~C|q>wa%OMNfxSpc%u$3Zn@$YG1Z!IL^}6SEd)a z@2prml@HGJZEG7pZ)mfPoUDT8irW|q!3B=V)I%0wF(Jk*+ziGX(+R6!2@b2rUFyb} ze|NOw*SwFGAju*Wt{ANgdbMN%Ned9u2g!+;Oe4EVe(>l!yNC0J$%EP&gXSTRG7L0@ zVsx5wl{-~}oN*(GGT{mup%S%FqxmR6866z1xTW6~Oqt7EnG0bFE173xGc~c9ru)vF z>GZ$6MIn0_qOn7JD7#E}LS;_XT!#dbr$P#b$+WkaL$8%lbx`rSwJFmvMWhOZ`0a#olaoD$gRkarw&_i0+M_9=N}7A~LAN>4W~kz1D8*_$30jJ-cyGknUGAzCAK95-3FSF|(# zez$u%N97AIyz7&n{J>xQ<@eid0k(}6##`WQ)xO-19aWl*dIPZA4WIq&OBWvcSAX@R z?|=U%?0LkOTdrSf6@np&*0zd!eC2B||Kk@veSBLp`^>L>_>cbR+rA*jcT)5(wB^l3~3*xFeh1Fqt<$Cv@K6LxicP>{W)H`k-{q38d{fBp0n8ifj6BYwH zxl*~!Nnr^5=Bq#X^?vAqV9KPJ) z+^w!ZF?W%+O2!zRpFSK;ALi*BBPIhUw^Y_>A{;AcShz{DAzGqfDZDh+Ku@4NYYgFu z-Ote`vHI_&IRzOL!mBnpyt546h!I-3)*hNd$l_A^@xAS+Ou7>@EXm zke5JFFo2$Ve>#9W-(v8(#x3$SFs;X4yd#NMJ6Oumz*ZdvfIt1x|7U&auYdl(T)#?Ah1X&+03ZfwF1S;8$5Q{B#P#mev{m^4utgj)kf ziLOfAvwK>B2xkS@oYwP+a;Y!ZJj6=;%9sA@U;mB&OT+{M98?gVI`q9_OwabBX`wUV za{q63^7Vo~tp3O&nc179Jh_^eHPL65h$v14xOS2904Qne^|C3m&c!^d6PmT~^WpH9 zZJGJ7ID51)ju+YyaQ4*OLK!An7K{0B%h|VXOAeL?b<6;4&n%-P4~xf0_e{C+-SYr2 zjU3;sM#!OxtU9Y8dP>k)96U?Q z_-J%VDp$}A=(1}B27jZegD|K{$~0&SlRTF*mO-<_XKlP7c1rd>!E~c9FW`gNZQ30ESr7rKk=WbbgInr{eWJRfH$e>QA=WPYmR-Td)D3`$;U}zUS{#Ldrk? z`HzP1^{*!eZBiHsx(wD#c+;gi;&|-R5BwSzD@wKU|T#`V05_NOlmrw9r03Utny_4+A zfA%8+vs|VCIqQW$BlB{F7>inJd?m!Dbu6AhFX_$diQ|`|YRU}06UR%T2 z_3Q81fAQT0v>d?zm>fkz01R3tG_49ly66SM1cw)z*PRrlm4>wRq=$+aLv}KkEV^1BMJIa%3K1(RJ@jY@=cc6ANnc;n4I|m`ny0-5FX5AEt zk}$Feq1k>!2ooKKKm?1LLgO=`Fin^|gqy7BBMQw5^z6>MAWCLPy)l|IrBcV0b)c~3 zP~?j9ArqjrdZEkQ@zUJ!9&;B*b7wHDXt`(SE-_+qJ$Jp|$8*OM$KV_w~waJ zm@$qmJ~F3oq|-d$&LWTjgwF+qoBt8Q zx`a7tK+H` zBq31Y3UL-q(L7^5MGL7AdnS&k;v zaTI$H5ODrX({8KM}$uYKwNy}rfQzWD$6Tqc8Ff66pJ9?XNre>Mc<|2#41-=W z*A|2Rm5;r8`SL&g@_!BBv%md+i&B~KS(+%=YJwhwbv8h46MAy5o}YM1OZwCofB?YL z8+-zfUcTNAi&S7rrTjn;tS&xO-j*jFwQZu|yV?RgT|k!a)sDBorh35nuk^^H{OsK0 z?m>?QaP;o#1se}0PQlJvxX%l22zdg4n&qlg2H7CO!b`lVGDHb^X_55|3bvPDdC(Xc zGn58%CM`+YkY^j4WKR zLAo1+o@ihQ@>F%Al>%*7ZQ1ekOx+Y zdDjO4CP!m_mtJRn{^aR1I@bp$S-_zIP*x#FI4~I|W#w}&9FZajS-7TrC4piffByUgbdHk^6o9$NtsD{8E0yPAj6eCDQ#$?LD8}&E| zHpqy{J_$S~uGqlF2G%V(shgp++6_lujHawZMX*{jaAcwCKhmM-Y$>>Z}`eVTe=5)T;A>os@Bqi1}HhR(h_-OQ3HcB%c=Z+`U0KYs0} zKYgQ9yK*fQ-lYiu&IW;Ij()!T-OqmNQy;qUov(cLKfV6?O^P!R$w=tuFBq0eaEfU|$S&N1uQ7)tm3W{CcWs25%u4`wMOj zK?6ZzbjhHY>(s1^U267XWin7;dziJD`M%fys?{t>tv6pSBq*F_aa-T@m!JLFXa5-G z;&4^hr@zY|zmU9IGKwq!VoViec!$0D5C3Dl|M6P$tKWFf@Wo$BgBw{@lF^e^NFACZ zW->za|FoB7wA^5nS-zJ^CV4+olQEh{q(TI$nAwhCNLVInkpK@vt7DdOzYl6(a=}9R z;V1|z5{Ze?nZ?_y$OttCHM4Kl>;*zWpuY0 zFe^8*L}~j9V5&8q|N0n#5Ox~QEbyy^)9*H&QeF)(0xpR_aIX`ze zoVx@()slNeR^4tE{)xF0E!N!HRol$nsgv^5+?8(Z<(OnaruFp2(e$}Iw$q2r^vOaF z=9!o7F^Sewj5P{&V$*$o=WI1OU+k)&=Pp|r!G}nnl*NSsSvS~@rB<^sB9LKH5~A(N zjk2Lw_CR9h>2_*TI@Ou>kX)##5+VJXjSwx&tekvq20iqiw5qd|Nxg7#8;A{RKn7t7 zgcULb1(u@5I-;{VUypEcWdUFU(|_l>#MKKG&{0TApPuoH=fog~txY)4pGX@@hz1gjz(QTbq( zCEFEMl@Sg{J<318daQJ~BHYrVEWi0lbY|LB8Mf1vmer6HiC!cC0-yj8Edc_!&Dm?s z@zukab2WRfz0W@9o(n)3o^c7Dv(MUV&2G&(<~P3ajgpUR2O@aBWlsjecuAjl>h|*M zR;veD z5?F)RXrRTs6vRsJW2T4_}8FBi46!VDa@cX@>L8_{qeQ$Y`JpfppVx#b8W`2v|Tyzan@}A*cnC zFcuY-@$5D+J|}PkihX;n>LRaiN2Go_gtOnU0~|EdfS% z=URg^u+V^NvH)eV!!)Bn@#AI|9u32PHP&H#|HsXu3TSX6o!~;t=baNj)|S#}M$5U6 zM;IGp3Tifxp}-Ax-aNDc18UzDTQHm&Q`lxg#MBmSAkJ9rN6SOO(QKF|l9W*{v=2DfjF<=ic3odoIfA)w`}HdK=I9HKERzSk6*iX98KF;+ zZzEbOPXfROWNADSXf?~ngdHi$EyBJFUJOEso&bXqM7Yggx&f6_C9(~1B7+GVcwU*p zeU@YN9B`8UvM?`Tq1PbMJgJB<1Rzzdz2L}}UnYx&2a0DyhL*{csBl;fEfC>imU4#Y zlzZiVk3(x14tj1PdEGE}u>wwj&W*8K_3NYDo1;7J*a1KY&73%P;(Y7?*+j(>V=jVu zSr|JXU?4#>*cpc}Plk^*9WW)Z1q2*0_Q#v!!Hbzp3QT)W{3dysLX;UsxO_nmeq2SRzahZ$*dH49Hf*K&r*?!UdcQAn4MTU}lr0TU%1>pv@2AOS^x>Z3$+iSrMbmG+HK- zCwVG8?sR9LYLKAAdN7v*{mj4^$~X|)Wut*x)AEU@Z(aT(0N}y|5G{Hz6X4-h z-8Ii`dt~34#k6e32(3`Cr0}}Op#%S9h^6OC! zp5$Nu`qw}8(HDnbAN}_K>ybbBAAnd`GZ5bH154Skwt>j0vAt2snqSii?zwU!fszv& z%F&}YS~B;@E}QbYuzr?ryQg&vf7)@AL6GgRvS^CzwNC^? zh;Bd8E}C4h4FyhT$Mm5mqPMe~#5I;u(^`9h>Bs=~SJ_=b?g0=;0tu$qu2dTz%mxO@5Ku&OVtTAXgPGsevHnz*bNHD2V194|#MjbX+D>rU(uFQrW=woywIw51C(q6Yrs6Gko1FZl z=@zyZ2Sy$4=#uy$j{PR(0>{7vh_Xh7E4H1-ARG}TjGDki)?mAO(xppR?!W)ZpZ;_w zEh5UzH(&gPU-$$qGno(+#auJOEf=#;fAp#r$&Y;aJst zZT6=Av#`7dhl^@6_m}c|Acwx?IT*%!H^D1c)<5{+^Upr_>i&Bi9W`J6h4;1wIOMJ8 zBhNQ>dz7`qAo1jG-cxQaK^B&;WI40%EccB>cY3z$DN>esYzh-}B9eM#k5?b41XTq5 zNP^)Ka;GQf&3|;yKFyUVEA?M~9_OtXG!wImyZA9W5>6?I(h?pUVP*u{Jr-D zpqw+kpkR<&&Z+BC-?Puw^{MOHZr!+3$TedC3Ug8BZe7=QU6Xsbd$(49^+Mm3#aHNo zBxFG@{c62#x}JTub)VKB!hQc5Uue z$L`|N*kN<*I2}7XaO|*S>_o3)xA0;wjhzR@G*)bt1WP>Y@cA%&<4#WjF1KK;3nsb` z`CBTi%YfJos6_UfuFymfZk!r?7Kex8zGuGy3yz2bBTYg=*>oJFi?R*?kqV?$^3<7o zR5Vx2B{oqbmEG#*?KL}deZ;sj12CwgEF962DsToe4~gmP44qW9I_d!oVMJj@6b#xE z)Nm?PHbetNXR#^COPC7iAA$}giJ}8IS~=VuaejaoY+WYM(6kZV)<8L><79p4N*7dV zY;0;wP3ny$?Q&{*OBv`@XG?hRp%q}M@njzMqMS|B(?-yNWWgq6fTsq48_1fI7VzS^ zi8EnL_{h8gFL;TG2@N5q7t)_kPeOTA4e%sS1xOn_y4%}myq4zJop5geP?RIwAg`k|2N}bXyJ+2$bL30bJKHrIJ6m1xFeU;wUlj8 zPqhvz2lZxzDYes=|L_Cfh^lhtV7tBt+Us3vWYTan3aX2){okI4-gn=9hhIOrW&+Nz zCfh5golL*R$QP=Wct)6el}DxaMc6a1`OjdxqYmzk)ugQhe;*B0n8{Q zGNVawSFeGZCqtx&WKF(g#g9K2D7DOvNTn5<*I-x-hn)pG4!RXbS?bcdla3u2T{HpR z2}kajGc2jSm~G{<*t^GkhLOr?G7ToL;AjR;t2CW9vuX!DX__Lk?6i>|ub5`jY7dVJ z7wM$0mR>!U7hEM>cM{tyAYaY7L(}-`Vm`W2?TwixWse9JcFC`>>#6K8u?0QnOCZ%A z!HVS|m{LnOlb~GE`)ulEjjuMa;nh~LtplTrm8vFwDAnJZ2^LBVrSlk@@B{{m)DtBi z9rM~k^?tKweCvk*0?>aLSxL@|Bn#36!tH zsx+js#i719Cfe|h3@1&CRS{~+4-1pwu)&?br-53?YHoXaWVy85CH1DUIR-a)3d0w! z)T+6`(-BDoQJN(sj_L$JIZoGQWpp|cAZesc7f%)(dEXGsM`8Hx^lsx|%?$=%Wae51 zr9@ID6oP$|ks~b_05CVHueSv)53!g4Tvvg$Jj5=tB@c~k06|w1hjmcZk#2MVPRo|^ zbS2rEJPR{(T%VC*8TUc@k}1=`RUEEUML*3XQ(D6A5}4R0ga~1Xe=0G~Rl`IwloOdJ z%94W~P8T!9*-D;DUPxG09MeF`ScqQR|E7aj&RfF~+rn3uRFb=TVNlU2XI{H{hbgUO z7bH==`DOECxn$UHE{ zKsWP7$fV3j^Xd@^Y0ln2airtb;($mS=4Cl!n(ulI+SV>#x%}<#{NOMA*S}zU#D{@9 z?zrXWzx2uP-~S{IK;H?ORiZu#f#hdC^PxRo`N{LIKKaxOK*&)MYP=tJcK~L*cyUFL zN#qn&KS>KjX4Vg2pfcB;j*m|SQ#WpM3R5~Ilk}bMK6UH6Z@l4#J%BQ9xS{>(S3mT- zzxzzL2AF!Lqr9(Tk}T}Atn5sPHOdhj{%kpufLTeFEkMrfQi6@tc)BBJt9Vx2B`BSN zSrp1=!LHak(&ay9^WhKlcRsr>8zFh+_UDg2_TK(Sx44^V2KYzb$bbGxq#+xV ze5QNih*VYe^%eu)H~q!QSkiCvwU&anKtY**HWvVG-2djwk;@Hi$^M$e7Hn656 zH6%n@8oZ&K$y6KQ&VlE!< z?S(C@5L!Kj(h&gQgkC)~s_ZpzOe_Oa8wp9Q0P9#ZC{<(4Fdw@?!dpU^RKr6hy65W2 zpEoVI&*OhlX4J^Z+rEB$?(~pGmJl|?0hnl4misIbNL39Zn;{Vv-&F|@Zc--cIk`I{ zgQbgx0F`)^?O0Z1JmSo9eFO63N7Ezw&*{ewy({-I1OG#dm&LyDe zq)(a}3sg0ihn--;ci6GNId&Xt7BLq9gPk{hG%yByj9;Hm&c~m6_dX$x?|<{&Fa8R) zUiq@qu{4iWu};NS^9Ls?$qzm7FYfvLuhO09eL5e;S9@cUymRr{LwLKQZ%+DaF1!2$ zivxFpQ{k|i)cf3CPjs97lv3y9f_V)`pG&Ba2CMdY5?Yib#!0YW>9Ww76Fy=m> zDAEge;ecwZ-9x9Mo_v|j!s%Jwf+=2icnL=VsYG{WfMzYw5?Nm6Rg56X zM9JJTe1xIg1SXNqbQ6e8#1eWhTVBx+qnmNV?jjj!WTakh;VO{?x|z|kd^Uf`R5@i5 zCb|M~3@lg=<#8e}@!B={j|0hRWE)x7=vi1JHITU#Vw?d$COkZ!R`L^LIe)~H=_)}l`?9Pe<06y{Y_rLPW>wo;rD`Qi4wv+X*1%1Br&iCGY^TjURZM-$M$y^rC3|i(mQ3ogZ7EEu5iTz1scGfBMmDuU~=ojn*|5cm2V4p8T`F^y#MA zw{5)t{Wsrr*ZUrP_*KA|nY;C#izid0sGz1&f0vS!APwxm$(lQV;W-n*^wRQ7@ACF?WVRb#+YG#cz4pE&Wuer zX~C?+l3Y5!5`yRC8STp83fB|>2m8LQ&|a>cKxNPHCIHD0fG_~e9V_M=>rdcu32@IT z)7e(km3{77cMK^px5uv89J|$FV|QU3I~+20+B0^OPV)N6_HfK#Xfjph5D|;l$B+&; zJaqUN`8hUkSMMs(qB12hAT883qG9!B^P7)Z__Ucu29wiBky4lk4o`PwmOZ+xA<+nu z5zGaVp>=MOZ(89TpvFQ&PC*$?vj^qUx8;c*mEV}o;Y6D*N|UY4!5H{OyQi!oF2M~f6qRKw@WPKz8AUQY>ER33h8iP!r%pD0d zs!9Yxv?Q9>lPAlFQK_NH-QYfEXf#7;c{4m8(E<&UgqtlIn#saKD)YQfoZZ>L4km15k!t<+KR$^(cGla0q~M{mRr|@~v-u>)tQ?jlGxK_N?=o(CnR1CU*N7%iEPJ za#~KLKLhyWov-Zr(?j?F^PNo?eQ7212}I4q!tIrIyFC2BZ`|{RzkXu%PA(HPia;MB zvtdM~2B{ILytcu|Cj(1JQXH@kSma00vi#0jcBaiue`8f2d042V{(^~YcFk~fpMJKT z`cH!Q$*fnhv;x6y4P`I{Ob?p3(@HKa9g~wq)R+KF>H|BAo}4!}V5wq`4cU9SK|w16u(^X@&-K>k zKMa8#8|B&o%4;vDhT|z$9BhIkT6&fu}}IA|dk z0LybYy}*(fT&TaEzRXaggT4@J-~j5CGQ{i!SBfscZ8mAAW9Lvu0i+2+k0S9LZ_%(? zEzZMbPsYYUV^?zqsCxfpd&>AGsvf~OxN4#YkVwSgg&J1BvVWQ2xlLthbLQawnoZY9 zN**?f8AZuy;qx<0GuO@PbGlY2U|a}9c2xC5IAB&tZ$sr3uyT@5-KmD0IzWwc|0Gklw z&VO5d_0>y{KlZ|BKKuUtz53bD-gfz_o_OLlDSJL7G%uJl@N7-tr3M-4M*1~U$DUR|Ep#NFA`SH)Z@pF%04_Th{TVGH2K9BFd@93VF z-uT4_XA2wDNT z?_fs;yWkSkh%#j|IWkM80;49-i&^g_eOc|gie7~p8{&-&GXkthHtU6(TU2qP&}%+u zPOd2yuEy7}{Ld2lPDHG-J^Hw1OKf!*|Y^oSDidL3d;);IxWf5A}c{%PSE% z3|G%qBRhR|z6$6T$ur%QnoyEzd^0=a!q{0IyYA4jyLkB6<#Ft0^9MeDm%;4Dp)2zqlCLQ}Adc$NU^)VA9i2`gypUam^wXJxd zU?c6rsuTtx_W+!Ms85NITlOMsm7--*=J-tStn}#IrWdP)T^mTsQq>D300})6aaAySoc-ozfyrm*{5blV(G2ch9Y}G88KyyU`Ou*p$l&x@ zQ1hfw3zV7NaRB>DghA{^pT`R){Z^wS%KTXjjUUR_|MCaE^*=p7oPmcQN&}Pui?B)3 zApvr3>Qp>>|2OXX!mpCX8NqFw!28eG=Z8Yf%87vT*^1ZLyfXs_x88c|tFOL#zO_14 z8PMn1)BUz zLfIxkqcq`fZq{>fNDIUe4rQCh#==|XpZxf1$>^BpoETg65 zq`Hohkf(G9)707=-66Y4&|8l#d+6rXMHy*^6imy^R0#6aMmL?Q&8E#@KWHJ8aMlZN;TknB+Xsq0m%R|W* z4qh2;QZ9zF$t+<#B~Om_dn+(HsDOCi59*@LnJ^OeM@A0dH9Zdi#o4BOahKhAvaJ3! z@*YO-AnKtECH?rG_y{ZRALZdZmF8<^aemFM#NF%F#)o@xvKjwK+ZP|SP0Ww3CB_zD zC;~ChI7!2o;;dl;GG&sQ(H0r!BrDkqfKxO#Lp^_;(7LU%K%|(qB8DtMu1*o_kC}k* zc+6#?ELJ)iP$}5;Fl&NGQXE!LsocauXkyEwK(8RP&zq0w5;z6Arx(m(Tu78O)L=m? z8rTYGq6P8{cA%$nj?T`WI)Y+-aF1zdE4j>%g$8ULFm*&O^%*>fM5qF7a~n4&PvIix z8igYi%JSwMBiU%odQY%%c}QL@-db8>R-UGO=es|DP&J$tTcQu@*tKKbwd!}q)H z1PKdi^`wxHk+*iKx>75soAOH9rPdxtI<>QPJN)dG)#VKbs zDcAM~%_2>-L}D)*V^)f&Zm^iC zlv0M|l?5}WOM8c%*6hX|8*0i*Sf;ncd{jvuk$ivKFQA(YT2Fen*J6VW86 zXS!1EYoK;Kbialv``fp2W`pvU!a;;fqN`1N3VayJDA zz3Z<#`@foM*a9YE+a#Qzt4F4J$;VJ)&_TLjGS%bruwB>V_1^h*=-3Z-$leaXXq3CV z)m(h$nR3xo7Vr?$MVW!dn)MDukG>O{Yz+&SW1j7;++nEm0w0!GJku`n``-GpQQ<{8 z>RY+N`H)+C`r(d?4S-;U&N3-y@j^}Pkl9jk{%Tu$iji}|#HOgd&)#o8q?xC4BuJX= zNrmHu>T|DJx8=AniSXOJk-_@GDy~PiO}N>#8Gv^HI=nn0Q_S>QJdqmV0}M4DmPG?5 z(h8c^r>@TfWp%2NFrH~KpPvR*aC_73dP;u7oT0Cf_ml>*a~$9cHG065w|i+aRXC`u z)Ojc?r0>lbj{1$=o7Dcch^R2Ep@apH69-QP_k(R$2~s3Nsm3pfN8~E7X;S7H>=it7 z&+xUCrI?@@BoEEhfWh6DqU{N{+0C*P0+{ZPwXzcfK z$}L!oq!Q|WQYrpwI7m?sJ^b{o@4oql8;JjntDM%^`~nho+{4qNuy->9G&_7au>N?G14IrP+}6 z#{ck%H=j9b+b*ip=LD5b<>Z~$C>6T>j4XvA=w7kZ(jnzXgEzDzc{Z$|>^WQGrj)ar zEZb2Enx)K1p-)^hZcCC#hU|qfph@Qe06bZsid6!5fi^p@b$MGu?;@Fb7B$8L6@OU3 zVv)B~0)>?1p?_2#VJu3&(Pu-zrGk7?nS`7>>!cDIB|@G?-}NS8gn)vynVK9qGUNnu zL9Xc~YD8Y|EP(O^^k&xk2GekR@yS8=oQ$33W0&A94eouy5tKdm3uC7kI|%ul$8MvH z9`#I1N#08(d=*3W<877kfZ;>Lb0kt`q2FRgvm|%OGnuwFTDQb-xWse`_G__drz5Dy z>Rc>|qC3HQc3N6dZ0hK?TwEme+UfEEg}zg9v6^}IK!iyoF$WR6Y|4pBjaxy896b`) z=aM~Ugh5LKS>k$&2#+OXhmbiNyRa=|DgE%y#-{$`k3&7#gyi?q*+k?X}mWn`0a^6h{q7Vlr#8 zk$D}waWMgA+F6H(@BhsOfNA>MjE#D5q`aflRtRW&f4CAinL#Ruc5v;P5y^f8)TiASY6@7EjA) zxK286+Er8f^Fd{YWwK4R9!A{cVF{XGp6gM3a!oZv5zg1C_wIzZznJH<>z8(-q4~oN zE1EF-Yb`c{QuPqKs|Ktyk8wcn*9j{C$_^>$UxyHsw@yS`7i{T%uv$=ym)9Q-TtCZh zOP~s5#TFlwScjAJ6mi%vDTF^V`ZX*OE{G#`V^R*!Gyr%=fw^ftKq2AqsyPuhD>LOu zEcU=)H_m7-wln2YJtLe$+1PwH>+p^!#sygxn{#f44}m~wG{4wooH&B!Ws8P+LeXGx zZ93F9s#mW%FhZpYpbsyyq!K~6bp0rVF!@Bw5*CYP8-`vsQ;Dr~bmbrs6^@O`<50B6 z$Z_i@&jl)yKVk0#9RvgBK6&8wjfd4`VbpdH<-XM~e%R53$$50x4r<-7WcW=sj-jfX zu*KwO4UdqR)kw4o0#pf(;X$W*L+g8CJ%k+KfFMP7ypYxKasLu4e4&~%ELJd(AgrF| zCRqWiPh#=uTSLhR_#T$az`ZfqF-OJ{3z1GzsX(A+Rf$3p3ZvQyI5P4v0J)1RAOTib z*n-Eq6@nU$$X`lVmM0|9q0F3>R$}W2`DrVMKG7ZFfh8%WaYMPb(x?|KD`#2`D2a9U z$Rk(Vh}p&elQOe1Erw}UWt6vz!XZ~j>(ZN7zWd$B|J#Y9AaQTK=6`{94}%U{}+>X797-~aCSyyu3OUplUi9YQV83yHh)D4w=lzPx_m z!588~$ef49%^E)r> zS&We$zd0|J{uW>aTWk$j2vR>XH2#{x3L&0b+_tdl*O*TU2bfknQZs*TE zs~fML*!H1n)~)!zeA55;=A!68ljylJM>a0s*?OyP=NN=E>Hq5fQtN1qt*m$T!}2S* zBX|VKi%ff>$&3lzxNg#EOhU<*SHf8=riU5K9EO1LqiGA3j+$(~|78y|3nu@Nt5ifN z>Nv+O#LW^QcW&=xq^$TLAkn?rpeP&4^x8`Jm1Hh~J!A$Gi7K2oY*E#(QRKy^7WSYo zQK0HF$0&JV+XGePG-Jp4*jbDnt#|c;TN%5^`rS;%&KAecjMzJNv_;r!tLzxNWWg%2 zsgWMen%VHtEv169Z-Swu^=5!2(I`2TObmC32b8YDb&BM?bQU)Q2&R;wP+mga!mZGO z%q?N6Z7mOhY#XA1qQi%F0*KH~5|*SQC1#_jA|oq>%(4ny8Z=pwBP*2XX-0EpGs;qG zjSX1C8equ)_hYzgBF7UdH)dujnD_v~pfO_@(?NnBJ*mTL5qs7geV#L&xhXm^8-sGD zc7?ddA}3;y*(rxx!IFcbu}$!pwwXdGgp6w5GS3!DN@e4&PGUt~dVtA^4x>6kU8pTu zxcnXsi$ncyJ!f*<-^VjHsVeg_xyQya;2;}?TPk~{KGW_!%-pGVVR%%g@5WfGJvsng z*Zm*<{LTOFKmII4Gpw>~3Q;08!pfOxl{kK=$qSC!Z zGxeqn`lQ0{tVs0iA|L5{ z0E%LY5e~OOKcx2LgzTwK1ld9|^}`Kou-EwLgBr8sFgOrhI$X=;ggR_I%e8b+9RFN@ zupOVDZ?U~I-?n}jsxxL?_97(*>|S_>`)|YXi&svLLd6i>xKF9oh*R&n-%=ShcTv11 zllyPiEjGA%K}mvgFb0jSD^Dgz8-^xN8R7v+14zQ|YE0Ww#>KW^=px5~BJVps1e={a z>y49$>71Ti_FuPI>n#X%kp&BZn+w>ioI%UfzPIpOg2VwCgxePKR zt>9L}`DFmX%SKu_aLFl}RVr3dT+D72F$Z8B%-EO=)=`(i1hix$6c#9vgq$crP#@SF z;mB)QOE%F?K$3ayj2*umcg#3ZX1|8gfXD7pA%exB5g&MLkDJf1dYYY0O&>E?ZWh&e z^YjP#m5+XOpTx%( zzwn9w^?&`rdd-qkjC~;e3oqB1iliSs`BL8xGjB2x_pZkzX(GC+vX7JO#L4O}yK-gy zhky9=&wuHoDeYT=-}SE5U;K+7PHESjE2blkwJmDvf$R|2un|!|pLk}*TgBg85zPt! z@Jt>hF_Epe$%7v52D%AOsc+gJd}#fp$My0w_ zG?vHI2=5zK=zP(%ZMzhYS#{V65>nobQ>VESawlWh&OGW z6UJ^RF?O1c9gM=&I(8Q)W7n0jYXlkcWb9G{Kucqn604H+*f|S^-EP%d8mMvX0@V$0 z-)u5`aT}I|x1NiACP^?$vXt2{*$t91ubP|&N>qd5TtxK;(2^>ZwXfC4DXnsrCXg8k zvt;Iov6B_hJW}HU1%uvd7m*Mw8@ibxMc1JYIueZrvLDzUvDcb8VA)-s$QB0VOcN5= z5QZ$7o5MggP0IOLP(|WvLl6Asp88jYW8GEX!g4Bwhiz!=w%cy|=}%`& z&s})mWQp5{LH~&8lz8a=f4(OVVJv-uvVdfO)02?j_ECwJ zKJnD;=XlTkU9qDYyZ-Vv0Mq-6nH36ZeZMy5;jo&2ayKLUni4ja!!smhu_2MAM3G*^ ze{CxmZq~n#Jn%07+OpDrxvlVL5Fq`#F|o}r_T-b+g-d%`M{@Jt}x2UJjfA| z*{McNk$$STRh-p52p9|X5^5CI`4tNm2sZjo26J~=RlT!7@F>>&T&RZw#5>DmaD(?j zjVg}r#1SB~!I0Zkb}gPu4ueCAM{MS`7qSrSq%*IOJ7$^|&mf22CyqHY2IVIEVX@Gq z%t)G6GMk(jc|CjTi4f$*wZIJ?;XYy{?ZLk>S`5Es^WOL_2hEZxK<3O z&SGVGrewWO@udVoa+pgI#(G9A5zi@3TP*xBLMCTVw5dEU4n&gNvwSrR9ff5exxsST z3Xrum$;%sBQXGv;&Ed5QjF?D1NfYHVc&5N`9a_otH-G?SQ%Ttno#ot0ARrYNf>=E+ z5s9AF%Sm`s4(SkyXafG|2hYFj-8X*pBPZCSd$3eS z#5s~c1%gbv*<+7A_n{Bnw&#mC-*n;5J8ysVkynPS2@t_7x17&mMSJ6ot4}@sV*TwD z_N#*q#;uZ zxshbb$MjYL;k2AA!E=3S!xTc52i4HKh3Prz?kzX$tf^*@i%r&;H%tVpUV5SA7aPuU zqInV98Q7YFxgcY>;x%)JkTrAf5H}RJ_Mi+_!+UCd4?ECwxkqul4Hp;VS1Q6Ol$b0R zmoij7gU4j-* z_kiOYTPL@SUR-%fiAw#Oz*=1cz$93MbObfIzigBeQ`2Wp9P)b96iFNj%O(Tp#K4fX z>0AY75x(_B91ds2Sql*J0KMs0j}97ga>FSz!dYdRM8IWqsb@+7ohwBgii61|A_Ib% zVA&hMXdRKH1a^`EJ*}-6w7K`G>K@hLf*KB@srf!M+%O*O$IT^@be9l_%AOB_8jRt- z#xQDji!f|=QT-@TONVUx+!BC-L-Q4Gx1GK3an zSI=15qP@XJHv&j~50|Ia?#GSK0t$z{)KR+UbHDQNgWo*hyJNZUzWWwGKNqk0HI_3U z4BmmoJQvQRG6`p};Lqtqy;SO+dw4M^lKNyzM`8o-&HHkW4T(O*OVc>}mf8hEoOaaq zPqtkd2+u|B`dkt@o=7*{>X6NG`P9c>KIIcncs&Cn-oRPeuDZxS(5>k`nxvqqX0I44 zFu|br-#>mhEm%Lz43+}APZdO^fsl`kgMn#MzFH&b0X*{1Z{2n8U+1K@DhvB?|6%o* zgiE4qH(_8pW+-PN4`IwqSfrenv!sl<$x7(^$KMonhrA&dEBrj$(PTM8K3P^%l26G&*IpJ6g5a-7px|5_SOggO|M zt1iblTcwB|3nTp0-kNQ-;`)Z}S`U{$cSU-Z2`^P8#I0Na8H!g!j4WgW@x_giScCMc z42}>xtFX~H;&WgH3&a8d2)F&zjI7nz(XO!slK^$L4AZZkLI=yX+%m*%5iwRUFx6=t zI*cbEk|)+@2Kz2BO!kl0LJ1)4ghvm;2(er+6;}yzd3T&-&1deq<_-FUsp}i}AJ;}s zzr1mojh73u%1|{2Bw2#_6z?9tyWzkXdVOHbOo%~ox*5MZulPbIn-&?mYN!Kf$uoq15-NI^FU3 ziA;@}-n)_-F%H?T>=(2|V#`o+iijiD%po+1d!9yfvXbKEbZ0L60VZ_&Ff~&gNMYeX zGAZ=H6IdogIlu}M+!-nq0OYOLsDA)Z#J#zpC!nkzsc8Z9m0jdO17yO%LOCJ;We_d{ z+|&u3oXSnDYYgr{t4%JDGL%61Y1zTn0;ap9GiNo!-vWaU{qG%N#l!aB4P$Ws46eP9&)p8W~OL&C8dcc>KAa`^<;;G~u(K{lHJ2 zzx3)WUBwY{;5^^`?sK=^dSR$IW6PSXO-+-&^u>=h&A!F%{s({Dbz9R{Cv$l{BliXV ztB}?yjt4Q0k3as>yKcGo;Say-@GoxEBDkXE$S;GzZ19Q;J964c5^@ocju+A+c%WR& zaia=CCSB&pGEqwI$$NNTY>>3dYdd=CqgU_!A@+)jl&9bMQ~c;d5ED11B zE;eCi$&y3d4Uqq(+te$J4^6n$$O>VjDXQ$o{QoT8>p+Gji*RT zZM~4n;#WY)P^hRrfO(ZSVQ5ZQ{4x*#NF%C`O?B_aOdY}tLm8^UOe}DGv3p30l9@#K zn1ZFqtA@k}b74jT2-OZw(|ONEf-r@iEmSid7FNLa{7CTsJmOUfioExQizOryMH&T-L2fe@LQ1T@k-qlZk=A&bem zkZTSsENM)N9hr0ZmW?#{xY#<4qUdFV9?p%U@`kE6h#1^~$ORFuE}yd3pB}Ls&ea;8 z1OP}SSG9(yndyigRH_uo(o@TMZ6CgQUR;}bdGW;;5!#7mK6r|=YwpD6(Qp65!*BKQ z1K+sk^M7;rb%VjQ3s&A=-U*=dP(JnXpPnzX_3bTECh0UVnUEZl94T*4*;a2LGX+`W z*0{Aau+PZ{0!8F?F~TVb&8`FX`A(!=83?amIRgoLf7x1U&XWPXONB$0l>1>DC6KG9 z&?uU@wa&(A$*!XB290v=r9W?!JqZ53K3wvY4`#{6sys+5PPreX!oM&v!<5D-h5 zEGOkK^W&fs!PZv*7NmvF(Qw_EGlSJv-lM_5m;q$(B!gjJWv0mwr&=)~MoPlXS!K=7 zN}<1gWuv!;SEZnL^&|@!nar6Zj~d;C8DD3LDDQ>ywyLnXIBb{GB$8ad+hm!ZFV{0f zV*hRD-&6J5O{zJogKXQ2z8`%qm+S>60Z1vMOVuNoWsB(Zm-<3IanKixEG&lh*z5GsI$!PJT7GQr(efAsiI zKJwA`Uc9)Iozynz?$5sWcmDG;C0Aa}gZ$>3>r0mh%B`mcoJ%n@srlj;_RacdpL_M? zmoH(m^NnSu?|dopOpv?zr7wyb*<*7&*B1*bQ^Y4G4m%KuF1esIb-KiL@*OdYM5-h6Z+& zku5+kQv<4Z2E1ER9_NlH=I9nC4^G!j5|6RL0Kh*d1TTu{*Ks9=ox< z8g0!%DUmYB6c%$1+Hea?Ko2x>7>|rArvoMsaKaOUweAC7dy@}qjBJK=&jK0pGY|@F zJ+@bcVx-LQS{p+9fh4Vc8rD`;u~cnC}dArZsUFT z-52#Zja2JFr7UfeJx9RTzV$(!#pJ1#RL-&1z>Ppz7#|v zb0xysxZ%Q0kTSd@)sPADLd@KmSn>>IPxs#Qg})Ar_Q|9@+beCoM)*JdA2$g=4?pS8zG3YTuOM2vi-vV&g=l*JW;9$y^lgL0`m|7`gzV++%^T{0~uQ5`~>%L!|AB7_lx0;S)knTmxv_>Ml+O1_+Nd$qT zM5l#Uo#29`zzJnru5-f)M!YF$>=Ji%aP!p4zr66D7$R4ok>kk z>0+5>U0QfturK3SaU!<(c9p56SKVLXSxl(oVncq^0hONLq5P3#jVGP3OtAfxef60v zk7spyZI+$y|K0%KonMN;gz?v@y9?zk6Di2*^f=HYleouAB#AJIv;@GthngK4o&b?4vO-XXinEde&vR(Fv1owC&Q%EwlSdrZl|3lQ8h(NUiKSY-D` zy79S>z44L9PUbBp==0Cv-+dAS7-D6z1a-ST&zsZMor1GzWT^)oN)VbhuRA4gWEb2n z0t~Nt%2!PSduu^uNlHzK#vw;wLV{=Z9hB7^xsj2vFj5;M)D;?ORAoMSH=Wm6VL6R1 z$J)u<*vwF5Nr;h>8V}V}y1wAQW=^a3Oh=XsX6RfV@_eZhfd$AKnT<6kl}vea1)sFcVU zl;Ta9Rz3n4_xA=->I z11t~Q7^|BEYO-8N-ZipJ!I0QqFl2O&-o0Hx9$_^?Us%13{c8W?5PMpmr;X-I>3>S=b1ovUx=NCTS-qc4B$x{(p9E6`S1i?l1nW z@{8wWE;O{2u+EUNb+Z!t>7gL(^$dHer<@z+JN4+CJFa~_NYK0f^vOG4ImZW$PgE{R zhlrX%-6+5n>42Ggm;ldeFo`QVoc?^~^6>q?x%l}#pZgU+yI%R@;|1wFRiE?h7z}K! z9^>ma17cK!l>fWG@~Qan(FgzKU7wo@OpkXhCQ96GN}itJBSgV1PX>%B*%~{Hnc6v(lK+>LRa9Ejs_msF*{ccT)itp*!&^zO9GjezR37b^^GnD~A+-~ONPcvM#Hpgo0*^Js8Ki6;sQtR*bhrNTk6*sy zJvV>+<9D2)4ghilZi6TyL4k&)A3gi}``>%Z9q+ki*B6^6efi5D{{Q|jk9lO?ns+Nh zs=6dai+b}t@44xNAAHxI20s1cpI*JXcn}&$rl;&Q9F#$TNE#Fy=wScaYgZn6==po^ zJwXh5@n*t0?n#O%n`ux`3v7y^lr=#&B$=5R3id}rqB-4WuTas4rI|uc(>!;pn?uuq zM#50pv6k1e3*F;4=VJ>$W73o*D;Rp@SSu zG^O?^`@4h$hI~w>I#^B~nnmtL(%7`LL;>AZxM!G!A1}2sf)+xlaJpnJ&`Y{ca$-;( zh(V8wb!B$sK#eQIbPm?A44~i!6C&A$1=NYa^N39=&-^HR-{Qv4aDNNeLIS zzguX)9+07@I#@p+yEGZQD+i3-@qFygQpOzxC@L0v$8Pom;B=Ga9N7yLcOK|`iR zj)$r`m4xgCn5<_82pL0S$Vt`Y%)Mxf5&hNl8-j97^O(%=5w|?P2bg*Hn|?2r)lTGE>+B!~}ZAu2uIP zK|W0vR69ekUJ9-9)Ln8In~NzWcN~pojJCdr2$kLIjGf*5ZRATXN@^_5v>!eFo=<%2*&o~$Tk+)PaKfB|IfUdHVX;|TKr%D1N%CDUiZ5hHTHp*f@O9CSSf`$bl4$fqwCW#iBS|ZFF&ubp+$=W6IbB+GCJreeR_wWAQ zzxVh4-uCB@JoKA)-}9^WuwH!FI|x_{(Y^!L_TBG(_rCk?i~2wM;BPHr(1S=cu;lVw zNSw>B{;8vHeB&Dc?!Nc0P9YnT8^rA$@6x#24i4I-Yqp^3vvU$z!{D}gvZqoK8D*%G`tJd z+gY^r!-+j22};e5$1I4IES3pMa`@?Jwlzxl&Uc@@<(7-L-+t4l z;TCZn)&pK6Xi5qW(!rr`O(f(g^)-Y6YE}X3G8x?E{g`c*j=t;O`|_bvtHJRvJZaB< zER}p{Nn)G&u5W1qQ{)pbE=p#o0W;w8Vi7k6YXr-(i(tc6a&yZ1q^48O^xlwMYvL++ z5iOJ8$!yht$;HrVCEzr$0bMQKTEH#m;^(vma93vjCB_l~51S47rR8Neu~DAUB$bE2(kMDFY^NlAJC=Y>|%Kd#W>c5409?Xo5jI z)L6>oh%nZA_sJ4u?od5~kw%l5k|{N#MIy;k53LZHY9|P3lj_)|i@-2;Feb56&df1( z$HZ0ehRN8qZ|T@Am05_~zOln_SwhP0*&`vGA@-}#*>HEYK$Dn@r&vjT#hAp#Q-eO6 z=gq`a1<*G+-OYW22~uLmJcG23=sy zN@AJhF1U+k;V`j~4W}#)y(B!Aclv!=si3(FJab`Yo`W{%O9GptdQq6Z6b8JIcJ7O71#mXnaHk#g- zC2%qV%1-Q*noK#GwlrjK7mRf_$!2%2uYpyI@E|z;?VY8&=+D;-M!cho^)1_HDc3?=yQ}u9{!EHKleA> z+>|7R(BBZgGcOAmG=NWi;%6JzO)=<6u=y-W)c!I>p8-7b(7(L<-oHBh36m9X57aT< zEh@YBfg5M`vxFsW+%XKj*)nyIut}}OE_-zoyx3r3PM)>&<T$kB5wG?_I@ zjl*DsX8@GDC76eQE|fHw*AUTMEYhcfl&LQAeK`|Co#WazxXBi|t7E4a$YidTh~a`* z2|3`W!V?jsB9B;|50FPRDrA&bdj1qV5U?Wx=G4tRC7QA8{<}Umq(YF9g6|d0bT%k@ zQ${8!QyJ<{bgZ6KmI>)+FC{Nr)U(uG5jqPmES#VRp-HyN!Q%#qECE^r2zm1H?7Zh` zb4zU7YY+#r`RB3V03#|o`^MfUa%(}@H@;a1*6Z@MOPmN@rRWxBJB{;i4U@*tDB znZqSM{%{f(Jtm)!X+%ExSsa8umj>h8-+A)S{n?+p@y4SA>O9;rdAh(%XYuwWkPb0) zo{nFBS!@be#g-+N!pJ~(Drv;UPc49iV7UcBRu8+P4C(xZ>QaC}@8 zY9~wo^&`$q<_*1gSBk(H0fPSUqtD%Z^Xj(SPLbx3rlze>LX7aVJ6s@0SRz0vbR-Dm zI`anaWf9bk*!*BFGJtY(7HJNnJYw;c-P~D4qXlFpzvt!rxn~ZpI=lD0bjxSozy8q* zsNn|5npMudxqD=mD=sFt)MQ#F3=UAFTLP(GBHfyps0r?1m%6JEohygbtdQPi`EvDc zl1zeu5M91DhqtRlA~%v4d4SYeb_S<6z7od50MLyM*^!cKS_BqpN)s5J=JoULBv{|7QoMNnBWEhj*ND+1ZwR3VZbTRct$ zr>Z1Tc<`+Sn$LzWA5uQ^bFcl;WADa>Y5u>L^2s}2IuJ#@_X~gPdZ<#IX9>%sNGH1& z6X7g|+?iXtjRnnddjx6Q( zvd^3;S-kul2;wGVf;MMf_2qc?%|*@GrlcVR#mRal^;3O6Pb6PRSG$l`IBh#nEW z!Pt>7P#U+6DdSUiXb0?MK%cgpMl+gZj+k~BEjdyFXPLYZ;|!t0OA`zd(Vs^xPjb&3 zUZP!Qkja8=;IRuMvRKEv;~|Z7k}~2Qw%2>>4KQyX6C_1 zBxNA;F}Oz4eE$c}{8#V(%pTQdGk)}=w;lMzJ>@6QzwyV6bpyq*EQA3jM9f%>)S%)98tUH`TH7;ak%N$Ythi;5j&tLJDQr zn3)1HkSvF$N2X`O1&Ef3=I%?~&;R%|)dtAR_deM?^~qR70_w5`;YhB8Tq9-4lQ{`k zF1o%YmOPmfC9__hl>3x>Wn^oJmBB=J0G{1eU?&%v=p30Da-VwlhA^{k-RG;YhD-#_ zOP)3lb#1TeD%^U>Peq=c*}EtcY;%@Py;Wg?4SZX;C@(o+X_*YE`Xoz87rUl~6S$n1 zlp{c>$!OiIY#UY)W;7wWQfnrQX<3Jx<ob3o)%Y`P*$1ZzAShDW;Eg!qVOxQDa(N6&2kY|Hd zmKp)Ms8|^sv$U|@^%FvSkaO7&M=EDEgT<**YLfv)tTxstg@b6;c;+B z(RCcdtTs#&mQ@)nyZ{RlZC&8#DCzA?9-im%q(Q5B1r6bTx`A(Z7YRvqWKnPcW^mBta+)35tMIY5=usU0L;fiMAjxM zQ&)hVas&ij_&oI{)gD}$JcUgh>zY+{m0c^3ZzlL&_85_@wCkOvl8cwo=RIW(c~_0> z1tfZ)(rq4%H$e04C!Pev@2ernG;9S_;ue~=rTgJTs?iDin?D@Es&jFO`rUxb0%}f^ zldtx7?Q9fw0D#*M5>3U&GoE=jy85K^$ZUh2oG}l2vqlFn1fX%;5c$6xpmo{SbcYhF zL@7-w46Jx34D^qXA!OVswi5iGC@yRZGYvySHK*~}M_982HZ%Qj* zzG`O7t{@{=f;G+EKRf=?V;faF8NMg`cfHwu;!Qn1(%uQA#*OA)ObesY+`@qhuO@1n z-2pdK!WFE0xKSx)FL{AL&kiuM_x1uaz)ZTE2}X2ScP3(S)w{Ux&_F_C0<47%IO z`d*C{L1P7v_KfpHE+h^HpX4W}YOLxgs1XwGjb}CFjfT z<~cdccmbY`9k_0gQ@D9!cTpIrfG9Uq%@eUlnX9g%Y%^ON<&3Bcnp{X02@)gPY%|<% z$UadPSgq>VdD3MZ_wY0syNkovnf2aWV1}5C+09VKZvB>yodlbXoemhg`dtEm_W(fj zl4T~aWABI{FB#Yy8u8M!MQqG;ZBS-|O0zPVD=Ph1&jdmf4x-Av!r=)`@ zO5c-el|$b+unIZv6gMycROB62{kg!;LHNpU#p4@E_((!2f{vMhXhJe&^jAz&dj!Cn zRRk)!XXdr3#}Z~#SERW?Hv7Lbmy;}@s(&vRt7cy$TuE{xJ7l;FNtOkfUopX%^6KW` zeUr(&N7?B@HmFdyJUJs>q)hIX`jS&q9%%An`TWoS>b8M1T>tC8{_Fqx-~0*+Gh)Ji z8p1_kXxdCOf=Vot*~1##xbK3aWuc77b-ntac!Hr^KYV$>R?hqgcOTF2c7TWfOmN1z zmp%FYrq*r!;fze-x4lf=1BoW@sg8l?66bhi-PYe&EKfXj$BD8SYA*tCSZurHOv<%r zsqe~a>seen@GO;>+tXQhU~Qu;qSd?ZaPH9dL-+r)d%y6vPQGp;Re!4cU#Ikg0MHjZ zekhNA`|scNmA?(am6>}X4}s?v9_4rBTeh(_?!luIda;${G^I8>Ee{egJDawRK2J%| z03Lntx9&5YVkzSnU9~9MZr|HpZkhQiRxnGFpOJ<_d6EW@x+)sAX!LmQ!2B;UINQ&h8+3 z!UL*48wMTOQ0l(8rwQ}I6f}}b^9s4S3$WJJS?+@DVrswyIfZO6F!jB>q@xLlFh@Ef zB)5jSV?N%;!#_ZJWd?7ZSx}UP!V|ydWGS_(5sFSDOePA7{x3!^DRgYmo ztnRAMuH}8#=XSs~yV~Y1f-S> z#RLzVQ8IKI*0KS29$X;X@e?x)dIHdl16D|22uNAYAh~M^W(i!;at)=A4F$l+YXpM{ z?_i-?g~M%6iXlRi&Id`e<@49$kH7fA54`(*?|av-TTP4iuC5n7B?7GoGDS`n=tAz= zxa^0Iz5M?7+;rm&t3&R2w({(=um9}zE1d3D+wPr17H$|V&yA$#p1Jy?Ctmy1r*A!|F`}yphpNj{$UwVmn3pqe|2VI(tGaYENh*24%}0lCTu zjNUdWTY}WXE$FxPNZ`B2ZtX&2?yDQ!V(g9~v5uY4kS<+Wb(j10hJ9lf3+OqGolZA) z8>RM%iw!A*Wo5xg1#B0ul?j<_*0nQ61v2U`e2bq?%`WPi43d%ja8F z4tQ8~0FJyXp~ks1<;aq+NCXotd2=K+Q?+nL|c(*nw;g0>HN=-0pgb>LJ|+Siu~cVM~aOaE6mC&7hd5rNdk?he3R z%Dwq{=G(k}<%EgUWsAs1WisXcfx4$zEgyN{x9SMt0F!*39(0V63C)~Z87->DSJL96WLG@Iw4cZX>J9#F5@YWjO2cL|Hb?Z zV@|d+TP_=#9>xnERyu(q1fNj=M3Xv}1O^TusV_!mNTUQO#kk|!=!&Zrf-Jy2rj!eS zqk2Aqv8Q)Kc61hIRiYA8LOxdHw-<<1(Zgl-4CnZ!b7YeRF?{hHS9i=T;mpy9~lAS(H*A2_%^45Rvl&*BH{t#4l%redyFuhv!b;z zabi{R?Yd!Hu{jwUCv5^N&g@~*DtGgQDaFaqZhTI{gw7d44iO~ZIvUVv6Yk+mnMh>W zvxmMWN#>o$aD$cCCyw843G-PyY+Cw*KX~l&<@Nq1MUj|$(buFRtUnf{Op{#*DF?b= zy>#WFN1i?8hG#36FL&Sj{xe3=5R1rW&dT_AP~q^eL=o+KwJVV7Dfd;eus+LOo~>FK z`u_J{eCeetht;8?Z-U%hso;f^_lh*q>MAgug7xRgX9BaEixE6Sr0ougdJ+a$f6t3o ze{qgJ1FP?R#QuLDY9G7fkPT4pzIx%aQ!~9UW|xO-ZZo_~EQ?zCXNJ^_iV+IoYM6nr zYz>ia1Y4qqx`f>L8hyvS79GjdwAtE>M1ktbrdYk+15(I~*{ZI1rz7|6YAZwu_a%`X0m8G>9sN4x-rOlq|IO{TXHgohcL!2 z*{-oOq?^FieC*c4*r93N+KlFevC}z@9nLa#V=;z_tPbUz5!MHhNnNg`!^#iA4;KOfl!lq}0kTs=44zt3+Dt z*uBAJG;0ceUHX0KG{mS`A}KSsq=)YRCnuuM)AHc=zR41MwYlGr%lb}6njG&8^+b! zTXN2O{<>AkYg!d=zWL^B`TDh#DFeDXu}1a)&xBN-yVUgtX#425|GvpBui35DA2Y(t z>0t8qMsIJ-sl{0ezaF9b=rio*H8bUu$~vcviSK~_JZNy8S&$h zDG5GV4U9}?Nh!(N0*k1rbZHO`nxiuJV6Y@YMzfL&?vUnB_p&;m``U6UXT!!9iB#a5 zs9fJG_lBgDkPO!P>SAs$Xr}O%7>AIN?7Z17@r+0`wt8T(+Vd}rp=Pj^m_oJ=)|6Re zwRJ#3sM~t&-ZZbSo97e)#Mdq%Rp%0Sl$|{gc*r1ROw=QfDe~@AJPrUoSq+triyeaZ z%*XW3JVTjqTH!m6Z`0PlYb&SjE($_c&W7I9B}F9@n1(zw1s9Tu21`t7=(j2Pbl@Z{ zcJE?W5AWA$tG(?%+jwmKH$XkJGQgutJ+^;8wYmsztoZ|;J1}htIL*zxB#@fnPO5;F z0kp~80@VaSgBgZ7Q(GNJODFT3#_MD`rEc#>pj&d%r|W+O$`>4*906qqy(*)k@aqSunV1G1EnW$@>p zd+Cig-hcDW3p!udULJqqmA>z2LXg6W>dqMz5~~hR!JvT?{jl+tx_iVzJAi@!YJ4RG z|HD80$)EW%AHM0PlbPV*xhDz8T?VtXYhsOUtiGV)jfwv$a+HN z>yG~Jm+~+CWTQVWe)mp2`fdR2Bk$8kUhi&s6Z@B1vsXX!*o{x#-M?9Wm*?!3`-Gxb zYnJ*ZwLk`utcFRTu=*kv0}x=wBM zRWdR&scIEf#$xpLX(_aWw%uhRAQp4-x%@_g-HqbqTAahEMgKi)s&y5#bf)n?>m~v#` z2~cbRE+tVBA&1nI*W?LvJmL?>8&USg@jW^EaK4&OX1~hX=kJynC{1~y8*Iv#YkY#s8 zkqm*2N(Qc0?(Tge#g=5emxtvf|KDc`&E-S<0ZSqthNYa4*H|Roci(-FKmC5Sjd6!f z?utAQfQQ@haGkEVx9nfXMCO!?#w>adKs8_P{A;7h_o+KyJ5>c9dEj5%{rUe3X2{OM zM)TD#w}(`CEWweGA{jft!etB1x%stZForkoT#U3sp2#YA<#5}vQO-$rT>N~{FfGsy z3+yKvQbTKKNS!3QC6ZJJD)1Z{A-b7cA|ue8QqG!NE`d>xug~4G(n3o-iS$%ncM$83c0Cyb4WQ6inF>t{0}j7Z{*T4&mAYhL)z0 zj!lH49FBIsLlfNAmp%sa6vdrI%lL zt!jL6=*)Cm)L z0m;Ugl_AQj(=JlnTVOK7N&Dc@Cx@;B)sPw1i|!uU2ss3X0y7GSK&pdHl2&l)rCaZK z;#??1$ONs#UwGA=3im7py!hg4-~axTU;gr^PiRQ;w92ps7O^Ux0$oFf)+R5Ljg;eo z`+xk^U;4QNb&wA)FTH%}M?ZRjg;rSgG0%D;8HP`@7Hng}?CegX8y>KNWlg^@x9}J`44#w3NI2(AQbtphZX#X)aH56a zZr$BK@h{KO=PT{%`*-F)y2VlkJYPlo;0L>3`oReRG@y&ee)muD2e$$4o^qd5_k(!R zTy3AdX${P(%e|y9xTF%|9u&ot5^{eGYYEXi&jzzL<=iB?`Yw34=zGiAQzJ1kiOGp3 z=(rf%3P!oyxv*fJSUCA%OXgtvYE6Ea_)uMRSusqCctR^c;b)V}d-^fan^~Wfdna4T zi6a1NnvxbMxrr^Nkp2C9qQQW zEgw4oTYe~``lt`VyhgeS*#L>5yDhae`NC{=r+RW`6n{_xBJ*EX>@h-b; z{5MvZRGqi%Ey&a(cVqB$YGSmE{@d;KYycKX3fWk#?HI>oOsy#exla}VcP{(xdR;n| z36Y7VNLs%IXZ6!O!bLVpO}2)EHRrM>$%TAuo()iYqy)Lzymohab|hH{6qQ#AHAn@s z1GXOg{&EoUf#t#PeRJ{izxHp^Gd9o~xxO~KdpqtEA#t}d3}{_Wqs-h}AIa;nyymb8Ah77d4~#%xVJ{O$i? z@v=w1^Z&l>TRMdzS%z(kU}|}v*pe`TYRG)F z+=7I#i`;cEbUw|aB`YV@)VPHvAe9;ig%rvZMxSI}jhrjxXShRo-kvjr;h%G1<;MYF zRYXl>hOq}BsAHd%NK44Qsn5C)ECNu)1B_|3i-?PxsGZ6&gxW=IzlZ~tb zeVB#i?VA1t#JX;su*2N-dWbE^VSH%tTvp&e-t3Z538acwgQ^aXH6SnI-1EvR!ODGXSoL)|@dC%n*PCR!s<#P8fFSl2@a>NFmiZo88$&qj5gfO6m$uJ)CRqoa# z%GDKBQ?Ky(I3BSJ4hHPvN<75RE|;B7zcK?lpsc^cmCru=%5AsZ{K-$ge_sRB3hj+9 z$s%gV02fFPUs^6}>`Jn}Ao{iyF^HyeD7#oL-i_13gmZZ&xZQX{Y?M01i^2KAX~MYYF0C}p_R znYX~&j|M2wt?N*{QYo_m4TAeIkw*Y7HOLcrkW*yYnofg&**N@i!W5~k4q|L^%a9Pr zN8XIir;(-hh7%sS@F?5uR8Ay&Mv5&pm*%7AFeVv;T#@vIE zY!+m~xP!);S<*Zfu#7{J!Ej1@rEG>i{4|ZT(~5Spr0UR_7!cTCe~v>Bz}QMI2qdgY z*2p54w?NUwZtb4YtdLexCX-w8WB{x`hMcBTq;x!cIo%W73{0{HRuXj*3IQ4?z?9n+ z*ve>qZ@Hs7OO2S!T0qJ@6@dlAqd7fPAA&vyTyl7r_OJi?um9Sw{o0-jRN0jnd=3#J zy6d#Oxo2Fj2=^%0h^L%QYGY3sj6BP;8T#ap-}mv4zOegyXDKnt=K}fNa?35RzyA83 z3l1Yezs(56{xW4i&xQW1{`YkCKX?6&T}4bPOsj03(XWv#a3z&9@Ii0cwSX)KrXM`V zIk{2ZF3-oFwRGc8(^kjP>#^rPD!<&U_jUWDfAA0P{?h*~22n=XwPIm=%F)pg&I5x! ziT-Sk%9HUV8EEF*?L;~bCgFO_!oD5?yms_C*CF_59sr&ufDqLCZ#Lv z-4p8wNUhRJQtAr=C>r4&NHK5#*1TON43UAfczWXPFg*gpp8u^-`QqpgYl3D0p~O## zMj&^UHVe2S1Yh1+?y0_FYG=g8hQbtI}N zuX~|XzRS`da5_m_zNd33Gd9NXQ=)PS-(*F!%!gQkNb@eyD7Fy->^s)Xl2&emC$wa1 z9bkZM!nKvZQX8WM7v1U0S!}#g6U2Wwq8fBkk)3z+r)a>nG~m(of*BBOalss71>MT^ z^$fL%K980j38unkvl3oB>!P|EWvkV#Z>pApNcP38@akPpS}qf?CK^@dkx!fnsCX0X;fJ4o-}~Nm(@i^d zGbq3_jTEF#WP&kYg|cW$E0ehazBW0@#~%C1hd%i3jeOJBQeJrRXD__?YD~@w?PD0z zYezs>Nuh@pS@mq}Y~$mP|MUYNxas}xzj6O_=Rb2})-HZ&@)g7;7>fc6Tw3&907TL` zTCPc}?8aYQzw+59Fbs`^%k9y>zi0h?6Zlx)d($HPyXkv(;JweIJ*hKRUB3He{pSxZ zS5^Q_V$R6`R})qlMN2Nr#gLTXYo%uG7qo`E7b$s5NKERXBQ_T$lX}4VHqqMTAXYh2 zrh10ZTf>wD%2LW1D5=uU64@1%PqTq2dGW@WxP{hEt~L}3UZt6a8kZAtS_@mj70OGQ zE+sXlB*Wm$-{Ep&I%!p%GE1!Zs6uo)vw=izY96bH{L0d%P~YlslBs%KHr(KD~<4$sDv z*+%+7U#%pGRjIz^4YyN=OE0pCzeD!UYjX z27ul{E*3cely$gvp!DFDgy>KP>EyxrT!cp@9DuQ2zI^$H8*cd8fAfKF{oCg^3{3B&j8jGH8ZPW8k2I`rtK*M_;oI{(@U2w9denZ zy}{Ji*V)jvZP%SWKifwY3Nj zwSq*~sSK0zZ6QRzUFFQ`%;p`Gl~y7%?B{lAt_`$k2`ij@Qb4X?f4XGlU;_sd9CEQm#a`(m-5FqzRhD`X zJkvXB@t-t#kdbhfw0Hw{Xn=WYX(JnE!blsD$O0oE{&PY@d41sbeb$;K!5n1C{%5j; z+@oT=(O4>b?kBj3Ly!lBccH?=JlU8+1=E}*N8Qlt*x7uBjLw2JI=eZp%|E^C&a+mO z1!y?k0AR3pXV(`?Y{WFODl4r<>w>=2WC6??NGfk03i5Pl`K1g$b))}Jdlty ze5K<1iG=Q~A@x7Ts7&q(SY_0LaVve6u5@i8apJ zkid0^3yMZ=#RcO3LKQjUqg6#RHUOp*=*UCW2}rW+mVNZpg=YMqKqO~&leh9D55y;G zY}+S_l$OsJgn?;D!Z0{LJtOz@oIIB_dehLCoc(ux=g~`-uI_3=GEp77H=!&`l$4KM zfUVFR(H$;mMH~^y#h?A`@}qzBlU;W^ZIN{U{m)e@J|;_H@vBb;p2Lcn(oWIX@|D1U zCP?-!*^sTzZ4zj?@38lKzxT|`FJIpE*QSXY&TXU3*ZG9SNWK^{R+3jp^nOI|+AqEF z%4Z&)qR+gvy72GsT|XbO>RAr=(Sg(dG~N2d&mo^Y#k-Hc*uHDm%8DS;dQK{9QF6Dw zW8YEPpkQ7)1=j`dDQDzPK$FsufsJlB%1oU>-W!tIi{O!EN%8@;my-!hPFT}sHeu3f zeAN#roc(`VSXQ|4|BHV_JhUt-E9=TJ=Nhl2B43l?6lH@APSs9B@00%=+#-jh=ceyc?h}wAi-=j1 z>)3fVPR35U=so2&j9s%zV51u@96oj;tZDrk$1cj!>wGrYiI!Ek#wHw-3B@tcBrvr- zDaf4e%?)A$8IcH2{aQ#lUEI*H_F{6wQjF0M>r@gZ&^>{%hEZ@27IcXitrwTqsUV(V zG{nAWWm(fKhu-MDBhiG^ATyGaqTKp*>Mt8o5+r3?<KDO+9mGp=^kVKA6pyJ-W}+#C@uGar_#6 zej?Ct!womoA4fki;t*S{;h_LELE_FnupP$3A!ocZBADM=DrdXZMmYn5M)H$)zLa-| z??kWu_HY08J13vm{ycv}bGa7u89>vF8AmdMvQ)`a^tXk+y~yg_HRZwy=hj$0 zM!zn;UXp{J-T~z;9>lkPhJSrt-r}d9tvq!9KSxb)bp2ckB>&aF`d7oRhp&*QT1)Tx z#s8kiSEvrmNivs2SGy{@%q?FR4(!WDzui+^?mm4AN452?m=X8azfCoNcREHFb01W_=5f7PSt1>c~ zn+chb7XGZ&zxFcDu1V@Pl2GfSODIyD5W$pWN1~0^rls)y3K?{oN;bLpci4h>*5NyG z-}minvK`4hpG{8nWktHd4ZgbywZhA*w zb&czD$0kUSvv+ehckA8cwm__@eCj|dJjXwJkxT^3HLi)0jJrIyxwqV-cREX|Sdv7N zM?^|FR_6@Q^xS$*?wmRnDx?M!%&l=p&d5Eg0I?0*gi78utB3%TKy1G=1JTVra=*RC z%``gXRByRw?wR}K*)-^zmt+2Xn^`EECTNUh11X~FBU7Zxs%LU~5wsyWGGXN{D3siY zT)ulaG(Pq6W_hB#B03C;4 zW6GoxBAna+y#D&tH{QrbqfI3^24?`bz6$`)Jp1Y!Z(OY-RT5bgrCF)#GNz)lBB)nh zx%BuGF9Ah4VR*vpuP;OMC$21A=imMA3!nVdE#ai8I=7|Guf29$8#29Vp+-)cGHvo! zQ8=_XR<{%nFw5N%947nX&)&HEsR{b*c=PDS|M;a#&u0{LCSoS&ZdOyD9e@7@`_Kiy z`FQV~r&fLb^0WB=d}PM~%wqz`AwnK&Kz1c{S{!}6?oxj& zI8vi@gmz^;fMca2w*)4v)U8?;k@#i}OUO)6&K8r2X)9K4GMToAGPWcSiK6Kr%N;%I-!c3i8g>!@C4z z^hFVG)A=S%_}Sw!T1Xnf?DQe@10`feE_Pj7B_Fyb_u&t$(ItetPsh%V5_XMU(@w_j zs^Cbi(h=ID&9Q6Mw`J^TO$W0WJ3s5#VdvPXt{0O~gW^zCNs{2PJml;}O#F^S9$ld^H;-nko_Bp~ww5|TUpSh*jfdcA}!6;s_(_S{N@QZUsMz@(;K zgD!8g6QCSsO;!h_&{QFNP{{-(#(L?*6ca8Y-xYn{=${(%VYx4PQ~;zFaBnVpkq0UQ zX{O9>T_@49eYT^V)+W97LlWTaLE(gr$pMcS z=;7}zD{oAp=l$ir`|cxoA{cbvUwZGq{-0l%k_)Vas0||t4w;U&B+e`By8roSIV8U@g~WP>$M5a#tBn@{TS#6>Tm4&?zIEKd-OL3 z0qA&JH~RUskAAy+LT(9wgP-}}Q`hMctJP*A#6x({@vY&?6Q{AcD9>z6h(NksSH>cL zE^61Y@}zlKC&|}dd+oN{Zd~?_w zm1F6qcTh6x3uf7@BsD^>Ch^$%p6YErn*6wE3qkxaV@SG%^gYQ{(O%q;kO z>0Uv;z_c?3fPN+04G0ehlbHc@DA|hrF$y@ok~JiqfF?r4s>UZV+#^&+- zx|BKrCV-DXb2wos62l1wYh_IkTgj2WqDcJyLm?@$>3|EmqcZ2QbvL@{R#!=kx~;&L8)Hob$SNV zh}Vbi{G6||QS$h*O!;0r%g_&w8sH@Z%IZ-5G(V+U`QjoS!HT3ot@EO5AkKnh$?P}v zWZ9^!KonJ54?cLkWL6so-66MuQ3KFjj)v+}LW&%)NJ0;wUk}r-5^vbW5HnMFusNM3Oy}vYXtTMkHe|^f@Qc z&6Lb(!Jjw4@)9P}2JN|Md6&$+{DJd6s=8qOGQd|47p zR8InQhD@iasEs;JrDsKR? zXriSJQX1uSm5}qugBTtA^wWbyWg&PZNFGj)h2atO{EKhC^vW9mawZfhBWBS5&~psapS^zd{`=od2>`n_RVF>A0Q#htw75KvF#3X_u;~urBoKx)$m7ysiIEEAh&4h8n-_5*;l^u{S76Gtyt+%kGfNg+i)zI@w3y0pq2VX<)qNuIufqZR%}FD!Dw2W9f_^jz_UEj*U)iB zwy?G#pa=T`E0&!v{*4GY29cl1h!uZexl?f!au&T(hAC9YMR>NFufxh;y+U81+W@*V z86eZb*m)hhT*q!L&nJ#ubN$B-z+^iaUY23`9X?5t5-glYX_c+)Y6RSn%?wsVNhG;? z0M5o_1WgY0@U@gd5UE7+C=Ir~q(qp77c@M#o*JemXgg&TYb7;g;|1WEKtuMS!+lyc zW?NrH2r8CLIp)og)1rCFGyNEV^9BN(&>n}`e&Xs^JM+Mbog3DrMxAed^PAW5=xav?ry9^hsm!cNNaR_|_3nQ*fJ4p7X_h;7Yp_=mj7i0p zyZFU3xEcP0mTUJ~?H|N#(dTmmtmF84-MntQdS*WcJ^j{!svT}A;L8)&f0F;_zw+_# zeCHeh=#7o%m%g$h*>&AbH{JBppZ@gr+i&0X#X|TIik3n$T5BvUs8UaOH3h@ksUOE@ zqbqjVCb@oZ-yWA4NrS^>mI2VSaxeGBEEBL0y-SiDY5;hz?4YNbU|Pf|@i1C7MF@3j z=Pa241?}2Bn@<4#IP}|qg~?zAG4X;$t&1)S+QN_vxZK?c6 zs@pU9upsmut=pIqO}>(8Oh<0kxsxzD`gP&cSc|k8!AD6#vLwj`TB7&#bF^X4uT&(b za$QYK9)c&{yJuJ$j(CE>TnOh)3hb^pQV<~H8PdXEV;K%*1d8@Hkp%&bqcJvu3o=5P ziEv{MK`*$_z|1XKNXbGLJYAW@pqCET;BK^Re_8z6!n!b(1M3spf{R+SP~C($sr}8>hlUGIvz; zd7(^NyA-D|AkHQF-iNG_LVY70o1Cw@GQ($Lj-mpaz^3=qw+?&#EKVk_sdV^4_umA8*jAjf4Jw;ix~rpuDao=m^P!s=h9CcBLKyP~5uBANm zz;DJ6_kRAbFF&k2C%I$=dXCT60MO@hAhSkt&C?|Ip8mz?lUT_Xwl9C5$_%|GoINq+Lqm-f&$ zx9_i)hkx(y-~Hvkooz)p zd(krqca?(;m&Pwsi)wX3@6N!O?=*8qi z=DlawXYYOX@U3rsYh3{Z+lJG|qR9I2rsgTphJX5!8k zX-_O@im^8b(B~FgNC3WM*JNsln@VnFgBFY21QBeNTqQ9niIPo;0zu@?NV1XK6e=8P zT^D<^{Er@)hy)1ENYI@Cm}gfYz7&g19f;H2@ z8$)JE)#9WhBav>6vw?*GPm)<6@Qj@(umHSL8Me4M-)`Nz(kU{#@R|pi`*XGg?fd=Q zhHat4&;O|*Fg-_+M0CUzzN-bZ9y%bYWl&q@nH3x50x4U9GKECz`h!>9r4%9(lCcMW zJS}5!vx|EY9Yr4l?lqWuxIQdtGuZ)2M)O3;(>iFIWEPUpXHlx^mvcO!!2?ntyi96x zO6CK=$H0tor-(m>l8ll`*%jiYCS@UltsNc-K^>lyyl~PyRWxsI&ln#TOv0?ve?_u) z7;I_H;Mt-EGk`1?()zw`@@RuqUoNlI=ReT^xnF4!{Uc@fsf$!%SwnjfwqOgkfYB{a z51P~hGPx^dHA*RgLKhy6dapfxa41y-TAsX!U(Xb3W>*H} z&dP&!nPjYP@+#_4FwU9(mb2^7WVL3(u|Sg`Gq46<7yNl~iBn4)SW*-yxz8d9R+z=u zANY5Ia_>%9_Rj=9z79xQ+d}|^e9JO_x;=&QA9+f5T$(%m^2q+D`zNnh0U`_cz@$tk zh*X?Zv*GpB@7{Cq=0~)j{Mz!wcUaDMmo=A_Y} z+$VW61>eClk--VMmuzaegC#Xh19Y8Gf>y=}8Io(qv(c3uumpEctk7TYu9*GX`zjY7 zz(h8H0ds)baB2r#-T+fc?p*e=Zfv_LmEgsLL2lP}nzbFTRokt$p0uveY^cg73#*E3 zBc%~U_>{Q|w*h5L696U1Q!SAkMD~O!&>6EKUMq7@8KWRT`>el&FCm7#;v@)h5ck9a zIeHb(nx7pl{tQL$W+@NKP$*-a<>Cbn?`#We!YP)`m=e4fm1cZiIZ6Pkd%5O0K4t@~ zw;pBQ{+JJZ@cZkpD?ApFF305I4|Ow1X)>iUnvsmIl*0c;nlf|eX%w!}&;9O?FW-Gj z<&EX8D`_RL^`k%fqkr)){>4+LPL*tg|LNNv{%5ZYx}sMh_&(IwfDK98HY`o96~OoB z{@kB?<&_g)(hY5x^6q#r^s=o~;ppw^*_6k?pwFH?8x-#?(dP~I(0}#0&-~<(%5Z&b z1p~UKbFnSplA$eU1ifx@!vvC>TZ&aCk-*p(vk$E`+44(x><)Z2`Wx4}T6+DBw?51J zu&P+g(%sSmnLT!D!DWl-<5zy=SB4)RI>JzZwNwXXp_ya4%^!Ip;v2)FQvB8r6+z51 zXU@F#+G}Ueo_+PzSO4)p{>KZ)KlIQ;Pd#&skSUN!O&~|1f|3oPtM2lSo&kWVUuK5~ zf5`tG^u2{)WO=J~&8=T7MNo$+$J%_j7%(;-Ik!cZ8ks!9CFOqWN(%|iTo${*y(*8o z8UL!yvALXEJWD0Vd0FzMChkrb;j%=}1Eh;`!Qg~p2uHb?U@d|{<{4hoE)q}#2s$=7 zo7b&d`ncXL9;TXtk2buK(cz{kJd-K*1+*qaA3#MXWQj|2|5L zJf^?|YiLb@BYkSF8i*XxtwhyucUqwuQ8bstJO&Us(zm(q+TF*|=7=G)YKFH`?i!OL zQ*uHwFvg44Z6`LZ9zGIAYVj`G+Smp?AH`KB2!fGLmlny3huR_U;3}I#68e{P7V5E< zih5Z8Kde;CKs9FDi3pcbQ00KK?~WbJ68~vd_yBO@JzgJhSRUC+j)hW$T&}zZR}my; zctS{BaL7cN{ZbvDp@red4s9S-BXDGv)NWD~BiN9`u#z5u1VAd#UdyvJssk2j5eLc> z$&m~uW^@s6p5fUM^rlv14i0`ipa=O3bMm~aDzIvR%-2=X;@E2Bn}aFcVWAD{199u} ztP6ElFz8Z{;k_43Ht(GEd8A1GtW=J8N=5sYM+FApYd+6V3NqP{f_7hD?nSNcoRLesTnG_ z(wt1N@OQHKs6m4vYc`20*3W1aY^2X{xrt~AN zS}(0_M^28txvDTc08C!N==|Hq z?|Xho@LBb=y!1_TFC+p4I)){B9abxzv#wx!u)`@m;4%&vKVCrB= z5}Jyzo0zjwf;F(FmPsmVEejPb`1WjwO^0m*Hy>(`J@PXEKJdZs?^E|w-wYh05&^Y4 znMTiPI%Z*9wn$AllN~}gX6GQCv^)XZ$A0twdF&$f3#L+ghY4}?=yUyG#tAZO#0HSE z2kT&IpSI;X_z39pTR{o>^y$;DzyA8MPj~n4{NuO$(|^7KWO;L+Yrzf<)~0}7XY0Ve zx6VVYv?cwGYszt(OB6*C__W>xim1kYjf5AJd0jYUDq-aPZGC|pVsvc2`lr;n3Z?K+P+qv4auBG)*Wk|$Wi0@jXQXEMcCT%9k~PHJB~&Gu{;Ph(C<+7$M;408XeCF_ zIke&zr_m+)a2vi*5B+ZrONB66&_PmC?vEkkLWnD;lKnLvw*w}M`ym0OH{wB2Wf)Yc zyrf1P)Xc&T#l%2SRF9bzdm9Y8=__UKe%xF!uE?+YR**Pjp zInf|wf`pN6Mgs_%5@T`?Iis=8sgC9jO`HmbIsvDszHZFD3q*IWUn)r%#-Z4sLkS7U z^G_F#P`aIJXnb)R5V?m*t4E~1w?zb5R=zF}dHJp^$e38eQ@lDKyuX(j+~IO!P9oh> zHlvgfP%+)o7)dWZ7D`CL~ea zJ>@YyhvZBw=fE7o=7m-o&O8+qG#Y!ZxLb_x%gyZh&v(b znhl9m+Yviz)HQpUG?P3TY0L}sB+ip-Vf;)30 zf-T%<6Y5Ada|?#FnA9aq60#{-hfL6DvZcpx3 zWn_?kO4O)SeY2&)XKNS(b3LGLO!~28I|Pb~(2u6LrPa~1=Pq>u;7#is(GW3*x!rBL ziJ+>)*mncpc)QhKoe1K*=E^^_EX_eAS<0y;$!TYBkZ=>7ntE;{S-jx1Mi7)GncSzV zWeT@XJh)hr!-P1781zT~)7u{YXD^mao#}LX_;Fj<=K8rxv4X45CU@q{nM;>00r1mkRFaPo{uRC%1!(&&b(2+ZCNzhQLM*u=s(>okpd}HGsi+$un zbNxRU(8~|<&_fSB_3TZcgS$u}!stLSHeop{chD3n8jB92(FAXHP^9f-LUuO?lm`r_ zg$i<&BeaU&fU66j(hc|75u@=h2flFVDwoU`D$`S52GWOQG6p9(Hya}8DDdoTOx z!vwM;D^)#ft|UY3l!fBm4Zd2u)ZB+M)m%*CC_pHhp*RzbCgeQq=*v*;0%E>$7@VC` zpOk~IR@x?^hApj>V+|FbEU-s`KDO?>g$0hlD&1h|EmD()#(6q;bhtcTZGN9Iy0_BA!@S*anODkv>DnOoTa+>_E3*8@iTJ2@2yQ!U)V%9$=A$<1F~_sUozoIzow_3T>5Mquv=Xa||p@S8Er1 zW{_bt0*rFP*-eA8O_F(PnwptxBx?vnwqvoAWbiVE@bFdAwS$}2-R^;z90vrGC0b(y zn3x16C(un9zDS>0aD;6Gwys1c zAA0Daqn38afWGDVj#;3m=DeC% zw_#3M5P%-q1`@P+_LPxY0?54^)d6HO5$^VN_Z%_+Zm@N!bU*STBkArJFJA1q&y&gI z@BO{Mw{YZB&)yWjbU=cMl7mc?GiTT^3;5=OK0GKeTO`> zK{w+^$G5-+EVi^RkWYN}=K#F_gWu~gH7zUwNhy`oe2V3$Tcko#j$##p-*C`h1OaAr zyy2(AKZZcY?68d)R)$OG*z3YV(;(Bki2kNe-P*v%BaaJ|nY+TYt-KL3$uoT#%5g&q zYT4)>J0PhzFOSrG4w%ocTw|l}c?`fTfg>b>t+FIqaURG7F^NfO1Q3iYIK2|)x;q~7 zaMy0|6bT!Fi7&Sa2~9+-%5IA>~<(`7p%GQ&elp6(i+f5mRSZi2RrgN2*f3!IhT_IY*Rc zL6_#rd`Lt>x%do#W(~-lM}HOrhyr~tzxVC6kackQ$&!(Fh*C8j4AE9&3CS@b1zbx_ zfez{j0EtZQpgA2ZHyz1#3=>IW3jDR)xx%_2RAlf=i<13hGecT?Cj$T=^}*%?q&WU8 zX!b(4Q@LY-!-8mU302i45OxO%HHx_V>iQrn?2Mw;Tq2(m&FJ1$h4P>q$NefPwLFri z#;TxFE*{;gsZ+~n@t2vrjOeq5lY%bI1%2K_jf`Y;?8C1{_e}Qx&=)YmKpV?8GzPT%Ln4V#YK&Fw7oE-^dPHM7?U37$o9SNb6bI*3Kh^O3h*BLpL zCqoNPEu`x)kpPS&&;eo)Nbm^>kjgGUfQ^u>vxWjKL6LN_dMEPQ`Q^{+a{`j^OrIJWjCRqS?KEC@{UdR67BJ|| zB5SC+`q_%Cx9fA)@RaoNW|^U3%9fj@6@DnpG@LpZ!LV7x3`U9z_zC+>)L{@L4q z-!hxGvZtQ84d$wz=c};|B_^2%+uEe4=G@WJn|@GNK!Bq+fEx#cNxXH>Qwv4JIr3_?+flxa!_zTfTf!7u(u=1-I6JbluI(7mi=~~D78$6%AHJ9mt$WLB-tcd$YoldQdyD2X@Hx= z6U`tF4l$5J<^}e&jJj;u{*eOljJKoi5WQ!%D3~a*N;HEtDxu9S*o3fw<*B@b8Dga; zTe+?~6lm+=`0We7t=R}nj)+Ij)U@o&qDUq$SYtSIy1LhLV1h$UJ$;d0 z9i;=adF*OgkBj@3=wa3X;__&8NevT(Oou#<8t%4+rwrb>bs)7%6&$OMI+HscB?*(w zqqU_}75(&5DolWm*oB&2v!qB@_akuqWmWA(p1N77LUrUQ7&HJh0e=-Rl${iC&s5&K zxV<9lQIuJw04fkef7>P8c|bFk!pSqFm)DU|J+|wtiPX(Z{mzj#0+OK%^w|_}QLs%D zeF`ymZJ}xj> zt31;ZLLR7=-=xq=H%V0-!%J^0__9j(24OO4{`CkkRziUgRX>bX)Xy{oIs@09Yb1bW zIXL^=jAofha&aJRKoM=!ITV~6e zG-jP-I;~Nwu`%Sg5~&V!*I3A;IjtE*WPzyi&XrZgfc3vH@&*d0KD{4R-aEPqf@wgu z6fd1yYnsr#yvxL@wrgYMm{Q|;BG}wKx1#OJ?tFFIVME)^K0U1Mw4v?lPR!X&MYNz7 zmk;CdCnRVtw>(W&A|>cv$T=!ne1e>UX$*OTcA6bP!vlFDDJCN5>Sc5zQ(}hDq;8rs zL@I-#Osu0ECqN6CIE~0BOUzwmMx%JPN=!+g5;%22Dzn;p{>!q(tR{1~kUQonVwRAD zO{ws*37*2?DIz-(jAC2HCc({1ZM*0>_%FsyY>+K&c>_P}+bbDZz0ELaI*}r~O(U02 zDC9h~)QSmGlGmk1TsdPpR%)O4olW%TtAWh=Wza%^f1ihNI-Ry{8%Xqbedlct|N2WN z%Ezrw(VptqLTciL)wImNi-obd74DoZ!_5mVRpUwo0Oy~(^S-;ka(sf))tRK}bZS;s zU@JKShuTXoy|ldw$BC{)q>^^)JWo1k~&RmP6}R4i}W+ox7hn0=@ja*ZB3^ zO0wWh86r-^NI}{1cm>(&YOh@Cq;1=k^%HZ-;@sVbc^#`t1<=Rxgfx;|en6G2u_L>+ zUw1^l|2Fn*A5J7MUc9)sw>OzgZn@=_>2!MQt+)R8kI!ZCedwWwO0vh;(tE^ShF*pJ zh5zF>|FeJg&wlTPcQqdDG&cZUXFer7R+}Eu$+=V8MAmCn;H+3xta$f5ub=p1o`@-p zT%d9SJx@&?My(V(S7WoIZfvoGj&NUua+s=63Attp=s%k6vB{cJ43M#>Hm>Kc^`{SO zwT#nr=1yKcH8Sfa-i$zodWr+IShY5w7h)I9@_}F;yKGsJ`XmEAKt+)ji?Oo*4@$mb zX$hG!uu&QX1B7{;awa4scQ4yICc;fqc~`<56e1)KJv1YDVXV0hulG;Soy1hMn*WS3B08j5zP+3SR-GDrI~A^ zwNUN4a&8#VDw2q~klb3@6v@zR#}O*RCIXt$r;Qwd%V^2dE(3j5mng_GOuiuv(XiTJo9oZ^#meZ^pkcVXs(13&)+=qa&$Ry>O z^v|sD{7Rg(gqn^n6!W4~R$*~S0jI>38=xbSWS}L=)ge@0lmRnq$Z3J&=PAWxfvZ$K zWDtdpWfRmaq;Ttp#Gz|>hJyzKy4IH$$0pp&1_ZLzE|jQnArI3GF53z$9~eUHi>DRf zweQLiIG@BMpAZ?!rdldyX_^9SFe(M=)|q#*w(9AqU~qJJVoBSp;yDN4ke%1M@3V zwKeOZYVNCf&Oe|6PnK^HlAa079z%l2Y!*Oy71GcQ7YN7Q(kSmCT}?WT31%jH@Rdv7 z@HEn(8)QHG)pz87b(43QY)Z%pVQoim6nfkQDKu^^tN{Y5L3K*Qd)7CA@ryY1+?`kM z{qi9sXmk7Kujqfdi=n2aRG8(nUTQ8U*t7yO)PS}>y;N5r=-%}TzFhK_3_AQOZ+}5X ztTq;x-x2m;Sc$Y*zQVxkGgv8b@a&kOPB9Rfi*iG_G8kz^RXD7%;48#`hl!vg!y0-A zB|#axPzyFVyooFo7c)T*+}IVZy*Zk)WM+BqSBguPY91lHsf`Vls>M69cYU zgWUDcVlfs;jRa#3iStOhZHz30@%r~|X8T zV`G_Sad#oU=YN}v0kpBjGrqd)qizxYc} zE+5WrOrx008mGZnMemEY3Jjo`r%2$+EdYz59f>+hGLGK>LqGn=&wSv6-&eH4T?nPZ zG8>_!+e{6nQy9fW3jzyN)Y}g)!oaCyszW^V}Wx+`R&YIdK({ZESaU_wwb-8xHv5b8oNfv17gL zZyDR&-L(Rc$%y!$SAjOoeBRai1=V0)etb!PyR8@;`scbP+`a2%eSSqMdw0wSS#}95Fq(7DLq+?Qw#=J$_h0?hUtM|d zW~m>#qzz*uIVCk z&fX~UZU^;Plp-lMde{LAFr@=#ODp)3oyeB6!Yr=PdZCOkV-V*8>v8VMst}4#lR9&U zJtdB0cG%G7;qL+g zu6{7i8an!K^cZ4tF$tMFr#?j8)R;@jxQY6oN|G*hhj2lzHo=F9o(fTx5uI zmEb5N%!xWiorDSs7S(uP!%W0(D{r-O={CIP^@DvmtZB zB;r#*LK7eXBbpUOWf=@+{iv&oxi6X|AzRTt22CL&&Y1vhLHqg#Bo%ap;tie~)j7PE zobGPLg~o_BkxX^FP#tbH;zp#Rx;1=nd$A4xbNqA)vo}*70s9rICSm5qE8N@Zu6-N! zn~Q*UyR(x^Zm$=vYY#Wi3RWK<#m!i7a2DTAKSatBrr+}10eZO3ef6&HU*0?q zP?+dU$*gtH=(-q`t#zaVJwsIFpo>>MyoL33;BVi~+h5X|jiJ_N2X}w@hWFeyKA(sL zbU70qITDM`36N8hQyYw2!o~5ZKmE!bFEr_9R55N1soHoL|gQ1?%`oWV{wF4 zcEG}gxqxYwrVzmJVdO3#T95hM>hOWyKLJV<4QxSkC8H@c@7Tf`*bcKxU8C%pQt-SF zZ{;MCx7j8;MiZtq7aIsoL(fUf%w3t5j8Kux(~_sDA3Z>kmJ$@K-XKmEhnviDYQjGZ z0Ay}j>p0C_v|UrUz(z1PjYp#LiXW^tAO2zKNB+@&w}?T97X!%1889#!$Enk>{GVU|}af0Pb^M!odN{ zi`30!_4Ci)ao=4pyeYV+qyLz(apiw*0K_`P-vQ-)*M@F^gEu^1GPN&n$moJCz^R2huI+;v%cXx+J z4%0J~Tf^y)vQqQ8-}(FT;qU#{-+%A7{CS&5OmBfc z4YGuXx**@BS7 z+(qzX>O*_*KMR9w;(5CJzKEfbca5JkOA*db56(%?y$y5 z^Gubcmjaum&2||@InZI&GuBooW9pvVb**QC`o^2p7V5qIzccEpSJ?~v7JxzXw zP4$Q{qIXvmQ2MIyDY8jaso`ryyD^_`G|gyLY+rKBbrGeCxKwOQD7tE0lE>9$!SId zOHkw)%tld3Mbw*285TW2mRvr2pQFjx!!C3)FG@^COYV7YfF80r0VPA*jO7VedZb|Uk@HxOgq!0kNDc+ku6Q=ZM;AjAbD4OEN9&9gL;{3{3S^NPAD;fq!$$%wLKb_j#@i_0gh znEuAiMeb=f2)dZa)~&d8%;m^rm8Y>J$}}pkE`;o}C=Xe_g43VB_tH0g{xA|WFTL-n z=KOmikpT(M@Qjk4PGABX2YQ78@|B+Pr+jXIbi>qN9Ss~RD_*(Y3%B%5^xVaRXVq4} z8tS0b8Xa6^PON;e+6#pnFmw#aL{V_huw*FOzOnFr3RL=V3DDe2`s6m%@h$lA?c9;Pfg?s zfx(gqEvA~v+hGu8A>Er&V~LPE=L3$mu?(sS*?Si-=&}}w%8^4ZP1)JZXBMn& z!HTb*{gy94jdgg+t+(F#^2;wDsqh%|t3xs92R``yP-cis6?ZmFp z#LK&)42Rl~GB7-M`Sc!rK7IQ1<;#~(pFUlVPmME~tLLZ`&&@pfOLbTtbcluJ@3jIb zfBL6?`oz&INx^{bRXA|071)(4SAeYm=&Q8RXw;Mbo_=P9M)OJ=GN4IT&>4u1DlD{G z)iC<~XFVWAb;==xSKo*gu9TVeE&kS_Klk?7@BG~dzVQe8HQa_5?E1TKj%v#o^p+t0 zTmR8k+WBX1FW8G#EIh8#hLxFfUgk0nS;bj9)9@b zZ~eskzVZKH&5m2+p+zfK&T>i91b4LMjq}ciR3wzG*_Ly}n+Qz%=oAI>Y}s>@7L zMgy*R&}}>c>*{A6O10)H5r~7ragMD6W_!addBP!)8HbeSnwyg$#Nbp1XJI0G#P9-a zoNeJQX$oY@LGyTM$>h!vsxvKJ2&qQ8jdneJSq!{K8&M@)LWGIRA@(dzY}ae0H>7ARseJLB#IsukR!^*o!mtZZyv35(4fp7>zEcp-FV_poW$K zr#X=%uih7ff|sV0V3yq!ZAUZ#;`ME}+z=>Z&QkrKNZT!(GP}-UZ8vb|*3aYj(6W$~ ze4dN}IW;b2x%EE0s2`eA8V=wjkdgq%GtkrtilnURQj^I@JqnaqD=SMuq459cq*9~Q zcvP)Knx}>mbJs~paw56AC6L*YQlgH#W(t9r4RyPKK@*8^)z(3j9l2fPyh1^Cc!803`>GTdEN`SkiX<)7Sj<@7bF1xKmfn!Ll54*9k(=h z?-|gCVlJDnv-Fug^W2>)4?cJ9+?GPj%Qnx~ULe1$MJ5**(1sa7tmYqIw!?vgx1b#y z9FS+rPDWWYFWP%Rza2Y@T_eVBj8y%_4-MmZ{4<|?;2VDct9_xrKakn}0oU-L7yH$H z?|SLl7wURgS%O~6Rx-2A83YC2!K#trFi@zSM@vw1;aY zJ@n8+Pd#%>h;Ib<`Gy;AaQ9$9@9gYsHy4=1|NIBO`NbDsT=?RN&-~>3zU4m$V4&qr z-kE0rii|j^5n~1~>1=v?_r0$kgCn-?Nr!f_sPvP+^%D;~_`QUbOlo7;H^knw5@Lo7 ztp4|bHo~y^o_Oq+-uJ*KR@{lbl;VPIGB~%+XYXsjMsHX} z#I(|T)PK9;J2L>z1el=i? z*}1zg1t!6FF6S}{aE--=%?KFHEh8y-EZBtLB}H#>_70n?w$&GLu!IsoghQP%IbAen zTU7X6f1&vR{e`bKb(O`P3+I?OLoBfpxmfE>2!@u;R5DP(Su;sRpN2?4D~uic$;>Rd z5|E=}6XBLQgBs9ZoYuq2eRnMa2}81G9BBs9S)moc0XIvIjG&wruaZn5m>J@c!5tK7 z4kgDR5h_4Wh2kB>NVRWxDv3)=&v#mgF$DA4U6zbU3CV5jCb=99iO_u}K+Cjg!4fN6 zV<~$EVA8PRMAFQFu5bQL&AJqt(Dw|Z#nWo3BRMIH?8N05k|lv&!7^ksY3d_bkj6zD z=kEC{mtV5fi`8ZT^8Ly9`OBBfY;8tM*%hMV8OT&3K$=~?l=7xH1fT2I2SuD@vA zf)~?O@H(sM8wuo~PA~gqX1~owXFYNAraYwmT zPAYHKtbHBG4tL8L-ZkDe$|-j#=NNHmH|EJ7{o=tphv>7AwfETF>0jLeR|#7~tu0b! zoizcX6P@TvZBZ(YRuF_nNQP{5xbhTT$F3XYywi0}*Ks$dgq$E|!#T2DVL3mW`b;8*?%xQk%{~ zlx-g2nEkA_4c9+5DjFvaulyrF@*_j^Iasmr??Zq5oV*Jp-7#D{T6vs#^m$>oSKry= z(4V74fx|aHH{N*TF|NPCB=sGm|K%7+G|BgW{e`}+Hq=AYG#4*kJa&PHGOzdE^TIZF z#DEuE&0-KYETGSachqfecWmoDBFDDDlNwM7o+1aoul_l@9Z7#Zw*1`_zxDT^3G)=))I75$3yC-@5vm{dcI^@mE|A2R?O0cp051u< z=GbjqWrOo(m_U5~?caI|z!Q)E;_&KZEcdxIBOEeE!~`_oIm+?FZq#FTMwK;oU(SKt zrJ?3H+d91LsJ6K$FMR8jgWxdQ$Wxnb&(j%=&Umv2lDV_#xS3AeET^5Eb_6hY?8Z&k zHPg;Y4wa&USoR(RP_M5CaYNa-{%5t#Br(=?jOA07pm_?xyO5lonWxh95ZCpwV?$=U zyknVBA+cTAd#s}AU?P*~(VkF-_UmGPAUYugbrL?UWbmMban>(Lg|Y<)f}v+Sso+T3OtNR+`7mB_lFobA{xKuh&x;L>9g z(WG&crfou+LCIZer?9a@Lv545^xCAxyfGzuqFX|0WHx(TXHoVgX(HWDHNP*$4#a zj&Z5#+3u*X&+nMhFaT<2j4ks-FG~ro35;88oJJY^{y*p0HzEB+2p?W2&T-M zdN-gh1|3aVpmuM=!5@CsPmSkr?J3Uv_Sa88zsrgy&)pDBq~eVJrAYN^mQw;#4<#B% zIOXcR%kW9{cGstq)ID?N?3dql@y=(lafz&*Y4gpmP5<@HMB^^clwwumG_w#>7HA0} zzuyD@#*4czHn;)v2xci@t$&pa4~{YiuYoT&S>%4CieIC+#pI&d@NKW-Y-ygD)|kND zS9B?O&|ts7aIW=}%p2q5AtTynAjV5y6?AZg7cM4n}1(&dh#595GmM`BTI zD${bH#)BuPu^)5Rj9EoyN)ihfG~Vc0rzhH3+i|JwmLgeiZc-N1wXtN)k(%`9_$<_LAZ z4GDTWoo;`@ZA{WhQK~=pdpB-#*y+=!14cQXt>bGS6^AVES{*~`$8{-q9M$&|u+5ng zx3PnR1K@0V3;G$A;eU^WFg?>_{s{>HkIw6FoFE$OYv7n8$s$Mb9{k21AerO6K3PqN z>uB-d0}y{BTyF z>~T-EKm8}~+A#ZDCVWCTnOqH;7I3G5iE`u)aMf6oW$EXWvW2C^a=J)t^ir=|nLPgJ z&p+^i?~(F=)7qkGr{aa7h7X8%iOL9^+Tx(UpP9zm#p^=xzUEY~b<47T;=>bv`*-adhB><+0 z)Px|3#pcBYjhQ=3jg;AkUq`EWNGlv^kX&6wWaOz^^?97ORJUL)qs2Cz##fiqH1&`X6FKu+`BWknvOv*89fk!!Mirsnwt|5Y8lo{vFoEuQ%-k7rC~XFE z5*$%U3_Oz|aN(4JJ{anwbLP5xjb~iDE#j&HwpqC?1l-UgIK^*MZ@iH4HZ5FXVa=yL zQ&j~=q#SOdw%M7Ear(@e@g$e1d?X>CI(7QO8?T%>edb_NNU)$=f|xC#f8gSPAyDG< zV`LSBd~O=tS_K#B+X;wlq=Z{a0Hv-LzQ4Zeza$BP$VeU-K}xKkTko^=`e#)*4o+}L z0C`1xYQ>PzS`1&LLUIFrPwl-wKoM$TCD?~k2pr6>6=#9NAtM<&oT?fKF~W|{+Vqb; zHNElmwOYxYbx)o}NrPs}E~Jpw6(N^oP$K2=yhO-VOG)>>cIgj1uTzsbXnU$#e&+*M zKHvM&s}@07pFydK=dS&jp%DT#JwONmG1p3Ts#D;NpnH`mCn0h2Z{CK7p2zOS`N{0! zz2|qII@>+hsAl~Nl>=)S{ts0ll!Mb3hqIY(8dpFNg*H1|0L_44r=kU_=g`S{=g-`0 zvbcIHR{_DOgW|s7kc^~p`jj%fC zJ7CC$nx0fLl`=RXEZPzbT`nKchwyRh2KA|f~mhiJk zZBfr+A==0*HLr(XnG|oQ)GwwhU>#vEO(2boi89_=xw`0U zFx+(*^!I(=_l-uQzy72DV{BHd07rBh0}8k=;;~1LpuchKk}o&eM?d<}_~p?@AARt_ z2N!tIfk8j?owt7K*S`j+xPxN}wf43fU4uvOGd&4Q$9{chUBz zKmDb*AN7vGv);Zz7c3O37x0ur!Qut_f9#q{^h!l0`k|vP)z@5W-2GGs~ZE0M{ou} zSGGTE&X^dlSRtKsU;NVT?|$c;YRbY`y6(y+(iV?D@-xFfdqVUd`;ME(d*MNuX2Ci$1dU}E56*GFu93~p z+VfkU;Zf4y(K1{NPKkH$3Ed;K&=Aq6vh0Gz$~RJO2q|G27-prh#oSz^pCzegtr(O^ z>!g$o-r3nBPYb7uFNB2B zbo>>L48UZ3v726y)Q;Zans(E#Cbj@3lh-E)6S8S{?u?>me=X-rqn$gOCLLUP(fvU1 zrfHkzOiDL(8NEBJc0To0!=jQbnvs}JUZJi4x$CBolKpdO6`rt(-DKD;weNoeL3e#JG=L^tq%5| z&3V$aXHt55j`1y=z_t0<>fk?lLN{Moi#|*3D>qMG;mnHy=1emOAvez^5$sCwfqpjF z`=-m6zUe81q(Z$MvW@=rJFk3cxR31vrVIeBfiLgB7h22GA`0%U^SG@(9` z*Rc|SlmMT;VP`-8br(PIJ&fP`rMc<3X!k^k zQ{VZaRP(|$PERqH(!maZAq6(N`Yny&h6yEXrxmiCqC6YaJ6A#wyi2W-9V!Z`fM`p5 z6=@`E95DBow0edwNmz1A@%kE&4U~y(&Rz1s2pUaHb8DP*2@E$M*tR~Mnm{75g*#jd z{R1SqK!=ih^EhU>dq@gi3;b9G=6l`}o>NSOw*3FRV|Y=kX11sZsc$+yeqnT{PpNAr|O zPC;T;@oN#Om7hNL$Uj_j{Gxs0yWjf@|J{>i(6AMEnOm#XqAc9?sb_Av|DIP4z1Q)8 zzirOCaN&Zg3$yZHW~71e8?3W!_L;|qEJ-e0e;Ix5F=#HSlPpR^KxHc|oapXy>0nEUSe>XA-AlKjH2{o1c> z`1Wc5#7C>P^@6>-(rK?bs&p+$(3E)}LgKR}?uppYWAV$s{L3pb=nZyKz9K8@&q0_r zfbI6NVGET%Z1H1jA}`?4o9%O-`RVt4%U?hN{5sLf4!Y|E&>BhC4t@U4@BGenUmXd9 z4(m%8F6W0Iepp3O#GUcZ2bMhdBx|3G{_P(w=<`4L2mfH<%O@WFh2vq+{fWJDaQP2s zzgH$!T~yDBe%SyBbL1=iX~cl!Q6FJ*VHR=2EmRT2xsc@EdJvX?itkCtSCR(E6b(YE zJ98H4Hm@L9T)}5z%9_7J1wx=12v{jTN1A$;4-PQG`#)F6xwdE+{e{Zm)LNouv9KStUC zIvn&Jx-x*&%QqMD785A31LTpQZej^EGta^#Zdq$!IN`2+HA3j4ws7o%ds1_d_Ts^3 z!5Nq}Qx8lpUO(t!L=OP080Hl1y18U|p@d zd+wl?*pVe*-!Ne)6q%8LXPJPaCjlfc`qTtQvK(|XiG{0XE1qajtNkCd_p1k>3wNnh zdBnVn?p{;(mLbx!7>+pBsOJDq)kIgneCbumJZCjGSlT&rcK6c77jk~_h8ylYIM^w? zF5sq{-`RCn4h}B6+f6s!4eG)LH%qtOe((PNtJuFxj&8r>uH5;>OAa7+@H~}|cSh;T z<*(j&(~WO?+c)g)j=uDzr(XWrv*2rcd+%_xAeHF~p<5N@YLi*P>CJ%r68zGsGjHGD zAE!o>DTw{a{xdh+c=u#_YTlu%+`V|=%Il|2-+0e^K78ivxeIT+@ys)i9qgY!edhl0 zbeDyc4a((X_x+T{Iq#1TE(nFP1Z(#8cCTE1;mo;P#|MF3iUyhlT)gll>EOyfEBzUy z%wE{P^5PwL+;#iy-@JF~)~2BX&i#`K@(z7?#_^LA22*{a5&1Bxk6QCHIY~TLkrLX(S+?D0F zzq|AA?#6R#^%>m~Ee){7ecNq zs9_nsn&j%@%y#I-Ghd0Q>fK}jK;;AwZFu=A-?L_1<81vQvrNK+?n;JM3_}|@Rs)(j z_$&buDw*?0DTGDn7@9> ze_LA7MeodW3g%@&#@!?~NkwOf5iesbYdbQ9GD$21D+xMQHl({VHJ;gZki$Jg4ZI`G zb5esQ#VG-ocO%sLCwJnj{1u|@Z);bdO{{H@7`Y%56-~OF{dxAw>up^axSpJ0*&!0bk-+lKjpwE-Z zWHcH*^qseV`kyYc*fdysIS@%MXHh$`8!O6ab2l1p?H1~DV2fk&`Xf)?B$-(#dtA@^ z9@~Ne-T!&-Juf`{%;6~cA_F>tB>GULle2|vhu7bBcXtC)UkMO|Z7(nq7~geZ%c8=d z$G+E5d+)FQ>aQN}Mkj8Mufd>uJMp*jIy9)HOfzY=a=FHV*T4MBzkHmnV^1oKLerGEiJz7!+Wf@@{ScsK7wcE{&&5Os{pTy4X}@^v?C2K zN8$nW6HULLI`*Zux!Z|cp}_v}_fqK&EAWcvjKzk^e(-8>=WAwmI1+nA+t9Cu0pVNQ zQJt3|X^??fm?uE4@dEUI?B!qobjw|WmDP*lm0a%Uv#K7f#Cn~E*^}l<7pwSh2>@`- z=9JvQ>5bX3-+~BL|1m z!z_Zry&rxV8ZROo-a(xULSjj(mw-lab&4D-T37zS6)4P z!#(54uB97NbAzQDta-bo({H@~9Mn^U2*C48lkw~Cd;hn)?)c*QSAXYszx4SpT z-}0gFxP0lU#4Da#&kbZf0sP{HFVRNr-hHFJd(zH3yN&?C8v*6+bsAwHBkNt>+e6L= z=gz&O>ll1<$WnT7I(_lp`#yBx!kv#jcIn^$*7J`(@%n2QZu!=ae8#VGh5h}mNvjtdbsb;rJIi;M;Ejc5f9H?*) z$|NY0^wi|k$dXc%Eq=EW2|+@hqKnFz8d-80L-a?0vcY?7mmc6MQB{P>kO-pycercd z_RLU8n^jG((vA(QHBA$Rtc|kzy&Kvh1G*R9IC^qXZA{v?lt^SldHe8Z`GB{qf5n!5HrS^Ic2Wg6aY*{9 z7w&;2k$n=U#cWP*l3kyUy*Mu%rQ@vxxz=6bgfjKv@!$Cg<_SF~b>>ra6LeFk z(C7ZdBb~d#Hn5ck8PASphn=#n0+$cNVQ_0)YUNKqJ1zWNdt0+c)s_yJm3x5*!admt zkfRw7w-o!+4epi`v7VN((yq}>DM%Sw&Y^NVD15-_Uh@dU$!_pmi+iFKSC^YSfhNSi z!xZIGB%?yX*%16%cJ6XpdYsKqry2e(%b;hg3ZDcDLL$-q$Q`$bDI|D?XUoCU5dmb- zGrSO>=Qc`(25pHp0(X>}qIjHL!M>NfCII9kVsXR3+3KQU-P1v}xr|5I$>N+?5 za!*i-Y+GflmgMG%pr<4NlW`Y{C%ry(JG#St-u1qE`yyrdN^o1{EK}#=1^p5?> zXn^6x3x-*)2GjV1&mW>n;l7t|7+5Y3{qJ zd)I4+3?+%Le8cbDnm%~tbFDm;S4#=t*$-WL^}UZT*BD>j1tPbys_zSkjI7F0fMBgq za3?d_aC?Vgj|oc1(+1wZ;SrAS5lxjd1-65I$6p_h1AT1%3+t>Oi;YAee%*ejIhSa38Fc+8J>OcF9OSMMp@26U}hON zhixZkh!iv60tkfM;~{F=RZeH)xJeTbEW<_BD^vj)vR{2N2{H6QuK76ZlA~4EB4?Pqs z=99`pcpYqaclQ_?7Yht%luRin52?Hr7|@{>Q?U7^{-~jkG)C2>ZT*{tJ|9YgjvhPs zV1_b3{p_6!2L}f26iT{;Vop5%nV&eB5?>p;Z=?Rku!>F=gN}B;%5-_f*fIe*gblr) z`4?1@uhKRYb(=nXd;#e7wvGh7r5y=f zJ$}DhD)jbtqNM3#@Sv|Lta;+L0G$VFdJ@;|0it<&#|d2eL~L7)iv?SyntkXw*F^of zT3k6WPze*Pt>pN4o6^rV`U@+Hm7lLF&+;d>=G*1>#UyxSpqepxXS}OSHuI?K*2Yfo zjDATtG<}G;iCU&UrS}k|rQ$1918BB}+HX$m*<5T~mBIVX|ILP>P~ep8x=0+UB94;&g_#T5`>zD zmoL3G8l7>CQX-H%C$kGVV{h*cvzM5Xr6!HCyOND)cKYlsz>~BI(r&L23gBQoizDd! zfxG%vXzv@3Z@YMiv%+lrm4w_&Ta-2m43ePSV3}2Lp!vEh-M2rjWHqVN z>14zE>@1lr%Px+j;KnA44y1zODvD8zni5F} zB5-4t&9;3%``0aJz*Ag(ZnGPiD#D@XK`zEnfOA2NlPi9WG{Y>^t`Nkia?W9z=NW25CMq>x$^?}y+^NVw${nDF zM0h(xmAhPk?%6)~duw6Pp%o0;TiWEPtFgx(`MKerD`hKw=!bsj$A0X`0)y^9{KR*^ z=jZ>??~x>&2ziqeSeo|QzP)X~g;;=bC9PB8m`xfS{We@&7B#oI@(h;k+xXv43K&%gL?5D6uhg=B9!@%eh% zu*t4|M7^5R2fJ5pkpj^Gcu8FlyAr(n-dC|51bkH6j6V0SrsJW{=byiWCK=rtC{q1w zEj%=jK2N994RI|GJ@n8Q&!6KK)5VbcykNnDJ|+ykjs#r;6IUF64N<@OBJ{Kpt@4Gw zRc#4+z9xg$_TBqvmtFoywxA%sogEp8UO$P=+57_d+V#faGRNyG@dP{JY;Aw+*-Zr; zIJ^de9ytG*R~)Z0i`|gGnnioFvE-2q=2o0yb-q{;vMDFi;$`O#TY;oY0+ORdvWMD6 zk16vpL3uh$Lh%o5wTBVNOd!a(9(dKu5p4Hy2EXjxbny?+JGZNCL(UAg3E53-*X9YilT-5Xu(GSoH=v$;-$e}m%%EDP2}tf zWG}ML9(@MPIf(C+g%}D;3n``a#_Lz+OF~H(FJ3u)`rPF!my@YLU*6NIDz+tfMwfSX z_wMYvS0)Evog931XXi|6c5~iM&FLO$2zJ(JWaBZWlNWElZBLq;hDm$zg)afvzw!$0 z?WG@r0M4Gf>GGA>!36!dz-l?~0N5EF9E?ZxBIBI9o!xWOse!Gv$x}MDXK%cY=b!)W zcf8|V&8$`KYsRlUcOJl{3twwb-3MAP6Suc_!<7TCQY?w2D|(oLQzEtB@Wyy^M~Ir5 z3_Kb^*z7Y5mqLROTk*qR9e@3oVVrAJ>CBVw+5e4m&di=$zrs0$5+hI0JIiiH_sYJv z9i_&LI z*EUl{o$*3cMOLWWD(zeQvI2Jw4@7ZGC>$l z|0?rg8izJW)Ibt6a}P<70F+x&#V4YOQDE8b;ZT3ZWINoNHMT z;xKPUuvD*RN~1Ks0-3wX8))_;C%V$LT0oD-Tj{Pw-@0!LpvVnc*9vg{KG%|H~z-o*x%p(%m3&9=)e6t z|K=FwJXs8S`7F$@1U6(N>`jC5QzWfHY9Of_8-}xK89Y~Yli4z{FF<({R|$tb^V}kr zGwejr=YXCUY{5Cv^W`Po_pTSNT`Iz3v}5E;9DcHm40O{pbN8}VJ_U}k&OF3|0evm# z{9D@2&JLQ9q~yvuuNyr!6mFrLee7c&Ti%V3T!|lj{No?*AAA9Z8-BR*-2T2RX|2cZ z{NdOh+9SVve6;;qz`-B;*vFhf<$jYfnv=>#DCJa=rx+xXN@h- z(pWe|pGlh8x`d^HK5tW`W%PMSf(|=jD)eSxdb82DNkzD&)uue+S#OfdYIxu4Fp2lC z=em2H(C}e{=bDEI55K`$itb7~G8Ovdi23uzr9bO7f2-qrTm3M#xc$&@bTK#epwnvl z@Z9bCZO9ypWsVpmF=NITJM8WQL|&{J@**4H3a4qMfXxjHt0tG(vjkG%fnOj)0Z8T< z``Ab~$;sKJ3ctrQ05c&c(U6+VMwX;3&*lzy5KKZqxX7X*{vQ-Ksgc##)adA(6}ZQ2 zOLDUQiPEf=k77m=OkxYRDzCt@oZ1Z58P@Dj(`dkH*Kpk|sfPA19@d}h?6Dvph$=`j zz)0)47-sS3tSs`zCCJSZlz}WtEP2+1;0XpiBnY03c5Y|)p1r-h_fFlBbG~x;^mzS7e{Yg99_8BUcA^|x`YcC zyLNQj?RS3g##`T6Cix0Lo7oKR?(3E=WytJYzI5)TjkyQQ1CMS+V9q5eWvJn@x?u&9 z>5i#A^z`(-K@c81qrCm>JNN(1IfMf5ETiS1`z-vFPU2Dqz35dLL(PSV5N;Qo0&@p< z7^6%I$qq%VVgkymBFzZ&?dNVwub$m%4v$;0z5%OOpF(c*@}4!BAjOn4Bk%SUV$^|& zsyPAYNd&40Hp(V1Q2knx@*pMS>}<5HZYUraua{-W-#1*UR@ySA%UYv8WT)#lD+<#cx2nAKWlj6`Sa(O(dWrz zGPuT~Kfk_#2~F#<_;jg`CM&0=GR4(Mtc5Zh$%c-KW7x+&_OX?)U~kta-Q3mK!NEcB z(dI#crO9~Sx~@BW_H6&Bvz0|q&I#L_t^qwBk0WHvhbyQPwavYEWe>l~Zokr2syzR` zvyXl3V^4i)wZrMn@?l)1ec}0c6wOMQQbQV=MmsxsZ#VCq{M)e-F+U!R{-*1mFSq!y zUzsDFI76QYC;omxpBD~$>e-v(3PNV?Fg;+NB;=apyd=B|N=8iQ@e|gg&!PML+H0@v z?(Y8hkN^0}TR-*m4YL`2jh6BK?|OY5_xZcN>$?^{dE(JuxK>`Mqe?;_TS9u>^-g;H zzos?>fBu8BWmxRmowdqV_N#vHxvl5Jwkc8%0mWZi7jamyL(VFE$-^=@$S7kVgz*!f z)bDNOkF)&D6=?PzxvG^h(`VF&?O(T*U47y7K_aL_$Aro=BRtX?&B4Alyy>6@=5F0@ znqY#p;z(@!zCqGqQ0k?e0f3<)5}xlOqmG;&9K3w_(hFzLYMO6~6QEb1hMtI}3*LL@Ans!dxso=9uCQ|_7ofj_Wp3`pbskvxO zv|Ue)bMa;EA!77cv0%nbCz9Pb#b_H4mg5^=J$>h0`(GYvfA=w1#3=I{U%&jm=a3d5 z+H|m!e&e3})S2qW8=QZrTSNeheuXhnsbJtbM;kq7o#gox(e)hK=e zUR?sg)F^izT8!m(wKhpvBTM~zx9RED`7R4`DwAj|(IYXORChxO0h3cQR%945L1g4( zRo@lL6NPL?NVLb}773AXNW?J#PcIY`izS`+@k#>BbMa0El2S!G4fLK4TNK+T9|SgC%PzfpX>5b-3Dkf2P$dO*Ne70B6%n|uDs!FgDX*Ur^s*2FSVmJ+C@1wfePqfN@cA8kl~-g0Of+R7dBG3-bu zs%TYJQpg}L>-9vRdsqF{pwCY~doyA13?q>|0vM-L>pWWmEJP3k|B3t!Lv@~ye7Nn= z=QC%{y!P5_x7~KzI{Nbi5B}NVpDXM9-gmvWuH@_5=!r*v{(bXTzP8ry2(Fhd$6LUL z4Z8hPA6b%Ojm?mpxlh-u}*I~^^F49Vy@va88vXWOX zkd9|T-&-fjap>UIqls~a{yO~`UPJi}4yI1U;l9>Sa(mmWH>!>880*-*9r=ar>?AxoOV!Fsy)@U{J#g?(LcU@(`F7 zl52N&@9y2*(-$wkSY=fq?Er9}R9I?QTqo5uQ%f2B0w|#8kegj<4gug!)9k$b^0NTi zbO31Y)Z3koG<$!h`4oWZnl?HhGl-bp z{Q6>P)>*5|fABHhy2$&Z(B8Z6f8zZ92cAR2IqXo5OKJ4Kygxs67KAF5v@)r;z_dsd zoHEYM^3L*v@iGgLOu-f=fVTCNob(Fzl6{G23^K8KV58$Nr`^xrIb0oHg(*FMQ);>z zo9c3=vU}4ld{EUJ!r| zTS7@>`DgEV>Y2CoKj)vlW8thGaqfB04}IsY4md#}SN4Hm z9*&dX9S~M?a`r(&Dg%xN@i)sqVOCxAX)~20So!^*S4o22{Dy`N6%r&xO0@ZB;L4w2 zqWa;ZZZ6M}%71Whuv`N!g{!(-&wyUYLs;Lc6Gp_YvUS2Xw9%nsY}a+3MiSKQAT_a~ zj)`UAoVdysxUzH#*!{ZX%Q{@GiB;j~4P z@4old>xMo*^w2}cL!UqW=}$lW@WT&3{BZnv{@Gg@l)3PvvcYz*>49{{<$>U*Lx8WqrF|+>Nd-dleOjbx#;Bw2!dt# ziEr2PAAQZDW|_EJ?i@c0+LG*1pqiEjn=7v0$Ib(a8p27(vAX^&O=t_u{lT5)`hV<} zNy3uTL}yUH)||eHPrA^l2FJ&aajCurix`HsZ)KK{X7x-T_JRJ1SR($*turzhwPaRzPvjohIsr*}!tM%nK)93)J95HE zYr!^ZFGGPo_mE3etXq~PM^lHOGA~386c(~;FhH%|l&xE58hj#jgeV#kl)xsX*0@8o zy~If!E2CahsRDR~TIXuHBJ@?^bkKezIq&8;dv>S>H9PpGn{Fa8-v!q?01O$MPu=G($Y2C7Frl zsqxh2)VP(MX^6Cx+Axdck!}Rb?<(640yQ9o@MKyEw#cJ~=NOKGHg8yjNg3=GJU?Ut zn*QYqH&S?IXa<;rMSvc3C2?^{#5t6F+X^;|@uwFQYJf)Sku`|Mq4>3I-D+drW5J$M z9l{(D20+%dt}p;*#ynx}irXvT-Ov8Q=N|can$V5u<4EQRqg#_{YSbZ1GPtCN2DW+6 z*|*3sFzBnaUU_5T^Y8mp?@02sF4?0j&i3~9767=Rg#gH*w#~NiumAPGKCQODzyFv1 zi*G;ll$9I2?RO~~j(qw{Z-4qrE8_GQM2#PP^ieG7K_}8=N{yuvtc@2c)fbQ~L398_ zII`2{!~NFT;=?}rnNO}f?!j;Tf#J>^b=`Kd9NXR%w16>f%n)^0)0EkBs~zc4ZD(g^ z$bb&J|K1k_qG>tWTY1((-a=(J&s^FZUcH@Q>&&2o!JiA?E}zvjO-zDGUPv@$Av62; zDob_M*ZBY6ea-~aXcuW0HdD_}0sIS_#|X$m@E}$qlJ%ns~mJV((UZ zTI>pCc5zn>6^2I zSJp!h4$LnIhxXQ-;Y=m?Q&1ttiq&=}UHkC1>g^LXS>c84@C@|Av`6V9$ zrv*Z>f{>(ej|F4{I8CXACBW&~y_2$#=~+I74!|)vp+M{yPt$f}LoA{xFoIx$+yGDP z`TGubpf7m~7Akhzaj!AD@*^E@mXLdO)zUqNxOS*_sdr6bg-KXv-+55|c6445HzbB{jsoB&GAIkV=m z$9@OEEw_H%m3=rwQwwx*$mngmd;j>#6U2Gio#YLMoRC{;GI@SFdHseP?wd}lMDMII zR@J+C zO$wAFLT0;D5E0SfN7fHn^TSrpPo-W)!GBbxso=R@PS-RL*>RDY_D%z=OVxM8N zrwbQ^N47u$ZjqWW62#6uL7AcBQY?WpsqmoJ2eZVyLF=Oe;##aUd=&5t9Sva0?J0Gk z<#GVe;hq*E#iEnRGcAQP%C{d+OJU4=8R&R|!SD4TBLd*w=pz*!NPs{O0*73P?6<|; zG9QtE&JvI_-5-DS=NGQ_p$9tvzxg{^G`Gggz}7fo!>&v8NqA5med6{9-}h3jL#-2z zSU{hL{Ia1I$A|ua9j?W3^p$#OK%YBz?&8IZL#0{(pZMv3hBvLDxaq4b!>Rnm7fL%{optLz%~ziBDPK4e)`j&4s>81 zuitiKupu+})#!VS$K&1I-OHCRFI-3MsSRc8x~^$v*;%Z+5@{HYNb3MF7ss<~ySuxW zE?qk6HBZpGt{ZvhT~~*)7+6);6?69JXJ>j8S5JTb_{Tqfl~-7>bwU&IXvauB|HxmTaPs^!Zzq`t?5YSvxcWO@JNx{L_boIE$&_8BrKD!w zSAB98!9!PRN9zAnpPaUgKUXQfF+3N?YQbZivH^WQLHhHdnj2xqMxVnTf8=K#_~7?r zew(^nCv_b@hXZ`;hYBsu-AS5R+qV7h%Xfd^!SAgr)fJ_cbl*EypwCBYpde)sazd71 zNr}MJT;`rjNPB$flxxnHx~(GK@olyQ)d1>xE4r7~RYjTkhe8nZ6vL~O+F&H5?lG9^ z3@*S8(A|J94$QMw=z}%!CzfIwoyg_g;NhJkjT^5N|0oQ1{fCsc!Mj&>ED`8E4&#(5P8rb}1gTJT=E&b? z6rHItO|q*4R__a>!ocf4Idn9u!)yq#8YCgE(9;G}FTT;MHS`-3C%}d_D#(X2i;^mY zP%n)wmx+KHG7+s{B#5lggH9&PE;)m0+!fW|0_lYBXZTS4`sB!s+sF+7<GG6Fr_S6rL!SWv+4oMJx&L7Q1mB(uX^OTU9s(CysO8sv|WamCzy!zs=b^BVe&UmruiIzJ8ayfvM z6ijgjXwJyfX!!z9edfM5zU>h-#~uD$XTSFL{lRoG#|v;JL$ZYjD|59p7(Rk6tiWnh z3>r(0yI4%eun~}RMnKK1BGTnL&QN>_l$9!Ea2X*oSK{%YQe#71WKujOle|a&2|99B z0Vz+806Kv>TMonFF*vMjEwn(+R-dY|l!SyuhJaPmZ^-s9EE-h9>efxF5-E@wFe#bU z(OEqeHUVxXCYrTo#sT@L$sEuNdvb6aa;*7|({-(H}m z+>5pd!&g5bkyO);(`4qI!dvoC;#rcqW1QoZ*KqnBZ*Am`3z2onJEi3 znC5d&-uC|Yer@oKE9}&%Q;~C~KjxSi^nCR$Y_T4C=%M9}(+~a75B=DW{n$_m`s~@W z@p~NbiSK^zFaFZ!2d=H-y!ab5pnKZ}l-y=(opXNUjW=$*@y1{hUAlDXzy7cO*kAjR z|7qRv8?-@=2a6wyKKF;+`_8XE{P4pc{pd$~CFp?$w5c&!8{-R-v2&7cVlvPn8Co>a zfeB@0shb`f{8@&fql62Ua5d;g*!CCv^rt^PD9?$ZTBlE+zIgHC@y=bzfJV$2mF>H1 zDWxF;nviO*J8`UTBYFG~yLx5brfED+5DRmI$}$B#KCyD*IT7)VtM8d7VEyAA-L>$h znB-K%Q)T216yUT3F^5QPO#3{^5#Sn`Wd$Jsmgoc=L?)HYn}%o(zr?ZZ`qze1D>;jz znxBaH#_>)+_Pwqh`n(~>VA#6M%*RHb!+H$5Ty5n+oUtcjmHUxzDd_W+D_72*J^Sjb zuZHqQV93%vh>-#eHyxO|^w^m%g|ee|Or?NvnPODY#+4XlZm3aJ5HA#iGm zXh8!rT<{Lcl@+DKr?s8|vpt*PkW&tAyDdt!T{!@p<&J<@ zoNdFMFfxRkrNjxnThWI$mv@m>s*|eO;WN%IxZqQSL<2z)G_Y~NzJ-+(2O z(0W_m)UVmEi6~hz60Pas95T^T@e?5Bx*ImQeBwcdKIE-Ag6m?~n)8q5fO(aZ9vl{b zJ7Em15+Up4cP`W7)l7)RqKk+z#Sk%jFhlh ztTqG5At|cQ?KOB@+onMqlo=%lXk>`>K~`WQ1y-()>I9tz#=olI1>^X=l?HGSo=Xx>BW0v{4-e8}vYK-ZGguntj~4oLPUnT2WBZi!I*!C(mnGH5I@!WxG+C+Mg6{)B|BH*J z)QD78L#i2NpP;H*1L$1>kd#bKiee`nr6dHB$!9FX{w**7a$0grnV~?Ua3IfL-{#gz z^$#PF+RokN33RXo20Z=wpW3EiAN}Y@Z@HyxpFaG-{O=wgxnP9pK-n7WI<``T!ML2C zd*Y7wzi%u0*l?9|Gz_|~NFIOWXSTV~vIXM2kdrXJ`owp?=NEqI^T)evSTLXuJ?uyr z^oBfyJ3BjpL0`Ib$;@7V{q+qOOet-k#BPZ}_lGT@&yRif|8?lOx7~Kz*S_|(VKzbl zZe(hr&pTl-$Xt==v@|ybISV^UbaZrXX2>3D3o!KY(B~7(F!tzYKKbA`{CVIccYOQ% zbGaFgU!gwF^Dxk`5C7pmT=?WupZe71UVYO|H(kvg)$Fi4 z5KuAb6SM0BrmuX1PKx`y($PM&;kN-sZ~sznzVZSFz0UedUWq=x{PN3p+;PWbGC6hX z)HX#53+Up$cfLmQ;fEhy&TGBBz3;*ADcOwKC^euJvMG}{d*0JSV*Me>9kJf6gZx%e za+_1Y9ro2=hh8R^En08|cD$~B278%BytQ8H>fAhYh4lh}EFQH5_OyA$#{`&S;}$~R z>J-uV1~Y@x3+e5c#sN0LqX)Sj)dE2T0)%R0BLZRp0;&!5W(T#iWfr>?q91dAo*XAS z(C3kudgf`#GtRaEzp<%}7cyiIPc&U;KPUPChpk^a0H2>aXU9|wI`GqYxf0?}n_Y)4 zjFESYMg!n*mmkn}6BzlHD5vE@LM?Ymr6z;`J$S6in?!;#t;GJzP{)dRgan$g+`2OM zNG7_=fvF^TW??SMX@Do0S;YlQ+eAVwWYeWbcC~#r4h?Hp=o=`Ot=3(!i6JDX-0{xiOhN$e|79zzo&}T6jSTuQM zK${pDpDE-BLk0khjJu#ouv7vU1V9;tySeXOxahRqxF11FHErDzS5lH$;C1}~y>n$B zSN1!AwAC7j)tqc|KK1IW2+{76)N9bWNe7KgtE5N!<1&%58*SGkBas@S^E|fHz!T*u zWhj&A+Lqj*rwf-P?1he|TgxVv-NV5}F1b4u!q5&_P26T8x|fl@dM4j>@dS3m(&+hH zn%{bxF12I_SfpX>E2t6cSGKCX<%3Fp76EkGx=BrW7v7|4 zN{y!mmZrhhB@N7`)O9xPOk%3KLS06(+_bdh%0@Uup@XdJ+MHDra3H&oEhS6IEpT1)dBTe|oc_(i3pIxym0vcb5~fRTG+2kC+nNm_q2~AZLk8wCu_f%`(uy zb4_*7rAC%?c>15g;oPqD2;THbkZH1{)X3;j$l(K$%c)t5pTIyVlW5xX zs|KC2gi)rWREF-0?mU-Gpy}Z0_#-N8w9M&Ms zZ87MpR>xadQT0gl@R;xU?)UUO=wnzgptq4eNGYup#Ms_)&g1d;?Afzj*NsM_DhB?c_FlN45>OKL5;`D2J6m z?MXzWUkhaLsW08BG*U`(rzLBXyTdbcXC4k_5eE2u_k4BX+!Ni0A8vhxd)v}RW&0cc zc+Z}vDR&`==BBcjmK-5FhU6}Zx!ZV?>t{dvvp>7=$)T9_(8Avyo5uU^d9nZeI+N3n z?K)bgn0)FWv0OmWhg`_1QD!cum`#Y>f%EaI|ZD*Wz4I^M8ft>|Ne*ncb7L7(i4 zR+7_Jj-F^vE8M;LpgpSxi#7R}C0UXg=A8f@GTCM_oB0PKaal^%hrkE-Qx&M}F)0#( z4OtS*$w+GvjqIrrt>$*CupJ^Tm}Od5*|fd?Z3SRBs~p9~%o5Gg6r2JEHDD|Z1Bs4= zY`Fla>@N~;VuDg}5qTq7G7w&qi+3=B4xg|)K<+>&jq+&EL^|Bs&PD=AMrU&}0~yM* z+=mp{8jE6W#rPskSsZchsdu8g%9&N1rc;l+GyTiEbg4y|sVzhXVZJodIgp@{ z)VL@2Aw;sUVp%nBX#tn^NeH8-vHIPr3vOV$zj^%I1!8)r$fU7#w&^ou=6&;?4r-&>a%Y~)8j7=}p4{oVBzV z`$WC&5eC8-B?PZ)y~SLLsd3to7Zy?mjAUxiv~DRI9dL(;O!KBy)7E{Cx->no?jT{m zZFAEKR2D^;xux7Tv=YPP01k0u4u;@>yo1=@B&EhlMRr6on|W$FOPyix_6~9hu6#1~ z-ZU9yO*+Dh9E_6T%Q#dt{>TRoOw*9BCz>YZ)MQIJ9Gk*~);;<86)~r)tD($o3-0LU zoP^fH^b4t+k7R%Kum06Y0~r6V%Srf&?|#oQE*`eOzu&g)nKOrnK5Qe-yLp@H?rqz4 z)h3h4WHMPGy$;RHc6WC-T=TkZ=^uUc(LkRA->mP7B@i;C5z+|8o-YG{%<>7Q2iE02 z?c2!|<};s+pA);{aqW08$A$*o&>0T3$z(EA;TU2B2C|#1JZn524;j#fCT>V`dg2zGS{ek`ibdM+Pytw`Kd*b1;rzvc9lM+x zzSZcIrIE!1I-Np~hj#sLyv5ewcj*Rn?W z3H{{5v~Rre#uLBhp=Mndo6I5lj5n!8j%w?~H{L{7)1kI5hv7($8iSEYp-mvJnyiF?Ti{r|H=8#PY;^ zTGVWj<(-_gMwViyyT#6XjnTJn(33JTfys2O;##iG4$BhKkoiDR@&?;4@IA6%vrV8_x06xw{3hkF*X7GyLB^mv4I1;BfH&E**I4awnH@`fP92pfWy#MO-`B^&Uy-g z9x}4e1!vi51}B>ywD;WTXQn%|gxAq42J(0!t*gQfO0v zA~LN)B26m2of$kt6_UvCYjgm1&>m4>sxdic_%Kth;tPO{?S!q%%{RW{xz{{_ z%Z;$|+3&q5f8u5O!i}*X!<}Ada>o1#7Bg9LQX#oJx`cUU=yf1`(v+dDTn_C)1X6+u zh2-9SYg9sLC^a`#ceJ(Nr;EMPu=X}s7N-B>Yv%v`+2W;NI+O=3-Se@pTRt^$i=FqK zz6@$HuW49*^#4k3Aq;OP4pkySxm2TD8#~80Qc^{w=UI)Mq3%{|@3||tO7qBhp(isN z%k&#q_BbSIgpwq$@M=J^0bgs*MgXXVr1j2-T1_>ys(2V!RNe#0Ity%(&ULzcV$z-e`!QwJQf|f!C9Q2e$FJzA3gYfJnLko5x zwGzshyz$1EOLV~|Gm@$-QfgJgV(pX^Yg9#KN8^KU-l8p71vGwfI6@Dd%J0Ab{$acw z@4y3t4l4AwzLUTDQOO)`W;UDE>QyQUCdtfcdg!qi?YhP3>FHQomIv{m@v9$QyU3?M z`M(UGCxs4oMW^0#&pl5)_0)#`M*KH42jZ~r`SWl2xqtK7-SxDyQQdv_-63nZ``ncc zRlUddP`!cyea9VloSmJ;ea&o-(6gB>m&=X%zeJI)XhDJ==OHxQs&w}FNN>t_Avq*~ zECpWRE_$_CzVNt&;LoE{?S)X|btw|`NYmyopBuVoZnjpU4!7>-)Z z-A6-wk`ckRcNxr~x|Clj(tMZgy5=56^VKnHtIIzi8snSx(4#NwA05C0pZpO1po#EY zXb=3_hrj+E@8xd9@Q?oCgy2F2)PSNXce(Zz8S-<(ofBALa z@&hR6!T;+(zyLiy|Da$1Ce6jk9ofvf3F|zM>4SD&;rZx$llSiX@KI4Xkj4y_4CbI{ zd3j3`x8O>%ELFlnb~8w?3077&+|zO~I%ZcH#|69MC^ZSn8{s1&mjg=s-pHYp@<^Qm=QMRql^P5=(v6i&LhxuE@&;`* zFW0fFleJfz-7y#T8*iy{Tfl~ zvNq~l95mLxF`*Jkpi@xFtLXI;(+x1MhO_PhYdED0fW^BXCyorqE7%lO5Z&Rznj)}P zyOuzDBsZfBh*Wq@^h2#c3^@q*K<(5YN>m~NiYWs#0-(d@eLP+1rVFg_L|Rz_P|84H zRK{AMiuEB&M3@Lj0Ma_PPTgDeS z`LD09e`Hx-{Omtpkj4Wm`WB_$V|KGGNfZ{w*!?ru3(NkUcy zt;&FEp+=BE8kH(sw2Hu6(+Q12H7(K78Bl1>G|B`;kU=QU18Dd!SAqlMJz;-vqt%di ziwox281IX?&qSF}8;l-yzvT-)T zCczXEx?Wns5@ST|B^8zhQNX0OT5>y9f8$c(0M8pXyuYbq?Ek2BA?DxF; zwc}$Vp)r6ED2*>SDt12}{pnBr?AL$8UkU^Tt86q?6~FcI4{n_J8z23^Ti@}$t4w6% zO8(JzW{}z*G%f^!Cv9r*AxFHm{R_6$zEK-rYPfjY5Jl;9dxyJWC7=T|lvm~GBDtPU z-ExKm12HSNT(T~UAqHb1$&$lZ1yrKCWFqBD`nqHxC-1iN%ki>vEsS+^j354f9TDKt zIESuCv4&8OZ5p!PlFEj9u7lZqNjRCBMmcJW5S=n^ES0%8j0xC4VAtBu@fdV#U;@07 zCUf&DoWTXol;%-Hl9Ew!ShNg}_96O?rMqo@>?)AEAFgjRD*!TevMB(w3HP%HOVU(j zEh!&R3=l+`LCy-?a8Pt5q0X30qGXBH#0ccJ;+C+qWXRd8t5Q^qJ%g-;`mTM%pADR+ z_txQaIP($!sT#t`*QVOg%3vc?-PBb1?5A>^6n(-X$gH8l&Ar=B;YUtmQ}s2vDt9III_b! zR1C``0vxAvz)Cv8)oJ*E0=pRwh?*Tn)&4S8SW=~}u;6G+wL4G0^k?{yK~`zEl5W4d;rlts11}V;J^eEuEmcw1RufGS{7! zxi=kw%Ci$8l_7~_qeUwa&y^~!Dtti_$hB3vA}i&1ByD|eBkj`aS-Nlc7U%!_>z9B0 zbM=)6h(SvLX3yQspLr=hbC)lI&KzJ_aG#TxR9$500tGdiVl9;C*({W0T(VkHtw|v1 z=vwaplbbDv0wD3Kv>yuRy* z_Rwxq^^(?|a8o|sk*_QoOsEnf=H?A4A4cv$RVXK5sTvUyzN{v1e8&R9m7SIZ6z8Sb;;i<6%sj5X_Ae?;3%poZ9G4|jLf)?JdB>-p~ zSMHL@QyaHKh%8k0V}_Ot33SD%;)5a*#9(ZP{8f!`7$I^_ei{T6l<>=mvn* z^cf?h)-mWV@Psy9$pnA+(R(WvZ+ZQ5{e4Zh#Q{7WW6-^Y03!_gzx!tUuOIWH+w_i2 z=^+^OAO05nmyd3rdbEw1&ge+=fJ%=s=(R!fFpCO2kO3WbAqKtcS9gz1-Lua=d*_{Z z29o~dlTYrtj+sqzT8}K!aSPDcC{DJw0fTltClYWkOV*m;4pW*jC#gz$V7ETTkVWtk z_I=;?ePel<|NpZ|4d^|f^Vk9=80R5;^zm0CWh5twG~L2aPEOX8&AnLozmI2%J%5a)p5SM`S&h|BW%tNqiKI*F4(xs#`n)B+4De5hrV2g2X=17H!9&+ zH{rD)I9x0^I}O@|8ixYOSrW}M)6CZvai{_fW`r`XTY}?Q)C|CEHv7 z&rd%2WavKMym@m7+q(14JNE=^4fdXQe+_`3KM(dF{=`^{hbnXmhXzeLN3ycDW^h!}fS*9x=UWhTeZ3vFxg89r~WPe)kc z#_@+B)RX64vyCsls}^?Memo{Oj+Nl$A8q}<$wcn-w}u0lS7&92=h0{> z(hn-oX9sBsRv~my62LC>dCD%PLT`D1Jn%`hoO|OVMIVUI)>Iq-g+D+5P(fk_8bHbc z5(RZGI_T94P?DWmrR+?&ksQ>yR29^AB)L{&LVGEjRojt@=3bUS>tHQ_2``QTEL9B^ zX++*Y3JC<}-l5lk4S^~ovN>=%vFzwI&kC4^y2$ma!lzo@AcY*6=K+L>af81Z;o(7< z4}pi8ODQSZzpchoqlCajLST1PAC^FYE_8j4RVgV^-gO==!1x6C20*q^7bF{R(M3Z_ z?Ku)vM+Xj&pmkO8RzNgm#^wX2N^*}e=B8M$>bH309jL1XJ}m7UI)C`ELD?R z8idQEAw{NLcugzW8Nn>2?6j`3--yPMm=?9ZVa>EAeg z``0~*-BU{-r=^skrEN8p4Gj9|)oQJEGDqK`81%=k6n_3AKk_60;2->hr=EK1o_p>& zJ3AXA(P879gx~YsU;A_a`avDDTnqI1>8GDQBoE*mdy zfkBs2PESvF9dBm$+;h*Dzx?Gx$~K9)L}50zvU~Qf!zOT8W(|#J$VT}0|Nh_q`+t9b zS@zkte)IBIKXwG%|H8DFzVxMo?)m-S`QrcZAJ@DHm)p4FY8ue!c?gF;-}w5^Km6#c zsU={Iy0T>(3~2d+jq$WQm~zM0+sRd5P*!Wr=XG(CX*tpv4-1}g2Ci}*@icUm!d%^B^zdUZA20a-{QvaED_-y@ zJNDTRhn_KN`42ww;$24u`aEDg1N!`hFMQ#?`|dkGKcCO%fj*y|o&Do~{Ex@y4)kXL zfhYy~ysPAgK=~W!^R6t5zrIC$-n2Y(&S11kR(`XdZr z%f#B74YA!Jf3bd{6{(pCW~fFic46z=L_KJuPDF2Avof z%EL6n4paAz#8p8fI!A6^LpUOVl~i>ot3O>Ym)ijN^w5A{b~oJ0OUaf%hgbSCj*|q7 zfQ7~>cS3nCCPn{{Q_C$)pU^1K29uX?F-?qNf*!d0^r1WK_0Q?m&z;@*wBOnEANkyD zesz*S)}y?xrLJwS1p?^S1KFF5hOQ{nm?5AGtfd?$-HzU(9#o7M{JSJL?lCC!c%i z^1sdcBMxtN>{Pgf1;wScL$o&E#F0qz(4J~?)l~1RvII~LswBbNG@#XlvHs?_oNnGn zs5>#ZY1f2*?Hn=0_1Vlhia#?Wc zdanz;4l-1jpy)3EL4ni%o#FSE>P6)VMwIqS=jX@7sEpRU>(UQRjWZA2y zNSxT~#N3@q?#MGw;bj_RHwdfr&4 z#ycGv4}ed7>Qjf5%cUK_{%1n1cWXK!c6( zf#FdOv0Y=%8o0CTM6P43+ecpP74y~HJYIfp*_z_Pfi`vP-9G7wBSALB)W(srru64L z4YaMo;yd?3$W^JJovkgUZY#xme53fVy}1^)2+nlKda^!4P-J&q8J(TVL}oEDL2kUP z8uF!WqlIV_HVJ`|RwP*xXR?TEXGKJ5H_24*$B+1SLGIh-IoS36o=OO&;EH|+Se4bK zHP&p?iZChm>@{U{u%$_GlqJ1p?*hGmc@^B8$x=Zr;8K_YMxMZvYH~X>PfRXLv>WaV zTcY8!P)9gj6_LduwT>K=N_oJlP9nF19bz@(iUHrVJ-MqY4Fb>rpyUopW@GYV;M9;h zeT^p70;CE{Mv3&Tj&eZ*W9L5Cm2`$V5CAA(aAzXc6=Oo?Az>4v}hw~5Zjy-7&$`YIK(j84NR`YwTrhtEL-Wx~;T* zJ!PwP2`07bNS%Gtwgv1XSj>{VNZENjtWO<08nFZVwD8MOqH6NhE~@n_msDJdMnt5) zD+2!^bybZ%z6A5vkmVJ%5~WRh2msDPfx|;(gQ^Y3kBW8rxzb9OWIz%b9>KN7^5~m zJ!sz8tii9RRnZJ!v>X9ORR}g^%pH>EfD?82&-+I<9hLnV z2-_Mg0PEBf->u|g8loM0R&%KkGg|d3`MfJ##M6aXM{RKhl~STWnQDxr%V@lch9K5L zGtWqtnuH6KYq44*C!Y0*2aq+TY{ono15vIuBoo`9Wt7}S^O^|JN(jx-Bu}*@uNic} zV<3!TdqpKJd#hCfvg)apR^h94o3h}wR3IT$h7bqSa%r_h&s}*E1VG6v0Vivyj7lhr z)FK#GLsBSEqZTtmPm>@?WtqKFiYYLE>N9WrhOd2i*V_z!3T_()?e6pWd>1$K5DfZS zEVjp!ISJ#NL8;>?Fk)ap-?(w(a3$!t%P4KpK}-Aqpi3#U+3blYo_NJ8Uh&K`&x{$| z8S$P%407+md@tsVSAfcOE? zs|rklj9%zMkE#{Wy!{qgW(s{dAney$4m10g|MFjszqt^D-WH*{q8!b&zm(gdjq}i> zFKbH|g2J2M@cXsCcJj!NeB>iv|Bc_j@#Wa9dx-V*?IrEP8rV)8f`ifLQcBJ_Qf7wo z#_#^_?+#f9H*}vT?K}R5d!KmXi8s9A4F^5ULiK|Ff^&R5oy|haHbx<*OaiRMJekj~|Wx#ht z)ay`>2vf^b?K)>Q*bGe4l75~7%%ekMY~GwbIn?t#HII3#EYL zO~z_qJ1aptaO2SI641w9+W_|)lM?Zs2$(E^nJN;J%uwYEkhHlFa8^SA`s$LlweT29 zzq=soRLfEERwsuxE9pg2@}_(4{V^b^mIQdp7^r)-m{$`El+>^S6CgJTr7lxi8cyR4 z5)=yDtIv?0BhTPj$;cDItCqbu!S;(~HRVJqLl3Q@yLz?w>WP%(fK_5ZF6b3S#DEV1 z9rs8=?cKkDA;lpPvY}SO!BZo*7$RFNv_?bs?Owk&FUurVtr(Llof#N}1e32s6d1Dm zm<8fAMxr92m*@s6tvUH}V9KCNgrjSt&{rH+AG2%2d(gL_LqS7fK-N1`Y1`yQgWC6ISrC^I5uh+@ z3>4_u!x~m;l4=o>r9{9bL+4I+$Pa*ZGPwbO3#d|4MbIcxh7@Wwy3))vAb(y-OE&;f z=a4r6m`!C~bSG{K0DVWd9=i1KipO7U5q^j6BQu(Nt)AQ0o@8~)4`~1@Ij7+CDu8Us zSK@gq;B0LFU`I0ns4;L*JOPrUCSTIR7v}&(BU~uc``M|aa4XwIh}O6^_Irs(C+%K9 z@0t{4VvwAPK2k`6m<%-&up6Gtb0(Ksy1Og}eVv1+PFEsfCKuo`?8Nou%iF~Vq73bs7EK2egZmZhb*b#iB|<46;e(|dKh zR}^vzU87!mYPSe7SxiO>NL1=8n;zfF3aWoGzaWgs+DC5|ED8?iQuPy>rInQZi7O5 zJ22>!(x584s|>dlgANsr;m>>Sxku9eoP>wlm;rr-G9JVY394yI>C0dK@?Ce`6UEspD)`!+f&@X%0%eK#Y-t5C4{_yPp%Ptp?9-7PX z`KVNcd-faq8PLMMtZ@Sadi*6x!C-mUT(+Uwq1j0|GOM}yV!9a5`=0Q+ES;YX^Jg?{ zQ(Kb6a`dZOx@)juan4=u8vrz>KfeIcXCTrs)L=r?mA0VdG{KvY+WING!*s5wYUU*=E3BbdTy>xqZ{l?e*{^XfgLFA8uo^d4lO!C=h zpN*`8v)L>#==1aQ*SzL6=jZ2-J@(i*8Q@@F|Bm;L|NOs<(C1zBXY3tq{^Xzhle^I8 zus!VQ4ZV?Zb^Yc?fAVeL@PCIuTI6oo+B0wB&U@{UH@JC^t@pltqcI4zZzf`(EFFAU z9ckP}Ioh-7oj7=+e#W+cp}V!Pk&#J#&!ylKc@-8wq0PNiYmh`WWUy{M`%%TeltW3V-+NC1SiP5^cKQmCLC zX3#=fN)l#J;AhnvR-mAH+XWH@7w(ca;P^GHLq=8BVjl9%EvH}Lxe^4imYJnR5b4}e zO9BkC-mW_ms9;zo@FkaU4Ov?uNk}@qG{lgN2Wcs&~_A;WG$m1J=Bbc%8{pnIwMJSkYQZs`z*NR z@p1cgR5@IhI`piFAP?H@KwAvdm%+meIfMWM0@=^;{(4^up#ym@Mz6BuF zk`r#nuJkKNvZj)(E|k$I&+&>HGn(}AMM9s!l5!MDt0FN(nFX$EA;l~4G1NQ$ab1Fh zk@>Rsugy{iTM^9x89FVkQANB+h-A>DmK;8%cr;>DD`cR44?}|iHO7cg%Mk!3SQ2AU zhLb6Xm+=a+g(I~5^7cI z=_uo=0D!6>#F>M$B*0;b*5vecH6O3#NTRB)(Hu?Q zT`9+cB)U%@D_AuIsR;mG7R(GeOXbkr5J0f8MUK#=j9Qe)aQwJI1}=tYCu6{^B)yu~ z(X8aDkHz6xEntwl8>TNry%o}GNip#>8S7Q6bDGI1B{?h?iIJVMmASdc`eeh1K{KyP zX$e^^7Kh16Ymo%T4W;s(b~pwNU<5<&T7_uXIm z(w7b_M^w&3zx|4hH@bmAPugrY3t*~a`bUuwVM6U%JMtrCK4r92h{*m~gH78&|haf8qmg|E3=>kxVdm zmp9Bpwpi3`tVIO#X=6A^Nj~r!+rI3YY(p~Zz+vr@~6M<8~?H?mdy!h>Bww^nCzNiV~)67L%kj7Gdg!+K%cj>4%S*9d+ad) z_uqg2HU|B`uYGv@=l6Wi_w46BM>@pGu`5{NKlDRCwCD5-ZC9KBtw&yx&$QFkZ!7Doyh+X{8v=YEXF-9HpfJtb6dllyFavDz|GNuqmb zOYB@rOzl$wwjDU#YuIT|Y#5l#z#U{rk)-jZ2FzWCK}16?fecDIY7aaaPP0KGV*n1~ z66)G39ZUChgk{ZEBjCORR-b8tC#L2qiKK+I;H(QFCmXrc8aB)oD%!B(N}8Not=Va^ zc07!5$r5WBA4Xt6XFB+dj+0{*o+FH~Z)&YO#j9y=#Yezah4M-&B^)Dy=R1ZiJ^F}7 zfT6i8nY+AzhLjQXbJAueU#7aGS5h9t%kApDjlMhY)a+>Z^=4iy3qec_NV7;Y4UxRL3S0Q7F%iS~$xRaU^CJAd8$sr{KUTyi18 zY*q)$9T_%*Da|6s!Ys`lrJ&_%fJ>yAj0!PLnu!TYiC&q-C4g~eTlHosz^o^PL?8RM zS9|?WlS@icVaQl%=oFk-Mywvz(ZSl-G9}Qvu8stPViI!Hve#%&2{ieFa_dZ=c;Y7E zB5Ru9sBj~by1xo2po1B(NQDQ`y%6*EATgxcNl$v26DdEFFCrkpTRhCDRd`cE374b9 zDrHN-Qzogd6&GP2G;1^&0y6h%B8gf<))7(F=;9uMW0*-!ugp0FZ30k^bk7!g(=mYz z&bb!Vq8x`wVhhd9L`&B(*%Y^fItMs-c}^Q)6#sb^Z{#)Q z^y}WZ_loe#N`|Xc$43*sCHB{9oG>Y((4omAK5?MOOV@R073lTm_X2@+P%m%& z76P0`*MpjMpi;JGEhEQO4#s-O#OS=*_;~@3vy*jMc1G$xm2j?NMW7mz>36&9gk5Vh z75;Cc1_viU$tWCa33SIqS3WO2j244>1b8{UIi=8d55(;kE&A(rGyR?(m+rUzaY1stAz&= zf%RM~VRex>xuOZXj=1Phh&2pdQ^GJwGACG^OG>MZzMrJ4XgRSU+g|lkRlaL0y2wgl zG2;m~SpK96-W*4^^SB0)w8FzESc|Sja4O@-(R5xD*D8sKvQpu!UAzg5w@iU&cCLCX zI{mTk9TpoDS)gm7?7sHxEq@kttzmfv+#Ik&LpAI+qs4De8f%oTl>y4;vWNFpo>F^2 zs+E5f33y~Q4}X6J!RZ3iB*+pJILI}r3G5+ACUVICV~3bAf3nUP$v!cFXSClp&11)Q zkH-jKtrC}pr-ykF=ptc=Zo{!1NWueolkFFaLc&=8vjr=7WJx?ikbNFicl$?_JODn$ z+3WmzF5K4PsGG?Bs=NxPPZZ5LJ)S^9rKyVQ9cjgTORI!WQme;)SO@h4xOYhBK)~T zHY6)4q?vx!Jg%RnsJKvW{@y6ItgMV2QfQ489+~vnWUlYM!EhBOaKw~Ni*U`Xi}lQ| zfo;s2{o9WZPs(pU+Hx3j#R4c3y2|qW-)||N7}x82X%eIoW*=`g?WlF_goK2M*=ct` zYSZk$4v`l`kYRFjtStGu`(dW;*D=F?cR@^LqHjDl+f7^)=&xa*t*!3+g*Z{f8uO(| z``~}Kz`kD}p`DiFU!r(EE=~cwFibW`QS$GgC{>v5_k;|)zNE(m8XN8`2ljlMP}HKw zR;e3d0fA`M!3kYwwrt`652zONRcw?7k-t`7m&eMzH2RD<9oef#D*B9rmiJQT|8}U6 zeB8U96Vdelxuxr#1ETdMTtPadpWXDl>?maa9YFQJosiNoyc*c` zPqF_@)fVZzNWVD8qEkF)sC^VFOf>$Ml$pCArwIH3Q?>__@}9c-d404$W>39hACU3Q z?~U^Dtps;Qk}7SI8mKn$=Z}p!aZK^pSm7-0My&$$`$x|1TTYi!H=5s$dP5(mxAcb} z^B(p*vh82Qnz=O-oI<9g;5!}z6@z)cGN<0p(?Ck)&)>1g)|7=c1yWhe5{(ft9^{ej zpMi=BrblDvUL)<@OKviRtEaY@i*M-+y(Yz0#yNguZtXwoVdv*;N=r7U7PdBp8N?8) z5ankwtYlYp?x#mla{FDEbKX>@l_{I}FWg-(#ekKKRS(Mnjl(!I-szX69SU_^( zua#3L&7QN9aoIuXkanqVh84jPqwUac)Ebek$penjc6REA95&YjE2juQ!}kQj^F;H5 zOiNO$V+Bufs6CZ=2(z)X&4Ux}U^I>qV=|*5VR>>t_lm9$V$ggChuwt&+x?u-8EAqa z=ws=0C^%>(Qx)`O`2x2kHL2@PrGt1(JXNH|mz93ZR&0@xiRwxH=&wK^>c`hu);NNZA`s+D2rl?OjwxDz2IT9%V2~1eGK;F_8Lz{7A1^Zlz7g9{tXw1DH04$$X2!dLFgE4A+VmFVl`%W%Pc+ z3c2cZa)WBrrv`Y5F)!4Fl(AA`wMubrN_!*7-C%9&hlnA1N8)etg3uvks+L6#Msea%*h(?7i zGTIfRiIRyEAqAF*t&dXj4^@Q`+B)oD3uJG6ljRhN8$lV52=WzrrTyfbgL1XzVjRcN z15E8K$Mj?5;~%F4Ye*~eIVLDtmnaa}v}-#zYAXxqm1JbJ9f0Z@$l%n%x+q`V&5824 z$B{Ja<@nd!1d`6*5AD!?9g&+?|1k4;sP$waTs+gO2GX0^*G-XdH3>J5Mpx{6!-%`^ z*Hq$48LbWpt}mLYC z_>_p_osm!)1WzG(C_?Rf0x4CDz67EHKksxE!~GaiIi|KLi_EB=;h#c4$A84G(3F6W zv4D@de=U6;pxNZtwQHULJ^0>#{OD?E4{3-n=&VNw7^#xwVl0BRXBPg*9v;>Ix}`d- zW$<-$wPwF*_30JX$SNQsK9eyUKNSF|_+8%I{m648l^3rl=mmd1v-isBBest%!}{kC z$*)(Eyu7%C>NWMpZ51*IWH!QngNrZXAH#YK{Zg?GYl8+5Bn~)Tfsg`Y@1M-A3l|K? zrn9-8q0OGA+1$#gsJbk3pO)PX83ZUO%B|oucud;Rie-Zgesn;lc{TAc-*#AYD9pqq zVo3GYi}_YNe~je}!6z_rHcWMr=l=QH$||A8`K-w(l@b;J5`A#A5(jQ@hp(a05-4uz zUhv|STae9zDR!ljexf@Vc+OD+xT;+NFA*Sgl>WrENXY(hQ+nI7^s2Cv*VAyiQKh|pk4D997|@e??r!j@p8xYRDO2Q#q0Vn};gCt>-W zle-RGB5p)N8aD(@8EU5JN?ex?4yL`0EQr9LCGJ{YXK$St-@c?w+l!jx9*K&vAkz0a zQHEk#zs&I$*feM+EBIMFK3*WD3$VA$UNzXCEZ~mJz{8Iyf}yJ#hq3HPz;$*lXOkCD z;Wfy3M7!-#iUw3iup2r*3U79f(+B3yaM&dZgy~UlOj(xEF&xiT$kHmjc5F=pEGD8k z5K;JaY}~m8_P0#T!)!|o0MxUB51HMT`S56q2#seD+Z1X)@NS3>>koGP)`&t@mKT_Q zZ3%mYw5Bn}BzC)>;)xax%@8tfkE&5_s}=JrvKAzt0H`;)+dF(s+wA)rJNDj%)_ulD z^}d;BsTJQxtq}o{EUUwKRI6ysAgp3%wo=jA0@u#?nV2ngegdGGqW4)_`I5hV0Lc$q zi>8KeES^wvP!5~YjY&Qn*+sO zzuXbb)r`5!L0+@Y}y5GBbHyTe29GfK{|A3ma{?x+RgaBf2Za)Oy?AGTU0+<;Mi1rE=d*1_ox=pwg$NkziJAo*FlQ=F2Txo<`@1R5-bdfh79ZugN)!e zmNG<|A27=zLav?v*WuucaTe=YP_?XWk5^+uP}%|p)Y_;@lV1S+0`Y$5Z@>H*#XH9Y z(Y;~PQW4wXK=kUWh2L10%^3Gh(V&H8OZ(nB7zar8Si`=>@`ycqpaT3o*Y11&7I6P< zKJQ>a#^{$U*36=^h#zP)gn8lfngh9-?0Qe^K&EyGza8s@P4>CXlxLaGand(^Pz({V znxz4P-zTVgRs=k9WZ${JRp|As2i+zCZj_l8>+ZdCDXKO4?ySJluc))X-DHtRz6#hiIG;InZ(gv32UfIi$v(E^H zJ}Db$apVI+0*_2W)KwkR-*Z-UJ4$L1Y@rzT0`t@I*8Ttv6FO{b;F&C42#58k%8*G= zDiie%LeJCP6|zy{7~>x~h3OYA4H?)>zb!_VGrx<&S?fIl@L_=H?r|`MF7zpwRhfI6 z*pPDTSdjY%6j-(|Oj|RBS+KBygO}$f<)6Sho@>M~>5UvmQBbC}^14^}_|e*WK=5kj zRF#yAM%^3)t2@h9xoQT%WlQI>7PKOcbu}7n{y>JJ2U#x4)^`JXW$CN|JG3@zFEKdC zxr6OtrSF_PR8M4GM(qjPu(1X5I|a+&`g*>B)47W(J@XeT1C60=q8VGjpzE{K%HUs* z|Musa-Ji=7_dX1$Ow#B7~Gg=%j^P{y0}ZPSgA{SV`X&*dE1I1_G>Q*P93gZJO{g zfg39#&aW8D`iJ%WJYJUW%9Zk_6S5iAmC($#Q9IV^^2Ldo=%t|Bh%lN&$AJ22< z>(;+P17$bwcf%v*pmaSU=FfG|yXqj;!q3 z0z=%A#_-{+nhw|632SYvQsLKiO6}y-YPd?UzAyLZ=lMOa|93L%0*NL{baI_Hy?;r( zj}nW1^DrO1cdhaHU+*$iA^tQd#50Rd!vhii{-+0DA8Y9MML$>eoceI~PF!%1&az$0 z7wvgoE2Qh|WDNf4%Ks-exK_jIv@#xNkU3?B>#+9!AM z^FE(;U;T;@cH95jZu!qg8$FJ&_}^jId5xGhMAA_b?I)c*ta)(7gUr@Bpk4GoJ>U3q zGQj)qs>9>@Hl!cPB_*iA)?Cj2!qaF3e_DvVP4R+Whp*Y0B67^s41=v0up+AhR*$i( z<4I{~FAz}ysU%V@R2Qc!;=fwk0#8#Nm!{Zzux}gTS=nP(Kaj|za-xZ0E9HnKI+z~m z7A*V6CO^AHjkTaOP!ffCqFiMSw)v93dQ%GcPlLgP6Vv*8BFE64GcLV@7MrpPbdF`9 z1~jGB3?Ep*AVSZjZUm`a8WD`lEG-@{q&PVkr?_sjk}p!KmFScuYl2!3Oa2C}1(*$d zbI+(hvC^EDrOC-EdGp%b;i#i(HpZ(7$IQiy(aV9Z1kCUI)0Q6 zag&RBOpSM{8BtOS*f%K>O~Tr;it*bY>R?|OOk~ex;SR=Y)!CuRD{Om-Nd#}GRK24R z?c1I`w2)NI2G;}TU#FEVW`@cH1)#Ss7}V3;ZIw3vqn7>a-BI8-8or>?C{X0YI-3_6GZ`;IVDR z9Ov%|ZMWHFlWn5Af@FtcYX1CjjkQO)4FTIPZiLx56jMK1auY1o$cYo^PLurgyN7cc z-&s6Nscjc)fnftFk8e=1mg7w-B(jA9wiCIHbea)b?J)vTf>m_j{5CCN>XQlzDd`nI z=Bmaa6sWhBS4)%EcN_vfP~clhH$8k}gl`(R`yLDBQxsu)_2}trxbsRRH`rxcz%*vh zQe^#fJm;np8p{mSp0hd5oEvafpjDBh0<(L$b)bYrfqKki%gXZj`n3Zo)lfh%{sLDMy6j zhVV04MWG+Rk}5MYGE|VE?5x>Pg_&Yt9epsFY>v?>rX7p5p(x<{ zCse<;X&f?@#o+O+3Q6|>Eb{f~RlVuxVjYE$0FZY8{mPQ!$?MR7jjA!Bu*q8 z{_})R-l)a0_a7gE2k$qX7q$O9*Lx4wm~(D5bz{Jdl)Mp)I3Ff};x? zIqPT@d=#NL$2*9Q^n70%w1Xj@=8Edtr;o2ZKd!Wmy+Ay}&dY7li_qh171(g$;Gc$- zYU}nRQnGgruoXbJ&IbeHiWF~c&#|IEIRPJ1s(^juw2`{j2z~VE^0hx`kTQahr+EuP z{k4bTnGN;5#_QQsg;kfT=Z!nk3CXT3;N|9Xn;OBJ&-b=LyE5_L)*cMRb7@^i&)GxQ z?!RlHGuKyw-KSblWMko5AgbT{s_@p=2Hv8c_vcYt9?bj4FsAYrNW4UQ)LqDxdvI{_ z-3(Kh(twDx^{{GAdHRR{Z$`RexL07m?TVj*3aug#kx@I1v8VFZ-~5W z)vKr3-qZlFfitTY8C5Wq9&`B!j}o?3uxwtTbeq}h5S+6E4+sj}30wL14#YRXrPyQX z^L|f>j&wtyA-^p>*bGk*2-1}@s-XDzij^wV@P;3+SQsyQ^dPIw1P&O zhHdmRw~PSzGn8>?L7n#~G-fz)Mqo~Tbyv6%A^Iof)A+oQ$|f8ox-A`Ln5Tk7{VEMU z(Z?~ze5v|cxR3O7YuPH>){O2c_*T9n0(>MSY_iXcsuJ_7nLKiHHqE zu?bCateKd6RzIaJ6`-eviN41{pNT@_0&z?d$?!A&TC4CufJIC>5*t8oWDEN@EB(It zg`%D?Z01~~%(iW!RUUnX*p#5&#uW+F+q6D!9L&+0O6_i zr4He8D&^w^0VY-d3kl+Uu#O1E0KdIBQBizEF1=udt>y`3`}ROR9VIV-jUY8|K9U-DIX4K+ zD8(qJbB{I?*NcSN)yX_p2=Alox2S+$AySinBFl)vkA?q179|^_Q4%CMCSV-Z2?qWK z1alIb+~ycyj;r5pm08B6mcxR>RTUIarVHs>4$Y8AaY+(5mv;_AQ|hLQpg%c+FUCih zz|cdWp(-^Eh8$7Us{n_!!|ga)(j&^uY_;Z^)tCh9e?#M(54S`#5_JxZXuVRTmq@Ht zk=B>OgO5TYYfpu+sMNrcXvs|T09Z~mh1ruVnSycS;^^*NWB<0ZH=~|{2(94*ZXfSE z6Y813<~L076>2dAX50UfV&{m)UHbb|F}2vDeL}o$Xv)z2F>t6WF75{M5HFCrO%^eV zYuA_bK#Kl&1;(Ya1uv6R?csc6LK#DcNs}X7VMeVcMMBviPY{aMDu@JM)pS;0XGUDDg#84 zx#uH{VHY$w(Esz2;7!P{qaD5jO+7!!#J&=pj6Tj~P^rb7$X1Uy!A}=xH*?o^8srG@ z<_`VuN>@MIB1i(3kMqstSbXNAnQI2g=|GRi>SoTJuE_yaJnik9hM5XbI4uEb}?i{!w+6P3sF zc8DkzrF0j$yu!szeQ1iW^{&~uf8Q*uLZe~1HS%gKn!OmSHitDvYuz6IJHF1%;-)KG zq}eY6LA=nCe=gXM-SY!9yfMV(tgtku7E)%(`3%{K1nk47)t8_DL+z5GImUP%r(_9X zE4&+~!T=psrw_Y+d-A?_!}{#F;t0GGwUQ^I<2`Qf-tD;iC<^#@7{I)|Y1a8HgS1dQ zznv%EE`Sh(*XHJq$IG_o*L2?-4-4a$$~O=M^RfE%ZtO%VVq`OXw;B6jc;mBL_c2k2 z6o68Al;`(xES|AUO)it7ZsW-52El0oS@stACd+`NM|lVS=;Wbnn?{((oh#G}na>Q2 zsNwq1N`wub-+*5KBB||r!+aK+i92{7iQtH;KxD_;C!=ojVGbo_n}@4Yx#C?Slhn^q zqI%VYgKe|0b&hIbCu>0qqq12~9M3SJu)Q4w%LFQja^v7}A~io%+t1dy-C$JOAax|08uP4IR51ybG}sm~hYP zlP|Z#ssJ+qXZ+^^z_9vE$j70!2>9jga$w?Ush4t%%fmW@ov0g68*Psg(eDy|pn_e=3$+iC!r z9EbcuCB*hl7ty*imrau2a#ha!kpC`H4zf1JMYTEgFv)iuVr*@1l;I8TdcRE*uPorz zI=jLi$(bs|NCUVw1~QklAK4O|@oW@do6J_aF5896f#}VYi@uDbUC#9O(`*~kd52|a z;{?Po{fzK7Ho%SLYA{WCQ4I2|5NG2#OwExAUG5S_tJ(^!A~1$@F|sU~`>F*pDfS`MZ!w-6rk}dI`xC=*CbP|HfiH^C)RZ$(<#(z$WeZG;gHrFZ|B9= z`5x29DlxG?Yr>nT#@wP)1#ICa<4~?ZhQqMVZCu4bXUU440GwVzN@Z6RC!fD3`f5d3 zdiePGL`pxbiFxJoa{yJ0YFkJq^?J}GdxsOxGM98laOOis z33s#pSTT=ocXg_V{+Fz#CJ%x{LI0u#j5s%bH@+et`>4vfXV)Nl8}9L>#_4^K1=Jf6r`++_j_v`9O>)ja z{k00>jnl^V88@wnvm)wqr>2uCadAsc-RtISRXct9!XTA_RFtQM^N*w2!krg;5(pmf z1F-|#bEnqao9xrz5_Qoo&4&^mHiUjVj=s2svwe4jeGNIk+;QK#85A#q&Ro~HVUYJ~ zc3;zwVA3NHEH&AF$2g4rzBzOW-y^mc`0h5%AMZ5A%fa<&Kv*jK%(bEN+vMQN$mH?g zl1gf;K<;ogp(F=?qu~)jo|vW@svwGt69ibDBo{l;NS!2F#m_g7Ik#=gm*lJIX(Hs1wb$8AsL+7hgHw{OKc4hqt=L>>uzfN#R zHp!2-9tCJ;EWN}biic-3lx(p`jx<_ZY@ZzuWBGN=Or!F0!NtZ%d8Sgm6!ArRNTD z_7a?nN*VBolYtA1(c9fnOHRegOe(`Hhj#cPQC-TuY1Z%{hP? z9c0u+^`quLx-0KY%pE_v#yc6mt{rEz;16E}60!nUejwc%Jt$dvlo&pakxi>wOHP`s z=P5}i8OYk}UZ(R=aw;&daMU9(cbF*Re1jWliDc$bOUc!P_F-^y&X~U&Me}nKCcm(d zcAM`{pspcE$(&1}cu*qS82A@26Q_-9l1DwbrHW%uz{;97KBt`EKKoGWa98JBqWxl! z=K6yF@O?+(x@%oHQ%I5!#?}3*i11RFO4E z>~NubKXt^%88!$@xCFy736#4bA#=r6&=qIG8_B;kfP#heiI;v*y}fRQ{(q)Ms@gNH zBB`l1Bk=F;*C*+}dD0%xBj!mb28p>Ssj@w?-)aS&GY&x)3{$};-oC9FwT3RI%^VcEne#1R%b_)llixEz6Z%Q^ z*POopSDWzPg-Jv6Mms?e@|(uI9K`GUY6cNP(ljXQf7;66SGX0)nj`jRs964Fzw4&$~h>#nRH)9mz*HZ>;&i4IG{m+Kg%tf`yDf z^sy=4s#$J^STos=VrPpjdo1kxlw*#Er~SP>}q|mY9D4iG8^(mi487>y>?dL+=o->RnTjP5`nj}J(9S3#L z6x7Fbok52}-KsZ!D=Z%IrvLDVcoN9cUI#@aXmcC=nyM|_e6i>7_~uOUOinU~{OE1J ziN_fTEBrE&l7KXfc4i zh=Edds>luoH|o<(Lo0r6_gE$gEu@H{Dj(B(lf{CYN>1B>M5dW2NR8#> zJv|PlY$^&SpxP-^7DetX95u^s-RP%k&RQ5Z+94f(L^eB@&j*&em-0vvS5$~C{|EA2 z5UH4xGO5kpjhSJIMv8`+1nyL2Z(el2*u8B0ux5toZzM6`p(Jku4yqy|Hd zITL8X>cm%PpyrAgt_xlb@7dg%LdAi_!MUa9KxNbaO93)7{9Ce9(ou+;ks=VBQ_Ix0 z+r=){$4z|iY+!CDMA&S(v4var`o+m5JuUd1p>s1(xafGSXjm`Q9(4Y^(8zGM80Pn$ zD&KA_>X_v<_x4lm+mX!POh&4^ZM^}CTByMR6m0x-inaM0wL{a<70HvyHOwfal*x!v zvftPTwl4teKbWy3EXK{?mJ_zN)1*7HCi5>9G$Y3?S@~-KNI@-{$_X73!91~slsV-! zY#w9M`3o+UmaulQ;PmrbnZ4c*5luaQa@CqB7m5YJG!0nO)>TJ|u(i1<6Mz=+sC)qk zYo!E@T>W=oOehl)z96n8cA29o*^bM>l(Qp|TLg7Siv`p$esw8ht8DrLjyQ>c)uFXf z)E$%7P@#hG-mKaUF1lza6kaAnZ7aQ8WXrG*@7<4Gn)4c;GS|i$#Sj z24uOEJ{&@zn(LR3M8Xd+mwWT;Wdod_M5DF^Ia^w?+YHhr2G-Ri3iy!8YVb7fb2(4xM~tx&`{Ife;i$s%%gxyB|!bsft{>mD>XHT4t@#gQ8gE5 zxf0n#ut?sNG(nLE{)gW?BU1o<{`fUe3+F)0Y`sNp2DLYK!nz>TBIr5+az*`jlm*$* zJ1NGy90t%)s&DDR9$T>N<4-`Tl)dnR?=1c=|F^c6dPe_2_p0vu$q4Bq*fR&sobEv( zM`$Mdp(_uvnXlIg{rd#LE+A-SEbrGnunTl8K{S3H46@MIZzXLq*&T8vg)uiY<{n(P z_jov&&V{-;&~=G7dR`Mp00p;kbfe#S?}pcaPBb?4BX!g+_<|zo(s#w*THa&`-AvbYkt|0R45Tm0jf1bV zZwbD4@_c>%Hxm}N{oaNjMQyPHU5`pwgf=30NQUad$nqvTPCGD-|Nd?<$+45kqg)<) zepyv|2)K2vv(l62%z;#y&oX}K08)NygNJSXfDCbBt{#;`BKR-=at;)l_X6(x0=h6q z-jDi|ykzY>mj3sGI{7SS`5(#nn+GI5`;taj?5jY6=EfhJc#lrM9wD9nt&n1wWEL>$ z&Lk^QsUeEmj;kuFSile)%!PnapZ51%k-h$&fOK0}_6oH4a*dF`8-69yK@Bmob_J+N zxfkdRL)-B-a+t#g6Y^UU>QfM&fnr{C^lJ(nv1B4+jW&2)el2lFw)@@sW0D(F%!4mU zsY6=-Cc2Z2GrA}(@j{p}5SK56Ke0SvkTfknxq27I0FcD3Jlk#jmA!)-m~n}c$4|9r zJTEP2i!?La6wz0FNbmTL!UQw`x0G3@9QYYFqJ}mJ7RSlPE#5rV=I~PrtXbnL*3JTt zQZ^`wmJB%@P}+8(&6?ch=MZzC0_@7QouxgzE8^Q*v005moI1l%TcV=O<7DihDn6#I4h=Pj;n1r5oy;V*8eELXHC8G# zi3P~osY;FFqP{TC!D$T}H$smYt(_5LCl_B+bdf>f=YZ+u2*=JTsQ478zkhAfLx57- z-*yz-*u(XORuO%*TcQqQQZf6 zc62G1XtAcn{MZ_8j~~0z^Te_HGPON%rO}UsM$XHUGI%9TG|ws3|*Z zb)AP6Fc<2FWZMa`+!p7vz!QbK=-~5WZ1bv)6{;$Ee&97H8KhFXd2P2w@R0ng>XczK z;7_6kmia3&7_W*QifBFVtgKEYognW1Pty{BK&5(!kuvo(eF8^@{3Ao_kNMwKC>ZCzpa> zTmQN`7j-Y3Ly`@A$&eY4U44)Hx%jNaas}>9nDzvKXc1l zT6%(?0^Offq1nI7e()menZCZ6Fhy5Dg0!>d{SrYQRn&@ucN$$gxVCPe+u*o49ufL zqr}|Dro*8@;@Cz={C3+vi^bmrsfhxY_0P_CY^Xw?nLItuo~8aBd+x@#h40H87hTm{ z4>i!rf8Dz8hmQVk*Y7nLA?#i%h4As4W8b-U4LBZQ$8( zx@LyHJ9ypzUF&B*FK4g$L>I_`RL`4MA}>B@2Z9A&bTHjNBPv@;v4E%n@r1|O!$pL> z&hxjuq#-2jvn?xZ@7=0P|3IbCDv-V-4BVJX_Q?hdfxkK)D}#vXNWB4oG5k zPWs^;dvwu{c?~+UogwSr#1M$Tc9h=pz*y9cAQf-fQOof`0eboLYd*gpcW=a47Na}2 z$39y$EZRv?!xH>ij!E<1I#Ghd4xjmf6`Pt($LoVm`yJ~=+;h$XK6QV;EnRfMc&|0M zng6hWGNtWQZl!Zgo{U1B%Wf(qrdQM?`!lU7fQrk)PzohX}=&E!*vk%o{qD0oL zHrwFS79>)DWslf_XEXikj#tUj{xkPCzj@)j&VoZs%Br|2(!F`IkrrNgEv;mdTFI*J9nCP3kC&ohGA1@%n0=${ z;=(ybOKMC2XJchee2(FsxC3zv+va98Q4W)rAyHbxcQmm;xM8{nJi z-J7V_k~DJdpv+QDYjDqubh7^KBVd+w*p|93X9P^b7GU5soQxp}9%1@|s_l4CC5XQW z%~4Dtdzv8kS|3ZH?%On_09iLo6LY}42CujXe?=pfM1MYdy|jXEs?V6!+!wUFl&U2w zB=`oQA03koFsz!pu@m=&iaN^D5y&Jx3(9hF>fowOmP})??R%MNCzi&#nasyom)uC` zOkffmO~BY|j=^uQc20lV^l|&_O}?y+l)iDaG5rgV=_DwaiP8cE4HZa`DYU>UR|L5g zDTy$Lq{qbN=&-{Sw|CxfD1Sji9K>*QI8x#*VM0czoNTP(tw~75m!x3R+7Xo?G z{O~59?!T|q6(Y~JE1>wsd(23Y-K#3MdDGRnaiBDU^gZOjA}=-Em9G{|4W}`SvRdw1 zs4L;idyiy@`&J}3mRY=Ac_+Wc8$%~@OAuSexCw_m;72hO?F#=UpT z49Y;wUoO6vib@|p1b9j2F!{lHkP!$rI7Yq-TQkAdwUT?0bl=KZr*HgK{8%M zz-t6g`)owf?4i|1tJB}s|2XkOlnr+~fdn!kRHlpx90VJCeg+Da?ia+NDBXX}~W{aaztsUeNs z>I&=_q=CaEclDwyM1^sYRHzJRpB|aJ%psWiTqj~=3Ke9I!EXhV1X|fxKbis@iYVzq ziy?Ywqj6UnjveqsgcVDb?-*GGUBw#=CShVcgByG7#S3$nzTACR`~}ENey=vmy!u`~ zRaSA<9#?q!Wn``0{uI!-107c1C`fhsNog!zO!Z=(4p@GHN^1TDjH-)wB(V&TZxbZ+ zSaMESm$%`WEHzrxx*e|x#m(iMIFv!A;ELVb8c6fh8utR@sZUZuqA8jM7 z!#gv6vpIq_sdCEyb-{!=Kh}uuioYP@pzq*-YdsXp(<;Gfh3r>obsIHt!hp+(EXcnI z%kWCg@rc_0Rx21LcGG1<@A5+4bTU3dKB1amc>>q2UX9Il_QFgvTuum$9RZ_5|H zovMJ)>{dkln<7YB1GAdhFEv|njhrR=X-8>*lF$&W%Sbofsyfk5vr#W;bw9Bn9F^VK zwT>#|d!T@td#AqD1<$=B7008kBHoxmDEX=dEKkI_`nL^F=!ZD+(iS=oSOOg(LfJG| zIp$&4r9h7F7OAJXm=cDOHYeA;=>?L-O(6>27INakFULTlC^xatd4mpSwF=|x-n7K%w5`qVc{H5dr86BLSR6 zHOdAO-o$AgMe$LV{yqNA1;k~{WtVI_syJLWA0*>n$x;1R8sb|h_CN_shIPLsoTeXR znJT$re$Ga*{a^#8qmX)fZ9_G!jxn7DC;RPJQi8s&xMSiiX1i_7mn!_qDEFCDvYI1^ z)TkEjZ#A^2`#U7^F(h(_DZ+Nb3mc4I{)m@#UH*vqm!&;1$hp4=m0^aa}U_LdId0hkxFA(F}i%u4HpM@c-tF ztlQ}#kdgIfR;Ke}RnA!4*aK4Fxv!wF!7+)aekN}H>)B5OP}iFaYZ7>DmhScO6cD42=7`U5xbTq5fh-@eQN=X*I1BEdw(5=ff-c(^>8x_o9B- z=Ly8+S|0ltVN(CJqN%AkmnOqOl8>I%qLD9tg*!=r)0$Yo=t|6kVEY!z6lIUYe}AY3 zE3Vf;vAmZxW)uFYbMcly6kH9Hs0Y4_sXwL?Fx9^QU`!qZe@F;?5jm*AL`5+b51KID zU}Tr^muGsR_aIUth^Md_pE7`~4_suRZbx)~>Lx$9 zm<*i=&!|0ka)O2Nqs`?d3b;*KZgi{BC?%*$d$eJyFk?Gw@OGwH2AqJ`A2_30GxsL} z0P_?)`;oyX0Hzu|6>>ZbA4U$|hh%KFF?QG>3Oy!QCL&rFv(9Mw@0N^@2n#7x%Ya6B z6e`k2ZJBBgMHdFZFbx+GL8XSRm-dyjU4(HqMi!F2uU<Gk^cCp>nrp(F6Wx_3AN!{FWICHd7oYmc#lqxq7%~h@^jo3kP5r>PZ zl7nagxwo_cBL!U{jvu<1FR8Jhkz)bhIk~SZe@7y5OX1#-g~!^1K?fNP@K-%F>9EFa)+#$Kr0HX(pPW zRYLhtMAJJjrhRYC=c5;8i9U*^rn;vZ{;nopu2klF?QWw;5X|hOxO{4kTt+NbiRPTK z+F_RA;*}mD^ixX{yC$LzkUT)$POHFy?4Y^)``h@qH50l*I@N<7*oNTy^ISaAsCiRK z6v<+3wU#w7GS-DPB!g>9PmCZL#0oyj*ELDu$J;ka=$WjQG@Lk4dS9&6fK)lV z4ug~IJkW?!WxYgV;rrZUmJ=)FGY7iK?*2X9{owdI;qbj?2L=l7=*e!E39}`h-ijk4 z`E(fgzjy|`%zk~$DwDV#j>i5MldCLvH%$625pY%n>RkQFv!=6io#Uz|@0;8UYi`~x z&`ALg`Z*X#f_|Q!!*!6GAx;QZ=JghY5xVb<#8ZeV5U@KK$!>x0Y5^f35Eg9}k|LWL)9il$KS990n{_^Vby+I7=`tRu40!9SecJLCBg~Giy=al>sHZL&`$#|#;JIp7hAnw7f|G- z`TileBHW*#V329d^rF$l&;!7bSTBCN?h&JlL1U{kt|g1Q%%y#3i%qh84A1R!ogRfj z2Q#&2y&K(3V)a=mu0X*_AW2p$b6!L`s%R1oEmie;mKtF@nu;QpSxsrzs7i-Wy?9-k zZ~}s!Rc2sia-SueRV=;bmvR=kWC>&luvaqn8V}pf=k0V2K%Ug^a9cnAm0DYtvrXY#9=ZJR^|;U8sH7Nd16~ zmgK}t5<~F-Ml$7s!iJG|?P@dS8Alyp_z*Ca8iL>X;9y0=2)70pZO$3&+0{aD7EP_8 z4~S~aa}BKF)f*qY1mmXAB@I{+v`3dZV|EAnJZ&LRA_-=Uu}SWt8I zh7-WJJgzqpAx@xL0LH#yd1Eh`OZLnRQo#45I{}Rt2kx`8@t!R+BSvZNcEG&Dr4cnk=0I zCZpMDW2TctxZv2l-1)>4dp1i`Rjq;Qb_#Tm+{IdxU^#i~jJ>J1#HZUZbZgJv(C3nC zvHqG?IJH+oGbXbH0G8$emS>PB$;}9yc$ArQRaAj_Vaa1K=?!}V+0m+1Ad(vcST0j7 zCb!0$9zs&wYRSQa2HFm$7F*V?89!PW$f;$T&5IZ?wg8r8D&Er0b|>USkHxiO&ATiZ z(4oIEus)B?x^^L)cdQLM8yM+9Pv#^v?b|Gk6|M(1^ueWA_l|IyleNtZ+AdG6b$_kC z?|tw4zz06?(wDyU{QUfDzxHcC^O{ozMPVx~K26@-22lRNRUTIky`odTVdO$gU{nvjT7_iHOkilEGZe6{P1crY2 z@f!^2{T$)p9+xfMSJPGz20Q6Sn-Blc z=S?U2mwxG&FoL1u&na7xow4a|X>;-JW_Zb(37~wJT{>_lO|+luw3oc(CBv|Dcp=~S zzW06bgC9KhtQUx-lz!@`4$8GK$X^_;!tvnmz8Q3uqLf9LFJY4Rq~GhdjXwW@u#bG? zBZDm1@a5s?^B@1?fBc7j=!eGNj8h2iNjWHKJ9g(IANk1St2yL-x%)H|+}bLoMNar4 zi{i{JSw(C!IRbnmygp9dF$)j)Z~xGMp!j37N!g($I z-3z%ZKsHMl2!&Sw_n{VF$YcnfD30K0L}oH=A9K6ND-t8EF`BZrM!AUsKrB3 zxJAiFdLrrOn+;8WZ9`*PDlmmu_xJ{ZK_qDyd#EH3wO~!#h^NJ7wCsV2dXhwwEuc>wH zA;_jZ5>YM;N7(KSJr>i5peLC2A8HoW8s~9uMyIl%6vy&gO@$@g%ve*y(PqO$(Gu#jT7#U z^(Ni)jpbdi0)25Z?1c#QOrUMpl7wWSsVotPZM2R!(Gn{lPt1jcSHr5mDM-zd0mV>S z20aHYJZ44{0}x;9gCfnFUCt0GYT zKlP{n)W84t|9e){P@{LZ`o z%g1->doC7>n>TMBb@y>2xsbONt@;oW^dtj1ydeF=BY=s^MF~vWQ7Rm@)dNYxXy*B5Xk{bKHSdF&yPLjD7$u- z^I-G&Jf?u#VNu(;EWA{tJTxjIZ2>OR==0Gi-T^k*%&vsb0=O*t{3rgzpZM#4{jZO| zIUIf7Sh@@a*puNi5bDWaW15>3yrv9@6k8;!6p3P%W(zrGq$)|l3@*9QQ@;QM&alQi zIq=QOv}^o{)Or!XPSPkOaK^d}I(AS2sTLf(+pno!m;qQAm2HJS4=B=BH*Ap3rECjc z-^87}8R*g~jFqb`)%2A^oFp)7uZgS?G9TN>@m765E9WwH+@;2Y+iC!3Qb$cF7}YQ( z_QR|t(;CpzwQD|aISDs&fE{8X92dV5qRwMv& z^J=o?XtV6Yx!$$!dcv($JUxlxT+}Q#OBF6*37tcka$|DOem+aHTcHY5WO55)wmU7g zdZDAZb@2)Y?4TA^4hh9=#*Qw^Bvmo6i;Y^6n?SLK7Kc{`7jv!BWUwS9m#Cab7)3)( zD%MtYw!(sh3M44I&tS`hBGGFdYG7(tDARggu0~mwhEvv>ki#g!8y72(s4Uzx zE-NZD1D7 z3BeU#l?=(0X5dgui67hPo7epWP{^JV?;Cxsx1XpiHum!|ITBjlc$z zDp82!Otg7ioSwpvtNHCl}-MH4PxgPx^P=&?-gotjtMSW;}a zkMP}40IE>gQCHRyHR~xUWlG_^5e$x6Dr$;m0*>YLqdd_hMc6PI1Rr4&GH;4V03^4j z)oziykAxYEl%z_dFt61O1*yVOOEQ@g)d3AvV(X9Sl3<>sWV4_Tu{jB2GN1KgErs524Pc>AIIv6EGCTQO*o zfj$rT?5$h3;+q4nFy{XryD8nTJ{igz8=4y@Cnp;S#b5mHul-j)zf*-{Lw_Ui=sWMc z^XaFbKD?Y^llmJ+QPe|=W7n_W`@P@$p$~oN$tRzD$xB|c?NM)WIMg7|@qfNWWYh!-kt=z~;vF zb0MQSo_AnCkGtpXKvKSncH_p4-fj;Xf_kn$OajDYOK&^P_cyF=~Dre84q#b+a`#+4b5b*ulT{iJyGOH~p2VUwZx@ z^56d3e;Z%PlF6@vJq#`IkfH`7_mp9kB9 zp~uGz14taO-^uEzhGcBuGMFpfsK8?)Z#XcCj;*#y!}`2`bJ$3}L!wH8A;}vFilQYG z>C2@-qIVrtv}pLjrRzhCPfT9qKnZ+Yl)$D-Swc^XPwErg2+RhHvst6 z4L8ngTX_?LStY`I9=~x(0#@JJabMDo8++rCR)2Q5tUqQz%yC_lk*ETsOpz!Cci4C^ zS+M)6*pA4T;NL?{~fBNR=)m#}?sctAsYN_b#!R+zK}bM0e}%hxO`m(C99A zPdR9Wp_Z8}6h2v;g6J?qjm^D$z#K9K($R!Faz`8lEXi7nnMDsptpKvzEtOy^n;GO) zCK;4SNy|Rn4{ak!UK}|Ed%D56{TL7Uv=LP$cehpNM#p@8^yC?lAWVT2BuIj*B-es) zaMlym1w%0zP6hL-#Eev-;$?uFTWzn}Ga?+pE07N2Sa`3oM&OgIikVhjGa`Y-%goGR z;4)PVkjNSyCsiPeNhq|A6s|7;w|JfoSWjJOqyq!eH=e@`G0r$;E>$7}87qYVYv|^x zkB7fyh3||$Ob$RzKsxX}_|E;t2y{je^|clx(kY+aeP@O#6^x5VKsK;10p>BsP$4=J zarUOf8WrP&N0!LgJi02GMB6(^?w=T}Gtl?8AvGAzgU^m64v9yH$#6963WwYAfs&Z#ck0oCMx|O6+>mt+IIJ+jFQaW$jh=xJFB*9ym6x9UFgi2SvC_ zfjJxTywYWGth6*7vz#EfqY5a9L1u6SW3?SGHRaiITvtNnWW;LE;~=2c@G5~6WH5KN zY@Ad@fYDCMclp$-w6hXP%gZA&Gp2pl+S4;=&StP{)0mAM&<|-D<+;NV+XP-2G#b5lz$+N!i`@Zjk zAN=6wKKHqA`?hcU&;R*9PhWY6UzqTfUSK2-WI%6I8?K&>a5kGg^UO2%-h1y`-}Hsw zeCTD9#|#YUqihl^m^|$8Yo4E<2Y2}7ls!bAX{X$%Rdxp zgg!UZY5@>2Qu2mh;DL|-z|yE(|*CDD-((?7~s#^Zt=PTG}3`>@WZFFTd+u z?;4kF;{o6Pj`#M6M(cu~p85_?jqeuGoH2fmpL2Wk7`Aw8zqVk;iQUSMa!VL6N;9Nn za$i1|qf||&v?+t2k9QmaLmMB|wxGQfgw!~54SDXF-sA8K2XGNU8cBLyU~xg$3VGx} z+6qJnD^xNdSGMtdvU)fk>l#Em5Qo=n$cEM_k1O1Kk`cIX!fjG2+m$n&PjBM&ZUU@Y z?Y7xBzAddBtTdiL9VGiUZaork*tpG3b(ceI$J-zEO73{?%7lvsIt4O8OO)0;fei}0 zk6yv*`>9!s1GzG86aQO_-R=t7lEhqFw>7DfEt+`1r~m<8{S92y}UW6d>*O4w~1&mA`nRRzm z1-Y}c3gJK`Y%4&(&;SYmDfOqwfO{|>K*%7Fg-q3n*&;2ttmi;gh=VW@a8%NeZYbWf z40Q=C+zXI8(2R{26qwE+B-7qP7i}JA<`|nJn@aByG$D@|>>Z-sC!n@w+y1c0c5G&3 zUAa3}@K?XcHeel?Y~%uUxvzWz0L&U=lh&l6BTegQ@LfZY13>La;xHT#CTrdUN`s7V zNKT`}f})Aq_UN>S3r3^`xpsQ=+&3()1?R*s(JokGCM-m9t6wYzeKjpw7DSRg91S9-f}#fE;yc+}R?1@lBw%-%9Z3YLa` zL^xFy;vMU+6}`ID|Lbc{v*RVMChXBuuM6>vzD5fb@py^hh-*(luY#N4psK-AI0T09 z#pq{!Hs}!ak&(Y!JGbFE8tq-G#4Uqi2{SLtaCb!FTXSY15iYoxfEkfwa4sxY)HCj* zRP?;4Z4{-(8|3X00RUz`EPyp-^%Q=~|>}k8cZxjtNW4-A(K0aaSYs`C3R}6SiGZ$J%9a%=Sd% z{i=7=pwE>nn5ORD+gvRDF)HfeM{YmV10VnAZ~LP^EGf-qSXMEiXS5Hw|KUi%rUJ6p zY{q!qe`O2a22cG)^v6sL6<;Nsx07f#<*h_-`?C*RHu|!1a z0su^q3oc1AO7_U(_r2k@pFb9TKG6Mnjdq{}llIDajr(}5br*zv;d*au-}PPJwNX)% zr(d{m`jub#6#xT+du(ri$9oSi&+}>H`jmtk#8}_e`+HF3DiF8tj(3d~4V@VFCS&E+ zjqvmx7qHcT53u$sHxZ(%PCy4vE`2w+QHG7XZ(^Xsxx>dvA_z7gi&GoDBg@=$BYDx` z(-nBZf^y^FYg9mDUoWj1#wB0z22$^wSTs&KW4-f~H+?W$X6{Hphe!9;KyRpx@Joa` z%Ekc27PO>JLyT{FNt(Pypi*m60VBMwu_1?DSQK?n$u|G&w7pi&C^nr&xS%YNxxz&) zyPs?D=nPWq&E+OksRRwO>9$7lt!Z0%bVzz-|1zkX+IBWTEvUU=&~avj2DEZqFh&?g zU360Yx!tJ2;UL+?odI~`jiM2Qt zACgyta7Toiuc|eRQCXcNO-usaj7%Xjgf2fl3@gqMMQC8X4@nD$s^2BUdZAg)$TOtu zji@Vgae>I z6>c+W;{?8gR=bvrDT*@(3`J$h<$_3L$o`v5J zx8d4QIRfrCF15Yr@%~V2f*xa3W!hp3;qFgA{q(g{cS#QT?9H1u1D_2}^l;22Zh8sw zhvDmXG z-zdqA8#jUh9iVwIpi3z-?%ga5FXgH`gvr-LasVJWvdJq11A3rKYksPH0w${r4#466 zjwtq#$7Azd`|6*nwF%LjaDrYZFJ5b{nX>8HAW2tIBd`kxncjdjd@RMg8@q^xyP zp6F>_W~XU(YO|TmW}3~EZM29x?k?Lb@8`jeL_7^lZpm#XvjuXwuy%lz_}zx?#{^q>5be{x&za{Daj{Ez<8 zKidBOiUoV<^KTrI1jQEL0C_R50GNy^;q=sVJ{H+I1bx0+ee1-s4Iykns?{r zaAH4f>ZX@v*RD1<^sA%K7?ra-7wgtPZr}hrY@;x%w?<-wAdM#uC)}{1mpI;zVgGh) zmr(|Z7gzEHWbH#(Ti3lXc1@&?yliV(Uww@n=c|40WEJ!_Kf3Q0go73VaCq4|jG~d- zX6NaRG`Uho2r4w!W`v<{?&zd8x^L4rAN{)h=o=wZ8!_r6jiHn7qF12?qzF($3vU{# zBwVV{Ikg1bE^17BHV#`)gbhUsBE^u>@4{jVs7{BEHGB36!wYk#*MLoi@y=F_WBg%N zB`b5cQu65ayP)VqswQQ$b0S9^d%(xY3lVg5C|m_XAm8!dkPeU;Xfndg$G~!<&BGGS z(h^((24z^#p8{R0DZ6!5hf%D@dNr;>C%n&5an}J1{Q!a`GtJ0?(qolOkTe9x-MVX&O$bI<@!Y1#Zkav(Gr&gDg2 zx!eqv0GnGnv79Z<)%>vy8RTsn201M5d*lTx$&_h}bfLCZq6e{Y(LAR!k zA5Y>2rlEQz7;L`G}`d9zz%U}NT9T%A{&mrhDfUkVzD>rW3xP4ik z_M4=A2M@FTRQe53!HS< z0aw{P3=7}GA(CJ~&t|jc$Fht(XPUt-?eM-WHo{6;t8kjr+>+C1bLA7vPBA-0nr{Co zrC0_`GF%3GR{C1LTARdz3nYu*#7b$tdL1*j@c>Zr;$tDrR*&ndmCk5v6+Ui zj>Vm$Y?pvCcb$?N%_h<7FxPJeaImLvzk(f7=BSy)Vi9xYfoBcp-hco7Uv>2P4R3fu zc$cqY+a2wp-~Jk?jwxUfR7bg&!ibl4hYV@{;1}Nf;P1Ziv%mYg&-~sSf9rSO@Y&ya zHFgi$hoH~j{_WpBS*pv~9`5rb20dw$==0&HKM%HnK9fu-J^09rpWjj(*JsC##M+i= z%MZE-Zz0eErnkzm8j~fqG&w=objSw`YY+r*t`Y3C$^$e&S%(c%UDISuxY~BuUhjKtkmJJkAaMeSe z{ATGK`0`?)04e39Tydok!?F$74>l492wVbORj?h$jxRu797w(>{t*SF3bAff0E>q_ z=g^cK#}Z|UJluQE(b`uJt@kmGh^qloXA^5z%N6tVeZi@65aS zia9d0=#^`PJs~mf(zbsXLz~l3J`yQY{k)VgD%CSW%F_kHGql^9IXSB)wMqhTkTEM!sP&QQ zIw61sjOlku1Sb2kFm;8sD^@#|qu)G@&rAIWD2STX#7|HE+yV-1h{nvlJFz63| z_`|#1?js-h$Tz?F&AR5dN)P(A*IxVeU;p*B=EkDDvHql#pf7D{F6nRFUa6n|ng8n1 zRk&mkaqq$PKmL#Z~$8)vxx`SvB_m5s~tY{p%2|#$V+7Bx8M83a|&@x z({zctzTIw%cU-?dx(mJa)?25@l%$9ly5ZMM(z9pJYD7GF^5om!{`Lny_`z>|>sy6E z7ghFNuFBi*ed-IZ|I77Td(IKD*urSOmuS3bK$i-KCxDOy#0x0LIeQ4gySIUZ)Sj3! z(i*Jw#fTKd4=rPpVEY^5%BKvf~4cFr&( z$y{1ykUws>7layIvWIF7mwo^L_Rr+>gzUMTEGo-!Z8w64JMh}|)bI6`$GQYwJiYf9 z{`;T!{(tw!4e@=S{pF%N6$5%b#tF++TC?}B?sIrxWp4pezY7)- z|HXgtUtGWDY%86vbc=oE-QV3cH*?6T1Eu}sX`H)M)dcga=Ze|s4#I{bz!HMmsuy@NX(-?LwTVjaUd zxb6MD^fBF-k4nV%kOyS{SC0>^ThuHMK0MH*&JI=pk0wDM-26Xt- zzl_|gq?Taxg@P3;vs63|Ckj+bs^wy_?<5EqtreWIKn(&&r)`wE-1+c^en{W6qCBo& z#L`g9#5Lxz{uPwm?#hbEQW^g+G!1M(GgmDAup6(7J4)H#Zh#Cc4o%ffxS}CwdvIM- zMzhQNV08iL)uX}8QdUJt^pZ-5mK}=GAfMB!XAn#cry5stRtKi{H#Y~_nYKN#T`{Jm z!6om|`O+K4*B7>9ul16=oADilHJhTfBBl1UDoR(*W==D+xwQg30r+kQJPXLUK?#Bg z95=5KGFtMAaZu5--jsQ`=7>$nQUibjpeRyPW&SKk6wPfXw~QJaH8CY%qMM^_W}725 zLp!J0G{@Yc_fZwbOYGQ1L- z0_*KUg9z@-z>;=yna^`phw2K_i6mW2(ZLy>FiJtDk+CQWF-;{WM3X6LZRbv624J=U zgYb@CgG4J?{pxVe9Z4`$EvKAXiyap+yX<7`Ec&}AY%2Gf137t%nPZ9^fH0YQeoVbYl|E)_8^-hEUi zPT3{teE~EV1-K@&UEGR3pS|owq0eQT&1SpZe&7Qi`1ZHI{pzc)E&%re(XM}fkRTwQ z19AKDAOG>6_=%r*?X}k=Et(rgNc8&OOZPd-ueipeZ)wI$=<^T%@DJZuuS+eEnSb~X z|KWf9kN@$N@BaBe|L1Y}BpC>jU;ddh&@(O*nw~y=`pPS>+@iC5#hw#`o~CJ@XW;Ji zPfwmaDb3<4;iX2t0S7!|1sSa0``Bfku|l7V0bLmGl7|piSSr_!j*qeDKiCwbykq*Y zW6V~;Mi0+9@w5N@uRl*ouGj+QNJ^5N(mYEKisqS&KyEpG0J5{Yd3UFolrT4CZQxd; z?~MO-eP$TftSxWAI&V0nUBkYu#|7`-urU%e712Ag0`o|(q&?RkRh9k9yPq7+&fgk4 z>;73Rt<=7RQ05GzaRc)eh|-V5wrq%C0DkUg{>J0V^YXa8U;giZ;s^gXf2w-#ZntZ# zN&1KX@E_b!#~q1CwseZHQJ@MvLrDEfS* z*e?Tmt9w>l%S%R|?_ICYaeXeBddi;r+l1=i@zGx5%Km}-v`HN7I@a+RJ!#gtI~-=W zyZvSDA@y=vA;rY4$@>pk}or(;nz(So4w3wa2}518Ln8OZmpfJ<$=(7!!` zT9JzT{Q-6n9(87@EvmN6upG3N?r;EwP>3uMhJ8OSM7Oj#x_)-C=&iK>wJ+!3gwuk> zch%qngN5U>2em9w_Tww%F*%H?9S)GF%<{>O-W5E~c`o5wkC{0WX0xfHDbv7Rf8$J( zB|z;~t{6MFC@wVK)xM#;11omDyMu{Yl0gm_m`-?Gba-n~2@>8KfO+o2n=){ApPkZ- zsBKoK*wd#ix{!AbYJuSm#U_Re00Pv&)&ro@yv^EiR#Ohrx&)RyNO&v3Mk^n-dt}c*D#)_4)siGVhcBmt!fis# zv*iW|K-H3ii>+w`AeAh498Csg%=>j{nRW#uy%mUWMaH)&C1p5iNj|V!EanL`r6eEv=S3k;vz`w0hV9*`1S!ZHBq^CpauNx32S!$Bwwam{ zv(&svJ5v&%AyX}B;*->OltE@|3C)1(00%rOk`8|$3G=XM!@YT?3g%&*!%p*1*eNKr zOs!^NR1Gup+0%8~F5;#8)d!sY{`>D223-tjtYGd-WZ@gN{O-k|ucxkBx4?o#uTkmx z_y6$6KYaGN_wk@`KK{huUA zYONh*AOs+9#LVYnn%-l}eDdtsGf5BSK0jzW`r3ORKl8z4qFF`k(%% zFXUDjplt>5lqRB1CenrYx9n~WnX!XH$?qH7=hNx;cJ%pA|LH${scbh^0j zmW@YY(5Lsm1${onuW#3Wd9k*j&sU-6GyK-8_M)6XOG_S9yzlmF4qJdNLU|0Z9N$j; z%H=Dkw_Tn}6OD=jVk(QW4g9Dcv>;!rmU%d8d8WWJpgTb;oz>$Y>19j99`t++ICe?m zN&>WM$!>Wjz<&)g9d^jom4z>!xkd+%v zC}a{Qv^ruC^9x}>uWj$o0M2gV$kR!BZ^g@Ow{I)eA7_BK%$+MaK(GQFMXT`WG*9ya zUelYE9x7017(vOE zf+Z+rNBV%w;!3CWDX8w6aEF-#WBO-j#3;SwAqsVMgBhfbsZsk@5?o?;JTncA7G#GU z$Lp~k%gUDUQl2p(Q8Z{L0<=sdvg8X*kqE+xrpoLGAdlsbS7x2z-a`qN3*y92kTe=+ z8X-w@1qK$br{YkL%r@CLNQW8t;>SDYUyVGMtGYPjCn+d0g&8fCii74Yh=>ljEu#B zT%jX0)6{nE6hiW9F(c$k%o!#3(Yr7$+GeH&Fg!6s7r#w`9WtRs;frY|Gg*s4CaMie zcymaZD5aw@U8H$>!w5;N*3)WdZu`NyzZ-{q3Y#;LI{-nUa*y`mV`e0TU`gY=VU7ZbvjzLeD6H&wPT}oy-CAoabc3#+lI0aFMr+(_E z?!C$FB9iN4>gkcPu+-;dK;yYd(3gVu&1^wSuYCP^%766UFF^@~gBJ!}svrvk+Ch{Y z{eAY%d!PR7>tA2@)#n)tIGU+$u+qFP1~-5p$ns!bJN%rrE3((mfBg^|G7@Qod#$)8 zf+@3bBP~saIeA9F+TE#anbBI&W0qp*YI(>J0=N1Ez|a2=H{qVY@X!ASfFJn%f9i}s z_&($A8DYtej!9}}@+N{xW-8~tbIp5h`}~OW9_e_#TV0==f8h83pS?RLOlIT~d|I2m z3fxN*mW=b)J(Sn&yP#|QQ$O`nf9#L_F`#E4Jf50%QE4+?Y8gmgj|948w_vG@{lM@4 zlQ=n_oI=vTF^cxN&)l<8eCbPH`oIUy_#<)n2Cww1Qx%S%{^_6o{@?c}4+{s&@#(LgUdl^_InZ>r^O)jM! zr`P)mUynHP+V%oI%9S$iK(VA_K{yo8uYgkhp*8?|q0Hp<8ZG1SLN?k&K$?{g-R?c+ z(cOlpxd^7GDjdrf%|r`H#B`v)vA@-kQ=}?pX8q1m5EBqaCnD6dq3>=DsxKI^^($YL-{N^;`Z0Up!_0ZitCbzEEU;=R?7 zU=MSza)z`8pTR2JoTN>j+p}c1o(e8V(z2osQ4r!jR(}00>pIg*hiBKoXwc4bM}ur8 z9GV14n!L-8h7RuKV9!+u9HP&ica5$fQ9I)>wSibUmf%NT6hT~?Fqx&Hv3#b5*L)TY z60`OKOaY4^|1$STj4<~easohU%1Ki0Wh+o{dEwXPknCSi%d{*3XiZ|&oa2y{bV)Cl zL@GUt*qqf}njDmwB@bsfniR0iXyqGZ67Z>)xbrvDmBFL{bKupADr&;WJlh6LcG>rYc>w3og;w?O%nti#63s?T_}IikmW^jTGI_u(t38m zm5*eJMDP@iyT)zT^W_eJ(wF1jaN!l2835dbu8xvMTlsw#j>f)c^^|~u7-VJs^SzI) zMqR9BZK=_F_eB;tCT%~U&F zU|{7)^S)m879Z24o0GFSmvo3=n5B6^%vG_Hi!nf;e3Chpiwi61X@-%;vwCAW(8MVt zF?eA$oMBd8iS?Gk##|#XR%%dt?GEgRu*_{kr3uIY$*k~aYdZ?i=zHjxz?n7vKmuOI zoTiv5gi%k4jbR%IDL2jBqZwyVqzP&8O;~;_XG^{Uk}(UjkeFmGz)X=$EqSN z70dz%#w@pyOo}$`W-!?z3OKH5J)PMmna>qrK+J+RQ_MTgSrJSf#U|0L2>vBtZ^!`U z(-v$>1Z0Bo$$TLvSaqb$W^?whFT{4c-KqY@tFONLTaH2h_>ceiU->J4rOws&>On6` zi>I|)BhG6)`bd7^7L4QQ?DwKD=qnPI54C$qQdRfwG6Q-gCw z7=P#EY9GX0eo>7Ml;GNxK~Z6I23Bz#`Ij zYG)aar)w3xP2p2!Exp0Wkak-$z)V19lJi)iD^~RJ!{>!V&sT8ppZv+6{9}LY zkCB|``6z)ZwR@?rV8KKG?Z5rE4+T&jgg&Fs-3fKEI0I0J9Y~U2p4-3n?kBKkwc7mat^wGKNJt2;uY3jXslnP;Sh#R_Js6ymlmCfuYZq z?Lp}Cn{U4Ppk2)^mp#Hd`h3;pHlDq@<|-%jp~J8MTn@OCgK4;+pB1UBA&gk319q-) z9~FD*N*(Ej3Pjzl6R|3(nvAf-4EUhF*6Dj7Aw%KMEo{-4#w(|3VUMg{&;qL8XJ5h*XDbY@D$Zva}75rY%&VEGZb7>95GhcqVP3 zFizQnzk$)*%Mt*f^O>qWi&jTb)%d+J)v2HZ205mZF4bSE+TX?UIR~2+=zQ0L1{P}F z0w>5fVlti?d~gAP6#SL2B%g6kqwMm6eK@#$&v(2uno^_4ha0w|(J|65ukU|)&*iU2 zJ4pf}vvg?XG?#WI554jcWJgy<>pjYrKG^$9E*bOyZwbs1Of5;m2_#MKvvYe9&q8Y?dNJmYHNzM*;z8a?lnj3HLQYwI?-UnbPby;^s7)&iQ zA<~FKd-c?mUb(CH^A#jbt~o=wFf9ApO@LD6 zJ&EbTt;SA8V?r;orjY@f(lR>)+7YqhVOH(Z66qu@Y8K95<_MQS5nD}(S>cUFKtVzz zvSnIC*NQP~05XC!rOauT91;pjr%8svp=Z43FIUpYS0mOvXo>ERJzn+W|ypBF`%=AdpVLQs^=gw$mZOm(m>LKq>^N6EC(ck zP+FufNphVTFT~GfE~58IYQGm1!B3unt|UynBfN6zZMu!*z&0{+tF^ zjYOL%tg_iioM|YWQm5L zu{)iXe%|wul4?%ctO|Z9iWcEbUEZ1_o3or2ZJKH~IQ$Ux6nUL{)SDeJ8aPEpG9hl# zXqSVwNIovt(~Y*-Y`*!;Zx#mq+H0?Ex7%Vs7s9(npPv&XeFO&m(T{$#@*?7LPQrUN zppW!7{+s{izj<8wUs9U*%>3HBpL!t}^t~k{Ss4g-yItY$XDE9&+oddpD?1{~9Gnl& zb_SA5#=J{6UHDlycBeJ#Dk5$Jx-yYXl}iVN0bo|Fmu^8fq) zzI^_Jf8ft*-eqeckd3($;urou|Bur(7k$pmD{WXy-it+_A3ddX?(>U~9)1p63eUre zI0-4rJvN|ZN}@@*Vf?7*CBsvRQT-W6E4Ib}Oa0t|5^-f7*AsquKAh4g5K{L{sP|N@b z7X(g8K;eL7f|9m&8;qwM|9b?RE~*sc^JOn|u21d(+ylGRISu{rS|A#F8!DNA(M)WX zQ0|JUsAQV;jKOH+EXGXZt<(Mk8ReG;#c7R>xeMjfJptKJt;hZ=%^)K8q1EFc-S%hR z7hvZn5O1QXz+XvZ(85g3jI@P#Td2j*J)jD%^agJMf^OO>=Yb*vOq-y@Haley}va)KB2m%O9(K{ zOiGF&071(lD~eGv!%(JX(}tYkDK??0)CD*j`b`dBu7h)fImV3+=YS4SVBIt!ne zlv&Ln8fnZ@5^bm{)XN*_c_Y(U(@y6ZuDX;6V;8LLM;i7diF;BlfJHX9JMA=7J7ge| zr@WYp`>N%(rfh~e*I3l}`4k!~^!RGVQVD=7gI)^&Bifqy-2ZR+Zda45i(3?=S%0l~ z|H=d)=A3LaYmy*DC}u&8CNQ(J7)l^`$|#M9lmcq>psaMbt>(g8Mv=1_`tb#!Lw@WB4s(ZsuZ7 z9+>4O5uoIp4WS-yR9YDvkvJW*ufPC~Z3jBMunZa5aKKlDMXg55=m2O?g`!l!Tir@R zh@%St7eVO0kw746aL>x$*vA?)YPxP(1K=hdMqM135jeB>bjj-O%}#H%-8W(;ciC^==B$G45d7>hhotG(SP(G{msAmH{XB%{rdGNCm{~?pik}Z{k^~U zh(eyVOW5v%4s2JhEDW0D1%V z31GL|tr^gZ*s&>-tApR#p?KwXFU=|zA!tWW|M~yd|Lw**L<9qh8Jmp Z+#wLeVE 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

      8IRh+Rh-3h5ksY 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 z°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%0A_2UC6UME&S9T`k%zs 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�T$j@ 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 ir61^U?o~Wp-5CU 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

      6a%v+YEHrX0TdVTo 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⪻g*qb670HVJM)QS(!22K~n+wx?B4<+{VYBEEms$ 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

      Vhq2o_&)Lt3NkFDv8TwYF&O-j&BPj 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%0AU<)f) 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

      x*?BYiW4(RX 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

      RLc2?ed1 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 -rCssI< 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�qLUtrRo8XSR{((AP-71{E7j);pasyX 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�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 z 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 z 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

      c=tVYiXQhp&xnCYTX|bd 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

      p! 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 AdjJ3c literal 0 HcmV?d00001 diff --git a/src/assets/assets/images/bg.jpg b/src/assets/assets/images/bg.jpg new file mode 100644 index 0000000000000000000000000000000000000000..4cae77eddbc42a7d95bccccb56eaf8ba576823a8 GIT binary patch literal 545595 zcmbTdcT^M6_b(bmMMOoBUX>zB73p16x`6Z^qzNH(2pyszy-5p56(Mv8E%YK?s`Qf3 zJA@7)Kp;H6?|0jK|J=LonVB^+YxX&7K6}p0{+xY2b3J{%2zacbpsWBOA|e7P-7J7> zG~oSz&i=RM)-58Uo0aI+e=q;@=+=K4`Cl6N|Cs%E^Z)Js`VZjAJ))D_<-|l!0JokH z5kDci?gX#^07Q5Gt8Ku4D@3=5Z{N8~a*y;r*^L46G2j*vG4ZY2#CPu8zI|iue{&sh z`^g=O=K^wfpK6+uu)0vb`4*RbkL_JW8uS@=y)rm=JLd5Ik>9-agBKXo5Fr zt^oiw8qLh*Hg>~#G7MA%^#vfHoWx8+(YaVMtW5SsnISN~hpl`2??C=XsqCNDM{uBM zg8EZaI8$b7UIu)1VvMyCMnhSoedaXCJSaVtaT=f~3CTszf<#3x+*O&PbFTq24fBan zLl<|t+H7}Eoj7ub`5wvV&d6x55BbOQHqP!REW`D_A6*)+Bji+4od`gANXu+55L1Lp zni8(;(K>}tb44JzU>V6X$-3)lm<^kN2|}Sci-X$ z-Pc@CT{^9?j%y)~b8G6xeh8e1d1RE;QbfoEtaaI#Ky4|cFX2zf{@r*P)_u_<&W`Sb zdPQy%KRFMewBB8+5G%P&puB=hVk3P}7h6-qB`VQ&LKVtDjX78`#}(>_vTFiAZ9)CNBv_t zdndysqZ$02mN(T6ql#CT^o|%;iDT%J*_g3<1|LVH3oTcUw2fsm3Ax-;ZH?Ceng`c_ zBmIjPcKw{Ej`cPHEYzsLNQM?=`5#N!ZrxP%#97)VKZ6hIGZ|={<}6x0wI}@e$G18H zaAaE12nqg7k)5fgNE9ZGY**Cq{gI+TWivXR!Mpd~V5}k|i_6(k3V+e^>$**T*UKbH z*M2A7lXH6WM7yzKxm>i#2v*7LNy2@D?E?Y+yxE-IpsY8O_B=(-Zxo;5HGlTZw1Mn2Rp!HJ}LzTCizoLAm?TX(AbQGb8qRy+s|Qni{D(M=⁣*u>>pm?eny>)?( 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�(@PmkuE+ryYt`cSdqjT$ERuwFt>!34ulu25u&V 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%0Dhs=sh5J61nKDNS(5^_2IWoEjnTG~E(4 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≶nLB_j(l!p6<+hHBhSu_U6G1 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%0D@; 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 Y8u3w+N~Q0wulX24F_LM;dzP{P*>kobB>(^b literal 0 HcmV?d00001 diff --git a/src/assets/assets/images/bg.png b/src/assets/assets/images/bg.png new file mode 100644 index 0000000000000000000000000000000000000000..01feb57d392499eea94b40801cb013f823060920 GIT binary patch literal 757742 zcmWifcQ9OU7so|!!LoW^i(NK)^lq2cYm`Lq649fV=vH4uh|X$>=)dShUnPVTgy=Q; z5M2XJ}2`+TKMAOG4TFB9%veYkMQvB$~ECC zCV|!qT>+uMAGddPM$;kslFu@~RGcqLcAZ-zxndZC=?Mvmc8q{34cw3fkgf1+$KqmF z@Q;wczXSzl!~R(x=Kgl1TkSeOxeV*xIKN)Ily17elO%VH&Zv=2s$kt`K#_EVb&<-|Zoh zc`>hk#N^xumn$5gpyLm6n1*}m@J(cft%!{<)(-rZ!8_1XIr5^4t9(J)X_fE-()n9; zWru^DdUcZl-)zRVwUw|pcV15BQcx#y_a&&Dfh8Iq_|CONXoidR^kL)lb?{9 zRT+L|dJm|mV^VjpeO{vuAzL}?9U_nUGe-0Nk*cdXhw5dQor=ZRqn4O!e(nX~R5;H# zKYnjvFk!13lIbQ$@g|{%WF_c0fJ~ih(k8)JBr1q18kwWb)K~CWq;;ES!x`TE0YFv@ zK>D_DO^S02E{;IXwN+$#KEOl@981I?oIiRIRa637S1dr186KtP2Nv&$F@N6CxVWog z+Q4W8>@1H=&k{|^2)>jv;>|p&IFFpQFDB%LHL$Yu$2aBR{F&R{A{rK2*l;Bu*k~W^D`K?tOb<4;DrKDjncl!0i zsJFiLPZ?1~6qA?I7afiAG&Vm4Ia$wMIgqU$#{{wf{y5oPYDIH@CvR$C5Eb1|(A|sX zeTA1j&YUn-5Z$^blkg=!cD9CjjW$yz!PQ=~D4YXVSTLJ>g3=Fg#5-mtKw|T2({mmp zos&ViJtKNrLzEcj3HZ|?9ZY6&jYYqs^Q0*j)MnwEUZmL=m!2mcv$xQO9kof=>*U3b zStR!5Z`5xJsTdxBvb@6FdX2IeYn5|f@s1{$m2@VUzbz~E5`F$rdurfSfzw+%tsi_k zALmn zsJA{304^R$l2dmlmG*O%tp7|i3|*%K{=ThNo!c)ex!E3ubnPpAU&1lJqYjO_4LfvL z`P5^-KdsSF?9ZC$Acrm%*2roAsvFBB#~H!5wQYaWbE}(05!Py>YSdXYrDiBI0Z)>~ zu`KKAKTE;ysa_eTxTZW;?P!aXC`FqfzLzDuG!~kFPiY06eu;6@1{(DzP4Xa&G3mgk zuLr)$gX<^w2sgMCxmb@Qa}!P`Rh#u0GWtesQ+Cy!9rNb=ZliwtD2OIR>L2lp%_R$! z^A-pBh0s$<5BV!*58H67 zh&^#Ou9?MS=CdVl^_6#WvBLCc86Q%M1`j$W?9NfXvq3nvTKUVzm&Eh>VbL!GBBDP! zjwvkJo>Y4_Typpb&-~WlxS@K+vAj#t-K*Zc=(W_+dUJbNf7^Z7kUekZv-+Z@b(a;U zc>9=P@$&H|`yGQ?Kv>cofA?Tb=8}E-lDOBO7dkxu0wR*2H#)*Qs{yZYa=?R2y^`qW zCAoK>uGL*v&Sj@>mRq)_29|zd&sh%Nnw0NE9%9d3LzhV;6fV}he%*Z4cMWGMa}9!* z@2_x9U1HC-!`4Z3B5wG{!~gKZLK)0&AX9wgmuz> zsN_)eUux0U;m$qzTcY;ED;DE}D*!ux(4M@;$MIqR&Hug*oy-Q$STwWUX_f3x)O`&e ze(TDu8xR^fG(SoC&Fj=xV&M$>$MYXyO1z@_NpIRz;5QA|_G2}Ph12ebKOawfom^M- zpm!b~mabd{7)C4?RrQ>`Wc4iZxLYy|`@&k)ef8>l`uncBG91er+y@)Aox+|{#~B-g z#>~AdI<0_PK)Km1fOkG34fnD~WA5itsryNtVZ+W0Wa&aM%kzSFROoI{r2K7HOyggH z@?C5A$U7Iq&MRi16;49SR3WxBsp$2S6;WVqATV}Jzszfg2V#CjL;f~>kQ(HcOju#xg|X!}9l(di<*@t6B5$Buv_`sYAgfU&yD740wE2!EqFg}2&H&GjinsnjB%OtwzNaptjz_~RC06< zzBdV@HmL1|jrw(%n%^1ifa9a}S1u1=%qMo5d1Ehr%8PMMjhp~sC||qOyobgMT*;yY zU-Pa@()OZ7OR4#2q17cMd@mVwRtiMo13uTdX*jwHy2V+P5E;HR9f)h;)|^MVhY2Sl zA1cke^$=!99P0{22D|PsT)T-m$b2jX=*DsT+C5NbObq9c!?(d>D>QU3Rp^?9*Fhmfl-ZKW3M>BMXk(9V77F<9qA1&dWK?FZtMCY4|0 zgx*ReE0&XIN)TzrclDuQUWw1|zT8k~#orM=(wP7taS7`0L%xf+dGKJ4UPV5`YVZP3E|1rS1kNso-p;PEguo;iP?>wk1;=60a9T&s?$PeYTYzm0g497X zMT4-}+IhRP3`l8h_;o(pDXg_65jIbDo^0a1)i{6YYFP#p@+vKEGaxO1qCrV_5t&G8 z;uel9fbeLp&ouZIHET9902dJtf496@Qm!0x#1tAR?=${h`4_Lzx?v91sfA34^xYmA zPny&ZC}DY4HSrA6uU*68od(D`xZE~1Kz8%W#Xj6ta)i4rhc!pv8`e9%tffOyt)5mv z^|4*uBvW4Zkx}1!+o}4D=Ykf!qkz&6$_d@HB{iXTlB#WrCePy1k7$izXj15V!OEn9 zaAj9Td<#*6D6!?kx0De@aKhlhOmo7Z9Dt4tc?AJVubTWAvAL_~U-yHyt}*kb86?$W><#{9ArLrQ2+fV+EV>qm}c3jXE7jcB4ONYD>PW&!`r7}J#>}S#{NU&!cgb6*%dD(ya zbls;ymrtWitD;jXvxpzq-2gVYjVp2GBbT((87-7abj;}cM_LU|Dbn9MPvcLWlks&= zke(=qO&}CEM3p=_a7d3{{B?R5T(P`CBto=CCkeMzmb05g9*clfNMxJ8EqU+9%fh_w zC$_!wVLmys!Yb#-D?GKZcoEMdf0(5gHG@zDq1uO{&!>MU?f%gBz?ZU>N<(&SplNkw zPBVE`9e;F9tWK!24zA@A>;B1&dIU2%ktiuci5jyaKN^Iy%HW_{Y2k^qqXuM7Rr#tG zA!EZ#t;al;eXp-^+BSU#W8vQ`Vana*1*PT)6fAngTyGSD9=w}DI@*&WGG0EFpEm-G zNZTKeso)djFU%@_7nj~UY$g7{bm6gd`fRTa_iC@}>g8U~nVMz58h`7-rhY@waQH(a zpTiP;@4t_VmIb;O)v6bC{S66g*LT_D75jcZQ|i0l8w_O6D}Juv;anjnkrW7x8cPe0 z8uPd#+=b@vdfc(SNJGn+{7nBrZe#n{$@j07jom|w5S*Z8@VP}z$2m->D}K!JFLZRe zy27_!b4s=0Mfe3jf@a@scc*A&s_3i# zJN$rmJxQQB4blAL0qUGI-$R+!LGyPYY$d9G-kHjdT>Bw4>{pGz8}%#oZKqh+npZr+(@$ zD%sE0pX$T$NG##F-@K+sMdcZp); zjyrE0E0N$5c(yFk@iKd<*bp^It$#0Md@JrfUb)$;+w7DXG83xV^gwdi_*Fbc#Gdn}+ zuk*fz?s%~_R`jC|tX@uDE!?r+AO77lzS=_&^t=Vs=r0a>UaJiMp$<3k;MxTkHc(aI zwC!Ne2po1;5FCF8%;il%W(J_Q#$0bfvM|ilIZ&E|=Cfiiz z7-%pHB|2FJVhI?shVOLPmB_2dHgk{mFi&--B%HidjtXEm%H1>sYrnFpO4-(MSzsGS zK8t$8yW8;LrLYH!bON2W-g5QBw3QaK?$J(k!D=D1Ggoj>;FL$RMty$d-%=OnT7knrjJp5VkdF`Zj7`3?H+UEbL_K|g}LZ{wK z?OZ+0{HRw`1?De3`o$c?H${H3Io8NjedtfdGK`~khxRbxr^Dx^&~}2@E0#|k<-jGQ zZRQuxq4B|=R)~!srgdb0H!j|_O{jYE^`yNxrAoCGqfD z&nRShs4+shb(mNly3zi};0ylJDn}B>BwXi2ryO44kgCtHdA(_?V#~2f!f0<@Pw%Um zD9U7%T9~f&J>Il9LB-&yxr{xN7pr+g-+#Enl&33Exx|2KuaXrfOPktm{x`yw0}Xh+ zC2gdo%|yg50@K@DMZ^(zKthAP8~L)8G5o!?=l0zELc|xkKl>t#AozU59}Hmk-86=4 z$GaJzCHhk~zHb|&f=Oa9%z{$H3QqChSHnJA)GV}FXK5S~W)WhFL12Q%B{E>f|LlUQ zej0FGvI;VRvyEbsUOmQs`vDsJ9QR{ZImkU`aC(5a4YfK;X@#%(TqRId&<_P1!T2*7 z$=ZS|)~T2-o-$6J+dnH#af=!eUA8_)x{um4BUsQtD+!=Mo!sn=AzGk!Px!`}YGE0vAB(2NPKu2++tK22M*oLvvvE z=(<+ufmRq=$tK^T7Q>;Ntt39gMGKvuMF($6&e;G4BL?qU;kcZA!lspMC0_ho{qPBx zLoNEqH%;Sp0CC^r!GvO4_>sH@uRpGDq3#qc(3j)JsHuTs`z?OyJ75SK&PZQ*Jxy?V zLJNi9j~wchOK1r@w(D}S^BMs($uV4@+)O!4`f!r3^?^LlfPn&<6id`7Z>C9cvS|d~ zGGt*a#smUJwV-KEf(FmJi1&5#M7mA{V1IhZ#ws{_8|V1z{Z^vQn^(QZ9c-merWr+E z_6vV)*fFbGIu0?}52D{N>xso%;W?UV=Elh2(Lf4C0=#h+z{3((=! zu6R{-(R|hRecEbe3!Z}YEwB-jAo?S9$}qKS8Tga&>YktcXqNpJa<@$B_Sr8eTJ?O# zQ*{6MP~;n521U{B1MQ+qwAiJBQ^xAWf)u%6;bm%FL?5p5H6raUrY-IEb!=K_^po?V zLB7pP-IlOa7yX+ACC)pBx{RLuD?pF@U-m+->(ubLx$E1=$ULRq&)$jaWQmfzT}hV< zDv`h;Eyru`Hz#1DV4k#pf~Xs|{dh%IUbH_tYY}_GYeYW+K!vKI|KDP|GJcqK#gS_{ zUQU=9sH0$&%BGf={8{@KWuWvja0aFJdd?zJ0|k3_z2N1!9!TqERicIYp#q{{`28UP z^NTfz{PN_`6fQQb0{XFtJ?1s4*LDQ)im8Ab1DfFi2B5WHbt*7ag)QQhWo$yK!q!Kp&ZSV7IwoQ^KqhPFC*K0#K-CT)ZuUH;@jNWEeOPU#To(*|DH#wOb1|2YQjj{kU7hgw95gf= z3Ad6ndc2RNe4$|%$p2i|c#7jOh4I>!oyw+9jZi!A*`H4hadU;i^qO9L_e+kWcuMt7eXtco@BD>L+sc zo>~}za1~8tj?Weys!4mU9HL4>+(;raCd*i0VQlE=1_v#P$1tc4OPcGGNx%)*=DPD{ zCp2<)0nBcd0KSSLtSk{h9T6x)HV^qc<;_<>2U05yGtfZ(j+Wd})X#lM4Zo?FYy|$) zp1rg==%|y6ZAHi#-u@1~&79;oRPVq$EtHNbG)yRQLv#F^R0bsX>th4R zn*K-9GW}DC%8h<7Xn$Lt2bz*P%WJfc#=wnEu?WW0$Udy^(Adg*=s$Hlc2wH zkdHtuyBhglmvveg!q#c=)gfDR0FsgTBV|^XBV?Beb&9j)+J~yNS%C;NM%H4;6nVUs za0-2~bYXGcS=f<loc?>ipObO%YK}ch)i6h!e zDN(}cXH=9p4NVSy1bJrBavq*dk@-cS1tiV+qMdnJ`vGlee$G~=#aGl4n0yV+jn|u% zXpkoo2aQox^Q*yAH^md*5RF@Xqb!Q#WA;E}&l6Qd2OAdn$(|@etB$qR)C?Hj_4!PF zR<27md4V$=!E4SMHXcw1FPTTfjMNA0~yai1sFBY=2C^EW@jT4JN@?76%(?EaxNPM>OWn z2-@LH4Y@l9+L0?cQ2Gk#=~vKznu}W9DU!I2b!GBoSp!Xt(~Xmar7?oF$b=;-W=(U9 zud=v5Ol5U2jpmoZQ~5I-mKax|!48_3EUNy=f9}GL6EKVyCn#n5x(XvH#ZdRk}yYIB^{wu0`!is5oDPBgL z+J5Rru0AVrj+XdElBq)U94M9YtX=Ak_~ZQT>ml~KV*lY6RSTEI?`yC4d2v=*mj5`k zYJ)g`zF1Q0eRarFw3?~UEg*XV7=lIC!d7 zv_?C+y}6O*@bb6E_=I(G+;?Vd@-CvLfoy6>)|`nHo+}8s|J7p?Y_I9)JrJ;6pV9`l z>O`c`LhJ8(1F^4IyJEwEU@Hd?=N_!j?=x#V=4{wd^|mUVOg%6&=?rH`VgTg3|I#ZhZEN#rfct#CboA z)wec`M2&J`%krFR)8KPFB%@zMINsxe#@7QR^3u-c@dmmfPvU^N_J_0}_ z`s_!O>l0R`i|V#A=I-HhZa_pl^Lc3e&Uttxwv1f^wO0c4r#>lDW!wq1m0+i8R*+V` zRs*VNIn4KG4QZJC(oebobSM{Ai2RyS_ya*NoVmD$+>kU2RL#GVSMLoweRe8;_UMXZ zO;q7h!CC1qL0sV#$4TKWl{O?}j0r9rky;Hi7J8fDs`!_OLH?3};n-J@LpJ_#rQ)zt zKzQPdL)qvp{kzvvg?P8eU(*8fhL1LRmR9tE6Y-FFGxid!v82o5B~fr%MAU?_%hbeQ zG0dwP9f2;iWUdK3W0rRs?fkQvq1sGiviP5*DtfON`Kj^XKP-(I3ChH4JH`DzYI@EN zt4iRB@;|LkDiUEf2=u~e z6B8US%O?dvP+E&%R04+bMHtJVAg7W(=%Y3YlyP3-wbBJK_nH&|Wt=S{iI{)Mx?rTl z!s2wnnz++vXo-EA45CC#`u70w)euhuuvqQZ)BEjLJ91cYAYlv&24S_CqN`;HITj_N)$9=dYCv zLufeVqKn+S5(EDT-kc6FUKH+5D4dEa%AHYnMl9S`A-=9(CKmJ(CKCYbMpW((f3ZmLlLb~s+|00?xD_XhF+jIpTnR20nq=(qZkzXH66qBX=e(Y zI2M(=AL3|I2Fm6`fL{PtzURFM1~soi(9gF>>^f?BWk2owT80fEfIOye)08VoUGsSW z8y+h8@v)^4d^cuZG&HNiF=N|9y(WYZq>%j8nCmfZ2;?|n6qzjclyCp|%cSOd53Pn= z*(aCIz5Vfvr}i)TFX^m4^vznV7JCV66@ii%5MUw#(O_|2|F-Ys4#A+mIA)cY%!ZHn z;|-YJ|^UxY4bIQ%x^DJXVCGBS&Uz5^cIP7IA~ zHf};yil{Lje~vyq zEj3+LLY(G3Z}|!l*1?T9)mJ@oVMs08x_28ruh;B$XZD zkjVuJxPM6rZNT);etDmr%#)hVX^>R-mO+0s_0%Uwo2Z2C$~YB2;m%Q2lRVv8o!o?U zCYB5s@NiOJdQf?6ayv*z-Rx1CZoK({@YL@Zzft8+8bI>E{PM+ys=xZ`4$8z&@tdXq zSxG{~eg)h?u9eb~$1O97%Fihb`-+>=Ra{b0D*UY30|_hxG~xvMnYj;B%E|3Se~>1A zRJGON#V->CI0|Xd@QNn%0o-A#RlSK^VT$;DO)H%5$ZR&F1C+_-!`4sbrDd`O)}|vga*hWHGW0%&It5U zA&bLW*l%})rYM^JSI7Bl%_>|i6^ zAJ!u$L`D}fsAeflYJ&7tqYi26?!BU1HzdV<=l*V-CQ@Nn_%z15pp)uY;<$^{!$Cb= zpH0;wy#H|!sg#Mpd8azx`NO3xNGX$ALld3GRMH#n5B_%JxgU>|py+9WY9!Bjo=}~y zGuNXKVqPDT7JE#(craD0_nU}SpR+V07o63fIphLKwuFrxPku8cFXjN z(*A?zHRTVDiQ?=?UvYwM>$aAIS(%!};{f-kr-Y`a`va?;^i0^C*idZ>dnP!XIS-ot zg%bFONy6l_y-@6&c{0}P38-Ak=>LMs7=o@&r5%xwYh*Cha(wkY0shI5>#hLKmkIt9 zmI}_aLsK@1ebMl#(xRPz*ZMhhfY2Pk{*){!wMWLE#fV&3g^IT^@R#WKx-H4Rz zM-flr?mq2@QLxY4(pix#s!$U(z73iU_(rnbb4;MqwZo&+vE!iAaY=`R5>tuMdt4F{ zWJS7-e{&n3cWVics%}B^6xscn(ih!7n-sN@K9eE#RElN>CgwUy5;;%}IwY)$zQvch zt8D`I`I^H@k=_hbMpy5D6f|&Vkk9X4d27Xg=6L++9C_tp-dhPRF@-g6ew>v ze2}@E`B8!sup)erU>hTTcK7krR$TzjF&F)VA|* zynT(})Bq$GC}9*ZeoS zu?g)T6M)a5=|A%9s(+Dc^YS*XikXl8>^Jg(!hZgj05d0|o9`eUb#OeRg&VRxaytR! z$;MoOt*J9Ac=%rt*FeP$RNhU;e|_^G9>Jw{L%sV$(HlN(dh$(j;cGKNfS+|N z39-j#V_%Qnv6Hk_{d=Oz`Bpw5O*n$q#y#SJjm-&bsPAviqcz=#UVRdqLH(9aVz%(i zo!yIrtDfbK7k96lLL#Em0_4-Agp^X2KFXsiH#z!Hg$k|J-aKbVERDRL4}S7fudZ%$ zz{FY{OyP7DEV~fYMsic4!LWau7>s0NMFv7K8TACRVXvoi|uwEzIZz?MT+r$MT$e2Qscsi`r3o%~BUB)QA5qC~O1~RYFseHC&G( z9ta);O^G|Vl1wk2xN7V~0wevBZ1bPLp3E#$pPI1|rb>Qwb zWQa&LoR>plmK?*Ch{RqKCMgH!X=s)tlogQLH$Kv?!>sv7Vaqy&=b5`;BEh&5;Pi3p z=R4JaM0VbcKA#7J8=yoC$m{MQ%4FbM>Zv`|xnp~B-+jRmN3j90Q?%8I1*dR5(_l># zlwaj{vQ%1V?|-0lo%{NJuiekpQZtYmXuou95*rw&O8k@YSWei7{4<>Vvm*nO3vr{+ z;$1cTo#@n9LJ||3&A{?iA8O$(&Wd9+D91Gu$*6@PIT1--)GsDb_|CwBLL3espBQi^@WF4 z2G(hMD4lf;E*|0sddP%Xu$Z!~!o8zWEUzVuL1NU=ST8M%KsNV1=>(@cNv5aR7kh%D zqI_v8gySP|w7K62d`E$B7acVn2B&F0bOTVv&YYaw*X5)@? zd#^taa~}VriF4-YUuZkGoydq6-O8vG3H#l&-Ekx1XLT(0wB?3e_gO^zJz}N2rQhhV zQ6q~U1QDn4Uf)H6w9@|m3NY~c9fDO-X7bzoeZk@5SqkUC=q%y@HIzmhirBL3?<5hz=6UKbJbxnI5+>~Yv zf~NP$Yhg%NK%>RTby@@mRMkU+yNk2i8qRH&nhwjvVPk`e7-t`iAw;%zJ6B-KGcj*>Tg7u{dRl zeU{C6MZT*a7UPf>8mrWOO1JoLFzsS{#P?z|x9DiYSZTRv@?XsGrNVq_R}w-)X&`yc zruc9`#;<7od>-7m!Et-gFRBdRX6E+|8)UVia{$~bX7vSkX6b}v=FC)NlsYwa!TA1FFSXZP&p z$z^7>|G8lQcLUf9{~NL&^ASog^bbe)|7o{Ri0As%+j!o_ELw|CR~96wP$QLKu=c&% zFQ`{G%ZEmcabVzzc)Rvbz!VHx`j}vwb=LzUxY&y`QO60{3hceoH-=_ZfAdt6MTn`v zGiY;vMTi?!EW`{H?v6Yd5KnPp5$wven&B=4<$i5oM13?91UFm8&Tbae8*GADrTWc# zRB}!D8-oeP-((Hp{w4@Li=S=OMjJFTKoK9%hOI0XK_6y4>fivU#;EV!R?ntb{NC2~ zHcvmvF$*Fym8|K%iW{phKNj12xs;gK96 z=lBX9afye_CDq7E>56y^Ps*`TX@tNkvy?iCGnZb!|Fn7H&4B55h6%X#21p|Nk+Rza zo*3;f0OR1N!c`aUDZ{@BWkB)<;P5O{Vi~4kKnOjxrj5CD;hm1Vr*&CapP`QOuSTFZ zc8&5v51q^=&8OMkp+qW?uKdhdAza3ttLa*(W(vo5d8hFAloS{_qUkTB(H}UTk~>0( z#LUsi{Rn*!GXb@B$$kABNtBaP&^tFD20WByGfyNqS$@r{RE)O01`oyud z`hR9qnq6;=EKHf_Ocgzs!b64Li71wBOub<0_zLyW7|9#Q`#Gn{M`ZU|ATxH>AlQOX zDiQ27)zG58A8Qid_>2F0E{yJvmrc~aMGg8yjE@p#xpgsBiO--kpD9ZYBza!V5< zhz{Xl_dZMgOh|mi*dStwRh}0@GeV=r*S6ZcKnL>SfJQHdV&q$|fd-mNY>XJ}NM=zJ za;m9LCg_b&<`W?BF*qpdp9z9cj;lG_3K>BXyj6lkNSxGIGZ5b6a2hhoiDLOgiBUpn z=+U_z9IyP*Ya+qdM8cot$Zrb)Kx%>oD7%MHmU?-MPMot5E#%=r7GiQ_@yHKX0=qQG z>Ri_DJt}i26nW@(?9_W^OzKMkZ+(GRF3O}{NJlrR3*O*L9Om45j}YtO@8`h}x;YRd zw|t1G73F%kFJH?s&6pGG=KlSP`TO6v%@Q-?*B*%uf~>LcjzWRHGSAEsfL0F(CPLw& zj~i9K#cqHsGo!u8o8w|!1NZFQj;PBa#JrycxfracoBps8aGJ8{pCc0+3WqDpHL;A?c$2KgTqI_MZxe&ihwb)MI$^HQsy77LbVn25ylz=~;Bh*>8-KzpU1z5!2k~G~1}L?}`YCJZ{!8WhvS-Zs@a3m&JYs z+yD;$;o&UKz8}#QW%0abdxbfkeY;&gFuvjP)8Z zDnGhg4EkSpWv|X+m95FPq06+(V+!u7TPu@OVHe{f3h_#6b;{7~u6<(!2R$S;EGxbm zPB=aBxxmI&_9U1Xp_ZeG%J*gD%^0t&8n0v$DlUe#znyk^a&C| z80M&r0G+*mQ;K0%EKc=%@KSb8+gP^-rv|p?r^~0})0jRxo{{o=e6M-ivwgVKnEA$bq%>FT_Xu%jLLmXPt1Wi{1 zA_1dBj%ZTwc|%Ty04(_QS?pkC#OKEN$PMbSl)vX;QP1=u;+Af4A)(6Xo7FkbW1@|d zrmgUS4&j>^C8ayM1BHJ?LUO12u=Pu}&ZMBgjGnZus^i-_XoigutVfx8(q+c`*1CI1 zJ=c9x#$%<;}QJ_CtnUrE-M12Li?4V zX?^pqowtu9?)PSo`|8(+>Ux3 zM7hSE>gr3nNPeh-6j%8*G5FQ**8>NvXo%a^E9Aj!JSO!;`gebN+Pnas5;uNYmQOt0 z;dJ)9l3bsh*;h56@5?%heW|lf0~zVPdoHA*|AlzGrW-%$MT@P|zH?38@3@Z-y6xx+OR6S0mBp zg%b2l4zg2|pBkb|%{{A>W2@O> z3Q48uD94m`Q4Al5!+d7TNyaLp8!XNJ5Xe+dWe;b@(In^63U{H=M3*uyPrPbWf%`XB zn*PI-@(W%A20DjlXr>uGH+Mv+CF?3ORNiLTkPX2_1Q^}sBL@#=&OF~KPd1{-UH?z+ zJr%(H90A$~Rg3>n)&~D*_%gFAU~9|j`86AYU;S_-P6$GW&O%0OP*P^5B+%KNCL-GT zj}z31%SHPYSauFXk!zAr;23<;b!gGBUPMu>jiuy`h5m2KWCco6NB7N1=>bo+a6Qll zgPe*-OXmCm;qa{MJpoC=Ws$is?+=HG>Scv+hF$(DvZev|#2ZyQ<(Ik0e^{oYC~MJ* z(PslOFQxHD4J%|LJv=K&NYQ=|<@_6xi&kCBii{)%^e04 z3l|09H@bE(cL1!af%3vQkoFrBrOPEhcU~zk*2lwE0EaJ*?&p#jQzCE+-$CNE5j8d} zumN~;)|aoZfrQumJXm40ia&mdbmQxbpd7NnK3#p(lmKWA(d)Z*m`N4^lvzH$r$9vd z{N!N7lr~{TAe|B;=S9a=qrr8(!8K3LD$^{aG(B5wlfllt&`S+Ot=$ zLmV@gP{GC0|E=T)h8ql{f1r}JhQ}QBfp(cw-!M5U?X3lK;_i-?h2Kx3xPE$hel)6P zoX$KPh>ue0WINhy!{ru(qPF#Wo9R9~WY~2)$U?|PW=3b(b@sx_RD^V(Qv!CRC6uuS zagNTy8d1>ik%fG*c+@;M=BA;*V{s^M3z`z>IIlQ(*@1*_ZXjSw*yni^}$Gv|> ziXr?~ekpQ1so0VHiI^W4y-^b5^uAvTAbvwDqQvz;J13$^Vx+$P1xvO>5;LF2liu={GcuH$`N*yUQTex?V4w74CAUn5M6)woZx*CWfS#6?eTN2@XE9`*j-4 zl!cAKtWL&%X{ijc3fKmS+^ro)-!%lDB}z&#YB0KbaY{|9b+wKR>1A z-xZnh+i@}v^6P{eXsvsudAQbrtwe6_U(5OY-)qm6G5|A&I{(HA`9RS>)i?#3>P$H= z2_I`Hs_yS|LfyVhO&Ua8-yiw;hi}yq5ywrwPCUB%#yE8qcca}P=Ag)coBabTz<&L~ zrSeQy6O({2;Z9t2Ezwao=5v6?dCT)R01;>`lT|JV9hEGAEDq$$yXSCxv(@TUGjEJQ ztfkNHd%+_Iu$aDCY|Xu)un!T_jLfpu+$qqxA3rhHh+N;b?4EG4&0;US7n#T4xczkA zRwl!DEO3M$NHz$o0`iQ16X``Z*p^jlJs5gF0arBYzyRlZ5_AJ6JLO$wY)=hM~UlXMY&HFE9WlAU6% zHW?eyhF1c9HE3)p#r`a8$&OD+Dq1JvNRBeyjXEs;HvUP4JdV9xpF)Z9+uy2`VMtn* zs+>RSS_Xde3mUqw|8L7r{$GFVE)jaTmLK|`{&9=+SBI?;&aWRnJFNKs(&Bkty$EE)2d&q3WVPzni_8y)st@XbR z?_(6cP0%m8W;s;2qhGxIq92%gz2JZJ64n_F3c}?JWSrl`)EbXZX1dU~>xX^BmVX`c zozp_Q^MKI%I&w(4w{ockhC~_7P4aVSF-cIC(V3$1ZtwZm;1fC5ww)r^?&FsTaGvJa z-#g{8$R5FF>+3kxlkT39jdwjIJAY;%=!kOotrHU(`>P;A^%0`cgT%>a{?M@L?|BvP zXu4@0+|=W0WAc84j^zpXNp7fCiTg$-#4M1_Nst3EchCRrvV=mAfDzD6ilt7jrC$pu z^Cyu&Y}V*a+k0dpeDg~?fsA+>cRYUXm~5{2KS(1n6_4-orrq?lrvY-egQMD*imUoO z*oP-0gp^mT{DcMb$tLCdr{74ox!C3kcC7oaIQhh9%)GS~ujrmWl`O6d;;DFSohtK? zwZ6)Z$F#-0cQbW=cK*N2(m-Ah&)=w!r)SG0LkfWyHz|&dTaMkuB#n-`As&T}BZC?L zg{5}pb04JusoLS=caK{?`pHl+2=#s;qVRq_6Z?<3$?M54zdfD8#C_6C{v1TT1=)sN36wEcRjGc!|aW|rivOY~k<%K+$zFjb}!BWOwoWW@p# zO+w9OOVz&FQfaE2xQf|BP~^ZNS6zIVYG7x^yJ#rG1BL-&UassY=H49f;`_nZBYNArJ)2Q;JvaXC5`IxBxAWx5G8$qLBHEEyt! zs~5Sg7Yz62j6)uPr~ldg97S;=Mhnws${ke&vY=2PGKws9|Nf?bKynf25vv#1a8)49sP$aGg=hgD7FJqlD1kWm_cQU-%{D!)+%q:=}hNd%2BEj{= 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 z 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.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 z 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%0A8FcW5Lw_F!*xx(4T{{S+pvLZb&0RwZKa#IGL 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

      {6{=BawV%1ujUr0vq^p__Vf-NUD?xW-SnvWOPG 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 literal 0 HcmV?d00001 diff --git a/src/assets/assets/images/button.jpg b/src/assets/assets/images/button.jpg new file mode 100644 index 0000000000000000000000000000000000000000..74e5f069fb8d8d548db31d572808ef444bcf9512 GIT binary patch literal 75442 zcmdpc^B`9y5=b`?&L%xij~kbDrmUp0WD6>W@hOBLx5ek2E!28UO$|50^N!#Dov0 zKQH!={@3y{P*(v|jk6p)H1M62Un>IuwMk@XTY`r+iHC-n7XU!d^S=W}(|{We0ANcs zUn(2a=n{|0&bCVz zHr(|aKVB{4edWtNhsP$&PID^eW8x+|?SMCBT!61a(PL3uoPO$1?t53OrlS@?N z^j)wE!JcBl)Sb)?!r1@s7X_!Y`&LvRc;+tfXlrh->sLc4wBvqo4FkQtzX=K$6L$## zmwD^RlB_cmXLyWe3fsKVZ39)x_pgC?&`g9~f1&qDFm{g@4ei*+%7kWo@ zXTA&5h~AazdULya7Rn30KeD;LolrzowBH?;YyHPfm>R~@2ls2hS2kE~@hUrBs8y{# zS41gf!jGk(7~?Mr3>aqZivKtMB?Ig7LO1@ZjwF=v@wLZ})F42n`;wsIB!)di2-JR? z*^ZpnzMxgYOn~n#Ft}ovjacAFH9Ix|y~)s(ULb#GcsrE@7NW$!V?5a*!Skz#p%cFq ze(0KS+luE=rRUabsZpPK7{|P2n{`$D;m4NE5kVi9ZGlzmkiU&}nAW51Xl77q4yffV zIB5CAPsx3-{xlhN+QvQsCdOXY$luKrgmbf{!O%C*3-#o`FbszB_AE_r_)@f;uNuO# zhR+{@+)&pt$ix?N?i&_E=U8NE9(mU7%-{Lt)q(#vMM^)@=f1zm{(uvZzjqwKW@z>c zDeshMp%^m{b$#ZJj()_v;RvoW&ZxS}0d)vZbRp}|M=)&0|K4;#tQ3mqK#cx{u8GXA zdK6ne60^Zsw+`)p>$ym0GO}Z0UD|uEE!y>jJ8MJstQN6&iLS(~-TrmRQf=PpxT~mf zNfx|9e(VV4KZ}CP!nOu-KpAbPEheGpA-!#eE_6of%#0q8tGfN-OCaBsk>c&PArC&Y zBD_ubtC{si z6X5%@rwTy9fVbv2$;@HlS%bRy+Qqs4_kI`rty*U9I{Po;A_SRubY3OZz12*27CLz1 zH=^Jd!MOeced^bh#aj?;z80{ju-I%%1L>eC>Tyrr5=mzo?SbT2SmX<73vTSVbj0c| zf)BVMcpMv~|4{^57pF!G3ebg)&Z*sA)r->Ni*})Z%iqpQT+DaftA?VMVSNeM?3ExG z-eDjO96uv`skUi@gOX$%T5~fVLjRTYuqLP%+y?c^vh)qm=&g={!O-X$nB^gQS9~v| zW(O?MzK&S=v}biOnG`D26?|-R@rNB-QZ#ls(ZyHYg+qz6fvbRPVVr5y*Kb|F(CA`Z`vFB9PC zS6P+<4A#N1Bd-{2K8DU5f>pYD&Tc7ot;|Ua?7B2H`_4I#)>rgZUFVJg>pd~sCP`Se z;q^Q}*gtEc8}S9thRFX;=^CC!>MjBw{wIjfn7>ar^{oz@SHZ}be}1i4<(gjTokYuC zC#nc7#ZOH9-GfY9?6E(v8UCJtUAd$;WGG62@GGep;I*<22d?WbraJsh4=Adu7D9pd z;#JSep-jwp`m31Oqs@?r_Pjb>4Y|~5_8;7VPpR)l+tVD{%BqSV%As_sh2&n76 zsfn(^U9Z-`Wx{6!^AHqS07VAT7Q6yag&9!OB!L1FZBwCWc%MF8?%$FP$&v0mOaI3Z z3KF7Lb87`~?IJYXOPJgHFNR*pYlzcQ=u-oK5f*)TrqbneN^(DFeG2NFPmXT^iB6E9 z6p{jfnmg0lq8Zmm^DfYBJ@A9u*<#1?=_y>Nx1SF%A2QX%3v(`9oTlGr>Eb%axcW7@ z@#nsIc{40UIZ*Vyj_eqSy-kvjHbo@Lold$p`2dk&;ol(8_sZRuN1+}mmhcENht((s znQnmceq#tpK9Qa>PrR7Qp2a=PB(!Y)9Ja8ByaeY^eRkLTG|8>b2bV%!Fc=Q$dh*==Bk7 zD9>;8#PqKG-`@_Zkr15pZ{7Mk&`rKhoCLgF_~m$`?oVIgaKHm=E1 zuuydjYF47gperNj46GkE;h*~@ILzE9e92VB{iH?r1AkL|GgxtGI#89H=+tY}H`M~v zr5dD-x!UU*dT{0(XC2s1S6n7jYUekDw3X_HS@?2M^Sx(K?(VzBJy(Tgr+d*6PE|nD zrW?<)anPxS*wG6jqyRGSElcB568+vEh|q)(}GeYQ`CSf+U&4BJU|#(P(4{-lQPH7BP&lj#&^={r1{?kwF&wVfu;HhAa9rd@iSJDQJiP-^KS!03scR_c=z(bVYyyx8aSS(0SrR{ zd(8c(={F>!)n*>!{J_=0o8CClOqXg4QN)U00eT~rS7}Iec#p$rPV`8p{}=d6UQ%~! zlYMv4iBCE2$`T5bwFCYJFs-FuFlK57Dd2qRNV0efFh!}E##dT2MW+{iVx}$m&=!oG zQvZBjkim<&QV)O^v5&ksnlE=C<>v#0>V9pI2g&295(=Lk(F*SMMab$wqXD6XI}D-u zgP8ziPW`xoi9*C^RkMnF`>o^cR3GIi7Ij&$(>QNE&-rgzzaYI*H*YDhDexVS5qA8A zdu1nDbQCL(V=6Un{wW_yH*V+hxOqZLiqux9x5}#R8rpzl4@MTD_l9|QHq^mSOsu>T za-pZVGMC5oZ=W696!?q>NGmc}kWMf~xe2$=qkkAKrAkaFs*hGP?K7;)k0LBP#>I^c z2yi@to`TC9M(?CeNV2`SLvPD%Mj!6uWe-I@Q)x=5`#@89Z&LQeLg9lge($&!s!Ira z$q5k5p<8Ty-=a5ZA(ez+@}ojXZ(aHwukaM82IPa!d0MbN>>tNkPQS+)ZH!CrvB=@MRY-hx!DuXB#$#wF~|N2_W zn;hq8F}%GoY`v2Jv*x`A*2L_QaIExtxd?tM!f8w7`%5~>Z2`a_HY727!(}SMsIvUf z=v>^Q@LzSxE%ERFi>gPJ<$n5+>%DZ~IsL0l2EknZ2bRpJJ0PP?l{cLUXr}n8_sT5a zlW>I9BGXJ_pLKmp@tR`)gY76RKOXhBV?bi&PRUBlyZPph*_-%=Otk%{SwaPyzUWUf zN%9gAecqpfxr04H6(SEt|FDwuO^5A$jGqdAqaH_BI2$X{fF2B8@Z!=&@rR-L2j!nS zM%*s8M!yQ3IdRtYen_wX2+voZ-14Kp;w=bmrSARZq>}w>GH?2aX?MQ&(g$1n4@wil zNt&cTbl%+X&8Ic{9B$IiPW&?0YlmhlnKF=%inLydw_H}WZBKwP^}A1N?reSfn(!8V zx!7Wkrm){xJn_4=N==g>_T4UL?U#w@%K~gF(T0ep=a*UzwJCD{M_=_I;rSZ<#nZMy zPtxCNLJ%@qt{IDb0@c|^c^B8;+0un4YA#oxJEMUc3cTM%bl=_9=L7t|@HosRU?>J} zq+H|7pze7q-ZQT+;%v|=`9Y^Le}gn?V#ux|r_GZv3_C&EfQp|@<4~UVEC@8?_h5zV z@yu$_N#lG2Wwzb;1R=cg6>uZn@a?eBXFcg_Bbn25LvkGH-lN|&MzZDUXx7NNv2d8R z;Z8~9P3=x7@`biQWn!i2Gzsew$Rgk6R$frr2`hNTEI5AM!4`q!Lt4e1IcG_C{o4z^ z{uW{qT8$&5471GStr>fBBk%O^eTQx92z zxqx9YCVTGslufQ`$6bxjwjck_`fPVNwnofpNh$X|4Mumn_81@-PQbdRZ)f#_plNF< z=Crib3CgB^v+;HQVDrVv3TJ^EQYAlNBcNpugWA3*uS)k4k+u;|Ake7ajEv)q@(_zG zFe&Ym_(q4Mm0{B=(;|0J%tqvfqx7Q1WtVAmdta>d*;((&xZjFgNhc20SMDjt`N=Ey zU}HRjR)%?x6h4x0-gWWjx#lbDD<6Z;!HI*7G&MUY7BK0JULWQF&8|pv7WiL5Keo?D zVE|O4K!IQj+SK%9fgy~-<3!|Qsj+_IT^TT)Iy|jSJ#eAW(z-JSN22a4PDQfKlTGhg4cwcjeGk6{oh~6o8_~S z9|@CWHyBq~(XyKbba*!*$D4bftxS92(4<*p(f4V2nz2b2*aIG85|0b} zCB#bjg>)9Bge%__FzOh9?W5eT#vJ^Iwx9e-G%_tVWqn+1s>a{-yJpv1LPqKQ zUB^%OAR9Q`U5`+Mwor>Wlfwg8uq7X7oKOg)@8(JNuUMbI+(j;=>82JZ%IPMWdZi25 z_p90 z0Y>?ucV>(5TeS}>xK_)gag?~u+YmAJv!B4(7v+A&6TJyBqnLwyb#)1`nzSAy%$Da8)!g+0@g5ih9s}q<_ zG&#G7of5a9<5+S)9Q|-Ao!}MLgf*aqrPDE?Lh+6v0Nv_mNUsx7yP?P}w#)(Ucqpc6O7U0N8>?$>2i#ajR z1^zdegJ?3ovpZjIY;L+~w)=EO0=Q2R_v;CUc;sHOODnbd9zE?r%WD$6qe)BS;e4h^ zO_TO^bBpHf<|g%@v!usKgS_saMX9)~!2p!?XZ3#7^T7T+L>!QcO7tcmarx_lX{-;o z2&eTX4b63z!Su8eTZ@5#_0wyGKnP3paQcTC`}1iY_)BBCvyk@CVgg}h*U@p@R0lOr zxx)p!>s+>CokZCi>D32hdMV_RFR`=MbN4<#WzKx6Re5#eKW6tuEC1^kM>`-avMd-r zH7NTuGSER-!6(T=o4C>^WzS#O64rV2KZB+h6a3S(b}7xWpBd)%s5F=saev*gGF z!V#pzZu82zqq$AX>$b+ioD)!Hnn=~#tRQr=Lr zp3p;?_r6=Uo`t`(h3#DMJudk%)$4@YeUO@(Dlk0EFW?J&hBJXL^YT^pUW+BVaTvpmvI zgS(nh&EoG&Ne@yDxB4@wdC8mfV8I ztkE7Dd^|11nuQb`B)Trwk7R0e*I74Mjz*|UD$C&F?gibW?^dO|fnR)fj;m|&<3kj& zzg^}>tHCI_fSv34LSTWm-Hh*ICyn(}Z&w#PuO#ZI0lpRDkb>=?MZ(F}8eu^TPY$Mq zARsC@;>U`kdx$Q#ZLXW;sbk^v-G4Gw{kPRL0_mI-#mz2&!(<-6^h8vd@JIFqS;_}7SIsm5ReT_(SUB1y5y0?tfFV>jCs=x1iInr&hAgNBe`HahY-A@I< z_rNFb-r%s#w|TUYdEF$bXzEFelK42Lo zi(ajogy4od`N5HQ2IE*nR@aCy6jsD_ON+$+j(cJHmZMHVS)<%_+)wAHQE+AeAqnIG zBhnz&TW)UEvWwuqhX!%%)rTrtyd1W_J_F2i{HmP@ANjmhxATS)PMa?sI^eJG5d#+UvHV1ZDl0mQdM&hCl(sw_=-^|S^`Dr&m1n! zS(3HUJGnEWqwOAc1#Uecq9PF2;xR=se$yFXzsPS^=8*lmQUV_dq@wrs=d>XFaWvuL zn&O}{@YouR9RzMK9aYbV@if%YnzP`hS{RFmeH>>Zv!fkbxoixFy#OK@b6t$JP%MgV zw?JDrK=Y0uj-=_zuwhv@-C42l3Fa%H;;E3ceWbZwHLNVb?Zd%AYEBN>e20M=9%K|S zX{aanTBHl@*>ZH+w!;g&jTN~H*vT*%IXJcf?ik4&lo)PD(&(nXaG^5j{w``wsx)Eq z)3!fe#>-(mJW3qzj|3}98wbNvZai!W@VFSu7N<~RmkDhrXOl4?#66Bsi%;IL8ypc! zo}GMCY%guUPn^px{*n;VP;o`X|Ll~Pf180$OJFVM9b#S1(mE*+Z_0fp^j#l;)Oh`~ z+V)PoM$s^{&Mox z#H#YXvm$t4-sp*o3}Zxk2wHD2r^RAhR1Gn6|(gQYoU8qt?~=~3&4{r37?hj zPc=rz0^5pvQ{|;Vl%>qpSbd|*IW5JXuzsg`ZrBEK``(5>tdC>#TqF($?GO{eVO*6S zpq)A7o!o0=8YF1w_}9ST>vOwk>b`vvn)Oz_ln1am%6Oav;3sF3w7er{5Nfq(& zF?eIe)lW=$5f{f}YWmYYIU_=!lgDiN5u?C@FCMiOZ99uiceNW?3$erDhFN^J*caM!MEE0FT$XvTq3~m;@Rd zS7*OVRQc7uVud)FSjY-FDyTq)0rOgb3sb7WUuF5EN(IGcpIYYF7$)BNT0ZU2&%!j! z_~_t3K6^T8ORk{nHx0jMPU|St3t6hSPaxM_@LC2#S+DZ z;~t(ur{`c66*AD?fHop7e_65L=OJpb{(6U*KwnG_b;ANJ@-pIc8pTec&e>Nk{AE^- z7C#ru`2VQ;5m!>;?f57Nrp(9dYPt2G#A0pa0Y>=x-rsas6Z4$WjE&ECN)NhHkxav6tCAE{$P-N@h}- z-XfSen%f^obtak`5J&Z7EJv^&(7fnHKQy+;0m+8r{+LJ}o+%qG`7q3lu8wYb*QFOlH@On zaQr3}Ug-0n5*UNtx&<$Qo{?-+a&szmS!G*trE%V?;fBxo2nPm&B$2Y zrqgUk8tSFmJ%oounNxey>Mgjn`tVfpTXg_ZFl%VKRNMY$#6kSv^NzUNjzM;M-?$}yOk}ngW(~#1#@P?p`{O<&(c4TlXv4Cf|H^_C1JU>=bc`~N74Z-vG1qNA zCfVQ;awbU?LQ2-?Nr#{00Gz86r~k-gzSLBy`>{6sx!}XyARxQokrOo$_pEz&ZO9|} zOnF)1yE35ar}KHU!Y1Obfgy5DHDrP?B*p<5-8auBESO|1tX(ySkyMzPa36rn(1!MBhmTDzR>gV*&7xL>{T@YQux4KjSsO!*HCqa<^#zIJ5_Nz~! z#d}aZw8tO@jp!P^hOP(<_MX^8X%*vEC`Hw7%06k@Y?(kVPy_571xK4pdBR_r;!IkY zQAFj|dvqrLs*ai7W1#OIQLf!snqH+u-W$9z7TE&izNnD}HowcWB*?-koB3?HPR>Xw)Q>&%o0d&H`UyUs2W5ksC9 z77;U~1OY2ym8U83C)@Pc5B{}5uZ~x>TM_$336VP)bOx5j03`Dg zStqEDl6m^VolTy9?x8&6f2}1r`uHQcl7_ey{f3-zn7_&6V~(($pMsUDvvf!Koa3bF z&xSz+#P8_3!3!zsQHL!ZDy-%k$A*-~EIphP>ih>7_#mZAYqO}NXAM;wZc$%u5N<~U z|4?O7oysc3{4LxC79H%Q0?gb-v;q zqROR5w?;jQjPSFec0UPdC;!s#Mcb5Vs6iU|$f7AwlJob1 z>%SzGVC{9oU-fl$B`#T2b>8RHEur^;xA!10Zx`w>XeV*`EcvoXhr!Y#%p98o>NM*E zv~}z*U5~e-y>D?aabrukI$wsb%ycq)4r*oVPqz)XOSbf83G4dS^J+>_#O7TNf(|zq z4&p?gFe@!&4kIN@;va`h4{U%Mha)HrL@L{K_4k(;1Uz^IN1XoC4pa_= z09t#<)>m+S*^Q0fY6TDs0e1THlaJq3X$f?*(XjKn7nrnBFFFsM6CA&K$6z<_-YD+g z>u=WT%JkVSBidZsq$-t%s#28^Qu?!)C#E*h)CM5>d0i}3ndmA^1*9^(_Lx~kJhBkc zZ<+F-(r9vBAuj~+7XGz=PD;|93Q=(K$y-*<2bgkfd}>!vw=G)4CFdplaWWSkxdVz6 zGZZ!XvO%TW>f<`~RGMk8E+r1d`gmDb%{JJK#yMHBI5K>Bmc(w1&2SE3C4c8n?gCrn+R z$w)Yt@vsiW;VS)Ly8P_jFFwAkt681%fx$T5r^f9#UHI>VQyCd}HHUwtJ{C$oCDw~h zWD>Fa0oYGd8(G)fav+w6YaX0(BFqqAqM}w`XDfR(=)T>842cTDv z4l@9)z9+x8m_F)@u*~UD^YII3;7Zbm1H{8+Qb~q~{$@sQbDxM9fjItKgA5k4skj?A z&H9z69Y{D0Q3o>*J{K~pH8|2cB3fH~e=IudrOt@M)KGO+oyOx&c=T?q> z;4L8s87Apri%WkM11Owr%WtR!@a&&KrJXAMg6tPJ)B(rk@LamUF)dzXOLgJiHJ#u) zH{;$%Rw6WII+>k#cSnr=z78!uaP5Xa1N~ZvyFjyckCa?W?T|j7`O#IsH6A~h4|K)% zL7#&M0Y3uh3QqK^lAxLSq*jT`!NQi9asWo~-;Pr|sQawpLJ*lp{;G@$?fCo&s?LP1 z&Dgjb_hZCjYH1z5xYzl6rZ32jR&~AMvGJ6vW=8(Opd0lH1rm`PBfSP4$W_9ZWF4D^ zmnDBR0z+|Du203C*Y%m6lR{$tvCB}egKV!8Mq#~&h@yXIf*paqC!l?vN2@^^l<9aq z<|Y<`s{o9-zlxP6;NJ@aD-ylJcFPeZK!1P#l3lVzGOt-c%YP^@wfFzYhf62Z^njN1 zzw@kLYnp5QP8}w0hvf!bIxrn3bla~A;oOS8SEvFwf3&@ykv- zK<9nWk(L3!&u2ak>4qyb_vokw=Upw9o<~6SDNTj>TE) zb@a#2;Wz^$i=GD9v$WIF=|(yAPuR4Q0|=aZZsKH!)o@l6i##W-N=i+eSpe!hH0X-p zMq+L{s=nanb1!ye`%El;&*?w9HsCVr7ZIPmI( zi;-dxsC=|PYEZGjlH4N!p|1JyJF_*p1_zH#Yo;V%q0iwDMA=o8YUV49pJ*}0qBe!Is1OpAl68>ID*Ia>l0CZu-n^|?0D`K6Vx zd8{V@M@R;(!2@YJ3<14Y?jnxt0!$QB>_5xb=28kVjoq8(YR0`rsLx&w7KHvzm`<2n z{+kd@?usYXe<%*k!w1wxb*peLm}z*UT0mRiphPm?nt#`Mh_x&j`V>JLDmf$+&GS^> z>={{Bt*3q%1&&Z}Xi!vP0o0yJAYXXY#baFFkPeWUuIj*`{Ft6ApG`3^oi-ywg@5ZU z=LzGzxoJx=)zis;;Hwn%?aUm2`yaTJ^@Cm}R)6Pa**&Je%kZ?FCLeGE>b#|I*&zIL z=X&fF`3zgSwBQ%pigx@Ie`(%~&VA(^Q^7{EUO)PgXJu`td_Awi^eGuUu^te4ZdayR zeW*ySp_}%+%S3J6iak*$b1#_xLf5iAm}MvRQO!?gOSS;uk{~udKFx)Tx`fz%-KSsU zy$YLrn4&n9`~A-w;u(5m;A0!5df@-1G-9TG`?Jra!YY(UwC<5H`i5IYI2G)8a){rjd4m& z6UHns#zqtMX{xg*9Bd%N(x10GNo9)#d}%#k(fGspw_>Jcg{UwKw*ueS!Uy(a9ZJR$ z@?BRS8vmxS>|lRMJPpqD<-zTk2|8lo=qJ3)>0O%?Y)d5j2iZ^@s}ZZr++?JbIhUrafAanfYVuQcq@ww&gn0 zV!MZkEjj3{MIG_5vO(&(;4=lph?U%7WweyYG|A<>6q}@@k_><{+%=iF1ww0V(8Up?^uR>CEYi%vp#1} zRSBbAutF3U61*v-mV9=sRUYunxaK&kT2*m46Lk4;8`)< zHs<==JOoh&7iz$9Zwzj@;jMsA z`?I#y{!H2jv~D$wUH*hukQ-I;KyGWc@g<;_pDL}wwesqnV*_#Q{ql2S>~IUV_6{x( z(Y=GXNY{)Xo1eb8TU)bjZlx3{%d-?rbOy6lgXgU-I99L^B2qmBhzKbR=Rc~JSnncV zcd7uH&^4WhdIg>vi*!je%-@)b?OL_t(u0Oo%;Z5uV+AdyYU9@2QL8~;L?w;CJYKe8 z%HvpmQipTpzqs=yIWOfg2L$rGXZj2tXx}EP;v4j7?IhLY$$JN3`G}Xfajz4yHh)te zkm2qFYk(Ds5Lj2i6~W`W3|M$UC7Lue0da6M|FIpkdjAn(6J}%nbf-UY2f9wwt$jgO zT37Q@fK-W;BO?6Rl7H-P+Ive;d^pp8H7<=c_?*gO>eL2l8IcD#FFDg~>u8?JYQCPB z6mu9jZUOKfrnEw8+$0a{xbBp;YMpNdvg2TX&1*DNRjIq>e^^8$GsdT^Z}Zzl>dK!O z-EQ;&Q|H$L4M`x6{$1fVOl6j@GC-lA&HFIb7%ds1>+Wfb^1hdh zbaZr{o3Xqj)uGpdEm#c7b`kXU$$BAMc>X=gZ!Ms#>FV;oRSfgNg-yM682f+QcrB5u z!ST1Et){5#?13fkb2E63kueK&oWFvlK?UxD#Dh=7WQn^>;bynIi`B{LFd|II6S?Kt zNeycTmktUh1<{lYr*RjktB+T8a6gj@@?JR(Kg9_uC~Eq&u|LcN=Ru_#=rl> za+a8!8!msK>_X{R&~1`caF5#Pj`>%8G)Eq6e*a&3HZFUu;-FG`&*4mES=<9Z0iU@S zeLs#1=oFK3hUg_h=522qLjVTE6LCd=j<6?9kG6L;f<5b+Lqb`V_j~;Y{tUR(rMX`# z*l%thXl-(P&wa4)=@i`n5uYw{08VL+XZa7mvTd=EKB971+kEAD+Df*~kc8D*L+$q^ zGj!kL&5`Mc>H_I2ut)$UkPI;x3HL}5URky)` zfS-WY0B%6Iu~p|Q`RHr4okj~Jxj&8u#&G7W zf=pP`RXr%%g?I@Ql4|AOK4I+C6tw?*t?xAhPi(ToGot)S9lpb>7HtRgY}9n=nOO6v znZbXLIi=KzwjHE|I+g`3-rY*I6+4u}V(hYxm7QzkWUVE;?_tDnPz2!3#mfd0ilq2V zS}LVLwZz$fSE<$tkKh&&T~!puKzxkIz+oS2H7-(6Idy3vMqG%%IgVx0qTHrJg?cEa z98{7#uS{*M!N`q^X`({V9bBuhzWJJ+Q|?8Ke)ehe=7~_Z)HL(Z&{)b+E1Rrk!0yT| zseUoD+iZwMc+kI^cLjm{59;m5E|$m7I^t!>7=~1>j-zg3#}709V?E zv>4|xX(xzkjNA7qkap)=Tn;YxjajW`wYg10Q|YFuBz*YdUco307|qq~ncXxt9{wty zAS>6<)ajvYSHJ5eFNgC^;Nu)RsyUI=!das`kT8>@LA;L#4Mnc%$b$w}2*e$BU74N- zM;aNKXmcp8#lCoaR#rCru)G1Af;*z%+xk|tiH%PNZUMJaIao>_B6q4%0YgXSlMl3WyVj} zfZp*y+1@WMRVRc{Ed1+@p#hX6bBN+DaJKTm`#SK^i6w9FDLH|>d;!EH(wAcFYdABx z1n;+IY2LBnQVu=P#IHZL&K(3tEnd=dCXPqOP9?nBWkig1*CWYs z3yS)6_BkCe;?ZQ6_6H+$o(Md|aJ^_}AzOD7>uW8*tjnP+QN5eotO9@sqNclDv{M%J zQZ2H7&ly-}KSQzD91zzIzZmtTsrXro9$+<``a%Npds!{TzO1#SD42r(xHYTSMc}7C zX}*lxfY8BIIdq%wvY~u?58?b8+lPs(o0dPL2g zZUvY(5!AIs!9(DC^64q8@iU^jy*0oii2%rZvG6aF>5RF2!pL?kgD9(@9?5vd{vn!o z=CD3z)HEcRlK9g=dw}CpSnjR3+pav5jPG|^+6)a#*Klu~uLX(msaBs4{8Vos0N)J@ zU%WaYw-fL4*l{tZC$?+}%!x^11) zfP+C=e?KpWQF;1fF7;u{T8?7%(yDUuBs@XZ6Ixx(`+%^ z<+sV~tJ%RZg3I&VSDv%ygTs{U0Wa53aIU|cg#iSdV+Mb3ab+tM$SEHks<=G63VqAEEtwDr0JJ_25reZEkzd{9;_4n4F0I(ga*s?b+w;g>nH+mxNSPqO@=iTQgCvvx! zTE9DrY}u=B{SiQ4;I;!|n|8TF$dqIi-|b&WtnGPN696~wsgPM*bNI*{VQg^T=)|#t zgyY`~ehJ6X&(F3RcH||WT7Lv=?rq$FW6u_72(sAM*Alj@0C!m&;dxpB_hh{H;P3*A zl}q!NB`eeinYhX7!Sa_V0^0)@i*VQg>IFWqGL&uwL+W;19yzMFUjL#i-Cdp;?R>J# z0imjq<2!sksR}@9YiV;!iR$e=`oqI>NUXlgx*m+XYyEQo^$CA#`-8+ff6>~;!LNRG zMj6&?Ju=0ZD)e`U$w#K1R7%Yhjp~l6@o(5GXy&E}7;J=+uo%R}uv5YBo?`WK)kT@_ z*A~85ewY9b<2<_#@sS?xLSr16-?zwoW=Z$-Bt^_i%;oG1DTQxOBwn+Ecv|=u#}8T(1=x+c2Z5oPBRCk`C?Wo=Et0$?!;`5Hg0( zf;H+A5W>jH>w?{q({F@uy?jZ-=$;)1Sbzn-(xl*|?a8t>;L~|+Y8FF!Rio7-^_M-b2GE?=3A4n3X#$Fb31NcQO(4FNVHv2S{>=Mp*+UIb!Dm8$~(cX6)Sd?lLoQ zasS|}_c9@-%Pobd*RxpFJit)2MN>@4hnn5vC)6e&~q0S9;8<|K z0@DBW+kU2yD$_L13=#5Iji8-U;-mgv~s}y0}dbe)KhTrJjxZ6P-|3c0W-T z@Oj)s{Gpv4d;QJ+g_+KB)Y2IKaDGVVpk$0~+pP>K_6A6h}PBzDh;)lY?%y0hISG zV&gO>jzHq<5pSF?NndpGwoCCl#m;OyLg|vPX>rZQIGWvqxpCw~D{TIR9}Fm}qnHvF zMvGsr0}5nSY`Ng^0c5Iyv(~n%LjBYds#;GaI2W;}2=HXI(m$_g+`KJ-4zm(XB)5|B z_QHq6?{}jxj0h0YZ%?gFFBB&4CYh0+F{8NAK^vZz37(EO6X3>4gy$rX7RcKD(21ZX zXB0OgE$WVEUi>%sX)m{OKrz&DkF(h)^Z{-3o^)BAcA(f;4+d+|?P_tLZNirE56AV7 zLV(10ShGEjHQ;E4&4fS9`@H9nT|En2DP~jPbNk^orw!?xS7=EAcWYXMw};S_z0M*@ z`!UiSYiJLLr%*?}jX#e7JXsMY0YKcdhzjx7KRkuxx+a{p-lyku!cwF{Xmp&#ol!8a8TEaG|H&bRsVzfjl| z|MBd79xRL{9HxlleAG1qqg31e{L2IuY*=O9WnG5Q%~K#EAaPK4FnzM0Txj5Yz*I1G zQZV9VE605LpI|h9HDT{XmQwZ>b=vF&(fju$gjFK-7gX!YJH zSiK44p|*yM?xnr-$F(|Y8*SE1dz0_g;G`54NEnhcA~wYtc0=rw-l`Q++{1~ZV~i)E zz1uBV$N(QI24+wyq8anMB{Q1D&cXb!K;rJ^0>Mi7S8ZP}t(|HxA}AqhvERu`oL+2I zd~_Ve<$XRhI|JYd|J==_7}$^q*VfgZ!KV%N2e2IY;#P=Tg;E2Afj!j{NI<9prRaKQ z4rnSnc)sVtCc(5oq>FW>kF(=j*~H^;Z2HXWc2F7I9G(*^U;YAzqz7b$3HXdy!~E9St9rikeu&wv0WUjl*vH>)W>nBnF4>u+%N zNw^@(y~G@Xf~q5#PIF@ zJgsQo-VV9b4KVPv`o0b%GRC@^W4uI@4acRK zPZgccv;AR-d%Va#t5CAgzn3GCYxnwD%8mhrTQnlJ@@UMMOyc-*;{$Paa4@(SBi77~nbW zI;d~x-CTRrM-RSSS@a}V($Hvi2So_*&oY1!yHBj-D&@8)#16)^p!cWL8_#kGhW)$vpP4YptErRuS~SawD!gE{M`4e14ajVa z^)?G?&+d2fT9S|xj=Azo4Dh!r2rn=TWV$?h&o;0FJ;jv#n(=;5?R76EU0_xJt-v(L;kv)_B~IiGX$L4n{N_4I)Yh!)A2 zOljmcRrkwL{Y4Puy_clD!eI7ZbM-PW&GQrkt3LfVC4u*E)?}$7V<@Lay0aUJaA=gd zMR09(4dqzk`NtFN>c3Izn}SRs3RP<0jshLG@R^b6t$-vc;en}epuD{xk%bV!)!%>` z8X3iC4m>Ifb~5uUiR=&j@IF+*}P8~ z=z4*s$rrZlD>oT>E1u?YXZi|w7{tS`p=PRqW_M48qwsRcg(OCMuabxK{n#<3zfE!w zb{DKT8A7CFosBC5pDcT)-1+e8*^Da$KBfgcO#4Q>o;$;hdfq5JBZLPhR0Uob8o`Lm zM8YJ`yE>T3LbaPgNmp`AV1u20-hGe)4Q3s2JO6hs){x`%LW!c$3B8}6V>+oefQ|y)cG&A znB4|T9=x6D?!jgS3qh^Tl$epL=?d7asIBTx#Bm}Lg&@YKH_81tl zKF;Mu7>mi{>HmG~k=#|80hEX>^i>=GO?)EP7;B8OP~F)l@5Z;=Y53{cLz}bdzJU9B zpNO;`Q#D@DQJ;C?7bI^rAM(EIuL;FXt#OvcA)Xv_2Pz*4ol41uzPjUrz}_cSm%O4_ z@jj1xX30A%UnI>z{@+XJh#RkUtWPM9rot5`mX7q*8FdMJuJp?F59HC4{)oAw6b~vN zGWKE%RO=P_uRC(ws4ZjY0T23XE07I*m>*v~3XKL9s-P5<#n9CJ{E|PvMphpIRL`w6 zfTa)C#Zl2jUn|1C%A6e`Xy@GjonRR~WuD#2TXmrnqEwVi{g9>9kx-(l2M=_pD>`Z7 z_gCjYBk=OQna8~-qv@JXio52cohO2|?7s6bpI;1>?n@iGTWs-pKH8!f`u0$BrQ20% z0(#*-=oH?4?{hH{yYuf50fPSyL{}f{lp6h4`t=3tGQa$WvR#fg9hp}V`bu1VUD~-G zGgYU#DQtLj##0&ZRPv*os7ro~h2VV`wp)K~5pr4|h&bh24y9A*So~hWCSv_TEy$dT znm%<;acgbIYb3po9s6C(Vv^Q)LDI+qQT8UFIRqYkr2_+t(qd z`>{z|AAe5@v;c_k(SS7_=W!}BMT;ua6*V&bweovSuO7*M&>sRYjzS2uei#M#aA9D%+pUnib72$1QD2}45rB_|@~;zqie!|aMA^e+Nlzqf1h+swD(^mo zel~5jeJ5+_)L_c`%XVFwgz&Y^M)1Z6uGgVuBC0ffj~4UH;uxX%l@@6pTSe&qLY<00 zir4t`BzFd@3hk;pyo z5oSfM^3Y#Gxky4s%a#TB^;ILX$h{MGhiS4%NJJoeLJ#rS;#PjIfi?R^&}aV*?l!DS z_vLIa9$?#8$DK;{UuIkK*-x6p9LtFyOe$<3V}`sEPi&4zr!HVn>~JH1XfB*OP^&$<7I&7Aa7mi+nmL#sh{ny`=zQ z{OZ*iz!-_u&z}dFOzQDBEO|&$wV^Wf=~Yfkla1_PQMJl{!5g{Lb>{_tmgnei^Tz%m z!6cLno$lvi|D-)XOXQ4lQC9HtgkLYKY$Be+Vb)EciolP(t>lxETXbiteSyhMe>XmE z6*fBfWU9P-7cYm{YFJr23%ibN!7g3NK`lL$^Uz{jb{soS5ZOdt=Kl5^CRq>^! zp1hd%@3$RXKrxHRd7JKwzC29)Gyca->+Ug;jB%kD`?~iYvTX#Oh>?q?U{~q(;@qh3T+D(A_7U0^=7V&^s7e~$0^F&m+%9QHcP#I zoOFO(ekgaLma2cbqTK<0rm2W9lA(jvd#yjT11yLQbI)eFAr zRNjfL_k{ppW;*xn;7-GnG4Gob1;N<$Cu7+ZMh92b)TJ2N2_O5}58ou>A86i%ViNAp zA@nL5|GsRz%q{bFMKIsMf{Cd8#QwBj=KhVAy&Di4fmM-RS1=7BTle8Tx|^~kN$fS% z&DxaBiW;RE*X0@!=*x5O-0b59`96ptSNQ3Uzu2+A9;XDkBqX|i=)ag|3%V8?s>HC* zw21X#!Xt~YsM{tQ6NmekCWLUoL4XCb2(ibu!vU@z>t|%1LF5A+gC_fnZeZYG6ZEg;?BxwM)# z_)Er*^(X5ZUls3%9!`mp_7nPQbb53zb+x!=ykgUo{RA!ax&#G>8pwb?nMK|ty_I^g z6ZW&%q+g9+;j5CeKG?uug+AI@3PIHBtq2$5wXVj=v1K+1?mKg4&*)yeZ9} zj?SsBCN~ZPl`A!$(LIw713lA`V*06G1pb+R&|3PUK?2{no$*{xb#X&1XYubkx$v;K zCjK#dVZ2rO1W$JJJ^5(PO%gv-&x0B%* zunQH+w)<%isAa^<3rAzTb!~mT5WMYz=@^dYkm^k0^CC(IYK2j1m^m-_Y9TdHKa)y% zs%)%uj!|vg?_dYX@OAuH8=nBaMJ&+dXJzB9oBF}R5!pJARsB<_072B*VeU66K^=U7#Iz4qnMlT2PL+J1JHPh=6+eVtqJN(9%R%EZej{w9Ch z-xbsL@%f3#cHn94rLOtlb#zlUx>FrcD!&0w^hgIt(Z(;TkmFvy(2#!9-pkaVRkvKA zP@glFS3+R6%IkFD@71h8%Op|qJ$cIfzFy?Wxt-?g)J(e)iY`^VKT8R@B2V{N zV#V14@6Q({Ke_q%Tn3o0ae*3}d=6`|iifPrF>=bcdD> zSZqMen`haW;j+XNjlAfl3*|a`)J?&t(pg@f$7$mXky7Zm5pC1+pAIWd@V-!r>!hQa8TF-24V_4`9tmzNYM7Qyh zhpZE&0w8yl6yFd}3L+S4DM9M^NzP*RweaLJu~`;hEw>3`vup0UHBf7^>8Y06D|>fQBAW=-jsbDAOF`Ip-jbE<7b5oKqfh;oW=`VOmk$&xk^HO^^haMQ#lonZFM8 z9I{mfChi)w+?Krc`Cwqn749~^GVP8!|M_c~fZ;kbQU%C{p56yC{|np-y*Xd0%66g| zv*pz@M!$S7Q&``rVr%0RE{``9qy_weV6yFy)zR`ynEmOp6ub4+E$fs|8_ze5P55Hj zJ!Iyt%GMHuD#p}hW&aeYhRRN)2;bCRmV~tj&@D3Nb>Ku3(h&S>zPHAq4x95jfAZZA zyof{{539q%BmhL3h3*J98?Em@(6#p!Vd!k-sK3?Knazb+MUOOhtzb$;&wBY_*Z1?l zyLUAoxR_|^>r6|7fCGXI0H*f=WOk=b5>! zU@Fz;i?U>!V%=1blT0si8S5P@eI=fPkZO=|D1q3-`0H^9E))nH)n4mkvm?9x=inSi zaE$9V?hr96+I&j{n+kiynE3`dcetLN$f-AaOi{>?wwfKd%~Z z96AR*{Y7go#!uF1ECT@(3!m@Fps}=&5y2Lw{hBN*VO(Y7fqNvZBSYP+z7nIB-%g{@ z`WWhCmJyvvcH`)zVCaQG?=c|T;kq1bdpKS1W`6s3t=^@@jehyp_j9DTuW;Mt-hA;F zr=%irE;2&+(d;3h39v|8OI(A0y>v;M{V^RF;NB>U>`VLw0X!^~KfhO&9Q%%4AY}GW zp8WAoUJqDWQjaq_u;S+Ah1&-qpWbhREaI#~cMg>}yocg1iucbU<9dL+oc>#^}!8>hn)yz?ZSC$fpoDkXoMb#&EKsfdhMvi7niJnBVlEr(4lC%(QNd!fRv>q{CY$I-Y%xJE~vf~7AIjGEo zav#E_WYxS6KK`j8H{r?#boy*)d_lD+H}8BKT00u5G+0uKJ+%bNMtj@5-nlBxj=SNX zcy0~ohb9^;geynZK*vv})5#?C^mH@Nr)1)zomh!e5~*V45>k?~x*Pnp^!3v65_NCb zoj$+#P70E-M4I}Kd5{C0i%9PgAo&NpNae&x6ENSDmESbfa!NAO<#*!rl)_AHS{z+P(CA-i>xB_0_U?{1QLv*AEk6mi91$ z2aV+h{k;4B)8CQj%uZKA1bIOD+tHhYsRH&6TL;yE!=4=P!=Z=H^M9+1X`oux!`#$F z1~BiT!arOFsK_TztWTBbJ_zfcP9NplROQiHyyOuPP@mlUxIJp_Yo7cz`~F`vg%bYs!`y0|7%v9=PXy?lPN@R; zLad91Gs9|PhZ5Xc%E+sl@~;I0WJv!#fmp)wM)6k3Z+#67GuX&s{?f{)?Gc8^7m{l+ zxa7Yx#5K&HBRMx`WO49)=OO{Pu=xWNiFWJNk?&&40w^Y0upJtn*humLoPUo0W3P0i z47UxQBTtK%Y*lPKv$$(SdT)RH)H;%}bldsY)ZrHAx~lA)2>G+H9GZ^#w+Y(KPaXFy z1RV2y>Znp#f0s`9O?Ip~V%usc_=LmGQy1>lUYo~FG+pC}vR62wjAw{`Afgz@M5KST z`?K7ID@Kl|C%#{KaQ1Pd0Nw{ZK}k#;t%1kc<=s?T2PHa9^2V3<8|*x4%|=eoR|WNv zB5_9pOO&oJP}^_Tcsv4nGU!C{qKn5XOWKcj@2Om#MezY9?LmuypZ6iJ7BevW9N&FT z4g{Mv1zU!HjCKfX5gsmk1Z4vG(O3GYedyR-KKSWbDJfcNi*^~7JqR;cMc$DEp zg&uz`IKGCt#uxRJ#?zxy;$CGNDmVrjm6sm`tlcrmG>^y15=#(Z=SlZ7py{3<=bs(} z>G}3(%MA8R_-!S{>Z3RGnYlX(0)1Y@{{%tLsX1$P4(_zcTZBp75e$eTTztz$%nX_4 zN@X4XO&Q@#92Z58#_t&15|O}fl72ZX!$|zjE)wIulLBW%vYTy)wf+)QbQS)!odyR; z?O*J;?XNQL(p)i>Qpq~d`P~quN6Rxqs=r2i3 z|9Ool>e~jLZq^U~2n(+f>ua3p>7xzUNwu_iC0d@f*mO<&d&`Tkx<|qfWRAViv7f== z#`X&=Zxn(`bk`c7{pX+k`7lH@i(w|RQ^o)gJGaf zK66l`@Std)Mw2}aI(0iKbC??tZCClyd=lBbsDF8kMePI~J2=;G~XM`x!z6|I!UBJ_ybWou4w@n>DsTH9U=q2^cQ{@YH z?-dUNJ;$TqpPou>H#Wg%E3U!y#P11_SpELdLtNzK4G6*=>67V8; zz5qnoe*|560C$w-)1!cQwS{|esenohg&EV^EA~K5rSlD29-xQDy@vIiBm2$>Stg4C z7}h9ceMcm;s^*2pb6Ofp+X`%Het=%`)1bV%LP5~M%I0$YBU4T9*1LCr^WP9_9l5I! zj>uTj92V18DDrCDBhiH${~dWJT0id_%i`A=pBq0pvTEDnHsR%D%YG;9ABL@&qEu^? zwT-S|cX`EqLEvA`K)LKc``hvt?iZ!~=dzM^EX$2AbS*pa^B-~*6CiW5-Uy3V?W~DY zdVY{sxuvA!oBfcEiMaZ%Zb`p(tVXO$hGgIyRrg=T&ntipoHca6&4fQGer))764lV2 z<6XJUc{1Pha(J=z+uL6z-f6CDj}3=>&V&Sg2Ay!+71)3rz+icy){YRt=hj*}{6Gp1 zxOb<8Pe}3+6*V;lLPLiPjgS>KWP=Q}#_qpN=nhj4ph#~}`@m&SuMn!pPjN){c#G_eFKX`tKM!B|KUNX-t z<6I8+zP!|JCs+ZT=SB_CdRM=*LNS9aC#Uj9Lsp7puNoQHbDVtx<1+)yWE(>9`xk&}->7btH*-hC4mXnz*fTfSRYdm2H}7 zHz%xdp;=7G^bts!#cZ)K@y-s0?QS@R|fy2EodXIk%q$PX2Y(MZL1HtXAufUEe|7FHm zi%Gv>12FMyCuG)}$XF1r9&zR>tb<@)@7S*)upx#Ot+)6#_{P2yKW}W_`>1WWK8*Q@ zj#18pZh%lgV8=b7n4=(|?vrMY9U!KYBb-wM@@%?td>2yTyDRQNkhAjPw`0rbfWn_O zE1aS>VweAi*sHdGrpq+!7W_uWP5chl`OQ7A^x-@ubzXgYt~Db@(2)L_g1odw%b_JB z6mH4Jn7Y2S90r=kmk!hCMiEdrAF1`@YjP0+YE=-rYRUz)BhX#5KqE_NM~A~54f9FI z9($>?nQ};-K3+k5Y4*(+92ES_FP!xyUBV*bt>oPDN-iP%7yiKm7@X%x$AiMLaUsxH zx*QZ~hzY1W=R?25KUnM$kN0fjd$90IH>+1B#W|9o7H_d>U_ILf2J!7=o+6=|x-SZ_ zb>>jIUMO%H-bS1$g4Z5yo@g8CMs)KzX!$ybl=~Reu+p!tYiij@E#N`zKsTg4bsz>X ziVt!?pPjw2)s?5#n^yFYBAIs=f0-4>-&3Jn#+-Dl&V+xN#Z>hczDc!i8P+hpn5tyY z@mmNP^~Qqap-Qb=fBdgXJduQ`!qVS-PKU*+gopsrbvEn|x22eZBH{dFASN6Nv-@Th z6m=G}rx8vHft0y_7;f+|oc$PE}Rc05)zNGAQ)&*Rq$&qX3t$M%HCI?vgfq6SnjnDxLR|U)j@tYJLO27xMs5 z+B?voC(3D5s1qQQ1fy4zg5ag#(mK!nT>aw6)++n%{n7z?!kg|{Z~}8 z(Noz`OrpvF9!(4wj#6-*IBeI2GsU|dUD&#}ng*V361d$Z85`UDBiAg-n0z%&EXJZH zHW$!a_0!gFX84IGvC5y)f)L}0Rcf6j8TnLCv?B2C8;ld9GfQi5muBiGH~H;`M(6b@ z%WZ!rlY(bCcnW;A9d$;gywejhOD#sz7b$Z;beQ3DlzQTWySndEUvra^w&r!S(hvNE zLG+YPy!(h{L}|9oatbVhcV^ubzocN?s>KMd&fXo*J#rY$B>Y#p)o?pN?KspeK4CvR zH6ZbPO0)ZO)=RucHoM6L4F!OJOEhsK;b1GHai~1dMzGFsCBas*(;GBFwCAZYs5hsI z-cxyfpyN+OY)$(}88+}@)6mdR;2y2}h0Tc$<$g|1wocBn#AhM9VDq9#SI8aU zD3JFuPf--O#t|u=6b3w|=p(^{w~XB00(028IQ~ZNK|XAFU(N6B3|4rjg=-6BJ~Rwj zcMgWjUrWQ>rTh1FQhhUq_#XJT^Il_1kVOis|N0X*fc|d2d}Isv@|6zpw_*|w<%hg& zS=ikc{h%USC?L=gmYLJR%uk8X$o!yS!B)V{TdbKg6Lop}YE2%oZc(X*Fz@tY{!lB5Z=8hX5-gRRXbzQ%C^!h4sf=xC*koykzS8VFTWW0S; zD$rohfCjV61(s6*r7m>nleGx)#NUF}9P2ot4F6wVXbFqg&fyF`GN-_JQFrMcW|E^d zuGu-kb$8i`c0U$PUgk#aqlbUc$GNwTQ`xB97N4OGL1pEA3It`qU3uy(S$T5*eT|}<0z~_W|Q~(+$h2PRFrP+EYW{}zr2pEhT zey;drST>qDS$qDtO4EWkp_qke59t*!s4$Hq(d)1yMr3WnFka9qu{3nVh!kUw=Q8Z}7SFpvI$&0Pr`(8N3u=AIup%!76;V z)Yb;?=dL$Vz>U9iGdKd^sPXb=Eqx21`G+rrp#1y-+2eym7Bakqi#-SFt)RK=Ov(6- z=N55U9ACjrS#6mFoSDOZlAvuyYE<4viw2keX6u#rx7CuG6~%N^^3d zx8+_Vcn2wwCkW$Yf~ir3GjpGt%{`|UoO!+PO*gCaX6%}DQixU38P2r3x?XUXb?>(J zP{QNLjsi{MGVy8m&!cbYH9VBrL4uj5pq8O^AfGju%iv{l|14pl8<@Wi4VIvD(5%9< zUL?WnMtxtzL+(ILWjy!Y;HXDjH|cnAzHaI$AUFUo>M&HCh7O1tH%7wlCqG~L^(Rsp zmME@qI1T^{70Qam3L&Hpf=rGI=4GAPxJLTzjdYhBID3sJ@8YL%wKEgkpj1}Jp zm$7f+ix=L3C&42v_z6JD!7#8QZQs0s!$bdUA)bfh-#m*+)((yEmU$2%T@L>AmjlUtWNd{mBGU-tMsZnsVVrLA( zH8zpOr4vNMnbWbHC@l4h;+imiK*H(Nym2e{#1s1L;$GE(FOew0+1Ls0=r=7;*~U!; zR&MZyvg-iE%FQ3lWVq6!(!r_t6+19PkV0GWWR*?lfW{`J$R=TN8-Di9#D=MlBW-Zp zQa$>}4X@$Fny-hVlIiI@FfG#1&^!;C{^5#rKEu3DiUM0Jf$GoQqlkiCRe}>%33Q6S zH5h#<%v*DRNSpvDXojYN9D)d~!yF)cuYeu!I}*?{%(CRWb7B7xC#V!NBE)q%uF5gU z4uCSCadPa1)z6=oUz-oCj-kHGL4FO-PC{f&KU3~wwWG}bEC(FIQ8NBCpAVuu58LH_ zJ`aQL54lx6(}K4!k5M5#0%SD{wM}UCw1(W9pdTrc?KOQ|-Z8-=8oyW6Y2Z(wJc!Zc zKfR`snTj{JpNm-q?B3%61^%kDxxo$L;6P2=V#!xCinD!#6b#P5_~+tm2qZS*FNwj6 z1BFI3a7obM^+qryIvSjpD?#wJwC|Vr7kUq$J~A-k^upZMl)3$Q*tfCD+H~W6G2K2o ztT;1PdUI7~-$RLiEtlpv@azq%!-)^x0>!}(wS0rnP#h~m-8_KRo(b~F}!17IJa7l|V{w79&5Kaa~TcU6u15`H-U|ABg zuv~{0yhb9w9g-v;T{&_CyU97C*CNx2Zj0gTyWxJd)K{~I7C{EQ&B`(IOPd>8>ingw zuq3JX3RA4wqt*l!IN;y~4kkB>BGFyTPtX6!l3uHEkj%;mGcq+V=Rk6F-U$TdmG^`r zMWQ%as41um;+pugLWg@aLtIs@&Uhj@AfNhUJp702QQtB%NG6)ctGcHcQE0PDzsdgAjOvs}#zhRdnc57GjfjS#@cXRhw+f?klo`UA27KSM*N3 zY$Ag{pK+4kX?v3881r|1@=j~+TlPb&Kkqt=z)8qeyeOAhx^1h(TuK9b!Zo4U<-EtY z-v!)ejQ{R~F~C0&e^9OS@Oasq!1ur8-~VDEsA9cJa`$;l!FzXUL4QfzoG8@@9-4d_ zz^x>yk)T6~U0>C?H@EvGkL7cey!l{SfRSCpQVif(OOHWPBV{nPvnlA<=aKL^N8J96 zwyD<)S{+#3zOY;VK~Xac!fylg#o~ysN;y1kD*jcB_TML%qp^-x1SY~@Modus(ly`t zg6M(e>?UEj?jo3SF5WTwinDwF6@CZL#vtNyp2*$tm7k45C3kTjAZ0I#Ddm?vU<+0y z29Nmy)c6LK+Jl42N{2IKnA1z1dt5rr1)pCDx@_)PM#;^QzZWD#%}?LNkmi88V!Mc~ zn>(NHCbaz*F8uCnal#k1PXM}`t4ut{N9i0Reb8A}IXHN)?0aP>1$vyl;s_}=XC1tX z`N@y+9fbEIuN?r3qBJff_eaXelN`f_=f30jUj{ZwjR~6tye^m7fw7Ktt<`VhnI6>#RN%9K?TKD*wt$m-fME5)m`;pL_*hl7;t`t8linORA#!KH>E% zt~GVkXG)y2N&&^{JdY3az26P?u5vJVCUxqfu31Hzpl?l-$@Uyi99l&AC%LE!GJ4@> z6vGnkFAK7c*Cf$=8d%{y^f@zug`dAX)RF@R5SeH7;UoD4Pi5sq_@vFKmY?-NoE}GG zSCQ}%&>~*yt~4kr2?FnjF+B|?BQ~xADP&q3*A=;c%b;%$*YFaYyYTx+Rg{K}Uq3>e zW91L$9~{THFFI7}C}}Y6B*6NmDmA3KBS@6vT6f=2vlF?T;Q3~-Ff@W|2~WCCoRN5{>$BqHk)UJ=u_|%MPVU~4N0ho z68yY9{peAYJ<5Nc-$aC;ikY6zhg1=mdoS@^cQz1LHbX6>B&gWX?k50#N=YbrtaOv6 zNaGe!z{e$j zx&4sNcw7qli*#7!@Jf6(B``<||2_%AxP0O|@t>kdz%Il)?xXJUP)dCxzALC#7k*c& zdWZsA#k}844Xw(WkL0h^KfG!-aIk$iVp(97zMOG42Uq!teu7KItI3E7=nukq@N~6R zz+!L{uotS`4~!Zkc88%_f#0}^UdE*MVx|eB0;`W1ccw*<~J7<^ouWQS^VGV##lgAHKnN(vIPBk41a_ zi@fTZUlK<&DXNsPDEP7vF)cwtrL8xtKkv<`k4s8+lNNIj(qv_Cz}i>ziBd%P^O%_r9zPpj%tbHHA2@qcmUsjpNDk8@In~N`jo@b zl82a(#<)iqP!UX*e-C{0aYH6xf)zPOj;?XOyO$!BR5UgIV=*Z;9=8F5L9i+W*uM`x zC*iKfL%V?w7L(#~s12m5L8+VzLU?vv@$$0TV7O|kAtO+^20q9+yfIZeCX>?!dU$5g z=H?GM?C;%^n@a4eoE{s-H|Bl2l+ZOFcn_$>|K+l|*VY{o#(x|iIPW%Pz$oFHNy048 zw6tk>v7UiV8*95g^HAK<@bPE?~C~HFUJ-n4j(B+N4D=bj+@#tA%18OxcSy zK&Pt&MGb47g`w!?V2nx*nVH6!uZS@T;7<}rXvpQ+qgSKmA?Bg4(Dj(fx$B`^g43yT z#U)IAynF-dQ`+YywgNmvhPS8S#`9#Q?x5rH%B=E4U9CtTd7{A!4b$CucgK1a@fSa* zN<{&Wj7ie6zmaRUEh(l9uKW1ri-|IRX6Uj#@s4)Z1@yMT=|7KF1$k1UbI`>UHJ{lg-L zZcX;gEcUbBKECDlBOYSxk7%onv`qTtceUn7;2>L@Bl=1Uh=!v$O>b19a!DY8XWOEi zn{RSmlP-80@=Wbr=r`=Hd}PhzK!H7~)>DZ#EDlu>RnK}`WN|AH6nWj+&nlKb|G(S8 zKnowyX#oe&DcbYW_S?rJjRz`>u~XBbuWbe>IaDxx^(L3fm)lB2K~oe18tUSaPTZMI zwdF=vt2rEXRz1J{D7RxvH!L?$SRr(QJl`)&-}m#^W%|q)6x-V>c~j%d)aP7%sX#CI z`lCG(8y?q8%ndnor8m8a#k94r;}>GuT*IHaM!#)_U}8(qxgH;g=ghlX&4Sau$>MW| zudtrayRt7^^8b^XyCTcH)}E83Nmx6%>dD&4IZibCJiOF$?%DmlXXdwYf=u%rSV|%M zQ`tP7CxwCKo4Q_lHZ?HD07D0@A{U6#$$y)5Cw{=g{SAbwJLpd0>5%Gz%mvhXk#e{9 zEK*Dn=Vv*Vi7^>ll~_CFshcsQ7&xWQVMOA&Juel#e~bS?hV;x~#k>Upm(_ZbPJJic z8IX}i@Z0le82SUpaoRY_)5dV)rW4&Rjr&b&7YH1LhV+XHWw^poZ4iQ&Zb%dt zy4mjz@C|JYWaN>v&Jdl?)#+cVUVbP%XQ9(OTTtW?lGfm~xp~w4wJoUi&XYFXzrY-E z&ev30jq*Qh4Gm&_Dt&8iyL(RMqY5D`(|x+F!y`kcIL}MfrC{6zVX#Q|i|ByM*U@~6 z;_62r%;z`_E8CX+EbJVM2{50Fhj$YHm^!6x10>!NThB@;~xp^wMZw+E+aJn2p z^?8s>nMDmeW{LXy9{ut{U_?A#8Sjr3D8_58!+hY!NTy6`>?}1`&-tI8syuy-OFN;3 z=(X>V)hg2cX$DGxSvVByO0k^tX;RVu%%Z_W#*T?inG0qOfgLMG0Vx{2nxesvn9L9F zhEet7Ljj?J$8nwlL=kz6WI#VuiCOFWyP}KvSykWy_Clt!mI9he0N#k8C_F=j8yXtF z@A|>@(8^q+u&~zjl7xw&WOg^>whITs7tX52F0-s)A8G?Tl!ca-9zT8`rC_hGu72Vd zlA`7ubMRKv3T||>S$tn7z8142E*(wfxO_in0^hC+87Ck2`?RUN5xbs=zR{0*=J7@} z9Ss&F8wd1r>vk14%7D$rDd4k&3~I z8b9_V(vLQHfkD@vjG0%|xc@VQ=THBAHCX;?Wa1VpE6&@+$Y!OO;brB9(_ zob+1it{$)c-zhl zx-RpQ_>`H;f{Dn3q1N3Q==YQ!*-b{#qYo)Vqd@SR`hYPOI-=An6Qw=-Un@Xw>%Ani)!NLu!6D9%De7knE{KTvRcWHLSc9o$vri?ce` zf=t2Ii))JHbCpRiRqv<#>D*NGPYndoP=!-IqS&RBun%(%BHa*;w&!UY_T!!tqo;|w zIV{Z!ZHjm^z=xFJnB!o&ZKMZ zuq2iEwJvJM503ibjeTGHz(5n+Liml;)%B5@g!wGPG$C<&WWsO*-FkhW^-!A!fO*{A z>!^~JP>89vZ0F`F;iwS)^~RH_xVK+Y-!cucO)7=VI+q=7dA$v`C=AWq#rf zmwg!@lf4#LY`*wT**v^oxS^DA@#wQWT$;0pAu)&x!&p>er(@%wG`W1;!0)3orha20<7N`AgTknYw@afMzW zIn%F_g}uiyGIFG%g`=4F=st>6v;ir>C5XAJH<6O}|*vIm6me48Bp}eJY#J2p z&1_PZ9*GDTknkh)MiCy#`p|NkDGip&^*4IEDT514N#@*f_y?tv3x0USSdK~I0!y$Z zuq}n()6q;lE@uJWK6SLmegU+uyG{)oS8v)<0Lsa)QKK>VZ=Lx28Yz1EMbX8W*`|IN4mkrD6a0dxf+zm8P~{_P0Up7aItS5U$~QuV?mfzPHg5 zlEgPgaL%CMS#(F`{PN%Vl~Q#on+yZVS>ni<%2D-f zs1y9mLv-*i6&-_V4LvaRJ;-k${8K1Qq+{s`)+20eW*x;m5N9P2Sh3(T3GTBanQmf6t5fBQVUqpk|E5b%XQUu zI1ujp?i>YnrbtAeNn_?;!%iOPD=gnKWYPwKWdy|xr2^qf{xJRw-iE80cT9}J%}dHI zaUM>cG-Lv|&>|1EL2-I+s{NFVydsj%sQR>mf@n{8gAgV^N1#FIsOHdhqn*1L2~$z?UaNkt@6O%#KFkfXRkp60*AmsE-%k`j;XNNjH zs0u=J&3nstAk1jsKL=7?G9`!0-h0e!-H`bRPtai_Zb`y+k7eaZ^l3R`P>KB4YbXvR zq7Cr&VM|`~Ly!6+e)XliF1WdN-dOp-QhT0=BQJ2hYQ0sM1&WK9P7ZRoxdcpB;%qM( zJEJzOy1U;QiOPwXdI&}Gb_t%rr#$vYV2FxlBp6zxvw#9GQqrcnR=upQ@(*u-3h0u9 zr+BkPV}1)pKFd}W_(w4-@sprt*BD>t?q5-xMFin{)W@Yl47?{&8~EA;YOMSS;#gW2 zfEufdthk>Jc{PZ&WabqX6+38WBJN8d6R0t#SS7*7N+8gV+MBAk-a;*fqySbblUkB@ z7qtT-bZ`YK3uQ^E< z3~lHZ%DAAIL z6ah4Rf3KW!3&{fTNtk&f-$zO>`pToRtY?7CrQ150D!?9cU46Z>h#k-J4(i%1{myrO z)v0~PB7;-~t~`(?C*R zb1n7A_a`o0^Ti3}K2CIGxyCth-K^$s#U+Ae9PLQcl;gS@7}inB*4wv{MJA&QhL0aZ z#EP^+)iTZ5H#2eyUng1+vXQyDKrzxCKU|_BwvhACL-8eb&6igkSRjUZ|r)?}G)0nv1k0Q-hg8mIwuEe0G3 z47!JHDxU(wG61UAx z+@K@pHCzh_v;hTa5fuy8kk|nr5Do43NFWo+0!FEiYWP1kx8&gY{aYJoJb(^1c~goo zE|j@h4fOX@NNex}w#t#TR+#M9`S?|K8u)*b0u1XnX{(eCDwoXJQ;`S;+~&JxOQprC zhjp%sRk9$mU}iuQMM}#adYyKCU2QcuL#?0Mc8;=yK?1?YtucVw+|!?8g(00mLGO`M zL_;n9x<9%Pr#uehD^kFm^k8Y9nXXDYmvN7s^SzX-Pt|4wX8Y!&nB z0%$8D-cABx7$!YYsX7%g&(>ALmyrNr{9(E}Zj(uoirIx^5lP|r8($-Xr)GVFxp(Ip zCLfx!UM4sZG~)=|W@(@vDe)1M6lGJDeFkDQm_+5aGq%iivdpDd4ZeyCisTE% z-nx0+_9a`ZMMMt7V4F1oalAvNM)=_0vzq;vs&uNraZ8mx&b5HF)QYFc%+awaJ_I7* zC_@T#|KUn8yLWX}k!h5eY za!XD<+U?NVq5ir;5U$s-4>FP8fh1#rc6Y zWB>{viZtB$9XqgJ^`YcxusDb{c3Fb~?Wz)C3DSF4AE@t>>Pqi(!?2C)~7vIx&3BNMSgg zE zy-I1?BtVfOuWe}4_-#q=Zx=YL>uV{`x^6q?_P4r6ZB9^wH?Q0PifIZHx*~dmLQ?O5 z4s$K-_k6UXviyL0v5Xp>h4c4(h>D&htzjx?Sy@f^9?xGOAF zaU(KSkP`Y9HCCk%Nr$jHBCd{>?&i z54k+aRBBx!Jcde6-qW;ajN@D2^QoF~QqzCiAR0rk^HGvzOo7faaQdY)7i!p5=v^~@4v6i&|r(YAP zuJz*qJOpgE?ed*Z7N|M#cFxcN3CodZk+5XM8qLK#wSGTt)8`EDe{Ze~$Y2Wp;E%l9 zkiCh8Kn?xyBspAYOCxRmc;$!eRT^trLWRXWEc?1$27ucPN4vod)a80UBx9X|82*o? zvy5x{{r>Q0W5DPxsR5%Kq!dYM1f-EhLX?tjMoCCZ3IY7)Y^x{5lH+F|0VeTUsvk6JjT#B~`* zq<^+^#RME2D*|~PXGYNrS;1LQMCUm#01`?{Wm&;wav`$8Q7d5Qf&9yemQw3w0dcyPVQrE5!}0bT8Pl;khtlF}Z_ z9EA}bJy-*!07qI{xmc#BAOXTS;3VqsFPbR}DH~4l{vA6jixP>f;WOVKD99rXB&faS zV!5vyL4e!1m*lme+$eH>ALW1g_xbuStay}hdaiT+?!Oc>DPSiyK8@wvj9zy<=thax z{i+OV|9NHm=vhcBg@MT4yHNdSmfyB(a;^(rVK_NUw-VZFfCn+qS~fk#tC@ba{~(+7 z|B+A+<*?+MF!Xr!k8_GJ#lWyH-YNH+Y4=Fh8(2B!#eL`XLxc*$T0+{nRyTx zOD`g&P@Ts(Au1*R^1BJIOkE%#KmN4q@d5LE&f|>Un=wuUXJSJo(@DPd~1-b*0$WYhrF&-7TZ8)xE zND0!K(7x3)tf47X`apHTp7WEshH=s;KFXhvQh_ZB+i`r-!6{6whZd?&o4^aPC77+c z`a30LTty9M0;QcVXGEEnmJUcWKWeE~Xd(D=fY+_+z9%`qwOv!I`%y|SdFjt;KDh=u z|7VCqdMN56>i|A$=*<7Vw)a5TX!x#YuZ+`B)E9#joMr>Gt-Z9*>qatXuJ9_l+ed_- z=`&KY)A)YbgwUl+2?{E&UOn|V*nVHbrq_2|`!V?y-kWgiZ=pPkQf~5s7z8M?M1Fda z6)>@GqcXHnminTWU@~2-cyDL7q@+ZTQlARWPR?6y<6{+#U)>f7K~h8}!pIaRM%Tw1%T& zJu#>-M<)P6$FNUfLC{2Zp|^PI1$Q=9A$^MzAIcAWtFr#? zTSTa^g)6Pz#yD)&aNI zp|t9Neaet(Ed~U($%I7|AaJ0(4j0B;lDq>#8BvYYhpUhH4>9sevKTffYDm4{S=a{d zxF|Kyc7}%vndMOj+xR0LdS`qtc=sJ1d|p1L)Z^l)mioJ6>imdadM`{EYeQKNV` z_?O}1+5nFixq>LPu$ty#`_5!?O4C(2Qu~910j;n#p8Nej*wZd&GLNaPj}oyXaF)2( z)k%fljdRMd`3zAo-B`7Gz5Cj-KyJM6P80B32s-d90JMdXz5%P>q?p0kCHrZVh|s)C z9zp6`bdr{$Sx$F1w*vS4O3Zb3qG>YHfy>Cz&_NeqyzWhkJmtQSsaCVRL-)!d!caCi zq21RZ*JoLBAy;4SpX?=KoDru7TnjdrEuMR~fB6PT9pkuBRPq%VhR^74i$B!Ofq-||@|8gst4RC8Y4HsoYF&8r4HuP;+K*??rz48;|76Q-p zlfAdU8hOrr@NOnRfIY8r2oZ1CC#^j#mHuaqxbgg5NL)e=yj`Z2znyZlOlj*}-ruFGEHDTv1g15;R z?Uj|rJ1=)j>R+`@dh=#g{L?-RxJd(_hcFA0Q>Q4r1RYgT@$4rr%V>9tr;!uFd-}9& zX)D+fqZjX}oCuG-CY6jgGJ~rg0rAaq-YpV%F*LoR?O)QpPAF)p*EX<4H?zB^Ta)$< zqn*Cpt^iO{B>Ta~6LZHD4WGEsAw*mtxcX6@Bcg?Qy~EI)hN$2 zXeW)H1@8p7R^_wZa$Y3vGg@x^q@e^3f05wDmMEgdCv6!2w)VXBvBerNLK^;e3rm*- z&cLlnTSiI)(BEB9|1SEbelweZW zcJAH*Z<1LS2yc3KUOl(Y9$KQKEkGR*pwIvPG6?kB6(X^@Xb$WS_+eR6Nz{tidGO_n z(7TEX;<(p+>LQ)OSvdXLdcSPJ2=*nSb6=Zu>lO5MNt9`0hn{}-K;Gt9&7F$knWY!} zgEJize{y=jFCIWyQTaarm65OY`Ve_oz02Cj+9Fo`Bs?}UI+2m^`w*kn5sfLPR49Tf zfs#JMe|egsC4=$l3~t2+If6X$S&(@0@5;pnUPc8I@3v1-3I0bim(mf_2dSnzJFp<~ zvbZ~BB`f!H0b*Mjh#n#M&1nNlc=xXgU$f7D{f!(T>dNhi3QF51Ak4>XT?#lfvt!Unu0%ZQ#>cv%CL1HO~ESxP^isRfwCIX85bx zxw!KKzhfQHIs^z@#i6m}-HCW0q5SyNj)>RPqU0^&u?i!&AL}}f-?_I<R(QeI4n1iob2R_!IJT_2_&*k-pqXcpHSqN+;MJwM=TB3t8HnzB1hT`l|G2k@45^ zLAW@F@`?qBHzp`h@Ggjsy0RDogCWd|?Mia_jlmZo`uYlLeLlQAv|N+KN{X`zz5Y!q zq%FSjHFkPuOcC)!ktsmyQC$S94L*o`O%tfDwD_R@JJUdcxP?8tU@WDZ5tw(SkQ?ZG zczr9Uu|x*uiQFBzB>0!~`|#p|ixLp0KQyn6V4_Olh$A>mOYnP-uZIDb9COM7q_~S3 zg~yM&2!M}EEN}3o+h=z{6oo?QC)!_pzrTf`Xp*Ij#nQy@6X^xm<^;kNbtqJ4$A7=% zLTsE%IH-Y<*vcIh845VoUs2tx|M14x5(A;6mkxC2scNj83^0)m$cr<87^L^|^9gzSRxm7-NUER#AhBKLb0o!SB&m;asM^f6VQHdo3S=@>oA`3nH>kd z1v9M@iN)?c7gs2f?0)nw(DrXwN1D=Mmz@VCUX1l87~X0pNgD-!B4Sq;{d8d+F=@3G79 zoA2NO{vCQyiijs6gCw8DaL4QWK0YKto*|GF2=0_Gh5HV?$NK9Jc#iYFk+K3+;`*`bvGFv zw~41QKNZ3@gr336lVzTXbwOdciwIIYaO^h`$ktz~>+vNlsFpSja^TE`v&j^OvmBNP z0_6p6k-UXxT4eqJE(}30 z=#lhOQ|HOA)46+BX9l}tEa7a*ZwAPFuOdl~ zQzW8c(|p^6Syj!=<%WL@HC)XyCTWZ`%v74-pUUFNXcq7x9*nVw1zqM-z#kJ`{aK^h z-VNaAS4tGS4~b1%V|9mRE6artW~0&eWQgokjSrpHQf2*I$)9Rj@uNuhhr-NNh~E%u@Nj{CpoCi+L?Nv ziS4qXS5@tc|35sK30DwqKl@5c+NX7lbHYIo80#Q?3P}eZurDlcY`o=0O{WjDbR)Eh zRQ;N0iATZ}BI%FGqE4O8Su8>~2)CladvTpENbwh^1ff5!AfZ{6)mN6(7nbC^CML!j zMh+&tRTU}mcBWv&m+D5nH2rsQQX4ThKD!s{<_b$$DZps7|3~Bl8%`MwzT>76BZBml zoRE>nFyEY~iVsx*kFw<=uOdU^*D~{G_E7>t+ix&Ivwi3;-16RR=VZ3is4Raeuf(A@O%nIVe?>rTM|-hQh}akY zvb<>1Y@+H|8Ibd`3`fcV0^|AwXzr}RzK}($=)Y;M`lmYGZj5D%$VF%7xLvN$46Sz? z=>8(dW;)?c_AidebxaK?$CpmMk*?|pb7h`PasiMx*+LmcEo4*F+h;P0-~rp#!vj#Z z6+)F6>OII%_KE{0AHiytNLCT`M{3wfZk}2dADhdx%r3h<%!}MRYvhzSTzX7X zak5}$f#}u`m0|b`VI03aL7{Xw9x7dr#V_!djO;LgBl}qwTIACZ0PFPv8uSEShvH1Su z{&$N!O|j1P9=gO>f~|J8g5RG8F6k^!77lQs2Y9ll!{Vssgszxuas))LL(cHuF;012 z*v77`hcw#Zn0>>M`l?qE0Gqp9R-=n40)3FWre~vBuGo+{(el0Lh`7&W8 zNwchJfgID!Z-c-G-)^kq&byG-Mo*n99YPiMQTJ+qFq!m& zK%R1-pZOT9T{M0Q*b_jJyJs4zva*N@3tl{^<}z+Nhm`~IAZGomvTp$PS8}qnT;0Q| z33*Ha%p|ymH;rO1W7UQY3yAGcnlW`IemsZ=Y#6j&XR24-Z(emM7uNWRC|yE$F)cR^ z(Q%yPoOF?2_o-Y(Go%oCDFW3+t{A_$2`&)%&3s=#rYly$*d5tzp!Z1}I4J-jEuat{ zy#6*cSi#hVcr6%60hi&JgKe5TOKjfdCPuKxkesWcRTRdR6CfXz6WgQvf@UM4;Cejk#XJ*WHM&KVi1+dyaP@G_I2 z9Q{;K7ARAAz%Bs$^nz4@O@Vu7^*ci=3ju7c$uKP zj*2G+rH_azk4P`pyOVo;oXotybeLt?{#Mdl9h`{8;U?D(SF1e@68N9y| zVN!pY6OdKA$6iWcJ4q_v-@(Y6D1FY*zf2QFSQcJ*B+C-#)#Gfg@)TsZbK|Z6)K!m4 z&4vhVZf;&&Z|NGl0~1@JQ7dfAyYsz04*%3cjY*}%NXPV-n0Y(NjGcQ(Xh zZox0?JO*6;86N;+t;u#3Y=DEJ2;a57b5AZ&H10&Gtu5|yQ4c3q$5oIGq^JkSFBzhz zZzg24(5&evYu$2zZvW_yom3}=Os!XaP8s~}$tx^@atiZivk3VRk=s|%QvF$v7}s9Z zVrSCuP^CBxw03M$S`XGU?5;=rl=^smMb+=k6DXVhP)1T?P`p+F$k9_Wy}Qxm;kGkw zKK5?-l1*6X3q=}I4tIpsQ`4+>M)Ia6*hhh$)=)-b9x_E;+IxdnFw(Po$*Ek87fd7l zpeHS}>d-NpEP2gErOzH@gFXU31qrQm^kHV6wokO;ALJKRP zKG2qZVMPTw$WU?fE0gf_R&%Pyn8{cw0CVxM&no`o#YwjFD8I|$pL_de{z0DwAPN3? zvs3Ol;aoOY{j0c?61j@cJEVA#nrGOtoUsv^OSHLLY83$E9=HlRu*!CF6+f}R{W)G0uH@c*gTSn9Pw%MO(%j$dT(Zz z00CiNgPVRxmdM8s~4ml^jPqv z2wkO{Ui0#~58CcX+>?U6M++igACO?4l#rZ?QHA$!QpA1lp&=XE#x6lOG@(3O?CiA+ zTW@HhL`hhb-bg92%UTU+kEXD9H7^+mjbWe}GI(>E#HEGLc|~FUKd*gz3lI<0QCTtO{r` z8)|!4t5oMBxj3Ue*=~_S< zz+@1%lXd#Csj3bnjp9(v^GU*(Ji43k&a7?)Pa2q5_z6&z*9VyWF}#v$ij;TZLXBvA zvCtiAtb&3tSWhN9+43cYgIK;nj!WQ5CAnQ02ak# z%!|I70GH566ExqNP93M*pH9!1GDu&=gu@@GT%yYY3csa<1!|l1npu>Ge+r1oY+zuO$=~Nl94>n(x zN7#lJd$$&aAddL>GBuOdUTu*grJN2#QLGhj{}QX14&gc_Nni1ph0c5(cTpI@PsuIk z068~l02wFX!rJ8r6~%;IXBiM1`Z)Zz1Pe#^4tl&YS$wl^(5Y%`UCDAUsl2d=FF}a^ z=I!~~U&cy0oopK@GMNpHMRm*6zh@ng?xR%-iaz)H*lXXND8y4q2~<#<5Ue~4@1gN% zZ)OkWAQ;Eu&SKBYyE>|bTXeXo7Bzovh}<>be2-y~L%Z5hGLznu~L<3n`#D52{|2J_}0K8`hl z2w-J(6^=*S%5r!uKchlmw*o61fkks6K6I6tg%TIMpK*vgU%=BZlwn{A?)BCP#z0b%#g>D32~eg3e<)6g$#;IiCb7YgBk!sX;1=dsB>kc?Gc=lN0BbVcgrTUt#*C1oAFmBKogNi%1X)?pEF^@GuGvr-CW*_XJsrXKr( zCfGA5Jmj99r1agB2@V1X^c1MZ49S>n8_E8Wh>n z)2n{ZV#@~4BJ_;{4;i?LV;LHKpmXqrJj&Qm?@KKvyR2Q7A6h=Vm_#_B%Fse3n?@v7 zKt;h{g@6!$oLDd09ji2mF=YF9_I%1FqF@yx75TV9C1@STAD|1evxmyY+LL=(d8T>P zq}@b_k&_)$WVb?s%k%-uX#+UhHa&6v>Q%hUE^o&EBT#7L&G7GOCm4cksOs(C1bVJp zb%3h(Rea@ox$!{b;i?a@GJLUT15&rRx7fW?)1zEFXI<7VAx@@941|%48Yv|wKU#i# zIkbeiyX_~`2K#Teov(GUVrk{ZmE(t#AIY4Sc^J^jBah!Esq;o1fAiAI$poYexk!wK z9?J7vszmD>SqlE}_Z950Ch#N9Y`=%9@ZcSagV#MzdG5=^X!ASA5#kgMkp~ zeUZt~&wDDsps^i$%5MKSUCS*=JEfs|Jus|=T=}5e_miQK$S*$_$b&lf*=Mw$OBKp*dF`VOgka6lQ6tck z(Bc}R0qxdgS0d-vs5wj{jOZ^p9k!DTLEtPcMesZn5E!!~2SNH&{PEuy83n9MoA3?f z%u>=&@jhCRGo$+;z=|*xoN3qb{t0XfBOr?ie2>OyVWZEH{{G}W&UuaL_(wuLe(38< z5dE29-lKB{Im4?&CZS@ADHg9zg71`W zmuTBAIGdbR7QtpKwIonq+7LuV2|RkPOiD}VxFh-q@iJfeB5=^zsb73dj+;@^_X?xpzE?Mg8kMNTA8gB;X&;^VKoyk?F2tUHKbOZMaZ~r1&X4 zpc_BU5X{+8_=X7*#z}p~4?mTlY-U~R^q=dUhp;!)1>(vm;z|!7%sFP$@UwDWVJI%H z1kzKJqU-~F(2pw8!(V88ZuS&SB2Z|?SW?)nJFROG%O<{P-2W{bdf6mpBw2l3MN-|s z`8k*(Wouu(N|uO{emgM@URn9?oULSVJSW4#_=5vdl-A)r9pWJRz;29`08j$k#Of2? zevViaVG}UfaPVXG(iRz+M?U3{fY2lMqH@I7PP|4_yON}pu9g>PW=xqg?#0IaGK%^; zwNT%^)82vTfR4U{c<6Am``}ukb({)<@>}mV%)dMT-jEdiU#p7Xz~YwBvvk(|)^~?~ zBI}0_%HFd&%co>om#Tn*+t5-ymczC2dgH?cfrF=xed)qi0?7)7R7G) zAAGb{$CWEKiOd%eK(48jMWJavK+j~WBBWjjWR}1h9)B12?1`p-FvcwSmi^I@@qIgE z!#g}4c-iOoKb-?XFn}^*uC#Vv`fZ}6*^>*b-wcV@I49rt=pFWxS)|uUI@e%RPk0-# zreHQpZU)+(Q7Eh@D9pijnZsvtz3cU_D}VGMz0R5!m61^kzlEL(50=Q3PZCJMqUOQ= z0BkB~rXEtb9{x@8X8T-(k*fb|ozlzQozjNdJNWb_>wT9-;(MY>c%Ta$wd6F#lsIvx z!BP{eQWgajm1rzVUj`2*B&z5It)H3;ArK{}d=_d4$t-Br=`vgHkIu5-D+oSo+L(Jm z^xwZk4-Tpm#wg{UwrL%zp(Arl>`L>8%v0{Kqp9d)oAY+78H8!nMgAC%V@F@F2HfH& zPnJ3O@O4^R>L)L-DKFE!fz?{$b+z5j(L)qjxDtQ6nPwq;-9t;}U6S}AAHDLc;%DJW z+`>_exmh{fKQHJt(2qG56Vl2)`sV`PI-f2nGAcn^{3E^voDgKf>Vp^J>)q)~E=COJuIWy1Bs;j>hegFO} z@MK3YL?$|KiY3$9Da(@v283;0ycYAGH??%h+-{;3dRFmVS(<5K^;na=lax}yym^kr zc1LtavJ2D$O~R(_qr?9E*mXEI79alkWO%QP={|U7zR_s$79ApUj=!5%!H0+BYJcXH zB;odu{RB{F%6m

      *&8z$GXIgF`hmb&aYsGduolB3bZHjAxB_nQ@`Kb;SU+7GRhz z%OqYV``dJrqrwJ^-!z&B?zn_D>9 zLIL&|1qf`!Ei9SGBdTp<_zRbjPoQM?JalDa;i94{ab*eik(lXxl2)gShoRrlxfM|# z+@IhXy9~)zHNb#Pv(~apnbAvMLPj<(LUKnBW<-$^c8VehqAr1OE*8KwJQnC$?AA7U z_&)*D_Z_~4|D?06A{;nv=fS+?xY5V5hO!lkN=j-Ev43$daTI~QCN2~a*%T2R7R=fn zx5suicd>_?^8S70dy7mr`3`v~lJ$XSI@fzEG4sd=8?PQ#NQ zxBh|GPEIEOX}cD>X}O;Z;StThujuMEa5VmCM?b0=1!_Cgky;4Mb#ebo5bTQKTl^W$ zMR=pd)e|QH>afQ&6hb{6xk}f*z>+YkB#?H_#y#k0%kt~ z6D)mLW6hq8j%?MWa*LVDYqejQ%NAva1Yg<#ly0|8H zcKk%39sx)yR<^Ix?y1^J;d_;Pl^Pv?`~);Eg?8Mc?=_BfC|Ixzvr?6jgy(@WQ_}3` zeRx>Dk!4hyrOxS(Pjv>(J{uW+khC6|X3B3tA&@@kA}jw$ZN-iX&d^;;pMhcQE~KO> zH_&fTkVIMfcKmQCidW^U3j}__fGj>4FZ5ng{JRf}F9OJn4=8xNO#Biy7KpmB@ysFZ z=H-?;SQR$wQv38}tMJ+BT$jS_pQWgb#Jj1xMW(QI*;r2RpUj=Hhm87LPY4#P4sM^_EjOHhy_?HO~bA25NP;YpHXIAIZ zBzyF`U|^~j=hZDQelk!mF*x?T0z%&FVZNm(kn$C##{Mp6TCx zKmwePG%M-lah0wKw2Uo0J>sN(*9Oir>-#71uy8Ba!fKWtA%(IX@)3}Qh>x5a^~<^| zMC8ASJA17DOuvHK(MhW(6pOZhONrpHz75@cuS^VSOg!h!R2M+!j>X77U+Szmw_KLU z=s3c!1;nBxn`C4tbMs&nu{qc5)Xne-e&I&j+oze zxeL2~I3M!Q=B8$G%o59^NlRhwqm`2k`4?`tRR6=Yozrf{InEeFT(IkaZW`!U=>$0X zee%a{o`mWZGCHnRQ37&{4{w5@!-Cx@QHzlw&$mZH-#Yy`Y(0Z6gjBjJpli%C-sYDS z|FnA)I&kuMpazRrB%43;vnzHWYGoS%PvVWAb6I2^Vmfxla6pd{9&NADe0ms~=m6NO zh=;nKTj6WeyGrnN+>@`vEr$>P;3$0V8IXq@E0~@v7x!)5&@|r`HzvqVXOw8a=XqYH zllp_Z0G@@sEszLGO3%#X1vM%<4&-d7nOISRy@R5p^(@^^bH^{^2`!^e;$Kx|gkjDH zusEI>H>B&6IftP$)yolV==-qj1D^$?Ba~jF5MXtZ|JkMw3{=6xks~Vy%ee5e5@!w= zfdV7Aqg$q0j1BCO-W1X)w`^f5^y$0M;~P_m?X+#2p@Q^i{%@D#w;xS&7}A(xX@mu) zv2P?x?0C2IHcR{Q5pNGvq{&mhp&^o>@dp_+nQjj&{%}>9*Z;Q46<;1>2IjLHW-ZA3qo=w({ zO|c*pBi|tB)X4$>UbBmXuT?uPK~bhJ;^G{^TQTU%%Ip1ibk+ehY=|7E-~WrqN`tBk z^sUn%2ocl)=B~lQyJ!7DPG>0n9B5d7=xlY4f8AzQECjEG_AL_m1-s;W_)^*CzQ8LN zJM6oV#emwnr{|OYq92(eDn`GK-vEQ?he9JNXgX>vjHSjCnw2#w(4T1&H_%c*F~&O} z$AB=!Xp)bc0}t>o|AkAqM`g@G%j;7~%=Pq1jc1b@!}wbxKb(+b2?;0PDcmsi3h6Ft zFVHDN!UpV=oPB#VVHIj%UQmizW;4ps8)j+J=ehhr;&J%QE!v$Rwcz+0p`+SAAC6J1 zzTA~4+&$WhT3dF+P3}XL4Tj%4`I4D&F*~=qI<}VY9Vcjw9-rTufg7MZ6 z?XV)!ic;wA3rSG*KUM8qAO_;4m%+e3Y(>k3iA~A!a3vkI@S?pEs1 zMN0m+lM<)cASQ(}cOQ%-!ayjx*D^{QPO0!YP)8i4XM-k9bLC??R6 zb6WX>6dOa*UHrib=6kVKj-^tBh419^Qr!pz7KdKVYyuR;YpP!em{@9m#R{GTt6Hhn z!<$w(9}V&=+w5U*RTc?VHa@q112woD27Sl_xll(r0S=gnRj{JSHyW>n*Oo0jvy_p? zdPUQ=1N&Gs2NEtNi{N3NOv_H=39wj~%yO$Rd%{fw&oD^mzEtsNHLbRg3|5-y962O) zsTv;;9QCWCHD{qt-2L#~85;#pc`an%-0wYHJpX7y@#$$xLg2rDJ zwT!@vVtanq!iBL(7THotz>j5cWo+O7vXhmg<#2D#Bk2)WOIyufQslp%lmn9}X|khv zLZ$hCXW`N^4znD&3ZGb4el8W~wS+@f+T=8J9urrRgekU?{p79Kr;ph36K}2cN!Yzl zNh6|3(supg`4U?6xx?00jhOGz{fu8!W&PP-e%sHVY>T<>Gg;!fEJV`{UTzjt)zVv{ z@3!u+XR5{nH4kvL>+arSiABV?Q{WHW@$Fzl{&hf7K9z76wyg`hxwii9eC)Vq4NRktFkC1fD$N(o)M&?xtHvp6B#~3-_M(q z(=_{@6-G3rV3wb8z|&ylh@Bv;G&Y<)(<1+8e&iLA#+1u0=MRep?nw4u1VjtYk|z-r z{%|i@>C}ROvgduOZS1Fx_5-+DljG9y}0b$&7zxs?fHWnRt(%V&hU)*_2UW= zen;U#MiQD^VKKYkgGe;-ci)e3HUQFZguc#0>NtAKmm40S%IX>yk8;lhnblrtD5X9!K@}3n2`?53red7`THVe(-Nca~o?FRpBOf5hxPCa3%N<-yHUDCfQ z#bmX$fm1FJ^cN2`-?hK;xA_5swD)JpGtmuJiO`~i0x@Reu;w%bC&G+~t{;1$5_Br? zN~*A^Q4*W@{X`#|Pe{T{l> z&)>t_1oNX7kB`zUh~nJgzS@qiI{$hTr9{LTlRBKv zSQyt9h{5@dgYq`1$0_OZ*-*ImETSI4@;z|$G^J-3A@W<>^I4|9-Ax+AArIf-R$?(y z3-SA_YqY0i1XKO>jLOyoLwK$SD@_2IQj}_e8Y78R$Dk;wTS9bN5Y;+!6etUEe}{5e zEa*9$OHxDM;P;;$y?`Ol<5F3wLxEVKDstLJ5jAd#jEU8bNB>qgw55OSy9RTN<*@yP z#TYv%qj;oYXAdtQw#6*!x;?n#Hu&m!RD#E%VHBE^-ob%_S77HGT#BYa7EZ#dw#GtA zb-{;lxH^)REfV!-o+&m}*K*+d0JC1TSIy)CI^DN%)`8F+N^7O2t#sCC=g`0pf>02# z<0>Mkx9;4%uGfXqk3GoM#4OMkGp0}Yd(SAR{I=RINm8)t#D`mKvj@c;b&cw)r!b$5A{4dFYNvR& z>zCR+ik(_EgxK>-MSuw|MLkuZ;bRqYE8%K#9ZCUMO{D?TP-&Obm&|r%qqePomzr2D z!&_M)oq|NoQFGrtO@kYs=g~tPPzcx=UWxsuSM5WP_21a*Vg$rPikC59s`C3kPv^ zTYh})kFsz+mPLIr_4}ap0g?FUJVk4q^IrF5KSQD*HU6~XgzFI=7nX1O|4BVq`r_kK z`C1M-_l9Sfw&&+fO~R?|ZQqj|LS+d?B>ooLJI7(Ad3pSOjO>TIpaY!qq4&i}6GAHr zNV9CbgHgS@&tLB?@`4sLov_z_NVTrzn-u5^m@|(P>|f*lCq|!_kGN+-grSI{FCAlg77f

      4KK!+UxyMV2L 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 J1g2^e@jvyz`yBuP literal 0 HcmV?d00001 diff --git a/src/assets/assets/images/cg.jpg b/src/assets/assets/images/cg.jpg new file mode 100644 index 0000000000000000000000000000000000000000..de0d2106d6a518535883ece574b7926577c0c390 GIT binary patch literal 6372 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 S!}3GV#Qc@-8tSWGUi$}|FiL6w literal 0 HcmV?d00001 diff --git a/src/assets/assets/images/delete.png b/src/assets/assets/images/delete.png new file mode 100644 index 0000000000000000000000000000000000000000..5a6f11a8a8e17f7234738438e3d6e29a69b86185 GIT binary patch literal 6218 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 WQaau#)z>^Rn6$WpSha{@z<&V#qSovH literal 0 HcmV?d00001 diff --git a/src/assets/assets/images/img1-1.png b/src/assets/assets/images/img1-1.png new file mode 100644 index 0000000000000000000000000000000000000000..a791ca775e631d1793cdf739c2136e569b94a38f GIT binary patch literal 418454 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

      (YIS2d>Y4k3b*klD09>-jTsAMH2 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 literal 0 HcmV?d00001 diff --git a/src/assets/assets/images/img1.jpg b/src/assets/assets/images/img1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..3df8b011a8c6b05efa32960d85f0e863ec6b7b22 GIT binary patch literal 104580 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 literal 0 HcmV?d00001 diff --git a/src/assets/assets/images/img2-1.png b/src/assets/assets/images/img2-1.png new file mode 100644 index 0000000000000000000000000000000000000000..897d7555581067ece114f2b4214a739dc413d4ae GIT binary patch literal 208957 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 literal 0 HcmV?d00001 diff --git a/src/assets/assets/images/img2.jpg b/src/assets/assets/images/img2.jpg new file mode 100644 index 0000000000000000000000000000000000000000..313a3aa4d16cc80de0de3931eb30530d79212246 GIT binary patch literal 83170 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 z%0A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 Vo?N==$SomDkKI$lJ_lZB|Jn1L$X@^e literal 0 HcmV?d00001 diff --git a/src/assets/assets/images/logo.svg b/src/assets/assets/images/logo.svg new file mode 100644 index 0000000..ade3219 --- /dev/null +++ b/src/assets/assets/images/logo.svg @@ -0,0 +1,4 @@ +<svg width="61" height="42" viewBox="0 0 61 42" fill="none" xmlns="http://www.w3.org/2000/svg"> +<path d="M40.7182 41C51.9195 41 60.9999 32.0457 60.9999 21C60.9999 9.9543 51.9195 1 40.7182 1C29.5169 1 20.4365 9.9543 20.4365 21C20.4365 32.0457 29.5169 41 40.7182 41Z" fill="#1E2F65"/> +<path d="M20.4366 40.1666C31.1712 40.1666 39.8732 31.5854 39.8732 21C39.8732 10.4145 31.1712 1.83331 20.4366 1.83331C9.70207 1.83331 1 10.4145 1 21C1 31.5854 9.70207 40.1666 20.4366 40.1666Z" stroke="white" stroke-width="2"/> +</svg> diff --git a/src/assets/assets/images/nginx.gif b/src/assets/assets/images/nginx.gif new file mode 100644 index 0000000000000000000000000000000000000000..bc78bb8409695671852b241ef17fa33fa8ccbf14 GIT binary patch literal 12532 zcmeHsWmgp57w!z@jD#~oh?KN+cL{>hrGPX;H&QY*gVYQq4bt5p-7$1`NDI<kA|N35 z_rD+Deu8^m?6uC?`^DMkdCs%;*;`)morth$IQA2)Yry|jKtKQrg?i=!m6MZeZEZdM zb83<eFDfd^>d&6ooCv5zzK)XN4(9D##Ju#TtE#GMYis*?^z-E8BrPrN>goy#g^rGn zA`l2GD=T_>`mgOV-zTe9S64rkI`i}Mt0!xG`}R#+TU%dW|L*SY;o)IzZLPGlbbNe# zeSO`~(D3l^@bdEV`1p8XVZp+}qPMp<BO}Av+1bv{4i1OM$H(vP?zXhFTwh<GpPw5W z8=IM#q0#8zhLEtZu-n_)`-l6$z`%ln0!mNn+q+x+41@CW^17M&Z#}7`?$3Yy`sLu@ zK;up8<KvT+m34Z0T0BzH(9q!I<P;klYg=fSoSgjm^Jj-*$KCVYrKP2gj*iXE&F$@N zt9)yoU_N(u_n@Glva$01{{G?N;kU8xyu7?3A|ldzGX@6-YiequqM}AOM&UW8Tc=yE z0$2-%3vFy{rl+SD_7)mvn;89=UCZ6xe3caq7Y94yZyay*ulCQ+&*$akVKA84+1bj< zN<Tk8m>bF0uU{476}!8;)soahLPBzKa<o#ljk1i(%F4o;P<3^6l@s6NI};`+C$a5t z*ACanJt*jW8C+dmle&_tr)o4)-X|s|p8YxVsrL1+4FK3+>FVk}K0f|mc>llof87Ab z|D6AO3joj~KoU%)P?g;k1R`cL9IVRe34<^wr7KkD_C=8M+pP>%=M8+Nl?|s-tjQmW zXZcWSI8;+GlFVa1oUT|~IF=^jcCa#3TQrd+9rTo1sjhe`Pa&SoXt=Iqrbr`CDMP8g zbgoRd)^2sUzU;?$cuzRBazpuIt<6lS(MUtZa-;L+aE5YY<!Y<v<-zJm<M*GPNNju> zm8PnV9uzUV@n}=^=0FUCa;8di&GtwNzx~>1bM5X#wrm8AYD?YzO!0>@<FS_d!yi@V zBblnL4adt(Zij1Qt&OKYF+un*)!LfQHwWX{O~%`rFLx*Nl(W>@TdoclYVCiHx3^xO zuJ=SdzEtmMyS?0-DKnYqXurEY+Z@SK@9cQEySY64InmkqAD{48){!`5HtT^P=Hm4) z1VVf3L6CPW8^I(xHX9-2R>d2kR33X9VYHzvzfg=xHowp;g~h+ZIU4qUMey{qY(@&q z+iXUO>=bWCOZ?f}{3?ydx)mcwX1f)uz+AEwry{h!6|eD*bvr>z$96kW*Q#VY$<Ske zI~g9zx|3p&WV`dtrm$ou)uCa3C(XH^bvNC8-gY;`bEjlC)A!H*ZWa=cZ7(~R%x*6S z#az0V8!2?KmlyMnZ9hLj$8NtM#j13_Fx}%|zbHGD?Vvb6$?l+}xUlq~w7lWqpscF@ zk?pX&Zr<*&qG_k}u(IvX!Qpod9{W*MFPZ&O^&oTEQO&5(;Zg16JNDzcSsnZ1`UR`9 z<AxQF!{f&FQ1+9itt9)C=DotQla`}~!;{vte)iM0-}CmT?KeARryciy4o^F$6{~<C z0un<W5WX`l5aY`{33vsO=iu#q=9vxX@en)1^isL4NMr4Y#$d2$NPMNc@!(V`KpOWW zz5#3wKqiKujer+KRJ@Xm^KAKuzmLkn8iObKNWhDYe;ApJg-w1eF#SW+89BrAq{7`u z<-_rB0HsDUre7aHa53j<N!>6*n}5IZ!@5&KXwm6~hWqmC*Ur3d4l@s~<Iatb+O=y2 zoqp-qZrDV%OMXT5$PImjV>*zQ=j0NIF4{(J>3>jL!BaJNa+^+!w*)L?QdWpM!|sj# zjueG)>5P<#uZn%5a;Lc)$!`5Ox7|3hM!D5~chq!Z5=(Qx)hY_VJEs<wzW*4(|EX@Y zsf+7jWCCG{x%koQNI9{(Jc{_Er}whsrj7~oa0~mO{!bfL^>_(DbXs9%FItbf?sPY@ z9!ChJsq8V=ozc9=03Eam(9r`kKkF2TCkNNQf6^6w{7G=94Bkt@(pAi&5yVAoXiJbS z26^WI80zk(ikS@JGW-QI+5^INkhsHg6Tv)XFKtIdWzjE`i6onPCLT{Fu|?&q{3N&J z0Lt-5Mzteg4?Pxa#aT$0HV_nLn@cPz)H<Qz96@!jO`ZY}VGa)DWm+-o4c&dwT%u`a zx}{Ayh!o|kqvL()o7d~!^n&JqH@Zda4NNIHn1Pl#$XhEHz@OJAM>F;@5!u@trxDEM zo&yS!pk!ooA>R~@BQ~lVeNGJiV$5k~CX4(c)6EmyaFxyT^oDVu+~Wmon9uBFgp`C? zCs>7+k@&4m8rzfFKm#QQKyz9omc;Fl;hG(xXUqaAxob%6hACkX>k20j{Ot(^u~}Uk zDVhEYUT#1jo%C7vVyK2JhI~DZ*lou=9ITFtI@NJcNTH*2eGG1hrQ@M0-lbvUR~jNj z0%>$HSmYR$3C=j3Pbs>z<BJel3qFTW00R2X{kDOoYIlMKz)M^+0FeNRGfOWibdaT* zUYaq*+8m4QA+F!sIEHuRHx)MQOe3flmftLfJ#YYs6`MRJ2mqFJsd=~g(D$c>M(FW9 zca<F)a?^1qx6|Bz_oQ=6^AiE6NE)YbY+W+DD9AQ{gA6$z!gJ+dmXSy!wlf`usdMz+ z!$1A~2T(*2?7Z4qV*1ou2%>UDXD7H~YW_APnkg`MuWfI!crv*((-BQr?QnK~FrJ!O z@ts`em$jQ9IC-p#&JD1___s#0$aJ1=IDSnJEGymq*r&n}Yn~3bO$<x^Mx1egV@PxJ zORuOek<R~U)#)K_rB+6j;kUqwi#aJ?nyMS!oPZ$%s!VvC{$pLirIYb&*z~@R#rK9W z?PtCoxPxRkphdwI_Uj9stoqM%V@9hE4=|$^>h%s1nePE^eW6)irdc?mZ=7EY;B^4T z>2En#wNKyZ76txcz;a6SG7SM0Dbho=vft1%YPP%)NpV^URtPm0o^AoCf1&|Yz5Tl^ z#Ij=tA+75{FDIFy7==8j`$pvLIgD2-wLjh(W=CJ=HiG5zyHngQ4Co!|$iHr7gwJV* z(b<?W&qPI$vD)vG9VRWnni&P83|MTn;UJ-f#}P+%J~>8!@z7NY=j+0y0M++Dvtsph z4nx*`uW}p7J}_nv5a$>OwAK?M7$?4MYJa9{G7`zEV9>By0azF&sbHT?(CpWa#SE1x zXz{>&p@IVrZL!DH-xFNePbTv3p$Z?O=4;LNA5$iu>+w%AH1wyZ_wiX&5W*LzUFz4q zjF$D2#nh}wF1zyovhP0@<`m`RC=&0ssd({M$Bh$ioJTEWsBX~*)4@-4#IuU`y>i$o z)YiHDp*?R$&X_rVp*Kh=)LNatB-P4a8Jzk$Uq@)1R@37YXFL(!$>GSMSX<qwT9!Ec z3B<o0(PP96Lno_EnG6XJ{Ca?jE&o|=eGF&0<2!in{?(h&tbe6&fd0aqUYxPHAT1Ap z>zw^>d-b*X&0E9hW?TEdBvYSbC5aP(80<2_t%Nnm35Z-Uo^iKb)=NA5SRgN}cgx*P z%pGeIU6b~3WFvn^V)6b<UF*ZK<ui<u6X3dK`QgMfz=u!)OLgDKjm~1Cb!n07rg5a5 zo)__Ah#l+C8m|HSV&M{?*FP>Zj7L0>yKQj>693dj>NrdujBk8)JDs+6%tbrI^-WkM z#Nyv&dKh|F{U>@-J%4ANL$Oivhf`U3tNB0wp%Xt3hvPQmO9tt{BU=-n#9rj><fAXK zlI!p~;nG!+`o9a?Pd;d#RZHOk)MM$s&}F&wl`YA$A$9JutLhp5Cx)IwN9sTQ;_~4* zQxl!*rW!E$-{Vjs7vIz;0T%<lS4C!~ZZNr5qV{B@lmooRVX!<mA>MfZQ95MmD{Rtr z*rm1i6BZbGaR5EagCB{_<bo5ZAr^>)6F|RwDGH>rK|VKiU<v%(NbIk0?nlk<#TV$4 zt`WGl@#V`dHq#`GTG#s}2*$(nMMW3!4i58zKS?ov(sKoQlY)@53FfnbCJlh!G(x36 zihX@fDn;(gOUFa2VJ$D~^}{8^>lKdvpx>)=Z2rk$j}#AqNvu~uT+JUsC5%uf6vBBB zCV%6lxCiMG<|PEd(1Rilk0~Tl#qI)hK&mPL4z|!U02U>{ZUKt&lm`Vjg)jku2;Fe& zM#L++w^}4ZIteb24K(6OIJ+h)6@enG_ODHX5tB=7Uy~SK^GDp!RoNiK;8?XR;S5t) z0`TzB1#o`~Oqx+nN>=Wj7PLnf(dQZI>Ip4vaH9#d=^_q%cOKE5NB=_?!GDIsCKC~2 z9YLvyJvJD5LJre~gB7a4Mm(UPN!(N<PST{>bC+o6<mf|GB*~OMRZtM+REYbG{~M^+ zJAT009vv1Kft1E#?TY>){FQtI>wF>d{s}4Rt;h3kv3R1;CL4YZXsFm6NvAOH?;d)F zTMz9R7`t;E&7&q3`C05}6At+;3ID!_AQ~pz9Q8cb6B7TPeF_zNiF$2nRcRSW1xs*x zjw^?br<OrT3`Ig{<5X-CUuh=%PKHumhrG;jZgg{ecaDT%yKufqv=zqkha~AXL-QIF zM^nP2hk{)dli%4wZER(@x{_2wNrJ(=UApwn-#obC*vxcEG$OExu;fv4ET5s^sN0m! zFQ6bWZ^Si}U{NT&m{@8rfw3mV)*6>t0TzP}rgsTQ7>Z<w!BPuMwJAzvno12VhH}`d zbH~P2W82FH`bdy7G@w1KV$#yk(190ep&!!_De2|S=@4GuJW*H%tLW1g#0rgqM7H!} zULN6(JQ)FtQ02Y!F%djfXr`5LCPPkI{em6uK!%--Ncj%&)(xMPO?qK*COt6g7z7j1 z2-_Qq<U5O3>dLg*&7uQlQw~9IEt42>f+A;pL~;NMqP%e+hNt=-V%a#4iWwxPIJgvF zjc%dpa4fc#T#lt&uHoGC>+r&x96J3>@>pxM7wkp&`}fT-Zm_(h7(KPV$NLy;LbhC3 zP9)P(qyPr%rA+wbKrA+IeuhTAyj>o7j$Rfk48Pbw0+?7B#GthVmO*Ay$6_l`K+l@; z$H=kODg55ELCp0FX#)#&!=Wa18T1=L)@~UbE-Bdw4CYH<H2{p_8^YxPLNio2_9&7@ z11zv*D>~OLe(6%|nOyu#Q`=u37T7EXONAj@3Rw7xGa$f3iW0({_(+Pcp=ZU;6wrLT zQX10|L|6$bF+oTsCp52!Q8QKiO(|Q9H?>TehjrQ0oW#GcKqOV=qf6!Ef6FH+D#QVP z!voM5?;<d;yn7hhtB>e^YJg3fF2L(AXhq!dw@l(2(0j0=xCMeJ3HbRG`oqrqiCx8a zw!D`ml|4(9P&#0n7|h5{gscU&`XaXQmOfwKgZvEpD7=E0_uK7mF{2C?AHWY@0==a8 zcJntDf4Rzhh*YRatbGr5yU)kF$N)C*uy2H}K1H1CL#j#woa|sM06*@>^?Y)l?>eYt z_A)5vUAp0vXCp&2lcoXmHsc<h9Du304~H~()v^HbCWUKX#8y`}S4%Y4NiEkYbtNEc zOK8sXUIo`Fwk9qmLth_yaEn8BO9F&rV7zI5yx~xt)->I_SnCL=Exvc3n?%;roGULC z3xfuOW^4mwgP}46o9zp^MldU|x@Z7fl(L|T;=kIciO7I-eL?)u4vJg?z?GW}z(LQe z8*LgJGLZm=rixtQiqVf1&ovv*y&5GHTgXgXtixL5p{Wmruq?`aP(-GlXDgZ=qEs4C z+ytv(_cU2=BCBqDrqn7S+D01KYE{(wZYnL#t?ET=1`T#w*JDIxkZyb5A=o}Oz<UTr zg75c<vQ>-{i7VDYV%qNVoXl9+e;pqho6^Y@SL5^wuQ#okpt|@kB9~LMcJxX8#9asB zMyKr)%oaPwK)&+q9gO>(AOWWH!5~*mI_)y8skAiU>M!j5h_CN@M*@4h!D1Kmz8YTL zTrF!yr&+@lpSP!<s|?R4mgyY(2pvofs5*qX*n6|Br;q~MQTojy<vp;jo`ndKHcDGs z(>l{|MxrAR_oZILyUN>F&3wS-!reZSz~1E2UZ&JO=ti$OFuiQ18BEszHSdvd?Q@bZ zu^p|4kNUoqAm&(asS{2%AH{GE7JCpt?Ig(7@I?Y1?~F_t2He_8^|Sk6z7SagKad8o zg##jra*(yHHj-lKKe^MHDk<QPB?1<w)0Tc|`H$qdIY-@ARDMjl#Ek1WQ{E$!PjiW5 zhx#Z+n3jgWmsgty4(q#RJr5jSiKr=C0y|e#61faQry6db$C-DHtR4IpHX3T!p$6^K z;;)+X5*jKW9a+I4xEnogX*#nbn?I^qFwEV#hfGS40qqTLM~XI8#<P-v1t{>vN@ZzT z08E+en4m7RZQ|j6B6sEWK;Ces^Xp#(Or)$hQX1ir$Z`B*Fncx@y+S<>=OEJBo5XR7 zoN&ZkW;m0$<ym{4&~qkIG(fZp2O)yx@;C{(T!HLT`aLxy!>wpIjYRNp&Uh%y2#t-Y z=ahMG4l?#lo3k@<AA^}OQywYb@Lgu`WiYotI*tgY7e0C?Q_Ue1=AN3)nRm^Ct|89p z2|?_P>c`;Mqrpw0^R^V-w~a&AQ!~D0-3Y{xlTo-!2E>As>?+dChPvsCGLz#mSX(39 zPGipY@BHLIi^SO6qMf&I#X{uq!ix-2-%>%fp-)=1SzL~b*yq?f8sX~25QX8sspK|< z>Y|$R5|-&waXaK4At?)|sGS$2xGe|9xr}9s?Y|QIJbNiVeV{J6gUl2gI=M3burf)# zIxV?6YqUCF5ltBQqv&qNM-|fjXcXR;0cj*8y<Qf2ud@c(T<$!c!{x;*@N5Rr<tC2$ z;yFO4+eV#tm!9UVHjk`&AQrJU))1hdPk7ffWV%dib$v_M4j;S#To9mRSc3tC-Y$*7 z7kVA_^V6$EP}k2Nhd)1Gua_8v6RSb+{*mw;mEZxV6pOl~;})<rv1ByDXYGGsrEk28 z+N6l~m>Gc37<YO<{KTW%6gX)Ua+<c;80&uv5jf&=LNoD5K}4mqJy<%itJB>FgJ&In ziu)rB);6mAAevl|560m-T##4)NP>*a?Pj*9^JbO#cCa?E-aCdte7Cv{7a2rG$k(<# zew5;$Z%X=3roQ^+X1uHV=(+o`W0BTJ;to5uqld|r3!<qJ&Jnr$u?%ua=x5CZ6+79r z9N564+e3@(XKL&tJoh7_w`_9SN$nP3*t;rb2br{>f|Q;Vr$&4zmhXNS>G{5Y<xlw9 z(Amfu*z^#AIxNfFwVzrXU^uKLT6q$PZK4rw!;w3{{)L+zFZ;w}xc#T86QoY<cs@GY zHhQ^=OY(MwvF-$HP!)-=8Bk!`v%TJi24YtIJ+25(de<=1{*Y7S@Qd+1qrkPU+LNPy zr%wX$3PHmPN?7kP!M;+^o6OS;=Z!#`6WpnjOw3uq-WkpWX*0DHDC?}h0}`eYj!7@X z_<M(*KuEJrWggSdAEX9feTT3Hgt5Q8Ff=_Y`*6X0x=tvAMO|7MyOi#ua!zLA0jK>= zp$?%s1<RR)zni!;;Jq05kZuOM%ACZy_YJdzl(0?)oB5t9zn)xt`2C^u4771oK>kOk zlT_-vt-U0Z;VIY$86cinELsu3|LjuvbjsG`lFsiEKla+_UvFOe37+<~$HX77%&BTh z@gi5Z)zh2Xju|4E16m>k_v<5y${QWt>#g0Jub*xRO!0iUp#hV@cWV&dpWFHmko1>Z zbTrV?mw(*?uQJ_gtX!|LG=ZcMKT}G_>2Hp!vQ9mYe+U1Zd-G|qr*ky-_1_=ZEw)(q zSUEUi()YxVQx}D=jy`6b=ALZYahDWNK$a#RS|@I{y&qyaA%5BaU_g+n$UjivoH)_H zps%G1&mfr+SNmF%>oUP$QZ9=@9;7r1%A}UBJN4^r<O@Nk*(T(Sd<@;&Xhyxb4_MKx z+LacI)7#1^yq4qndNVt!>Ocx1xk<i$wQQLX3g5x$K8<{GCFeSsuKf?ingwbF8rZfP z6rB2Rnp&z@<TH%KuPkmq94%&>xKvuUP9qhYTok2j41Sy#wRv5gY>)6ce5_$tOpq~H z$Wbl}C0*NNhXk4hLkwND%XKz?mIZ1Pg|0NmZ};bz)5I9)pI}XuXn(g_U8+|aRS+yQ zJnwdUv`pr7U*Wp>^45fs&1r;|_XVF#WOdlMnqC^hbnAP8d;)yQdkBbE_-S`-_3k=q zID}9A)~5Hec1l>vpC<2=WR1o6y-;~a?oIZVXsSH-yp-phLaUQ>j0X0ZG!C&Ag!>*j z{gr{?@8QAgNavJ|X6XBc!{TL6BwA_@E`Hb*MV|m+efoTM1c+rYs`i%LJi(>^?p<&R z&Pz2aw!R3E%y)Fb85=NY`Q3jl;Y~S`2)QWdSxpuiTZ@Q5GVpI{C63xz*H%1)*?R`E zd{0<03p)i&vj40lQ208gm$QJ&E1Y$d7s2K>@(orTCk;OPeW@;e7#^R)EyySHUvU)v zh?ZURZH>TPmT;RL`<sBHQYcHTEil<ivvAphEkgQP>wQ;^W+6yGdv82^-TsuTRzf*` z8nPiFSg57_7B%-?bZLF&@bA%QU9-2;?m2ISOW*tm^2}fnArN$654n{1pu`NBYPr-6 ziJP<0v%+_6(2elNofm)%Y9owTn^gywBmHUlR$Q3OzBYPuZ;pk0t5Kbp9<_-RUYS^k zQk-zBaKpeuDe)$Zg4f3eL#g*NhTi;!!}0Of?6QYU9sx-e%;B6Ko=m~SLQ#S71|D95 zsAq8^3?wQ^wqv_iD7bZ|&!1cCY`>1l+Hxti>3Jr{(r=5tKUDQBXUP1$>`Gs>Jth|V z2s%>a@`L}h5D!KA&&=jK4vS4yMEFr0OzT$ub!>7BU(Ei-&jutgnju3?egDi<$sF^F z#H%^&WL*3NEdo!IPJkfpUGllxS;KOs8qi@K-x8ml<qajRFb`|bwQAww>H12y(0=s$ z9KOR<>=acaT{k`@87OoqCt1gOR@Tto!n{}?+V*?qh4q8yywS^u3YK7D%4;!g5!dVS zp1bzK9Zp30%`eR#L|$jmk2HUxV3f5U>a-#M6fd}cQTKHX*pJ-5ntGCOck)Dl$M;_e zO(!RnZ=i=r*W%y5mtUT)Z~2LboA?7*Fqd>h0k^H=5q}X~Ne|yS4YOr%@P!|_v8Aka zW+~IIhWp8gyw4no^VdKB36mkOQ4VsH33{4H*1c<}95^@g1HAaY=Wo{-uu#?rUz8VM z+NXi;OEopPf%MkHiNZ2Be&~~d3h>1CxYTE3AL{CaW*D=@-Vw~f#umz$YeH~_&DZsv zgx~gfMsj{sQ6_75PZsp3wu2{(04R2$49w?|K{#3zix)T|>4OniXi}<)_jRHdJPe_R z`1GWTf>QmKfTu_lP-3pz9r`}OKX*(2j|S&&4nDtF*L>Y>vLV=?GdB;>f?zGyJe6+C zc$j87v_MD+-f-ycs2Id~_#UG}zx~NEhvC~1OHmt1?d!&1O)k}%5%ePxgL1;R5;oUT zYA7~M{Y)1~5a*RR#`_^|=!KO*?>D7nJ!0|nd=w5!q07YkLly{YSD#H9>^W~~yGsy$ zaxkqTE*Y=kb89V4&8!{=ucb%k!w>#=O@-Chaw;tlcAU_^{URjijgYaC_1%?ibN($l zs{)aezW{g}Z^e^1P`z^;W{PSEF{i1=uYdDYwKd^4Pb@yUiHA3363rksjveNjr#qKS z|99aBN7dKM(}SOX;gr1=93*f?KF@I)c6+-$qQl<D12ifsp_;P7H&M`T3hghobHI9k zo-0*Jpa0AYd{{~nUfv&*U74wPfS9(+sCVtn<g9}mQja7z*H}K{zM$nWx%7rm#|e~? zp^x;L4fH&y=LOKJ=w_Ci`GG<m4bggKDh)3kiPX!QjAD9SVFQMQlfL>4Rt|)m0mXD_ zJ}{Cr-!3X5e!Qknu9{@eVcSM;r-r}LM~}+^Z3$o_WNBgxWWyctG&~!Qs(;zesrDu2 zqr#gXEj5hxHq!cKheRJ+)f|UDsefEK+xfvXWQm_KzdZ9J^D^-u<U81Uk^GUYNeeHA zyV$}E>ErP=?QcPqNxx4r$>@oR4=+1aa!GOr^H%;7Cza4gb~ZfXy;fdc$A1@krsTB< zi?XS1^x;J?5lkS1mg`jRW;uz1T~~{PV=UZq8V(-N9a4U@;tN4@JZBimZ@n$Ejj!;v z<nXy1azS6H9E}K-Sm}+LGrQf0Kul-cy_g|R8+gO_Rw4slUpe3NtLhuJ^$+V!`0QL3 z8;ZrTFIpC^$~tBd`q{{_?~R-GjwGB%{*;r~pN=Qeh$wYPZrJ%gp0MLyBxw}SJ+M9P zp~r!1{?}HkNPmusSGstE@1RvfV5qF{bA@Au+2&PWJg0AUh2O)W+@`m5)wnYE<#VeJ z1vrq(8Q>TA;9%3E0aR!ps=kUdVv8v3BV0h%<~=w%e|k1n5L;~1pVBFDy4|=;h-h8) ztKmGnm@Uyeu$2uuj=}l6dbiWq@{c3VwJdaOFZB1L(HV7|*R{b0{`E|!EbMGfBz-(e zR78P!)H%}H@Lf#<QLo;I^FF4Pb>{v0epUaAlcps`LWrn6m0wH5Cetjhyw{kcv2CIE zogmxm=TC0BU1IC*cVu6A8w6MAWOQ1sugW$UA!*`NpBo)~2pF1zrn&EPc)Nr+jm*fz zIhBSP9kFU+vcE^u)^ZaaImQ;%5B&3J!e?A_76r^VUS9OQU1j!srpU7S@47R~>lgm8 z`*pBCaYq==S;WU0EFr*`y4U}WEEF&sdJHZxdl}*dnO8=zXRs`O<KF|?9!neD$hhzQ zhZ<|1__Cj#;|{+4nO7vK&4js(BaskndWBB2e5^Y(-+jwPSlq7i6ad&_$O7~s(t!u7 z^uO5K&wjXwe~DDJX-f#b<q`G209M_%y3=A~X`pY0Iv-|1{^}i{qUOpnm||oJ(Fj)6 zgQ=|8lUFbA9ls#~9026y4C>!qC!npfod>yZ4{hE2?>88C@FB+Skfzf<VjBJ$dkb~{ zLF(US=N7wk1UZJN4byHT4WDXjOKG*Qks$TzIH`V}ih5m4+?6nhIkm?Jo=E{_QIx-> zo+ZdMVA|rGyV@0yE)2q?TCoM}nT54r@;Z^1D<F!M*XavgkWmnuTnCNsn>1a?SzE#i z{x{OVH_uBWnD0@*$v5{sGOTTA_EDKf_TDZIIoWUP?N2QT#YoV2lad^)vhZ)6tW#2= zbtslP8IjqpHw1DT=4rTX_&DV-kDmAm<rHumm`ni8@ViUKB0?xq7QG-RmyZ^=XrFcN zoYI%$0Kdh8b|))H$7%Gv8ttt=>lNPWQcv&c^J?#xmWeNJ#btj}>;?GXj&DK&{@5!g z$S9|u-p5w{Hd(r_Nw?dK@*NjL5_fRwVlDqnm9$mxTlEwqWDtOL*6|Di1nvP?H~{XW z0IE@dyMw$N3Ce>5@cFltN8|t^0Y!uwz=}a(VE|Y+ueW9ZSP&$>O(YiNzb)Xj7Jx-N z@Ff9Fd?rr_83<e%NK64d`bDB35a2@(GOSm@FCCdUI1ssoLNOxIDjm;?2O~HX0~ZFP zeHD@+vQ16>?ZxjF8J^FWr<qv@+7f^(@q1NpWT>=cBic~8D#MmqN(H0cLcu631;xVq z|4tl1gaIHehLI$ISPSs^h*Du4pfX*CiUb7)4dgQ-zu+hftAL|_OF<`5-)EJ!h({`C zK@<YYbsS3d4rqmPm}EJ=^*!ndPC_S6lDs=uhXb9R&?6%OY?xIdz<^pL<kX8tEslC? zeg}K?s$ezAt46A{kSPC`6#-^6WUCiFI0DvCDC8Ivnnhl)4-;cRGjd~F461D$BlELL z-&DZkL8*^>oA~c7>OSkK*yn@8>{SFJyM=m338a-)2&7jWMo>0AYvpSAB1-9dqX%*w zdn+jXnBh}KWNRC$%~!bqr;~_9=|rm^*^4^AS9=hj2v<<AFqDnX7D}9Y*Ot=2_5zuS zld#T_39JVh;V4-}f+$p!2_OLAAmCzj6io}jf2&AEGKkNFEG0n^W@r$$PZG_kc#moT zMS$)kfUDlF>wNSs4!~7T)13fFkfOmci^7MD1tv@d8EPihsfTBGJ-_OJUQL~?pupN= zRH`Gyj`F0c!_NTk{exv&sHPH%<%+>7=^C%G&YR3Ox`Xvv697_&a5YYc$rUPPfA_J+ z5COTT^&q`o6df*r&_+{z@4x9L03R^+%|@My1jtGXBI=cq%0Mw04ZI;mm2nKS^noaF zMxG%x2s9KHgHgmR!_pZjWhSi%5iM_(S#e2KDhDl@UKxc%EhS5IPq0)6X2`lt?){?T zM!DEOi74C<r2?GUh{2hqgbyQaC=uLw!!a#&5U`^Stf|`3lrWK-KKd+O1OH|${7h@h zZT@}8d)s5AaR`cW6?7UrWi6;}TL7}d1=th5FStiKtj;GC&jp{W=TWMtDX4sI?l|F< z371xD;+gsQA0OLMVEBkz1qvQAV<NbaD={6xqeE7Y2IFeOR6CR^P!<)+k7iLQ*ZL2J zma`G0vjn8lOLeI5xtVBERAl?SCg)=G;7iT|^e>!BI2D<c#B<*$RM*x=bAh=yYQ2Ya z)EB0OAlxMaZN1ETbnbr$uqbI<eK@83_*>##!j%*%5tZ+#YjV|r&HxpvN)<&dQM66u zr!Vn73`qv|rzuRv6)&2irBy$Gy+S_9IZOs#EtQilS(3~P*Dr6)=!S!I)e6AZD<A?- z4U)0hSnY+V1?8=v1-yrkQ8zlh1t_P2h0liIK3sr?qhTswMqSe&*?G>koMK#++;|q` zwH=Hth`~EvLKo|w2B{y)Ewm;YZQTJ9Z*=Ai!9o>A)!OJVBk*Hrh7lg868jhmA2VC@ zU@)X@91U8deEX4#!#G)?yN^{R#im}pdhIjaho@$ukud;7eRK+G7oI9QuU&tm0F|Zv zGrJF^I@g&>t|!SU|4qc$#RB|ePP(d3X1)To8fApO(HTet-DxY{hb+x;4F6L_PpuN` zI)cwuiC@2=O4Z_3;78)p8mP9+MJ4K9uBx=Dnq)ctggPxv3(TeN0jBb22ta{r^`Ko` z<lx(Bq1B&1w9(|1%cwz<E%T3P)W(Z>&_x}9QcWr~W-hn{pX+$~iBQV75DJJc;7Q7_ zfe$ZI@8q0DQI~`pyKjGT?U(`J;0CS5DAY#&ERxKB<MB{S7UXCy>~AiTIVoKrvup%z zm|a-F*$fOemx?y0N_a1p3HFi9XuwP#B1<-S>EHG*riYkBFPJUi!vBmdD^?mMH5qm| zg88kK2r+<{4Je5M^@7<24ziWu0@S1Sm<HK4MiqW~sFx&SB;AGvtr2@yP{`_7WNyJd z<=|0Bi}u7V7}*BuK|c|*mBxY`p;q<iMOj*H>v&koXO6uV(kf_2S%+Gk*3P_l0u%mA z;C$Grqy8D6V{D`&XZ$DFsR0D9+~SVjTDe-VRRde}gS`wlt}Ip^=B>6EEKLe`vq|CB zJJy9;I{|-`O-jK>$A)Jm>u$!)?mD|cN#l={c$=Pog0HBp%<=XdD<klw6=v%I`&W~i zs~YiAwh3#Kl}5Xfo<DC^OdIYk&`m3eDz<5Awndh<c+3o`v|W-@Yo%Vl!WxLuR{GIa z){szZVWu6yOzY?y6G0)V;9l!3w<T{Y{EU7Sczc{`997n^o2LWLNrJm(7EATM-C~{0 z`A1S`JXxNE@|d?V<=Sa>vSTntH+4jO9pA|uvq|+lRM1(_3SEux0At2MF8>k~4Z(m1 z5^l>38RJ7Xv<=#S`&p$;0rOG8J1IV)MNL)0TmjP-nsp1J!^m}0z}_&HTF08B>~tl% zryu2pcYt#4aBH@lkF^}?_@y6t{5Ya=0PnErY&fLRK?|iXe`^Bp86PA5;OsE}YB)Pa z-^>${+HAfxEf+eD($!A1HB+a3lgfG6v|&8N3~4%cJPx&A_t<R-MQwPTe(<-WO0ZQW z3k;C!h;0C^6o48=KOyUpiNP8ji6^Y>ChDmDsJ+t&oHNNk)+3?d6P*{wpOMu<=-iI% z1@=#ve21Uo_P?Ayd0E-rSQ*Pd=stg#NznZnJ7>C3VZQg-Zk1`aQpmF02rcA(jum#E zh;mK@24c35Pldrt#?+H@XUVxo!}Bir{YUF-4v>MpTwljWri~=H)95zpQ{sL_#e71Q z>m&2o%TU>uoJZo0^IWgi9_iO?f|HK0*8zXy07Pd1#!A{#D{4PMS83S`B9l+eNf%Qd z7dwThPjkp|vR}V-w6+RBw^yG^ai_MlU8Bzo65Fhzb=~tn{}u?_PFQ!5kQal~pQ>@A z8#?ABtzE;NZ6%H1>e5#>A*)-mPN)=saXXlQ92qe-zJ>qGsqR0?Ql}iV;CTkGn7s=B z&)d0hTetN5$Is;T-x^_j=kGEJ0z8hSFBq-=nCx6qO^lrfX?%0iz~B2rZ28IM-r`fF zitbmm<vbD+Gwt?cF@ojCt*X|!^052q_LBfK=SPp|7({jc^`~vu?{n_a&K`E$=u4V> zdSTZIM+=7^W{w{}Jr*Xow)h^4Rw%m$PdYGrq{O&)_-cS~<qNbvdwn-@c@Ct+oe&tk zP9C%(8<-;fhm2SEdcozAWO5mVIMRGlC_ZqRfjE>613mi+x)nS_vv^}C9V$Mk@qNE| z>>JZb9x2KiUv2YJby7;+Lzc*oc@q6u8oyN^l1;<9vVJXV&wbU}Fy=?J*<s}KXGbZ2 zS6Mq5y?j4ztnN~(HqzYbA&5XHaJy%X`80p`R!|35eUF>2FR`7t4Mp5^6z$bDzDcz< z0;c#jOLb!DT5b^ss`R7F^1aIYki~^dkcGb?4psyN-XC{8^En@e39iRq8kbq4X`kE$ zUo(d}$=It$J>r9a!d!s3>jxpce~n*JMA=jLQJR?V=(VqtgiHgFg}WIkg@6?eP@+FY zmjbZ(AAY<4yv=&g>s+yyjH|}!8!LViUZ+d^HyYMRn^*Z~iAQwukJy@zOUe#*))szz zyBBz<Cz*IK4x2OD?%=1-`5gAn=z3AGSMSSh&guIjDTKL50PCCbKq~n-4%-XH;RKkZ zv)%p$(`X8x^>n$O8xlKF3~^ymjA5S4ek1yu!|pfBbiPuu{%;TrsZjX7=zYag%`cPX z`i%`ZrWm$`DsWR={SYn3Qk~t8n!Y^}i`fR(-DyA1Y>u@WY@ylXh&anNOghO8r^5}; zuZT~wkIYU-o~$}uarQ#A_ct}GLl)2BCr7vZ3w;_g@mxkOfjhHYqG?=?*@1RB)&?_` zj;;GMQ;moje`*6)%e73u$3oHdva_vW$B5|GdoOcb?C?!X!qw`)C$r{6RlX16H$7uL z@!!QgT6OSX!>^K}*DSIAT<nHXt3P(kU7p%Y(S~<c`Rw&wzYN5s@T7J8d;DYuFi$6v zj8jD_j0||D?@1T>qOf573n6_Gok4HOA0&b{)ssG))pZNwen;qx31ch7O|c^AWnqXG zJxIv|5@hdgMB9mGXTW`My%^&ZjZ>r}7?_>&;<Py@8TAg{dNC#GeX+(Q#J8u!Cz-k^ zJ{CB@L%o<&ZIhCaU%ja{a#G<;fHxZ4N#w6Gy$<w}allm4`Ks7FRmg8Xq1zZNTAoQp zY+8sNOMa|UY7#aThcjy-KI1wdA>R8hYjIAv7+Xm}syAC{NofmPSw+iVw({y>G4_i3 zC2#i1=7SdY@9ls8vR8FI73Zk#qwwLV8DeYYs2vl#<EWcb66dU+)A!+QShQ>9Y+Uue z<80ap7w2l;PW9nx*)MJ7YCUeb<7zt}7UyoiTJquUxIJj)?tJ)r$BhBvOYn5zQu^|A zgW217dI-hud3vGB61;t+2EM%gFYMcR2dI7Sc?antB>0Ay(tP=bS<Bk^MmSsV7x_kc zM<n>i1ebmJ$3+j@_$MUq?)fKW@FfMN-ctGrOe?at3(TmBKM2ffDoYB^X&d+n&g<E? z3;r<jc@SJMjgS;tv`q68TCy!`7g}~~eGpo48IcrT{k-fayykV-F8tH)?m>7x5MN4U zBZSgl<QJN~Lu4~b{GZ5Htg@8ocA|m5=*~C$4$<8VpMRozIT2D~`vqzKVh1H<9b$(S zt^dT1sz;>6kL#EH#ZQ_KJH$`h@BWFOb>Y93IPaqjkhmCP@07S46MvNWJ*E6w@@mc? PK=RL`{lo`pfcXCbgb}P8 literal 0 HcmV?d00001 diff --git a/src/assets/assets/js/data.json b/src/assets/assets/js/data.json new file mode 100644 index 0000000..ffd0733 --- /dev/null +++ b/src/assets/assets/js/data.json @@ -0,0 +1,20 @@ +[ + { + "server": "shanghai", + "stat": "busy", + "amount": 70, + "recentTime":70 + }, + { + "server": "changsha", + "stat": "busy", + "amount": 50, + "recentTime": 1300 + }, + { + "server": "beijing", + "stat": "busy", + "amount": 56, + "recentTime": 70 + } +] \ No newline at end of file diff --git a/src/assets/assets/js/jquery.js b/src/assets/assets/js/jquery.js new file mode 100644 index 0000000..200b54e --- /dev/null +++ b/src/assets/assets/js/jquery.js @@ -0,0 +1,2 @@ +/*! jQuery v3.6.0 | (c) OpenJS Foundation and other contributors | jquery.org/license */ +!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],r=Object.getPrototypeOf,s=t.slice,g=t.flat?function(e){return t.flat.call(e)}:function(e){return t.concat.apply([],e)},u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType&&"function"!=typeof e.item},x=function(e){return null!=e&&e===e.window},E=C.document,c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.6.0",S=function(e,t){return new S.fn.init(e,t)};function p(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0<t&&t-1 in e)}S.fn=S.prototype={jquery:f,constructor:S,length:0,toArray:function(){return s.call(this)},get:function(e){return null==e?s.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=S.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return S.each(this,e)},map:function(n){return this.pushStack(S.map(this,function(e,t){return n.call(e,t,e)}))},slice:function(){return this.pushStack(s.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},even:function(){return this.pushStack(S.grep(this,function(e,t){return(t+1)%2}))},odd:function(){return this.pushStack(S.grep(this,function(e,t){return t%2}))},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(0<=n&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:u,sort:t.sort,splice:t.splice},S.extend=S.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,u=arguments.length,l=!1;for("boolean"==typeof a&&(l=a,a=arguments[s]||{},s++),"object"==typeof a||m(a)||(a={}),s===u&&(a=this,s--);s<u;s++)if(null!=(e=arguments[s]))for(t in e)r=e[t],"__proto__"!==t&&a!==r&&(l&&r&&(S.isPlainObject(r)||(i=Array.isArray(r)))?(n=a[t],o=i&&!Array.isArray(n)?[]:i||S.isPlainObject(n)?n:{},i=!1,a[t]=S.extend(l,o,r)):void 0!==r&&(a[t]=r));return a},S.extend({expando:"jQuery"+(f+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isPlainObject:function(e){var t,n;return!(!e||"[object Object]"!==o.call(e))&&(!(t=r(e))||"function"==typeof(n=v.call(t,"constructor")&&t.constructor)&&a.call(n)===l)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},globalEval:function(e,t,n){b(e,{nonce:t&&t.nonce},n)},each:function(e,t){var n,r=0;if(p(e)){for(n=e.length;r<n;r++)if(!1===t.call(e[r],r,e[r]))break}else for(r in e)if(!1===t.call(e[r],r,e[r]))break;return e},makeArray:function(e,t){var n=t||[];return null!=e&&(p(Object(e))?S.merge(n,"string"==typeof e?[e]:e):u.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:i.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r=[],i=0,o=e.length,a=!n;i<o;i++)!t(e[i],i)!==a&&r.push(e[i]);return r},map:function(e,t,n){var r,i,o=0,a=[];if(p(e))for(r=e.length;o<r;o++)null!=(i=t(e[o],o,n))&&a.push(i);else for(o in e)null!=(i=t(e[o],o,n))&&a.push(i);return g(a)},guid:1,support:y}),"function"==typeof Symbol&&(S.fn[Symbol.iterator]=t[Symbol.iterator]),S.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){n["[object "+t+"]"]=t.toLowerCase()});var d=function(n){var e,d,b,o,i,h,f,g,w,u,l,T,C,a,E,v,s,c,y,S="sizzle"+1*new Date,p=n.document,k=0,r=0,m=ue(),x=ue(),A=ue(),N=ue(),j=function(e,t){return e===t&&(l=!0),0},D={}.hasOwnProperty,t=[],q=t.pop,L=t.push,H=t.push,O=t.slice,P=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},R="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",M="[\\x20\\t\\r\\n\\f]",I="(?:\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+",W="\\["+M+"*("+I+")(?:"+M+"*([*^$|!~]?=)"+M+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+I+"))|)"+M+"*\\]",F=":("+I+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+W+")*)|.*)\\)|)",B=new RegExp(M+"+","g"),$=new RegExp("^"+M+"+|((?:^|[^\\\\])(?:\\\\.)*)"+M+"+$","g"),_=new RegExp("^"+M+"*,"+M+"*"),z=new RegExp("^"+M+"*([>+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp(F),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+F),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(p.childNodes),p.childNodes),t[p.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!N[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&(U.test(t)||z.test(t))){(f=ee.test(t)&&ye(e.parentNode)||e)===e&&d.scope||((s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=S)),o=(l=h(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+xe(l[o]);c=l.join(",")}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){N(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return g(t.replace($,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[S]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e&&e.namespaceURI,n=e&&(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:p;return r!=C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),p!=C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.scope=ce(function(e){return a.appendChild(e).appendChild(C.createElement("div")),"undefined"!=typeof e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length}),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=S,!C.getElementsByName||!C.getElementsByName(S).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){var t;a.appendChild(e).innerHTML="<a id='"+S+"'></a><select id='"+S+"-\r\\' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+S+"-]").length||v.push("~="),(t=C.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||v.push("\\["+M+"*name"+M+"*="+M+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+S+"+*").length||v.push(".#.+[+~]"),e.querySelectorAll("\\\f"),v.push("[\\r\\n\\f]")}),ce(function(e){e.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",F)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},j=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e==C||e.ownerDocument==p&&y(p,e)?-1:t==C||t.ownerDocument==p&&y(p,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==C?-1:t==C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]==p?-1:s[r]==p?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(T(e),d.matchesSelector&&E&&!N[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){N(t,!0)}return 0<se(t,C,null,[e]).length},se.contains=function(e,t){return(e.ownerDocument||e)!=C&&T(e),y(e,t)},se.attr=function(e,t){(e.ownerDocument||e)!=C&&T(e);var n=b.attrHandle[t.toLowerCase()],r=n&&D.call(b.attrHandle,t.toLowerCase())?n(e,t,!E):void 0;return void 0!==r?r:d.attributes||!E?e.getAttribute(t):(r=e.getAttributeNode(t))&&r.specified?r.value:null},se.escape=function(e){return(e+"").replace(re,ie)},se.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},se.uniqueSort=function(e){var t,n=[],r=0,i=0;if(l=!d.detectDuplicates,u=!d.sortStable&&e.slice(0),e.sort(j),l){while(t=e[i++])t===e[i]&&(r=n.push(i));while(r--)e.splice(n[r],1)}return u=null,e},o=se.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=o(e)}else if(3===i||4===i)return e.nodeValue}else while(t=e[r++])n+=o(t);return n},(b=se.selectors={cacheLength:50,createPseudo:le,match:G,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=m[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&m(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1<t.indexOf(i):"$="===r?i&&t.slice(-i.length)===i:"~="===r?-1<(" "+t.replace(B," ")+" ").indexOf(i):"|="===r&&(t===i||t.slice(0,i.length+1)===i+"-"))}},CHILD:function(h,e,t,g,v){var y="nth"!==h.slice(0,3),m="last"!==h.slice(-4),x="of-type"===e;return 1===g&&0===v?function(e){return!!e.parentNode}:function(e,t,n){var r,i,o,a,s,u,l=y!==m?"nextSibling":"previousSibling",c=e.parentNode,f=x&&e.nodeName.toLowerCase(),p=!n&&!x,d=!1;if(c){if(y){while(l){a=e;while(a=a[l])if(x?a.nodeName.toLowerCase()===f:1===a.nodeType)return!1;u=l="only"===h&&!u&&"nextSibling"}return!0}if(u=[m?c.firstChild:c.lastChild],m&&p){d=(s=(r=(i=(o=(a=c)[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===k&&r[1])&&r[2],a=s&&c.childNodes[s];while(a=++s&&a&&a[l]||(d=s=0)||u.pop())if(1===a.nodeType&&++d&&a===e){i[h]=[k,s,d];break}}else if(p&&(d=s=(r=(i=(o=(a=e)[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===k&&r[1]),!1===d)while(a=++s&&a&&a[l]||(d=s=0)||u.pop())if((x?a.nodeName.toLowerCase()===f:1===a.nodeType)&&++d&&(p&&((i=(o=a[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]=[k,d]),a===e))break;return(d-=v)===g||d%g==0&&0<=d/g}}},PSEUDO:function(e,o){var t,a=b.pseudos[e]||b.setFilters[e.toLowerCase()]||se.error("unsupported pseudo: "+e);return a[S]?a(o):1<a.length?(t=[e,e,"",o],b.setFilters.hasOwnProperty(e.toLowerCase())?le(function(e,t){var n,r=a(e,o),i=r.length;while(i--)e[n=P(e,r[i])]=!(t[n]=r[i])}):function(e){return a(e,0,t)}):a}},pseudos:{not:le(function(e){var r=[],i=[],s=f(e.replace($,"$1"));return s[S]?le(function(e,t,n,r){var i,o=s(e,null,r,[]),a=e.length;while(a--)(i=o[a])&&(e[a]=!(t[a]=i))}):function(e,t,n){return r[0]=e,s(r,null,n,i),r[0]=null,!i.pop()}}),has:le(function(t){return function(e){return 0<se(t,e).length}}),contains:le(function(t){return t=t.replace(te,ne),function(e){return-1<(e.textContent||o(e)).indexOf(t)}}),lang:le(function(n){return V.test(n||"")||se.error("unsupported lang: "+n),n=n.replace(te,ne).toLowerCase(),function(e){var t;do{if(t=E?e.lang:e.getAttribute("xml:lang")||e.getAttribute("lang"))return(t=t.toLowerCase())===n||0===t.indexOf(n+"-")}while((e=e.parentNode)&&1===e.nodeType);return!1}}),target:function(e){var t=n.location&&n.location.hash;return t&&t.slice(1)===e.id},root:function(e){return e===a},focus:function(e){return e===C.activeElement&&(!C.hasFocus||C.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:ge(!1),disabled:ge(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!b.pseudos.empty(e)},header:function(e){return J.test(e.nodeName)},input:function(e){return Q.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:ve(function(){return[0]}),last:ve(function(e,t){return[t-1]}),eq:ve(function(e,t,n){return[n<0?n+t:n]}),even:ve(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:ve(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:ve(function(e,t,n){for(var r=n<0?n+t:t<n?t:n;0<=--r;)e.push(r);return e}),gt:ve(function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e})}}).pseudos.nth=b.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})b.pseudos[e]=de(e);for(e in{submit:!0,reset:!0})b.pseudos[e]=he(e);function me(){}function xe(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}function be(s,e,t){var u=e.dir,l=e.next,c=l||u,f=t&&"parentNode"===c,p=r++;return e.first?function(e,t,n){while(e=e[u])if(1===e.nodeType||f)return s(e,t,n);return!1}:function(e,t,n){var r,i,o,a=[k,p];if(n){while(e=e[u])if((1===e.nodeType||f)&&s(e,t,n))return!0}else while(e=e[u])if(1===e.nodeType||f)if(i=(o=e[S]||(e[S]={}))[e.uniqueID]||(o[e.uniqueID]={}),l&&l===e.nodeName.toLowerCase())e=e[u]||e;else{if((r=i[c])&&r[0]===k&&r[1]===p)return a[2]=r[2];if((i[c]=a)[2]=s(e,t,n))return!0}return!1}}function we(i){return 1<i.length?function(e,t,n){var r=i.length;while(r--)if(!i[r](e,t,n))return!1;return!0}:i[0]}function Te(e,t,n,r,i){for(var o,a=[],s=0,u=e.length,l=null!=t;s<u;s++)(o=e[s])&&(n&&!n(o,r,i)||(a.push(o),l&&t.push(s)));return a}function Ce(d,h,g,v,y,e){return v&&!v[S]&&(v=Ce(v)),y&&!y[S]&&(y=Ce(y,e)),le(function(e,t,n,r){var i,o,a,s=[],u=[],l=t.length,c=e||function(e,t,n){for(var r=0,i=t.length;r<i;r++)se(e,t[r],n);return n}(h||"*",n.nodeType?[n]:n,[]),f=!d||!e&&h?c:Te(c,s,d,n,r),p=g?y||(e?d:l||v)?[]:t:f;if(g&&g(f,p,n,r),v){i=Te(p,u),v(i,[],n,r),o=i.length;while(o--)(a=i[o])&&(p[u[o]]=!(f[u[o]]=a))}if(e){if(y||d){if(y){i=[],o=p.length;while(o--)(a=p[o])&&i.push(f[o]=a);y(null,p=[],i,r)}o=p.length;while(o--)(a=p[o])&&-1<(i=y?P(e,a):s[o])&&(e[i]=!(t[i]=a))}}else p=Te(p===t?p.splice(l,p.length):p),y?y(null,t,p,r):H.apply(t,p)})}function Ee(e){for(var i,t,n,r=e.length,o=b.relative[e[0].type],a=o||b.relative[" "],s=o?1:0,u=be(function(e){return e===i},a,!0),l=be(function(e){return-1<P(i,e)},a,!0),c=[function(e,t,n){var r=!o&&(n||t!==w)||((i=t).nodeType?u(e,t,n):l(e,t,n));return i=null,r}];s<r;s++)if(t=b.relative[e[s].type])c=[be(we(c),t)];else{if((t=b.filter[e[s].type].apply(null,e[s].matches))[S]){for(n=++s;n<r;n++)if(b.relative[e[n].type])break;return Ce(1<s&&we(c),1<s&&xe(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace($,"$1"),t,s<n&&Ee(e.slice(s,n)),n<r&&Ee(e=e.slice(n)),n<r&&xe(e))}c.push(t)}return we(c)}return me.prototype=b.filters=b.pseudos,b.setFilters=new me,h=se.tokenize=function(e,t){var n,r,i,o,a,s,u,l=x[e+" "];if(l)return t?0:l.slice(0);a=e,s=[],u=b.preFilter;while(a){for(o in n&&!(r=_.exec(a))||(r&&(a=a.slice(r[0].length)||a),s.push(i=[])),n=!1,(r=z.exec(a))&&(n=r.shift(),i.push({value:n,type:r[0].replace($," ")}),a=a.slice(n.length)),b.filter)!(r=G[o].exec(a))||u[o]&&!(r=u[o](r))||(n=r.shift(),i.push({value:n,type:o,matches:r}),a=a.slice(n.length));if(!n)break}return t?a.length:a?se.error(e):x(e,s).slice(0)},f=se.compile=function(e,t){var n,v,y,m,x,r,i=[],o=[],a=A[e+" "];if(!a){t||(t=h(e)),n=t.length;while(n--)(a=Ee(t[n]))[S]?i.push(a):o.push(a);(a=A(e,(v=o,m=0<(y=i).length,x=0<v.length,r=function(e,t,n,r,i){var o,a,s,u=0,l="0",c=e&&[],f=[],p=w,d=e||x&&b.find.TAG("*",i),h=k+=null==p?1:Math.random()||.1,g=d.length;for(i&&(w=t==C||t||i);l!==g&&null!=(o=d[l]);l++){if(x&&o){a=0,t||o.ownerDocument==C||(T(o),n=!E);while(s=v[a++])if(s(o,t||C,n)){r.push(o);break}i&&(k=h)}m&&((o=!s&&o)&&u--,e&&c.push(o))}if(u+=l,m&&l!==u){a=0;while(s=y[a++])s(c,f,t,n);if(e){if(0<u)while(l--)c[l]||f[l]||(f[l]=q.call(r));f=Te(f)}H.apply(r,f),i&&!e&&0<f.length&&1<u+y.length&&se.uniqueSort(r)}return i&&(k=h,w=p),c},m?le(r):r))).selector=e}return a},g=se.select=function(e,t,n,r){var i,o,a,s,u,l="function"==typeof e&&e,c=!r&&h(e=l.selector||e);if(n=n||[],1===c.length){if(2<(o=c[0]=c[0].slice(0)).length&&"ID"===(a=o[0]).type&&9===t.nodeType&&E&&b.relative[o[1].type]){if(!(t=(b.find.ID(a.matches[0].replace(te,ne),t)||[])[0]))return n;l&&(t=t.parentNode),e=e.slice(o.shift().value.length)}i=G.needsContext.test(e)?0:o.length;while(i--){if(a=o[i],b.relative[s=a.type])break;if((u=b.find[s])&&(r=u(a.matches[0].replace(te,ne),ee.test(o[0].type)&&ye(t.parentNode)||t))){if(o.splice(i,1),!(e=r.length&&xe(o)))return H.apply(n,r),n;break}}}return(l||f(e,c))(r,t,!E,n,!t||ee.test(e)&&ye(t.parentNode)||t),n},d.sortStable=S.split("").sort(j).join("")===S,d.detectDuplicates=!!l,T(),d.sortDetached=ce(function(e){return 1&e.compareDocumentPosition(C.createElement("fieldset"))}),ce(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||fe("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),d.attributes&&ce(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||fe("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),ce(function(e){return null==e.getAttribute("disabled")})||fe(R,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),se}(C);S.find=d,S.expr=d.selectors,S.expr[":"]=S.expr.pseudos,S.uniqueSort=S.unique=d.uniqueSort,S.text=d.getText,S.isXMLDoc=d.isXML,S.contains=d.contains,S.escapeSelector=d.escape;var h=function(e,t,n){var r=[],i=void 0!==n;while((e=e[t])&&9!==e.nodeType)if(1===e.nodeType){if(i&&S(e).is(n))break;r.push(e)}return r},T=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},k=S.expr.match.needsContext;function A(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var N=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,n,r){return m(n)?S.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?S.grep(e,function(e){return e===n!==r}):"string"!=typeof n?S.grep(e,function(e){return-1<i.call(n,e)!==r}):S.filter(n,e,r)}S.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?S.find.matchesSelector(r,e)?[r]:[]:S.find.matches(e,S.grep(t,function(e){return 1===e.nodeType}))},S.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(S(e).filter(function(){for(t=0;t<r;t++)if(S.contains(i[t],this))return!0}));for(n=this.pushStack([]),t=0;t<r;t++)S.find(e,i[t],n);return 1<r?S.uniqueSort(n):n},filter:function(e){return this.pushStack(j(this,e||[],!1))},not:function(e){return this.pushStack(j(this,e||[],!0))},is:function(e){return!!j(this,"string"==typeof e&&k.test(e)?S(e):e||[],!1).length}});var D,q=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(S.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||D,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:q.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof S?t[0]:t,S.merge(this,S.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),N.test(r[1])&&S.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(S):S.makeArray(e,this)}).prototype=S.fn,D=S(E);var L=/^(?:parents|prev(?:Until|All))/,H={children:!0,contents:!0,next:!0,prev:!0};function O(e,t){while((e=e[t])&&1!==e.nodeType);return e}S.fn.extend({has:function(e){var t=S(e,this),n=t.length;return this.filter(function(){for(var e=0;e<n;e++)if(S.contains(this,t[e]))return!0})},closest:function(e,t){var n,r=0,i=this.length,o=[],a="string"!=typeof e&&S(e);if(!k.test(e))for(;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?-1<a.index(n):1===n.nodeType&&S.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(1<o.length?S.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?i.call(S(e),this[0]):i.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(S.uniqueSort(S.merge(this.get(),S(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),S.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return h(e,"parentNode")},parentsUntil:function(e,t,n){return h(e,"parentNode",n)},next:function(e){return O(e,"nextSibling")},prev:function(e){return O(e,"previousSibling")},nextAll:function(e){return h(e,"nextSibling")},prevAll:function(e){return h(e,"previousSibling")},nextUntil:function(e,t,n){return h(e,"nextSibling",n)},prevUntil:function(e,t,n){return h(e,"previousSibling",n)},siblings:function(e){return T((e.parentNode||{}).firstChild,e)},children:function(e){return T(e.firstChild)},contents:function(e){return null!=e.contentDocument&&r(e.contentDocument)?e.contentDocument:(A(e,"template")&&(e=e.content||e),S.merge([],e.childNodes))}},function(r,i){S.fn[r]=function(e,t){var n=S.map(this,i,e);return"Until"!==r.slice(-5)&&(t=e),t&&"string"==typeof t&&(n=S.filter(t,n)),1<this.length&&(H[r]||S.uniqueSort(n),L.test(r)&&n.reverse()),this.pushStack(n)}});var P=/[^\x20\t\r\n\f]+/g;function R(e){return e}function M(e){throw e}function I(e,t,n,r){var i;try{e&&m(i=e.promise)?i.call(e).done(t).fail(n):e&&m(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}S.Callbacks=function(r){var e,n;r="string"==typeof r?(e=r,n={},S.each(e.match(P)||[],function(e,t){n[t]=!0}),n):S.extend({},r);var i,t,o,a,s=[],u=[],l=-1,c=function(){for(a=a||r.once,o=i=!0;u.length;l=-1){t=u.shift();while(++l<s.length)!1===s[l].apply(t[0],t[1])&&r.stopOnFalse&&(l=s.length,t=!1)}r.memory||(t=!1),i=!1,a&&(s=t?[]:"")},f={add:function(){return s&&(t&&!i&&(l=s.length-1,u.push(t)),function n(e){S.each(e,function(e,t){m(t)?r.unique&&f.has(t)||s.push(t):t&&t.length&&"string"!==w(t)&&n(t)})}(arguments),t&&!i&&c()),this},remove:function(){return S.each(arguments,function(e,t){var n;while(-1<(n=S.inArray(t,s,n)))s.splice(n,1),n<=l&&l--}),this},has:function(e){return e?-1<S.inArray(e,s):0<s.length},empty:function(){return s&&(s=[]),this},disable:function(){return a=u=[],s=t="",this},disabled:function(){return!s},lock:function(){return a=u=[],t||i||(s=t=""),this},locked:function(){return!!a},fireWith:function(e,t){return a||(t=[e,(t=t||[]).slice?t.slice():t],u.push(t),i||c()),this},fire:function(){return f.fireWith(this,arguments),this},fired:function(){return!!o}};return f},S.extend({Deferred:function(e){var o=[["notify","progress",S.Callbacks("memory"),S.Callbacks("memory"),2],["resolve","done",S.Callbacks("once memory"),S.Callbacks("once memory"),0,"resolved"],["reject","fail",S.Callbacks("once memory"),S.Callbacks("once memory"),1,"rejected"]],i="pending",a={state:function(){return i},always:function(){return s.done(arguments).fail(arguments),this},"catch":function(e){return a.then(null,e)},pipe:function(){var i=arguments;return S.Deferred(function(r){S.each(o,function(e,t){var n=m(i[t[4]])&&i[t[4]];s[t[1]](function(){var e=n&&n.apply(this,arguments);e&&m(e.promise)?e.promise().progress(r.notify).done(r.resolve).fail(r.reject):r[t[0]+"With"](this,n?[e]:arguments)})}),i=null}).promise()},then:function(t,n,r){var u=0;function l(i,o,a,s){return function(){var n=this,r=arguments,e=function(){var e,t;if(!(i<u)){if((e=a.apply(n,r))===o.promise())throw new TypeError("Thenable self-resolution");t=e&&("object"==typeof e||"function"==typeof e)&&e.then,m(t)?s?t.call(e,l(u,o,R,s),l(u,o,M,s)):(u++,t.call(e,l(u,o,R,s),l(u,o,M,s),l(u,o,R,o.notifyWith))):(a!==R&&(n=void 0,r=[e]),(s||o.resolveWith)(n,r))}},t=s?e:function(){try{e()}catch(e){S.Deferred.exceptionHook&&S.Deferred.exceptionHook(e,t.stackTrace),u<=i+1&&(a!==M&&(n=void 0,r=[e]),o.rejectWith(n,r))}};i?t():(S.Deferred.getStackHook&&(t.stackTrace=S.Deferred.getStackHook()),C.setTimeout(t))}}return S.Deferred(function(e){o[0][3].add(l(0,e,m(r)?r:R,e.notifyWith)),o[1][3].add(l(0,e,m(t)?t:R)),o[2][3].add(l(0,e,m(n)?n:M))}).promise()},promise:function(e){return null!=e?S.extend(e,a):a}},s={};return S.each(o,function(e,t){var n=t[2],r=t[5];a[t[1]]=n.add,r&&n.add(function(){i=r},o[3-e][2].disable,o[3-e][3].disable,o[0][2].lock,o[0][3].lock),n.add(t[3].fire),s[t[0]]=function(){return s[t[0]+"With"](this===s?void 0:this,arguments),this},s[t[0]+"With"]=n.fireWith}),a.promise(s),e&&e.call(s,s),s},when:function(e){var n=arguments.length,t=n,r=Array(t),i=s.call(arguments),o=S.Deferred(),a=function(t){return function(e){r[t]=this,i[t]=1<arguments.length?s.call(arguments):e,--n||o.resolveWith(r,i)}};if(n<=1&&(I(e,o.done(a(t)).resolve,o.reject,!n),"pending"===o.state()||m(i[t]&&i[t].then)))return o.then();while(t--)I(i[t],a(t),o.reject);return o.promise()}});var W=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;S.Deferred.exceptionHook=function(e,t){C.console&&C.console.warn&&e&&W.test(e.name)&&C.console.warn("jQuery.Deferred exception: "+e.message,e.stack,t)},S.readyException=function(e){C.setTimeout(function(){throw e})};var F=S.Deferred();function B(){E.removeEventListener("DOMContentLoaded",B),C.removeEventListener("load",B),S.ready()}S.fn.ready=function(e){return F.then(e)["catch"](function(e){S.readyException(e)}),this},S.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--S.readyWait:S.isReady)||(S.isReady=!0)!==e&&0<--S.readyWait||F.resolveWith(E,[S])}}),S.ready.then=F.then,"complete"===E.readyState||"loading"!==E.readyState&&!E.documentElement.doScroll?C.setTimeout(S.ready):(E.addEventListener("DOMContentLoaded",B),C.addEventListener("load",B));var $=function(e,t,n,r,i,o,a){var s=0,u=e.length,l=null==n;if("object"===w(n))for(s in i=!0,n)$(e,t,s,n[s],!0,o,a);else if(void 0!==r&&(i=!0,m(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(S(e),n)})),t))for(;s<u;s++)t(e[s],n,a?r:r.call(e[s],s,t(e[s],n)));return i?e:l?t.call(e):u?t(e[0],n):o},_=/^-ms-/,z=/-([a-z])/g;function U(e,t){return t.toUpperCase()}function X(e){return e.replace(_,"ms-").replace(z,U)}var V=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};function G(){this.expando=S.expando+G.uid++}G.uid=1,G.prototype={cache:function(e){var t=e[this.expando];return t||(t={},V(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,i=this.cache(e);if("string"==typeof t)i[X(t)]=n;else for(r in t)i[X(r)]=t[r];return i},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][X(t)]},access:function(e,t,n){return void 0===t||t&&"string"==typeof t&&void 0===n?this.get(e,t):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){var n,r=e[this.expando];if(void 0!==r){if(void 0!==t){n=(t=Array.isArray(t)?t.map(X):(t=X(t))in r?[t]:t.match(P)||[]).length;while(n--)delete r[t[n]]}(void 0===t||S.isEmptyObject(r))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!S.isEmptyObject(t)}};var Y=new G,Q=new G,J=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,K=/[A-Z]/g;function Z(e,t,n){var r,i;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(K,"-$&").toLowerCase(),"string"==typeof(n=e.getAttribute(r))){try{n="true"===(i=n)||"false"!==i&&("null"===i?null:i===+i+""?+i:J.test(i)?JSON.parse(i):i)}catch(e){}Q.set(e,t,n)}else n=void 0;return n}S.extend({hasData:function(e){return Q.hasData(e)||Y.hasData(e)},data:function(e,t,n){return Q.access(e,t,n)},removeData:function(e,t){Q.remove(e,t)},_data:function(e,t,n){return Y.access(e,t,n)},_removeData:function(e,t){Y.remove(e,t)}}),S.fn.extend({data:function(n,e){var t,r,i,o=this[0],a=o&&o.attributes;if(void 0===n){if(this.length&&(i=Q.get(o),1===o.nodeType&&!Y.get(o,"hasDataAttrs"))){t=a.length;while(t--)a[t]&&0===(r=a[t].name).indexOf("data-")&&(r=X(r.slice(5)),Z(o,r,i[r]));Y.set(o,"hasDataAttrs",!0)}return i}return"object"==typeof n?this.each(function(){Q.set(this,n)}):$(this,function(e){var t;if(o&&void 0===e)return void 0!==(t=Q.get(o,n))?t:void 0!==(t=Z(o,n))?t:void 0;this.each(function(){Q.set(this,n,e)})},null,e,1<arguments.length,null,!0)},removeData:function(e){return this.each(function(){Q.remove(this,e)})}}),S.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=Y.get(e,t),n&&(!r||Array.isArray(n)?r=Y.access(e,t,S.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=S.queue(e,t),r=n.length,i=n.shift(),o=S._queueHooks(e,t);"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,function(){S.dequeue(e,t)},o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return Y.get(e,n)||Y.access(e,n,{empty:S.Callbacks("once memory").add(function(){Y.remove(e,[t+"queue",n])})})}}),S.fn.extend({queue:function(t,n){var e=2;return"string"!=typeof t&&(n=t,t="fx",e--),arguments.length<e?S.queue(this[0],t):void 0===n?this:this.each(function(){var e=S.queue(this,t,n);S._queueHooks(this,t),"fx"===t&&"inprogress"!==e[0]&&S.dequeue(this,t)})},dequeue:function(e){return this.each(function(){S.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,i=S.Deferred(),o=this,a=this.length,s=function(){--r||i.resolveWith(o,[o])};"string"!=typeof e&&(t=e,e=void 0),e=e||"fx";while(a--)(n=Y.get(o[a],e+"queueHooks"))&&n.empty&&(r++,n.empty.add(s));return s(),i.promise(t)}});var ee=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,te=new RegExp("^(?:([+-])=|)("+ee+")([a-z%]*)$","i"),ne=["Top","Right","Bottom","Left"],re=E.documentElement,ie=function(e){return S.contains(e.ownerDocument,e)},oe={composed:!0};re.getRootNode&&(ie=function(e){return S.contains(e.ownerDocument,e)||e.getRootNode(oe)===e.ownerDocument});var ae=function(e,t){return"none"===(e=t||e).style.display||""===e.style.display&&ie(e)&&"none"===S.css(e,"display")};function se(e,t,n,r){var i,o,a=20,s=r?function(){return r.cur()}:function(){return S.css(e,t,"")},u=s(),l=n&&n[3]||(S.cssNumber[t]?"":"px"),c=e.nodeType&&(S.cssNumber[t]||"px"!==l&&+u)&&te.exec(S.css(e,t));if(c&&c[3]!==l){u/=2,l=l||c[3],c=+u||1;while(a--)S.style(e,t,c+l),(1-o)*(1-(o=s()/u||.5))<=0&&(a=0),c/=o;c*=2,S.style(e,t,c+l),n=n||[]}return n&&(c=+c||+u||0,i=n[1]?c+(n[1]+1)*n[2]:+n[2],r&&(r.unit=l,r.start=c,r.end=i)),i}var ue={};function le(e,t){for(var n,r,i,o,a,s,u,l=[],c=0,f=e.length;c<f;c++)(r=e[c]).style&&(n=r.style.display,t?("none"===n&&(l[c]=Y.get(r,"display")||null,l[c]||(r.style.display="")),""===r.style.display&&ae(r)&&(l[c]=(u=a=o=void 0,a=(i=r).ownerDocument,s=i.nodeName,(u=ue[s])||(o=a.body.appendChild(a.createElement(s)),u=S.css(o,"display"),o.parentNode.removeChild(o),"none"===u&&(u="block"),ue[s]=u)))):"none"!==n&&(l[c]="none",Y.set(r,"display",n)));for(c=0;c<f;c++)null!=l[c]&&(e[c].style.display=l[c]);return e}S.fn.extend({show:function(){return le(this,!0)},hide:function(){return le(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){ae(this)?S(this).show():S(this).hide()})}});var ce,fe,pe=/^(?:checkbox|radio)$/i,de=/<([a-z][^\/\0>\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i;ce=E.createDocumentFragment().appendChild(E.createElement("div")),(fe=E.createElement("input")).setAttribute("type","radio"),fe.setAttribute("checked","checked"),fe.setAttribute("name","t"),ce.appendChild(fe),y.checkClone=ce.cloneNode(!0).cloneNode(!0).lastChild.checked,ce.innerHTML="<textarea>x</textarea>",y.noCloneChecked=!!ce.cloneNode(!0).lastChild.defaultValue,ce.innerHTML="<option></option>",y.option=!!ce.lastChild;var ge={thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?S.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n<r;n++)Y.set(e[n],"globalEval",!t||Y.get(t[n],"globalEval"))}ge.tbody=ge.tfoot=ge.colgroup=ge.caption=ge.thead,ge.th=ge.td,y.option||(ge.optgroup=ge.option=[1,"<select multiple='multiple'>","</select>"]);var me=/<|&#?\w+;/;function xe(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d<h;d++)if((o=e[d])||0===o)if("object"===w(o))S.merge(p,o.nodeType?[o]:o);else if(me.test(o)){a=a||f.appendChild(t.createElement("div")),s=(de.exec(o)||["",""])[1].toLowerCase(),u=ge[s]||ge._default,a.innerHTML=u[1]+S.htmlPrefilter(o)+u[2],c=u[0];while(c--)a=a.lastChild;S.merge(p,a.childNodes),(a=f.firstChild).textContent=""}else p.push(t.createTextNode(o));f.textContent="",d=0;while(o=p[d++])if(r&&-1<S.inArray(o,r))i&&i.push(o);else if(l=ie(o),a=ve(f.appendChild(o),"script"),l&&ye(a),n){c=0;while(o=a[c++])he.test(o.type||"")&&n.push(o)}return f}var be=/^([^.]*)(?:\.(.+)|)/;function we(){return!0}function Te(){return!1}function Ce(e,t){return e===function(){try{return E.activeElement}catch(e){}}()==("focus"===t)}function Ee(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)Ee(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Te;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return S().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=S.guid++)),e.each(function(){S.event.add(this,t,i,r,n)})}function Se(e,i,o){o?(Y.set(e,i,!1),S.event.add(e,i,{namespace:!1,handler:function(e){var t,n,r=Y.get(this,i);if(1&e.isTrigger&&this[i]){if(r.length)(S.event.special[i]||{}).delegateType&&e.stopPropagation();else if(r=s.call(arguments),Y.set(this,i,r),t=o(this,i),this[i](),r!==(n=Y.get(this,i))||t?Y.set(this,i,!1):n={},r!==n)return e.stopImmediatePropagation(),e.preventDefault(),n&&n.value}else r.length&&(Y.set(this,i,{value:S.event.trigger(S.extend(r[0],S.Event.prototype),r.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Y.get(e,i)&&S.event.add(e,i,we)}S.event={global:{},add:function(t,e,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Y.get(t);if(V(t)){n.handler&&(n=(o=n).handler,i=o.selector),i&&S.find.matchesSelector(re,i),n.guid||(n.guid=S.guid++),(u=v.events)||(u=v.events=Object.create(null)),(a=v.handle)||(a=v.handle=function(e){return"undefined"!=typeof S&&S.event.triggered!==e.type?S.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(P)||[""]).length;while(l--)d=g=(s=be.exec(e[l])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=S.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=S.event.special[d]||{},c=S.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&S.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(t,r,h,a)||t.addEventListener&&t.addEventListener(d,a)),f.add&&(f.add.call(t,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),S.event.global[d]=!0)}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Y.hasData(e)&&Y.get(e);if(v&&(u=v.events)){l=(t=(t||"").match(P)||[""]).length;while(l--)if(d=g=(s=be.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),d){f=S.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;while(o--)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||S.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)S.event.remove(e,d+t[l],n,r,!0);S.isEmptyObject(u)&&Y.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=new Array(arguments.length),u=S.event.fix(e),l=(Y.get(this,"events")||Object.create(null))[u.type]||[],c=S.event.special[u.type]||{};for(s[0]=u,t=1;t<arguments.length;t++)s[t]=arguments[t];if(u.delegateTarget=this,!c.preDispatch||!1!==c.preDispatch.call(this,u)){a=S.event.handlers.call(this,u,l),t=0;while((i=a[t++])&&!u.isPropagationStopped()){u.currentTarget=i.elem,n=0;while((o=i.handlers[n++])&&!u.isImmediatePropagationStopped())u.rnamespace&&!1!==o.namespace&&!u.rnamespace.test(o.namespace)||(u.handleObj=o,u.data=o.data,void 0!==(r=((S.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,s))&&!1===(u.result=r)&&(u.preventDefault(),u.stopPropagation()))}return c.postDispatch&&c.postDispatch.call(this,u),u.result}},handlers:function(e,t){var n,r,i,o,a,s=[],u=t.delegateCount,l=e.target;if(u&&l.nodeType&&!("click"===e.type&&1<=e.button))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&("click"!==e.type||!0!==l.disabled)){for(o=[],a={},n=0;n<u;n++)void 0===a[i=(r=t[n]).selector+" "]&&(a[i]=r.needsContext?-1<S(i,this).index(l):S.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&s.push({elem:l,handlers:o})}return l=this,u<t.length&&s.push({elem:l,handlers:t.slice(u)}),s},addProp:function(t,e){Object.defineProperty(S.Event.prototype,t,{enumerable:!0,configurable:!0,get:m(e)?function(){if(this.originalEvent)return e(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[t]},set:function(e){Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:e})}})},fix:function(e){return e[S.expando]?e:new S.Event(e)},special:{load:{noBubble:!0},click:{setup:function(e){var t=this||e;return pe.test(t.type)&&t.click&&A(t,"input")&&Se(t,"click",we),!1},trigger:function(e){var t=this||e;return pe.test(t.type)&&t.click&&A(t,"input")&&Se(t,"click"),!0},_default:function(e){var t=e.target;return pe.test(t.type)&&t.click&&A(t,"input")&&Y.get(t,"click")||A(t,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},S.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},S.Event=function(e,t){if(!(this instanceof S.Event))return new S.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?we:Te,this.target=e.target&&3===e.target.nodeType?e.target.parentNode:e.target,this.currentTarget=e.currentTarget,this.relatedTarget=e.relatedTarget):this.type=e,t&&S.extend(this,t),this.timeStamp=e&&e.timeStamp||Date.now(),this[S.expando]=!0},S.Event.prototype={constructor:S.Event,isDefaultPrevented:Te,isPropagationStopped:Te,isImmediatePropagationStopped:Te,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=we,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=we,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=we,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},S.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,"char":!0,code:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:!0},S.event.addProp),S.each({focus:"focusin",blur:"focusout"},function(e,t){S.event.special[e]={setup:function(){return Se(this,e,Ce),!1},trigger:function(){return Se(this,e),!0},_default:function(){return!0},delegateType:t}}),S.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(e,i){S.event.special[e]={delegateType:i,bindType:i,handle:function(e){var t,n=e.relatedTarget,r=e.handleObj;return n&&(n===this||S.contains(this,n))||(e.type=r.origType,t=r.handler.apply(this,arguments),e.type=i),t}}}),S.fn.extend({on:function(e,t,n,r){return Ee(this,e,t,n,r)},one:function(e,t,n,r){return Ee(this,e,t,n,r,1)},off:function(e,t,n){var r,i;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,S(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"==typeof e){for(i in e)this.off(i,t,e[i]);return this}return!1!==t&&"function"!=typeof t||(n=t,t=void 0),!1===n&&(n=Te),this.each(function(){S.event.remove(this,e,n,t)})}});var ke=/<script|<style|<link/i,Ae=/checked\s*(?:[^=]|=\s*.checked.)/i,Ne=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function je(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&S(e).children("tbody")[0]||e}function De(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function qe(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Le(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(Y.hasData(e)&&(s=Y.get(e).events))for(i in Y.remove(t,"handle events"),s)for(n=0,r=s[i].length;n<r;n++)S.event.add(t,i,s[i][n]);Q.hasData(e)&&(o=Q.access(e),a=S.extend({},o),Q.set(t,a))}}function He(n,r,i,o){r=g(r);var e,t,a,s,u,l,c=0,f=n.length,p=f-1,d=r[0],h=m(d);if(h||1<f&&"string"==typeof d&&!y.checkClone&&Ae.test(d))return n.each(function(e){var t=n.eq(e);h&&(r[0]=d.call(this,e,t.html())),He(t,r,i,o)});if(f&&(t=(e=xe(r,n[0].ownerDocument,!1,n,o)).firstChild,1===e.childNodes.length&&(e=t),t||o)){for(s=(a=S.map(ve(e,"script"),De)).length;c<f;c++)u=e,c!==p&&(u=S.clone(u,!0,!0),s&&S.merge(a,ve(u,"script"))),i.call(n[c],u,c);if(s)for(l=a[a.length-1].ownerDocument,S.map(a,qe),c=0;c<s;c++)u=a[c],he.test(u.type||"")&&!Y.access(u,"globalEval")&&S.contains(l,u)&&(u.src&&"module"!==(u.type||"").toLowerCase()?S._evalUrl&&!u.noModule&&S._evalUrl(u.src,{nonce:u.nonce||u.getAttribute("nonce")},l):b(u.textContent.replace(Ne,""),u,l))}return n}function Oe(e,t,n){for(var r,i=t?S.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||S.cleanData(ve(r)),r.parentNode&&(n&&ie(r)&&ye(ve(r,"script")),r.parentNode.removeChild(r));return e}S.extend({htmlPrefilter:function(e){return e},clone:function(e,t,n){var r,i,o,a,s,u,l,c=e.cloneNode(!0),f=ie(e);if(!(y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||S.isXMLDoc(e)))for(a=ve(c),r=0,i=(o=ve(e)).length;r<i;r++)s=o[r],u=a[r],void 0,"input"===(l=u.nodeName.toLowerCase())&&pe.test(s.type)?u.checked=s.checked:"input"!==l&&"textarea"!==l||(u.defaultValue=s.defaultValue);if(t)if(n)for(o=o||ve(e),a=a||ve(c),r=0,i=o.length;r<i;r++)Le(o[r],a[r]);else Le(e,c);return 0<(a=ve(c,"script")).length&&ye(a,!f&&ve(e,"script")),c},cleanData:function(e){for(var t,n,r,i=S.event.special,o=0;void 0!==(n=e[o]);o++)if(V(n)){if(t=n[Y.expando]){if(t.events)for(r in t.events)i[r]?S.event.remove(n,r):S.removeEvent(n,r,t.handle);n[Y.expando]=void 0}n[Q.expando]&&(n[Q.expando]=void 0)}}}),S.fn.extend({detach:function(e){return Oe(this,e,!0)},remove:function(e){return Oe(this,e)},text:function(e){return $(this,function(e){return void 0===e?S.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return He(this,arguments,function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||je(this,e).appendChild(e)})},prepend:function(){return He(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=je(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return He(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return He(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(S.cleanData(ve(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return S.clone(this,e,t)})},html:function(e){return $(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!ke.test(e)&&!ge[(de.exec(e)||["",""])[1].toLowerCase()]){e=S.htmlPrefilter(e);try{for(;n<r;n++)1===(t=this[n]||{}).nodeType&&(S.cleanData(ve(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var n=[];return He(this,arguments,function(e){var t=this.parentNode;S.inArray(this,n)<0&&(S.cleanData(ve(this)),t&&t.replaceChild(e,this))},n)}}),S.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,a){S.fn[e]=function(e){for(var t,n=[],r=S(e),i=r.length-1,o=0;o<=i;o++)t=o===i?this:this.clone(!0),S(r[o])[a](t),u.apply(n,t.get());return this.pushStack(n)}});var Pe=new RegExp("^("+ee+")(?!px)[a-z%]+$","i"),Re=function(e){var t=e.ownerDocument.defaultView;return t&&t.opener||(t=C),t.getComputedStyle(e)},Me=function(e,t,n){var r,i,o={};for(i in t)o[i]=e.style[i],e.style[i]=t[i];for(i in r=n.call(e),t)e.style[i]=o[i];return r},Ie=new RegExp(ne.join("|"),"i");function We(e,t,n){var r,i,o,a,s=e.style;return(n=n||Re(e))&&(""!==(a=n.getPropertyValue(t)||n[t])||ie(e)||(a=S.style(e,t)),!y.pixelBoxStyles()&&Pe.test(a)&&Ie.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o)),void 0!==a?a+"":a}function Fe(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}!function(){function e(){if(l){u.style.cssText="position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0",l.style.cssText="position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%",re.appendChild(u).appendChild(l);var e=C.getComputedStyle(l);n="1%"!==e.top,s=12===t(e.marginLeft),l.style.right="60%",o=36===t(e.right),r=36===t(e.width),l.style.position="absolute",i=12===t(l.offsetWidth/3),re.removeChild(u),l=null}}function t(e){return Math.round(parseFloat(e))}var n,r,i,o,a,s,u=E.createElement("div"),l=E.createElement("div");l.style&&(l.style.backgroundClip="content-box",l.cloneNode(!0).style.backgroundClip="",y.clearCloneStyle="content-box"===l.style.backgroundClip,S.extend(y,{boxSizingReliable:function(){return e(),r},pixelBoxStyles:function(){return e(),o},pixelPosition:function(){return e(),n},reliableMarginLeft:function(){return e(),s},scrollboxSize:function(){return e(),i},reliableTrDimensions:function(){var e,t,n,r;return null==a&&(e=E.createElement("table"),t=E.createElement("tr"),n=E.createElement("div"),e.style.cssText="position:absolute;left:-11111px;border-collapse:separate",t.style.cssText="border:1px solid",t.style.height="1px",n.style.height="9px",n.style.display="block",re.appendChild(e).appendChild(t).appendChild(n),r=C.getComputedStyle(t),a=parseInt(r.height,10)+parseInt(r.borderTopWidth,10)+parseInt(r.borderBottomWidth,10)===t.offsetHeight,re.removeChild(e)),a}}))}();var Be=["Webkit","Moz","ms"],$e=E.createElement("div").style,_e={};function ze(e){var t=S.cssProps[e]||_e[e];return t||(e in $e?e:_e[e]=function(e){var t=e[0].toUpperCase()+e.slice(1),n=Be.length;while(n--)if((e=Be[n]+t)in $e)return e}(e)||e)}var Ue=/^(none|table(?!-c[ea]).+)/,Xe=/^--/,Ve={position:"absolute",visibility:"hidden",display:"block"},Ge={letterSpacing:"0",fontWeight:"400"};function Ye(e,t,n){var r=te.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):t}function Qe(e,t,n,r,i,o){var a="width"===t?1:0,s=0,u=0;if(n===(r?"border":"content"))return 0;for(;a<4;a+=2)"margin"===n&&(u+=S.css(e,n+ne[a],!0,i)),r?("content"===n&&(u-=S.css(e,"padding"+ne[a],!0,i)),"margin"!==n&&(u-=S.css(e,"border"+ne[a]+"Width",!0,i))):(u+=S.css(e,"padding"+ne[a],!0,i),"padding"!==n?u+=S.css(e,"border"+ne[a]+"Width",!0,i):s+=S.css(e,"border"+ne[a]+"Width",!0,i));return!r&&0<=o&&(u+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-o-u-s-.5))||0),u}function Je(e,t,n){var r=Re(e),i=(!y.boxSizingReliable()||n)&&"border-box"===S.css(e,"boxSizing",!1,r),o=i,a=We(e,t,r),s="offset"+t[0].toUpperCase()+t.slice(1);if(Pe.test(a)){if(!n)return a;a="auto"}return(!y.boxSizingReliable()&&i||!y.reliableTrDimensions()&&A(e,"tr")||"auto"===a||!parseFloat(a)&&"inline"===S.css(e,"display",!1,r))&&e.getClientRects().length&&(i="border-box"===S.css(e,"boxSizing",!1,r),(o=s in e)&&(a=e[s])),(a=parseFloat(a)||0)+Qe(e,t,n||(i?"border":"content"),o,r,a)+"px"}function Ke(e,t,n,r,i){return new Ke.prototype.init(e,t,n,r,i)}S.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=We(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=X(t),u=Xe.test(t),l=e.style;if(u||(t=ze(s)),a=S.cssHooks[t]||S.cssHooks[s],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:l[t];"string"===(o=typeof n)&&(i=te.exec(n))&&i[1]&&(n=se(e,t,i),o="number"),null!=n&&n==n&&("number"!==o||u||(n+=i&&i[3]||(S.cssNumber[s]?"":"px")),y.clearCloneStyle||""!==n||0!==t.indexOf("background")||(l[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(u?l.setProperty(t,n):l[t]=n))}},css:function(e,t,n,r){var i,o,a,s=X(t);return Xe.test(t)||(t=ze(s)),(a=S.cssHooks[t]||S.cssHooks[s])&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=We(e,t,r)),"normal"===i&&t in Ge&&(i=Ge[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),S.each(["height","width"],function(e,u){S.cssHooks[u]={get:function(e,t,n){if(t)return!Ue.test(S.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?Je(e,u,n):Me(e,Ve,function(){return Je(e,u,n)})},set:function(e,t,n){var r,i=Re(e),o=!y.scrollboxSize()&&"absolute"===i.position,a=(o||n)&&"border-box"===S.css(e,"boxSizing",!1,i),s=n?Qe(e,u,n,a,i):0;return a&&o&&(s-=Math.ceil(e["offset"+u[0].toUpperCase()+u.slice(1)]-parseFloat(i[u])-Qe(e,u,"border",!1,i)-.5)),s&&(r=te.exec(t))&&"px"!==(r[3]||"px")&&(e.style[u]=t,t=S.css(e,u)),Ye(0,t,s)}}}),S.cssHooks.marginLeft=Fe(y.reliableMarginLeft,function(e,t){if(t)return(parseFloat(We(e,"marginLeft"))||e.getBoundingClientRect().left-Me(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),S.each({margin:"",padding:"",border:"Width"},function(i,o){S.cssHooks[i+o]={expand:function(e){for(var t=0,n={},r="string"==typeof e?e.split(" "):[e];t<4;t++)n[i+ne[t]+o]=r[t]||r[t-2]||r[0];return n}},"margin"!==i&&(S.cssHooks[i+o].set=Ye)}),S.fn.extend({css:function(e,t){return $(this,function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=Re(e),i=t.length;a<i;a++)o[t[a]]=S.css(e,t[a],!1,r);return o}return void 0!==n?S.style(e,t,n):S.css(e,t)},e,t,1<arguments.length)}}),((S.Tween=Ke).prototype={constructor:Ke,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||S.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(S.cssNumber[n]?"":"px")},cur:function(){var e=Ke.propHooks[this.prop];return e&&e.get?e.get(this):Ke.propHooks._default.get(this)},run:function(e){var t,n=Ke.propHooks[this.prop];return this.options.duration?this.pos=t=S.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):Ke.propHooks._default.set(this),this}}).init.prototype=Ke.prototype,(Ke.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=S.css(e.elem,e.prop,""))&&"auto"!==t?t:0},set:function(e){S.fx.step[e.prop]?S.fx.step[e.prop](e):1!==e.elem.nodeType||!S.cssHooks[e.prop]&&null==e.elem.style[ze(e.prop)]?e.elem[e.prop]=e.now:S.style(e.elem,e.prop,e.now+e.unit)}}}).scrollTop=Ke.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},S.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},S.fx=Ke.prototype.init,S.fx.step={};var Ze,et,tt,nt,rt=/^(?:toggle|show|hide)$/,it=/queueHooks$/;function ot(){et&&(!1===E.hidden&&C.requestAnimationFrame?C.requestAnimationFrame(ot):C.setTimeout(ot,S.fx.interval),S.fx.tick())}function at(){return C.setTimeout(function(){Ze=void 0}),Ze=Date.now()}function st(e,t){var n,r=0,i={height:e};for(t=t?1:0;r<4;r+=2-t)i["margin"+(n=ne[r])]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function ut(e,t,n){for(var r,i=(lt.tweeners[t]||[]).concat(lt.tweeners["*"]),o=0,a=i.length;o<a;o++)if(r=i[o].call(n,t,e))return r}function lt(o,e,t){var n,a,r=0,i=lt.prefilters.length,s=S.Deferred().always(function(){delete u.elem}),u=function(){if(a)return!1;for(var e=Ze||at(),t=Math.max(0,l.startTime+l.duration-e),n=1-(t/l.duration||0),r=0,i=l.tweens.length;r<i;r++)l.tweens[r].run(n);return s.notifyWith(o,[l,n,t]),n<1&&i?t:(i||s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l]),!1)},l=s.promise({elem:o,props:S.extend({},e),opts:S.extend(!0,{specialEasing:{},easing:S.easing._default},t),originalProperties:e,originalOptions:t,startTime:Ze||at(),duration:t.duration,tweens:[],createTween:function(e,t){var n=S.Tween(o,l.opts,e,t,l.opts.specialEasing[e]||l.opts.easing);return l.tweens.push(n),n},stop:function(e){var t=0,n=e?l.tweens.length:0;if(a)return this;for(a=!0;t<n;t++)l.tweens[t].run(1);return e?(s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l,e])):s.rejectWith(o,[l,e]),this}}),c=l.props;for(!function(e,t){var n,r,i,o,a;for(n in e)if(i=t[r=X(n)],o=e[n],Array.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),(a=S.cssHooks[r])&&"expand"in a)for(n in o=a.expand(o),delete e[r],o)n in e||(e[n]=o[n],t[n]=i);else t[r]=i}(c,l.opts.specialEasing);r<i;r++)if(n=lt.prefilters[r].call(l,o,c,l.opts))return m(n.stop)&&(S._queueHooks(l.elem,l.opts.queue).stop=n.stop.bind(n)),n;return S.map(c,ut,l),m(l.opts.start)&&l.opts.start.call(o,l),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always),S.fx.timer(S.extend(u,{elem:o,anim:l,queue:l.opts.queue})),l}S.Animation=S.extend(lt,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return se(n.elem,e,te.exec(t),n),n}]},tweener:function(e,t){m(e)?(t=e,e=["*"]):e=e.match(P);for(var n,r=0,i=e.length;r<i;r++)n=e[r],lt.tweeners[n]=lt.tweeners[n]||[],lt.tweeners[n].unshift(t)},prefilters:[function(e,t,n){var r,i,o,a,s,u,l,c,f="width"in t||"height"in t,p=this,d={},h=e.style,g=e.nodeType&&ae(e),v=Y.get(e,"fxshow");for(r in n.queue||(null==(a=S._queueHooks(e,"fx")).unqueued&&(a.unqueued=0,s=a.empty.fire,a.empty.fire=function(){a.unqueued||s()}),a.unqueued++,p.always(function(){p.always(function(){a.unqueued--,S.queue(e,"fx").length||a.empty.fire()})})),t)if(i=t[r],rt.test(i)){if(delete t[r],o=o||"toggle"===i,i===(g?"hide":"show")){if("show"!==i||!v||void 0===v[r])continue;g=!0}d[r]=v&&v[r]||S.style(e,r)}if((u=!S.isEmptyObject(t))||!S.isEmptyObject(d))for(r in f&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],null==(l=v&&v.display)&&(l=Y.get(e,"display")),"none"===(c=S.css(e,"display"))&&(l?c=l:(le([e],!0),l=e.style.display||l,c=S.css(e,"display"),le([e]))),("inline"===c||"inline-block"===c&&null!=l)&&"none"===S.css(e,"float")&&(u||(p.done(function(){h.display=l}),null==l&&(c=h.display,l="none"===c?"":c)),h.display="inline-block")),n.overflow&&(h.overflow="hidden",p.always(function(){h.overflow=n.overflow[0],h.overflowX=n.overflow[1],h.overflowY=n.overflow[2]})),u=!1,d)u||(v?"hidden"in v&&(g=v.hidden):v=Y.access(e,"fxshow",{display:l}),o&&(v.hidden=!g),g&&le([e],!0),p.done(function(){for(r in g||le([e]),Y.remove(e,"fxshow"),d)S.style(e,r,d[r])})),u=ut(g?v[r]:0,r,p),r in v||(v[r]=u.start,g&&(u.end=u.start,u.start=0))}],prefilter:function(e,t){t?lt.prefilters.unshift(e):lt.prefilters.push(e)}}),S.speed=function(e,t,n){var r=e&&"object"==typeof e?S.extend({},e):{complete:n||!n&&t||m(e)&&e,duration:e,easing:n&&t||t&&!m(t)&&t};return S.fx.off?r.duration=0:"number"!=typeof r.duration&&(r.duration in S.fx.speeds?r.duration=S.fx.speeds[r.duration]:r.duration=S.fx.speeds._default),null!=r.queue&&!0!==r.queue||(r.queue="fx"),r.old=r.complete,r.complete=function(){m(r.old)&&r.old.call(this),r.queue&&S.dequeue(this,r.queue)},r},S.fn.extend({fadeTo:function(e,t,n,r){return this.filter(ae).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(t,e,n,r){var i=S.isEmptyObject(t),o=S.speed(e,n,r),a=function(){var e=lt(this,S.extend({},t),o);(i||Y.get(this,"finish"))&&e.stop(!0)};return a.finish=a,i||!1===o.queue?this.each(a):this.queue(o.queue,a)},stop:function(i,e,o){var a=function(e){var t=e.stop;delete e.stop,t(o)};return"string"!=typeof i&&(o=e,e=i,i=void 0),e&&this.queue(i||"fx",[]),this.each(function(){var e=!0,t=null!=i&&i+"queueHooks",n=S.timers,r=Y.get(this);if(t)r[t]&&r[t].stop&&a(r[t]);else for(t in r)r[t]&&r[t].stop&&it.test(t)&&a(r[t]);for(t=n.length;t--;)n[t].elem!==this||null!=i&&n[t].queue!==i||(n[t].anim.stop(o),e=!1,n.splice(t,1));!e&&o||S.dequeue(this,i)})},finish:function(a){return!1!==a&&(a=a||"fx"),this.each(function(){var e,t=Y.get(this),n=t[a+"queue"],r=t[a+"queueHooks"],i=S.timers,o=n?n.length:0;for(t.finish=!0,S.queue(this,a,[]),r&&r.stop&&r.stop.call(this,!0),e=i.length;e--;)i[e].elem===this&&i[e].queue===a&&(i[e].anim.stop(!0),i.splice(e,1));for(e=0;e<o;e++)n[e]&&n[e].finish&&n[e].finish.call(this);delete t.finish})}}),S.each(["toggle","show","hide"],function(e,r){var i=S.fn[r];S.fn[r]=function(e,t,n){return null==e||"boolean"==typeof e?i.apply(this,arguments):this.animate(st(r,!0),e,t,n)}}),S.each({slideDown:st("show"),slideUp:st("hide"),slideToggle:st("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,r){S.fn[e]=function(e,t,n){return this.animate(r,e,t,n)}}),S.timers=[],S.fx.tick=function(){var e,t=0,n=S.timers;for(Ze=Date.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1);n.length||S.fx.stop(),Ze=void 0},S.fx.timer=function(e){S.timers.push(e),S.fx.start()},S.fx.interval=13,S.fx.start=function(){et||(et=!0,ot())},S.fx.stop=function(){et=null},S.fx.speeds={slow:600,fast:200,_default:400},S.fn.delay=function(r,e){return r=S.fx&&S.fx.speeds[r]||r,e=e||"fx",this.queue(e,function(e,t){var n=C.setTimeout(e,r);t.stop=function(){C.clearTimeout(n)}})},tt=E.createElement("input"),nt=E.createElement("select").appendChild(E.createElement("option")),tt.type="checkbox",y.checkOn=""!==tt.value,y.optSelected=nt.selected,(tt=E.createElement("input")).value="t",tt.type="radio",y.radioValue="t"===tt.value;var ct,ft=S.expr.attrHandle;S.fn.extend({attr:function(e,t){return $(this,S.attr,e,t,1<arguments.length)},removeAttr:function(e){return this.each(function(){S.removeAttr(this,e)})}}),S.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return"undefined"==typeof e.getAttribute?S.prop(e,t,n):(1===o&&S.isXMLDoc(e)||(i=S.attrHooks[t.toLowerCase()]||(S.expr.match.bool.test(t)?ct:void 0)),void 0!==n?null===n?void S.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:null==(r=S.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!y.radioValue&&"radio"===t&&A(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(P);if(i&&1===e.nodeType)while(n=i[r++])e.removeAttribute(n)}}),ct={set:function(e,t,n){return!1===t?S.removeAttr(e,n):e.setAttribute(n,n),n}},S.each(S.expr.match.bool.source.match(/\w+/g),function(e,t){var a=ft[t]||S.find.attr;ft[t]=function(e,t,n){var r,i,o=t.toLowerCase();return n||(i=ft[o],ft[o]=r,r=null!=a(e,t,n)?o:null,ft[o]=i),r}});var pt=/^(?:input|select|textarea|button)$/i,dt=/^(?:a|area)$/i;function ht(e){return(e.match(P)||[]).join(" ")}function gt(e){return e.getAttribute&&e.getAttribute("class")||""}function vt(e){return Array.isArray(e)?e:"string"==typeof e&&e.match(P)||[]}S.fn.extend({prop:function(e,t){return $(this,S.prop,e,t,1<arguments.length)},removeProp:function(e){return this.each(function(){delete this[S.propFix[e]||e]})}}),S.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&S.isXMLDoc(e)||(t=S.propFix[t]||t,i=S.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=S.find.attr(e,"tabindex");return t?parseInt(t,10):pt.test(e.nodeName)||dt.test(e.nodeName)&&e.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),y.optSelected||(S.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),S.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){S.propFix[this.toLowerCase()]=this}),S.fn.extend({addClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){S(this).addClass(t.call(this,e,gt(this)))});if((e=vt(t)).length)while(n=this[u++])if(i=gt(n),r=1===n.nodeType&&" "+ht(i)+" "){a=0;while(o=e[a++])r.indexOf(" "+o+" ")<0&&(r+=o+" ");i!==(s=ht(r))&&n.setAttribute("class",s)}return this},removeClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){S(this).removeClass(t.call(this,e,gt(this)))});if(!arguments.length)return this.attr("class","");if((e=vt(t)).length)while(n=this[u++])if(i=gt(n),r=1===n.nodeType&&" "+ht(i)+" "){a=0;while(o=e[a++])while(-1<r.indexOf(" "+o+" "))r=r.replace(" "+o+" "," ");i!==(s=ht(r))&&n.setAttribute("class",s)}return this},toggleClass:function(i,t){var o=typeof i,a="string"===o||Array.isArray(i);return"boolean"==typeof t&&a?t?this.addClass(i):this.removeClass(i):m(i)?this.each(function(e){S(this).toggleClass(i.call(this,e,gt(this),t),t)}):this.each(function(){var e,t,n,r;if(a){t=0,n=S(this),r=vt(i);while(e=r[t++])n.hasClass(e)?n.removeClass(e):n.addClass(e)}else void 0!==i&&"boolean"!==o||((e=gt(this))&&Y.set(this,"__className__",e),this.setAttribute&&this.setAttribute("class",e||!1===i?"":Y.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;t=" "+e+" ";while(n=this[r++])if(1===n.nodeType&&-1<(" "+ht(gt(n))+" ").indexOf(t))return!0;return!1}});var yt=/\r/g;S.fn.extend({val:function(n){var r,e,i,t=this[0];return arguments.length?(i=m(n),this.each(function(e){var t;1===this.nodeType&&(null==(t=i?n.call(this,e,S(this).val()):n)?t="":"number"==typeof t?t+="":Array.isArray(t)&&(t=S.map(t,function(e){return null==e?"":e+""})),(r=S.valHooks[this.type]||S.valHooks[this.nodeName.toLowerCase()])&&"set"in r&&void 0!==r.set(this,t,"value")||(this.value=t))})):t?(r=S.valHooks[t.type]||S.valHooks[t.nodeName.toLowerCase()])&&"get"in r&&void 0!==(e=r.get(t,"value"))?e:"string"==typeof(e=t.value)?e.replace(yt,""):null==e?"":e:void 0}}),S.extend({valHooks:{option:{get:function(e){var t=S.find.attr(e,"value");return null!=t?t:ht(S.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a="select-one"===e.type,s=a?null:[],u=a?o+1:i.length;for(r=o<0?u:a?o:0;r<u;r++)if(((n=i[r]).selected||r===o)&&!n.disabled&&(!n.parentNode.disabled||!A(n.parentNode,"optgroup"))){if(t=S(n).val(),a)return t;s.push(t)}return s},set:function(e,t){var n,r,i=e.options,o=S.makeArray(t),a=i.length;while(a--)((r=i[a]).selected=-1<S.inArray(S.valHooks.option.get(r),o))&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),S.each(["radio","checkbox"],function(){S.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=-1<S.inArray(S(e).val(),t)}},y.checkOn||(S.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),y.focusin="onfocusin"in C;var mt=/^(?:focusinfocus|focusoutblur)$/,xt=function(e){e.stopPropagation()};S.extend(S.event,{trigger:function(e,t,n,r){var i,o,a,s,u,l,c,f,p=[n||E],d=v.call(e,"type")?e.type:e,h=v.call(e,"namespace")?e.namespace.split("."):[];if(o=f=a=n=n||E,3!==n.nodeType&&8!==n.nodeType&&!mt.test(d+S.event.triggered)&&(-1<d.indexOf(".")&&(d=(h=d.split(".")).shift(),h.sort()),u=d.indexOf(":")<0&&"on"+d,(e=e[S.expando]?e:new S.Event(d,"object"==typeof e&&e)).isTrigger=r?2:3,e.namespace=h.join("."),e.rnamespace=e.namespace?new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=n),t=null==t?[e]:S.makeArray(t,[e]),c=S.event.special[d]||{},r||!c.trigger||!1!==c.trigger.apply(n,t))){if(!r&&!c.noBubble&&!x(n)){for(s=c.delegateType||d,mt.test(s+d)||(o=o.parentNode);o;o=o.parentNode)p.push(o),a=o;a===(n.ownerDocument||E)&&p.push(a.defaultView||a.parentWindow||C)}i=0;while((o=p[i++])&&!e.isPropagationStopped())f=o,e.type=1<i?s:c.bindType||d,(l=(Y.get(o,"events")||Object.create(null))[e.type]&&Y.get(o,"handle"))&&l.apply(o,t),(l=u&&o[u])&&l.apply&&V(o)&&(e.result=l.apply(o,t),!1===e.result&&e.preventDefault());return e.type=d,r||e.isDefaultPrevented()||c._default&&!1!==c._default.apply(p.pop(),t)||!V(n)||u&&m(n[d])&&!x(n)&&((a=n[u])&&(n[u]=null),S.event.triggered=d,e.isPropagationStopped()&&f.addEventListener(d,xt),n[d](),e.isPropagationStopped()&&f.removeEventListener(d,xt),S.event.triggered=void 0,a&&(n[u]=a)),e.result}},simulate:function(e,t,n){var r=S.extend(new S.Event,n,{type:e,isSimulated:!0});S.event.trigger(r,null,t)}}),S.fn.extend({trigger:function(e,t){return this.each(function(){S.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return S.event.trigger(e,t,n,!0)}}),y.focusin||S.each({focus:"focusin",blur:"focusout"},function(n,r){var i=function(e){S.event.simulate(r,e.target,S.event.fix(e))};S.event.special[r]={setup:function(){var e=this.ownerDocument||this.document||this,t=Y.access(e,r);t||e.addEventListener(n,i,!0),Y.access(e,r,(t||0)+1)},teardown:function(){var e=this.ownerDocument||this.document||this,t=Y.access(e,r)-1;t?Y.access(e,r,t):(e.removeEventListener(n,i,!0),Y.remove(e,r))}}});var bt=C.location,wt={guid:Date.now()},Tt=/\?/;S.parseXML=function(e){var t,n;if(!e||"string"!=typeof e)return null;try{t=(new C.DOMParser).parseFromString(e,"text/xml")}catch(e){}return n=t&&t.getElementsByTagName("parsererror")[0],t&&!n||S.error("Invalid XML: "+(n?S.map(n.childNodes,function(e){return e.textContent}).join("\n"):e)),t};var Ct=/\[\]$/,Et=/\r?\n/g,St=/^(?:submit|button|image|reset|file)$/i,kt=/^(?:input|select|textarea|keygen)/i;function At(n,e,r,i){var t;if(Array.isArray(e))S.each(e,function(e,t){r||Ct.test(n)?i(n,t):At(n+"["+("object"==typeof t&&null!=t?e:"")+"]",t,r,i)});else if(r||"object"!==w(e))i(n,e);else for(t in e)At(n+"["+t+"]",e[t],r,i)}S.param=function(e,t){var n,r=[],i=function(e,t){var n=m(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(null==e)return"";if(Array.isArray(e)||e.jquery&&!S.isPlainObject(e))S.each(e,function(){i(this.name,this.value)});else for(n in e)At(n,e[n],t,i);return r.join("&")},S.fn.extend({serialize:function(){return S.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=S.prop(this,"elements");return e?S.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!S(this).is(":disabled")&&kt.test(this.nodeName)&&!St.test(e)&&(this.checked||!pe.test(e))}).map(function(e,t){var n=S(this).val();return null==n?null:Array.isArray(n)?S.map(n,function(e){return{name:t.name,value:e.replace(Et,"\r\n")}}):{name:t.name,value:n.replace(Et,"\r\n")}}).get()}});var Nt=/%20/g,jt=/#.*$/,Dt=/([?&])_=[^&]*/,qt=/^(.*?):[ \t]*([^\r\n]*)$/gm,Lt=/^(?:GET|HEAD)$/,Ht=/^\/\//,Ot={},Pt={},Rt="*/".concat("*"),Mt=E.createElement("a");function It(o){return function(e,t){"string"!=typeof e&&(t=e,e="*");var n,r=0,i=e.toLowerCase().match(P)||[];if(m(t))while(n=i[r++])"+"===n[0]?(n=n.slice(1)||"*",(o[n]=o[n]||[]).unshift(t)):(o[n]=o[n]||[]).push(t)}}function Wt(t,i,o,a){var s={},u=t===Pt;function l(e){var r;return s[e]=!0,S.each(t[e]||[],function(e,t){var n=t(i,o,a);return"string"!=typeof n||u||s[n]?u?!(r=n):void 0:(i.dataTypes.unshift(n),l(n),!1)}),r}return l(i.dataTypes[0])||!s["*"]&&l("*")}function Ft(e,t){var n,r,i=S.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&S.extend(!0,e,r),e}Mt.href=bt.href,S.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:bt.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(bt.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Rt,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":S.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?Ft(Ft(e,S.ajaxSettings),t):Ft(S.ajaxSettings,e)},ajaxPrefilter:It(Ot),ajaxTransport:It(Pt),ajax:function(e,t){"object"==typeof e&&(t=e,e=void 0),t=t||{};var c,f,p,n,d,r,h,g,i,o,v=S.ajaxSetup({},t),y=v.context||v,m=v.context&&(y.nodeType||y.jquery)?S(y):S.event,x=S.Deferred(),b=S.Callbacks("once memory"),w=v.statusCode||{},a={},s={},u="canceled",T={readyState:0,getResponseHeader:function(e){var t;if(h){if(!n){n={};while(t=qt.exec(p))n[t[1].toLowerCase()+" "]=(n[t[1].toLowerCase()+" "]||[]).concat(t[2])}t=n[e.toLowerCase()+" "]}return null==t?null:t.join(", ")},getAllResponseHeaders:function(){return h?p:null},setRequestHeader:function(e,t){return null==h&&(e=s[e.toLowerCase()]=s[e.toLowerCase()]||e,a[e]=t),this},overrideMimeType:function(e){return null==h&&(v.mimeType=e),this},statusCode:function(e){var t;if(e)if(h)T.always(e[T.status]);else for(t in e)w[t]=[w[t],e[t]];return this},abort:function(e){var t=e||u;return c&&c.abort(t),l(0,t),this}};if(x.promise(T),v.url=((e||v.url||bt.href)+"").replace(Ht,bt.protocol+"//"),v.type=t.method||t.type||v.method||v.type,v.dataTypes=(v.dataType||"*").toLowerCase().match(P)||[""],null==v.crossDomain){r=E.createElement("a");try{r.href=v.url,r.href=r.href,v.crossDomain=Mt.protocol+"//"+Mt.host!=r.protocol+"//"+r.host}catch(e){v.crossDomain=!0}}if(v.data&&v.processData&&"string"!=typeof v.data&&(v.data=S.param(v.data,v.traditional)),Wt(Ot,v,t,T),h)return T;for(i in(g=S.event&&v.global)&&0==S.active++&&S.event.trigger("ajaxStart"),v.type=v.type.toUpperCase(),v.hasContent=!Lt.test(v.type),f=v.url.replace(jt,""),v.hasContent?v.data&&v.processData&&0===(v.contentType||"").indexOf("application/x-www-form-urlencoded")&&(v.data=v.data.replace(Nt,"+")):(o=v.url.slice(f.length),v.data&&(v.processData||"string"==typeof v.data)&&(f+=(Tt.test(f)?"&":"?")+v.data,delete v.data),!1===v.cache&&(f=f.replace(Dt,"$1"),o=(Tt.test(f)?"&":"?")+"_="+wt.guid+++o),v.url=f+o),v.ifModified&&(S.lastModified[f]&&T.setRequestHeader("If-Modified-Since",S.lastModified[f]),S.etag[f]&&T.setRequestHeader("If-None-Match",S.etag[f])),(v.data&&v.hasContent&&!1!==v.contentType||t.contentType)&&T.setRequestHeader("Content-Type",v.contentType),T.setRequestHeader("Accept",v.dataTypes[0]&&v.accepts[v.dataTypes[0]]?v.accepts[v.dataTypes[0]]+("*"!==v.dataTypes[0]?", "+Rt+"; q=0.01":""):v.accepts["*"]),v.headers)T.setRequestHeader(i,v.headers[i]);if(v.beforeSend&&(!1===v.beforeSend.call(y,T,v)||h))return T.abort();if(u="abort",b.add(v.complete),T.done(v.success),T.fail(v.error),c=Wt(Pt,v,t,T)){if(T.readyState=1,g&&m.trigger("ajaxSend",[T,v]),h)return T;v.async&&0<v.timeout&&(d=C.setTimeout(function(){T.abort("timeout")},v.timeout));try{h=!1,c.send(a,l)}catch(e){if(h)throw e;l(-1,e)}}else l(-1,"No Transport");function l(e,t,n,r){var i,o,a,s,u,l=t;h||(h=!0,d&&C.clearTimeout(d),c=void 0,p=r||"",T.readyState=0<e?4:0,i=200<=e&&e<300||304===e,n&&(s=function(e,t,n){var r,i,o,a,s=e.contents,u=e.dataTypes;while("*"===u[0])u.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[i].test(r)){u.unshift(i);break}if(u[0]in n)o=u[0];else{for(i in n){if(!u[0]||e.converters[i+" "+u[0]]){o=i;break}a||(a=i)}o=o||a}if(o)return o!==u[0]&&u.unshift(o),n[o]}(v,T,n)),!i&&-1<S.inArray("script",v.dataTypes)&&S.inArray("json",v.dataTypes)<0&&(v.converters["text script"]=function(){}),s=function(e,t,n,r){var i,o,a,s,u,l={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)l[a.toLowerCase()]=e.converters[a];o=c.shift();while(o)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=o,o=c.shift())if("*"===o)o=u;else if("*"!==u&&u!==o){if(!(a=l[u+" "+o]||l["* "+o]))for(i in l)if((s=i.split(" "))[1]===o&&(a=l[u+" "+s[0]]||l["* "+s[0]])){!0===a?a=l[i]:!0!==l[i]&&(o=s[0],c.unshift(s[1]));break}if(!0!==a)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(e){return{state:"parsererror",error:a?e:"No conversion from "+u+" to "+o}}}return{state:"success",data:t}}(v,s,T,i),i?(v.ifModified&&((u=T.getResponseHeader("Last-Modified"))&&(S.lastModified[f]=u),(u=T.getResponseHeader("etag"))&&(S.etag[f]=u)),204===e||"HEAD"===v.type?l="nocontent":304===e?l="notmodified":(l=s.state,o=s.data,i=!(a=s.error))):(a=l,!e&&l||(l="error",e<0&&(e=0))),T.status=e,T.statusText=(t||l)+"",i?x.resolveWith(y,[o,l,T]):x.rejectWith(y,[T,l,a]),T.statusCode(w),w=void 0,g&&m.trigger(i?"ajaxSuccess":"ajaxError",[T,v,i?o:a]),b.fireWith(y,[T,l]),g&&(m.trigger("ajaxComplete",[T,v]),--S.active||S.event.trigger("ajaxStop")))}return T},getJSON:function(e,t,n){return S.get(e,t,n,"json")},getScript:function(e,t){return S.get(e,void 0,t,"script")}}),S.each(["get","post"],function(e,i){S[i]=function(e,t,n,r){return m(t)&&(r=r||n,n=t,t=void 0),S.ajax(S.extend({url:e,type:i,dataType:r,data:t,success:n},S.isPlainObject(e)&&e))}}),S.ajaxPrefilter(function(e){var t;for(t in e.headers)"content-type"===t.toLowerCase()&&(e.contentType=e.headers[t]||"")}),S._evalUrl=function(e,t,n){return S.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},dataFilter:function(e){S.globalEval(e,t,n)}})},S.fn.extend({wrapAll:function(e){var t;return this[0]&&(m(e)&&(e=e.call(this[0])),t=S(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstElementChild)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(n){return m(n)?this.each(function(e){S(this).wrapInner(n.call(this,e))}):this.each(function(){var e=S(this),t=e.contents();t.length?t.wrapAll(n):e.append(n)})},wrap:function(t){var n=m(t);return this.each(function(e){S(this).wrapAll(n?t.call(this,e):t)})},unwrap:function(e){return this.parent(e).not("body").each(function(){S(this).replaceWith(this.childNodes)}),this}}),S.expr.pseudos.hidden=function(e){return!S.expr.pseudos.visible(e)},S.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},S.ajaxSettings.xhr=function(){try{return new C.XMLHttpRequest}catch(e){}};var Bt={0:200,1223:204},$t=S.ajaxSettings.xhr();y.cors=!!$t&&"withCredentials"in $t,y.ajax=$t=!!$t,S.ajaxTransport(function(i){var o,a;if(y.cors||$t&&!i.crossDomain)return{send:function(e,t){var n,r=i.xhr();if(r.open(i.type,i.url,i.async,i.username,i.password),i.xhrFields)for(n in i.xhrFields)r[n]=i.xhrFields[n];for(n in i.mimeType&&r.overrideMimeType&&r.overrideMimeType(i.mimeType),i.crossDomain||e["X-Requested-With"]||(e["X-Requested-With"]="XMLHttpRequest"),e)r.setRequestHeader(n,e[n]);o=function(e){return function(){o&&(o=a=r.onload=r.onerror=r.onabort=r.ontimeout=r.onreadystatechange=null,"abort"===e?r.abort():"error"===e?"number"!=typeof r.status?t(0,"error"):t(r.status,r.statusText):t(Bt[r.status]||r.status,r.statusText,"text"!==(r.responseType||"text")||"string"!=typeof r.responseText?{binary:r.response}:{text:r.responseText},r.getAllResponseHeaders()))}},r.onload=o(),a=r.onerror=r.ontimeout=o("error"),void 0!==r.onabort?r.onabort=a:r.onreadystatechange=function(){4===r.readyState&&C.setTimeout(function(){o&&a()})},o=o("abort");try{r.send(i.hasContent&&i.data||null)}catch(e){if(o)throw e}},abort:function(){o&&o()}}}),S.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),S.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return S.globalEval(e),e}}}),S.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),S.ajaxTransport("script",function(n){var r,i;if(n.crossDomain||n.scriptAttrs)return{send:function(e,t){r=S("<script>").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var _t,zt=[],Ut=/(=)\?(?=&|$)|\?\?/;S.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=zt.pop()||S.expando+"_"+wt.guid++;return this[e]=!0,e}}),S.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Ut.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Ut.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Ut,"$1"+r):!1!==e.jsonp&&(e.url+=(Tt.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||S.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?S(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,zt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((_t=E.implementation.createHTMLDocument("").body).innerHTML="<form></form><form></form>",2===_t.childNodes.length),S.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=N.exec(e))?[t.createElement(i[1])]:(i=xe([e],t,o),o&&o.length&&S(o).remove(),S.merge([],i.childNodes)));var r,i,o},S.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1<s&&(r=ht(e.slice(s)),e=e.slice(0,s)),m(t)?(n=t,t=void 0):t&&"object"==typeof t&&(i="POST"),0<a.length&&S.ajax({url:e,type:i||"GET",dataType:"html",data:t}).done(function(e){o=arguments,a.html(r?S("<div>").append(S.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},S.expr.pseudos.animated=function(t){return S.grep(S.timers,function(e){return t===e.elem}).length},S.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=S.css(e,"position"),c=S(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=S.css(e,"top"),u=S.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,S.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},S.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){S.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===S.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===S.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=S(e).offset()).top+=S.css(e,"borderTopWidth",!0),i.left+=S.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-S.css(r,"marginTop",!0),left:t.left-i.left-S.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===S.css(e,"position"))e=e.offsetParent;return e||re})}}),S.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;S.fn[t]=function(e){return $(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),S.each(["top","left"],function(e,n){S.cssHooks[n]=Fe(y.pixelPosition,function(e,t){if(t)return t=We(e,n),Pe.test(t)?S(e).position()[n]+"px":t})}),S.each({Height:"height",Width:"width"},function(a,s){S.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){S.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return $(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?S.css(e,t,i):S.style(e,t,n,i)},s,n?e:void 0,n)}})}),S.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){S.fn[t]=function(e){return this.on(t,e)}}),S.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),S.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){S.fn[n]=function(e,t){return 0<arguments.length?this.on(n,null,e,t):this.trigger(n)}});var Xt=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;S.proxy=function(e,t){var n,r,i;if("string"==typeof t&&(n=e[t],t=e,e=n),m(e))return r=s.call(arguments,2),(i=function(){return e.apply(t||this,r.concat(s.call(arguments)))}).guid=e.guid=e.guid||S.guid++,i},S.holdReady=function(e){e?S.readyWait++:S.ready(!0)},S.isArray=Array.isArray,S.parseJSON=JSON.parse,S.nodeName=A,S.isFunction=m,S.isWindow=x,S.camelCase=X,S.type=w,S.now=Date.now,S.isNumeric=function(e){var t=S.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},S.trim=function(e){return null==e?"":(e+"").replace(Xt,"")},"function"==typeof define&&define.amd&&define("jquery",[],function(){return S});var Vt=C.jQuery,Gt=C.$;return S.noConflict=function(e){return C.$===S&&(C.$=Gt),e&&C.jQuery===S&&(C.jQuery=Vt),S},"undefined"==typeof e&&(C.jQuery=C.$=S),S}); \ No newline at end of file diff --git a/src/assets/assets/js/script.js b/src/assets/assets/js/script.js new file mode 100644 index 0000000..2a671a5 --- /dev/null +++ b/src/assets/assets/js/script.js @@ -0,0 +1,149 @@ +'use strict'; + + + +/** + * import json data + */ + +import data from './data.json' assert { type: 'json' }; + + + +/** + * -> select all DOM elements + */ + +const tooltip = document.querySelector("[data-tooltip]"); +const chartBars = document.querySelectorAll("[data-chart-bar]"); + + + +/** + * add event on element + */ + +const addEventOnElem = function (elem, type, callback) { + if (elem.length > 1) { + for (let i = 0; i < elem.length; i++) { + elem[i].addEventListener(type, callback); + } + } else { + elem.addEventListener(type, callback); + } +} + + + +/** + * -> get the max day amount from data + */ + +let maxDayAmount = 0; + +for (let i = 0; i < data.length; i++) { + if (data[i].amount > maxDayAmount) { + maxDayAmount = data[i].amount; + } +} + + + +/** + * -> get chart bars height as array + * -> set the height of all bars in chart + */ + +const setChartBarsHeight = function (height) { + for (let i = 0; i < height.length; i++) { + chartBars[i].style.transform = `scaleY(${height[i] / 100})`; + } +} + + + +/** + * -> get the day amount from data + * -> find the percentage of every number + * -> push all number in chartBarsHeight + */ + +const charBarsHeight = []; + +for (let i = 0; i < data.length; i++) { + const dayAmount = data[i].amount; + const percentOfNum = dayAmount / maxDayAmount * 100; + charBarsHeight.push(percentOfNum); +} + +setChartBarsHeight(charBarsHeight); + + + +/** + * -> get top, left, and chart bar width + * -> get tooltip height + * -> set the gap between chart bar and tooltip + * -> set the tooltip position + */ + +const setTooltipPos = function (top, left, chartBarWidth) { + const tooltipHeight = tooltip.offsetHeight; + const gap = 8; + + tooltip.style.top = `${top - tooltipHeight - gap}px`; + tooltip.style.left = `${left + chartBarWidth / 2}px`; +} + + + +/** + * when chart bar is hover + * -> add active class in tooltip + * -> get chart bar top position from window + * -> get chart bar left position from window + * -> get chart bar width + * -> call setTooltipPos and pass the chart bar top, + * left position and width + */ + +const chartBarOnHover = function () { + tooltip.classList.add("active"); + + const barTopPos = this.getBoundingClientRect().top; + const barLeftPos = this.getBoundingClientRect().left; + const barWidth = this.offsetWidth; + + setTooltipPos(barTopPos, barLeftPos, barWidth); +} + +addEventOnElem(chartBars, "mouseover", chartBarOnHover); + + + +/** + * -> hide tooltip when leave cursor from chart bar + */ + +const hideTooltip = function () { + tooltip.classList.remove("active"); +} + +addEventOnElem(chartBars, "mouseleave", hideTooltip); + + + +/** + * -> add tooltip value when hover on any bar chart + */ + +const addTooltipValue = function () { + for (let i = 0; i < data.length; i++) { + if (data[i].server === this.dataset.chartBar) { + tooltip.innerHTML = data[i].amount.toString(); + break; + } + } +} + +addEventOnElem(chartBars, "mouseover", addTooltipValue); \ No newline at end of file diff --git a/src/assets/css/index.css b/src/assets/css/index.css new file mode 100644 index 0000000..9e447fb --- /dev/null +++ b/src/assets/css/index.css @@ -0,0 +1,235 @@ +@charset "utf-8"; + +/* 统一板块宽度和左右居中 */ + +.banner_con, +.news_con, +.case_con, +.links_con, +.footer_con { + width: 1002px; + margin: 0 auto; +} + +#banner { + height: 465px; + background: gray url("../images/banner1_02_02.jpg") no-repeat center; +} + +#banner .banner_con { + height: 465px; + /* background: pink; */ + margin: 0 auto; +} + +.news_con { + height: 243px; + background: white; +} + +.news_title { + /* background: cadetblue; */ + font-size: 18px; + color: #3f434f; + line-height: 18px; + padding-top: 36px; +} + +.news_list { + /* background: cornflowerblue; */ + margin-top: 23px; +} + +.news_list li { + width: 437px; + height: 25px; + background: url("../images/ico_05.jpg") no-repeat left; + padding-left: 14px; + /* margin-top: 23px;不能给li加哦 要给他爹,不然每个儿子顶部都会空出来*/ +} + +.news_list li a { + float: left; + font-size: 12px; + color: #565656; + line-height: 25px; +} + +.news_list li span { + float: right; + color: #9a9a9a; + font-size: 12px; +} + +.news_l { + width: 480px; + height: 243px; + /* background: rebeccapurple; */ + float: left; + padding-left: 21px; +} + +.news_c { + width: 194px; + height: 243px; + background: #f1f1f1; + float: left; + padding: 0 27px 0 20px; +} + +.news_c .txt1 { + font-size: 12px; + color: #555555; + line-height: 25px; + margin-top: 34px; + /* 行高自己去量哦 */ +} + +.news_c .txt2 { + font-size: 12px; + color: #979797; + line-height: 25px; + margin-top: 15 px; + /* 行高自己去量哦 */ +} + +.news_r { + width: 180px; + height: 243px; + background: #fbfbfb url("../images/ma_05.jpg") no-repeat right bottom; + float: left; + padding: 0 38px 0 24px; +} + +.news_r .txt3 { + font-size: 12px; + color: #585858; + line-height: 24px; + margin: 21px 0 22px 0; +} + +.case_con { + height: 304px; + /* background: goldenrod; */ +} + +.case_con h3 { + font-size: 18px; + color: #3f434f; + /* background: pink; */ + padding: 28px 0 18px 22px; +} + +.case_con .case_box { + height: 240px; + /* background: orange; */ +} + +.case_box dl { + width: 210px; + /* 这是由图片尺寸为210得出的,这样文本就会屈居于一处 */ + /* background: burlywood; */ + float: left; + margin: 0 20px; +} + + +/* 这里很重要!一定要设置宽高,也就是图片尺寸得出,这样以后图片更换,结构就不会乱! */ + +.case_box dl dt { + width: 190px; + height: 190px; +} + +.case_box dl dd { + font-size: 24px; + color: #4f4f4f; + line-height: 24px; + margin-top: 13px; + float: center; + left: 10px; +} + + +/* 上面给dt这个容器指定了宽高,现在让img跟随这个容器的宽高!! */ + +.case_box dl dt img { + width: 100%; + height: 100%; +} + +#links { + background: #e5e5e5; +} + +.links_con { + height: 250px; + /* */ +} + +.links_con .links_title { + color: #5d5d5d; + line-height: 16px; + border-bottom: 1px solid #c1c1c1; + padding: 31px 0 11px 13px; +} + +.links_con .links_l { + width: 452px; + height: 250px; + background: #e5e5e5; + float: left; + margin-left: 20px; +} + +.links_con .links_list { + /* background: cornsilk; */ + height: 170px; + padding-left: 5px; + padding-top: 15px; +} + +.links_con .links_list li { + width: 136px; + height: 24px; + background: url("../images/btn_img_13.jpg") no-repeat left center; + font-size: 12px; + line-height: 24px; + padding-left: 13px; + float: left; +} + +.links_con .links_list li a { + color: #5f5f5f; + white-space:nowrap; +} + +.links_con .links_c { + width: 153px; + height: 250px; + background: #e5e5e5; + float: left; + margin: 0 50px; +} +.links_con .links_a { + width: 265px; + height: 24px; + font-size: 14px; + color: #8f8585; +} + +.links_con .links_c .links_list li { + width: 130px; +} + +.links_con .links_r { + width: 256px; + height: 250px; + background: #e5e5e5; + float: left; +} + +.links_con .links_r .map { + text-align: center; + padding-top: 11px; +} \ No newline at end of file diff --git a/src/assets/css/msgList.css b/src/assets/css/msgList.css new file mode 100644 index 0000000..e69de29 diff --git a/src/assets/css/public.css b/src/assets/css/public.css new file mode 100644 index 0000000..2a97d43 --- /dev/null +++ b/src/assets/css/public.css @@ -0,0 +1,138 @@ +@charset "utf-8"; + +/* 公共区域版心宽度一样,左右居中 */ + + +/* .header-wrap { + width: 1100px; + height: 62px; + margin: 0 auto; +} */ + +.header_con { + width: 1002px; + height: 100px; + /* background: pink; */ + /* 左右居中 */ + margin: 0 auto; +} + +.header_con h1 { + width: 604px; + height: 66px; + /* background: orange; */ + float: left; + padding: 34px 0 0 20px; +} + +.header_con form { + width: 227px; + height: 61px; + /* background: orangered; */ + float: left; + padding-top: 39px; + padding-right: 21px; +} + +.header_con .search { + width: 195px; + height: 26px; + background: #f1f1f1; + border: 1px solid #e5e5e5; + /* 清除右侧边框 */ + border-right: none; + float: left; + color: #888888; +} + +.header_con .btn { + width: 30px; + height: 26px; + border: none; + background: #f1f1f1 url("../images/search_03.jpg") no-repeat center; +} + +.header_con form div { + width: 30px; + height: 26px; + border: 1px solid #e5e5e5; + border-left: none; + float: left; + /* 给btn套盒子的时候也要加浮动 */ +} + +#nav { + height: 58px; + background: black; +} + +#nav .nav_con { + width: 1002px; + height: 58px; + background: black; + margin: 0 auto; +} + + +/* 导航横向排列 */ + +#nav .nav_con li { + width: 498px; + height: 58px; + float: left; + background: black; + /* 左右居中 */ + text-align: center; + /* 上下居中 */ + line-height: 58px; + border-left: 1px solid #4a4a4a; + font-size: 12px; +} + +.nav_con li a { + color: white; +} + +.margin-left { + margin-left: 25px; + border-left: none!important; +} + + +/* 公共样式的footer */ + +.footer_con { + height: 82px; + /* background: #cccccc; */ +} + +.footer_con .footer_l { + height: 58px; + float: left; + /* background: red; */ + padding-top: 24px; +} + +.footer_con .footer_l a { + font-size: 12px; + float: left; + color: #868686; + border-right: 1px solid #868686; + /* padding:字体和边框的距离哈 */ + padding: 0 7px; + padding-left: 15px; +} + +.footer_con .footer_l .footer-right { + border-right: none!important; +} + +.footer_con .footer_r { + height: 57px; + color: #8a8a8a; + font-size: 12px; + padding-top: 25px; + /* background: pink; */ + padding-right: 21px; + float: right; +} \ No newline at end of file diff --git a/src/assets/css/rainbow.css b/src/assets/css/rainbow.css new file mode 100644 index 0000000..cba9f83 --- /dev/null +++ b/src/assets/css/rainbow.css @@ -0,0 +1,93 @@ +.loader { + background: #000; + background: radial-gradient(#222, #000); + bottom: 0; + left: 0; + overflow: hidden; + position: fixed; + right: 0; + top: 0; + z-index: 99999; +} + +.loader-inner { + bottom: 0; + height: 60px; + left: 0; + margin: auto; + position: absolute; + right: 0; + top: 0; + width: 100px; +} + +.loader-line-wrap { + animation: + spin 2000ms cubic-bezier(.175, .885, .32, 1.275) infinite +; + box-sizing: border-box; + height: 50px; + left: 0; + overflow: hidden; + position: absolute; + top: 0; + transform-origin: 50% 100%; + width: 100px; +} +.loader-line { + border: 4px solid transparent; + border-radius: 100%; + box-sizing: border-box; + height: 100px; + left: 0; + margin: 0 auto; + position: absolute; + right: 0; + top: 0; + width: 100px; +} +.loader-line-wrap:nth-child(1) { animation-delay: -50ms; } +.loader-line-wrap:nth-child(2) { animation-delay: -100ms; } +.loader-line-wrap:nth-child(3) { animation-delay: -150ms; } +.loader-line-wrap:nth-child(4) { animation-delay: -200ms; } +.loader-line-wrap:nth-child(5) { animation-delay: -250ms; } + +.loader-line-wrap:nth-child(1) .loader-line { + border-color: hsl(0, 80%, 60%); + height: 90px; + width: 90px; + top: 7px; +} +.loader-line-wrap:nth-child(2) .loader-line { + border-color: hsl(60, 80%, 60%); + height: 76px; + width: 76px; + top: 14px; +} +.loader-line-wrap:nth-child(3) .loader-line { + border-color: hsl(120, 80%, 60%); + height: 62px; + width: 62px; + top: 21px; +} +.loader-line-wrap:nth-child(4) .loader-line { + border-color: hsl(180, 80%, 60%); + height: 48px; + width: 48px; + top: 28px; +} +.loader-line-wrap:nth-child(5) .loader-line { + border-color: hsl(240, 80%, 60%); + height: 34px; + width: 34px; + top: 35px; +} + +@keyframes spin { + 0%, 15% { + transform: rotate(0); +} +100% { + transform: rotate(360deg); +} +} \ No newline at end of file diff --git a/src/assets/css/reset.css b/src/assets/css/reset.css new file mode 100644 index 0000000..37f2257 --- /dev/null +++ b/src/assets/css/reset.css @@ -0,0 +1,76 @@ +@charset "utf-8"; + +/* 重置样式表 */ + +* { + margin: 0; + padding: 0; +} + + +/* 统一页面文本 */ + +body { + font-size: 16px; + font-family: "微软雅黑"; +} + + +/* 清除列表符号 */ + +ul, +ol, +li { + list-style: none; +} + + +/* 清除下划线 */ + +u, +a { + text-decoration: none; +} + + +/* 清除倾斜 */ + +i, +em { + font-style: normal; +} + + +/* 清除加粗 */ + +b, +strong { + font-weight: normal; +} + + +/* 清除文本默认大小和加粗 */ + +h1, +h2, +h3, +h4, +h5, +h6 { + font-size: 16px; + font-weight: normal; +} + + +/* 边框清零 */ + +img { + border: none; +} + + +/* 清除聚焦时候的边框 */ + +input { + outline: none; +} \ No newline at end of file diff --git a/src/assets/echarts.js b/src/assets/echarts.js new file mode 100644 index 0000000..f3d8bbf --- /dev/null +++ b/src/assets/echarts.js @@ -0,0 +1,85683 @@ + +/* +* Licensed to the Apache Software Foundation (ASF) under one +* or more contributor license agreements. See the NOTICE file +* distributed with this work for additional information +* regarding copyright ownership. The ASF licenses this file +* to you under the Apache License, Version 2.0 (the +* "License"); you may not use this file except in compliance +* with the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. See the License for the +* specific language governing permissions and limitations +* under the License. +*/ + +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) : + typeof define === 'function' && define.amd ? define(['exports'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.echarts = {})); +}(this, (function (exports) { 'use strict'; + + /*! ***************************************************************************** + 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. + ***************************************************************************** */ + /* global Reflect, Promise */ + + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + + function __extends(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + } + + var Browser = (function () { + function Browser() { + this.firefox = false; + this.ie = false; + this.edge = false; + this.newEdge = false; + this.weChat = false; + } + return Browser; + }()); + var Env = (function () { + function Env() { + this.browser = new Browser(); + this.node = false; + this.wxa = false; + this.worker = false; + this.svgSupported = false; + this.touchEventsSupported = false; + this.pointerEventsSupported = false; + this.domSupported = false; + this.transformSupported = false; + this.transform3dSupported = false; + this.hasGlobalWindow = typeof window !== 'undefined'; + } + return Env; + }()); + var env = new Env(); + if (typeof wx === 'object' && typeof wx.getSystemInfoSync === 'function') { + env.wxa = true; + env.touchEventsSupported = true; + } + else if (typeof document === 'undefined' && typeof self !== 'undefined') { + env.worker = true; + } + else if (typeof navigator === 'undefined' + || navigator.userAgent.indexOf('Node.js') === 0) { + env.node = true; + env.svgSupported = true; + } + else { + detect(navigator.userAgent, env); + } + function detect(ua, env) { + var browser = env.browser; + var firefox = ua.match(/Firefox\/([\d.]+)/); + var ie = ua.match(/MSIE\s([\d.]+)/) + || ua.match(/Trident\/.+?rv:(([\d.]+))/); + var edge = ua.match(/Edge?\/([\d.]+)/); + var weChat = (/micromessenger/i).test(ua); + if (firefox) { + browser.firefox = true; + browser.version = firefox[1]; + } + if (ie) { + browser.ie = true; + browser.version = ie[1]; + } + if (edge) { + browser.edge = true; + browser.version = edge[1]; + browser.newEdge = +edge[1].split('.')[0] > 18; + } + if (weChat) { + browser.weChat = true; + } + env.svgSupported = typeof SVGRect !== 'undefined'; + env.touchEventsSupported = 'ontouchstart' in window && !browser.ie && !browser.edge; + env.pointerEventsSupported = 'onpointerdown' in window + && (browser.edge || (browser.ie && +browser.version >= 11)); + env.domSupported = typeof document !== 'undefined'; + var style = document.documentElement.style; + env.transform3dSupported = ((browser.ie && 'transition' in style) + || browser.edge + || (('WebKitCSSMatrix' in window) && ('m11' in new WebKitCSSMatrix())) + || 'MozPerspective' in style) + && !('OTransition' in style); + env.transformSupported = env.transform3dSupported + || (browser.ie && +browser.version >= 9); + } + + var DEFAULT_FONT_SIZE = 12; + var DEFAULT_FONT_FAMILY = 'sans-serif'; + var DEFAULT_FONT = DEFAULT_FONT_SIZE + "px " + DEFAULT_FONT_FAMILY; + var OFFSET = 20; + var SCALE = 100; + var defaultWidthMapStr = "007LLmW'55;N0500LLLLLLLLLL00NNNLzWW\\\\WQb\\0FWLg\\bWb\\WQ\\WrWWQ000CL5LLFLL0LL**F*gLLLL5F0LF\\FFF5.5N"; + function getTextWidthMap(mapStr) { + var map = {}; + if (typeof JSON === 'undefined') { + return map; + } + for (var i = 0; i < mapStr.length; i++) { + var char = String.fromCharCode(i + 32); + var size = (mapStr.charCodeAt(i) - OFFSET) / SCALE; + map[char] = size; + } + return map; + } + var DEFAULT_TEXT_WIDTH_MAP = getTextWidthMap(defaultWidthMapStr); + var platformApi = { + createCanvas: function () { + return typeof document !== 'undefined' + && document.createElement('canvas'); + }, + measureText: (function () { + var _ctx; + var _cachedFont; + return function (text, font) { + if (!_ctx) { + var canvas = platformApi.createCanvas(); + _ctx = canvas && canvas.getContext('2d'); + } + if (_ctx) { + if (_cachedFont !== font) { + _cachedFont = _ctx.font = font || DEFAULT_FONT; + } + return _ctx.measureText(text); + } + else { + text = text || ''; + font = font || DEFAULT_FONT; + var res = /(\d+)px/.exec(font); + var fontSize = res && +res[1] || DEFAULT_FONT_SIZE; + var width = 0; + if (font.indexOf('mono') >= 0) { + width = fontSize * text.length; + } + else { + for (var i = 0; i < text.length; i++) { + var preCalcWidth = DEFAULT_TEXT_WIDTH_MAP[text[i]]; + width += preCalcWidth == null ? fontSize : (preCalcWidth * fontSize); + } + } + return { width: width }; + } + }; + })(), + loadImage: function (src, onload, onerror) { + var image = new Image(); + image.onload = onload; + image.onerror = onerror; + image.src = src; + return image; + } + }; + function setPlatformAPI(newPlatformApis) { + for (var key in platformApi) { + if (newPlatformApis[key]) { + platformApi[key] = newPlatformApis[key]; + } + } + } + + var BUILTIN_OBJECT = reduce([ + 'Function', + 'RegExp', + 'Date', + 'Error', + 'CanvasGradient', + 'CanvasPattern', + 'Image', + 'Canvas' + ], function (obj, val) { + obj['[object ' + val + ']'] = true; + return obj; + }, {}); + var TYPED_ARRAY = reduce([ + 'Int8', + 'Uint8', + 'Uint8Clamped', + 'Int16', + 'Uint16', + 'Int32', + 'Uint32', + 'Float32', + 'Float64' + ], function (obj, val) { + obj['[object ' + val + 'Array]'] = true; + return obj; + }, {}); + var objToString = Object.prototype.toString; + var arrayProto = Array.prototype; + var nativeForEach = arrayProto.forEach; + var nativeFilter = arrayProto.filter; + var nativeSlice = arrayProto.slice; + var nativeMap = arrayProto.map; + var ctorFunction = function () { }.constructor; + var protoFunction = ctorFunction ? ctorFunction.prototype : null; + var protoKey = '__proto__'; + var idStart = 0x0907; + function guid() { + return idStart++; + } + function logError() { + var args = []; + for (var _i = 0; _i < arguments.length; _i++) { + args[_i] = arguments[_i]; + } + if (typeof console !== 'undefined') { + console.error.apply(console, args); + } + } + function clone(source) { + if (source == null || typeof source !== 'object') { + return source; + } + var result = source; + var typeStr = objToString.call(source); + if (typeStr === '[object Array]') { + if (!isPrimitive(source)) { + result = []; + for (var i = 0, len = source.length; i < len; i++) { + result[i] = clone(source[i]); + } + } + } + else if (TYPED_ARRAY[typeStr]) { + if (!isPrimitive(source)) { + var Ctor = source.constructor; + if (Ctor.from) { + result = Ctor.from(source); + } + else { + result = new Ctor(source.length); + for (var i = 0, len = source.length; i < len; i++) { + result[i] = source[i]; + } + } + } + } + else if (!BUILTIN_OBJECT[typeStr] && !isPrimitive(source) && !isDom(source)) { + result = {}; + for (var key in source) { + if (source.hasOwnProperty(key) && key !== protoKey) { + result[key] = clone(source[key]); + } + } + } + return result; + } + function merge(target, source, overwrite) { + if (!isObject(source) || !isObject(target)) { + return overwrite ? clone(source) : target; + } + for (var key in source) { + if (source.hasOwnProperty(key) && key !== protoKey) { + var targetProp = target[key]; + var sourceProp = source[key]; + if (isObject(sourceProp) + && isObject(targetProp) + && !isArray(sourceProp) + && !isArray(targetProp) + && !isDom(sourceProp) + && !isDom(targetProp) + && !isBuiltInObject(sourceProp) + && !isBuiltInObject(targetProp) + && !isPrimitive(sourceProp) + && !isPrimitive(targetProp)) { + merge(targetProp, sourceProp, overwrite); + } + else if (overwrite || !(key in target)) { + target[key] = clone(source[key]); + } + } + } + return target; + } + function mergeAll(targetAndSources, overwrite) { + var result = targetAndSources[0]; + for (var i = 1, len = targetAndSources.length; i < len; i++) { + result = merge(result, targetAndSources[i], overwrite); + } + return result; + } + function extend(target, source) { + if (Object.assign) { + Object.assign(target, source); + } + else { + for (var key in source) { + if (source.hasOwnProperty(key) && key !== protoKey) { + target[key] = source[key]; + } + } + } + return target; + } + function defaults(target, source, overlay) { + var keysArr = keys(source); + for (var i = 0; i < keysArr.length; i++) { + var key = keysArr[i]; + if ((overlay ? source[key] != null : target[key] == null)) { + target[key] = source[key]; + } + } + return target; + } + var createCanvas = platformApi.createCanvas; + function indexOf(array, value) { + if (array) { + if (array.indexOf) { + return array.indexOf(value); + } + for (var i = 0, len = array.length; i < len; i++) { + if (array[i] === value) { + return i; + } + } + } + return -1; + } + function inherits(clazz, baseClazz) { + var clazzPrototype = clazz.prototype; + function F() { } + F.prototype = baseClazz.prototype; + clazz.prototype = new F(); + for (var prop in clazzPrototype) { + if (clazzPrototype.hasOwnProperty(prop)) { + clazz.prototype[prop] = clazzPrototype[prop]; + } + } + clazz.prototype.constructor = clazz; + clazz.superClass = baseClazz; + } + function mixin(target, source, override) { + target = 'prototype' in target ? target.prototype : target; + source = 'prototype' in source ? source.prototype : source; + if (Object.getOwnPropertyNames) { + var keyList = Object.getOwnPropertyNames(source); + for (var i = 0; i < keyList.length; i++) { + var key = keyList[i]; + if (key !== 'constructor') { + if ((override ? source[key] != null : target[key] == null)) { + target[key] = source[key]; + } + } + } + } + else { + defaults(target, source, override); + } + } + function isArrayLike(data) { + if (!data) { + return false; + } + if (typeof data === 'string') { + return false; + } + return typeof data.length === 'number'; + } + function each(arr, cb, context) { + if (!(arr && cb)) { + return; + } + if (arr.forEach && arr.forEach === nativeForEach) { + arr.forEach(cb, context); + } + else if (arr.length === +arr.length) { + for (var i = 0, len = arr.length; i < len; i++) { + cb.call(context, arr[i], i, arr); + } + } + else { + for (var key in arr) { + if (arr.hasOwnProperty(key)) { + cb.call(context, arr[key], key, arr); + } + } + } + } + function map(arr, cb, context) { + if (!arr) { + return []; + } + if (!cb) { + return slice(arr); + } + if (arr.map && arr.map === nativeMap) { + return arr.map(cb, context); + } + else { + var result = []; + for (var i = 0, len = arr.length; i < len; i++) { + result.push(cb.call(context, arr[i], i, arr)); + } + return result; + } + } + function reduce(arr, cb, memo, context) { + if (!(arr && cb)) { + return; + } + for (var i = 0, len = arr.length; i < len; i++) { + memo = cb.call(context, memo, arr[i], i, arr); + } + return memo; + } + function filter(arr, cb, context) { + if (!arr) { + return []; + } + if (!cb) { + return slice(arr); + } + if (arr.filter && arr.filter === nativeFilter) { + return arr.filter(cb, context); + } + else { + var result = []; + for (var i = 0, len = arr.length; i < len; i++) { + if (cb.call(context, arr[i], i, arr)) { + result.push(arr[i]); + } + } + return result; + } + } + function find(arr, cb, context) { + if (!(arr && cb)) { + return; + } + for (var i = 0, len = arr.length; i < len; i++) { + if (cb.call(context, arr[i], i, arr)) { + return arr[i]; + } + } + } + function keys(obj) { + if (!obj) { + return []; + } + if (Object.keys) { + return Object.keys(obj); + } + var keyList = []; + for (var key in obj) { + if (obj.hasOwnProperty(key)) { + keyList.push(key); + } + } + return keyList; + } + function bindPolyfill(func, context) { + var args = []; + for (var _i = 2; _i < arguments.length; _i++) { + args[_i - 2] = arguments[_i]; + } + return function () { + return func.apply(context, args.concat(nativeSlice.call(arguments))); + }; + } + var bind = (protoFunction && isFunction(protoFunction.bind)) + ? protoFunction.call.bind(protoFunction.bind) + : bindPolyfill; + function curry(func) { + var args = []; + for (var _i = 1; _i < arguments.length; _i++) { + args[_i - 1] = arguments[_i]; + } + return function () { + return func.apply(this, args.concat(nativeSlice.call(arguments))); + }; + } + function isArray(value) { + if (Array.isArray) { + return Array.isArray(value); + } + return objToString.call(value) === '[object Array]'; + } + function isFunction(value) { + return typeof value === 'function'; + } + function isString(value) { + return typeof value === 'string'; + } + function isStringSafe(value) { + return objToString.call(value) === '[object String]'; + } + function isNumber(value) { + return typeof value === 'number'; + } + function isObject(value) { + var type = typeof value; + return type === 'function' || (!!value && type === 'object'); + } + function isBuiltInObject(value) { + return !!BUILTIN_OBJECT[objToString.call(value)]; + } + function isTypedArray(value) { + return !!TYPED_ARRAY[objToString.call(value)]; + } + function isDom(value) { + return typeof value === 'object' + && typeof value.nodeType === 'number' + && typeof value.ownerDocument === 'object'; + } + function isGradientObject(value) { + return value.colorStops != null; + } + function isImagePatternObject(value) { + return value.image != null; + } + function isRegExp(value) { + return objToString.call(value) === '[object RegExp]'; + } + function eqNaN(value) { + return value !== value; + } + function retrieve() { + var args = []; + for (var _i = 0; _i < arguments.length; _i++) { + args[_i] = arguments[_i]; + } + for (var i = 0, len = args.length; i < len; i++) { + if (args[i] != null) { + return args[i]; + } + } + } + function retrieve2(value0, value1) { + return value0 != null + ? value0 + : value1; + } + function retrieve3(value0, value1, value2) { + return value0 != null + ? value0 + : value1 != null + ? value1 + : value2; + } + function slice(arr) { + var args = []; + for (var _i = 1; _i < arguments.length; _i++) { + args[_i - 1] = arguments[_i]; + } + return nativeSlice.apply(arr, args); + } + function normalizeCssArray(val) { + if (typeof (val) === 'number') { + return [val, val, val, val]; + } + var len = val.length; + if (len === 2) { + return [val[0], val[1], val[0], val[1]]; + } + else if (len === 3) { + return [val[0], val[1], val[2], val[1]]; + } + return val; + } + function assert(condition, message) { + if (!condition) { + throw new Error(message); + } + } + function trim(str) { + if (str == null) { + return null; + } + else if (typeof str.trim === 'function') { + return str.trim(); + } + else { + return str.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, ''); + } + } + var primitiveKey = '__ec_primitive__'; + function setAsPrimitive(obj) { + obj[primitiveKey] = true; + } + function isPrimitive(obj) { + return obj[primitiveKey]; + } + var MapPolyfill = (function () { + function MapPolyfill() { + this.data = {}; + } + MapPolyfill.prototype["delete"] = function (key) { + var existed = this.has(key); + if (existed) { + delete this.data[key]; + } + return existed; + }; + MapPolyfill.prototype.has = function (key) { + return this.data.hasOwnProperty(key); + }; + MapPolyfill.prototype.get = function (key) { + return this.data[key]; + }; + MapPolyfill.prototype.set = function (key, value) { + this.data[key] = value; + return this; + }; + MapPolyfill.prototype.keys = function () { + return keys(this.data); + }; + MapPolyfill.prototype.forEach = function (callback) { + var data = this.data; + for (var key in data) { + if (data.hasOwnProperty(key)) { + callback(data[key], key); + } + } + }; + return MapPolyfill; + }()); + var isNativeMapSupported = typeof Map === 'function'; + function maybeNativeMap() { + return (isNativeMapSupported ? new Map() : new MapPolyfill()); + } + var HashMap = (function () { + function HashMap(obj) { + var isArr = isArray(obj); + this.data = maybeNativeMap(); + var thisMap = this; + (obj instanceof HashMap) + ? obj.each(visit) + : (obj && each(obj, visit)); + function visit(value, key) { + isArr ? thisMap.set(value, key) : thisMap.set(key, value); + } + } + HashMap.prototype.hasKey = function (key) { + return this.data.has(key); + }; + HashMap.prototype.get = function (key) { + return this.data.get(key); + }; + HashMap.prototype.set = function (key, value) { + this.data.set(key, value); + return value; + }; + HashMap.prototype.each = function (cb, context) { + this.data.forEach(function (value, key) { + cb.call(context, value, key); + }); + }; + HashMap.prototype.keys = function () { + var keys = this.data.keys(); + return isNativeMapSupported + ? Array.from(keys) + : keys; + }; + HashMap.prototype.removeKey = function (key) { + this.data["delete"](key); + }; + return HashMap; + }()); + function createHashMap(obj) { + return new HashMap(obj); + } + function concatArray(a, b) { + var newArray = new a.constructor(a.length + b.length); + for (var i = 0; i < a.length; i++) { + newArray[i] = a[i]; + } + var offset = a.length; + for (var i = 0; i < b.length; i++) { + newArray[i + offset] = b[i]; + } + return newArray; + } + function createObject(proto, properties) { + var obj; + if (Object.create) { + obj = Object.create(proto); + } + else { + var StyleCtor = function () { }; + StyleCtor.prototype = proto; + obj = new StyleCtor(); + } + if (properties) { + extend(obj, properties); + } + return obj; + } + function disableUserSelect(dom) { + var domStyle = dom.style; + domStyle.webkitUserSelect = 'none'; + domStyle.userSelect = 'none'; + domStyle.webkitTapHighlightColor = 'rgba(0,0,0,0)'; + domStyle['-webkit-touch-callout'] = 'none'; + } + function hasOwn(own, prop) { + return own.hasOwnProperty(prop); + } + function noop() { } + var RADIAN_TO_DEGREE = 180 / Math.PI; + + var util = /*#__PURE__*/Object.freeze({ + __proto__: null, + guid: guid, + logError: logError, + clone: clone, + merge: merge, + mergeAll: mergeAll, + extend: extend, + defaults: defaults, + createCanvas: createCanvas, + indexOf: indexOf, + inherits: inherits, + mixin: mixin, + isArrayLike: isArrayLike, + each: each, + map: map, + reduce: reduce, + filter: filter, + find: find, + keys: keys, + bind: bind, + curry: curry, + isArray: isArray, + isFunction: isFunction, + isString: isString, + isStringSafe: isStringSafe, + isNumber: isNumber, + isObject: isObject, + isBuiltInObject: isBuiltInObject, + isTypedArray: isTypedArray, + isDom: isDom, + isGradientObject: isGradientObject, + isImagePatternObject: isImagePatternObject, + isRegExp: isRegExp, + eqNaN: eqNaN, + retrieve: retrieve, + retrieve2: retrieve2, + retrieve3: retrieve3, + slice: slice, + normalizeCssArray: normalizeCssArray, + assert: assert, + trim: trim, + setAsPrimitive: setAsPrimitive, + isPrimitive: isPrimitive, + HashMap: HashMap, + createHashMap: createHashMap, + concatArray: concatArray, + createObject: createObject, + disableUserSelect: disableUserSelect, + hasOwn: hasOwn, + noop: noop, + RADIAN_TO_DEGREE: RADIAN_TO_DEGREE + }); + + function create(x, y) { + if (x == null) { + x = 0; + } + if (y == null) { + y = 0; + } + return [x, y]; + } + function copy(out, v) { + out[0] = v[0]; + out[1] = v[1]; + return out; + } + function clone$1(v) { + return [v[0], v[1]]; + } + function set(out, a, b) { + out[0] = a; + out[1] = b; + return out; + } + function add(out, v1, v2) { + out[0] = v1[0] + v2[0]; + out[1] = v1[1] + v2[1]; + return out; + } + function scaleAndAdd(out, v1, v2, a) { + out[0] = v1[0] + v2[0] * a; + out[1] = v1[1] + v2[1] * a; + return out; + } + function sub(out, v1, v2) { + out[0] = v1[0] - v2[0]; + out[1] = v1[1] - v2[1]; + return out; + } + function len(v) { + return Math.sqrt(lenSquare(v)); + } + var length = len; + function lenSquare(v) { + return v[0] * v[0] + v[1] * v[1]; + } + var lengthSquare = lenSquare; + function mul(out, v1, v2) { + out[0] = v1[0] * v2[0]; + out[1] = v1[1] * v2[1]; + return out; + } + function div(out, v1, v2) { + out[0] = v1[0] / v2[0]; + out[1] = v1[1] / v2[1]; + return out; + } + function dot(v1, v2) { + return v1[0] * v2[0] + v1[1] * v2[1]; + } + function scale(out, v, s) { + out[0] = v[0] * s; + out[1] = v[1] * s; + return out; + } + function normalize(out, v) { + var d = len(v); + if (d === 0) { + out[0] = 0; + out[1] = 0; + } + else { + out[0] = v[0] / d; + out[1] = v[1] / d; + } + return out; + } + function distance(v1, v2) { + return Math.sqrt((v1[0] - v2[0]) * (v1[0] - v2[0]) + + (v1[1] - v2[1]) * (v1[1] - v2[1])); + } + var dist = distance; + function distanceSquare(v1, v2) { + return (v1[0] - v2[0]) * (v1[0] - v2[0]) + + (v1[1] - v2[1]) * (v1[1] - v2[1]); + } + var distSquare = distanceSquare; + function negate(out, v) { + out[0] = -v[0]; + out[1] = -v[1]; + return out; + } + function lerp(out, v1, v2, t) { + out[0] = v1[0] + t * (v2[0] - v1[0]); + out[1] = v1[1] + t * (v2[1] - v1[1]); + return out; + } + function applyTransform(out, v, m) { + var x = v[0]; + var y = v[1]; + out[0] = m[0] * x + m[2] * y + m[4]; + out[1] = m[1] * x + m[3] * y + m[5]; + return out; + } + function min(out, v1, v2) { + out[0] = Math.min(v1[0], v2[0]); + out[1] = Math.min(v1[1], v2[1]); + return out; + } + function max(out, v1, v2) { + out[0] = Math.max(v1[0], v2[0]); + out[1] = Math.max(v1[1], v2[1]); + return out; + } + + var vector = /*#__PURE__*/Object.freeze({ + __proto__: null, + create: create, + copy: copy, + clone: clone$1, + set: set, + add: add, + scaleAndAdd: scaleAndAdd, + sub: sub, + len: len, + length: length, + lenSquare: lenSquare, + lengthSquare: lengthSquare, + mul: mul, + div: div, + dot: dot, + scale: scale, + normalize: normalize, + distance: distance, + dist: dist, + distanceSquare: distanceSquare, + distSquare: distSquare, + negate: negate, + lerp: lerp, + applyTransform: applyTransform, + min: min, + max: max + }); + + var Param = (function () { + function Param(target, e) { + this.target = target; + this.topTarget = e && e.topTarget; + } + return Param; + }()); + var Draggable = (function () { + function Draggable(handler) { + this.handler = handler; + handler.on('mousedown', this._dragStart, this); + handler.on('mousemove', this._drag, this); + handler.on('mouseup', this._dragEnd, this); + } + Draggable.prototype._dragStart = function (e) { + var draggingTarget = e.target; + while (draggingTarget && !draggingTarget.draggable) { + draggingTarget = draggingTarget.parent || draggingTarget.__hostTarget; + } + if (draggingTarget) { + this._draggingTarget = draggingTarget; + draggingTarget.dragging = true; + this._x = e.offsetX; + this._y = e.offsetY; + this.handler.dispatchToElement(new Param(draggingTarget, e), 'dragstart', e.event); + } + }; + Draggable.prototype._drag = function (e) { + var draggingTarget = this._draggingTarget; + if (draggingTarget) { + var x = e.offsetX; + var y = e.offsetY; + var dx = x - this._x; + var dy = y - this._y; + this._x = x; + this._y = y; + draggingTarget.drift(dx, dy, e); + this.handler.dispatchToElement(new Param(draggingTarget, e), 'drag', e.event); + var dropTarget = this.handler.findHover(x, y, draggingTarget).target; + var lastDropTarget = this._dropTarget; + this._dropTarget = dropTarget; + if (draggingTarget !== dropTarget) { + if (lastDropTarget && dropTarget !== lastDropTarget) { + this.handler.dispatchToElement(new Param(lastDropTarget, e), 'dragleave', e.event); + } + if (dropTarget && dropTarget !== lastDropTarget) { + this.handler.dispatchToElement(new Param(dropTarget, e), 'dragenter', e.event); + } + } + } + }; + Draggable.prototype._dragEnd = function (e) { + var draggingTarget = this._draggingTarget; + if (draggingTarget) { + draggingTarget.dragging = false; + } + this.handler.dispatchToElement(new Param(draggingTarget, e), 'dragend', e.event); + if (this._dropTarget) { + this.handler.dispatchToElement(new Param(this._dropTarget, e), 'drop', e.event); + } + this._draggingTarget = null; + this._dropTarget = null; + }; + return Draggable; + }()); + + var Eventful = (function () { + function Eventful(eventProcessors) { + if (eventProcessors) { + this._$eventProcessor = eventProcessors; + } + } + Eventful.prototype.on = function (event, query, handler, context) { + if (!this._$handlers) { + this._$handlers = {}; + } + var _h = this._$handlers; + if (typeof query === 'function') { + context = handler; + handler = query; + query = null; + } + if (!handler || !event) { + return this; + } + var eventProcessor = this._$eventProcessor; + if (query != null && eventProcessor && eventProcessor.normalizeQuery) { + query = eventProcessor.normalizeQuery(query); + } + if (!_h[event]) { + _h[event] = []; + } + for (var i = 0; i < _h[event].length; i++) { + if (_h[event][i].h === handler) { + return this; + } + } + var wrap = { + h: handler, + query: query, + ctx: (context || this), + callAtLast: handler.zrEventfulCallAtLast + }; + var lastIndex = _h[event].length - 1; + var lastWrap = _h[event][lastIndex]; + (lastWrap && lastWrap.callAtLast) + ? _h[event].splice(lastIndex, 0, wrap) + : _h[event].push(wrap); + return this; + }; + Eventful.prototype.isSilent = function (eventName) { + var _h = this._$handlers; + return !_h || !_h[eventName] || !_h[eventName].length; + }; + Eventful.prototype.off = function (eventType, handler) { + var _h = this._$handlers; + if (!_h) { + return this; + } + if (!eventType) { + this._$handlers = {}; + return this; + } + if (handler) { + if (_h[eventType]) { + var newList = []; + for (var i = 0, l = _h[eventType].length; i < l; i++) { + if (_h[eventType][i].h !== handler) { + newList.push(_h[eventType][i]); + } + } + _h[eventType] = newList; + } + if (_h[eventType] && _h[eventType].length === 0) { + delete _h[eventType]; + } + } + else { + delete _h[eventType]; + } + return this; + }; + Eventful.prototype.trigger = function (eventType) { + var args = []; + for (var _i = 1; _i < arguments.length; _i++) { + args[_i - 1] = arguments[_i]; + } + if (!this._$handlers) { + return this; + } + var _h = this._$handlers[eventType]; + var eventProcessor = this._$eventProcessor; + if (_h) { + var argLen = args.length; + var len = _h.length; + for (var i = 0; i < len; i++) { + var hItem = _h[i]; + if (eventProcessor + && eventProcessor.filter + && hItem.query != null + && !eventProcessor.filter(eventType, hItem.query)) { + continue; + } + switch (argLen) { + case 0: + hItem.h.call(hItem.ctx); + break; + case 1: + hItem.h.call(hItem.ctx, args[0]); + break; + case 2: + hItem.h.call(hItem.ctx, args[0], args[1]); + break; + default: + hItem.h.apply(hItem.ctx, args); + break; + } + } + } + eventProcessor && eventProcessor.afterTrigger + && eventProcessor.afterTrigger(eventType); + return this; + }; + Eventful.prototype.triggerWithContext = function (type) { + var args = []; + for (var _i = 1; _i < arguments.length; _i++) { + args[_i - 1] = arguments[_i]; + } + if (!this._$handlers) { + return this; + } + var _h = this._$handlers[type]; + var eventProcessor = this._$eventProcessor; + if (_h) { + var argLen = args.length; + var ctx = args[argLen - 1]; + var len = _h.length; + for (var i = 0; i < len; i++) { + var hItem = _h[i]; + if (eventProcessor + && eventProcessor.filter + && hItem.query != null + && !eventProcessor.filter(type, hItem.query)) { + continue; + } + switch (argLen) { + case 0: + hItem.h.call(ctx); + break; + case 1: + hItem.h.call(ctx, args[0]); + break; + case 2: + hItem.h.call(ctx, args[0], args[1]); + break; + default: + hItem.h.apply(ctx, args.slice(1, argLen - 1)); + break; + } + } + } + eventProcessor && eventProcessor.afterTrigger + && eventProcessor.afterTrigger(type); + return this; + }; + return Eventful; + }()); + + var LN2 = Math.log(2); + function determinant(rows, rank, rowStart, rowMask, colMask, detCache) { + var cacheKey = rowMask + '-' + colMask; + var fullRank = rows.length; + if (detCache.hasOwnProperty(cacheKey)) { + return detCache[cacheKey]; + } + if (rank === 1) { + var colStart = Math.round(Math.log(((1 << fullRank) - 1) & ~colMask) / LN2); + return rows[rowStart][colStart]; + } + var subRowMask = rowMask | (1 << rowStart); + var subRowStart = rowStart + 1; + while (rowMask & (1 << subRowStart)) { + subRowStart++; + } + var sum = 0; + for (var j = 0, colLocalIdx = 0; j < fullRank; j++) { + var colTag = 1 << j; + if (!(colTag & colMask)) { + sum += (colLocalIdx % 2 ? -1 : 1) * rows[rowStart][j] + * determinant(rows, rank - 1, subRowStart, subRowMask, colMask | colTag, detCache); + colLocalIdx++; + } + } + detCache[cacheKey] = sum; + return sum; + } + function buildTransformer(src, dest) { + var mA = [ + [src[0], src[1], 1, 0, 0, 0, -dest[0] * src[0], -dest[0] * src[1]], + [0, 0, 0, src[0], src[1], 1, -dest[1] * src[0], -dest[1] * src[1]], + [src[2], src[3], 1, 0, 0, 0, -dest[2] * src[2], -dest[2] * src[3]], + [0, 0, 0, src[2], src[3], 1, -dest[3] * src[2], -dest[3] * src[3]], + [src[4], src[5], 1, 0, 0, 0, -dest[4] * src[4], -dest[4] * src[5]], + [0, 0, 0, src[4], src[5], 1, -dest[5] * src[4], -dest[5] * src[5]], + [src[6], src[7], 1, 0, 0, 0, -dest[6] * src[6], -dest[6] * src[7]], + [0, 0, 0, src[6], src[7], 1, -dest[7] * src[6], -dest[7] * src[7]] + ]; + var detCache = {}; + var det = determinant(mA, 8, 0, 0, 0, detCache); + if (det === 0) { + return; + } + var vh = []; + for (var i = 0; i < 8; i++) { + for (var j = 0; j < 8; j++) { + vh[j] == null && (vh[j] = 0); + vh[j] += ((i + j) % 2 ? -1 : 1) + * determinant(mA, 7, i === 0 ? 1 : 0, 1 << i, 1 << j, detCache) + / det * dest[i]; + } + } + return function (out, srcPointX, srcPointY) { + var pk = srcPointX * vh[6] + srcPointY * vh[7] + 1; + out[0] = (srcPointX * vh[0] + srcPointY * vh[1] + vh[2]) / pk; + out[1] = (srcPointX * vh[3] + srcPointY * vh[4] + vh[5]) / pk; + }; + } + + var EVENT_SAVED_PROP = '___zrEVENTSAVED'; + var _calcOut = []; + function transformLocalCoord(out, elFrom, elTarget, inX, inY) { + return transformCoordWithViewport(_calcOut, elFrom, inX, inY, true) + && transformCoordWithViewport(out, elTarget, _calcOut[0], _calcOut[1]); + } + function transformCoordWithViewport(out, el, inX, inY, inverse) { + if (el.getBoundingClientRect && env.domSupported && !isCanvasEl(el)) { + var saved = el[EVENT_SAVED_PROP] || (el[EVENT_SAVED_PROP] = {}); + var markers = prepareCoordMarkers(el, saved); + var transformer = preparePointerTransformer(markers, saved, inverse); + if (transformer) { + transformer(out, inX, inY); + return true; + } + } + return false; + } + function prepareCoordMarkers(el, saved) { + var markers = saved.markers; + if (markers) { + return markers; + } + markers = saved.markers = []; + var propLR = ['left', 'right']; + var propTB = ['top', 'bottom']; + for (var i = 0; i < 4; i++) { + var marker = document.createElement('div'); + var stl = marker.style; + var idxLR = i % 2; + var idxTB = (i >> 1) % 2; + stl.cssText = [ + 'position: absolute', + 'visibility: hidden', + 'padding: 0', + 'margin: 0', + 'border-width: 0', + 'user-select: none', + 'width:0', + 'height:0', + propLR[idxLR] + ':0', + propTB[idxTB] + ':0', + propLR[1 - idxLR] + ':auto', + propTB[1 - idxTB] + ':auto', + '' + ].join('!important;'); + el.appendChild(marker); + markers.push(marker); + } + return markers; + } + function preparePointerTransformer(markers, saved, inverse) { + var transformerName = inverse ? 'invTrans' : 'trans'; + var transformer = saved[transformerName]; + var oldSrcCoords = saved.srcCoords; + var srcCoords = []; + var destCoords = []; + var oldCoordTheSame = true; + for (var i = 0; i < 4; i++) { + var rect = markers[i].getBoundingClientRect(); + var ii = 2 * i; + var x = rect.left; + var y = rect.top; + srcCoords.push(x, y); + oldCoordTheSame = oldCoordTheSame && oldSrcCoords && x === oldSrcCoords[ii] && y === oldSrcCoords[ii + 1]; + destCoords.push(markers[i].offsetLeft, markers[i].offsetTop); + } + return (oldCoordTheSame && transformer) + ? transformer + : (saved.srcCoords = srcCoords, + saved[transformerName] = inverse + ? buildTransformer(destCoords, srcCoords) + : buildTransformer(srcCoords, destCoords)); + } + function isCanvasEl(el) { + return el.nodeName.toUpperCase() === 'CANVAS'; + } + var replaceReg = /([&<>"'])/g; + var replaceMap = { + '&': '&amp;', + '<': '&lt;', + '>': '&gt;', + '"': '&quot;', + '\'': '&#39;' + }; + function encodeHTML(source) { + return source == null + ? '' + : (source + '').replace(replaceReg, function (str, c) { + return replaceMap[c]; + }); + } + + var MOUSE_EVENT_REG = /^(?:mouse|pointer|contextmenu|drag|drop)|click/; + var _calcOut$1 = []; + var firefoxNotSupportOffsetXY = env.browser.firefox + && +env.browser.version.split('.')[0] < 39; + function clientToLocal(el, e, out, calculate) { + out = out || {}; + if (calculate) { + calculateZrXY(el, e, out); + } + else if (firefoxNotSupportOffsetXY + && e.layerX != null + && e.layerX !== e.offsetX) { + out.zrX = e.layerX; + out.zrY = e.layerY; + } + else if (e.offsetX != null) { + out.zrX = e.offsetX; + out.zrY = e.offsetY; + } + else { + calculateZrXY(el, e, out); + } + return out; + } + function calculateZrXY(el, e, out) { + if (env.domSupported && el.getBoundingClientRect) { + var ex = e.clientX; + var ey = e.clientY; + if (isCanvasEl(el)) { + var box = el.getBoundingClientRect(); + out.zrX = ex - box.left; + out.zrY = ey - box.top; + return; + } + else { + if (transformCoordWithViewport(_calcOut$1, el, ex, ey)) { + out.zrX = _calcOut$1[0]; + out.zrY = _calcOut$1[1]; + return; + } + } + } + out.zrX = out.zrY = 0; + } + function getNativeEvent(e) { + return e + || window.event; + } + function normalizeEvent(el, e, calculate) { + e = getNativeEvent(e); + if (e.zrX != null) { + return e; + } + var eventType = e.type; + var isTouch = eventType && eventType.indexOf('touch') >= 0; + if (!isTouch) { + clientToLocal(el, e, e, calculate); + var wheelDelta = getWheelDeltaMayPolyfill(e); + e.zrDelta = wheelDelta ? wheelDelta / 120 : -(e.detail || 0) / 3; + } + else { + var touch = eventType !== 'touchend' + ? e.targetTouches[0] + : e.changedTouches[0]; + touch && clientToLocal(el, touch, e, calculate); + } + var button = e.button; + if (e.which == null && button !== undefined && MOUSE_EVENT_REG.test(e.type)) { + e.which = (button & 1 ? 1 : (button & 2 ? 3 : (button & 4 ? 2 : 0))); + } + return e; + } + function getWheelDeltaMayPolyfill(e) { + var rawWheelDelta = e.wheelDelta; + if (rawWheelDelta) { + return rawWheelDelta; + } + var deltaX = e.deltaX; + var deltaY = e.deltaY; + if (deltaX == null || deltaY == null) { + return rawWheelDelta; + } + var delta = deltaY !== 0 ? Math.abs(deltaY) : Math.abs(deltaX); + var sign = deltaY > 0 ? -1 + : deltaY < 0 ? 1 + : deltaX > 0 ? -1 + : 1; + return 3 * delta * sign; + } + function addEventListener(el, name, handler, opt) { + el.addEventListener(name, handler, opt); + } + function removeEventListener(el, name, handler, opt) { + el.removeEventListener(name, handler, opt); + } + var stop = function (e) { + e.preventDefault(); + e.stopPropagation(); + e.cancelBubble = true; + }; + function isMiddleOrRightButtonOnMouseUpDown(e) { + return e.which === 2 || e.which === 3; + } + + var GestureMgr = (function () { + function GestureMgr() { + this._track = []; + } + GestureMgr.prototype.recognize = function (event, target, root) { + this._doTrack(event, target, root); + return this._recognize(event); + }; + GestureMgr.prototype.clear = function () { + this._track.length = 0; + return this; + }; + GestureMgr.prototype._doTrack = function (event, target, root) { + var touches = event.touches; + if (!touches) { + return; + } + var trackItem = { + points: [], + touches: [], + target: target, + event: event + }; + for (var i = 0, len = touches.length; i < len; i++) { + var touch = touches[i]; + var pos = clientToLocal(root, touch, {}); + trackItem.points.push([pos.zrX, pos.zrY]); + trackItem.touches.push(touch); + } + this._track.push(trackItem); + }; + GestureMgr.prototype._recognize = function (event) { + for (var eventName in recognizers) { + if (recognizers.hasOwnProperty(eventName)) { + var gestureInfo = recognizers[eventName](this._track, event); + if (gestureInfo) { + return gestureInfo; + } + } + } + }; + return GestureMgr; + }()); + function dist$1(pointPair) { + var dx = pointPair[1][0] - pointPair[0][0]; + var dy = pointPair[1][1] - pointPair[0][1]; + return Math.sqrt(dx * dx + dy * dy); + } + function center(pointPair) { + return [ + (pointPair[0][0] + pointPair[1][0]) / 2, + (pointPair[0][1] + pointPair[1][1]) / 2 + ]; + } + var recognizers = { + pinch: function (tracks, event) { + var trackLen = tracks.length; + if (!trackLen) { + return; + } + var pinchEnd = (tracks[trackLen - 1] || {}).points; + var pinchPre = (tracks[trackLen - 2] || {}).points || pinchEnd; + if (pinchPre + && pinchPre.length > 1 + && pinchEnd + && pinchEnd.length > 1) { + var pinchScale = dist$1(pinchEnd) / dist$1(pinchPre); + !isFinite(pinchScale) && (pinchScale = 1); + event.pinchScale = pinchScale; + var pinchCenter = center(pinchEnd); + event.pinchX = pinchCenter[0]; + event.pinchY = pinchCenter[1]; + return { + type: 'pinch', + target: tracks[0].target, + event: event + }; + } + } + }; + + function create$1() { + return [1, 0, 0, 1, 0, 0]; + } + function identity(out) { + out[0] = 1; + out[1] = 0; + out[2] = 0; + out[3] = 1; + out[4] = 0; + out[5] = 0; + return out; + } + function copy$1(out, m) { + out[0] = m[0]; + out[1] = m[1]; + out[2] = m[2]; + out[3] = m[3]; + out[4] = m[4]; + out[5] = m[5]; + return out; + } + function mul$1(out, m1, m2) { + var out0 = m1[0] * m2[0] + m1[2] * m2[1]; + var out1 = m1[1] * m2[0] + m1[3] * m2[1]; + var out2 = m1[0] * m2[2] + m1[2] * m2[3]; + var out3 = m1[1] * m2[2] + m1[3] * m2[3]; + var out4 = m1[0] * m2[4] + m1[2] * m2[5] + m1[4]; + var out5 = m1[1] * m2[4] + m1[3] * m2[5] + m1[5]; + out[0] = out0; + out[1] = out1; + out[2] = out2; + out[3] = out3; + out[4] = out4; + out[5] = out5; + return out; + } + function translate(out, a, v) { + out[0] = a[0]; + out[1] = a[1]; + out[2] = a[2]; + out[3] = a[3]; + out[4] = a[4] + v[0]; + out[5] = a[5] + v[1]; + return out; + } + function rotate(out, a, rad, pivot) { + if (pivot === void 0) { pivot = [0, 0]; } + var aa = a[0]; + var ac = a[2]; + var atx = a[4]; + var ab = a[1]; + var ad = a[3]; + var aty = a[5]; + var st = Math.sin(rad); + var ct = Math.cos(rad); + out[0] = aa * ct + ab * st; + out[1] = -aa * st + ab * ct; + out[2] = ac * ct + ad * st; + out[3] = -ac * st + ct * ad; + out[4] = ct * (atx - pivot[0]) + st * (aty - pivot[1]) + pivot[0]; + out[5] = ct * (aty - pivot[1]) - st * (atx - pivot[0]) + pivot[1]; + return out; + } + function scale$1(out, a, v) { + var vx = v[0]; + var vy = v[1]; + out[0] = a[0] * vx; + out[1] = a[1] * vy; + out[2] = a[2] * vx; + out[3] = a[3] * vy; + out[4] = a[4] * vx; + out[5] = a[5] * vy; + return out; + } + function invert(out, a) { + var aa = a[0]; + var ac = a[2]; + var atx = a[4]; + var ab = a[1]; + var ad = a[3]; + var aty = a[5]; + var det = aa * ad - ab * ac; + if (!det) { + return null; + } + det = 1.0 / det; + out[0] = ad * det; + out[1] = -ab * det; + out[2] = -ac * det; + out[3] = aa * det; + out[4] = (ac * aty - ad * atx) * det; + out[5] = (ab * atx - aa * aty) * det; + return out; + } + function clone$2(a) { + var b = create$1(); + copy$1(b, a); + return b; + } + + var matrix = /*#__PURE__*/Object.freeze({ + __proto__: null, + create: create$1, + identity: identity, + copy: copy$1, + mul: mul$1, + translate: translate, + rotate: rotate, + scale: scale$1, + invert: invert, + clone: clone$2 + }); + + var Point = (function () { + function Point(x, y) { + this.x = x || 0; + this.y = y || 0; + } + Point.prototype.copy = function (other) { + this.x = other.x; + this.y = other.y; + return this; + }; + Point.prototype.clone = function () { + return new Point(this.x, this.y); + }; + Point.prototype.set = function (x, y) { + this.x = x; + this.y = y; + return this; + }; + Point.prototype.equal = function (other) { + return other.x === this.x && other.y === this.y; + }; + Point.prototype.add = function (other) { + this.x += other.x; + this.y += other.y; + return this; + }; + Point.prototype.scale = function (scalar) { + this.x *= scalar; + this.y *= scalar; + }; + Point.prototype.scaleAndAdd = function (other, scalar) { + this.x += other.x * scalar; + this.y += other.y * scalar; + }; + Point.prototype.sub = function (other) { + this.x -= other.x; + this.y -= other.y; + return this; + }; + Point.prototype.dot = function (other) { + return this.x * other.x + this.y * other.y; + }; + Point.prototype.len = function () { + return Math.sqrt(this.x * this.x + this.y * this.y); + }; + Point.prototype.lenSquare = function () { + return this.x * this.x + this.y * this.y; + }; + Point.prototype.normalize = function () { + var len = this.len(); + this.x /= len; + this.y /= len; + return this; + }; + Point.prototype.distance = function (other) { + var dx = this.x - other.x; + var dy = this.y - other.y; + return Math.sqrt(dx * dx + dy * dy); + }; + Point.prototype.distanceSquare = function (other) { + var dx = this.x - other.x; + var dy = this.y - other.y; + return dx * dx + dy * dy; + }; + Point.prototype.negate = function () { + this.x = -this.x; + this.y = -this.y; + return this; + }; + Point.prototype.transform = function (m) { + if (!m) { + return; + } + var x = this.x; + var y = this.y; + this.x = m[0] * x + m[2] * y + m[4]; + this.y = m[1] * x + m[3] * y + m[5]; + return this; + }; + Point.prototype.toArray = function (out) { + out[0] = this.x; + out[1] = this.y; + return out; + }; + Point.prototype.fromArray = function (input) { + this.x = input[0]; + this.y = input[1]; + }; + Point.set = function (p, x, y) { + p.x = x; + p.y = y; + }; + Point.copy = function (p, p2) { + p.x = p2.x; + p.y = p2.y; + }; + Point.len = function (p) { + return Math.sqrt(p.x * p.x + p.y * p.y); + }; + Point.lenSquare = function (p) { + return p.x * p.x + p.y * p.y; + }; + Point.dot = function (p0, p1) { + return p0.x * p1.x + p0.y * p1.y; + }; + Point.add = function (out, p0, p1) { + out.x = p0.x + p1.x; + out.y = p0.y + p1.y; + }; + Point.sub = function (out, p0, p1) { + out.x = p0.x - p1.x; + out.y = p0.y - p1.y; + }; + Point.scale = function (out, p0, scalar) { + out.x = p0.x * scalar; + out.y = p0.y * scalar; + }; + Point.scaleAndAdd = function (out, p0, p1, scalar) { + out.x = p0.x + p1.x * scalar; + out.y = p0.y + p1.y * scalar; + }; + Point.lerp = function (out, p0, p1, t) { + var onet = 1 - t; + out.x = onet * p0.x + t * p1.x; + out.y = onet * p0.y + t * p1.y; + }; + return Point; + }()); + + var mathMin = Math.min; + var mathMax = Math.max; + var lt = new Point(); + var rb = new Point(); + var lb = new Point(); + var rt = new Point(); + var minTv = new Point(); + var maxTv = new Point(); + var BoundingRect = (function () { + function BoundingRect(x, y, width, height) { + if (width < 0) { + x = x + width; + width = -width; + } + if (height < 0) { + y = y + height; + height = -height; + } + this.x = x; + this.y = y; + this.width = width; + this.height = height; + } + BoundingRect.prototype.union = function (other) { + var x = mathMin(other.x, this.x); + var y = mathMin(other.y, this.y); + if (isFinite(this.x) && isFinite(this.width)) { + this.width = mathMax(other.x + other.width, this.x + this.width) - x; + } + else { + this.width = other.width; + } + if (isFinite(this.y) && isFinite(this.height)) { + this.height = mathMax(other.y + other.height, this.y + this.height) - y; + } + else { + this.height = other.height; + } + this.x = x; + this.y = y; + }; + BoundingRect.prototype.applyTransform = function (m) { + BoundingRect.applyTransform(this, this, m); + }; + BoundingRect.prototype.calculateTransform = function (b) { + var a = this; + var sx = b.width / a.width; + var sy = b.height / a.height; + var m = create$1(); + translate(m, m, [-a.x, -a.y]); + scale$1(m, m, [sx, sy]); + translate(m, m, [b.x, b.y]); + return m; + }; + BoundingRect.prototype.intersect = function (b, mtv) { + if (!b) { + return false; + } + if (!(b instanceof BoundingRect)) { + b = BoundingRect.create(b); + } + var a = this; + var ax0 = a.x; + var ax1 = a.x + a.width; + var ay0 = a.y; + var ay1 = a.y + a.height; + var bx0 = b.x; + var bx1 = b.x + b.width; + var by0 = b.y; + var by1 = b.y + b.height; + var overlap = !(ax1 < bx0 || bx1 < ax0 || ay1 < by0 || by1 < ay0); + if (mtv) { + var dMin = Infinity; + var dMax = 0; + var d0 = Math.abs(ax1 - bx0); + var d1 = Math.abs(bx1 - ax0); + var d2 = Math.abs(ay1 - by0); + var d3 = Math.abs(by1 - ay0); + var dx = Math.min(d0, d1); + var dy = Math.min(d2, d3); + if (ax1 < bx0 || bx1 < ax0) { + if (dx > dMax) { + dMax = dx; + if (d0 < d1) { + Point.set(maxTv, -d0, 0); + } + else { + Point.set(maxTv, d1, 0); + } + } + } + else { + if (dx < dMin) { + dMin = dx; + if (d0 < d1) { + Point.set(minTv, d0, 0); + } + else { + Point.set(minTv, -d1, 0); + } + } + } + if (ay1 < by0 || by1 < ay0) { + if (dy > dMax) { + dMax = dy; + if (d2 < d3) { + Point.set(maxTv, 0, -d2); + } + else { + Point.set(maxTv, 0, d3); + } + } + } + else { + if (dx < dMin) { + dMin = dx; + if (d2 < d3) { + Point.set(minTv, 0, d2); + } + else { + Point.set(minTv, 0, -d3); + } + } + } + } + if (mtv) { + Point.copy(mtv, overlap ? minTv : maxTv); + } + return overlap; + }; + BoundingRect.prototype.contain = function (x, y) { + var rect = this; + return x >= rect.x + && x <= (rect.x + rect.width) + && y >= rect.y + && y <= (rect.y + rect.height); + }; + BoundingRect.prototype.clone = function () { + return new BoundingRect(this.x, this.y, this.width, this.height); + }; + BoundingRect.prototype.copy = function (other) { + BoundingRect.copy(this, other); + }; + BoundingRect.prototype.plain = function () { + return { + x: this.x, + y: this.y, + width: this.width, + height: this.height + }; + }; + BoundingRect.prototype.isFinite = function () { + return isFinite(this.x) + && isFinite(this.y) + && isFinite(this.width) + && isFinite(this.height); + }; + BoundingRect.prototype.isZero = function () { + return this.width === 0 || this.height === 0; + }; + BoundingRect.create = function (rect) { + return new BoundingRect(rect.x, rect.y, rect.width, rect.height); + }; + BoundingRect.copy = function (target, source) { + target.x = source.x; + target.y = source.y; + target.width = source.width; + target.height = source.height; + }; + BoundingRect.applyTransform = function (target, source, m) { + if (!m) { + if (target !== source) { + BoundingRect.copy(target, source); + } + return; + } + if (m[1] < 1e-5 && m[1] > -1e-5 && m[2] < 1e-5 && m[2] > -1e-5) { + var sx = m[0]; + var sy = m[3]; + var tx = m[4]; + var ty = m[5]; + target.x = source.x * sx + tx; + target.y = source.y * sy + ty; + target.width = source.width * sx; + target.height = source.height * sy; + if (target.width < 0) { + target.x += target.width; + target.width = -target.width; + } + if (target.height < 0) { + target.y += target.height; + target.height = -target.height; + } + return; + } + lt.x = lb.x = source.x; + lt.y = rt.y = source.y; + rb.x = rt.x = source.x + source.width; + rb.y = lb.y = source.y + source.height; + lt.transform(m); + rt.transform(m); + rb.transform(m); + lb.transform(m); + target.x = mathMin(lt.x, rb.x, lb.x, rt.x); + target.y = mathMin(lt.y, rb.y, lb.y, rt.y); + var maxX = mathMax(lt.x, rb.x, lb.x, rt.x); + var maxY = mathMax(lt.y, rb.y, lb.y, rt.y); + target.width = maxX - target.x; + target.height = maxY - target.y; + }; + return BoundingRect; + }()); + + var SILENT = 'silent'; + function makeEventPacket(eveType, targetInfo, event) { + return { + type: eveType, + event: event, + target: targetInfo.target, + topTarget: targetInfo.topTarget, + cancelBubble: false, + offsetX: event.zrX, + offsetY: event.zrY, + gestureEvent: event.gestureEvent, + pinchX: event.pinchX, + pinchY: event.pinchY, + pinchScale: event.pinchScale, + wheelDelta: event.zrDelta, + zrByTouch: event.zrByTouch, + which: event.which, + stop: stopEvent + }; + } + function stopEvent() { + stop(this.event); + } + var EmptyProxy = (function (_super) { + __extends(EmptyProxy, _super); + function EmptyProxy() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.handler = null; + return _this; + } + EmptyProxy.prototype.dispose = function () { }; + EmptyProxy.prototype.setCursor = function () { }; + return EmptyProxy; + }(Eventful)); + var HoveredResult = (function () { + function HoveredResult(x, y) { + this.x = x; + this.y = y; + } + return HoveredResult; + }()); + var handlerNames = [ + 'click', 'dblclick', 'mousewheel', 'mouseout', + 'mouseup', 'mousedown', 'mousemove', 'contextmenu' + ]; + var tmpRect = new BoundingRect(0, 0, 0, 0); + var Handler = (function (_super) { + __extends(Handler, _super); + function Handler(storage, painter, proxy, painterRoot, pointerSize) { + var _this = _super.call(this) || this; + _this._hovered = new HoveredResult(0, 0); + _this.storage = storage; + _this.painter = painter; + _this.painterRoot = painterRoot; + _this._pointerSize = pointerSize; + proxy = proxy || new EmptyProxy(); + _this.proxy = null; + _this.setHandlerProxy(proxy); + _this._draggingMgr = new Draggable(_this); + return _this; + } + Handler.prototype.setHandlerProxy = function (proxy) { + if (this.proxy) { + this.proxy.dispose(); + } + if (proxy) { + each(handlerNames, function (name) { + proxy.on && proxy.on(name, this[name], this); + }, this); + proxy.handler = this; + } + this.proxy = proxy; + }; + Handler.prototype.mousemove = function (event) { + var x = event.zrX; + var y = event.zrY; + var isOutside = isOutsideBoundary(this, x, y); + var lastHovered = this._hovered; + var lastHoveredTarget = lastHovered.target; + if (lastHoveredTarget && !lastHoveredTarget.__zr) { + lastHovered = this.findHover(lastHovered.x, lastHovered.y); + lastHoveredTarget = lastHovered.target; + } + var hovered = this._hovered = isOutside ? new HoveredResult(x, y) : this.findHover(x, y); + var hoveredTarget = hovered.target; + var proxy = this.proxy; + proxy.setCursor && proxy.setCursor(hoveredTarget ? hoveredTarget.cursor : 'default'); + if (lastHoveredTarget && hoveredTarget !== lastHoveredTarget) { + this.dispatchToElement(lastHovered, 'mouseout', event); + } + this.dispatchToElement(hovered, 'mousemove', event); + if (hoveredTarget && hoveredTarget !== lastHoveredTarget) { + this.dispatchToElement(hovered, 'mouseover', event); + } + }; + Handler.prototype.mouseout = function (event) { + var eventControl = event.zrEventControl; + if (eventControl !== 'only_globalout') { + this.dispatchToElement(this._hovered, 'mouseout', event); + } + if (eventControl !== 'no_globalout') { + this.trigger('globalout', { type: 'globalout', event: event }); + } + }; + Handler.prototype.resize = function () { + this._hovered = new HoveredResult(0, 0); + }; + Handler.prototype.dispatch = function (eventName, eventArgs) { + var handler = this[eventName]; + handler && handler.call(this, eventArgs); + }; + Handler.prototype.dispose = function () { + this.proxy.dispose(); + this.storage = null; + this.proxy = null; + this.painter = null; + }; + Handler.prototype.setCursorStyle = function (cursorStyle) { + var proxy = this.proxy; + proxy.setCursor && proxy.setCursor(cursorStyle); + }; + Handler.prototype.dispatchToElement = function (targetInfo, eventName, event) { + targetInfo = targetInfo || {}; + var el = targetInfo.target; + if (el && el.silent) { + return; + } + var eventKey = ('on' + eventName); + var eventPacket = makeEventPacket(eventName, targetInfo, event); + while (el) { + el[eventKey] + && (eventPacket.cancelBubble = !!el[eventKey].call(el, eventPacket)); + el.trigger(eventName, eventPacket); + el = el.__hostTarget ? el.__hostTarget : el.parent; + if (eventPacket.cancelBubble) { + break; + } + } + if (!eventPacket.cancelBubble) { + this.trigger(eventName, eventPacket); + if (this.painter && this.painter.eachOtherLayer) { + this.painter.eachOtherLayer(function (layer) { + if (typeof (layer[eventKey]) === 'function') { + layer[eventKey].call(layer, eventPacket); + } + if (layer.trigger) { + layer.trigger(eventName, eventPacket); + } + }); + } + } + }; + Handler.prototype.findHover = function (x, y, exclude) { + var list = this.storage.getDisplayList(); + var out = new HoveredResult(x, y); + setHoverTarget(list, out, x, y, exclude); + if (this._pointerSize && !out.target) { + var candidates = []; + var pointerSize = this._pointerSize; + var targetSizeHalf = pointerSize / 2; + var pointerRect = new BoundingRect(x - targetSizeHalf, y - targetSizeHalf, pointerSize, pointerSize); + for (var i = list.length - 1; i >= 0; i--) { + var el = list[i]; + if (el !== exclude + && !el.ignore + && !el.ignoreCoarsePointer + && (!el.parent || !el.parent.ignoreCoarsePointer)) { + tmpRect.copy(el.getBoundingRect()); + if (el.transform) { + tmpRect.applyTransform(el.transform); + } + if (tmpRect.intersect(pointerRect)) { + candidates.push(el); + } + } + } + if (candidates.length) { + var rStep = 4; + var thetaStep = Math.PI / 12; + var PI2 = Math.PI * 2; + for (var r = 0; r < targetSizeHalf; r += rStep) { + for (var theta = 0; theta < PI2; theta += thetaStep) { + var x1 = x + r * Math.cos(theta); + var y1 = y + r * Math.sin(theta); + setHoverTarget(candidates, out, x1, y1, exclude); + if (out.target) { + return out; + } + } + } + } + } + return out; + }; + Handler.prototype.processGesture = function (event, stage) { + if (!this._gestureMgr) { + this._gestureMgr = new GestureMgr(); + } + var gestureMgr = this._gestureMgr; + stage === 'start' && gestureMgr.clear(); + var gestureInfo = gestureMgr.recognize(event, this.findHover(event.zrX, event.zrY, null).target, this.proxy.dom); + stage === 'end' && gestureMgr.clear(); + if (gestureInfo) { + var type = gestureInfo.type; + event.gestureEvent = type; + var res = new HoveredResult(); + res.target = gestureInfo.target; + this.dispatchToElement(res, type, gestureInfo.event); + } + }; + return Handler; + }(Eventful)); + each(['click', 'mousedown', 'mouseup', 'mousewheel', 'dblclick', 'contextmenu'], function (name) { + Handler.prototype[name] = function (event) { + var x = event.zrX; + var y = event.zrY; + var isOutside = isOutsideBoundary(this, x, y); + var hovered; + var hoveredTarget; + if (name !== 'mouseup' || !isOutside) { + hovered = this.findHover(x, y); + hoveredTarget = hovered.target; + } + if (name === 'mousedown') { + this._downEl = hoveredTarget; + this._downPoint = [event.zrX, event.zrY]; + this._upEl = hoveredTarget; + } + else if (name === 'mouseup') { + this._upEl = hoveredTarget; + } + else if (name === 'click') { + if (this._downEl !== this._upEl + || !this._downPoint + || dist(this._downPoint, [event.zrX, event.zrY]) > 4) { + return; + } + this._downPoint = null; + } + this.dispatchToElement(hovered, name, event); + }; + }); + function isHover(displayable, x, y) { + if (displayable[displayable.rectHover ? 'rectContain' : 'contain'](x, y)) { + var el = displayable; + var isSilent = void 0; + var ignoreClip = false; + while (el) { + if (el.ignoreClip) { + ignoreClip = true; + } + if (!ignoreClip) { + var clipPath = el.getClipPath(); + if (clipPath && !clipPath.contain(x, y)) { + return false; + } + } + if (el.silent) { + isSilent = true; + } + var hostEl = el.__hostTarget; + el = hostEl ? hostEl : el.parent; + } + return isSilent ? SILENT : true; + } + return false; + } + function setHoverTarget(list, out, x, y, exclude) { + for (var i = list.length - 1; i >= 0; i--) { + var el = list[i]; + var hoverCheckResult = void 0; + if (el !== exclude + && !el.ignore + && (hoverCheckResult = isHover(el, x, y))) { + !out.topTarget && (out.topTarget = el); + if (hoverCheckResult !== SILENT) { + out.target = el; + break; + } + } + } + } + function isOutsideBoundary(handlerInstance, x, y) { + var painter = handlerInstance.painter; + return x < 0 || x > painter.getWidth() || y < 0 || y > painter.getHeight(); + } + + var DEFAULT_MIN_MERGE = 32; + var DEFAULT_MIN_GALLOPING = 7; + function minRunLength(n) { + var r = 0; + while (n >= DEFAULT_MIN_MERGE) { + r |= n & 1; + n >>= 1; + } + return n + r; + } + function makeAscendingRun(array, lo, hi, compare) { + var runHi = lo + 1; + if (runHi === hi) { + return 1; + } + if (compare(array[runHi++], array[lo]) < 0) { + while (runHi < hi && compare(array[runHi], array[runHi - 1]) < 0) { + runHi++; + } + reverseRun(array, lo, runHi); + } + else { + while (runHi < hi && compare(array[runHi], array[runHi - 1]) >= 0) { + runHi++; + } + } + return runHi - lo; + } + function reverseRun(array, lo, hi) { + hi--; + while (lo < hi) { + var t = array[lo]; + array[lo++] = array[hi]; + array[hi--] = t; + } + } + function binaryInsertionSort(array, lo, hi, start, compare) { + if (start === lo) { + start++; + } + for (; start < hi; start++) { + var pivot = array[start]; + var left = lo; + var right = start; + var mid; + while (left < right) { + mid = left + right >>> 1; + if (compare(pivot, array[mid]) < 0) { + right = mid; + } + else { + left = mid + 1; + } + } + var n = start - left; + switch (n) { + case 3: + array[left + 3] = array[left + 2]; + case 2: + array[left + 2] = array[left + 1]; + case 1: + array[left + 1] = array[left]; + break; + default: + while (n > 0) { + array[left + n] = array[left + n - 1]; + n--; + } + } + array[left] = pivot; + } + } + function gallopLeft(value, array, start, length, hint, compare) { + var lastOffset = 0; + var maxOffset = 0; + var offset = 1; + if (compare(value, array[start + hint]) > 0) { + maxOffset = length - hint; + while (offset < maxOffset && compare(value, array[start + hint + offset]) > 0) { + lastOffset = offset; + offset = (offset << 1) + 1; + if (offset <= 0) { + offset = maxOffset; + } + } + if (offset > maxOffset) { + offset = maxOffset; + } + lastOffset += hint; + offset += hint; + } + else { + maxOffset = hint + 1; + while (offset < maxOffset && compare(value, array[start + hint - offset]) <= 0) { + lastOffset = offset; + offset = (offset << 1) + 1; + if (offset <= 0) { + offset = maxOffset; + } + } + if (offset > maxOffset) { + offset = maxOffset; + } + var tmp = lastOffset; + lastOffset = hint - offset; + offset = hint - tmp; + } + lastOffset++; + while (lastOffset < offset) { + var m = lastOffset + (offset - lastOffset >>> 1); + if (compare(value, array[start + m]) > 0) { + lastOffset = m + 1; + } + else { + offset = m; + } + } + return offset; + } + function gallopRight(value, array, start, length, hint, compare) { + var lastOffset = 0; + var maxOffset = 0; + var offset = 1; + if (compare(value, array[start + hint]) < 0) { + maxOffset = hint + 1; + while (offset < maxOffset && compare(value, array[start + hint - offset]) < 0) { + lastOffset = offset; + offset = (offset << 1) + 1; + if (offset <= 0) { + offset = maxOffset; + } + } + if (offset > maxOffset) { + offset = maxOffset; + } + var tmp = lastOffset; + lastOffset = hint - offset; + offset = hint - tmp; + } + else { + maxOffset = length - hint; + while (offset < maxOffset && compare(value, array[start + hint + offset]) >= 0) { + lastOffset = offset; + offset = (offset << 1) + 1; + if (offset <= 0) { + offset = maxOffset; + } + } + if (offset > maxOffset) { + offset = maxOffset; + } + lastOffset += hint; + offset += hint; + } + lastOffset++; + while (lastOffset < offset) { + var m = lastOffset + (offset - lastOffset >>> 1); + if (compare(value, array[start + m]) < 0) { + offset = m; + } + else { + lastOffset = m + 1; + } + } + return offset; + } + function TimSort(array, compare) { + var minGallop = DEFAULT_MIN_GALLOPING; + var runStart; + var runLength; + var stackSize = 0; + var tmp = []; + runStart = []; + runLength = []; + function pushRun(_runStart, _runLength) { + runStart[stackSize] = _runStart; + runLength[stackSize] = _runLength; + stackSize += 1; + } + function mergeRuns() { + while (stackSize > 1) { + var n = stackSize - 2; + if ((n >= 1 && runLength[n - 1] <= runLength[n] + runLength[n + 1]) + || (n >= 2 && runLength[n - 2] <= runLength[n] + runLength[n - 1])) { + if (runLength[n - 1] < runLength[n + 1]) { + n--; + } + } + else if (runLength[n] > runLength[n + 1]) { + break; + } + mergeAt(n); + } + } + function forceMergeRuns() { + while (stackSize > 1) { + var n = stackSize - 2; + if (n > 0 && runLength[n - 1] < runLength[n + 1]) { + n--; + } + mergeAt(n); + } + } + function mergeAt(i) { + var start1 = runStart[i]; + var length1 = runLength[i]; + var start2 = runStart[i + 1]; + var length2 = runLength[i + 1]; + runLength[i] = length1 + length2; + if (i === stackSize - 3) { + runStart[i + 1] = runStart[i + 2]; + runLength[i + 1] = runLength[i + 2]; + } + stackSize--; + var k = gallopRight(array[start2], array, start1, length1, 0, compare); + start1 += k; + length1 -= k; + if (length1 === 0) { + return; + } + length2 = gallopLeft(array[start1 + length1 - 1], array, start2, length2, length2 - 1, compare); + if (length2 === 0) { + return; + } + if (length1 <= length2) { + mergeLow(start1, length1, start2, length2); + } + else { + mergeHigh(start1, length1, start2, length2); + } + } + function mergeLow(start1, length1, start2, length2) { + var i = 0; + for (i = 0; i < length1; i++) { + tmp[i] = array[start1 + i]; + } + var cursor1 = 0; + var cursor2 = start2; + var dest = start1; + array[dest++] = array[cursor2++]; + if (--length2 === 0) { + for (i = 0; i < length1; i++) { + array[dest + i] = tmp[cursor1 + i]; + } + return; + } + if (length1 === 1) { + for (i = 0; i < length2; i++) { + array[dest + i] = array[cursor2 + i]; + } + array[dest + length2] = tmp[cursor1]; + return; + } + var _minGallop = minGallop; + var count1; + var count2; + var exit; + while (1) { + count1 = 0; + count2 = 0; + exit = false; + do { + if (compare(array[cursor2], tmp[cursor1]) < 0) { + array[dest++] = array[cursor2++]; + count2++; + count1 = 0; + if (--length2 === 0) { + exit = true; + break; + } + } + else { + array[dest++] = tmp[cursor1++]; + count1++; + count2 = 0; + if (--length1 === 1) { + exit = true; + break; + } + } + } while ((count1 | count2) < _minGallop); + if (exit) { + break; + } + do { + count1 = gallopRight(array[cursor2], tmp, cursor1, length1, 0, compare); + if (count1 !== 0) { + for (i = 0; i < count1; i++) { + array[dest + i] = tmp[cursor1 + i]; + } + dest += count1; + cursor1 += count1; + length1 -= count1; + if (length1 <= 1) { + exit = true; + break; + } + } + array[dest++] = array[cursor2++]; + if (--length2 === 0) { + exit = true; + break; + } + count2 = gallopLeft(tmp[cursor1], array, cursor2, length2, 0, compare); + if (count2 !== 0) { + for (i = 0; i < count2; i++) { + array[dest + i] = array[cursor2 + i]; + } + dest += count2; + cursor2 += count2; + length2 -= count2; + if (length2 === 0) { + exit = true; + break; + } + } + array[dest++] = tmp[cursor1++]; + if (--length1 === 1) { + exit = true; + break; + } + _minGallop--; + } while (count1 >= DEFAULT_MIN_GALLOPING || count2 >= DEFAULT_MIN_GALLOPING); + if (exit) { + break; + } + if (_minGallop < 0) { + _minGallop = 0; + } + _minGallop += 2; + } + minGallop = _minGallop; + minGallop < 1 && (minGallop = 1); + if (length1 === 1) { + for (i = 0; i < length2; i++) { + array[dest + i] = array[cursor2 + i]; + } + array[dest + length2] = tmp[cursor1]; + } + else if (length1 === 0) { + throw new Error(); + } + else { + for (i = 0; i < length1; i++) { + array[dest + i] = tmp[cursor1 + i]; + } + } + } + function mergeHigh(start1, length1, start2, length2) { + var i = 0; + for (i = 0; i < length2; i++) { + tmp[i] = array[start2 + i]; + } + var cursor1 = start1 + length1 - 1; + var cursor2 = length2 - 1; + var dest = start2 + length2 - 1; + var customCursor = 0; + var customDest = 0; + array[dest--] = array[cursor1--]; + if (--length1 === 0) { + customCursor = dest - (length2 - 1); + for (i = 0; i < length2; i++) { + array[customCursor + i] = tmp[i]; + } + return; + } + if (length2 === 1) { + dest -= length1; + cursor1 -= length1; + customDest = dest + 1; + customCursor = cursor1 + 1; + for (i = length1 - 1; i >= 0; i--) { + array[customDest + i] = array[customCursor + i]; + } + array[dest] = tmp[cursor2]; + return; + } + var _minGallop = minGallop; + while (true) { + var count1 = 0; + var count2 = 0; + var exit = false; + do { + if (compare(tmp[cursor2], array[cursor1]) < 0) { + array[dest--] = array[cursor1--]; + count1++; + count2 = 0; + if (--length1 === 0) { + exit = true; + break; + } + } + else { + array[dest--] = tmp[cursor2--]; + count2++; + count1 = 0; + if (--length2 === 1) { + exit = true; + break; + } + } + } while ((count1 | count2) < _minGallop); + if (exit) { + break; + } + do { + count1 = length1 - gallopRight(tmp[cursor2], array, start1, length1, length1 - 1, compare); + if (count1 !== 0) { + dest -= count1; + cursor1 -= count1; + length1 -= count1; + customDest = dest + 1; + customCursor = cursor1 + 1; + for (i = count1 - 1; i >= 0; i--) { + array[customDest + i] = array[customCursor + i]; + } + if (length1 === 0) { + exit = true; + break; + } + } + array[dest--] = tmp[cursor2--]; + if (--length2 === 1) { + exit = true; + break; + } + count2 = length2 - gallopLeft(array[cursor1], tmp, 0, length2, length2 - 1, compare); + if (count2 !== 0) { + dest -= count2; + cursor2 -= count2; + length2 -= count2; + customDest = dest + 1; + customCursor = cursor2 + 1; + for (i = 0; i < count2; i++) { + array[customDest + i] = tmp[customCursor + i]; + } + if (length2 <= 1) { + exit = true; + break; + } + } + array[dest--] = array[cursor1--]; + if (--length1 === 0) { + exit = true; + break; + } + _minGallop--; + } while (count1 >= DEFAULT_MIN_GALLOPING || count2 >= DEFAULT_MIN_GALLOPING); + if (exit) { + break; + } + if (_minGallop < 0) { + _minGallop = 0; + } + _minGallop += 2; + } + minGallop = _minGallop; + if (minGallop < 1) { + minGallop = 1; + } + if (length2 === 1) { + dest -= length1; + cursor1 -= length1; + customDest = dest + 1; + customCursor = cursor1 + 1; + for (i = length1 - 1; i >= 0; i--) { + array[customDest + i] = array[customCursor + i]; + } + array[dest] = tmp[cursor2]; + } + else if (length2 === 0) { + throw new Error(); + } + else { + customCursor = dest - (length2 - 1); + for (i = 0; i < length2; i++) { + array[customCursor + i] = tmp[i]; + } + } + } + return { + mergeRuns: mergeRuns, + forceMergeRuns: forceMergeRuns, + pushRun: pushRun + }; + } + function sort(array, compare, lo, hi) { + if (!lo) { + lo = 0; + } + if (!hi) { + hi = array.length; + } + var remaining = hi - lo; + if (remaining < 2) { + return; + } + var runLength = 0; + if (remaining < DEFAULT_MIN_MERGE) { + runLength = makeAscendingRun(array, lo, hi, compare); + binaryInsertionSort(array, lo, hi, lo + runLength, compare); + return; + } + var ts = TimSort(array, compare); + var minRun = minRunLength(remaining); + do { + runLength = makeAscendingRun(array, lo, hi, compare); + if (runLength < minRun) { + var force = remaining; + if (force > minRun) { + force = minRun; + } + binaryInsertionSort(array, lo, lo + force, lo + runLength, compare); + runLength = force; + } + ts.pushRun(lo, runLength); + ts.mergeRuns(); + remaining -= runLength; + lo += runLength; + } while (remaining !== 0); + ts.forceMergeRuns(); + } + + var REDRAW_BIT = 1; + var STYLE_CHANGED_BIT = 2; + var SHAPE_CHANGED_BIT = 4; + + var invalidZErrorLogged = false; + function logInvalidZError() { + if (invalidZErrorLogged) { + return; + } + invalidZErrorLogged = true; + console.warn('z / z2 / zlevel of displayable is invalid, which may cause unexpected errors'); + } + function shapeCompareFunc(a, b) { + if (a.zlevel === b.zlevel) { + if (a.z === b.z) { + return a.z2 - b.z2; + } + return a.z - b.z; + } + return a.zlevel - b.zlevel; + } + var Storage = (function () { + function Storage() { + this._roots = []; + this._displayList = []; + this._displayListLen = 0; + this.displayableSortFunc = shapeCompareFunc; + } + Storage.prototype.traverse = function (cb, context) { + for (var i = 0; i < this._roots.length; i++) { + this._roots[i].traverse(cb, context); + } + }; + Storage.prototype.getDisplayList = function (update, includeIgnore) { + includeIgnore = includeIgnore || false; + var displayList = this._displayList; + if (update || !displayList.length) { + this.updateDisplayList(includeIgnore); + } + return displayList; + }; + Storage.prototype.updateDisplayList = function (includeIgnore) { + this._displayListLen = 0; + var roots = this._roots; + var displayList = this._displayList; + for (var i = 0, len = roots.length; i < len; i++) { + this._updateAndAddDisplayable(roots[i], null, includeIgnore); + } + displayList.length = this._displayListLen; + sort(displayList, shapeCompareFunc); + }; + Storage.prototype._updateAndAddDisplayable = function (el, clipPaths, includeIgnore) { + if (el.ignore && !includeIgnore) { + return; + } + el.beforeUpdate(); + el.update(); + el.afterUpdate(); + var userSetClipPath = el.getClipPath(); + if (el.ignoreClip) { + clipPaths = null; + } + else if (userSetClipPath) { + if (clipPaths) { + clipPaths = clipPaths.slice(); + } + else { + clipPaths = []; + } + var currentClipPath = userSetClipPath; + var parentClipPath = el; + while (currentClipPath) { + currentClipPath.parent = parentClipPath; + currentClipPath.updateTransform(); + clipPaths.push(currentClipPath); + parentClipPath = currentClipPath; + currentClipPath = currentClipPath.getClipPath(); + } + } + if (el.childrenRef) { + var children = el.childrenRef(); + for (var i = 0; i < children.length; i++) { + var child = children[i]; + if (el.__dirty) { + child.__dirty |= REDRAW_BIT; + } + this._updateAndAddDisplayable(child, clipPaths, includeIgnore); + } + el.__dirty = 0; + } + else { + var disp = el; + if (clipPaths && clipPaths.length) { + disp.__clipPaths = clipPaths; + } + else if (disp.__clipPaths && disp.__clipPaths.length > 0) { + disp.__clipPaths = []; + } + if (isNaN(disp.z)) { + logInvalidZError(); + disp.z = 0; + } + if (isNaN(disp.z2)) { + logInvalidZError(); + disp.z2 = 0; + } + if (isNaN(disp.zlevel)) { + logInvalidZError(); + disp.zlevel = 0; + } + this._displayList[this._displayListLen++] = disp; + } + var decalEl = el.getDecalElement && el.getDecalElement(); + if (decalEl) { + this._updateAndAddDisplayable(decalEl, clipPaths, includeIgnore); + } + var textGuide = el.getTextGuideLine(); + if (textGuide) { + this._updateAndAddDisplayable(textGuide, clipPaths, includeIgnore); + } + var textEl = el.getTextContent(); + if (textEl) { + this._updateAndAddDisplayable(textEl, clipPaths, includeIgnore); + } + }; + Storage.prototype.addRoot = function (el) { + if (el.__zr && el.__zr.storage === this) { + return; + } + this._roots.push(el); + }; + Storage.prototype.delRoot = function (el) { + if (el instanceof Array) { + for (var i = 0, l = el.length; i < l; i++) { + this.delRoot(el[i]); + } + return; + } + var idx = indexOf(this._roots, el); + if (idx >= 0) { + this._roots.splice(idx, 1); + } + }; + Storage.prototype.delAllRoots = function () { + this._roots = []; + this._displayList = []; + this._displayListLen = 0; + return; + }; + Storage.prototype.getRoots = function () { + return this._roots; + }; + Storage.prototype.dispose = function () { + this._displayList = null; + this._roots = null; + }; + return Storage; + }()); + + var requestAnimationFrame; + requestAnimationFrame = (env.hasGlobalWindow + && ((window.requestAnimationFrame && window.requestAnimationFrame.bind(window)) + || (window.msRequestAnimationFrame && window.msRequestAnimationFrame.bind(window)) + || window.mozRequestAnimationFrame + || window.webkitRequestAnimationFrame)) || function (func) { + return setTimeout(func, 16); + }; + var requestAnimationFrame$1 = requestAnimationFrame; + + var easingFuncs = { + linear: function (k) { + return k; + }, + quadraticIn: function (k) { + return k * k; + }, + quadraticOut: function (k) { + return k * (2 - k); + }, + quadraticInOut: function (k) { + if ((k *= 2) < 1) { + return 0.5 * k * k; + } + return -0.5 * (--k * (k - 2) - 1); + }, + cubicIn: function (k) { + return k * k * k; + }, + cubicOut: function (k) { + return --k * k * k + 1; + }, + cubicInOut: function (k) { + if ((k *= 2) < 1) { + return 0.5 * k * k * k; + } + return 0.5 * ((k -= 2) * k * k + 2); + }, + quarticIn: function (k) { + return k * k * k * k; + }, + quarticOut: function (k) { + return 1 - (--k * k * k * k); + }, + quarticInOut: function (k) { + if ((k *= 2) < 1) { + return 0.5 * k * k * k * k; + } + return -0.5 * ((k -= 2) * k * k * k - 2); + }, + quinticIn: function (k) { + return k * k * k * k * k; + }, + quinticOut: function (k) { + return --k * k * k * k * k + 1; + }, + quinticInOut: function (k) { + if ((k *= 2) < 1) { + return 0.5 * k * k * k * k * k; + } + return 0.5 * ((k -= 2) * k * k * k * k + 2); + }, + sinusoidalIn: function (k) { + return 1 - Math.cos(k * Math.PI / 2); + }, + sinusoidalOut: function (k) { + return Math.sin(k * Math.PI / 2); + }, + sinusoidalInOut: function (k) { + return 0.5 * (1 - Math.cos(Math.PI * k)); + }, + exponentialIn: function (k) { + return k === 0 ? 0 : Math.pow(1024, k - 1); + }, + exponentialOut: function (k) { + return k === 1 ? 1 : 1 - Math.pow(2, -10 * k); + }, + exponentialInOut: function (k) { + if (k === 0) { + return 0; + } + if (k === 1) { + return 1; + } + if ((k *= 2) < 1) { + return 0.5 * Math.pow(1024, k - 1); + } + return 0.5 * (-Math.pow(2, -10 * (k - 1)) + 2); + }, + circularIn: function (k) { + return 1 - Math.sqrt(1 - k * k); + }, + circularOut: function (k) { + return Math.sqrt(1 - (--k * k)); + }, + circularInOut: function (k) { + if ((k *= 2) < 1) { + return -0.5 * (Math.sqrt(1 - k * k) - 1); + } + return 0.5 * (Math.sqrt(1 - (k -= 2) * k) + 1); + }, + elasticIn: function (k) { + var s; + var a = 0.1; + var p = 0.4; + if (k === 0) { + return 0; + } + if (k === 1) { + return 1; + } + if (!a || a < 1) { + a = 1; + s = p / 4; + } + else { + s = p * Math.asin(1 / a) / (2 * Math.PI); + } + return -(a * Math.pow(2, 10 * (k -= 1)) + * Math.sin((k - s) * (2 * Math.PI) / p)); + }, + elasticOut: function (k) { + var s; + var a = 0.1; + var p = 0.4; + if (k === 0) { + return 0; + } + if (k === 1) { + return 1; + } + if (!a || a < 1) { + a = 1; + s = p / 4; + } + else { + s = p * Math.asin(1 / a) / (2 * Math.PI); + } + return (a * Math.pow(2, -10 * k) + * Math.sin((k - s) * (2 * Math.PI) / p) + 1); + }, + elasticInOut: function (k) { + var s; + var a = 0.1; + var p = 0.4; + if (k === 0) { + return 0; + } + if (k === 1) { + return 1; + } + if (!a || a < 1) { + a = 1; + s = p / 4; + } + else { + s = p * Math.asin(1 / a) / (2 * Math.PI); + } + if ((k *= 2) < 1) { + return -0.5 * (a * Math.pow(2, 10 * (k -= 1)) + * Math.sin((k - s) * (2 * Math.PI) / p)); + } + return a * Math.pow(2, -10 * (k -= 1)) + * Math.sin((k - s) * (2 * Math.PI) / p) * 0.5 + 1; + }, + backIn: function (k) { + var s = 1.70158; + return k * k * ((s + 1) * k - s); + }, + backOut: function (k) { + var s = 1.70158; + return --k * k * ((s + 1) * k + s) + 1; + }, + backInOut: function (k) { + var s = 1.70158 * 1.525; + if ((k *= 2) < 1) { + return 0.5 * (k * k * ((s + 1) * k - s)); + } + return 0.5 * ((k -= 2) * k * ((s + 1) * k + s) + 2); + }, + bounceIn: function (k) { + return 1 - easingFuncs.bounceOut(1 - k); + }, + bounceOut: function (k) { + if (k < (1 / 2.75)) { + return 7.5625 * k * k; + } + else if (k < (2 / 2.75)) { + return 7.5625 * (k -= (1.5 / 2.75)) * k + 0.75; + } + else if (k < (2.5 / 2.75)) { + return 7.5625 * (k -= (2.25 / 2.75)) * k + 0.9375; + } + else { + return 7.5625 * (k -= (2.625 / 2.75)) * k + 0.984375; + } + }, + bounceInOut: function (k) { + if (k < 0.5) { + return easingFuncs.bounceIn(k * 2) * 0.5; + } + return easingFuncs.bounceOut(k * 2 - 1) * 0.5 + 0.5; + } + }; + + var mathPow = Math.pow; + var mathSqrt = Math.sqrt; + var EPSILON = 1e-8; + var EPSILON_NUMERIC = 1e-4; + var THREE_SQRT = mathSqrt(3); + var ONE_THIRD = 1 / 3; + var _v0 = create(); + var _v1 = create(); + var _v2 = create(); + function isAroundZero(val) { + return val > -EPSILON && val < EPSILON; + } + function isNotAroundZero(val) { + return val > EPSILON || val < -EPSILON; + } + function cubicAt(p0, p1, p2, p3, t) { + var onet = 1 - t; + return onet * onet * (onet * p0 + 3 * t * p1) + + t * t * (t * p3 + 3 * onet * p2); + } + function cubicDerivativeAt(p0, p1, p2, p3, t) { + var onet = 1 - t; + return 3 * (((p1 - p0) * onet + 2 * (p2 - p1) * t) * onet + + (p3 - p2) * t * t); + } + function cubicRootAt(p0, p1, p2, p3, val, roots) { + var a = p3 + 3 * (p1 - p2) - p0; + var b = 3 * (p2 - p1 * 2 + p0); + var c = 3 * (p1 - p0); + var d = p0 - val; + var A = b * b - 3 * a * c; + var B = b * c - 9 * a * d; + var C = c * c - 3 * b * d; + var n = 0; + if (isAroundZero(A) && isAroundZero(B)) { + if (isAroundZero(b)) { + roots[0] = 0; + } + else { + var t1 = -c / b; + if (t1 >= 0 && t1 <= 1) { + roots[n++] = t1; + } + } + } + else { + var disc = B * B - 4 * A * C; + if (isAroundZero(disc)) { + var K = B / A; + var t1 = -b / a + K; + var t2 = -K / 2; + if (t1 >= 0 && t1 <= 1) { + roots[n++] = t1; + } + if (t2 >= 0 && t2 <= 1) { + roots[n++] = t2; + } + } + else if (disc > 0) { + var discSqrt = mathSqrt(disc); + var Y1 = A * b + 1.5 * a * (-B + discSqrt); + var Y2 = A * b + 1.5 * a * (-B - discSqrt); + if (Y1 < 0) { + Y1 = -mathPow(-Y1, ONE_THIRD); + } + else { + Y1 = mathPow(Y1, ONE_THIRD); + } + if (Y2 < 0) { + Y2 = -mathPow(-Y2, ONE_THIRD); + } + else { + Y2 = mathPow(Y2, ONE_THIRD); + } + var t1 = (-b - (Y1 + Y2)) / (3 * a); + if (t1 >= 0 && t1 <= 1) { + roots[n++] = t1; + } + } + else { + var T = (2 * A * b - 3 * a * B) / (2 * mathSqrt(A * A * A)); + var theta = Math.acos(T) / 3; + var ASqrt = mathSqrt(A); + var tmp = Math.cos(theta); + var t1 = (-b - 2 * ASqrt * tmp) / (3 * a); + var t2 = (-b + ASqrt * (tmp + THREE_SQRT * Math.sin(theta))) / (3 * a); + var t3 = (-b + ASqrt * (tmp - THREE_SQRT * Math.sin(theta))) / (3 * a); + if (t1 >= 0 && t1 <= 1) { + roots[n++] = t1; + } + if (t2 >= 0 && t2 <= 1) { + roots[n++] = t2; + } + if (t3 >= 0 && t3 <= 1) { + roots[n++] = t3; + } + } + } + return n; + } + function cubicExtrema(p0, p1, p2, p3, extrema) { + var b = 6 * p2 - 12 * p1 + 6 * p0; + var a = 9 * p1 + 3 * p3 - 3 * p0 - 9 * p2; + var c = 3 * p1 - 3 * p0; + var n = 0; + if (isAroundZero(a)) { + if (isNotAroundZero(b)) { + var t1 = -c / b; + if (t1 >= 0 && t1 <= 1) { + extrema[n++] = t1; + } + } + } + else { + var disc = b * b - 4 * a * c; + if (isAroundZero(disc)) { + extrema[0] = -b / (2 * a); + } + else if (disc > 0) { + var discSqrt = mathSqrt(disc); + var t1 = (-b + discSqrt) / (2 * a); + var t2 = (-b - discSqrt) / (2 * a); + if (t1 >= 0 && t1 <= 1) { + extrema[n++] = t1; + } + if (t2 >= 0 && t2 <= 1) { + extrema[n++] = t2; + } + } + } + return n; + } + function cubicSubdivide(p0, p1, p2, p3, t, out) { + var p01 = (p1 - p0) * t + p0; + var p12 = (p2 - p1) * t + p1; + var p23 = (p3 - p2) * t + p2; + var p012 = (p12 - p01) * t + p01; + var p123 = (p23 - p12) * t + p12; + var p0123 = (p123 - p012) * t + p012; + out[0] = p0; + out[1] = p01; + out[2] = p012; + out[3] = p0123; + out[4] = p0123; + out[5] = p123; + out[6] = p23; + out[7] = p3; + } + function cubicProjectPoint(x0, y0, x1, y1, x2, y2, x3, y3, x, y, out) { + var t; + var interval = 0.005; + var d = Infinity; + var prev; + var next; + var d1; + var d2; + _v0[0] = x; + _v0[1] = y; + for (var _t = 0; _t < 1; _t += 0.05) { + _v1[0] = cubicAt(x0, x1, x2, x3, _t); + _v1[1] = cubicAt(y0, y1, y2, y3, _t); + d1 = distSquare(_v0, _v1); + if (d1 < d) { + t = _t; + d = d1; + } + } + d = Infinity; + for (var i = 0; i < 32; i++) { + if (interval < EPSILON_NUMERIC) { + break; + } + prev = t - interval; + next = t + interval; + _v1[0] = cubicAt(x0, x1, x2, x3, prev); + _v1[1] = cubicAt(y0, y1, y2, y3, prev); + d1 = distSquare(_v1, _v0); + if (prev >= 0 && d1 < d) { + t = prev; + d = d1; + } + else { + _v2[0] = cubicAt(x0, x1, x2, x3, next); + _v2[1] = cubicAt(y0, y1, y2, y3, next); + d2 = distSquare(_v2, _v0); + if (next <= 1 && d2 < d) { + t = next; + d = d2; + } + else { + interval *= 0.5; + } + } + } + if (out) { + out[0] = cubicAt(x0, x1, x2, x3, t); + out[1] = cubicAt(y0, y1, y2, y3, t); + } + return mathSqrt(d); + } + function cubicLength(x0, y0, x1, y1, x2, y2, x3, y3, iteration) { + var px = x0; + var py = y0; + var d = 0; + var step = 1 / iteration; + for (var i = 1; i <= iteration; i++) { + var t = i * step; + var x = cubicAt(x0, x1, x2, x3, t); + var y = cubicAt(y0, y1, y2, y3, t); + var dx = x - px; + var dy = y - py; + d += Math.sqrt(dx * dx + dy * dy); + px = x; + py = y; + } + return d; + } + function quadraticAt(p0, p1, p2, t) { + var onet = 1 - t; + return onet * (onet * p0 + 2 * t * p1) + t * t * p2; + } + function quadraticDerivativeAt(p0, p1, p2, t) { + return 2 * ((1 - t) * (p1 - p0) + t * (p2 - p1)); + } + function quadraticRootAt(p0, p1, p2, val, roots) { + var a = p0 - 2 * p1 + p2; + var b = 2 * (p1 - p0); + var c = p0 - val; + var n = 0; + if (isAroundZero(a)) { + if (isNotAroundZero(b)) { + var t1 = -c / b; + if (t1 >= 0 && t1 <= 1) { + roots[n++] = t1; + } + } + } + else { + var disc = b * b - 4 * a * c; + if (isAroundZero(disc)) { + var t1 = -b / (2 * a); + if (t1 >= 0 && t1 <= 1) { + roots[n++] = t1; + } + } + else if (disc > 0) { + var discSqrt = mathSqrt(disc); + var t1 = (-b + discSqrt) / (2 * a); + var t2 = (-b - discSqrt) / (2 * a); + if (t1 >= 0 && t1 <= 1) { + roots[n++] = t1; + } + if (t2 >= 0 && t2 <= 1) { + roots[n++] = t2; + } + } + } + return n; + } + function quadraticExtremum(p0, p1, p2) { + var divider = p0 + p2 - 2 * p1; + if (divider === 0) { + return 0.5; + } + else { + return (p0 - p1) / divider; + } + } + function quadraticSubdivide(p0, p1, p2, t, out) { + var p01 = (p1 - p0) * t + p0; + var p12 = (p2 - p1) * t + p1; + var p012 = (p12 - p01) * t + p01; + out[0] = p0; + out[1] = p01; + out[2] = p012; + out[3] = p012; + out[4] = p12; + out[5] = p2; + } + function quadraticProjectPoint(x0, y0, x1, y1, x2, y2, x, y, out) { + var t; + var interval = 0.005; + var d = Infinity; + _v0[0] = x; + _v0[1] = y; + for (var _t = 0; _t < 1; _t += 0.05) { + _v1[0] = quadraticAt(x0, x1, x2, _t); + _v1[1] = quadraticAt(y0, y1, y2, _t); + var d1 = distSquare(_v0, _v1); + if (d1 < d) { + t = _t; + d = d1; + } + } + d = Infinity; + for (var i = 0; i < 32; i++) { + if (interval < EPSILON_NUMERIC) { + break; + } + var prev = t - interval; + var next = t + interval; + _v1[0] = quadraticAt(x0, x1, x2, prev); + _v1[1] = quadraticAt(y0, y1, y2, prev); + var d1 = distSquare(_v1, _v0); + if (prev >= 0 && d1 < d) { + t = prev; + d = d1; + } + else { + _v2[0] = quadraticAt(x0, x1, x2, next); + _v2[1] = quadraticAt(y0, y1, y2, next); + var d2 = distSquare(_v2, _v0); + if (next <= 1 && d2 < d) { + t = next; + d = d2; + } + else { + interval *= 0.5; + } + } + } + if (out) { + out[0] = quadraticAt(x0, x1, x2, t); + out[1] = quadraticAt(y0, y1, y2, t); + } + return mathSqrt(d); + } + function quadraticLength(x0, y0, x1, y1, x2, y2, iteration) { + var px = x0; + var py = y0; + var d = 0; + var step = 1 / iteration; + for (var i = 1; i <= iteration; i++) { + var t = i * step; + var x = quadraticAt(x0, x1, x2, t); + var y = quadraticAt(y0, y1, y2, t); + var dx = x - px; + var dy = y - py; + d += Math.sqrt(dx * dx + dy * dy); + px = x; + py = y; + } + return d; + } + + var regexp = /cubic-bezier\(([0-9,\.e ]+)\)/; + function createCubicEasingFunc(cubicEasingStr) { + var cubic = cubicEasingStr && regexp.exec(cubicEasingStr); + if (cubic) { + var points = cubic[1].split(','); + var a_1 = +trim(points[0]); + var b_1 = +trim(points[1]); + var c_1 = +trim(points[2]); + var d_1 = +trim(points[3]); + if (isNaN(a_1 + b_1 + c_1 + d_1)) { + return; + } + var roots_1 = []; + return function (p) { + return p <= 0 + ? 0 : p >= 1 + ? 1 + : cubicRootAt(0, a_1, c_1, 1, p, roots_1) && cubicAt(0, b_1, d_1, 1, roots_1[0]); + }; + } + } + + var Clip = (function () { + function Clip(opts) { + this._inited = false; + this._startTime = 0; + this._pausedTime = 0; + this._paused = false; + this._life = opts.life || 1000; + this._delay = opts.delay || 0; + this.loop = opts.loop || false; + this.onframe = opts.onframe || noop; + this.ondestroy = opts.ondestroy || noop; + this.onrestart = opts.onrestart || noop; + opts.easing && this.setEasing(opts.easing); + } + Clip.prototype.step = function (globalTime, deltaTime) { + if (!this._inited) { + this._startTime = globalTime + this._delay; + this._inited = true; + } + if (this._paused) { + this._pausedTime += deltaTime; + return; + } + var life = this._life; + var elapsedTime = globalTime - this._startTime - this._pausedTime; + var percent = elapsedTime / life; + if (percent < 0) { + percent = 0; + } + percent = Math.min(percent, 1); + var easingFunc = this.easingFunc; + var schedule = easingFunc ? easingFunc(percent) : percent; + this.onframe(schedule); + if (percent === 1) { + if (this.loop) { + var remainder = elapsedTime % life; + this._startTime = globalTime - remainder; + this._pausedTime = 0; + this.onrestart(); + } + else { + return true; + } + } + return false; + }; + Clip.prototype.pause = function () { + this._paused = true; + }; + Clip.prototype.resume = function () { + this._paused = false; + }; + Clip.prototype.setEasing = function (easing) { + this.easing = easing; + this.easingFunc = isFunction(easing) + ? easing + : easingFuncs[easing] || createCubicEasingFunc(easing); + }; + return Clip; + }()); + + var Entry = (function () { + function Entry(val) { + this.value = val; + } + return Entry; + }()); + var LinkedList = (function () { + function LinkedList() { + this._len = 0; + } + LinkedList.prototype.insert = function (val) { + var entry = new Entry(val); + this.insertEntry(entry); + return entry; + }; + LinkedList.prototype.insertEntry = function (entry) { + if (!this.head) { + this.head = this.tail = entry; + } + else { + this.tail.next = entry; + entry.prev = this.tail; + entry.next = null; + this.tail = entry; + } + this._len++; + }; + LinkedList.prototype.remove = function (entry) { + var prev = entry.prev; + var next = entry.next; + if (prev) { + prev.next = next; + } + else { + this.head = next; + } + if (next) { + next.prev = prev; + } + else { + this.tail = prev; + } + entry.next = entry.prev = null; + this._len--; + }; + LinkedList.prototype.len = function () { + return this._len; + }; + LinkedList.prototype.clear = function () { + this.head = this.tail = null; + this._len = 0; + }; + return LinkedList; + }()); + var LRU = (function () { + function LRU(maxSize) { + this._list = new LinkedList(); + this._maxSize = 10; + this._map = {}; + this._maxSize = maxSize; + } + LRU.prototype.put = function (key, value) { + var list = this._list; + var map = this._map; + var removed = null; + if (map[key] == null) { + var len = list.len(); + var entry = this._lastRemovedEntry; + if (len >= this._maxSize && len > 0) { + var leastUsedEntry = list.head; + list.remove(leastUsedEntry); + delete map[leastUsedEntry.key]; + removed = leastUsedEntry.value; + this._lastRemovedEntry = leastUsedEntry; + } + if (entry) { + entry.value = value; + } + else { + entry = new Entry(value); + } + entry.key = key; + list.insertEntry(entry); + map[key] = entry; + } + return removed; + }; + LRU.prototype.get = function (key) { + var entry = this._map[key]; + var list = this._list; + if (entry != null) { + if (entry !== list.tail) { + list.remove(entry); + list.insertEntry(entry); + } + return entry.value; + } + }; + LRU.prototype.clear = function () { + this._list.clear(); + this._map = {}; + }; + LRU.prototype.len = function () { + return this._list.len(); + }; + return LRU; + }()); + + var kCSSColorTable = { + '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 clampCssByte(i) { + i = Math.round(i); + return i < 0 ? 0 : i > 255 ? 255 : i; + } + function clampCssAngle(i) { + i = Math.round(i); + return i < 0 ? 0 : i > 360 ? 360 : i; + } + function clampCssFloat(f) { + return f < 0 ? 0 : f > 1 ? 1 : f; + } + function parseCssInt(val) { + var str = val; + if (str.length && str.charAt(str.length - 1) === '%') { + return clampCssByte(parseFloat(str) / 100 * 255); + } + return clampCssByte(parseInt(str, 10)); + } + function parseCssFloat(val) { + var str = val; + if (str.length && str.charAt(str.length - 1) === '%') { + return clampCssFloat(parseFloat(str) / 100); + } + return clampCssFloat(parseFloat(str)); + } + function cssHueToRgb(m1, m2, h) { + if (h < 0) { + h += 1; + } + else if (h > 1) { + h -= 1; + } + if (h * 6 < 1) { + return m1 + (m2 - m1) * h * 6; + } + if (h * 2 < 1) { + return m2; + } + if (h * 3 < 2) { + return m1 + (m2 - m1) * (2 / 3 - h) * 6; + } + return m1; + } + function lerpNumber(a, b, p) { + return a + (b - a) * p; + } + function setRgba(out, r, g, b, a) { + out[0] = r; + out[1] = g; + out[2] = b; + out[3] = a; + return out; + } + function copyRgba(out, a) { + out[0] = a[0]; + out[1] = a[1]; + out[2] = a[2]; + out[3] = a[3]; + return out; + } + var colorCache = new LRU(20); + var lastRemovedArr = null; + function putToCache(colorStr, rgbaArr) { + if (lastRemovedArr) { + copyRgba(lastRemovedArr, rgbaArr); + } + lastRemovedArr = colorCache.put(colorStr, lastRemovedArr || (rgbaArr.slice())); + } + function parse(colorStr, rgbaArr) { + if (!colorStr) { + return; + } + rgbaArr = rgbaArr || []; + var cached = colorCache.get(colorStr); + if (cached) { + return copyRgba(rgbaArr, cached); + } + colorStr = colorStr + ''; + var str = colorStr.replace(/ /g, '').toLowerCase(); + if (str in kCSSColorTable) { + copyRgba(rgbaArr, kCSSColorTable[str]); + putToCache(colorStr, rgbaArr); + return rgbaArr; + } + var strLen = str.length; + if (str.charAt(0) === '#') { + if (strLen === 4 || strLen === 5) { + var iv = parseInt(str.slice(1, 4), 16); + if (!(iv >= 0 && iv <= 0xfff)) { + setRgba(rgbaArr, 0, 0, 0, 1); + return; + } + setRgba(rgbaArr, ((iv & 0xf00) >> 4) | ((iv & 0xf00) >> 8), (iv & 0xf0) | ((iv & 0xf0) >> 4), (iv & 0xf) | ((iv & 0xf) << 4), strLen === 5 ? parseInt(str.slice(4), 16) / 0xf : 1); + putToCache(colorStr, rgbaArr); + return rgbaArr; + } + else if (strLen === 7 || strLen === 9) { + var iv = parseInt(str.slice(1, 7), 16); + if (!(iv >= 0 && iv <= 0xffffff)) { + setRgba(rgbaArr, 0, 0, 0, 1); + return; + } + setRgba(rgbaArr, (iv & 0xff0000) >> 16, (iv & 0xff00) >> 8, iv & 0xff, strLen === 9 ? parseInt(str.slice(7), 16) / 0xff : 1); + putToCache(colorStr, rgbaArr); + return rgbaArr; + } + return; + } + var op = str.indexOf('('); + var ep = str.indexOf(')'); + if (op !== -1 && ep + 1 === strLen) { + var fname = str.substr(0, op); + var params = str.substr(op + 1, ep - (op + 1)).split(','); + var alpha = 1; + switch (fname) { + case 'rgba': + if (params.length !== 4) { + return params.length === 3 + ? setRgba(rgbaArr, +params[0], +params[1], +params[2], 1) + : setRgba(rgbaArr, 0, 0, 0, 1); + } + alpha = parseCssFloat(params.pop()); + case 'rgb': + if (params.length >= 3) { + setRgba(rgbaArr, parseCssInt(params[0]), parseCssInt(params[1]), parseCssInt(params[2]), params.length === 3 ? alpha : parseCssFloat(params[3])); + putToCache(colorStr, rgbaArr); + return rgbaArr; + } + else { + setRgba(rgbaArr, 0, 0, 0, 1); + return; + } + case 'hsla': + if (params.length !== 4) { + setRgba(rgbaArr, 0, 0, 0, 1); + return; + } + params[3] = parseCssFloat(params[3]); + hsla2rgba(params, rgbaArr); + putToCache(colorStr, rgbaArr); + return rgbaArr; + case 'hsl': + if (params.length !== 3) { + setRgba(rgbaArr, 0, 0, 0, 1); + return; + } + hsla2rgba(params, rgbaArr); + putToCache(colorStr, rgbaArr); + return rgbaArr; + default: + return; + } + } + setRgba(rgbaArr, 0, 0, 0, 1); + return; + } + function hsla2rgba(hsla, rgba) { + var h = (((parseFloat(hsla[0]) % 360) + 360) % 360) / 360; + var s = parseCssFloat(hsla[1]); + var l = parseCssFloat(hsla[2]); + var m2 = l <= 0.5 ? l * (s + 1) : l + s - l * s; + var m1 = l * 2 - m2; + rgba = rgba || []; + setRgba(rgba, clampCssByte(cssHueToRgb(m1, m2, h + 1 / 3) * 255), clampCssByte(cssHueToRgb(m1, m2, h) * 255), clampCssByte(cssHueToRgb(m1, m2, h - 1 / 3) * 255), 1); + if (hsla.length === 4) { + rgba[3] = hsla[3]; + } + return rgba; + } + function rgba2hsla(rgba) { + if (!rgba) { + return; + } + var R = rgba[0] / 255; + var G = rgba[1] / 255; + var B = rgba[2] / 255; + var vMin = Math.min(R, G, B); + var vMax = Math.max(R, G, B); + var delta = vMax - vMin; + var L = (vMax + vMin) / 2; + var H; + var S; + if (delta === 0) { + H = 0; + S = 0; + } + else { + if (L < 0.5) { + S = delta / (vMax + vMin); + } + else { + S = delta / (2 - vMax - vMin); + } + var deltaR = (((vMax - R) / 6) + (delta / 2)) / delta; + var deltaG = (((vMax - G) / 6) + (delta / 2)) / delta; + var deltaB = (((vMax - B) / 6) + (delta / 2)) / delta; + if (R === vMax) { + H = deltaB - deltaG; + } + else if (G === vMax) { + H = (1 / 3) + deltaR - deltaB; + } + else if (B === vMax) { + H = (2 / 3) + deltaG - deltaR; + } + if (H < 0) { + H += 1; + } + if (H > 1) { + H -= 1; + } + } + var hsla = [H * 360, S, L]; + if (rgba[3] != null) { + hsla.push(rgba[3]); + } + return hsla; + } + function lift(color, level) { + var colorArr = parse(color); + if (colorArr) { + for (var i = 0; i < 3; i++) { + if (level < 0) { + colorArr[i] = colorArr[i] * (1 - level) | 0; + } + else { + colorArr[i] = ((255 - colorArr[i]) * level + colorArr[i]) | 0; + } + if (colorArr[i] > 255) { + colorArr[i] = 255; + } + else if (colorArr[i] < 0) { + colorArr[i] = 0; + } + } + return stringify(colorArr, colorArr.length === 4 ? 'rgba' : 'rgb'); + } + } + function toHex(color) { + var colorArr = parse(color); + if (colorArr) { + return ((1 << 24) + (colorArr[0] << 16) + (colorArr[1] << 8) + (+colorArr[2])).toString(16).slice(1); + } + } + function fastLerp(normalizedValue, colors, out) { + if (!(colors && colors.length) + || !(normalizedValue >= 0 && normalizedValue <= 1)) { + return; + } + out = out || []; + var value = normalizedValue * (colors.length - 1); + var leftIndex = Math.floor(value); + var rightIndex = Math.ceil(value); + var leftColor = colors[leftIndex]; + var rightColor = colors[rightIndex]; + var dv = value - leftIndex; + out[0] = clampCssByte(lerpNumber(leftColor[0], rightColor[0], dv)); + out[1] = clampCssByte(lerpNumber(leftColor[1], rightColor[1], dv)); + out[2] = clampCssByte(lerpNumber(leftColor[2], rightColor[2], dv)); + out[3] = clampCssFloat(lerpNumber(leftColor[3], rightColor[3], dv)); + return out; + } + var fastMapToColor = fastLerp; + function lerp$1(normalizedValue, colors, fullOutput) { + if (!(colors && colors.length) + || !(normalizedValue >= 0 && normalizedValue <= 1)) { + return; + } + var value = normalizedValue * (colors.length - 1); + var leftIndex = Math.floor(value); + var rightIndex = Math.ceil(value); + var leftColor = parse(colors[leftIndex]); + var rightColor = parse(colors[rightIndex]); + var dv = value - leftIndex; + var color = stringify([ + clampCssByte(lerpNumber(leftColor[0], rightColor[0], dv)), + clampCssByte(lerpNumber(leftColor[1], rightColor[1], dv)), + clampCssByte(lerpNumber(leftColor[2], rightColor[2], dv)), + clampCssFloat(lerpNumber(leftColor[3], rightColor[3], dv)) + ], 'rgba'); + return fullOutput + ? { + color: color, + leftIndex: leftIndex, + rightIndex: rightIndex, + value: value + } + : color; + } + var mapToColor = lerp$1; + function modifyHSL(color, h, s, l) { + var colorArr = parse(color); + if (color) { + colorArr = rgba2hsla(colorArr); + h != null && (colorArr[0] = clampCssAngle(h)); + s != null && (colorArr[1] = parseCssFloat(s)); + l != null && (colorArr[2] = parseCssFloat(l)); + return stringify(hsla2rgba(colorArr), 'rgba'); + } + } + function modifyAlpha(color, alpha) { + var colorArr = parse(color); + if (colorArr && alpha != null) { + colorArr[3] = clampCssFloat(alpha); + return stringify(colorArr, 'rgba'); + } + } + function stringify(arrColor, type) { + if (!arrColor || !arrColor.length) { + return; + } + var colorStr = arrColor[0] + ',' + arrColor[1] + ',' + arrColor[2]; + if (type === 'rgba' || type === 'hsva' || type === 'hsla') { + colorStr += ',' + arrColor[3]; + } + return type + '(' + colorStr + ')'; + } + function lum(color, backgroundLum) { + var arr = parse(color); + return arr + ? (0.299 * arr[0] + 0.587 * arr[1] + 0.114 * arr[2]) * arr[3] / 255 + + (1 - arr[3]) * backgroundLum + : 0; + } + function random() { + return stringify([ + Math.round(Math.random() * 255), + Math.round(Math.random() * 255), + Math.round(Math.random() * 255) + ], 'rgb'); + } + var liftedColorCache = new LRU(100); + function liftColor(color) { + if (isString(color)) { + var liftedColor = liftedColorCache.get(color); + if (!liftedColor) { + liftedColor = lift(color, -0.1); + liftedColorCache.put(color, liftedColor); + } + return liftedColor; + } + else if (isGradientObject(color)) { + var ret = extend({}, color); + ret.colorStops = map(color.colorStops, function (stop) { return ({ + offset: stop.offset, + color: lift(stop.color, -0.1) + }); }); + return ret; + } + return color; + } + + var color = /*#__PURE__*/Object.freeze({ + __proto__: null, + parse: parse, + lift: lift, + toHex: toHex, + fastLerp: fastLerp, + fastMapToColor: fastMapToColor, + lerp: lerp$1, + mapToColor: mapToColor, + modifyHSL: modifyHSL, + modifyAlpha: modifyAlpha, + stringify: stringify, + lum: lum, + random: random, + liftColor: liftColor + }); + + var mathRound = Math.round; + function normalizeColor(color) { + var opacity; + if (!color || color === 'transparent') { + color = 'none'; + } + else if (typeof color === 'string' && color.indexOf('rgba') > -1) { + var arr = parse(color); + if (arr) { + color = 'rgb(' + arr[0] + ',' + arr[1] + ',' + arr[2] + ')'; + opacity = arr[3]; + } + } + return { + color: color, + opacity: opacity == null ? 1 : opacity + }; + } + var EPSILON$1 = 1e-4; + function isAroundZero$1(transform) { + return transform < EPSILON$1 && transform > -EPSILON$1; + } + function round3(transform) { + return mathRound(transform * 1e3) / 1e3; + } + function round4(transform) { + return mathRound(transform * 1e4) / 1e4; + } + function getMatrixStr(m) { + return 'matrix(' + + round3(m[0]) + ',' + + round3(m[1]) + ',' + + round3(m[2]) + ',' + + round3(m[3]) + ',' + + round4(m[4]) + ',' + + round4(m[5]) + + ')'; + } + var TEXT_ALIGN_TO_ANCHOR = { + left: 'start', + right: 'end', + center: 'middle', + middle: 'middle' + }; + function adjustTextY(y, lineHeight, textBaseline) { + if (textBaseline === 'top') { + y += lineHeight / 2; + } + else if (textBaseline === 'bottom') { + y -= lineHeight / 2; + } + return y; + } + function hasShadow(style) { + return style + && (style.shadowBlur || style.shadowOffsetX || style.shadowOffsetY); + } + function getShadowKey(displayable) { + var style = displayable.style; + var globalScale = displayable.getGlobalScale(); + return [ + style.shadowColor, + (style.shadowBlur || 0).toFixed(2), + (style.shadowOffsetX || 0).toFixed(2), + (style.shadowOffsetY || 0).toFixed(2), + globalScale[0], + globalScale[1] + ].join(','); + } + function isImagePattern(val) { + return val && (!!val.image); + } + function isSVGPattern(val) { + return val && (!!val.svgElement); + } + function isPattern(val) { + return isImagePattern(val) || isSVGPattern(val); + } + function isLinearGradient(val) { + return val.type === 'linear'; + } + function isRadialGradient(val) { + return val.type === 'radial'; + } + function isGradient(val) { + return val && (val.type === 'linear' + || val.type === 'radial'); + } + function getIdURL(id) { + return "url(#" + id + ")"; + } + function getPathPrecision(el) { + var scale = el.getGlobalScale(); + var size = Math.max(scale[0], scale[1]); + return Math.max(Math.ceil(Math.log(size) / Math.log(10)), 1); + } + function getSRTTransformString(transform) { + var x = transform.x || 0; + var y = transform.y || 0; + var rotation = (transform.rotation || 0) * RADIAN_TO_DEGREE; + var scaleX = retrieve2(transform.scaleX, 1); + var scaleY = retrieve2(transform.scaleY, 1); + var skewX = transform.skewX || 0; + var skewY = transform.skewY || 0; + var res = []; + if (x || y) { + res.push("translate(" + x + "px," + y + "px)"); + } + if (rotation) { + res.push("rotate(" + rotation + ")"); + } + if (scaleX !== 1 || scaleY !== 1) { + res.push("scale(" + scaleX + "," + scaleY + ")"); + } + if (skewX || skewY) { + res.push("skew(" + mathRound(skewX * RADIAN_TO_DEGREE) + "deg, " + mathRound(skewY * RADIAN_TO_DEGREE) + "deg)"); + } + return res.join(' '); + } + var encodeBase64 = (function () { + if (env.hasGlobalWindow && isFunction(window.btoa)) { + return function (str) { + return window.btoa(unescape(encodeURIComponent(str))); + }; + } + if (typeof Buffer !== 'undefined') { + return function (str) { + return Buffer.from(str).toString('base64'); + }; + } + return function (str) { + if ("development" !== 'production') { + logError('Base64 isn\'t natively supported in the current environment.'); + } + return null; + }; + })(); + + var arraySlice = Array.prototype.slice; + function interpolateNumber(p0, p1, percent) { + return (p1 - p0) * percent + p0; + } + function interpolate1DArray(out, p0, p1, percent) { + var len = p0.length; + for (var i = 0; i < len; i++) { + out[i] = interpolateNumber(p0[i], p1[i], percent); + } + return out; + } + function interpolate2DArray(out, p0, p1, percent) { + var len = p0.length; + var len2 = len && p0[0].length; + for (var i = 0; i < len; i++) { + if (!out[i]) { + out[i] = []; + } + for (var j = 0; j < len2; j++) { + out[i][j] = interpolateNumber(p0[i][j], p1[i][j], percent); + } + } + return out; + } + function add1DArray(out, p0, p1, sign) { + var len = p0.length; + for (var i = 0; i < len; i++) { + out[i] = p0[i] + p1[i] * sign; + } + return out; + } + function add2DArray(out, p0, p1, sign) { + var len = p0.length; + var len2 = len && p0[0].length; + for (var i = 0; i < len; i++) { + if (!out[i]) { + out[i] = []; + } + for (var j = 0; j < len2; j++) { + out[i][j] = p0[i][j] + p1[i][j] * sign; + } + } + return out; + } + function fillColorStops(val0, val1) { + var len0 = val0.length; + var len1 = val1.length; + var shorterArr = len0 > len1 ? val1 : val0; + var shorterLen = Math.min(len0, len1); + var last = shorterArr[shorterLen - 1] || { color: [0, 0, 0, 0], offset: 0 }; + for (var i = shorterLen; i < Math.max(len0, len1); i++) { + shorterArr.push({ + offset: last.offset, + color: last.color.slice() + }); + } + } + function fillArray(val0, val1, arrDim) { + var arr0 = val0; + var arr1 = val1; + if (!arr0.push || !arr1.push) { + return; + } + var arr0Len = arr0.length; + var arr1Len = arr1.length; + if (arr0Len !== arr1Len) { + var isPreviousLarger = arr0Len > arr1Len; + if (isPreviousLarger) { + arr0.length = arr1Len; + } + else { + for (var i = arr0Len; i < arr1Len; i++) { + arr0.push(arrDim === 1 ? arr1[i] : arraySlice.call(arr1[i])); + } + } + } + var len2 = arr0[0] && arr0[0].length; + for (var i = 0; i < arr0.length; i++) { + if (arrDim === 1) { + if (isNaN(arr0[i])) { + arr0[i] = arr1[i]; + } + } + else { + for (var j = 0; j < len2; j++) { + if (isNaN(arr0[i][j])) { + arr0[i][j] = arr1[i][j]; + } + } + } + } + } + function cloneValue(value) { + if (isArrayLike(value)) { + var len = value.length; + if (isArrayLike(value[0])) { + var ret = []; + for (var i = 0; i < len; i++) { + ret.push(arraySlice.call(value[i])); + } + return ret; + } + return arraySlice.call(value); + } + return value; + } + function rgba2String(rgba) { + rgba[0] = Math.floor(rgba[0]) || 0; + rgba[1] = Math.floor(rgba[1]) || 0; + rgba[2] = Math.floor(rgba[2]) || 0; + rgba[3] = rgba[3] == null ? 1 : rgba[3]; + return 'rgba(' + rgba.join(',') + ')'; + } + function guessArrayDim(value) { + return isArrayLike(value && value[0]) ? 2 : 1; + } + var VALUE_TYPE_NUMBER = 0; + var VALUE_TYPE_1D_ARRAY = 1; + var VALUE_TYPE_2D_ARRAY = 2; + var VALUE_TYPE_COLOR = 3; + var VALUE_TYPE_LINEAR_GRADIENT = 4; + var VALUE_TYPE_RADIAL_GRADIENT = 5; + var VALUE_TYPE_UNKOWN = 6; + function isGradientValueType(valType) { + return valType === VALUE_TYPE_LINEAR_GRADIENT || valType === VALUE_TYPE_RADIAL_GRADIENT; + } + function isArrayValueType(valType) { + return valType === VALUE_TYPE_1D_ARRAY || valType === VALUE_TYPE_2D_ARRAY; + } + var tmpRgba = [0, 0, 0, 0]; + var Track = (function () { + function Track(propName) { + this.keyframes = []; + this.discrete = false; + this._invalid = false; + this._needsSort = false; + this._lastFr = 0; + this._lastFrP = 0; + this.propName = propName; + } + Track.prototype.isFinished = function () { + return this._finished; + }; + Track.prototype.setFinished = function () { + this._finished = true; + if (this._additiveTrack) { + this._additiveTrack.setFinished(); + } + }; + Track.prototype.needsAnimate = function () { + return this.keyframes.length >= 1; + }; + Track.prototype.getAdditiveTrack = function () { + return this._additiveTrack; + }; + Track.prototype.addKeyframe = function (time, rawValue, easing) { + this._needsSort = true; + var keyframes = this.keyframes; + var len = keyframes.length; + var discrete = false; + var valType = VALUE_TYPE_UNKOWN; + var value = rawValue; + if (isArrayLike(rawValue)) { + var arrayDim = guessArrayDim(rawValue); + valType = arrayDim; + if (arrayDim === 1 && !isNumber(rawValue[0]) + || arrayDim === 2 && !isNumber(rawValue[0][0])) { + discrete = true; + } + } + else { + if (isNumber(rawValue) && !eqNaN(rawValue)) { + valType = VALUE_TYPE_NUMBER; + } + else if (isString(rawValue)) { + if (!isNaN(+rawValue)) { + valType = VALUE_TYPE_NUMBER; + } + else { + var colorArray = parse(rawValue); + if (colorArray) { + value = colorArray; + valType = VALUE_TYPE_COLOR; + } + } + } + else if (isGradientObject(rawValue)) { + var parsedGradient = extend({}, value); + parsedGradient.colorStops = map(rawValue.colorStops, function (colorStop) { return ({ + offset: colorStop.offset, + color: parse(colorStop.color) + }); }); + if (isLinearGradient(rawValue)) { + valType = VALUE_TYPE_LINEAR_GRADIENT; + } + else if (isRadialGradient(rawValue)) { + valType = VALUE_TYPE_RADIAL_GRADIENT; + } + value = parsedGradient; + } + } + if (len === 0) { + this.valType = valType; + } + else if (valType !== this.valType || valType === VALUE_TYPE_UNKOWN) { + discrete = true; + } + this.discrete = this.discrete || discrete; + var kf = { + time: time, + value: value, + rawValue: rawValue, + percent: 0 + }; + if (easing) { + kf.easing = easing; + kf.easingFunc = isFunction(easing) + ? easing + : easingFuncs[easing] || createCubicEasingFunc(easing); + } + keyframes.push(kf); + return kf; + }; + Track.prototype.prepare = function (maxTime, additiveTrack) { + var kfs = this.keyframes; + if (this._needsSort) { + kfs.sort(function (a, b) { + return a.time - b.time; + }); + } + var valType = this.valType; + var kfsLen = kfs.length; + var lastKf = kfs[kfsLen - 1]; + var isDiscrete = this.discrete; + var isArr = isArrayValueType(valType); + var isGradient = isGradientValueType(valType); + for (var i = 0; i < kfsLen; i++) { + var kf = kfs[i]; + var value = kf.value; + var lastValue = lastKf.value; + kf.percent = kf.time / maxTime; + if (!isDiscrete) { + if (isArr && i !== kfsLen - 1) { + fillArray(value, lastValue, valType); + } + else if (isGradient) { + fillColorStops(value.colorStops, lastValue.colorStops); + } + } + } + if (!isDiscrete + && valType !== VALUE_TYPE_RADIAL_GRADIENT + && additiveTrack + && this.needsAnimate() + && additiveTrack.needsAnimate() + && valType === additiveTrack.valType + && !additiveTrack._finished) { + this._additiveTrack = additiveTrack; + var startValue = kfs[0].value; + for (var i = 0; i < kfsLen; i++) { + if (valType === VALUE_TYPE_NUMBER) { + kfs[i].additiveValue = kfs[i].value - startValue; + } + else if (valType === VALUE_TYPE_COLOR) { + kfs[i].additiveValue = + add1DArray([], kfs[i].value, startValue, -1); + } + else if (isArrayValueType(valType)) { + kfs[i].additiveValue = valType === VALUE_TYPE_1D_ARRAY + ? add1DArray([], kfs[i].value, startValue, -1) + : add2DArray([], kfs[i].value, startValue, -1); + } + } + } + }; + Track.prototype.step = function (target, percent) { + if (this._finished) { + return; + } + if (this._additiveTrack && this._additiveTrack._finished) { + this._additiveTrack = null; + } + var isAdditive = this._additiveTrack != null; + var valueKey = isAdditive ? 'additiveValue' : 'value'; + var valType = this.valType; + var keyframes = this.keyframes; + var kfsNum = keyframes.length; + var propName = this.propName; + var isValueColor = valType === VALUE_TYPE_COLOR; + var frameIdx; + var lastFrame = this._lastFr; + var mathMin = Math.min; + var frame; + var nextFrame; + if (kfsNum === 1) { + frame = nextFrame = keyframes[0]; + } + else { + if (percent < 0) { + frameIdx = 0; + } + else if (percent < this._lastFrP) { + var start = mathMin(lastFrame + 1, kfsNum - 1); + for (frameIdx = start; frameIdx >= 0; frameIdx--) { + if (keyframes[frameIdx].percent <= percent) { + break; + } + } + frameIdx = mathMin(frameIdx, kfsNum - 2); + } + else { + for (frameIdx = lastFrame; frameIdx < kfsNum; frameIdx++) { + if (keyframes[frameIdx].percent > percent) { + break; + } + } + frameIdx = mathMin(frameIdx - 1, kfsNum - 2); + } + nextFrame = keyframes[frameIdx + 1]; + frame = keyframes[frameIdx]; + } + if (!(frame && nextFrame)) { + return; + } + this._lastFr = frameIdx; + this._lastFrP = percent; + var interval = (nextFrame.percent - frame.percent); + var w = interval === 0 ? 1 : mathMin((percent - frame.percent) / interval, 1); + if (nextFrame.easingFunc) { + w = nextFrame.easingFunc(w); + } + var targetArr = isAdditive ? this._additiveValue + : (isValueColor ? tmpRgba : target[propName]); + if ((isArrayValueType(valType) || isValueColor) && !targetArr) { + targetArr = this._additiveValue = []; + } + if (this.discrete) { + target[propName] = w < 1 ? frame.rawValue : nextFrame.rawValue; + } + else if (isArrayValueType(valType)) { + valType === VALUE_TYPE_1D_ARRAY + ? interpolate1DArray(targetArr, frame[valueKey], nextFrame[valueKey], w) + : interpolate2DArray(targetArr, frame[valueKey], nextFrame[valueKey], w); + } + else if (isGradientValueType(valType)) { + var val = frame[valueKey]; + var nextVal_1 = nextFrame[valueKey]; + var isLinearGradient_1 = valType === VALUE_TYPE_LINEAR_GRADIENT; + target[propName] = { + type: isLinearGradient_1 ? 'linear' : 'radial', + x: interpolateNumber(val.x, nextVal_1.x, w), + y: interpolateNumber(val.y, nextVal_1.y, w), + colorStops: map(val.colorStops, function (colorStop, idx) { + var nextColorStop = nextVal_1.colorStops[idx]; + return { + offset: interpolateNumber(colorStop.offset, nextColorStop.offset, w), + color: rgba2String(interpolate1DArray([], colorStop.color, nextColorStop.color, w)) + }; + }), + global: nextVal_1.global + }; + if (isLinearGradient_1) { + target[propName].x2 = interpolateNumber(val.x2, nextVal_1.x2, w); + target[propName].y2 = interpolateNumber(val.y2, nextVal_1.y2, w); + } + else { + target[propName].r = interpolateNumber(val.r, nextVal_1.r, w); + } + } + else if (isValueColor) { + interpolate1DArray(targetArr, frame[valueKey], nextFrame[valueKey], w); + if (!isAdditive) { + target[propName] = rgba2String(targetArr); + } + } + else { + var value = interpolateNumber(frame[valueKey], nextFrame[valueKey], w); + if (isAdditive) { + this._additiveValue = value; + } + else { + target[propName] = value; + } + } + if (isAdditive) { + this._addToTarget(target); + } + }; + Track.prototype._addToTarget = function (target) { + var valType = this.valType; + var propName = this.propName; + var additiveValue = this._additiveValue; + if (valType === VALUE_TYPE_NUMBER) { + target[propName] = target[propName] + additiveValue; + } + else if (valType === VALUE_TYPE_COLOR) { + parse(target[propName], tmpRgba); + add1DArray(tmpRgba, tmpRgba, additiveValue, 1); + target[propName] = rgba2String(tmpRgba); + } + else if (valType === VALUE_TYPE_1D_ARRAY) { + add1DArray(target[propName], target[propName], additiveValue, 1); + } + else if (valType === VALUE_TYPE_2D_ARRAY) { + add2DArray(target[propName], target[propName], additiveValue, 1); + } + }; + return Track; + }()); + var Animator = (function () { + function Animator(target, loop, allowDiscreteAnimation, additiveTo) { + this._tracks = {}; + this._trackKeys = []; + this._maxTime = 0; + this._started = 0; + this._clip = null; + this._target = target; + this._loop = loop; + if (loop && additiveTo) { + logError('Can\' use additive animation on looped animation.'); + return; + } + this._additiveAnimators = additiveTo; + this._allowDiscrete = allowDiscreteAnimation; + } + Animator.prototype.getMaxTime = function () { + return this._maxTime; + }; + Animator.prototype.getDelay = function () { + return this._delay; + }; + Animator.prototype.getLoop = function () { + return this._loop; + }; + Animator.prototype.getTarget = function () { + return this._target; + }; + Animator.prototype.changeTarget = function (target) { + this._target = target; + }; + Animator.prototype.when = function (time, props, easing) { + return this.whenWithKeys(time, props, keys(props), easing); + }; + Animator.prototype.whenWithKeys = function (time, props, propNames, easing) { + var tracks = this._tracks; + for (var i = 0; i < propNames.length; i++) { + var propName = propNames[i]; + var track = tracks[propName]; + if (!track) { + track = tracks[propName] = new Track(propName); + var initialValue = void 0; + var additiveTrack = this._getAdditiveTrack(propName); + if (additiveTrack) { + var addtiveTrackKfs = additiveTrack.keyframes; + var lastFinalKf = addtiveTrackKfs[addtiveTrackKfs.length - 1]; + initialValue = lastFinalKf && lastFinalKf.value; + if (additiveTrack.valType === VALUE_TYPE_COLOR && initialValue) { + initialValue = rgba2String(initialValue); + } + } + else { + initialValue = this._target[propName]; + } + if (initialValue == null) { + continue; + } + if (time > 0) { + track.addKeyframe(0, cloneValue(initialValue), easing); + } + this._trackKeys.push(propName); + } + track.addKeyframe(time, cloneValue(props[propName]), easing); + } + this._maxTime = Math.max(this._maxTime, time); + return this; + }; + Animator.prototype.pause = function () { + this._clip.pause(); + this._paused = true; + }; + Animator.prototype.resume = function () { + this._clip.resume(); + this._paused = false; + }; + Animator.prototype.isPaused = function () { + return !!this._paused; + }; + Animator.prototype.duration = function (duration) { + this._maxTime = duration; + this._force = true; + return this; + }; + Animator.prototype._doneCallback = function () { + this._setTracksFinished(); + this._clip = null; + var doneList = this._doneCbs; + if (doneList) { + var len = doneList.length; + for (var i = 0; i < len; i++) { + doneList[i].call(this); + } + } + }; + Animator.prototype._abortedCallback = function () { + this._setTracksFinished(); + var animation = this.animation; + var abortedList = this._abortedCbs; + if (animation) { + animation.removeClip(this._clip); + } + this._clip = null; + if (abortedList) { + for (var i = 0; i < abortedList.length; i++) { + abortedList[i].call(this); + } + } + }; + Animator.prototype._setTracksFinished = function () { + var tracks = this._tracks; + var tracksKeys = this._trackKeys; + for (var i = 0; i < tracksKeys.length; i++) { + tracks[tracksKeys[i]].setFinished(); + } + }; + Animator.prototype._getAdditiveTrack = function (trackName) { + var additiveTrack; + var additiveAnimators = this._additiveAnimators; + if (additiveAnimators) { + for (var i = 0; i < additiveAnimators.length; i++) { + var track = additiveAnimators[i].getTrack(trackName); + if (track) { + additiveTrack = track; + } + } + } + return additiveTrack; + }; + Animator.prototype.start = function (easing) { + if (this._started > 0) { + return; + } + this._started = 1; + var self = this; + var tracks = []; + var maxTime = this._maxTime || 0; + for (var i = 0; i < this._trackKeys.length; i++) { + var propName = this._trackKeys[i]; + var track = this._tracks[propName]; + var additiveTrack = this._getAdditiveTrack(propName); + var kfs = track.keyframes; + var kfsNum = kfs.length; + track.prepare(maxTime, additiveTrack); + if (track.needsAnimate()) { + if (!this._allowDiscrete && track.discrete) { + var lastKf = kfs[kfsNum - 1]; + if (lastKf) { + self._target[track.propName] = lastKf.rawValue; + } + track.setFinished(); + } + else { + tracks.push(track); + } + } + } + if (tracks.length || this._force) { + var clip = new Clip({ + life: maxTime, + loop: this._loop, + delay: this._delay || 0, + onframe: function (percent) { + self._started = 2; + var additiveAnimators = self._additiveAnimators; + if (additiveAnimators) { + var stillHasAdditiveAnimator = false; + for (var i = 0; i < additiveAnimators.length; i++) { + if (additiveAnimators[i]._clip) { + stillHasAdditiveAnimator = true; + break; + } + } + if (!stillHasAdditiveAnimator) { + self._additiveAnimators = null; + } + } + for (var i = 0; i < tracks.length; i++) { + tracks[i].step(self._target, percent); + } + var onframeList = self._onframeCbs; + if (onframeList) { + for (var i = 0; i < onframeList.length; i++) { + onframeList[i](self._target, percent); + } + } + }, + ondestroy: function () { + self._doneCallback(); + } + }); + this._clip = clip; + if (this.animation) { + this.animation.addClip(clip); + } + if (easing) { + clip.setEasing(easing); + } + } + else { + this._doneCallback(); + } + return this; + }; + Animator.prototype.stop = function (forwardToLast) { + if (!this._clip) { + return; + } + var clip = this._clip; + if (forwardToLast) { + clip.onframe(1); + } + this._abortedCallback(); + }; + Animator.prototype.delay = function (time) { + this._delay = time; + return this; + }; + Animator.prototype.during = function (cb) { + if (cb) { + if (!this._onframeCbs) { + this._onframeCbs = []; + } + this._onframeCbs.push(cb); + } + return this; + }; + Animator.prototype.done = function (cb) { + if (cb) { + if (!this._doneCbs) { + this._doneCbs = []; + } + this._doneCbs.push(cb); + } + return this; + }; + Animator.prototype.aborted = function (cb) { + if (cb) { + if (!this._abortedCbs) { + this._abortedCbs = []; + } + this._abortedCbs.push(cb); + } + return this; + }; + Animator.prototype.getClip = function () { + return this._clip; + }; + Animator.prototype.getTrack = function (propName) { + return this._tracks[propName]; + }; + Animator.prototype.getTracks = function () { + var _this = this; + return map(this._trackKeys, function (key) { return _this._tracks[key]; }); + }; + Animator.prototype.stopTracks = function (propNames, forwardToLast) { + if (!propNames.length || !this._clip) { + return true; + } + var tracks = this._tracks; + var tracksKeys = this._trackKeys; + for (var i = 0; i < propNames.length; i++) { + var track = tracks[propNames[i]]; + if (track && !track.isFinished()) { + if (forwardToLast) { + track.step(this._target, 1); + } + else if (this._started === 1) { + track.step(this._target, 0); + } + track.setFinished(); + } + } + var allAborted = true; + for (var i = 0; i < tracksKeys.length; i++) { + if (!tracks[tracksKeys[i]].isFinished()) { + allAborted = false; + break; + } + } + if (allAborted) { + this._abortedCallback(); + } + return allAborted; + }; + Animator.prototype.saveTo = function (target, trackKeys, firstOrLast) { + if (!target) { + return; + } + trackKeys = trackKeys || this._trackKeys; + for (var i = 0; i < trackKeys.length; i++) { + var propName = trackKeys[i]; + var track = this._tracks[propName]; + if (!track || track.isFinished()) { + continue; + } + var kfs = track.keyframes; + var kf = kfs[firstOrLast ? 0 : kfs.length - 1]; + if (kf) { + target[propName] = cloneValue(kf.rawValue); + } + } + }; + Animator.prototype.__changeFinalValue = function (finalProps, trackKeys) { + trackKeys = trackKeys || keys(finalProps); + for (var i = 0; i < trackKeys.length; i++) { + var propName = trackKeys[i]; + var track = this._tracks[propName]; + if (!track) { + continue; + } + var kfs = track.keyframes; + if (kfs.length > 1) { + var lastKf = kfs.pop(); + track.addKeyframe(lastKf.time, finalProps[propName]); + track.prepare(this._maxTime, track.getAdditiveTrack()); + } + } + }; + return Animator; + }()); + + function getTime() { + return new Date().getTime(); + } + var Animation = (function (_super) { + __extends(Animation, _super); + function Animation(opts) { + var _this = _super.call(this) || this; + _this._running = false; + _this._time = 0; + _this._pausedTime = 0; + _this._pauseStart = 0; + _this._paused = false; + opts = opts || {}; + _this.stage = opts.stage || {}; + return _this; + } + Animation.prototype.addClip = function (clip) { + if (clip.animation) { + this.removeClip(clip); + } + if (!this._head) { + this._head = this._tail = clip; + } + else { + this._tail.next = clip; + clip.prev = this._tail; + clip.next = null; + this._tail = clip; + } + clip.animation = this; + }; + Animation.prototype.addAnimator = function (animator) { + animator.animation = this; + var clip = animator.getClip(); + if (clip) { + this.addClip(clip); + } + }; + Animation.prototype.removeClip = function (clip) { + if (!clip.animation) { + return; + } + var prev = clip.prev; + var next = clip.next; + if (prev) { + prev.next = next; + } + else { + this._head = next; + } + if (next) { + next.prev = prev; + } + else { + this._tail = prev; + } + clip.next = clip.prev = clip.animation = null; + }; + Animation.prototype.removeAnimator = function (animator) { + var clip = animator.getClip(); + if (clip) { + this.removeClip(clip); + } + animator.animation = null; + }; + Animation.prototype.update = function (notTriggerFrameAndStageUpdate) { + var time = getTime() - this._pausedTime; + var delta = time - this._time; + var clip = this._head; + while (clip) { + var nextClip = clip.next; + var finished = clip.step(time, delta); + if (finished) { + clip.ondestroy(); + this.removeClip(clip); + clip = nextClip; + } + else { + clip = nextClip; + } + } + this._time = time; + if (!notTriggerFrameAndStageUpdate) { + this.trigger('frame', delta); + this.stage.update && this.stage.update(); + } + }; + Animation.prototype._startLoop = function () { + var self = this; + this._running = true; + function step() { + if (self._running) { + requestAnimationFrame$1(step); + !self._paused && self.update(); + } + } + requestAnimationFrame$1(step); + }; + Animation.prototype.start = function () { + if (this._running) { + return; + } + this._time = getTime(); + this._pausedTime = 0; + this._startLoop(); + }; + Animation.prototype.stop = function () { + this._running = false; + }; + Animation.prototype.pause = function () { + if (!this._paused) { + this._pauseStart = getTime(); + this._paused = true; + } + }; + Animation.prototype.resume = function () { + if (this._paused) { + this._pausedTime += getTime() - this._pauseStart; + this._paused = false; + } + }; + Animation.prototype.clear = function () { + var clip = this._head; + while (clip) { + var nextClip = clip.next; + clip.prev = clip.next = clip.animation = null; + clip = nextClip; + } + this._head = this._tail = null; + }; + Animation.prototype.isFinished = function () { + return this._head == null; + }; + Animation.prototype.animate = function (target, options) { + options = options || {}; + this.start(); + var animator = new Animator(target, options.loop); + this.addAnimator(animator); + return animator; + }; + return Animation; + }(Eventful)); + + var TOUCH_CLICK_DELAY = 300; + var globalEventSupported = env.domSupported; + var localNativeListenerNames = (function () { + var mouseHandlerNames = [ + 'click', 'dblclick', 'mousewheel', 'wheel', 'mouseout', + 'mouseup', 'mousedown', 'mousemove', 'contextmenu' + ]; + var touchHandlerNames = [ + 'touchstart', 'touchend', 'touchmove' + ]; + var pointerEventNameMap = { + pointerdown: 1, pointerup: 1, pointermove: 1, pointerout: 1 + }; + var pointerHandlerNames = map(mouseHandlerNames, function (name) { + var nm = name.replace('mouse', 'pointer'); + return pointerEventNameMap.hasOwnProperty(nm) ? nm : name; + }); + return { + mouse: mouseHandlerNames, + touch: touchHandlerNames, + pointer: pointerHandlerNames + }; + })(); + var globalNativeListenerNames = { + mouse: ['mousemove', 'mouseup'], + pointer: ['pointermove', 'pointerup'] + }; + var wheelEventSupported = false; + function isPointerFromTouch(event) { + var pointerType = event.pointerType; + return pointerType === 'pen' || pointerType === 'touch'; + } + function setTouchTimer(scope) { + scope.touching = true; + if (scope.touchTimer != null) { + clearTimeout(scope.touchTimer); + scope.touchTimer = null; + } + scope.touchTimer = setTimeout(function () { + scope.touching = false; + scope.touchTimer = null; + }, 700); + } + function markTouch(event) { + event && (event.zrByTouch = true); + } + function normalizeGlobalEvent(instance, event) { + return normalizeEvent(instance.dom, new FakeGlobalEvent(instance, event), true); + } + function isLocalEl(instance, el) { + var elTmp = el; + var isLocal = false; + while (elTmp && elTmp.nodeType !== 9 + && !(isLocal = elTmp.domBelongToZr + || (elTmp !== el && elTmp === instance.painterRoot))) { + elTmp = elTmp.parentNode; + } + return isLocal; + } + var FakeGlobalEvent = (function () { + function FakeGlobalEvent(instance, event) { + this.stopPropagation = noop; + this.stopImmediatePropagation = noop; + this.preventDefault = noop; + this.type = event.type; + this.target = this.currentTarget = instance.dom; + this.pointerType = event.pointerType; + this.clientX = event.clientX; + this.clientY = event.clientY; + } + return FakeGlobalEvent; + }()); + var localDOMHandlers = { + mousedown: function (event) { + event = normalizeEvent(this.dom, event); + this.__mayPointerCapture = [event.zrX, event.zrY]; + this.trigger('mousedown', event); + }, + mousemove: function (event) { + event = normalizeEvent(this.dom, event); + var downPoint = this.__mayPointerCapture; + if (downPoint && (event.zrX !== downPoint[0] || event.zrY !== downPoint[1])) { + this.__togglePointerCapture(true); + } + this.trigger('mousemove', event); + }, + mouseup: function (event) { + event = normalizeEvent(this.dom, event); + this.__togglePointerCapture(false); + this.trigger('mouseup', event); + }, + mouseout: function (event) { + event = normalizeEvent(this.dom, event); + var element = event.toElement || event.relatedTarget; + if (!isLocalEl(this, element)) { + if (this.__pointerCapturing) { + event.zrEventControl = 'no_globalout'; + } + this.trigger('mouseout', event); + } + }, + wheel: function (event) { + wheelEventSupported = true; + event = normalizeEvent(this.dom, event); + this.trigger('mousewheel', event); + }, + mousewheel: function (event) { + if (wheelEventSupported) { + return; + } + event = normalizeEvent(this.dom, event); + this.trigger('mousewheel', event); + }, + touchstart: function (event) { + event = normalizeEvent(this.dom, event); + markTouch(event); + this.__lastTouchMoment = new Date(); + this.handler.processGesture(event, 'start'); + localDOMHandlers.mousemove.call(this, event); + localDOMHandlers.mousedown.call(this, event); + }, + touchmove: function (event) { + event = normalizeEvent(this.dom, event); + markTouch(event); + this.handler.processGesture(event, 'change'); + localDOMHandlers.mousemove.call(this, event); + }, + touchend: function (event) { + event = normalizeEvent(this.dom, event); + markTouch(event); + this.handler.processGesture(event, 'end'); + localDOMHandlers.mouseup.call(this, event); + if (+new Date() - (+this.__lastTouchMoment) < TOUCH_CLICK_DELAY) { + localDOMHandlers.click.call(this, event); + } + }, + pointerdown: function (event) { + localDOMHandlers.mousedown.call(this, event); + }, + pointermove: function (event) { + if (!isPointerFromTouch(event)) { + localDOMHandlers.mousemove.call(this, event); + } + }, + pointerup: function (event) { + localDOMHandlers.mouseup.call(this, event); + }, + pointerout: function (event) { + if (!isPointerFromTouch(event)) { + localDOMHandlers.mouseout.call(this, event); + } + } + }; + each(['click', 'dblclick', 'contextmenu'], function (name) { + localDOMHandlers[name] = function (event) { + event = normalizeEvent(this.dom, event); + this.trigger(name, event); + }; + }); + var globalDOMHandlers = { + pointermove: function (event) { + if (!isPointerFromTouch(event)) { + globalDOMHandlers.mousemove.call(this, event); + } + }, + pointerup: function (event) { + globalDOMHandlers.mouseup.call(this, event); + }, + mousemove: function (event) { + this.trigger('mousemove', event); + }, + mouseup: function (event) { + var pointerCaptureReleasing = this.__pointerCapturing; + this.__togglePointerCapture(false); + this.trigger('mouseup', event); + if (pointerCaptureReleasing) { + event.zrEventControl = 'only_globalout'; + this.trigger('mouseout', event); + } + } + }; + function mountLocalDOMEventListeners(instance, scope) { + var domHandlers = scope.domHandlers; + if (env.pointerEventsSupported) { + each(localNativeListenerNames.pointer, function (nativeEventName) { + mountSingleDOMEventListener(scope, nativeEventName, function (event) { + domHandlers[nativeEventName].call(instance, event); + }); + }); + } + else { + if (env.touchEventsSupported) { + each(localNativeListenerNames.touch, function (nativeEventName) { + mountSingleDOMEventListener(scope, nativeEventName, function (event) { + domHandlers[nativeEventName].call(instance, event); + setTouchTimer(scope); + }); + }); + } + each(localNativeListenerNames.mouse, function (nativeEventName) { + mountSingleDOMEventListener(scope, nativeEventName, function (event) { + event = getNativeEvent(event); + if (!scope.touching) { + domHandlers[nativeEventName].call(instance, event); + } + }); + }); + } + } + function mountGlobalDOMEventListeners(instance, scope) { + if (env.pointerEventsSupported) { + each(globalNativeListenerNames.pointer, mount); + } + else if (!env.touchEventsSupported) { + each(globalNativeListenerNames.mouse, mount); + } + function mount(nativeEventName) { + function nativeEventListener(event) { + event = getNativeEvent(event); + if (!isLocalEl(instance, event.target)) { + event = normalizeGlobalEvent(instance, event); + scope.domHandlers[nativeEventName].call(instance, event); + } + } + mountSingleDOMEventListener(scope, nativeEventName, nativeEventListener, { capture: true }); + } + } + function mountSingleDOMEventListener(scope, nativeEventName, listener, opt) { + scope.mounted[nativeEventName] = listener; + scope.listenerOpts[nativeEventName] = opt; + addEventListener(scope.domTarget, nativeEventName, listener, opt); + } + function unmountDOMEventListeners(scope) { + var mounted = scope.mounted; + for (var nativeEventName in mounted) { + if (mounted.hasOwnProperty(nativeEventName)) { + removeEventListener(scope.domTarget, nativeEventName, mounted[nativeEventName], scope.listenerOpts[nativeEventName]); + } + } + scope.mounted = {}; + } + var DOMHandlerScope = (function () { + function DOMHandlerScope(domTarget, domHandlers) { + this.mounted = {}; + this.listenerOpts = {}; + this.touching = false; + this.domTarget = domTarget; + this.domHandlers = domHandlers; + } + return DOMHandlerScope; + }()); + var HandlerDomProxy = (function (_super) { + __extends(HandlerDomProxy, _super); + function HandlerDomProxy(dom, painterRoot) { + var _this = _super.call(this) || this; + _this.__pointerCapturing = false; + _this.dom = dom; + _this.painterRoot = painterRoot; + _this._localHandlerScope = new DOMHandlerScope(dom, localDOMHandlers); + if (globalEventSupported) { + _this._globalHandlerScope = new DOMHandlerScope(document, globalDOMHandlers); + } + mountLocalDOMEventListeners(_this, _this._localHandlerScope); + return _this; + } + HandlerDomProxy.prototype.dispose = function () { + unmountDOMEventListeners(this._localHandlerScope); + if (globalEventSupported) { + unmountDOMEventListeners(this._globalHandlerScope); + } + }; + HandlerDomProxy.prototype.setCursor = function (cursorStyle) { + this.dom.style && (this.dom.style.cursor = cursorStyle || 'default'); + }; + HandlerDomProxy.prototype.__togglePointerCapture = function (isPointerCapturing) { + this.__mayPointerCapture = null; + if (globalEventSupported + && ((+this.__pointerCapturing) ^ (+isPointerCapturing))) { + this.__pointerCapturing = isPointerCapturing; + var globalHandlerScope = this._globalHandlerScope; + isPointerCapturing + ? mountGlobalDOMEventListeners(this, globalHandlerScope) + : unmountDOMEventListeners(globalHandlerScope); + } + }; + return HandlerDomProxy; + }(Eventful)); + + var dpr = 1; + if (env.hasGlobalWindow) { + dpr = Math.max(window.devicePixelRatio + || (window.screen && window.screen.deviceXDPI / window.screen.logicalXDPI) + || 1, 1); + } + var devicePixelRatio = dpr; + var DARK_MODE_THRESHOLD = 0.4; + var DARK_LABEL_COLOR = '#333'; + var LIGHT_LABEL_COLOR = '#ccc'; + var LIGHTER_LABEL_COLOR = '#eee'; + + var mIdentity = identity; + var EPSILON$2 = 5e-5; + function isNotAroundZero$1(val) { + return val > EPSILON$2 || val < -EPSILON$2; + } + var scaleTmp = []; + var tmpTransform = []; + var originTransform = create$1(); + var abs = Math.abs; + var Transformable = (function () { + function Transformable() { + } + Transformable.prototype.getLocalTransform = function (m) { + return Transformable.getLocalTransform(this, m); + }; + Transformable.prototype.setPosition = function (arr) { + this.x = arr[0]; + this.y = arr[1]; + }; + Transformable.prototype.setScale = function (arr) { + this.scaleX = arr[0]; + this.scaleY = arr[1]; + }; + Transformable.prototype.setSkew = function (arr) { + this.skewX = arr[0]; + this.skewY = arr[1]; + }; + Transformable.prototype.setOrigin = function (arr) { + this.originX = arr[0]; + this.originY = arr[1]; + }; + Transformable.prototype.needLocalTransform = function () { + return isNotAroundZero$1(this.rotation) + || isNotAroundZero$1(this.x) + || isNotAroundZero$1(this.y) + || isNotAroundZero$1(this.scaleX - 1) + || isNotAroundZero$1(this.scaleY - 1) + || isNotAroundZero$1(this.skewX) + || isNotAroundZero$1(this.skewY); + }; + Transformable.prototype.updateTransform = function () { + var parentTransform = this.parent && this.parent.transform; + var needLocalTransform = this.needLocalTransform(); + var m = this.transform; + if (!(needLocalTransform || parentTransform)) { + if (m) { + mIdentity(m); + this.invTransform = null; + } + return; + } + m = m || create$1(); + if (needLocalTransform) { + this.getLocalTransform(m); + } + else { + mIdentity(m); + } + if (parentTransform) { + if (needLocalTransform) { + mul$1(m, parentTransform, m); + } + else { + copy$1(m, parentTransform); + } + } + this.transform = m; + this._resolveGlobalScaleRatio(m); + }; + Transformable.prototype._resolveGlobalScaleRatio = function (m) { + var globalScaleRatio = this.globalScaleRatio; + if (globalScaleRatio != null && globalScaleRatio !== 1) { + this.getGlobalScale(scaleTmp); + var relX = scaleTmp[0] < 0 ? -1 : 1; + var relY = scaleTmp[1] < 0 ? -1 : 1; + var sx = ((scaleTmp[0] - relX) * globalScaleRatio + relX) / scaleTmp[0] || 0; + var sy = ((scaleTmp[1] - relY) * globalScaleRatio + relY) / scaleTmp[1] || 0; + m[0] *= sx; + m[1] *= sx; + m[2] *= sy; + m[3] *= sy; + } + this.invTransform = this.invTransform || create$1(); + invert(this.invTransform, m); + }; + Transformable.prototype.getComputedTransform = function () { + var transformNode = this; + var ancestors = []; + while (transformNode) { + ancestors.push(transformNode); + transformNode = transformNode.parent; + } + while (transformNode = ancestors.pop()) { + transformNode.updateTransform(); + } + return this.transform; + }; + Transformable.prototype.setLocalTransform = function (m) { + if (!m) { + return; + } + var sx = m[0] * m[0] + m[1] * m[1]; + var sy = m[2] * m[2] + m[3] * m[3]; + var rotation = Math.atan2(m[1], m[0]); + var shearX = Math.PI / 2 + rotation - Math.atan2(m[3], m[2]); + sy = Math.sqrt(sy) * Math.cos(shearX); + sx = Math.sqrt(sx); + this.skewX = shearX; + this.skewY = 0; + this.rotation = -rotation; + this.x = +m[4]; + this.y = +m[5]; + this.scaleX = sx; + this.scaleY = sy; + this.originX = 0; + this.originY = 0; + }; + Transformable.prototype.decomposeTransform = function () { + if (!this.transform) { + return; + } + var parent = this.parent; + var m = this.transform; + if (parent && parent.transform) { + parent.invTransform = parent.invTransform || create$1(); + mul$1(tmpTransform, parent.invTransform, m); + m = tmpTransform; + } + var ox = this.originX; + var oy = this.originY; + if (ox || oy) { + originTransform[4] = ox; + originTransform[5] = oy; + mul$1(tmpTransform, m, originTransform); + tmpTransform[4] -= ox; + tmpTransform[5] -= oy; + m = tmpTransform; + } + this.setLocalTransform(m); + }; + Transformable.prototype.getGlobalScale = function (out) { + var m = this.transform; + out = out || []; + if (!m) { + out[0] = 1; + out[1] = 1; + return out; + } + out[0] = Math.sqrt(m[0] * m[0] + m[1] * m[1]); + out[1] = Math.sqrt(m[2] * m[2] + m[3] * m[3]); + if (m[0] < 0) { + out[0] = -out[0]; + } + if (m[3] < 0) { + out[1] = -out[1]; + } + return out; + }; + Transformable.prototype.transformCoordToLocal = function (x, y) { + var v2 = [x, y]; + var invTransform = this.invTransform; + if (invTransform) { + applyTransform(v2, v2, invTransform); + } + return v2; + }; + Transformable.prototype.transformCoordToGlobal = function (x, y) { + var v2 = [x, y]; + var transform = this.transform; + if (transform) { + applyTransform(v2, v2, transform); + } + return v2; + }; + Transformable.prototype.getLineScale = function () { + var m = this.transform; + return m && abs(m[0] - 1) > 1e-10 && abs(m[3] - 1) > 1e-10 + ? Math.sqrt(abs(m[0] * m[3] - m[2] * m[1])) + : 1; + }; + Transformable.prototype.copyTransform = function (source) { + copyTransform(this, source); + }; + Transformable.getLocalTransform = function (target, m) { + m = m || []; + var ox = target.originX || 0; + var oy = target.originY || 0; + var sx = target.scaleX; + var sy = target.scaleY; + var ax = target.anchorX; + var ay = target.anchorY; + var rotation = target.rotation || 0; + var x = target.x; + var y = target.y; + var skewX = target.skewX ? Math.tan(target.skewX) : 0; + var skewY = target.skewY ? Math.tan(-target.skewY) : 0; + if (ox || oy || ax || ay) { + var dx = ox + ax; + var dy = oy + ay; + m[4] = -dx * sx - skewX * dy * sy; + m[5] = -dy * sy - skewY * dx * sx; + } + else { + m[4] = m[5] = 0; + } + m[0] = sx; + m[3] = sy; + m[1] = skewY * sx; + m[2] = skewX * sy; + rotation && rotate(m, m, rotation); + m[4] += ox + x; + m[5] += oy + y; + return m; + }; + Transformable.initDefaultProps = (function () { + var proto = Transformable.prototype; + proto.scaleX = + proto.scaleY = + proto.globalScaleRatio = 1; + proto.x = + proto.y = + proto.originX = + proto.originY = + proto.skewX = + proto.skewY = + proto.rotation = + proto.anchorX = + proto.anchorY = 0; + })(); + return Transformable; + }()); + var TRANSFORMABLE_PROPS = [ + 'x', 'y', 'originX', 'originY', 'anchorX', 'anchorY', 'rotation', 'scaleX', 'scaleY', 'skewX', 'skewY' + ]; + function copyTransform(target, source) { + for (var i = 0; i < TRANSFORMABLE_PROPS.length; i++) { + var propName = TRANSFORMABLE_PROPS[i]; + target[propName] = source[propName]; + } + } + + var textWidthCache = {}; + function getWidth(text, font) { + font = font || DEFAULT_FONT; + var cacheOfFont = textWidthCache[font]; + if (!cacheOfFont) { + cacheOfFont = textWidthCache[font] = new LRU(500); + } + var width = cacheOfFont.get(text); + if (width == null) { + width = platformApi.measureText(text, font).width; + cacheOfFont.put(text, width); + } + return width; + } + function innerGetBoundingRect(text, font, textAlign, textBaseline) { + var width = getWidth(text, font); + var height = getLineHeight(font); + var x = adjustTextX(0, width, textAlign); + var y = adjustTextY$1(0, height, textBaseline); + var rect = new BoundingRect(x, y, width, height); + return rect; + } + function getBoundingRect(text, font, textAlign, textBaseline) { + var textLines = ((text || '') + '').split('\n'); + var len = textLines.length; + if (len === 1) { + return innerGetBoundingRect(textLines[0], font, textAlign, textBaseline); + } + else { + var uniondRect = new BoundingRect(0, 0, 0, 0); + for (var i = 0; i < textLines.length; i++) { + var rect = innerGetBoundingRect(textLines[i], font, textAlign, textBaseline); + i === 0 ? uniondRect.copy(rect) : uniondRect.union(rect); + } + return uniondRect; + } + } + function adjustTextX(x, width, textAlign) { + if (textAlign === 'right') { + x -= width; + } + else if (textAlign === 'center') { + x -= width / 2; + } + return x; + } + function adjustTextY$1(y, height, verticalAlign) { + if (verticalAlign === 'middle') { + y -= height / 2; + } + else if (verticalAlign === 'bottom') { + y -= height; + } + return y; + } + function getLineHeight(font) { + return getWidth('国', font); + } + function parsePercent(value, maxValue) { + if (typeof value === 'string') { + if (value.lastIndexOf('%') >= 0) { + return parseFloat(value) / 100 * maxValue; + } + return parseFloat(value); + } + return value; + } + function calculateTextPosition(out, opts, rect) { + var textPosition = opts.position || 'inside'; + var distance = opts.distance != null ? opts.distance : 5; + var height = rect.height; + var width = rect.width; + var halfHeight = height / 2; + var x = rect.x; + var y = rect.y; + var textAlign = 'left'; + var textVerticalAlign = 'top'; + if (textPosition instanceof Array) { + x += parsePercent(textPosition[0], rect.width); + y += parsePercent(textPosition[1], rect.height); + textAlign = null; + textVerticalAlign = null; + } + else { + switch (textPosition) { + case 'left': + x -= distance; + y += halfHeight; + textAlign = 'right'; + textVerticalAlign = 'middle'; + break; + case 'right': + x += distance + width; + y += halfHeight; + textVerticalAlign = 'middle'; + break; + case 'top': + x += width / 2; + y -= distance; + textAlign = 'center'; + textVerticalAlign = 'bottom'; + break; + case 'bottom': + x += width / 2; + y += height + distance; + textAlign = 'center'; + break; + case 'inside': + x += width / 2; + y += halfHeight; + textAlign = 'center'; + textVerticalAlign = 'middle'; + break; + case 'insideLeft': + x += distance; + y += halfHeight; + textVerticalAlign = 'middle'; + break; + case 'insideRight': + x += width - distance; + y += halfHeight; + textAlign = 'right'; + textVerticalAlign = 'middle'; + break; + case 'insideTop': + x += width / 2; + y += distance; + textAlign = 'center'; + break; + case 'insideBottom': + x += width / 2; + y += height - distance; + textAlign = 'center'; + textVerticalAlign = 'bottom'; + break; + case 'insideTopLeft': + x += distance; + y += distance; + break; + case 'insideTopRight': + x += width - distance; + y += distance; + textAlign = 'right'; + break; + case 'insideBottomLeft': + x += distance; + y += height - distance; + textVerticalAlign = 'bottom'; + break; + case 'insideBottomRight': + x += width - distance; + y += height - distance; + textAlign = 'right'; + textVerticalAlign = 'bottom'; + break; + } + } + out = out || {}; + out.x = x; + out.y = y; + out.align = textAlign; + out.verticalAlign = textVerticalAlign; + return out; + } + + var PRESERVED_NORMAL_STATE = '__zr_normal__'; + var PRIMARY_STATES_KEYS = TRANSFORMABLE_PROPS.concat(['ignore']); + var DEFAULT_ANIMATABLE_MAP = reduce(TRANSFORMABLE_PROPS, function (obj, key) { + obj[key] = true; + return obj; + }, { ignore: false }); + var tmpTextPosCalcRes = {}; + var tmpBoundingRect = new BoundingRect(0, 0, 0, 0); + var Element = (function () { + function Element(props) { + this.id = guid(); + this.animators = []; + this.currentStates = []; + this.states = {}; + this._init(props); + } + Element.prototype._init = function (props) { + this.attr(props); + }; + Element.prototype.drift = function (dx, dy, e) { + switch (this.draggable) { + case 'horizontal': + dy = 0; + break; + case 'vertical': + dx = 0; + break; + } + var m = this.transform; + if (!m) { + m = this.transform = [1, 0, 0, 1, 0, 0]; + } + m[4] += dx; + m[5] += dy; + this.decomposeTransform(); + this.markRedraw(); + }; + Element.prototype.beforeUpdate = function () { }; + Element.prototype.afterUpdate = function () { }; + Element.prototype.update = function () { + this.updateTransform(); + if (this.__dirty) { + this.updateInnerText(); + } + }; + Element.prototype.updateInnerText = function (forceUpdate) { + var textEl = this._textContent; + if (textEl && (!textEl.ignore || forceUpdate)) { + if (!this.textConfig) { + this.textConfig = {}; + } + var textConfig = this.textConfig; + var isLocal = textConfig.local; + var innerTransformable = textEl.innerTransformable; + var textAlign = void 0; + var textVerticalAlign = void 0; + var textStyleChanged = false; + innerTransformable.parent = isLocal ? this : null; + var innerOrigin = false; + innerTransformable.copyTransform(textEl); + if (textConfig.position != null) { + var layoutRect = tmpBoundingRect; + if (textConfig.layoutRect) { + layoutRect.copy(textConfig.layoutRect); + } + else { + layoutRect.copy(this.getBoundingRect()); + } + if (!isLocal) { + layoutRect.applyTransform(this.transform); + } + if (this.calculateTextPosition) { + this.calculateTextPosition(tmpTextPosCalcRes, textConfig, layoutRect); + } + else { + calculateTextPosition(tmpTextPosCalcRes, textConfig, layoutRect); + } + innerTransformable.x = tmpTextPosCalcRes.x; + innerTransformable.y = tmpTextPosCalcRes.y; + textAlign = tmpTextPosCalcRes.align; + textVerticalAlign = tmpTextPosCalcRes.verticalAlign; + var textOrigin = textConfig.origin; + if (textOrigin && textConfig.rotation != null) { + var relOriginX = void 0; + var relOriginY = void 0; + if (textOrigin === 'center') { + relOriginX = layoutRect.width * 0.5; + relOriginY = layoutRect.height * 0.5; + } + else { + relOriginX = parsePercent(textOrigin[0], layoutRect.width); + relOriginY = parsePercent(textOrigin[1], layoutRect.height); + } + innerOrigin = true; + innerTransformable.originX = -innerTransformable.x + relOriginX + (isLocal ? 0 : layoutRect.x); + innerTransformable.originY = -innerTransformable.y + relOriginY + (isLocal ? 0 : layoutRect.y); + } + } + if (textConfig.rotation != null) { + innerTransformable.rotation = textConfig.rotation; + } + var textOffset = textConfig.offset; + if (textOffset) { + innerTransformable.x += textOffset[0]; + innerTransformable.y += textOffset[1]; + if (!innerOrigin) { + innerTransformable.originX = -textOffset[0]; + innerTransformable.originY = -textOffset[1]; + } + } + var isInside = textConfig.inside == null + ? (typeof textConfig.position === 'string' && textConfig.position.indexOf('inside') >= 0) + : textConfig.inside; + var innerTextDefaultStyle = this._innerTextDefaultStyle || (this._innerTextDefaultStyle = {}); + var textFill = void 0; + var textStroke = void 0; + var autoStroke = void 0; + if (isInside && this.canBeInsideText()) { + textFill = textConfig.insideFill; + textStroke = textConfig.insideStroke; + if (textFill == null || textFill === 'auto') { + textFill = this.getInsideTextFill(); + } + if (textStroke == null || textStroke === 'auto') { + textStroke = this.getInsideTextStroke(textFill); + autoStroke = true; + } + } + else { + textFill = textConfig.outsideFill; + textStroke = textConfig.outsideStroke; + if (textFill == null || textFill === 'auto') { + textFill = this.getOutsideFill(); + } + if (textStroke == null || textStroke === 'auto') { + textStroke = this.getOutsideStroke(textFill); + autoStroke = true; + } + } + textFill = textFill || '#000'; + if (textFill !== innerTextDefaultStyle.fill + || textStroke !== innerTextDefaultStyle.stroke + || autoStroke !== innerTextDefaultStyle.autoStroke + || textAlign !== innerTextDefaultStyle.align + || textVerticalAlign !== innerTextDefaultStyle.verticalAlign) { + textStyleChanged = true; + innerTextDefaultStyle.fill = textFill; + innerTextDefaultStyle.stroke = textStroke; + innerTextDefaultStyle.autoStroke = autoStroke; + innerTextDefaultStyle.align = textAlign; + innerTextDefaultStyle.verticalAlign = textVerticalAlign; + textEl.setDefaultTextStyle(innerTextDefaultStyle); + } + textEl.__dirty |= REDRAW_BIT; + if (textStyleChanged) { + textEl.dirtyStyle(true); + } + } + }; + Element.prototype.canBeInsideText = function () { + return true; + }; + Element.prototype.getInsideTextFill = function () { + return '#fff'; + }; + Element.prototype.getInsideTextStroke = function (textFill) { + return '#000'; + }; + Element.prototype.getOutsideFill = function () { + return this.__zr && this.__zr.isDarkMode() ? LIGHT_LABEL_COLOR : DARK_LABEL_COLOR; + }; + Element.prototype.getOutsideStroke = function (textFill) { + var backgroundColor = this.__zr && this.__zr.getBackgroundColor(); + var colorArr = typeof backgroundColor === 'string' && parse(backgroundColor); + if (!colorArr) { + colorArr = [255, 255, 255, 1]; + } + var alpha = colorArr[3]; + var isDark = this.__zr.isDarkMode(); + for (var i = 0; i < 3; i++) { + colorArr[i] = colorArr[i] * alpha + (isDark ? 0 : 255) * (1 - alpha); + } + colorArr[3] = 1; + return stringify(colorArr, 'rgba'); + }; + Element.prototype.traverse = function (cb, context) { }; + Element.prototype.attrKV = function (key, value) { + if (key === 'textConfig') { + this.setTextConfig(value); + } + else if (key === 'textContent') { + this.setTextContent(value); + } + else if (key === 'clipPath') { + this.setClipPath(value); + } + else if (key === 'extra') { + this.extra = this.extra || {}; + extend(this.extra, value); + } + else { + this[key] = value; + } + }; + Element.prototype.hide = function () { + this.ignore = true; + this.markRedraw(); + }; + Element.prototype.show = function () { + this.ignore = false; + this.markRedraw(); + }; + Element.prototype.attr = function (keyOrObj, value) { + if (typeof keyOrObj === 'string') { + this.attrKV(keyOrObj, value); + } + else if (isObject(keyOrObj)) { + var obj = keyOrObj; + var keysArr = keys(obj); + for (var i = 0; i < keysArr.length; i++) { + var key = keysArr[i]; + this.attrKV(key, keyOrObj[key]); + } + } + this.markRedraw(); + return this; + }; + Element.prototype.saveCurrentToNormalState = function (toState) { + this._innerSaveToNormal(toState); + var normalState = this._normalState; + for (var i = 0; i < this.animators.length; i++) { + var animator = this.animators[i]; + var fromStateTransition = animator.__fromStateTransition; + if (animator.getLoop() || fromStateTransition && fromStateTransition !== PRESERVED_NORMAL_STATE) { + continue; + } + var targetName = animator.targetName; + var target = targetName + ? normalState[targetName] : normalState; + animator.saveTo(target); + } + }; + Element.prototype._innerSaveToNormal = function (toState) { + var normalState = this._normalState; + if (!normalState) { + normalState = this._normalState = {}; + } + if (toState.textConfig && !normalState.textConfig) { + normalState.textConfig = this.textConfig; + } + this._savePrimaryToNormal(toState, normalState, PRIMARY_STATES_KEYS); + }; + Element.prototype._savePrimaryToNormal = function (toState, normalState, primaryKeys) { + for (var i = 0; i < primaryKeys.length; i++) { + var key = primaryKeys[i]; + if (toState[key] != null && !(key in normalState)) { + normalState[key] = this[key]; + } + } + }; + Element.prototype.hasState = function () { + return this.currentStates.length > 0; + }; + Element.prototype.getState = function (name) { + return this.states[name]; + }; + Element.prototype.ensureState = function (name) { + var states = this.states; + if (!states[name]) { + states[name] = {}; + } + return states[name]; + }; + Element.prototype.clearStates = function (noAnimation) { + this.useState(PRESERVED_NORMAL_STATE, false, noAnimation); + }; + Element.prototype.useState = function (stateName, keepCurrentStates, noAnimation, forceUseHoverLayer) { + var toNormalState = stateName === PRESERVED_NORMAL_STATE; + var hasStates = this.hasState(); + if (!hasStates && toNormalState) { + return; + } + var currentStates = this.currentStates; + var animationCfg = this.stateTransition; + if (indexOf(currentStates, stateName) >= 0 && (keepCurrentStates || currentStates.length === 1)) { + return; + } + var state; + if (this.stateProxy && !toNormalState) { + state = this.stateProxy(stateName); + } + if (!state) { + state = (this.states && this.states[stateName]); + } + if (!state && !toNormalState) { + logError("State " + stateName + " not exists."); + return; + } + if (!toNormalState) { + this.saveCurrentToNormalState(state); + } + var useHoverLayer = !!((state && state.hoverLayer) || forceUseHoverLayer); + if (useHoverLayer) { + this._toggleHoverLayerFlag(true); + } + this._applyStateObj(stateName, state, this._normalState, keepCurrentStates, !noAnimation && !this.__inHover && animationCfg && animationCfg.duration > 0, animationCfg); + var textContent = this._textContent; + var textGuide = this._textGuide; + if (textContent) { + textContent.useState(stateName, keepCurrentStates, noAnimation, useHoverLayer); + } + if (textGuide) { + textGuide.useState(stateName, keepCurrentStates, noAnimation, useHoverLayer); + } + if (toNormalState) { + this.currentStates = []; + this._normalState = {}; + } + else { + if (!keepCurrentStates) { + this.currentStates = [stateName]; + } + else { + this.currentStates.push(stateName); + } + } + this._updateAnimationTargets(); + this.markRedraw(); + if (!useHoverLayer && this.__inHover) { + this._toggleHoverLayerFlag(false); + this.__dirty &= ~REDRAW_BIT; + } + return state; + }; + Element.prototype.useStates = function (states, noAnimation, forceUseHoverLayer) { + if (!states.length) { + this.clearStates(); + } + else { + var stateObjects = []; + var currentStates = this.currentStates; + var len = states.length; + var notChange = len === currentStates.length; + if (notChange) { + for (var i = 0; i < len; i++) { + if (states[i] !== currentStates[i]) { + notChange = false; + break; + } + } + } + if (notChange) { + return; + } + for (var i = 0; i < len; i++) { + var stateName = states[i]; + var stateObj = void 0; + if (this.stateProxy) { + stateObj = this.stateProxy(stateName, states); + } + if (!stateObj) { + stateObj = this.states[stateName]; + } + if (stateObj) { + stateObjects.push(stateObj); + } + } + var lastStateObj = stateObjects[len - 1]; + var useHoverLayer = !!((lastStateObj && lastStateObj.hoverLayer) || forceUseHoverLayer); + if (useHoverLayer) { + this._toggleHoverLayerFlag(true); + } + var mergedState = this._mergeStates(stateObjects); + var animationCfg = this.stateTransition; + this.saveCurrentToNormalState(mergedState); + this._applyStateObj(states.join(','), mergedState, this._normalState, false, !noAnimation && !this.__inHover && animationCfg && animationCfg.duration > 0, animationCfg); + var textContent = this._textContent; + var textGuide = this._textGuide; + if (textContent) { + textContent.useStates(states, noAnimation, useHoverLayer); + } + if (textGuide) { + textGuide.useStates(states, noAnimation, useHoverLayer); + } + this._updateAnimationTargets(); + this.currentStates = states.slice(); + this.markRedraw(); + if (!useHoverLayer && this.__inHover) { + this._toggleHoverLayerFlag(false); + this.__dirty &= ~REDRAW_BIT; + } + } + }; + Element.prototype.isSilent = function () { + var isSilent = this.silent; + var ancestor = this.parent; + while (!isSilent && ancestor) { + if (ancestor.silent) { + isSilent = true; + break; + } + ancestor = ancestor.parent; + } + return isSilent; + }; + Element.prototype._updateAnimationTargets = function () { + for (var i = 0; i < this.animators.length; i++) { + var animator = this.animators[i]; + if (animator.targetName) { + animator.changeTarget(this[animator.targetName]); + } + } + }; + Element.prototype.removeState = function (state) { + var idx = indexOf(this.currentStates, state); + if (idx >= 0) { + var currentStates = this.currentStates.slice(); + currentStates.splice(idx, 1); + this.useStates(currentStates); + } + }; + Element.prototype.replaceState = function (oldState, newState, forceAdd) { + var currentStates = this.currentStates.slice(); + var idx = indexOf(currentStates, oldState); + var newStateExists = indexOf(currentStates, newState) >= 0; + if (idx >= 0) { + if (!newStateExists) { + currentStates[idx] = newState; + } + else { + currentStates.splice(idx, 1); + } + } + else if (forceAdd && !newStateExists) { + currentStates.push(newState); + } + this.useStates(currentStates); + }; + Element.prototype.toggleState = function (state, enable) { + if (enable) { + this.useState(state, true); + } + else { + this.removeState(state); + } + }; + Element.prototype._mergeStates = function (states) { + var mergedState = {}; + var mergedTextConfig; + for (var i = 0; i < states.length; i++) { + var state = states[i]; + extend(mergedState, state); + if (state.textConfig) { + mergedTextConfig = mergedTextConfig || {}; + extend(mergedTextConfig, state.textConfig); + } + } + if (mergedTextConfig) { + mergedState.textConfig = mergedTextConfig; + } + return mergedState; + }; + Element.prototype._applyStateObj = function (stateName, state, normalState, keepCurrentStates, transition, animationCfg) { + var needsRestoreToNormal = !(state && keepCurrentStates); + if (state && state.textConfig) { + this.textConfig = extend({}, keepCurrentStates ? this.textConfig : normalState.textConfig); + extend(this.textConfig, state.textConfig); + } + else if (needsRestoreToNormal) { + if (normalState.textConfig) { + this.textConfig = normalState.textConfig; + } + } + var transitionTarget = {}; + var hasTransition = false; + for (var i = 0; i < PRIMARY_STATES_KEYS.length; i++) { + var key = PRIMARY_STATES_KEYS[i]; + var propNeedsTransition = transition && DEFAULT_ANIMATABLE_MAP[key]; + if (state && state[key] != null) { + if (propNeedsTransition) { + hasTransition = true; + transitionTarget[key] = state[key]; + } + else { + this[key] = state[key]; + } + } + else if (needsRestoreToNormal) { + if (normalState[key] != null) { + if (propNeedsTransition) { + hasTransition = true; + transitionTarget[key] = normalState[key]; + } + else { + this[key] = normalState[key]; + } + } + } + } + if (!transition) { + for (var i = 0; i < this.animators.length; i++) { + var animator = this.animators[i]; + var targetName = animator.targetName; + if (!animator.getLoop()) { + animator.__changeFinalValue(targetName + ? (state || normalState)[targetName] + : (state || normalState)); + } + } + } + if (hasTransition) { + this._transitionState(stateName, transitionTarget, animationCfg); + } + }; + Element.prototype._attachComponent = function (componentEl) { + if (componentEl.__zr && !componentEl.__hostTarget) { + if ("development" !== 'production') { + throw new Error('Text element has been added to zrender.'); + } + return; + } + if (componentEl === this) { + if ("development" !== 'production') { + throw new Error('Recursive component attachment.'); + } + return; + } + var zr = this.__zr; + if (zr) { + componentEl.addSelfToZr(zr); + } + componentEl.__zr = zr; + componentEl.__hostTarget = this; + }; + Element.prototype._detachComponent = function (componentEl) { + if (componentEl.__zr) { + componentEl.removeSelfFromZr(componentEl.__zr); + } + componentEl.__zr = null; + componentEl.__hostTarget = null; + }; + Element.prototype.getClipPath = function () { + return this._clipPath; + }; + Element.prototype.setClipPath = function (clipPath) { + if (this._clipPath && this._clipPath !== clipPath) { + this.removeClipPath(); + } + this._attachComponent(clipPath); + this._clipPath = clipPath; + this.markRedraw(); + }; + Element.prototype.removeClipPath = function () { + var clipPath = this._clipPath; + if (clipPath) { + this._detachComponent(clipPath); + this._clipPath = null; + this.markRedraw(); + } + }; + Element.prototype.getTextContent = function () { + return this._textContent; + }; + Element.prototype.setTextContent = function (textEl) { + var previousTextContent = this._textContent; + if (previousTextContent === textEl) { + return; + } + if (previousTextContent && previousTextContent !== textEl) { + this.removeTextContent(); + } + if ("development" !== 'production') { + if (textEl.__zr && !textEl.__hostTarget) { + throw new Error('Text element has been added to zrender.'); + } + } + textEl.innerTransformable = new Transformable(); + this._attachComponent(textEl); + this._textContent = textEl; + this.markRedraw(); + }; + Element.prototype.setTextConfig = function (cfg) { + if (!this.textConfig) { + this.textConfig = {}; + } + extend(this.textConfig, cfg); + this.markRedraw(); + }; + Element.prototype.removeTextConfig = function () { + this.textConfig = null; + this.markRedraw(); + }; + Element.prototype.removeTextContent = function () { + var textEl = this._textContent; + if (textEl) { + textEl.innerTransformable = null; + this._detachComponent(textEl); + this._textContent = null; + this._innerTextDefaultStyle = null; + this.markRedraw(); + } + }; + Element.prototype.getTextGuideLine = function () { + return this._textGuide; + }; + Element.prototype.setTextGuideLine = function (guideLine) { + if (this._textGuide && this._textGuide !== guideLine) { + this.removeTextGuideLine(); + } + this._attachComponent(guideLine); + this._textGuide = guideLine; + this.markRedraw(); + }; + Element.prototype.removeTextGuideLine = function () { + var textGuide = this._textGuide; + if (textGuide) { + this._detachComponent(textGuide); + this._textGuide = null; + this.markRedraw(); + } + }; + Element.prototype.markRedraw = function () { + this.__dirty |= REDRAW_BIT; + var zr = this.__zr; + if (zr) { + if (this.__inHover) { + zr.refreshHover(); + } + else { + zr.refresh(); + } + } + if (this.__hostTarget) { + this.__hostTarget.markRedraw(); + } + }; + Element.prototype.dirty = function () { + this.markRedraw(); + }; + Element.prototype._toggleHoverLayerFlag = function (inHover) { + this.__inHover = inHover; + var textContent = this._textContent; + var textGuide = this._textGuide; + if (textContent) { + textContent.__inHover = inHover; + } + if (textGuide) { + textGuide.__inHover = inHover; + } + }; + Element.prototype.addSelfToZr = function (zr) { + if (this.__zr === zr) { + return; + } + this.__zr = zr; + var animators = this.animators; + if (animators) { + for (var i = 0; i < animators.length; i++) { + zr.animation.addAnimator(animators[i]); + } + } + if (this._clipPath) { + this._clipPath.addSelfToZr(zr); + } + if (this._textContent) { + this._textContent.addSelfToZr(zr); + } + if (this._textGuide) { + this._textGuide.addSelfToZr(zr); + } + }; + Element.prototype.removeSelfFromZr = function (zr) { + if (!this.__zr) { + return; + } + this.__zr = null; + var animators = this.animators; + if (animators) { + for (var i = 0; i < animators.length; i++) { + zr.animation.removeAnimator(animators[i]); + } + } + if (this._clipPath) { + this._clipPath.removeSelfFromZr(zr); + } + if (this._textContent) { + this._textContent.removeSelfFromZr(zr); + } + if (this._textGuide) { + this._textGuide.removeSelfFromZr(zr); + } + }; + Element.prototype.animate = function (key, loop, allowDiscreteAnimation) { + var target = key ? this[key] : this; + if ("development" !== 'production') { + if (!target) { + logError('Property "' + + key + + '" is not existed in element ' + + this.id); + return; + } + } + var animator = new Animator(target, loop, allowDiscreteAnimation); + key && (animator.targetName = key); + this.addAnimator(animator, key); + return animator; + }; + Element.prototype.addAnimator = function (animator, key) { + var zr = this.__zr; + var el = this; + animator.during(function () { + el.updateDuringAnimation(key); + }).done(function () { + var animators = el.animators; + var idx = indexOf(animators, animator); + if (idx >= 0) { + animators.splice(idx, 1); + } + }); + this.animators.push(animator); + if (zr) { + zr.animation.addAnimator(animator); + } + zr && zr.wakeUp(); + }; + Element.prototype.updateDuringAnimation = function (key) { + this.markRedraw(); + }; + Element.prototype.stopAnimation = function (scope, forwardToLast) { + var animators = this.animators; + var len = animators.length; + var leftAnimators = []; + for (var i = 0; i < len; i++) { + var animator = animators[i]; + if (!scope || scope === animator.scope) { + animator.stop(forwardToLast); + } + else { + leftAnimators.push(animator); + } + } + this.animators = leftAnimators; + return this; + }; + Element.prototype.animateTo = function (target, cfg, animationProps) { + animateTo(this, target, cfg, animationProps); + }; + Element.prototype.animateFrom = function (target, cfg, animationProps) { + animateTo(this, target, cfg, animationProps, true); + }; + Element.prototype._transitionState = function (stateName, target, cfg, animationProps) { + var animators = animateTo(this, target, cfg, animationProps); + for (var i = 0; i < animators.length; i++) { + animators[i].__fromStateTransition = stateName; + } + }; + Element.prototype.getBoundingRect = function () { + return null; + }; + Element.prototype.getPaintRect = function () { + return null; + }; + Element.initDefaultProps = (function () { + var elProto = Element.prototype; + elProto.type = 'element'; + elProto.name = ''; + elProto.ignore = + elProto.silent = + elProto.isGroup = + elProto.draggable = + elProto.dragging = + elProto.ignoreClip = + elProto.__inHover = false; + elProto.__dirty = REDRAW_BIT; + var logs = {}; + function logDeprecatedError(key, xKey, yKey) { + if (!logs[key + xKey + yKey]) { + console.warn("DEPRECATED: '" + key + "' has been deprecated. use '" + xKey + "', '" + yKey + "' instead"); + logs[key + xKey + yKey] = true; + } + } + function createLegacyProperty(key, privateKey, xKey, yKey) { + Object.defineProperty(elProto, key, { + get: function () { + if ("development" !== 'production') { + logDeprecatedError(key, xKey, yKey); + } + if (!this[privateKey]) { + var pos = this[privateKey] = []; + enhanceArray(this, pos); + } + return this[privateKey]; + }, + set: function (pos) { + if ("development" !== 'production') { + logDeprecatedError(key, xKey, yKey); + } + this[xKey] = pos[0]; + this[yKey] = pos[1]; + this[privateKey] = pos; + enhanceArray(this, pos); + } + }); + function enhanceArray(self, pos) { + Object.defineProperty(pos, 0, { + get: function () { + return self[xKey]; + }, + set: function (val) { + self[xKey] = val; + } + }); + Object.defineProperty(pos, 1, { + get: function () { + return self[yKey]; + }, + set: function (val) { + self[yKey] = val; + } + }); + } + } + if (Object.defineProperty) { + createLegacyProperty('position', '_legacyPos', 'x', 'y'); + createLegacyProperty('scale', '_legacyScale', 'scaleX', 'scaleY'); + createLegacyProperty('origin', '_legacyOrigin', 'originX', 'originY'); + } + })(); + return Element; + }()); + mixin(Element, Eventful); + mixin(Element, Transformable); + function animateTo(animatable, target, cfg, animationProps, reverse) { + cfg = cfg || {}; + var animators = []; + animateToShallow(animatable, '', animatable, target, cfg, animationProps, animators, reverse); + var finishCount = animators.length; + var doneHappened = false; + var cfgDone = cfg.done; + var cfgAborted = cfg.aborted; + var doneCb = function () { + doneHappened = true; + finishCount--; + if (finishCount <= 0) { + doneHappened + ? (cfgDone && cfgDone()) + : (cfgAborted && cfgAborted()); + } + }; + var abortedCb = function () { + finishCount--; + if (finishCount <= 0) { + doneHappened + ? (cfgDone && cfgDone()) + : (cfgAborted && cfgAborted()); + } + }; + if (!finishCount) { + cfgDone && cfgDone(); + } + if (animators.length > 0 && cfg.during) { + animators[0].during(function (target, percent) { + cfg.during(percent); + }); + } + for (var i = 0; i < animators.length; i++) { + var animator = animators[i]; + if (doneCb) { + animator.done(doneCb); + } + if (abortedCb) { + animator.aborted(abortedCb); + } + if (cfg.force) { + animator.duration(cfg.duration); + } + animator.start(cfg.easing); + } + return animators; + } + function copyArrShallow(source, target, len) { + for (var i = 0; i < len; i++) { + source[i] = target[i]; + } + } + function is2DArray(value) { + return isArrayLike(value[0]); + } + function copyValue(target, source, key) { + if (isArrayLike(source[key])) { + if (!isArrayLike(target[key])) { + target[key] = []; + } + if (isTypedArray(source[key])) { + var len = source[key].length; + if (target[key].length !== len) { + target[key] = new (source[key].constructor)(len); + copyArrShallow(target[key], source[key], len); + } + } + else { + var sourceArr = source[key]; + var targetArr = target[key]; + var len0 = sourceArr.length; + if (is2DArray(sourceArr)) { + var len1 = sourceArr[0].length; + for (var i = 0; i < len0; i++) { + if (!targetArr[i]) { + targetArr[i] = Array.prototype.slice.call(sourceArr[i]); + } + else { + copyArrShallow(targetArr[i], sourceArr[i], len1); + } + } + } + else { + copyArrShallow(targetArr, sourceArr, len0); + } + targetArr.length = sourceArr.length; + } + } + else { + target[key] = source[key]; + } + } + function isValueSame(val1, val2) { + return val1 === val2 + || isArrayLike(val1) && isArrayLike(val2) && is1DArraySame(val1, val2); + } + function is1DArraySame(arr0, arr1) { + var len = arr0.length; + if (len !== arr1.length) { + return false; + } + for (var i = 0; i < len; i++) { + if (arr0[i] !== arr1[i]) { + return false; + } + } + return true; + } + function animateToShallow(animatable, topKey, animateObj, target, cfg, animationProps, animators, reverse) { + var targetKeys = keys(target); + var duration = cfg.duration; + var delay = cfg.delay; + var additive = cfg.additive; + var setToFinal = cfg.setToFinal; + var animateAll = !isObject(animationProps); + var existsAnimators = animatable.animators; + var animationKeys = []; + for (var k = 0; k < targetKeys.length; k++) { + var innerKey = targetKeys[k]; + var targetVal = target[innerKey]; + if (targetVal != null && animateObj[innerKey] != null + && (animateAll || animationProps[innerKey])) { + if (isObject(targetVal) + && !isArrayLike(targetVal) + && !isGradientObject(targetVal)) { + if (topKey) { + if (!reverse) { + animateObj[innerKey] = targetVal; + animatable.updateDuringAnimation(topKey); + } + continue; + } + animateToShallow(animatable, innerKey, animateObj[innerKey], targetVal, cfg, animationProps && animationProps[innerKey], animators, reverse); + } + else { + animationKeys.push(innerKey); + } + } + else if (!reverse) { + animateObj[innerKey] = targetVal; + animatable.updateDuringAnimation(topKey); + animationKeys.push(innerKey); + } + } + var keyLen = animationKeys.length; + if (!additive && keyLen) { + for (var i = 0; i < existsAnimators.length; i++) { + var animator = existsAnimators[i]; + if (animator.targetName === topKey) { + var allAborted = animator.stopTracks(animationKeys); + if (allAborted) { + var idx = indexOf(existsAnimators, animator); + existsAnimators.splice(idx, 1); + } + } + } + } + if (!cfg.force) { + animationKeys = filter(animationKeys, function (key) { return !isValueSame(target[key], animateObj[key]); }); + keyLen = animationKeys.length; + } + if (keyLen > 0 + || (cfg.force && !animators.length)) { + var revertedSource = void 0; + var reversedTarget = void 0; + var sourceClone = void 0; + if (reverse) { + reversedTarget = {}; + if (setToFinal) { + revertedSource = {}; + } + for (var i = 0; i < keyLen; i++) { + var innerKey = animationKeys[i]; + reversedTarget[innerKey] = animateObj[innerKey]; + if (setToFinal) { + revertedSource[innerKey] = target[innerKey]; + } + else { + animateObj[innerKey] = target[innerKey]; + } + } + } + else if (setToFinal) { + sourceClone = {}; + for (var i = 0; i < keyLen; i++) { + var innerKey = animationKeys[i]; + sourceClone[innerKey] = cloneValue(animateObj[innerKey]); + copyValue(animateObj, target, innerKey); + } + } + var animator = new Animator(animateObj, false, false, additive ? filter(existsAnimators, function (animator) { return animator.targetName === topKey; }) : null); + animator.targetName = topKey; + if (cfg.scope) { + animator.scope = cfg.scope; + } + if (setToFinal && revertedSource) { + animator.whenWithKeys(0, revertedSource, animationKeys); + } + if (sourceClone) { + animator.whenWithKeys(0, sourceClone, animationKeys); + } + animator.whenWithKeys(duration == null ? 500 : duration, reverse ? reversedTarget : target, animationKeys).delay(delay || 0); + animatable.addAnimator(animator, topKey); + animators.push(animator); + } + } + + var Group = (function (_super) { + __extends(Group, _super); + function Group(opts) { + var _this = _super.call(this) || this; + _this.isGroup = true; + _this._children = []; + _this.attr(opts); + return _this; + } + Group.prototype.childrenRef = function () { + return this._children; + }; + Group.prototype.children = function () { + return this._children.slice(); + }; + Group.prototype.childAt = function (idx) { + return this._children[idx]; + }; + Group.prototype.childOfName = function (name) { + var children = this._children; + for (var i = 0; i < children.length; i++) { + if (children[i].name === name) { + return children[i]; + } + } + }; + Group.prototype.childCount = function () { + return this._children.length; + }; + Group.prototype.add = function (child) { + if (child) { + if (child !== this && child.parent !== this) { + this._children.push(child); + this._doAdd(child); + } + if ("development" !== 'production') { + if (child.__hostTarget) { + throw 'This elemenet has been used as an attachment'; + } + } + } + return this; + }; + Group.prototype.addBefore = function (child, nextSibling) { + if (child && child !== this && child.parent !== this + && nextSibling && nextSibling.parent === this) { + var children = this._children; + var idx = children.indexOf(nextSibling); + if (idx >= 0) { + children.splice(idx, 0, child); + this._doAdd(child); + } + } + return this; + }; + Group.prototype.replace = function (oldChild, newChild) { + var idx = indexOf(this._children, oldChild); + if (idx >= 0) { + this.replaceAt(newChild, idx); + } + return this; + }; + Group.prototype.replaceAt = function (child, index) { + var children = this._children; + var old = children[index]; + if (child && child !== this && child.parent !== this && child !== old) { + children[index] = child; + old.parent = null; + var zr = this.__zr; + if (zr) { + old.removeSelfFromZr(zr); + } + this._doAdd(child); + } + return this; + }; + Group.prototype._doAdd = function (child) { + if (child.parent) { + child.parent.remove(child); + } + child.parent = this; + var zr = this.__zr; + if (zr && zr !== child.__zr) { + child.addSelfToZr(zr); + } + zr && zr.refresh(); + }; + Group.prototype.remove = function (child) { + var zr = this.__zr; + var children = this._children; + var idx = indexOf(children, child); + if (idx < 0) { + return this; + } + children.splice(idx, 1); + child.parent = null; + if (zr) { + child.removeSelfFromZr(zr); + } + zr && zr.refresh(); + return this; + }; + Group.prototype.removeAll = function () { + var children = this._children; + var zr = this.__zr; + for (var i = 0; i < children.length; i++) { + var child = children[i]; + if (zr) { + child.removeSelfFromZr(zr); + } + child.parent = null; + } + children.length = 0; + return this; + }; + Group.prototype.eachChild = function (cb, context) { + var children = this._children; + for (var i = 0; i < children.length; i++) { + var child = children[i]; + cb.call(context, child, i); + } + return this; + }; + Group.prototype.traverse = function (cb, context) { + for (var i = 0; i < this._children.length; i++) { + var child = this._children[i]; + var stopped = cb.call(context, child); + if (child.isGroup && !stopped) { + child.traverse(cb, context); + } + } + return this; + }; + Group.prototype.addSelfToZr = function (zr) { + _super.prototype.addSelfToZr.call(this, zr); + for (var i = 0; i < this._children.length; i++) { + var child = this._children[i]; + child.addSelfToZr(zr); + } + }; + Group.prototype.removeSelfFromZr = function (zr) { + _super.prototype.removeSelfFromZr.call(this, zr); + for (var i = 0; i < this._children.length; i++) { + var child = this._children[i]; + child.removeSelfFromZr(zr); + } + }; + Group.prototype.getBoundingRect = function (includeChildren) { + var tmpRect = new BoundingRect(0, 0, 0, 0); + var children = includeChildren || this._children; + var tmpMat = []; + var rect = null; + for (var i = 0; i < children.length; i++) { + var child = children[i]; + if (child.ignore || child.invisible) { + continue; + } + var childRect = child.getBoundingRect(); + var transform = child.getLocalTransform(tmpMat); + if (transform) { + BoundingRect.applyTransform(tmpRect, childRect, transform); + rect = rect || tmpRect.clone(); + rect.union(tmpRect); + } + else { + rect = rect || childRect.clone(); + rect.union(childRect); + } + } + return rect || tmpRect; + }; + return Group; + }(Element)); + Group.prototype.type = 'group'; + + /*! + * 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 painterCtors = {}; + var instances = {}; + function delInstance(id) { + delete instances[id]; + } + function isDarkMode(backgroundColor) { + if (!backgroundColor) { + return false; + } + if (typeof backgroundColor === 'string') { + return lum(backgroundColor, 1) < DARK_MODE_THRESHOLD; + } + else if (backgroundColor.colorStops) { + var colorStops = backgroundColor.colorStops; + var totalLum = 0; + var len = colorStops.length; + for (var i = 0; i < len; i++) { + totalLum += lum(colorStops[i].color, 1); + } + totalLum /= len; + return totalLum < DARK_MODE_THRESHOLD; + } + return false; + } + var ZRender = (function () { + function ZRender(id, dom, opts) { + var _this = this; + this._sleepAfterStill = 10; + this._stillFrameAccum = 0; + this._needsRefresh = true; + this._needsRefreshHover = true; + this._darkMode = false; + opts = opts || {}; + this.dom = dom; + this.id = id; + var storage = new Storage(); + var rendererType = opts.renderer || 'canvas'; + if (!painterCtors[rendererType]) { + rendererType = keys(painterCtors)[0]; + } + if ("development" !== 'production') { + if (!painterCtors[rendererType]) { + throw new Error("Renderer '" + rendererType + "' is not imported. Please import it first."); + } + } + opts.useDirtyRect = opts.useDirtyRect == null + ? false + : opts.useDirtyRect; + var painter = new painterCtors[rendererType](dom, storage, opts, id); + var ssrMode = opts.ssr || painter.ssrOnly; + this.storage = storage; + this.painter = painter; + var handlerProxy = (!env.node && !env.worker && !ssrMode) + ? new HandlerDomProxy(painter.getViewportRoot(), painter.root) + : null; + var useCoarsePointer = opts.useCoarsePointer; + var usePointerSize = (useCoarsePointer == null || useCoarsePointer === 'auto') + ? env.touchEventsSupported + : !!useCoarsePointer; + var defaultPointerSize = 44; + var pointerSize; + if (usePointerSize) { + pointerSize = retrieve2(opts.pointerSize, defaultPointerSize); + } + this.handler = new Handler(storage, painter, handlerProxy, painter.root, pointerSize); + this.animation = new Animation({ + stage: { + update: ssrMode ? null : function () { return _this._flush(true); } + } + }); + if (!ssrMode) { + this.animation.start(); + } + } + ZRender.prototype.add = function (el) { + if (this._disposed || !el) { + return; + } + this.storage.addRoot(el); + el.addSelfToZr(this); + this.refresh(); + }; + ZRender.prototype.remove = function (el) { + if (this._disposed || !el) { + return; + } + this.storage.delRoot(el); + el.removeSelfFromZr(this); + this.refresh(); + }; + ZRender.prototype.configLayer = function (zLevel, config) { + if (this._disposed) { + return; + } + if (this.painter.configLayer) { + this.painter.configLayer(zLevel, config); + } + this.refresh(); + }; + ZRender.prototype.setBackgroundColor = function (backgroundColor) { + if (this._disposed) { + return; + } + if (this.painter.setBackgroundColor) { + this.painter.setBackgroundColor(backgroundColor); + } + this.refresh(); + this._backgroundColor = backgroundColor; + this._darkMode = isDarkMode(backgroundColor); + }; + ZRender.prototype.getBackgroundColor = function () { + return this._backgroundColor; + }; + ZRender.prototype.setDarkMode = function (darkMode) { + this._darkMode = darkMode; + }; + ZRender.prototype.isDarkMode = function () { + return this._darkMode; + }; + ZRender.prototype.refreshImmediately = function (fromInside) { + if (this._disposed) { + return; + } + if (!fromInside) { + this.animation.update(true); + } + this._needsRefresh = false; + this.painter.refresh(); + this._needsRefresh = false; + }; + ZRender.prototype.refresh = function () { + if (this._disposed) { + return; + } + this._needsRefresh = true; + this.animation.start(); + }; + ZRender.prototype.flush = function () { + if (this._disposed) { + return; + } + this._flush(false); + }; + ZRender.prototype._flush = function (fromInside) { + var triggerRendered; + var start = getTime(); + if (this._needsRefresh) { + triggerRendered = true; + this.refreshImmediately(fromInside); + } + if (this._needsRefreshHover) { + triggerRendered = true; + this.refreshHoverImmediately(); + } + var end = getTime(); + if (triggerRendered) { + this._stillFrameAccum = 0; + this.trigger('rendered', { + elapsedTime: end - start + }); + } + else if (this._sleepAfterStill > 0) { + this._stillFrameAccum++; + if (this._stillFrameAccum > this._sleepAfterStill) { + this.animation.stop(); + } + } + }; + ZRender.prototype.setSleepAfterStill = function (stillFramesCount) { + this._sleepAfterStill = stillFramesCount; + }; + ZRender.prototype.wakeUp = function () { + if (this._disposed) { + return; + } + this.animation.start(); + this._stillFrameAccum = 0; + }; + ZRender.prototype.refreshHover = function () { + this._needsRefreshHover = true; + }; + ZRender.prototype.refreshHoverImmediately = function () { + if (this._disposed) { + return; + } + this._needsRefreshHover = false; + if (this.painter.refreshHover && this.painter.getType() === 'canvas') { + this.painter.refreshHover(); + } + }; + ZRender.prototype.resize = function (opts) { + if (this._disposed) { + return; + } + opts = opts || {}; + this.painter.resize(opts.width, opts.height); + this.handler.resize(); + }; + ZRender.prototype.clearAnimation = function () { + if (this._disposed) { + return; + } + this.animation.clear(); + }; + ZRender.prototype.getWidth = function () { + if (this._disposed) { + return; + } + return this.painter.getWidth(); + }; + ZRender.prototype.getHeight = function () { + if (this._disposed) { + return; + } + return this.painter.getHeight(); + }; + ZRender.prototype.setCursorStyle = function (cursorStyle) { + if (this._disposed) { + return; + } + this.handler.setCursorStyle(cursorStyle); + }; + ZRender.prototype.findHover = function (x, y) { + if (this._disposed) { + return; + } + return this.handler.findHover(x, y); + }; + ZRender.prototype.on = function (eventName, eventHandler, context) { + if (!this._disposed) { + this.handler.on(eventName, eventHandler, context); + } + return this; + }; + ZRender.prototype.off = function (eventName, eventHandler) { + if (this._disposed) { + return; + } + this.handler.off(eventName, eventHandler); + }; + ZRender.prototype.trigger = function (eventName, event) { + if (this._disposed) { + return; + } + this.handler.trigger(eventName, event); + }; + ZRender.prototype.clear = function () { + if (this._disposed) { + return; + } + var roots = this.storage.getRoots(); + for (var i = 0; i < roots.length; i++) { + if (roots[i] instanceof Group) { + roots[i].removeSelfFromZr(this); + } + } + this.storage.delAllRoots(); + this.painter.clear(); + }; + ZRender.prototype.dispose = function () { + if (this._disposed) { + return; + } + this.animation.stop(); + this.clear(); + this.storage.dispose(); + this.painter.dispose(); + this.handler.dispose(); + this.animation = + this.storage = + this.painter = + this.handler = null; + this._disposed = true; + delInstance(this.id); + }; + return ZRender; + }()); + function init(dom, opts) { + var zr = new ZRender(guid(), dom, opts); + instances[zr.id] = zr; + return zr; + } + function dispose(zr) { + zr.dispose(); + } + function disposeAll() { + for (var key in instances) { + if (instances.hasOwnProperty(key)) { + instances[key].dispose(); + } + } + instances = {}; + } + function getInstance(id) { + return instances[id]; + } + function registerPainter(name, Ctor) { + painterCtors[name] = Ctor; + } + var ssrDataGetter; + function getElementSSRData(el) { + if (typeof ssrDataGetter === 'function') { + return ssrDataGetter(el); + } + } + function registerSSRDataGetter(getter) { + ssrDataGetter = getter; + } + var version = '5.5.0'; + + var zrender = /*#__PURE__*/Object.freeze({ + __proto__: null, + init: init, + dispose: dispose, + disposeAll: disposeAll, + getInstance: getInstance, + registerPainter: registerPainter, + getElementSSRData: getElementSSRData, + registerSSRDataGetter: registerSSRDataGetter, + version: version + }); + + var RADIAN_EPSILON = 1e-4; + // Although chrome already enlarge this number to 100 for `toFixed`, but + // we sill follow the spec for compatibility. + var ROUND_SUPPORTED_PRECISION_MAX = 20; + function _trim(str) { + return str.replace(/^\s+|\s+$/g, ''); + } + /** + * Linear mapping a value from domain to range + * @param val + * @param domain Domain extent domain[0] can be bigger than domain[1] + * @param range Range extent range[0] can be bigger than range[1] + * @param clamp Default to be false + */ + function linearMap(val, domain, range, clamp) { + var d0 = domain[0]; + var d1 = domain[1]; + var r0 = range[0]; + var r1 = range[1]; + var subDomain = d1 - d0; + var subRange = r1 - r0; + if (subDomain === 0) { + return subRange === 0 ? r0 : (r0 + r1) / 2; + } + // Avoid accuracy problem in edge, such as + // 146.39 - 62.83 === 83.55999999999999. + // See echarts/test/ut/spec/util/number.js#linearMap#accuracyError + // It is a little verbose for efficiency considering this method + // is a hotspot. + if (clamp) { + if (subDomain > 0) { + if (val <= d0) { + return r0; + } else if (val >= d1) { + return r1; + } + } else { + if (val >= d0) { + return r0; + } else if (val <= d1) { + return r1; + } + } + } else { + if (val === d0) { + return r0; + } + if (val === d1) { + return r1; + } + } + return (val - d0) / subDomain * subRange + r0; + } + /** + * Convert a percent string to absolute number. + * Returns NaN if percent is not a valid string or number + */ + function parsePercent$1(percent, all) { + switch (percent) { + case 'center': + case 'middle': + percent = '50%'; + break; + case 'left': + case 'top': + percent = '0%'; + break; + case 'right': + case 'bottom': + percent = '100%'; + break; + } + if (isString(percent)) { + if (_trim(percent).match(/%$/)) { + return parseFloat(percent) / 100 * all; + } + return parseFloat(percent); + } + return percent == null ? NaN : +percent; + } + function round(x, precision, returnStr) { + if (precision == null) { + precision = 10; + } + // Avoid range error + precision = Math.min(Math.max(0, precision), ROUND_SUPPORTED_PRECISION_MAX); + // PENDING: 1.005.toFixed(2) is '1.00' rather than '1.01' + x = (+x).toFixed(precision); + return returnStr ? x : +x; + } + /** + * Inplacd asc sort arr. + * The input arr will be modified. + */ + function asc(arr) { + arr.sort(function (a, b) { + return a - b; + }); + return arr; + } + /** + * Get precision. + */ + function getPrecision(val) { + val = +val; + if (isNaN(val)) { + return 0; + } + // It is much faster than methods converting number to string as follows + // let tmp = val.toString(); + // return tmp.length - 1 - tmp.indexOf('.'); + // especially when precision is low + // Notice: + // (1) If the loop count is over about 20, it is slower than `getPrecisionSafe`. + // (see https://jsbench.me/2vkpcekkvw/1) + // (2) If the val is less than for example 1e-15, the result may be incorrect. + // (see test/ut/spec/util/number.test.ts `getPrecision_equal_random`) + if (val > 1e-14) { + var e = 1; + for (var i = 0; i < 15; i++, e *= 10) { + if (Math.round(val * e) / e === val) { + return i; + } + } + } + return getPrecisionSafe(val); + } + /** + * Get precision with slow but safe method + */ + function getPrecisionSafe(val) { + // toLowerCase for: '3.4E-12' + var str = val.toString().toLowerCase(); + // Consider scientific notation: '3.4e-12' '3.4e+12' + var eIndex = str.indexOf('e'); + var exp = eIndex > 0 ? +str.slice(eIndex + 1) : 0; + var significandPartLen = eIndex > 0 ? eIndex : str.length; + var dotIndex = str.indexOf('.'); + var decimalPartLen = dotIndex < 0 ? 0 : significandPartLen - 1 - dotIndex; + return Math.max(0, decimalPartLen - exp); + } + /** + * Minimal dicernible data precisioin according to a single pixel. + */ + function getPixelPrecision(dataExtent, pixelExtent) { + var log = Math.log; + var LN10 = Math.LN10; + var dataQuantity = Math.floor(log(dataExtent[1] - dataExtent[0]) / LN10); + var sizeQuantity = Math.round(log(Math.abs(pixelExtent[1] - pixelExtent[0])) / LN10); + // toFixed() digits argument must be between 0 and 20. + var precision = Math.min(Math.max(-dataQuantity + sizeQuantity, 0), 20); + return !isFinite(precision) ? 20 : precision; + } + /** + * Get a data of given precision, assuring the sum of percentages + * in valueList is 1. + * The largest remainder method is used. + * https://en.wikipedia.org/wiki/Largest_remainder_method + * + * @param valueList a list of all data + * @param idx index of the data to be processed in valueList + * @param precision integer number showing digits of precision + * @return percent ranging from 0 to 100 + */ + function getPercentWithPrecision(valueList, idx, precision) { + if (!valueList[idx]) { + return 0; + } + var seats = getPercentSeats(valueList, precision); + return seats[idx] || 0; + } + /** + * Get a data of given precision, assuring the sum of percentages + * in valueList is 1. + * The largest remainder method is used. + * https://en.wikipedia.org/wiki/Largest_remainder_method + * + * @param valueList a list of all data + * @param precision integer number showing digits of precision + * @return {Array<number>} + */ + function getPercentSeats(valueList, precision) { + var sum = reduce(valueList, function (acc, val) { + return acc + (isNaN(val) ? 0 : val); + }, 0); + if (sum === 0) { + return []; + } + var digits = Math.pow(10, precision); + var votesPerQuota = map(valueList, function (val) { + return (isNaN(val) ? 0 : val) / sum * digits * 100; + }); + var targetSeats = digits * 100; + var seats = map(votesPerQuota, function (votes) { + // Assign automatic seats. + return Math.floor(votes); + }); + var currentSum = reduce(seats, function (acc, val) { + return acc + val; + }, 0); + var remainder = map(votesPerQuota, function (votes, idx) { + return votes - seats[idx]; + }); + // Has remainding votes. + while (currentSum < targetSeats) { + // Find next largest remainder. + var max = Number.NEGATIVE_INFINITY; + var maxId = null; + for (var i = 0, len = remainder.length; i < len; ++i) { + if (remainder[i] > max) { + max = remainder[i]; + maxId = i; + } + } + // Add a vote to max remainder. + ++seats[maxId]; + remainder[maxId] = 0; + ++currentSum; + } + return map(seats, function (seat) { + return seat / digits; + }); + } + /** + * Solve the floating point adding problem like 0.1 + 0.2 === 0.30000000000000004 + * See <http://0.30000000000000004.com/> + */ + function addSafe(val0, val1) { + var maxPrecision = Math.max(getPrecision(val0), getPrecision(val1)); + // const multiplier = Math.pow(10, maxPrecision); + // return (Math.round(val0 * multiplier) + Math.round(val1 * multiplier)) / multiplier; + var sum = val0 + val1; + // // PENDING: support more? + return maxPrecision > ROUND_SUPPORTED_PRECISION_MAX ? sum : round(sum, maxPrecision); + } + // Number.MAX_SAFE_INTEGER, ie do not support. + var MAX_SAFE_INTEGER = 9007199254740991; + /** + * To 0 - 2 * PI, considering negative radian. + */ + function remRadian(radian) { + var pi2 = Math.PI * 2; + return (radian % pi2 + pi2) % pi2; + } + /** + * @param {type} radian + * @return {boolean} + */ + function isRadianAroundZero(val) { + return val > -RADIAN_EPSILON && val < RADIAN_EPSILON; + } + // eslint-disable-next-line + var TIME_REG = /^(?:(\d{4})(?:[-\/](\d{1,2})(?:[-\/](\d{1,2})(?:[T ](\d{1,2})(?::(\d{1,2})(?::(\d{1,2})(?:[.,](\d+))?)?)?(Z|[\+\-]\d\d:?\d\d)?)?)?)?)?$/; // jshint ignore:line + /** + * @param value valid type: number | string | Date, otherwise return `new Date(NaN)` + * These values can be accepted: + * + An instance of Date, represent a time in its own time zone. + * + Or string in a subset of ISO 8601, only including: + * + only year, month, date: '2012-03', '2012-03-01', '2012-03-01 05', '2012-03-01 05:06', + * + separated with T or space: '2012-03-01T12:22:33.123', '2012-03-01 12:22:33.123', + * + time zone: '2012-03-01T12:22:33Z', '2012-03-01T12:22:33+8000', '2012-03-01T12:22:33-05:00', + * all of which will be treated as local time if time zone is not specified + * (see <https://momentjs.com/>). + * + Or other string format, including (all of which will be treated as local time): + * '2012', '2012-3-1', '2012/3/1', '2012/03/01', + * '2009/6/12 2:00', '2009/6/12 2:05:08', '2009/6/12 2:05:08.123' + * + a timestamp, which represent a time in UTC. + * @return date Never be null/undefined. If invalid, return `new Date(NaN)`. + */ + function parseDate(value) { + if (value instanceof Date) { + return value; + } else if (isString(value)) { + // Different browsers parse date in different way, so we parse it manually. + // Some other issues: + // new Date('1970-01-01') is UTC, + // new Date('1970/01/01') and new Date('1970-1-01') is local. + // See issue #3623 + var match = TIME_REG.exec(value); + if (!match) { + // return Invalid Date. + return new Date(NaN); + } + // Use local time when no timezone offset is specified. + if (!match[8]) { + // match[n] can only be string or undefined. + // But take care of '12' + 1 => '121'. + return new Date(+match[1], +(match[2] || 1) - 1, +match[3] || 1, +match[4] || 0, +(match[5] || 0), +match[6] || 0, match[7] ? +match[7].substring(0, 3) : 0); + } + // Timezoneoffset of Javascript Date has considered DST (Daylight Saving Time, + // https://tc39.github.io/ecma262/#sec-daylight-saving-time-adjustment). + // For example, system timezone is set as "Time Zone: America/Toronto", + // then these code will get different result: + // `new Date(1478411999999).getTimezoneOffset(); // get 240` + // `new Date(1478412000000).getTimezoneOffset(); // get 300` + // So we should not use `new Date`, but use `Date.UTC`. + else { + var hour = +match[4] || 0; + if (match[8].toUpperCase() !== 'Z') { + hour -= +match[8].slice(0, 3); + } + return new Date(Date.UTC(+match[1], +(match[2] || 1) - 1, +match[3] || 1, hour, +(match[5] || 0), +match[6] || 0, match[7] ? +match[7].substring(0, 3) : 0)); + } + } else if (value == null) { + return new Date(NaN); + } + return new Date(Math.round(value)); + } + /** + * Quantity of a number. e.g. 0.1, 1, 10, 100 + * + * @param val + * @return + */ + function quantity(val) { + return Math.pow(10, quantityExponent(val)); + } + /** + * Exponent of the quantity of a number + * e.g., 1234 equals to 1.234*10^3, so quantityExponent(1234) is 3 + * + * @param val non-negative value + * @return + */ + function quantityExponent(val) { + if (val === 0) { + return 0; + } + var exp = Math.floor(Math.log(val) / Math.LN10); + /** + * exp is expected to be the rounded-down result of the base-10 log of val. + * But due to the precision loss with Math.log(val), we need to restore it + * using 10^exp to make sure we can get val back from exp. #11249 + */ + if (val / Math.pow(10, exp) >= 10) { + exp++; + } + return exp; + } + /** + * find a “nice” number approximately equal to x. Round the number if round = true, + * take ceiling if round = false. The primary observation is that the “nicest” + * numbers in decimal are 1, 2, and 5, and all power-of-ten multiples of these numbers. + * + * See "Nice Numbers for Graph Labels" of Graphic Gems. + * + * @param val Non-negative value. + * @param round + * @return Niced number + */ + function nice(val, round) { + var exponent = quantityExponent(val); + var exp10 = Math.pow(10, exponent); + var f = val / exp10; // 1 <= f < 10 + var nf; + if (round) { + if (f < 1.5) { + nf = 1; + } else if (f < 2.5) { + nf = 2; + } else if (f < 4) { + nf = 3; + } else if (f < 7) { + nf = 5; + } else { + nf = 10; + } + } else { + if (f < 1) { + nf = 1; + } else if (f < 2) { + nf = 2; + } else if (f < 3) { + nf = 3; + } else if (f < 5) { + nf = 5; + } else { + nf = 10; + } + } + val = nf * exp10; + // Fix 3 * 0.1 === 0.30000000000000004 issue (see IEEE 754). + // 20 is the uppper bound of toFixed. + return exponent >= -20 ? +val.toFixed(exponent < 0 ? -exponent : 0) : val; + } + /** + * This code was copied from "d3.js" + * <https://github.com/d3/d3/blob/9cc9a875e636a1dcf36cc1e07bdf77e1ad6e2c74/src/arrays/quantile.js>. + * See the license statement at the head of this file. + * @param ascArr + */ + function quantile(ascArr, p) { + var H = (ascArr.length - 1) * p + 1; + var h = Math.floor(H); + var v = +ascArr[h - 1]; + var e = H - h; + return e ? v + e * (ascArr[h] - v) : v; + } + /** + * Order intervals asc, and split them when overlap. + * expect(numberUtil.reformIntervals([ + * {interval: [18, 62], close: [1, 1]}, + * {interval: [-Infinity, -70], close: [0, 0]}, + * {interval: [-70, -26], close: [1, 1]}, + * {interval: [-26, 18], close: [1, 1]}, + * {interval: [62, 150], close: [1, 1]}, + * {interval: [106, 150], close: [1, 1]}, + * {interval: [150, Infinity], close: [0, 0]} + * ])).toEqual([ + * {interval: [-Infinity, -70], close: [0, 0]}, + * {interval: [-70, -26], close: [1, 1]}, + * {interval: [-26, 18], close: [0, 1]}, + * {interval: [18, 62], close: [0, 1]}, + * {interval: [62, 150], close: [0, 1]}, + * {interval: [150, Infinity], close: [0, 0]} + * ]); + * @param list, where `close` mean open or close + * of the interval, and Infinity can be used. + * @return The origin list, which has been reformed. + */ + function reformIntervals(list) { + list.sort(function (a, b) { + return littleThan(a, b, 0) ? -1 : 1; + }); + var curr = -Infinity; + var currClose = 1; + for (var i = 0; i < list.length;) { + var interval = list[i].interval; + var close_1 = list[i].close; + for (var lg = 0; lg < 2; lg++) { + if (interval[lg] <= curr) { + interval[lg] = curr; + close_1[lg] = !lg ? 1 - currClose : 1; + } + curr = interval[lg]; + currClose = close_1[lg]; + } + if (interval[0] === interval[1] && close_1[0] * close_1[1] !== 1) { + list.splice(i, 1); + } else { + i++; + } + } + return list; + function littleThan(a, b, lg) { + return a.interval[lg] < b.interval[lg] || a.interval[lg] === b.interval[lg] && (a.close[lg] - b.close[lg] === (!lg ? 1 : -1) || !lg && littleThan(a, b, 1)); + } + } + /** + * [Numeric is defined as]: + * `parseFloat(val) == val` + * For example: + * numeric: + * typeof number except NaN, '-123', '123', '2e3', '-2e3', '011', 'Infinity', Infinity, + * and they rounded by white-spaces or line-terminal like ' -123 \n ' (see es spec) + * not-numeric: + * null, undefined, [], {}, true, false, 'NaN', NaN, '123ab', + * empty string, string with only white-spaces or line-terminal (see es spec), + * 0x12, '0x12', '-0x12', 012, '012', '-012', + * non-string, ... + * + * @test See full test cases in `test/ut/spec/util/number.js`. + * @return Must be a typeof number. If not numeric, return NaN. + */ + function numericToNumber(val) { + var valFloat = parseFloat(val); + return valFloat == val // eslint-disable-line eqeqeq + && (valFloat !== 0 || !isString(val) || val.indexOf('x') <= 0) // For case ' 0x0 '. + ? valFloat : NaN; + } + /** + * Definition of "numeric": see `numericToNumber`. + */ + function isNumeric(val) { + return !isNaN(numericToNumber(val)); + } + /** + * Use random base to prevent users hard code depending on + * this auto generated marker id. + * @return An positive integer. + */ + function getRandomIdBase() { + return Math.round(Math.random() * 9); + } + /** + * Get the greatest common divisor. + * + * @param {number} a one number + * @param {number} b the other number + */ + function getGreatestCommonDividor(a, b) { + if (b === 0) { + return a; + } + return getGreatestCommonDividor(b, a % b); + } + /** + * Get the least common multiple. + * + * @param {number} a one number + * @param {number} b the other number + */ + function getLeastCommonMultiple(a, b) { + if (a == null) { + return b; + } + if (b == null) { + return a; + } + return a * b / getGreatestCommonDividor(a, b); + } + + var ECHARTS_PREFIX = '[ECharts] '; + var storedLogs = {}; + var hasConsole = typeof console !== 'undefined' + // eslint-disable-next-line + && console.warn && console.log; + function outputLog(type, str, onlyOnce) { + if (hasConsole) { + if (onlyOnce) { + if (storedLogs[str]) { + return; + } + storedLogs[str] = true; + } + // eslint-disable-next-line + console[type](ECHARTS_PREFIX + str); + } + } + function log(str, onlyOnce) { + outputLog('log', str, onlyOnce); + } + function warn(str, onlyOnce) { + outputLog('warn', str, onlyOnce); + } + function error(str, onlyOnce) { + outputLog('error', str, onlyOnce); + } + function deprecateLog(str) { + if ("development" !== 'production') { + // Not display duplicate message. + outputLog('warn', 'DEPRECATED: ' + str, true); + } + } + function deprecateReplaceLog(oldOpt, newOpt, scope) { + if ("development" !== 'production') { + deprecateLog((scope ? "[" + scope + "]" : '') + (oldOpt + " is deprecated, use " + newOpt + " instead.")); + } + } + /** + * If in __DEV__ environment, get console printable message for users hint. + * Parameters are separated by ' '. + * @usage + * makePrintable('This is an error on', someVar, someObj); + * + * @param hintInfo anything about the current execution context to hint users. + * @throws Error + */ + function makePrintable() { + var hintInfo = []; + for (var _i = 0; _i < arguments.length; _i++) { + hintInfo[_i] = arguments[_i]; + } + var msg = ''; + if ("development" !== 'production') { + // Fuzzy stringify for print. + // This code only exist in dev environment. + var makePrintableStringIfPossible_1 = function (val) { + return val === void 0 ? 'undefined' : val === Infinity ? 'Infinity' : val === -Infinity ? '-Infinity' : eqNaN(val) ? 'NaN' : val instanceof Date ? 'Date(' + val.toISOString() + ')' : isFunction(val) ? 'function () { ... }' : isRegExp(val) ? val + '' : null; + }; + msg = map(hintInfo, function (arg) { + if (isString(arg)) { + // Print without quotation mark for some statement. + return arg; + } else { + var printableStr = makePrintableStringIfPossible_1(arg); + if (printableStr != null) { + return printableStr; + } else if (typeof JSON !== 'undefined' && JSON.stringify) { + try { + return JSON.stringify(arg, function (n, val) { + var printableStr = makePrintableStringIfPossible_1(val); + return printableStr == null ? val : printableStr; + }); + // In most cases the info object is small, so do not line break. + } catch (err) { + return '?'; + } + } else { + return '?'; + } + } + }).join(' '); + } + return msg; + } + /** + * @throws Error + */ + function throwError(msg) { + throw new Error(msg); + } + + function interpolateNumber$1(p0, p1, percent) { + return (p1 - p0) * percent + p0; + } + /** + * Make the name displayable. But we should + * make sure it is not duplicated with user + * specified name, so use '\0'; + */ + var DUMMY_COMPONENT_NAME_PREFIX = 'series\0'; + var INTERNAL_COMPONENT_ID_PREFIX = '\0_ec_\0'; + /** + * If value is not array, then translate it to array. + * @param {*} value + * @return {Array} [value] or value + */ + function normalizeToArray(value) { + return value instanceof Array ? value : value == null ? [] : [value]; + } + /** + * Sync default option between normal and emphasis like `position` and `show` + * In case some one will write code like + * label: { + * show: false, + * position: 'outside', + * fontSize: 18 + * }, + * emphasis: { + * label: { show: true } + * } + */ + function defaultEmphasis(opt, key, subOpts) { + // Caution: performance sensitive. + if (opt) { + opt[key] = opt[key] || {}; + opt.emphasis = opt.emphasis || {}; + opt.emphasis[key] = opt.emphasis[key] || {}; + // Default emphasis option from normal + for (var i = 0, len = subOpts.length; i < len; i++) { + var subOptName = subOpts[i]; + if (!opt.emphasis[key].hasOwnProperty(subOptName) && opt[key].hasOwnProperty(subOptName)) { + opt.emphasis[key][subOptName] = opt[key][subOptName]; + } + } + } + } + var TEXT_STYLE_OPTIONS = ['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']; + // modelUtil.LABEL_OPTIONS = modelUtil.TEXT_STYLE_OPTIONS.concat([ + // 'position', 'offset', 'rotate', 'origin', 'show', 'distance', 'formatter', + // 'fontStyle', 'fontWeight', 'fontSize', 'fontFamily', + // // FIXME: deprecated, check and remove it. + // 'textStyle' + // ]); + /** + * The method does not ensure performance. + * data could be [12, 2323, {value: 223}, [1221, 23], {value: [2, 23]}] + * This helper method retrieves value from data. + */ + function getDataItemValue(dataItem) { + return isObject(dataItem) && !isArray(dataItem) && !(dataItem instanceof Date) ? dataItem.value : dataItem; + } + /** + * data could be [12, 2323, {value: 223}, [1221, 23], {value: [2, 23]}] + * This helper method determine if dataItem has extra option besides value + */ + function isDataItemOption(dataItem) { + return isObject(dataItem) && !(dataItem instanceof Array); + // // markLine data can be array + // && !(dataItem[0] && isObject(dataItem[0]) && !(dataItem[0] instanceof Array)); + } + /** + * Mapping to existings for merge. + * + * Mode "normalMege": + * The mapping result (merge result) will keep the order of the existing + * component, rather than the order of new option. Because we should ensure + * some specified index reference (like xAxisIndex) keep work. + * And in most cases, "merge option" is used to update partial option but not + * be expected to change the order. + * + * Mode "replaceMege": + * (1) Only the id mapped components will be merged. + * (2) Other existing components (except internal components) will be removed. + * (3) Other new options will be used to create new component. + * (4) The index of the existing components will not be modified. + * That means their might be "hole" after the removal. + * The new components are created first at those available index. + * + * Mode "replaceAll": + * This mode try to support that reproduce an echarts instance from another + * echarts instance (via `getOption`) in some simple cases. + * In this scenario, the `result` index are exactly the consistent with the `newCmptOptions`, + * which ensures the component index referring (like `xAxisIndex: ?`) corrent. That is, + * the "hole" in `newCmptOptions` will also be kept. + * On the contrary, other modes try best to eliminate holes. + * PENDING: This is an experimental mode yet. + * + * @return See the comment of <MappingResult>. + */ + function mappingToExists(existings, newCmptOptions, mode) { + var isNormalMergeMode = mode === 'normalMerge'; + var isReplaceMergeMode = mode === 'replaceMerge'; + var isReplaceAllMode = mode === 'replaceAll'; + existings = existings || []; + newCmptOptions = (newCmptOptions || []).slice(); + var existingIdIdxMap = createHashMap(); + // Validate id and name on user input option. + each(newCmptOptions, function (cmptOption, index) { + if (!isObject(cmptOption)) { + newCmptOptions[index] = null; + return; + } + if ("development" !== 'production') { + // There is some legacy case that name is set as `false`. + // But should work normally rather than throw error. + if (cmptOption.id != null && !isValidIdOrName(cmptOption.id)) { + warnInvalidateIdOrName(cmptOption.id); + } + if (cmptOption.name != null && !isValidIdOrName(cmptOption.name)) { + warnInvalidateIdOrName(cmptOption.name); + } + } + }); + var result = prepareResult(existings, existingIdIdxMap, mode); + if (isNormalMergeMode || isReplaceMergeMode) { + mappingById(result, existings, existingIdIdxMap, newCmptOptions); + } + if (isNormalMergeMode) { + mappingByName(result, newCmptOptions); + } + if (isNormalMergeMode || isReplaceMergeMode) { + mappingByIndex(result, newCmptOptions, isReplaceMergeMode); + } else if (isReplaceAllMode) { + mappingInReplaceAllMode(result, newCmptOptions); + } + makeIdAndName(result); + // The array `result` MUST NOT contain elided items, otherwise the + // forEach will omit those items and result in incorrect result. + return result; + } + function prepareResult(existings, existingIdIdxMap, mode) { + var result = []; + if (mode === 'replaceAll') { + return result; + } + // Do not use native `map` to in case that the array `existings` + // contains elided items, which will be omitted. + for (var index = 0; index < existings.length; index++) { + var existing = existings[index]; + // Because of replaceMerge, `existing` may be null/undefined. + if (existing && existing.id != null) { + existingIdIdxMap.set(existing.id, index); + } + // For non-internal-componnets: + // Mode "normalMerge": all existings kept. + // Mode "replaceMerge": all existing removed unless mapped by id. + // For internal-components: + // go with "replaceMerge" approach in both mode. + result.push({ + existing: mode === 'replaceMerge' || isComponentIdInternal(existing) ? null : existing, + newOption: null, + keyInfo: null, + brandNew: null + }); + } + return result; + } + function mappingById(result, existings, existingIdIdxMap, newCmptOptions) { + // Mapping by id if specified. + each(newCmptOptions, function (cmptOption, index) { + if (!cmptOption || cmptOption.id == null) { + return; + } + var optionId = makeComparableKey(cmptOption.id); + var existingIdx = existingIdIdxMap.get(optionId); + if (existingIdx != null) { + var resultItem = result[existingIdx]; + assert(!resultItem.newOption, 'Duplicated option on id "' + optionId + '".'); + resultItem.newOption = cmptOption; + // In both mode, if id matched, new option will be merged to + // the existings rather than creating new component model. + resultItem.existing = existings[existingIdx]; + newCmptOptions[index] = null; + } + }); + } + function mappingByName(result, newCmptOptions) { + // Mapping by name if specified. + each(newCmptOptions, function (cmptOption, index) { + if (!cmptOption || cmptOption.name == null) { + return; + } + for (var i = 0; i < result.length; i++) { + var existing = result[i].existing; + if (!result[i].newOption // Consider name: two map to one. + // Can not match when both ids existing but different. + && existing && (existing.id == null || cmptOption.id == null) && !isComponentIdInternal(cmptOption) && !isComponentIdInternal(existing) && keyExistAndEqual('name', existing, cmptOption)) { + result[i].newOption = cmptOption; + newCmptOptions[index] = null; + return; + } + } + }); + } + function mappingByIndex(result, newCmptOptions, brandNew) { + each(newCmptOptions, function (cmptOption) { + if (!cmptOption) { + return; + } + // Find the first place that not mapped by id and not internal component (consider the "hole"). + var resultItem; + var nextIdx = 0; + while ( + // Be `!resultItem` only when `nextIdx >= result.length`. + (resultItem = result[nextIdx] + // (1) Existing models that already have id should be able to mapped to. Because + // after mapping performed, model will always be assigned with an id if user not given. + // After that all models have id. + // (2) If new option has id, it can only set to a hole or append to the last. It should + // not be merged to the existings with different id. Because id should not be overwritten. + // (3) Name can be overwritten, because axis use name as 'show label text'. + ) && (resultItem.newOption || isComponentIdInternal(resultItem.existing) || + // In mode "replaceMerge", here no not-mapped-non-internal-existing. + resultItem.existing && cmptOption.id != null && !keyExistAndEqual('id', cmptOption, resultItem.existing))) { + nextIdx++; + } + if (resultItem) { + resultItem.newOption = cmptOption; + resultItem.brandNew = brandNew; + } else { + result.push({ + newOption: cmptOption, + brandNew: brandNew, + existing: null, + keyInfo: null + }); + } + nextIdx++; + }); + } + function mappingInReplaceAllMode(result, newCmptOptions) { + each(newCmptOptions, function (cmptOption) { + // The feature "reproduce" requires "hole" will also reproduced + // in case that component index referring are broken. + result.push({ + newOption: cmptOption, + brandNew: true, + existing: null, + keyInfo: null + }); + }); + } + /** + * Make id and name for mapping result (result of mappingToExists) + * into `keyInfo` field. + */ + function makeIdAndName(mapResult) { + // We use this id to hash component models and view instances + // in echarts. id can be specified by user, or auto generated. + // The id generation rule ensures new view instance are able + // to mapped to old instance when setOption are called in + // no-merge mode. So we generate model id by name and plus + // type in view id. + // name can be duplicated among components, which is convenient + // to specify multi components (like series) by one name. + // Ensure that each id is distinct. + var idMap = createHashMap(); + each(mapResult, function (item) { + var existing = item.existing; + existing && idMap.set(existing.id, item); + }); + each(mapResult, function (item) { + var opt = item.newOption; + // Force ensure id not duplicated. + assert(!opt || opt.id == null || !idMap.get(opt.id) || idMap.get(opt.id) === item, 'id duplicates: ' + (opt && opt.id)); + opt && opt.id != null && idMap.set(opt.id, item); + !item.keyInfo && (item.keyInfo = {}); + }); + // Make name and id. + each(mapResult, function (item, index) { + var existing = item.existing; + var opt = item.newOption; + var keyInfo = item.keyInfo; + if (!isObject(opt)) { + return; + } + // Name can be overwritten. Consider case: axis.name = '20km'. + // But id generated by name will not be changed, which affect + // only in that case: setOption with 'not merge mode' and view + // instance will be recreated, which can be accepted. + keyInfo.name = opt.name != null ? makeComparableKey(opt.name) : existing ? existing.name + // Avoid that different series has the same name, + // because name may be used like in color pallet. + : DUMMY_COMPONENT_NAME_PREFIX + index; + if (existing) { + keyInfo.id = makeComparableKey(existing.id); + } else if (opt.id != null) { + keyInfo.id = makeComparableKey(opt.id); + } else { + // Consider this situatoin: + // optionA: [{name: 'a'}, {name: 'a'}, {..}] + // optionB [{..}, {name: 'a'}, {name: 'a'}] + // Series with the same name between optionA and optionB + // should be mapped. + var idNum = 0; + do { + keyInfo.id = '\0' + keyInfo.name + '\0' + idNum++; + } while (idMap.get(keyInfo.id)); + } + idMap.set(keyInfo.id, item); + }); + } + function keyExistAndEqual(attr, obj1, obj2) { + var key1 = convertOptionIdName(obj1[attr], null); + var key2 = convertOptionIdName(obj2[attr], null); + // See `MappingExistingItem`. `id` and `name` trade string equals to number. + return key1 != null && key2 != null && key1 === key2; + } + /** + * @return return null if not exist. + */ + function makeComparableKey(val) { + if ("development" !== 'production') { + if (val == null) { + throw new Error(); + } + } + return convertOptionIdName(val, ''); + } + function convertOptionIdName(idOrName, defaultValue) { + if (idOrName == null) { + return defaultValue; + } + return isString(idOrName) ? idOrName : isNumber(idOrName) || isStringSafe(idOrName) ? idOrName + '' : defaultValue; + } + function warnInvalidateIdOrName(idOrName) { + if ("development" !== 'production') { + warn('`' + idOrName + '` is invalid id or name. Must be a string or number.'); + } + } + function isValidIdOrName(idOrName) { + return isStringSafe(idOrName) || isNumeric(idOrName); + } + function isNameSpecified(componentModel) { + var name = componentModel.name; + // Is specified when `indexOf` get -1 or > 0. + return !!(name && name.indexOf(DUMMY_COMPONENT_NAME_PREFIX)); + } + /** + * @public + * @param {Object} cmptOption + * @return {boolean} + */ + function isComponentIdInternal(cmptOption) { + return cmptOption && cmptOption.id != null && makeComparableKey(cmptOption.id).indexOf(INTERNAL_COMPONENT_ID_PREFIX) === 0; + } + function makeInternalComponentId(idSuffix) { + return INTERNAL_COMPONENT_ID_PREFIX + idSuffix; + } + function setComponentTypeToKeyInfo(mappingResult, mainType, componentModelCtor) { + // Set mainType and complete subType. + each(mappingResult, function (item) { + var newOption = item.newOption; + if (isObject(newOption)) { + item.keyInfo.mainType = mainType; + item.keyInfo.subType = determineSubType(mainType, newOption, item.existing, componentModelCtor); + } + }); + } + function determineSubType(mainType, newCmptOption, existComponent, componentModelCtor) { + var subType = newCmptOption.type ? newCmptOption.type : existComponent ? existComponent.subType + // Use determineSubType only when there is no existComponent. + : componentModelCtor.determineSubType(mainType, newCmptOption); + // tooltip, markline, markpoint may always has no subType + return subType; + } + /** + * A helper for removing duplicate items between batchA and batchB, + * and in themselves, and categorize by series. + * + * @param batchA Like: [{seriesId: 2, dataIndex: [32, 4, 5]}, ...] + * @param batchB Like: [{seriesId: 2, dataIndex: [32, 4, 5]}, ...] + * @return result: [resultBatchA, resultBatchB] + */ + function compressBatches(batchA, batchB) { + var mapA = {}; + var mapB = {}; + makeMap(batchA || [], mapA); + makeMap(batchB || [], mapB, mapA); + return [mapToArray(mapA), mapToArray(mapB)]; + function makeMap(sourceBatch, map, otherMap) { + for (var i = 0, len = sourceBatch.length; i < len; i++) { + var seriesId = convertOptionIdName(sourceBatch[i].seriesId, null); + if (seriesId == null) { + return; + } + var dataIndices = normalizeToArray(sourceBatch[i].dataIndex); + var otherDataIndices = otherMap && otherMap[seriesId]; + for (var j = 0, lenj = dataIndices.length; j < lenj; j++) { + var dataIndex = dataIndices[j]; + if (otherDataIndices && otherDataIndices[dataIndex]) { + otherDataIndices[dataIndex] = null; + } else { + (map[seriesId] || (map[seriesId] = {}))[dataIndex] = 1; + } + } + } + } + function mapToArray(map, isData) { + var result = []; + for (var i in map) { + if (map.hasOwnProperty(i) && map[i] != null) { + if (isData) { + result.push(+i); + } else { + var dataIndices = mapToArray(map[i], true); + dataIndices.length && result.push({ + seriesId: i, + dataIndex: dataIndices + }); + } + } + } + return result; + } + } + /** + * @param payload Contains dataIndex (means rawIndex) / dataIndexInside / name + * each of which can be Array or primary type. + * @return dataIndex If not found, return undefined/null. + */ + function queryDataIndex(data, payload) { + if (payload.dataIndexInside != null) { + return payload.dataIndexInside; + } else if (payload.dataIndex != null) { + return isArray(payload.dataIndex) ? map(payload.dataIndex, function (value) { + return data.indexOfRawIndex(value); + }) : data.indexOfRawIndex(payload.dataIndex); + } else if (payload.name != null) { + return isArray(payload.name) ? map(payload.name, function (value) { + return data.indexOfName(value); + }) : data.indexOfName(payload.name); + } + } + /** + * Enable property storage to any host object. + * Notice: Serialization is not supported. + * + * For example: + * let inner = zrUitl.makeInner(); + * + * function some1(hostObj) { + * inner(hostObj).someProperty = 1212; + * ... + * } + * function some2() { + * let fields = inner(this); + * fields.someProperty1 = 1212; + * fields.someProperty2 = 'xx'; + * ... + * } + * + * @return {Function} + */ + function makeInner() { + var key = '__ec_inner_' + innerUniqueIndex++; + return function (hostObj) { + return hostObj[key] || (hostObj[key] = {}); + }; + } + var innerUniqueIndex = getRandomIdBase(); + /** + * The same behavior as `component.getReferringComponents`. + */ + function parseFinder(ecModel, finderInput, opt) { + var _a = preParseFinder(finderInput, opt), + mainTypeSpecified = _a.mainTypeSpecified, + queryOptionMap = _a.queryOptionMap, + others = _a.others; + var result = others; + var defaultMainType = opt ? opt.defaultMainType : null; + if (!mainTypeSpecified && defaultMainType) { + queryOptionMap.set(defaultMainType, {}); + } + queryOptionMap.each(function (queryOption, mainType) { + var queryResult = queryReferringComponents(ecModel, mainType, queryOption, { + useDefault: defaultMainType === mainType, + enableAll: opt && opt.enableAll != null ? opt.enableAll : true, + enableNone: opt && opt.enableNone != null ? opt.enableNone : true + }); + result[mainType + 'Models'] = queryResult.models; + result[mainType + 'Model'] = queryResult.models[0]; + }); + return result; + } + function preParseFinder(finderInput, opt) { + var finder; + if (isString(finderInput)) { + var obj = {}; + obj[finderInput + 'Index'] = 0; + finder = obj; + } else { + finder = finderInput; + } + var queryOptionMap = createHashMap(); + var others = {}; + var mainTypeSpecified = false; + each(finder, function (value, key) { + // Exclude 'dataIndex' and other illgal keys. + if (key === 'dataIndex' || key === 'dataIndexInside') { + others[key] = value; + return; + } + var parsedKey = key.match(/^(\w+)(Index|Id|Name)$/) || []; + var mainType = parsedKey[1]; + var queryType = (parsedKey[2] || '').toLowerCase(); + if (!mainType || !queryType || opt && opt.includeMainTypes && indexOf(opt.includeMainTypes, mainType) < 0) { + return; + } + mainTypeSpecified = mainTypeSpecified || !!mainType; + var queryOption = queryOptionMap.get(mainType) || queryOptionMap.set(mainType, {}); + queryOption[queryType] = value; + }); + return { + mainTypeSpecified: mainTypeSpecified, + queryOptionMap: queryOptionMap, + others: others + }; + } + var SINGLE_REFERRING = { + useDefault: true, + enableAll: false, + enableNone: false + }; + var MULTIPLE_REFERRING = { + useDefault: false, + enableAll: true, + enableNone: true + }; + function queryReferringComponents(ecModel, mainType, userOption, opt) { + opt = opt || SINGLE_REFERRING; + var indexOption = userOption.index; + var idOption = userOption.id; + var nameOption = userOption.name; + var result = { + models: null, + specified: indexOption != null || idOption != null || nameOption != null + }; + if (!result.specified) { + // Use the first as default if `useDefault`. + var firstCmpt = void 0; + result.models = opt.useDefault && (firstCmpt = ecModel.getComponent(mainType)) ? [firstCmpt] : []; + return result; + } + if (indexOption === 'none' || indexOption === false) { + assert(opt.enableNone, '`"none"` or `false` is not a valid value on index option.'); + result.models = []; + return result; + } + // `queryComponents` will return all components if + // both all of index/id/name are null/undefined. + if (indexOption === 'all') { + assert(opt.enableAll, '`"all"` is not a valid value on index option.'); + indexOption = idOption = nameOption = null; + } + result.models = ecModel.queryComponents({ + mainType: mainType, + index: indexOption, + id: idOption, + name: nameOption + }); + return result; + } + function setAttribute(dom, key, value) { + dom.setAttribute ? dom.setAttribute(key, value) : dom[key] = value; + } + function getAttribute(dom, key) { + return dom.getAttribute ? dom.getAttribute(key) : dom[key]; + } + function getTooltipRenderMode(renderModeOption) { + if (renderModeOption === 'auto') { + // Using html when `document` exists, use richText otherwise + return env.domSupported ? 'html' : 'richText'; + } else { + return renderModeOption || 'html'; + } + } + /** + * Group a list by key. + */ + function groupData(array, getKey // return key + ) { + var buckets = createHashMap(); + var keys = []; + each(array, function (item) { + var key = getKey(item); + (buckets.get(key) || (keys.push(key), buckets.set(key, []))).push(item); + }); + return { + keys: keys, + buckets: buckets + }; + } + /** + * Interpolate raw values of a series with percent + * + * @param data data + * @param labelModel label model of the text element + * @param sourceValue start value. May be null/undefined when init. + * @param targetValue end value + * @param percent 0~1 percentage; 0 uses start value while 1 uses end value + * @return interpolated values + * If `sourceValue` and `targetValue` are `number`, return `number`. + * If `sourceValue` and `targetValue` are `string`, return `string`. + * If `sourceValue` and `targetValue` are `(string | number)[]`, return `(string | number)[]`. + * Other cases do not supported. + */ + function interpolateRawValues(data, precision, sourceValue, targetValue, percent) { + var isAutoPrecision = precision == null || precision === 'auto'; + if (targetValue == null) { + return targetValue; + } + if (isNumber(targetValue)) { + var value = interpolateNumber$1(sourceValue || 0, targetValue, percent); + return round(value, isAutoPrecision ? Math.max(getPrecision(sourceValue || 0), getPrecision(targetValue)) : precision); + } else if (isString(targetValue)) { + return percent < 1 ? sourceValue : targetValue; + } else { + var interpolated = []; + var leftArr = sourceValue; + var rightArr = targetValue; + var length_1 = Math.max(leftArr ? leftArr.length : 0, rightArr.length); + for (var i = 0; i < length_1; ++i) { + var info = data.getDimensionInfo(i); + // Don't interpolate ordinal dims + if (info && info.type === 'ordinal') { + // In init, there is no `sourceValue`, but should better not to get undefined result. + interpolated[i] = (percent < 1 && leftArr ? leftArr : rightArr)[i]; + } else { + var leftVal = leftArr && leftArr[i] ? leftArr[i] : 0; + var rightVal = rightArr[i]; + var value = interpolateNumber$1(leftVal, rightVal, percent); + interpolated[i] = round(value, isAutoPrecision ? Math.max(getPrecision(leftVal), getPrecision(rightVal)) : precision); + } + } + return interpolated; + } + } + + var TYPE_DELIMITER = '.'; + var IS_CONTAINER = '___EC__COMPONENT__CONTAINER___'; + var IS_EXTENDED_CLASS = '___EC__EXTENDED_CLASS___'; + /** + * Notice, parseClassType('') should returns {main: '', sub: ''} + * @public + */ + function parseClassType(componentType) { + var ret = { + main: '', + sub: '' + }; + if (componentType) { + var typeArr = componentType.split(TYPE_DELIMITER); + ret.main = typeArr[0] || ''; + ret.sub = typeArr[1] || ''; + } + return ret; + } + /** + * @public + */ + function checkClassType(componentType) { + assert(/^[a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)?$/.test(componentType), 'componentType "' + componentType + '" illegal'); + } + function isExtendedClass(clz) { + return !!(clz && clz[IS_EXTENDED_CLASS]); + } + /** + * Implements `ExtendableConstructor` for `rootClz`. + * + * @usage + * ```ts + * class Xxx {} + * type XxxConstructor = typeof Xxx & ExtendableConstructor + * enableClassExtend(Xxx as XxxConstructor); + * ``` + */ + function enableClassExtend(rootClz, mandatoryMethods) { + rootClz.$constructor = rootClz; // FIXME: not necessary? + rootClz.extend = function (proto) { + if ("development" !== 'production') { + each(mandatoryMethods, function (method) { + if (!proto[method]) { + console.warn('Method `' + method + '` should be implemented' + (proto.type ? ' in ' + proto.type : '') + '.'); + } + }); + } + var superClass = this; + var ExtendedClass; + if (isESClass(superClass)) { + ExtendedClass = /** @class */function (_super) { + __extends(class_1, _super); + function class_1() { + return _super.apply(this, arguments) || this; + } + return class_1; + }(superClass); + } else { + // For backward compat, we both support ts class inheritance and this + // "extend" approach. + // The constructor should keep the same behavior as ts class inheritance: + // If this constructor/$constructor is not declared, auto invoke the super + // constructor. + // If this constructor/$constructor is declared, it is responsible for + // calling the super constructor. + ExtendedClass = function () { + (proto.$constructor || superClass).apply(this, arguments); + }; + inherits(ExtendedClass, this); + } + extend(ExtendedClass.prototype, proto); + ExtendedClass[IS_EXTENDED_CLASS] = true; + ExtendedClass.extend = this.extend; + ExtendedClass.superCall = superCall; + ExtendedClass.superApply = superApply; + ExtendedClass.superClass = superClass; + return ExtendedClass; + }; + } + function isESClass(fn) { + return isFunction(fn) && /^class\s/.test(Function.prototype.toString.call(fn)); + } + /** + * A work around to both support ts extend and this extend mechanism. + * on sub-class. + * @usage + * ```ts + * class Component { ... } + * classUtil.enableClassExtend(Component); + * classUtil.enableClassManagement(Component, {registerWhenExtend: true}); + * + * class Series extends Component { ... } + * // Without calling `markExtend`, `registerWhenExtend` will not work. + * Component.markExtend(Series); + * ``` + */ + function mountExtend(SubClz, SupperClz) { + SubClz.extend = SupperClz.extend; + } + // A random offset. + var classBase = Math.round(Math.random() * 10); + /** + * Implements `CheckableConstructor` for `target`. + * Can not use instanceof, consider different scope by + * cross domain or es module import in ec extensions. + * Mount a method "isInstance()" to Clz. + * + * @usage + * ```ts + * class Xxx {} + * type XxxConstructor = typeof Xxx & CheckableConstructor; + * enableClassCheck(Xxx as XxxConstructor) + * ``` + */ + function enableClassCheck(target) { + var classAttr = ['__\0is_clz', classBase++].join('_'); + target.prototype[classAttr] = true; + if ("development" !== 'production') { + assert(!target.isInstance, 'The method "is" can not be defined.'); + } + target.isInstance = function (obj) { + return !!(obj && obj[classAttr]); + }; + } + // superCall should have class info, which can not be fetched from 'this'. + // Consider this case: + // class A has method f, + // class B inherits class A, overrides method f, f call superApply('f'), + // class C inherits class B, does not override method f, + // then when method of class C is called, dead loop occurred. + function superCall(context, methodName) { + var args = []; + for (var _i = 2; _i < arguments.length; _i++) { + args[_i - 2] = arguments[_i]; + } + return this.superClass.prototype[methodName].apply(context, args); + } + function superApply(context, methodName, args) { + return this.superClass.prototype[methodName].apply(context, args); + } + /** + * Implements `ClassManager` for `target` + * + * @usage + * ```ts + * class Xxx {} + * type XxxConstructor = typeof Xxx & ClassManager + * enableClassManagement(Xxx as XxxConstructor); + * ``` + */ + function enableClassManagement(target) { + /** + * Component model classes + * key: componentType, + * value: + * componentClass, when componentType is 'a' + * or Object.<subKey, componentClass>, when componentType is 'a.b' + */ + var storage = {}; + target.registerClass = function (clz) { + // `type` should not be a "instance member". + // If using TS class, should better declared as `static type = 'series.pie'`. + // otherwise users have to mount `type` on prototype manually. + // For backward compat and enable instance visit type via `this.type`, + // we still support fetch `type` from prototype. + var componentFullType = clz.type || clz.prototype.type; + if (componentFullType) { + checkClassType(componentFullType); + // If only static type declared, we assign it to prototype mandatorily. + clz.prototype.type = componentFullType; + var componentTypeInfo = parseClassType(componentFullType); + if (!componentTypeInfo.sub) { + if ("development" !== 'production') { + if (storage[componentTypeInfo.main]) { + console.warn(componentTypeInfo.main + ' exists.'); + } + } + storage[componentTypeInfo.main] = clz; + } else if (componentTypeInfo.sub !== IS_CONTAINER) { + var container = makeContainer(componentTypeInfo); + container[componentTypeInfo.sub] = clz; + } + } + return clz; + }; + target.getClass = function (mainType, subType, throwWhenNotFound) { + var clz = storage[mainType]; + if (clz && clz[IS_CONTAINER]) { + clz = subType ? clz[subType] : null; + } + if (throwWhenNotFound && !clz) { + throw new Error(!subType ? mainType + '.' + 'type should be specified.' : 'Component ' + mainType + '.' + (subType || '') + ' is used but not imported.'); + } + return clz; + }; + target.getClassesByMainType = function (componentType) { + var componentTypeInfo = parseClassType(componentType); + var result = []; + var obj = storage[componentTypeInfo.main]; + if (obj && obj[IS_CONTAINER]) { + each(obj, function (o, type) { + type !== IS_CONTAINER && result.push(o); + }); + } else { + result.push(obj); + } + return result; + }; + target.hasClass = function (componentType) { + // Just consider componentType.main. + var componentTypeInfo = parseClassType(componentType); + return !!storage[componentTypeInfo.main]; + }; + /** + * @return Like ['aa', 'bb'], but can not be ['aa.xx'] + */ + target.getAllClassMainTypes = function () { + var types = []; + each(storage, function (obj, type) { + types.push(type); + }); + return types; + }; + /** + * If a main type is container and has sub types + */ + target.hasSubTypes = function (componentType) { + var componentTypeInfo = parseClassType(componentType); + var obj = storage[componentTypeInfo.main]; + return obj && obj[IS_CONTAINER]; + }; + function makeContainer(componentTypeInfo) { + var container = storage[componentTypeInfo.main]; + if (!container || !container[IS_CONTAINER]) { + container = storage[componentTypeInfo.main] = {}; + container[IS_CONTAINER] = true; + } + return container; + } + } + // /** + // * @param {string|Array.<string>} properties + // */ + // export function setReadOnly(obj, properties) { + // FIXME It seems broken in IE8 simulation of IE11 + // if (!zrUtil.isArray(properties)) { + // properties = properties != null ? [properties] : []; + // } + // zrUtil.each(properties, function (prop) { + // let value = obj[prop]; + // Object.defineProperty + // && Object.defineProperty(obj, prop, { + // value: value, writable: false + // }); + // zrUtil.isArray(obj[prop]) + // && Object.freeze + // && Object.freeze(obj[prop]); + // }); + // } + + function makeStyleMapper(properties, ignoreParent) { + // Normalize + for (var i = 0; i < properties.length; i++) { + if (!properties[i][1]) { + properties[i][1] = properties[i][0]; + } + } + ignoreParent = ignoreParent || false; + return function (model, excludes, includes) { + var style = {}; + for (var i = 0; i < properties.length; i++) { + var propName = properties[i][1]; + if (excludes && indexOf(excludes, propName) >= 0 || includes && indexOf(includes, propName) < 0) { + continue; + } + var val = model.getShallow(propName, ignoreParent); + if (val != null) { + style[properties[i][0]] = val; + } + } + // TODO Text or image? + return style; + }; + } + + var AREA_STYLE_KEY_MAP = [['fill', 'color'], ['shadowBlur'], ['shadowOffsetX'], ['shadowOffsetY'], ['opacity'], ['shadowColor'] + // Option decal is in `DecalObject` but style.decal is in `PatternObject`. + // So do not transfer decal directly. + ]; + + var getAreaStyle = makeStyleMapper(AREA_STYLE_KEY_MAP); + var AreaStyleMixin = /** @class */function () { + function AreaStyleMixin() {} + AreaStyleMixin.prototype.getAreaStyle = function (excludes, includes) { + return getAreaStyle(this, excludes, includes); + }; + return AreaStyleMixin; + }(); + + var globalImageCache = new LRU(50); + function findExistImage(newImageOrSrc) { + if (typeof newImageOrSrc === 'string') { + var cachedImgObj = globalImageCache.get(newImageOrSrc); + return cachedImgObj && cachedImgObj.image; + } + else { + return newImageOrSrc; + } + } + function createOrUpdateImage(newImageOrSrc, image, hostEl, onload, cbPayload) { + if (!newImageOrSrc) { + return image; + } + else if (typeof newImageOrSrc === 'string') { + if ((image && image.__zrImageSrc === newImageOrSrc) || !hostEl) { + return image; + } + var cachedImgObj = globalImageCache.get(newImageOrSrc); + var pendingWrap = { hostEl: hostEl, cb: onload, cbPayload: cbPayload }; + if (cachedImgObj) { + image = cachedImgObj.image; + !isImageReady(image) && cachedImgObj.pending.push(pendingWrap); + } + else { + image = platformApi.loadImage(newImageOrSrc, imageOnLoad, imageOnLoad); + image.__zrImageSrc = newImageOrSrc; + globalImageCache.put(newImageOrSrc, image.__cachedImgObj = { + image: image, + pending: [pendingWrap] + }); + } + return image; + } + else { + return newImageOrSrc; + } + } + function imageOnLoad() { + var cachedImgObj = this.__cachedImgObj; + this.onload = this.onerror = this.__cachedImgObj = null; + for (var i = 0; i < cachedImgObj.pending.length; i++) { + var pendingWrap = cachedImgObj.pending[i]; + var cb = pendingWrap.cb; + cb && cb(this, pendingWrap.cbPayload); + pendingWrap.hostEl.dirty(); + } + cachedImgObj.pending.length = 0; + } + function isImageReady(image) { + return image && image.width && image.height; + } + + var STYLE_REG = /\{([a-zA-Z0-9_]+)\|([^}]*)\}/g; + function truncateText(text, containerWidth, font, ellipsis, options) { + if (!containerWidth) { + return ''; + } + var textLines = (text + '').split('\n'); + options = prepareTruncateOptions(containerWidth, font, ellipsis, options); + for (var i = 0, len = textLines.length; i < len; i++) { + textLines[i] = truncateSingleLine(textLines[i], options); + } + return textLines.join('\n'); + } + function prepareTruncateOptions(containerWidth, font, ellipsis, options) { + options = options || {}; + var preparedOpts = extend({}, options); + preparedOpts.font = font; + ellipsis = retrieve2(ellipsis, '...'); + preparedOpts.maxIterations = retrieve2(options.maxIterations, 2); + var minChar = preparedOpts.minChar = retrieve2(options.minChar, 0); + preparedOpts.cnCharWidth = getWidth('国', font); + var ascCharWidth = preparedOpts.ascCharWidth = getWidth('a', font); + preparedOpts.placeholder = retrieve2(options.placeholder, ''); + var contentWidth = containerWidth = Math.max(0, containerWidth - 1); + for (var i = 0; i < minChar && contentWidth >= ascCharWidth; i++) { + contentWidth -= ascCharWidth; + } + var ellipsisWidth = getWidth(ellipsis, font); + if (ellipsisWidth > contentWidth) { + ellipsis = ''; + ellipsisWidth = 0; + } + contentWidth = containerWidth - ellipsisWidth; + preparedOpts.ellipsis = ellipsis; + preparedOpts.ellipsisWidth = ellipsisWidth; + preparedOpts.contentWidth = contentWidth; + preparedOpts.containerWidth = containerWidth; + return preparedOpts; + } + function truncateSingleLine(textLine, options) { + var containerWidth = options.containerWidth; + var font = options.font; + var contentWidth = options.contentWidth; + if (!containerWidth) { + return ''; + } + var lineWidth = getWidth(textLine, font); + if (lineWidth <= containerWidth) { + return textLine; + } + for (var j = 0;; j++) { + if (lineWidth <= contentWidth || j >= options.maxIterations) { + textLine += options.ellipsis; + break; + } + var subLength = j === 0 + ? estimateLength(textLine, contentWidth, options.ascCharWidth, options.cnCharWidth) + : lineWidth > 0 + ? Math.floor(textLine.length * contentWidth / lineWidth) + : 0; + textLine = textLine.substr(0, subLength); + lineWidth = getWidth(textLine, font); + } + if (textLine === '') { + textLine = options.placeholder; + } + return textLine; + } + function estimateLength(text, contentWidth, ascCharWidth, cnCharWidth) { + var width = 0; + var i = 0; + for (var len = text.length; i < len && width < contentWidth; i++) { + var charCode = text.charCodeAt(i); + width += (0 <= charCode && charCode <= 127) ? ascCharWidth : cnCharWidth; + } + return i; + } + function parsePlainText(text, style) { + text != null && (text += ''); + var overflow = style.overflow; + var padding = style.padding; + var font = style.font; + var truncate = overflow === 'truncate'; + var calculatedLineHeight = getLineHeight(font); + var lineHeight = retrieve2(style.lineHeight, calculatedLineHeight); + var bgColorDrawn = !!(style.backgroundColor); + var truncateLineOverflow = style.lineOverflow === 'truncate'; + var width = style.width; + var lines; + if (width != null && (overflow === 'break' || overflow === 'breakAll')) { + lines = text ? wrapText(text, style.font, width, overflow === 'breakAll', 0).lines : []; + } + else { + lines = text ? text.split('\n') : []; + } + var contentHeight = lines.length * lineHeight; + var height = retrieve2(style.height, contentHeight); + if (contentHeight > height && truncateLineOverflow) { + var lineCount = Math.floor(height / lineHeight); + lines = lines.slice(0, lineCount); + } + if (text && truncate && width != null) { + var options = prepareTruncateOptions(width, font, style.ellipsis, { + minChar: style.truncateMinChar, + placeholder: style.placeholder + }); + for (var i = 0; i < lines.length; i++) { + lines[i] = truncateSingleLine(lines[i], options); + } + } + var outerHeight = height; + var contentWidth = 0; + for (var i = 0; i < lines.length; i++) { + contentWidth = Math.max(getWidth(lines[i], font), contentWidth); + } + if (width == null) { + width = contentWidth; + } + var outerWidth = contentWidth; + if (padding) { + outerHeight += padding[0] + padding[2]; + outerWidth += padding[1] + padding[3]; + width += padding[1] + padding[3]; + } + if (bgColorDrawn) { + outerWidth = width; + } + return { + lines: lines, + height: height, + outerWidth: outerWidth, + outerHeight: outerHeight, + lineHeight: lineHeight, + calculatedLineHeight: calculatedLineHeight, + contentWidth: contentWidth, + contentHeight: contentHeight, + width: width + }; + } + var RichTextToken = (function () { + function RichTextToken() { + } + return RichTextToken; + }()); + var RichTextLine = (function () { + function RichTextLine(tokens) { + this.tokens = []; + if (tokens) { + this.tokens = tokens; + } + } + return RichTextLine; + }()); + var RichTextContentBlock = (function () { + function RichTextContentBlock() { + this.width = 0; + this.height = 0; + this.contentWidth = 0; + this.contentHeight = 0; + this.outerWidth = 0; + this.outerHeight = 0; + this.lines = []; + } + return RichTextContentBlock; + }()); + function parseRichText(text, style) { + var contentBlock = new RichTextContentBlock(); + text != null && (text += ''); + if (!text) { + return contentBlock; + } + var topWidth = style.width; + var topHeight = style.height; + var overflow = style.overflow; + var wrapInfo = (overflow === 'break' || overflow === 'breakAll') && topWidth != null + ? { width: topWidth, accumWidth: 0, breakAll: overflow === 'breakAll' } + : null; + var lastIndex = STYLE_REG.lastIndex = 0; + var result; + while ((result = STYLE_REG.exec(text)) != null) { + var matchedIndex = result.index; + if (matchedIndex > lastIndex) { + pushTokens(contentBlock, text.substring(lastIndex, matchedIndex), style, wrapInfo); + } + pushTokens(contentBlock, result[2], style, wrapInfo, result[1]); + lastIndex = STYLE_REG.lastIndex; + } + if (lastIndex < text.length) { + pushTokens(contentBlock, text.substring(lastIndex, text.length), style, wrapInfo); + } + var pendingList = []; + var calculatedHeight = 0; + var calculatedWidth = 0; + var stlPadding = style.padding; + var truncate = overflow === 'truncate'; + var truncateLine = style.lineOverflow === 'truncate'; + function finishLine(line, lineWidth, lineHeight) { + line.width = lineWidth; + line.lineHeight = lineHeight; + calculatedHeight += lineHeight; + calculatedWidth = Math.max(calculatedWidth, lineWidth); + } + outer: for (var i = 0; i < contentBlock.lines.length; i++) { + var line = contentBlock.lines[i]; + var lineHeight = 0; + var lineWidth = 0; + for (var j = 0; j < line.tokens.length; j++) { + var token = line.tokens[j]; + var tokenStyle = token.styleName && style.rich[token.styleName] || {}; + var textPadding = token.textPadding = tokenStyle.padding; + var paddingH = textPadding ? textPadding[1] + textPadding[3] : 0; + var font = token.font = tokenStyle.font || style.font; + token.contentHeight = getLineHeight(font); + var tokenHeight = retrieve2(tokenStyle.height, token.contentHeight); + token.innerHeight = tokenHeight; + textPadding && (tokenHeight += textPadding[0] + textPadding[2]); + token.height = tokenHeight; + token.lineHeight = retrieve3(tokenStyle.lineHeight, style.lineHeight, tokenHeight); + token.align = tokenStyle && tokenStyle.align || style.align; + token.verticalAlign = tokenStyle && tokenStyle.verticalAlign || 'middle'; + if (truncateLine && topHeight != null && calculatedHeight + token.lineHeight > topHeight) { + if (j > 0) { + line.tokens = line.tokens.slice(0, j); + finishLine(line, lineWidth, lineHeight); + contentBlock.lines = contentBlock.lines.slice(0, i + 1); + } + else { + contentBlock.lines = contentBlock.lines.slice(0, i); + } + break outer; + } + var styleTokenWidth = tokenStyle.width; + var tokenWidthNotSpecified = styleTokenWidth == null || styleTokenWidth === 'auto'; + if (typeof styleTokenWidth === 'string' && styleTokenWidth.charAt(styleTokenWidth.length - 1) === '%') { + token.percentWidth = styleTokenWidth; + pendingList.push(token); + token.contentWidth = getWidth(token.text, font); + } + else { + if (tokenWidthNotSpecified) { + var textBackgroundColor = tokenStyle.backgroundColor; + var bgImg = textBackgroundColor && textBackgroundColor.image; + if (bgImg) { + bgImg = findExistImage(bgImg); + if (isImageReady(bgImg)) { + token.width = Math.max(token.width, bgImg.width * tokenHeight / bgImg.height); + } + } + } + var remainTruncWidth = truncate && topWidth != null + ? topWidth - lineWidth : null; + if (remainTruncWidth != null && remainTruncWidth < token.width) { + if (!tokenWidthNotSpecified || remainTruncWidth < paddingH) { + token.text = ''; + token.width = token.contentWidth = 0; + } + else { + token.text = truncateText(token.text, remainTruncWidth - paddingH, font, style.ellipsis, { minChar: style.truncateMinChar }); + token.width = token.contentWidth = getWidth(token.text, font); + } + } + else { + token.contentWidth = getWidth(token.text, font); + } + } + token.width += paddingH; + lineWidth += token.width; + tokenStyle && (lineHeight = Math.max(lineHeight, token.lineHeight)); + } + finishLine(line, lineWidth, lineHeight); + } + contentBlock.outerWidth = contentBlock.width = retrieve2(topWidth, calculatedWidth); + contentBlock.outerHeight = contentBlock.height = retrieve2(topHeight, calculatedHeight); + contentBlock.contentHeight = calculatedHeight; + contentBlock.contentWidth = calculatedWidth; + if (stlPadding) { + contentBlock.outerWidth += stlPadding[1] + stlPadding[3]; + contentBlock.outerHeight += stlPadding[0] + stlPadding[2]; + } + for (var i = 0; i < pendingList.length; i++) { + var token = pendingList[i]; + var percentWidth = token.percentWidth; + token.width = parseInt(percentWidth, 10) / 100 * contentBlock.width; + } + return contentBlock; + } + function pushTokens(block, str, style, wrapInfo, styleName) { + var isEmptyStr = str === ''; + var tokenStyle = styleName && style.rich[styleName] || {}; + var lines = block.lines; + var font = tokenStyle.font || style.font; + var newLine = false; + var strLines; + var linesWidths; + if (wrapInfo) { + var tokenPadding = tokenStyle.padding; + var tokenPaddingH = tokenPadding ? tokenPadding[1] + tokenPadding[3] : 0; + if (tokenStyle.width != null && tokenStyle.width !== 'auto') { + var outerWidth_1 = parsePercent(tokenStyle.width, wrapInfo.width) + tokenPaddingH; + if (lines.length > 0) { + if (outerWidth_1 + wrapInfo.accumWidth > wrapInfo.width) { + strLines = str.split('\n'); + newLine = true; + } + } + wrapInfo.accumWidth = outerWidth_1; + } + else { + var res = wrapText(str, font, wrapInfo.width, wrapInfo.breakAll, wrapInfo.accumWidth); + wrapInfo.accumWidth = res.accumWidth + tokenPaddingH; + linesWidths = res.linesWidths; + strLines = res.lines; + } + } + else { + strLines = str.split('\n'); + } + for (var i = 0; i < strLines.length; i++) { + var text = strLines[i]; + var token = new RichTextToken(); + token.styleName = styleName; + token.text = text; + token.isLineHolder = !text && !isEmptyStr; + if (typeof tokenStyle.width === 'number') { + token.width = tokenStyle.width; + } + else { + token.width = linesWidths + ? linesWidths[i] + : getWidth(text, font); + } + if (!i && !newLine) { + var tokens = (lines[lines.length - 1] || (lines[0] = new RichTextLine())).tokens; + var tokensLen = tokens.length; + (tokensLen === 1 && tokens[0].isLineHolder) + ? (tokens[0] = token) + : ((text || !tokensLen || isEmptyStr) && tokens.push(token)); + } + else { + lines.push(new RichTextLine([token])); + } + } + } + function isAlphabeticLetter(ch) { + var code = ch.charCodeAt(0); + return code >= 0x20 && code <= 0x24F + || code >= 0x370 && code <= 0x10FF + || code >= 0x1200 && code <= 0x13FF + || code >= 0x1E00 && code <= 0x206F; + } + var breakCharMap = reduce(',&?/;] '.split(''), function (obj, ch) { + obj[ch] = true; + return obj; + }, {}); + function isWordBreakChar(ch) { + if (isAlphabeticLetter(ch)) { + if (breakCharMap[ch]) { + return true; + } + return false; + } + return true; + } + function wrapText(text, font, lineWidth, isBreakAll, lastAccumWidth) { + var lines = []; + var linesWidths = []; + var line = ''; + var currentWord = ''; + var currentWordWidth = 0; + var accumWidth = 0; + for (var i = 0; i < text.length; i++) { + var ch = text.charAt(i); + if (ch === '\n') { + if (currentWord) { + line += currentWord; + accumWidth += currentWordWidth; + } + lines.push(line); + linesWidths.push(accumWidth); + line = ''; + currentWord = ''; + currentWordWidth = 0; + accumWidth = 0; + continue; + } + var chWidth = getWidth(ch, font); + var inWord = isBreakAll ? false : !isWordBreakChar(ch); + if (!lines.length + ? lastAccumWidth + accumWidth + chWidth > lineWidth + : accumWidth + chWidth > lineWidth) { + if (!accumWidth) { + if (inWord) { + lines.push(currentWord); + linesWidths.push(currentWordWidth); + currentWord = ch; + currentWordWidth = chWidth; + } + else { + lines.push(ch); + linesWidths.push(chWidth); + } + } + else if (line || currentWord) { + if (inWord) { + if (!line) { + line = currentWord; + currentWord = ''; + currentWordWidth = 0; + accumWidth = currentWordWidth; + } + lines.push(line); + linesWidths.push(accumWidth - currentWordWidth); + currentWord += ch; + currentWordWidth += chWidth; + line = ''; + accumWidth = currentWordWidth; + } + else { + if (currentWord) { + line += currentWord; + currentWord = ''; + currentWordWidth = 0; + } + lines.push(line); + linesWidths.push(accumWidth); + line = ch; + accumWidth = chWidth; + } + } + continue; + } + accumWidth += chWidth; + if (inWord) { + currentWord += ch; + currentWordWidth += chWidth; + } + else { + if (currentWord) { + line += currentWord; + currentWord = ''; + currentWordWidth = 0; + } + line += ch; + } + } + if (!lines.length && !line) { + line = text; + currentWord = ''; + currentWordWidth = 0; + } + if (currentWord) { + line += currentWord; + } + if (line) { + lines.push(line); + linesWidths.push(accumWidth); + } + if (lines.length === 1) { + accumWidth += lastAccumWidth; + } + return { + accumWidth: accumWidth, + lines: lines, + linesWidths: linesWidths + }; + } + + var STYLE_MAGIC_KEY = '__zr_style_' + Math.round((Math.random() * 10)); + var DEFAULT_COMMON_STYLE = { + shadowBlur: 0, + shadowOffsetX: 0, + shadowOffsetY: 0, + shadowColor: '#000', + opacity: 1, + blend: 'source-over' + }; + var DEFAULT_COMMON_ANIMATION_PROPS = { + style: { + shadowBlur: true, + shadowOffsetX: true, + shadowOffsetY: true, + shadowColor: true, + opacity: true + } + }; + DEFAULT_COMMON_STYLE[STYLE_MAGIC_KEY] = true; + var PRIMARY_STATES_KEYS$1 = ['z', 'z2', 'invisible']; + var PRIMARY_STATES_KEYS_IN_HOVER_LAYER = ['invisible']; + var Displayable = (function (_super) { + __extends(Displayable, _super); + function Displayable(props) { + return _super.call(this, props) || this; + } + Displayable.prototype._init = function (props) { + var keysArr = keys(props); + for (var i = 0; i < keysArr.length; i++) { + var key = keysArr[i]; + if (key === 'style') { + this.useStyle(props[key]); + } + else { + _super.prototype.attrKV.call(this, key, props[key]); + } + } + if (!this.style) { + this.useStyle({}); + } + }; + Displayable.prototype.beforeBrush = function () { }; + Displayable.prototype.afterBrush = function () { }; + Displayable.prototype.innerBeforeBrush = function () { }; + Displayable.prototype.innerAfterBrush = function () { }; + Displayable.prototype.shouldBePainted = function (viewWidth, viewHeight, considerClipPath, considerAncestors) { + var m = this.transform; + if (this.ignore + || this.invisible + || this.style.opacity === 0 + || (this.culling + && isDisplayableCulled(this, viewWidth, viewHeight)) + || (m && !m[0] && !m[3])) { + return false; + } + if (considerClipPath && this.__clipPaths) { + for (var i = 0; i < this.__clipPaths.length; ++i) { + if (this.__clipPaths[i].isZeroArea()) { + return false; + } + } + } + if (considerAncestors && this.parent) { + var parent_1 = this.parent; + while (parent_1) { + if (parent_1.ignore) { + return false; + } + parent_1 = parent_1.parent; + } + } + return true; + }; + Displayable.prototype.contain = function (x, y) { + return this.rectContain(x, y); + }; + Displayable.prototype.traverse = function (cb, context) { + cb.call(context, this); + }; + Displayable.prototype.rectContain = function (x, y) { + var coord = this.transformCoordToLocal(x, y); + var rect = this.getBoundingRect(); + return rect.contain(coord[0], coord[1]); + }; + Displayable.prototype.getPaintRect = function () { + var rect = this._paintRect; + if (!this._paintRect || this.__dirty) { + var transform = this.transform; + var elRect = this.getBoundingRect(); + var style = this.style; + var shadowSize = style.shadowBlur || 0; + var shadowOffsetX = style.shadowOffsetX || 0; + var shadowOffsetY = style.shadowOffsetY || 0; + rect = this._paintRect || (this._paintRect = new BoundingRect(0, 0, 0, 0)); + if (transform) { + BoundingRect.applyTransform(rect, elRect, transform); + } + else { + rect.copy(elRect); + } + if (shadowSize || shadowOffsetX || shadowOffsetY) { + rect.width += shadowSize * 2 + Math.abs(shadowOffsetX); + rect.height += shadowSize * 2 + Math.abs(shadowOffsetY); + rect.x = Math.min(rect.x, rect.x + shadowOffsetX - shadowSize); + rect.y = Math.min(rect.y, rect.y + shadowOffsetY - shadowSize); + } + var tolerance = this.dirtyRectTolerance; + if (!rect.isZero()) { + rect.x = Math.floor(rect.x - tolerance); + rect.y = Math.floor(rect.y - tolerance); + rect.width = Math.ceil(rect.width + 1 + tolerance * 2); + rect.height = Math.ceil(rect.height + 1 + tolerance * 2); + } + } + return rect; + }; + Displayable.prototype.setPrevPaintRect = function (paintRect) { + if (paintRect) { + this._prevPaintRect = this._prevPaintRect || new BoundingRect(0, 0, 0, 0); + this._prevPaintRect.copy(paintRect); + } + else { + this._prevPaintRect = null; + } + }; + Displayable.prototype.getPrevPaintRect = function () { + return this._prevPaintRect; + }; + Displayable.prototype.animateStyle = function (loop) { + return this.animate('style', loop); + }; + Displayable.prototype.updateDuringAnimation = function (targetKey) { + if (targetKey === 'style') { + this.dirtyStyle(); + } + else { + this.markRedraw(); + } + }; + Displayable.prototype.attrKV = function (key, value) { + if (key !== 'style') { + _super.prototype.attrKV.call(this, key, value); + } + else { + if (!this.style) { + this.useStyle(value); + } + else { + this.setStyle(value); + } + } + }; + Displayable.prototype.setStyle = function (keyOrObj, value) { + if (typeof keyOrObj === 'string') { + this.style[keyOrObj] = value; + } + else { + extend(this.style, keyOrObj); + } + this.dirtyStyle(); + return this; + }; + Displayable.prototype.dirtyStyle = function (notRedraw) { + if (!notRedraw) { + this.markRedraw(); + } + this.__dirty |= STYLE_CHANGED_BIT; + if (this._rect) { + this._rect = null; + } + }; + Displayable.prototype.dirty = function () { + this.dirtyStyle(); + }; + Displayable.prototype.styleChanged = function () { + return !!(this.__dirty & STYLE_CHANGED_BIT); + }; + Displayable.prototype.styleUpdated = function () { + this.__dirty &= ~STYLE_CHANGED_BIT; + }; + Displayable.prototype.createStyle = function (obj) { + return createObject(DEFAULT_COMMON_STYLE, obj); + }; + Displayable.prototype.useStyle = function (obj) { + if (!obj[STYLE_MAGIC_KEY]) { + obj = this.createStyle(obj); + } + if (this.__inHover) { + this.__hoverStyle = obj; + } + else { + this.style = obj; + } + this.dirtyStyle(); + }; + Displayable.prototype.isStyleObject = function (obj) { + return obj[STYLE_MAGIC_KEY]; + }; + Displayable.prototype._innerSaveToNormal = function (toState) { + _super.prototype._innerSaveToNormal.call(this, toState); + var normalState = this._normalState; + if (toState.style && !normalState.style) { + normalState.style = this._mergeStyle(this.createStyle(), this.style); + } + this._savePrimaryToNormal(toState, normalState, PRIMARY_STATES_KEYS$1); + }; + Displayable.prototype._applyStateObj = function (stateName, state, normalState, keepCurrentStates, transition, animationCfg) { + _super.prototype._applyStateObj.call(this, stateName, state, normalState, keepCurrentStates, transition, animationCfg); + var needsRestoreToNormal = !(state && keepCurrentStates); + var targetStyle; + if (state && state.style) { + if (transition) { + if (keepCurrentStates) { + targetStyle = state.style; + } + else { + targetStyle = this._mergeStyle(this.createStyle(), normalState.style); + this._mergeStyle(targetStyle, state.style); + } + } + else { + targetStyle = this._mergeStyle(this.createStyle(), keepCurrentStates ? this.style : normalState.style); + this._mergeStyle(targetStyle, state.style); + } + } + else if (needsRestoreToNormal) { + targetStyle = normalState.style; + } + if (targetStyle) { + if (transition) { + var sourceStyle = this.style; + this.style = this.createStyle(needsRestoreToNormal ? {} : sourceStyle); + if (needsRestoreToNormal) { + var changedKeys = keys(sourceStyle); + for (var i = 0; i < changedKeys.length; i++) { + var key = changedKeys[i]; + if (key in targetStyle) { + targetStyle[key] = targetStyle[key]; + this.style[key] = sourceStyle[key]; + } + } + } + var targetKeys = keys(targetStyle); + for (var i = 0; i < targetKeys.length; i++) { + var key = targetKeys[i]; + this.style[key] = this.style[key]; + } + this._transitionState(stateName, { + style: targetStyle + }, animationCfg, this.getAnimationStyleProps()); + } + else { + this.useStyle(targetStyle); + } + } + var statesKeys = this.__inHover ? PRIMARY_STATES_KEYS_IN_HOVER_LAYER : PRIMARY_STATES_KEYS$1; + for (var i = 0; i < statesKeys.length; i++) { + var key = statesKeys[i]; + if (state && state[key] != null) { + this[key] = state[key]; + } + else if (needsRestoreToNormal) { + if (normalState[key] != null) { + this[key] = normalState[key]; + } + } + } + }; + Displayable.prototype._mergeStates = function (states) { + var mergedState = _super.prototype._mergeStates.call(this, states); + var mergedStyle; + for (var i = 0; i < states.length; i++) { + var state = states[i]; + if (state.style) { + mergedStyle = mergedStyle || {}; + this._mergeStyle(mergedStyle, state.style); + } + } + if (mergedStyle) { + mergedState.style = mergedStyle; + } + return mergedState; + }; + Displayable.prototype._mergeStyle = function (targetStyle, sourceStyle) { + extend(targetStyle, sourceStyle); + return targetStyle; + }; + Displayable.prototype.getAnimationStyleProps = function () { + return DEFAULT_COMMON_ANIMATION_PROPS; + }; + Displayable.initDefaultProps = (function () { + var dispProto = Displayable.prototype; + dispProto.type = 'displayable'; + dispProto.invisible = false; + dispProto.z = 0; + dispProto.z2 = 0; + dispProto.zlevel = 0; + dispProto.culling = false; + dispProto.cursor = 'pointer'; + dispProto.rectHover = false; + dispProto.incremental = false; + dispProto._rect = null; + dispProto.dirtyRectTolerance = 0; + dispProto.__dirty = REDRAW_BIT | STYLE_CHANGED_BIT; + })(); + return Displayable; + }(Element)); + var tmpRect$1 = new BoundingRect(0, 0, 0, 0); + var viewRect = new BoundingRect(0, 0, 0, 0); + function isDisplayableCulled(el, width, height) { + tmpRect$1.copy(el.getBoundingRect()); + if (el.transform) { + tmpRect$1.applyTransform(el.transform); + } + viewRect.width = width; + viewRect.height = height; + return !tmpRect$1.intersect(viewRect); + } + + var mathMin$1 = Math.min; + var mathMax$1 = Math.max; + var mathSin = Math.sin; + var mathCos = Math.cos; + var PI2 = Math.PI * 2; + var start = create(); + var end = create(); + var extremity = create(); + function fromPoints(points, min, max) { + if (points.length === 0) { + return; + } + var p = points[0]; + var left = p[0]; + var right = p[0]; + var top = p[1]; + var bottom = p[1]; + for (var i = 1; i < points.length; i++) { + p = points[i]; + left = mathMin$1(left, p[0]); + right = mathMax$1(right, p[0]); + top = mathMin$1(top, p[1]); + bottom = mathMax$1(bottom, p[1]); + } + min[0] = left; + min[1] = top; + max[0] = right; + max[1] = bottom; + } + function fromLine(x0, y0, x1, y1, min, max) { + min[0] = mathMin$1(x0, x1); + min[1] = mathMin$1(y0, y1); + max[0] = mathMax$1(x0, x1); + max[1] = mathMax$1(y0, y1); + } + var xDim = []; + var yDim = []; + function fromCubic(x0, y0, x1, y1, x2, y2, x3, y3, min, max) { + var cubicExtrema$1 = cubicExtrema; + var cubicAt$1 = cubicAt; + var n = cubicExtrema$1(x0, x1, x2, x3, xDim); + min[0] = Infinity; + min[1] = Infinity; + max[0] = -Infinity; + max[1] = -Infinity; + for (var i = 0; i < n; i++) { + var x = cubicAt$1(x0, x1, x2, x3, xDim[i]); + min[0] = mathMin$1(x, min[0]); + max[0] = mathMax$1(x, max[0]); + } + n = cubicExtrema$1(y0, y1, y2, y3, yDim); + for (var i = 0; i < n; i++) { + var y = cubicAt$1(y0, y1, y2, y3, yDim[i]); + min[1] = mathMin$1(y, min[1]); + max[1] = mathMax$1(y, max[1]); + } + min[0] = mathMin$1(x0, min[0]); + max[0] = mathMax$1(x0, max[0]); + min[0] = mathMin$1(x3, min[0]); + max[0] = mathMax$1(x3, max[0]); + min[1] = mathMin$1(y0, min[1]); + max[1] = mathMax$1(y0, max[1]); + min[1] = mathMin$1(y3, min[1]); + max[1] = mathMax$1(y3, max[1]); + } + function fromQuadratic(x0, y0, x1, y1, x2, y2, min, max) { + var quadraticExtremum$1 = quadraticExtremum; + var quadraticAt$1 = quadraticAt; + var tx = mathMax$1(mathMin$1(quadraticExtremum$1(x0, x1, x2), 1), 0); + var ty = mathMax$1(mathMin$1(quadraticExtremum$1(y0, y1, y2), 1), 0); + var x = quadraticAt$1(x0, x1, x2, tx); + var y = quadraticAt$1(y0, y1, y2, ty); + min[0] = mathMin$1(x0, x2, x); + min[1] = mathMin$1(y0, y2, y); + max[0] = mathMax$1(x0, x2, x); + max[1] = mathMax$1(y0, y2, y); + } + function fromArc(x, y, rx, ry, startAngle, endAngle, anticlockwise, min$1, max$1) { + var vec2Min = min; + var vec2Max = max; + var diff = Math.abs(startAngle - endAngle); + if (diff % PI2 < 1e-4 && diff > 1e-4) { + min$1[0] = x - rx; + min$1[1] = y - ry; + max$1[0] = x + rx; + max$1[1] = y + ry; + return; + } + start[0] = mathCos(startAngle) * rx + x; + start[1] = mathSin(startAngle) * ry + y; + end[0] = mathCos(endAngle) * rx + x; + end[1] = mathSin(endAngle) * ry + y; + vec2Min(min$1, start, end); + vec2Max(max$1, start, end); + startAngle = startAngle % (PI2); + if (startAngle < 0) { + startAngle = startAngle + PI2; + } + endAngle = endAngle % (PI2); + if (endAngle < 0) { + endAngle = endAngle + PI2; + } + if (startAngle > endAngle && !anticlockwise) { + endAngle += PI2; + } + else if (startAngle < endAngle && anticlockwise) { + startAngle += PI2; + } + if (anticlockwise) { + var tmp = endAngle; + endAngle = startAngle; + startAngle = tmp; + } + for (var angle = 0; angle < endAngle; angle += Math.PI / 2) { + if (angle > startAngle) { + extremity[0] = mathCos(angle) * rx + x; + extremity[1] = mathSin(angle) * ry + y; + vec2Min(min$1, extremity, min$1); + vec2Max(max$1, extremity, max$1); + } + } + } + + var CMD = { + M: 1, + L: 2, + C: 3, + Q: 4, + A: 5, + Z: 6, + R: 7 + }; + var tmpOutX = []; + var tmpOutY = []; + var min$1 = []; + var max$1 = []; + var min2 = []; + var max2 = []; + var mathMin$2 = Math.min; + var mathMax$2 = Math.max; + var mathCos$1 = Math.cos; + var mathSin$1 = Math.sin; + var mathAbs = Math.abs; + var PI = Math.PI; + var PI2$1 = PI * 2; + var hasTypedArray = typeof Float32Array !== 'undefined'; + var tmpAngles = []; + function modPI2(radian) { + var n = Math.round(radian / PI * 1e8) / 1e8; + return (n % 2) * PI; + } + function normalizeArcAngles(angles, anticlockwise) { + var newStartAngle = modPI2(angles[0]); + if (newStartAngle < 0) { + newStartAngle += PI2$1; + } + var delta = newStartAngle - angles[0]; + var newEndAngle = angles[1]; + newEndAngle += delta; + if (!anticlockwise && newEndAngle - newStartAngle >= PI2$1) { + newEndAngle = newStartAngle + PI2$1; + } + else if (anticlockwise && newStartAngle - newEndAngle >= PI2$1) { + newEndAngle = newStartAngle - PI2$1; + } + else if (!anticlockwise && newStartAngle > newEndAngle) { + newEndAngle = newStartAngle + (PI2$1 - modPI2(newStartAngle - newEndAngle)); + } + else if (anticlockwise && newStartAngle < newEndAngle) { + newEndAngle = newStartAngle - (PI2$1 - modPI2(newEndAngle - newStartAngle)); + } + angles[0] = newStartAngle; + angles[1] = newEndAngle; + } + var PathProxy = (function () { + function PathProxy(notSaveData) { + this.dpr = 1; + this._xi = 0; + this._yi = 0; + this._x0 = 0; + this._y0 = 0; + this._len = 0; + if (notSaveData) { + this._saveData = false; + } + if (this._saveData) { + this.data = []; + } + } + PathProxy.prototype.increaseVersion = function () { + this._version++; + }; + PathProxy.prototype.getVersion = function () { + return this._version; + }; + PathProxy.prototype.setScale = function (sx, sy, segmentIgnoreThreshold) { + segmentIgnoreThreshold = segmentIgnoreThreshold || 0; + if (segmentIgnoreThreshold > 0) { + this._ux = mathAbs(segmentIgnoreThreshold / devicePixelRatio / sx) || 0; + this._uy = mathAbs(segmentIgnoreThreshold / devicePixelRatio / sy) || 0; + } + }; + PathProxy.prototype.setDPR = function (dpr) { + this.dpr = dpr; + }; + PathProxy.prototype.setContext = function (ctx) { + this._ctx = ctx; + }; + PathProxy.prototype.getContext = function () { + return this._ctx; + }; + PathProxy.prototype.beginPath = function () { + this._ctx && this._ctx.beginPath(); + this.reset(); + return this; + }; + PathProxy.prototype.reset = function () { + if (this._saveData) { + this._len = 0; + } + if (this._pathSegLen) { + this._pathSegLen = null; + this._pathLen = 0; + } + this._version++; + }; + PathProxy.prototype.moveTo = function (x, y) { + this._drawPendingPt(); + this.addData(CMD.M, x, y); + this._ctx && this._ctx.moveTo(x, y); + this._x0 = x; + this._y0 = y; + this._xi = x; + this._yi = y; + return this; + }; + PathProxy.prototype.lineTo = function (x, y) { + var dx = mathAbs(x - this._xi); + var dy = mathAbs(y - this._yi); + var exceedUnit = dx > this._ux || dy > this._uy; + this.addData(CMD.L, x, y); + if (this._ctx && exceedUnit) { + this._ctx.lineTo(x, y); + } + if (exceedUnit) { + this._xi = x; + this._yi = y; + this._pendingPtDist = 0; + } + else { + var d2 = dx * dx + dy * dy; + if (d2 > this._pendingPtDist) { + this._pendingPtX = x; + this._pendingPtY = y; + this._pendingPtDist = d2; + } + } + return this; + }; + PathProxy.prototype.bezierCurveTo = function (x1, y1, x2, y2, x3, y3) { + this._drawPendingPt(); + this.addData(CMD.C, x1, y1, x2, y2, x3, y3); + if (this._ctx) { + this._ctx.bezierCurveTo(x1, y1, x2, y2, x3, y3); + } + this._xi = x3; + this._yi = y3; + return this; + }; + PathProxy.prototype.quadraticCurveTo = function (x1, y1, x2, y2) { + this._drawPendingPt(); + this.addData(CMD.Q, x1, y1, x2, y2); + if (this._ctx) { + this._ctx.quadraticCurveTo(x1, y1, x2, y2); + } + this._xi = x2; + this._yi = y2; + return this; + }; + PathProxy.prototype.arc = function (cx, cy, r, startAngle, endAngle, anticlockwise) { + this._drawPendingPt(); + tmpAngles[0] = startAngle; + tmpAngles[1] = endAngle; + normalizeArcAngles(tmpAngles, anticlockwise); + startAngle = tmpAngles[0]; + endAngle = tmpAngles[1]; + var delta = endAngle - startAngle; + this.addData(CMD.A, cx, cy, r, r, startAngle, delta, 0, anticlockwise ? 0 : 1); + this._ctx && this._ctx.arc(cx, cy, r, startAngle, endAngle, anticlockwise); + this._xi = mathCos$1(endAngle) * r + cx; + this._yi = mathSin$1(endAngle) * r + cy; + return this; + }; + PathProxy.prototype.arcTo = function (x1, y1, x2, y2, radius) { + this._drawPendingPt(); + if (this._ctx) { + this._ctx.arcTo(x1, y1, x2, y2, radius); + } + return this; + }; + PathProxy.prototype.rect = function (x, y, w, h) { + this._drawPendingPt(); + this._ctx && this._ctx.rect(x, y, w, h); + this.addData(CMD.R, x, y, w, h); + return this; + }; + PathProxy.prototype.closePath = function () { + this._drawPendingPt(); + this.addData(CMD.Z); + var ctx = this._ctx; + var x0 = this._x0; + var y0 = this._y0; + if (ctx) { + ctx.closePath(); + } + this._xi = x0; + this._yi = y0; + return this; + }; + PathProxy.prototype.fill = function (ctx) { + ctx && ctx.fill(); + this.toStatic(); + }; + PathProxy.prototype.stroke = function (ctx) { + ctx && ctx.stroke(); + this.toStatic(); + }; + PathProxy.prototype.len = function () { + return this._len; + }; + PathProxy.prototype.setData = function (data) { + var len = data.length; + if (!(this.data && this.data.length === len) && hasTypedArray) { + this.data = new Float32Array(len); + } + for (var i = 0; i < len; i++) { + this.data[i] = data[i]; + } + this._len = len; + }; + PathProxy.prototype.appendPath = function (path) { + if (!(path instanceof Array)) { + path = [path]; + } + var len = path.length; + var appendSize = 0; + var offset = this._len; + for (var i = 0; i < len; i++) { + appendSize += path[i].len(); + } + if (hasTypedArray && (this.data instanceof Float32Array)) { + this.data = new Float32Array(offset + appendSize); + } + for (var i = 0; i < len; i++) { + var appendPathData = path[i].data; + for (var k = 0; k < appendPathData.length; k++) { + this.data[offset++] = appendPathData[k]; + } + } + this._len = offset; + }; + PathProxy.prototype.addData = function (cmd, a, b, c, d, e, f, g, h) { + if (!this._saveData) { + return; + } + var data = this.data; + if (this._len + arguments.length > data.length) { + this._expandData(); + data = this.data; + } + for (var i = 0; i < arguments.length; i++) { + data[this._len++] = arguments[i]; + } + }; + PathProxy.prototype._drawPendingPt = function () { + if (this._pendingPtDist > 0) { + this._ctx && this._ctx.lineTo(this._pendingPtX, this._pendingPtY); + this._pendingPtDist = 0; + } + }; + PathProxy.prototype._expandData = function () { + if (!(this.data instanceof Array)) { + var newData = []; + for (var i = 0; i < this._len; i++) { + newData[i] = this.data[i]; + } + this.data = newData; + } + }; + PathProxy.prototype.toStatic = function () { + if (!this._saveData) { + return; + } + this._drawPendingPt(); + var data = this.data; + if (data instanceof Array) { + data.length = this._len; + if (hasTypedArray && this._len > 11) { + this.data = new Float32Array(data); + } + } + }; + PathProxy.prototype.getBoundingRect = function () { + min$1[0] = min$1[1] = min2[0] = min2[1] = Number.MAX_VALUE; + max$1[0] = max$1[1] = max2[0] = max2[1] = -Number.MAX_VALUE; + var data = this.data; + var xi = 0; + var yi = 0; + var x0 = 0; + var y0 = 0; + var i; + for (i = 0; i < this._len;) { + var cmd = data[i++]; + var isFirst = i === 1; + if (isFirst) { + xi = data[i]; + yi = data[i + 1]; + x0 = xi; + y0 = yi; + } + switch (cmd) { + case CMD.M: + xi = x0 = data[i++]; + yi = y0 = data[i++]; + min2[0] = x0; + min2[1] = y0; + max2[0] = x0; + max2[1] = y0; + break; + case CMD.L: + fromLine(xi, yi, data[i], data[i + 1], min2, max2); + xi = data[i++]; + yi = data[i++]; + break; + case CMD.C: + fromCubic(xi, yi, data[i++], data[i++], data[i++], data[i++], data[i], data[i + 1], min2, max2); + xi = data[i++]; + yi = data[i++]; + break; + case CMD.Q: + fromQuadratic(xi, yi, data[i++], data[i++], data[i], data[i + 1], min2, max2); + xi = data[i++]; + yi = data[i++]; + break; + case CMD.A: + var cx = data[i++]; + var cy = data[i++]; + var rx = data[i++]; + var ry = data[i++]; + var startAngle = data[i++]; + var endAngle = data[i++] + startAngle; + i += 1; + var anticlockwise = !data[i++]; + if (isFirst) { + x0 = mathCos$1(startAngle) * rx + cx; + y0 = mathSin$1(startAngle) * ry + cy; + } + fromArc(cx, cy, rx, ry, startAngle, endAngle, anticlockwise, min2, max2); + xi = mathCos$1(endAngle) * rx + cx; + yi = mathSin$1(endAngle) * ry + cy; + break; + case CMD.R: + x0 = xi = data[i++]; + y0 = yi = data[i++]; + var width = data[i++]; + var height = data[i++]; + fromLine(x0, y0, x0 + width, y0 + height, min2, max2); + break; + case CMD.Z: + xi = x0; + yi = y0; + break; + } + min(min$1, min$1, min2); + max(max$1, max$1, max2); + } + if (i === 0) { + min$1[0] = min$1[1] = max$1[0] = max$1[1] = 0; + } + return new BoundingRect(min$1[0], min$1[1], max$1[0] - min$1[0], max$1[1] - min$1[1]); + }; + PathProxy.prototype._calculateLength = function () { + var data = this.data; + var len = this._len; + var ux = this._ux; + var uy = this._uy; + var xi = 0; + var yi = 0; + var x0 = 0; + var y0 = 0; + if (!this._pathSegLen) { + this._pathSegLen = []; + } + var pathSegLen = this._pathSegLen; + var pathTotalLen = 0; + var segCount = 0; + for (var i = 0; i < len;) { + var cmd = data[i++]; + var isFirst = i === 1; + if (isFirst) { + xi = data[i]; + yi = data[i + 1]; + x0 = xi; + y0 = yi; + } + var l = -1; + switch (cmd) { + case CMD.M: + xi = x0 = data[i++]; + yi = y0 = data[i++]; + break; + case CMD.L: { + var x2 = data[i++]; + var y2 = data[i++]; + var dx = x2 - xi; + var dy = y2 - yi; + if (mathAbs(dx) > ux || mathAbs(dy) > uy || i === len - 1) { + l = Math.sqrt(dx * dx + dy * dy); + xi = x2; + yi = y2; + } + break; + } + case CMD.C: { + var x1 = data[i++]; + var y1 = data[i++]; + var x2 = data[i++]; + var y2 = data[i++]; + var x3 = data[i++]; + var y3 = data[i++]; + l = cubicLength(xi, yi, x1, y1, x2, y2, x3, y3, 10); + xi = x3; + yi = y3; + break; + } + case CMD.Q: { + var x1 = data[i++]; + var y1 = data[i++]; + var x2 = data[i++]; + var y2 = data[i++]; + l = quadraticLength(xi, yi, x1, y1, x2, y2, 10); + xi = x2; + yi = y2; + break; + } + case CMD.A: + var cx = data[i++]; + var cy = data[i++]; + var rx = data[i++]; + var ry = data[i++]; + var startAngle = data[i++]; + var delta = data[i++]; + var endAngle = delta + startAngle; + i += 1; + if (isFirst) { + x0 = mathCos$1(startAngle) * rx + cx; + y0 = mathSin$1(startAngle) * ry + cy; + } + l = mathMax$2(rx, ry) * mathMin$2(PI2$1, Math.abs(delta)); + xi = mathCos$1(endAngle) * rx + cx; + yi = mathSin$1(endAngle) * ry + cy; + break; + case CMD.R: { + x0 = xi = data[i++]; + y0 = yi = data[i++]; + var width = data[i++]; + var height = data[i++]; + l = width * 2 + height * 2; + break; + } + case CMD.Z: { + var dx = x0 - xi; + var dy = y0 - yi; + l = Math.sqrt(dx * dx + dy * dy); + xi = x0; + yi = y0; + break; + } + } + if (l >= 0) { + pathSegLen[segCount++] = l; + pathTotalLen += l; + } + } + this._pathLen = pathTotalLen; + return pathTotalLen; + }; + PathProxy.prototype.rebuildPath = function (ctx, percent) { + var d = this.data; + var ux = this._ux; + var uy = this._uy; + var len = this._len; + var x0; + var y0; + var xi; + var yi; + var x; + var y; + var drawPart = percent < 1; + var pathSegLen; + var pathTotalLen; + var accumLength = 0; + var segCount = 0; + var displayedLength; + var pendingPtDist = 0; + var pendingPtX; + var pendingPtY; + if (drawPart) { + if (!this._pathSegLen) { + this._calculateLength(); + } + pathSegLen = this._pathSegLen; + pathTotalLen = this._pathLen; + displayedLength = percent * pathTotalLen; + if (!displayedLength) { + return; + } + } + lo: for (var i = 0; i < len;) { + var cmd = d[i++]; + var isFirst = i === 1; + if (isFirst) { + xi = d[i]; + yi = d[i + 1]; + x0 = xi; + y0 = yi; + } + if (cmd !== CMD.L && pendingPtDist > 0) { + ctx.lineTo(pendingPtX, pendingPtY); + pendingPtDist = 0; + } + switch (cmd) { + case CMD.M: + x0 = xi = d[i++]; + y0 = yi = d[i++]; + ctx.moveTo(xi, yi); + break; + case CMD.L: { + x = d[i++]; + y = d[i++]; + var dx = mathAbs(x - xi); + var dy = mathAbs(y - yi); + if (dx > ux || dy > uy) { + if (drawPart) { + var l = pathSegLen[segCount++]; + if (accumLength + l > displayedLength) { + var t = (displayedLength - accumLength) / l; + ctx.lineTo(xi * (1 - t) + x * t, yi * (1 - t) + y * t); + break lo; + } + accumLength += l; + } + ctx.lineTo(x, y); + xi = x; + yi = y; + pendingPtDist = 0; + } + else { + var d2 = dx * dx + dy * dy; + if (d2 > pendingPtDist) { + pendingPtX = x; + pendingPtY = y; + pendingPtDist = d2; + } + } + break; + } + case CMD.C: { + var x1 = d[i++]; + var y1 = d[i++]; + var x2 = d[i++]; + var y2 = d[i++]; + var x3 = d[i++]; + var y3 = d[i++]; + if (drawPart) { + var l = pathSegLen[segCount++]; + if (accumLength + l > displayedLength) { + var t = (displayedLength - accumLength) / l; + cubicSubdivide(xi, x1, x2, x3, t, tmpOutX); + cubicSubdivide(yi, y1, y2, y3, t, tmpOutY); + ctx.bezierCurveTo(tmpOutX[1], tmpOutY[1], tmpOutX[2], tmpOutY[2], tmpOutX[3], tmpOutY[3]); + break lo; + } + accumLength += l; + } + ctx.bezierCurveTo(x1, y1, x2, y2, x3, y3); + xi = x3; + yi = y3; + break; + } + case CMD.Q: { + var x1 = d[i++]; + var y1 = d[i++]; + var x2 = d[i++]; + var y2 = d[i++]; + if (drawPart) { + var l = pathSegLen[segCount++]; + if (accumLength + l > displayedLength) { + var t = (displayedLength - accumLength) / l; + quadraticSubdivide(xi, x1, x2, t, tmpOutX); + quadraticSubdivide(yi, y1, y2, t, tmpOutY); + ctx.quadraticCurveTo(tmpOutX[1], tmpOutY[1], tmpOutX[2], tmpOutY[2]); + break lo; + } + accumLength += l; + } + ctx.quadraticCurveTo(x1, y1, x2, y2); + xi = x2; + yi = y2; + break; + } + case CMD.A: + var cx = d[i++]; + var cy = d[i++]; + var rx = d[i++]; + var ry = d[i++]; + var startAngle = d[i++]; + var delta = d[i++]; + var psi = d[i++]; + var anticlockwise = !d[i++]; + var r = (rx > ry) ? rx : ry; + var isEllipse = mathAbs(rx - ry) > 1e-3; + var endAngle = startAngle + delta; + var breakBuild = false; + if (drawPart) { + var l = pathSegLen[segCount++]; + if (accumLength + l > displayedLength) { + endAngle = startAngle + delta * (displayedLength - accumLength) / l; + breakBuild = true; + } + accumLength += l; + } + if (isEllipse && ctx.ellipse) { + ctx.ellipse(cx, cy, rx, ry, psi, startAngle, endAngle, anticlockwise); + } + else { + ctx.arc(cx, cy, r, startAngle, endAngle, anticlockwise); + } + if (breakBuild) { + break lo; + } + if (isFirst) { + x0 = mathCos$1(startAngle) * rx + cx; + y0 = mathSin$1(startAngle) * ry + cy; + } + xi = mathCos$1(endAngle) * rx + cx; + yi = mathSin$1(endAngle) * ry + cy; + break; + case CMD.R: + x0 = xi = d[i]; + y0 = yi = d[i + 1]; + x = d[i++]; + y = d[i++]; + var width = d[i++]; + var height = d[i++]; + if (drawPart) { + var l = pathSegLen[segCount++]; + if (accumLength + l > displayedLength) { + var d_1 = displayedLength - accumLength; + ctx.moveTo(x, y); + ctx.lineTo(x + mathMin$2(d_1, width), y); + d_1 -= width; + if (d_1 > 0) { + ctx.lineTo(x + width, y + mathMin$2(d_1, height)); + } + d_1 -= height; + if (d_1 > 0) { + ctx.lineTo(x + mathMax$2(width - d_1, 0), y + height); + } + d_1 -= width; + if (d_1 > 0) { + ctx.lineTo(x, y + mathMax$2(height - d_1, 0)); + } + break lo; + } + accumLength += l; + } + ctx.rect(x, y, width, height); + break; + case CMD.Z: + if (drawPart) { + var l = pathSegLen[segCount++]; + if (accumLength + l > displayedLength) { + var t = (displayedLength - accumLength) / l; + ctx.lineTo(xi * (1 - t) + x0 * t, yi * (1 - t) + y0 * t); + break lo; + } + accumLength += l; + } + ctx.closePath(); + xi = x0; + yi = y0; + } + } + }; + PathProxy.prototype.clone = function () { + var newProxy = new PathProxy(); + var data = this.data; + newProxy.data = data.slice ? data.slice() + : Array.prototype.slice.call(data); + newProxy._len = this._len; + return newProxy; + }; + PathProxy.CMD = CMD; + PathProxy.initDefaultProps = (function () { + var proto = PathProxy.prototype; + proto._saveData = true; + proto._ux = 0; + proto._uy = 0; + proto._pendingPtDist = 0; + proto._version = 0; + })(); + return PathProxy; + }()); + + function containStroke(x0, y0, x1, y1, lineWidth, x, y) { + if (lineWidth === 0) { + return false; + } + var _l = lineWidth; + var _a = 0; + var _b = x0; + if ((y > y0 + _l && y > y1 + _l) + || (y < y0 - _l && y < y1 - _l) + || (x > x0 + _l && x > x1 + _l) + || (x < x0 - _l && x < x1 - _l)) { + return false; + } + if (x0 !== x1) { + _a = (y0 - y1) / (x0 - x1); + _b = (x0 * y1 - x1 * y0) / (x0 - x1); + } + else { + return Math.abs(x - x0) <= _l / 2; + } + var tmp = _a * x - y + _b; + var _s = tmp * tmp / (_a * _a + 1); + return _s <= _l / 2 * _l / 2; + } + + function containStroke$1(x0, y0, x1, y1, x2, y2, x3, y3, lineWidth, x, y) { + if (lineWidth === 0) { + return false; + } + var _l = lineWidth; + if ((y > y0 + _l && y > y1 + _l && y > y2 + _l && y > y3 + _l) + || (y < y0 - _l && y < y1 - _l && y < y2 - _l && y < y3 - _l) + || (x > x0 + _l && x > x1 + _l && x > x2 + _l && x > x3 + _l) + || (x < x0 - _l && x < x1 - _l && x < x2 - _l && x < x3 - _l)) { + return false; + } + var d = cubicProjectPoint(x0, y0, x1, y1, x2, y2, x3, y3, x, y, null); + return d <= _l / 2; + } + + function containStroke$2(x0, y0, x1, y1, x2, y2, lineWidth, x, y) { + if (lineWidth === 0) { + return false; + } + var _l = lineWidth; + if ((y > y0 + _l && y > y1 + _l && y > y2 + _l) + || (y < y0 - _l && y < y1 - _l && y < y2 - _l) + || (x > x0 + _l && x > x1 + _l && x > x2 + _l) + || (x < x0 - _l && x < x1 - _l && x < x2 - _l)) { + return false; + } + var d = quadraticProjectPoint(x0, y0, x1, y1, x2, y2, x, y, null); + return d <= _l / 2; + } + + var PI2$2 = Math.PI * 2; + function normalizeRadian(angle) { + angle %= PI2$2; + if (angle < 0) { + angle += PI2$2; + } + return angle; + } + + var PI2$3 = Math.PI * 2; + function containStroke$3(cx, cy, r, startAngle, endAngle, anticlockwise, lineWidth, x, y) { + if (lineWidth === 0) { + return false; + } + var _l = lineWidth; + x -= cx; + y -= cy; + var d = Math.sqrt(x * x + y * y); + if ((d - _l > r) || (d + _l < r)) { + return false; + } + if (Math.abs(startAngle - endAngle) % PI2$3 < 1e-4) { + return true; + } + if (anticlockwise) { + var tmp = startAngle; + startAngle = normalizeRadian(endAngle); + endAngle = normalizeRadian(tmp); + } + else { + startAngle = normalizeRadian(startAngle); + endAngle = normalizeRadian(endAngle); + } + if (startAngle > endAngle) { + endAngle += PI2$3; + } + var angle = Math.atan2(y, x); + if (angle < 0) { + angle += PI2$3; + } + return (angle >= startAngle && angle <= endAngle) + || (angle + PI2$3 >= startAngle && angle + PI2$3 <= endAngle); + } + + function windingLine(x0, y0, x1, y1, x, y) { + if ((y > y0 && y > y1) || (y < y0 && y < y1)) { + return 0; + } + if (y1 === y0) { + return 0; + } + var t = (y - y0) / (y1 - y0); + var dir = y1 < y0 ? 1 : -1; + if (t === 1 || t === 0) { + dir = y1 < y0 ? 0.5 : -0.5; + } + var x_ = t * (x1 - x0) + x0; + return x_ === x ? Infinity : x_ > x ? dir : 0; + } + + var CMD$1 = PathProxy.CMD; + var PI2$4 = Math.PI * 2; + var EPSILON$3 = 1e-4; + function isAroundEqual(a, b) { + return Math.abs(a - b) < EPSILON$3; + } + var roots = [-1, -1, -1]; + var extrema = [-1, -1]; + function swapExtrema() { + var tmp = extrema[0]; + extrema[0] = extrema[1]; + extrema[1] = tmp; + } + function windingCubic(x0, y0, x1, y1, x2, y2, x3, y3, x, y) { + if ((y > y0 && y > y1 && y > y2 && y > y3) + || (y < y0 && y < y1 && y < y2 && y < y3)) { + return 0; + } + var nRoots = cubicRootAt(y0, y1, y2, y3, y, roots); + if (nRoots === 0) { + return 0; + } + else { + var w = 0; + var nExtrema = -1; + var y0_ = void 0; + var y1_ = void 0; + for (var i = 0; i < nRoots; i++) { + var t = roots[i]; + var unit = (t === 0 || t === 1) ? 0.5 : 1; + var x_ = cubicAt(x0, x1, x2, x3, t); + if (x_ < x) { + continue; + } + if (nExtrema < 0) { + nExtrema = cubicExtrema(y0, y1, y2, y3, extrema); + if (extrema[1] < extrema[0] && nExtrema > 1) { + swapExtrema(); + } + y0_ = cubicAt(y0, y1, y2, y3, extrema[0]); + if (nExtrema > 1) { + y1_ = cubicAt(y0, y1, y2, y3, extrema[1]); + } + } + if (nExtrema === 2) { + if (t < extrema[0]) { + w += y0_ < y0 ? unit : -unit; + } + else if (t < extrema[1]) { + w += y1_ < y0_ ? unit : -unit; + } + else { + w += y3 < y1_ ? unit : -unit; + } + } + else { + if (t < extrema[0]) { + w += y0_ < y0 ? unit : -unit; + } + else { + w += y3 < y0_ ? unit : -unit; + } + } + } + return w; + } + } + function windingQuadratic(x0, y0, x1, y1, x2, y2, x, y) { + if ((y > y0 && y > y1 && y > y2) + || (y < y0 && y < y1 && y < y2)) { + return 0; + } + var nRoots = quadraticRootAt(y0, y1, y2, y, roots); + if (nRoots === 0) { + return 0; + } + else { + var t = quadraticExtremum(y0, y1, y2); + if (t >= 0 && t <= 1) { + var w = 0; + var y_ = quadraticAt(y0, y1, y2, t); + for (var i = 0; i < nRoots; i++) { + var unit = (roots[i] === 0 || roots[i] === 1) ? 0.5 : 1; + var x_ = quadraticAt(x0, x1, x2, roots[i]); + if (x_ < x) { + continue; + } + if (roots[i] < t) { + w += y_ < y0 ? unit : -unit; + } + else { + w += y2 < y_ ? unit : -unit; + } + } + return w; + } + else { + var unit = (roots[0] === 0 || roots[0] === 1) ? 0.5 : 1; + var x_ = quadraticAt(x0, x1, x2, roots[0]); + if (x_ < x) { + return 0; + } + return y2 < y0 ? unit : -unit; + } + } + } + function windingArc(cx, cy, r, startAngle, endAngle, anticlockwise, x, y) { + y -= cy; + if (y > r || y < -r) { + return 0; + } + var tmp = Math.sqrt(r * r - y * y); + roots[0] = -tmp; + roots[1] = tmp; + var dTheta = Math.abs(startAngle - endAngle); + if (dTheta < 1e-4) { + return 0; + } + if (dTheta >= PI2$4 - 1e-4) { + startAngle = 0; + endAngle = PI2$4; + var dir = anticlockwise ? 1 : -1; + if (x >= roots[0] + cx && x <= roots[1] + cx) { + return dir; + } + else { + return 0; + } + } + if (startAngle > endAngle) { + var tmp_1 = startAngle; + startAngle = endAngle; + endAngle = tmp_1; + } + if (startAngle < 0) { + startAngle += PI2$4; + endAngle += PI2$4; + } + var w = 0; + for (var i = 0; i < 2; i++) { + var x_ = roots[i]; + if (x_ + cx > x) { + var angle = Math.atan2(y, x_); + var dir = anticlockwise ? 1 : -1; + if (angle < 0) { + angle = PI2$4 + angle; + } + if ((angle >= startAngle && angle <= endAngle) + || (angle + PI2$4 >= startAngle && angle + PI2$4 <= endAngle)) { + if (angle > Math.PI / 2 && angle < Math.PI * 1.5) { + dir = -dir; + } + w += dir; + } + } + } + return w; + } + function containPath(path, lineWidth, isStroke, x, y) { + var data = path.data; + var len = path.len(); + var w = 0; + var xi = 0; + var yi = 0; + var x0 = 0; + var y0 = 0; + var x1; + var y1; + for (var i = 0; i < len;) { + var cmd = data[i++]; + var isFirst = i === 1; + if (cmd === CMD$1.M && i > 1) { + if (!isStroke) { + w += windingLine(xi, yi, x0, y0, x, y); + } + } + if (isFirst) { + xi = data[i]; + yi = data[i + 1]; + x0 = xi; + y0 = yi; + } + switch (cmd) { + case CMD$1.M: + x0 = data[i++]; + y0 = data[i++]; + xi = x0; + yi = y0; + break; + case CMD$1.L: + if (isStroke) { + if (containStroke(xi, yi, data[i], data[i + 1], lineWidth, x, y)) { + return true; + } + } + else { + w += windingLine(xi, yi, data[i], data[i + 1], x, y) || 0; + } + xi = data[i++]; + yi = data[i++]; + break; + case CMD$1.C: + if (isStroke) { + if (containStroke$1(xi, yi, data[i++], data[i++], data[i++], data[i++], data[i], data[i + 1], lineWidth, x, y)) { + return true; + } + } + else { + w += windingCubic(xi, yi, data[i++], data[i++], data[i++], data[i++], data[i], data[i + 1], x, y) || 0; + } + xi = data[i++]; + yi = data[i++]; + break; + case CMD$1.Q: + if (isStroke) { + if (containStroke$2(xi, yi, data[i++], data[i++], data[i], data[i + 1], lineWidth, x, y)) { + return true; + } + } + else { + w += windingQuadratic(xi, yi, data[i++], data[i++], data[i], data[i + 1], x, y) || 0; + } + xi = data[i++]; + yi = data[i++]; + break; + case CMD$1.A: + var cx = data[i++]; + var cy = data[i++]; + var rx = data[i++]; + var ry = data[i++]; + var theta = data[i++]; + var dTheta = data[i++]; + i += 1; + var anticlockwise = !!(1 - data[i++]); + x1 = Math.cos(theta) * rx + cx; + y1 = Math.sin(theta) * ry + cy; + if (!isFirst) { + w += windingLine(xi, yi, x1, y1, x, y); + } + else { + x0 = x1; + y0 = y1; + } + var _x = (x - cx) * ry / rx + cx; + if (isStroke) { + if (containStroke$3(cx, cy, ry, theta, theta + dTheta, anticlockwise, lineWidth, _x, y)) { + return true; + } + } + else { + w += windingArc(cx, cy, ry, theta, theta + dTheta, anticlockwise, _x, y); + } + xi = Math.cos(theta + dTheta) * rx + cx; + yi = Math.sin(theta + dTheta) * ry + cy; + break; + case CMD$1.R: + x0 = xi = data[i++]; + y0 = yi = data[i++]; + var width = data[i++]; + var height = data[i++]; + x1 = x0 + width; + y1 = y0 + height; + if (isStroke) { + if (containStroke(x0, y0, x1, y0, lineWidth, x, y) + || containStroke(x1, y0, x1, y1, lineWidth, x, y) + || containStroke(x1, y1, x0, y1, lineWidth, x, y) + || containStroke(x0, y1, x0, y0, lineWidth, x, y)) { + return true; + } + } + else { + w += windingLine(x1, y0, x1, y1, x, y); + w += windingLine(x0, y1, x0, y0, x, y); + } + break; + case CMD$1.Z: + if (isStroke) { + if (containStroke(xi, yi, x0, y0, lineWidth, x, y)) { + return true; + } + } + else { + w += windingLine(xi, yi, x0, y0, x, y); + } + xi = x0; + yi = y0; + break; + } + } + if (!isStroke && !isAroundEqual(yi, y0)) { + w += windingLine(xi, yi, x0, y0, x, y) || 0; + } + return w !== 0; + } + function contain(pathProxy, x, y) { + return containPath(pathProxy, 0, false, x, y); + } + function containStroke$4(pathProxy, lineWidth, x, y) { + return containPath(pathProxy, lineWidth, true, x, y); + } + + var DEFAULT_PATH_STYLE = defaults({ + fill: '#000', + stroke: null, + strokePercent: 1, + fillOpacity: 1, + strokeOpacity: 1, + lineDashOffset: 0, + lineWidth: 1, + lineCap: 'butt', + miterLimit: 10, + strokeNoScale: false, + strokeFirst: false + }, DEFAULT_COMMON_STYLE); + var DEFAULT_PATH_ANIMATION_PROPS = { + style: defaults({ + fill: true, + stroke: true, + strokePercent: true, + fillOpacity: true, + strokeOpacity: true, + lineDashOffset: true, + lineWidth: true, + miterLimit: true + }, DEFAULT_COMMON_ANIMATION_PROPS.style) + }; + var pathCopyParams = TRANSFORMABLE_PROPS.concat(['invisible', + 'culling', 'z', 'z2', 'zlevel', 'parent' + ]); + var Path = (function (_super) { + __extends(Path, _super); + function Path(opts) { + return _super.call(this, opts) || this; + } + Path.prototype.update = function () { + var _this = this; + _super.prototype.update.call(this); + var style = this.style; + if (style.decal) { + var decalEl = this._decalEl = this._decalEl || new Path(); + if (decalEl.buildPath === Path.prototype.buildPath) { + decalEl.buildPath = function (ctx) { + _this.buildPath(ctx, _this.shape); + }; + } + decalEl.silent = true; + var decalElStyle = decalEl.style; + for (var key in style) { + if (decalElStyle[key] !== style[key]) { + decalElStyle[key] = style[key]; + } + } + decalElStyle.fill = style.fill ? style.decal : null; + decalElStyle.decal = null; + decalElStyle.shadowColor = null; + style.strokeFirst && (decalElStyle.stroke = null); + for (var i = 0; i < pathCopyParams.length; ++i) { + decalEl[pathCopyParams[i]] = this[pathCopyParams[i]]; + } + decalEl.__dirty |= REDRAW_BIT; + } + else if (this._decalEl) { + this._decalEl = null; + } + }; + Path.prototype.getDecalElement = function () { + return this._decalEl; + }; + Path.prototype._init = function (props) { + var keysArr = keys(props); + this.shape = this.getDefaultShape(); + var defaultStyle = this.getDefaultStyle(); + if (defaultStyle) { + this.useStyle(defaultStyle); + } + for (var i = 0; i < keysArr.length; i++) { + var key = keysArr[i]; + var value = props[key]; + if (key === 'style') { + if (!this.style) { + this.useStyle(value); + } + else { + extend(this.style, value); + } + } + else if (key === 'shape') { + extend(this.shape, value); + } + else { + _super.prototype.attrKV.call(this, key, value); + } + } + if (!this.style) { + this.useStyle({}); + } + }; + Path.prototype.getDefaultStyle = function () { + return null; + }; + Path.prototype.getDefaultShape = function () { + return {}; + }; + Path.prototype.canBeInsideText = function () { + return this.hasFill(); + }; + Path.prototype.getInsideTextFill = function () { + var pathFill = this.style.fill; + if (pathFill !== 'none') { + if (isString(pathFill)) { + var fillLum = lum(pathFill, 0); + if (fillLum > 0.5) { + return DARK_LABEL_COLOR; + } + else if (fillLum > 0.2) { + return LIGHTER_LABEL_COLOR; + } + return LIGHT_LABEL_COLOR; + } + else if (pathFill) { + return LIGHT_LABEL_COLOR; + } + } + return DARK_LABEL_COLOR; + }; + Path.prototype.getInsideTextStroke = function (textFill) { + var pathFill = this.style.fill; + if (isString(pathFill)) { + var zr = this.__zr; + var isDarkMode = !!(zr && zr.isDarkMode()); + var isDarkLabel = lum(textFill, 0) < DARK_MODE_THRESHOLD; + if (isDarkMode === isDarkLabel) { + return pathFill; + } + } + }; + Path.prototype.buildPath = function (ctx, shapeCfg, inBatch) { }; + Path.prototype.pathUpdated = function () { + this.__dirty &= ~SHAPE_CHANGED_BIT; + }; + Path.prototype.getUpdatedPathProxy = function (inBatch) { + !this.path && this.createPathProxy(); + this.path.beginPath(); + this.buildPath(this.path, this.shape, inBatch); + return this.path; + }; + Path.prototype.createPathProxy = function () { + this.path = new PathProxy(false); + }; + Path.prototype.hasStroke = function () { + var style = this.style; + var stroke = style.stroke; + return !(stroke == null || stroke === 'none' || !(style.lineWidth > 0)); + }; + Path.prototype.hasFill = function () { + var style = this.style; + var fill = style.fill; + return fill != null && fill !== 'none'; + }; + Path.prototype.getBoundingRect = function () { + var rect = this._rect; + var style = this.style; + var needsUpdateRect = !rect; + if (needsUpdateRect) { + var firstInvoke = false; + if (!this.path) { + firstInvoke = true; + this.createPathProxy(); + } + var path = this.path; + if (firstInvoke || (this.__dirty & SHAPE_CHANGED_BIT)) { + path.beginPath(); + this.buildPath(path, this.shape, false); + this.pathUpdated(); + } + rect = path.getBoundingRect(); + } + this._rect = rect; + if (this.hasStroke() && this.path && this.path.len() > 0) { + var rectStroke = this._rectStroke || (this._rectStroke = rect.clone()); + if (this.__dirty || needsUpdateRect) { + rectStroke.copy(rect); + var lineScale = style.strokeNoScale ? this.getLineScale() : 1; + var w = style.lineWidth; + if (!this.hasFill()) { + var strokeContainThreshold = this.strokeContainThreshold; + w = Math.max(w, strokeContainThreshold == null ? 4 : strokeContainThreshold); + } + if (lineScale > 1e-10) { + rectStroke.width += w / lineScale; + rectStroke.height += w / lineScale; + rectStroke.x -= w / lineScale / 2; + rectStroke.y -= w / lineScale / 2; + } + } + return rectStroke; + } + return rect; + }; + Path.prototype.contain = function (x, y) { + var localPos = this.transformCoordToLocal(x, y); + var rect = this.getBoundingRect(); + var style = this.style; + x = localPos[0]; + y = localPos[1]; + if (rect.contain(x, y)) { + var pathProxy = this.path; + if (this.hasStroke()) { + var lineWidth = style.lineWidth; + var lineScale = style.strokeNoScale ? this.getLineScale() : 1; + if (lineScale > 1e-10) { + if (!this.hasFill()) { + lineWidth = Math.max(lineWidth, this.strokeContainThreshold); + } + if (containStroke$4(pathProxy, lineWidth / lineScale, x, y)) { + return true; + } + } + } + if (this.hasFill()) { + return contain(pathProxy, x, y); + } + } + return false; + }; + Path.prototype.dirtyShape = function () { + this.__dirty |= SHAPE_CHANGED_BIT; + if (this._rect) { + this._rect = null; + } + if (this._decalEl) { + this._decalEl.dirtyShape(); + } + this.markRedraw(); + }; + Path.prototype.dirty = function () { + this.dirtyStyle(); + this.dirtyShape(); + }; + Path.prototype.animateShape = function (loop) { + return this.animate('shape', loop); + }; + Path.prototype.updateDuringAnimation = function (targetKey) { + if (targetKey === 'style') { + this.dirtyStyle(); + } + else if (targetKey === 'shape') { + this.dirtyShape(); + } + else { + this.markRedraw(); + } + }; + Path.prototype.attrKV = function (key, value) { + if (key === 'shape') { + this.setShape(value); + } + else { + _super.prototype.attrKV.call(this, key, value); + } + }; + Path.prototype.setShape = function (keyOrObj, value) { + var shape = this.shape; + if (!shape) { + shape = this.shape = {}; + } + if (typeof keyOrObj === 'string') { + shape[keyOrObj] = value; + } + else { + extend(shape, keyOrObj); + } + this.dirtyShape(); + return this; + }; + Path.prototype.shapeChanged = function () { + return !!(this.__dirty & SHAPE_CHANGED_BIT); + }; + Path.prototype.createStyle = function (obj) { + return createObject(DEFAULT_PATH_STYLE, obj); + }; + Path.prototype._innerSaveToNormal = function (toState) { + _super.prototype._innerSaveToNormal.call(this, toState); + var normalState = this._normalState; + if (toState.shape && !normalState.shape) { + normalState.shape = extend({}, this.shape); + } + }; + Path.prototype._applyStateObj = function (stateName, state, normalState, keepCurrentStates, transition, animationCfg) { + _super.prototype._applyStateObj.call(this, stateName, state, normalState, keepCurrentStates, transition, animationCfg); + var needsRestoreToNormal = !(state && keepCurrentStates); + var targetShape; + if (state && state.shape) { + if (transition) { + if (keepCurrentStates) { + targetShape = state.shape; + } + else { + targetShape = extend({}, normalState.shape); + extend(targetShape, state.shape); + } + } + else { + targetShape = extend({}, keepCurrentStates ? this.shape : normalState.shape); + extend(targetShape, state.shape); + } + } + else if (needsRestoreToNormal) { + targetShape = normalState.shape; + } + if (targetShape) { + if (transition) { + this.shape = extend({}, this.shape); + var targetShapePrimaryProps = {}; + var shapeKeys = keys(targetShape); + for (var i = 0; i < shapeKeys.length; i++) { + var key = shapeKeys[i]; + if (typeof targetShape[key] === 'object') { + this.shape[key] = targetShape[key]; + } + else { + targetShapePrimaryProps[key] = targetShape[key]; + } + } + this._transitionState(stateName, { + shape: targetShapePrimaryProps + }, animationCfg); + } + else { + this.shape = targetShape; + this.dirtyShape(); + } + } + }; + Path.prototype._mergeStates = function (states) { + var mergedState = _super.prototype._mergeStates.call(this, states); + var mergedShape; + for (var i = 0; i < states.length; i++) { + var state = states[i]; + if (state.shape) { + mergedShape = mergedShape || {}; + this._mergeStyle(mergedShape, state.shape); + } + } + if (mergedShape) { + mergedState.shape = mergedShape; + } + return mergedState; + }; + Path.prototype.getAnimationStyleProps = function () { + return DEFAULT_PATH_ANIMATION_PROPS; + }; + Path.prototype.isZeroArea = function () { + return false; + }; + Path.extend = function (defaultProps) { + var Sub = (function (_super) { + __extends(Sub, _super); + function Sub(opts) { + var _this = _super.call(this, opts) || this; + defaultProps.init && defaultProps.init.call(_this, opts); + return _this; + } + Sub.prototype.getDefaultStyle = function () { + return clone(defaultProps.style); + }; + Sub.prototype.getDefaultShape = function () { + return clone(defaultProps.shape); + }; + return Sub; + }(Path)); + for (var key in defaultProps) { + if (typeof defaultProps[key] === 'function') { + Sub.prototype[key] = defaultProps[key]; + } + } + return Sub; + }; + Path.initDefaultProps = (function () { + var pathProto = Path.prototype; + pathProto.type = 'path'; + pathProto.strokeContainThreshold = 5; + pathProto.segmentIgnoreThreshold = 0; + pathProto.subPixelOptimize = false; + pathProto.autoBatch = false; + pathProto.__dirty = REDRAW_BIT | STYLE_CHANGED_BIT | SHAPE_CHANGED_BIT; + })(); + return Path; + }(Displayable)); + + var DEFAULT_TSPAN_STYLE = defaults({ + strokeFirst: true, + font: DEFAULT_FONT, + x: 0, + y: 0, + textAlign: 'left', + textBaseline: 'top', + miterLimit: 2 + }, DEFAULT_PATH_STYLE); + var TSpan = (function (_super) { + __extends(TSpan, _super); + function TSpan() { + return _super !== null && _super.apply(this, arguments) || this; + } + TSpan.prototype.hasStroke = function () { + var style = this.style; + var stroke = style.stroke; + return stroke != null && stroke !== 'none' && style.lineWidth > 0; + }; + TSpan.prototype.hasFill = function () { + var style = this.style; + var fill = style.fill; + return fill != null && fill !== 'none'; + }; + TSpan.prototype.createStyle = function (obj) { + return createObject(DEFAULT_TSPAN_STYLE, obj); + }; + TSpan.prototype.setBoundingRect = function (rect) { + this._rect = rect; + }; + TSpan.prototype.getBoundingRect = function () { + var style = this.style; + if (!this._rect) { + var text = style.text; + text != null ? (text += '') : (text = ''); + var rect = getBoundingRect(text, style.font, style.textAlign, style.textBaseline); + rect.x += style.x || 0; + rect.y += style.y || 0; + if (this.hasStroke()) { + var w = style.lineWidth; + rect.x -= w / 2; + rect.y -= w / 2; + rect.width += w; + rect.height += w; + } + this._rect = rect; + } + return this._rect; + }; + TSpan.initDefaultProps = (function () { + var tspanProto = TSpan.prototype; + tspanProto.dirtyRectTolerance = 10; + })(); + return TSpan; + }(Displayable)); + TSpan.prototype.type = 'tspan'; + + var DEFAULT_IMAGE_STYLE = defaults({ + x: 0, + y: 0 + }, DEFAULT_COMMON_STYLE); + var DEFAULT_IMAGE_ANIMATION_PROPS = { + style: defaults({ + x: true, + y: true, + width: true, + height: true, + sx: true, + sy: true, + sWidth: true, + sHeight: true + }, DEFAULT_COMMON_ANIMATION_PROPS.style) + }; + function isImageLike(source) { + return !!(source + && typeof source !== 'string' + && source.width && source.height); + } + var ZRImage = (function (_super) { + __extends(ZRImage, _super); + function ZRImage() { + return _super !== null && _super.apply(this, arguments) || this; + } + ZRImage.prototype.createStyle = function (obj) { + return createObject(DEFAULT_IMAGE_STYLE, obj); + }; + ZRImage.prototype._getSize = function (dim) { + var style = this.style; + var size = style[dim]; + if (size != null) { + return size; + } + var imageSource = isImageLike(style.image) + ? style.image : this.__image; + if (!imageSource) { + return 0; + } + var otherDim = dim === 'width' ? 'height' : 'width'; + var otherDimSize = style[otherDim]; + if (otherDimSize == null) { + return imageSource[dim]; + } + else { + return imageSource[dim] / imageSource[otherDim] * otherDimSize; + } + }; + ZRImage.prototype.getWidth = function () { + return this._getSize('width'); + }; + ZRImage.prototype.getHeight = function () { + return this._getSize('height'); + }; + ZRImage.prototype.getAnimationStyleProps = function () { + return DEFAULT_IMAGE_ANIMATION_PROPS; + }; + ZRImage.prototype.getBoundingRect = function () { + var style = this.style; + if (!this._rect) { + this._rect = new BoundingRect(style.x || 0, style.y || 0, this.getWidth(), this.getHeight()); + } + return this._rect; + }; + return ZRImage; + }(Displayable)); + ZRImage.prototype.type = 'image'; + + function buildPath(ctx, shape) { + var x = shape.x; + var y = shape.y; + var width = shape.width; + var height = shape.height; + var r = shape.r; + var r1; + var r2; + var r3; + var r4; + if (width < 0) { + x = x + width; + width = -width; + } + if (height < 0) { + y = y + height; + height = -height; + } + if (typeof r === 'number') { + r1 = r2 = r3 = r4 = r; + } + else if (r instanceof Array) { + if (r.length === 1) { + r1 = r2 = r3 = r4 = r[0]; + } + else if (r.length === 2) { + r1 = r3 = r[0]; + r2 = r4 = r[1]; + } + else if (r.length === 3) { + r1 = r[0]; + r2 = r4 = r[1]; + r3 = r[2]; + } + else { + r1 = r[0]; + r2 = r[1]; + r3 = r[2]; + r4 = r[3]; + } + } + else { + r1 = r2 = r3 = r4 = 0; + } + var total; + if (r1 + r2 > width) { + total = r1 + r2; + r1 *= width / total; + r2 *= width / total; + } + if (r3 + r4 > width) { + total = r3 + r4; + r3 *= width / total; + r4 *= width / total; + } + if (r2 + r3 > height) { + total = r2 + r3; + r2 *= height / total; + r3 *= height / total; + } + if (r1 + r4 > height) { + total = r1 + r4; + r1 *= height / total; + r4 *= height / total; + } + ctx.moveTo(x + r1, y); + ctx.lineTo(x + width - r2, y); + r2 !== 0 && ctx.arc(x + width - r2, y + r2, r2, -Math.PI / 2, 0); + ctx.lineTo(x + width, y + height - r3); + r3 !== 0 && ctx.arc(x + width - r3, y + height - r3, r3, 0, Math.PI / 2); + ctx.lineTo(x + r4, y + height); + r4 !== 0 && ctx.arc(x + r4, y + height - r4, r4, Math.PI / 2, Math.PI); + ctx.lineTo(x, y + r1); + r1 !== 0 && ctx.arc(x + r1, y + r1, r1, Math.PI, Math.PI * 1.5); + } + + var round$1 = Math.round; + function subPixelOptimizeLine(outputShape, inputShape, style) { + if (!inputShape) { + return; + } + var x1 = inputShape.x1; + var x2 = inputShape.x2; + var y1 = inputShape.y1; + var y2 = inputShape.y2; + outputShape.x1 = x1; + outputShape.x2 = x2; + outputShape.y1 = y1; + outputShape.y2 = y2; + var lineWidth = style && style.lineWidth; + if (!lineWidth) { + return outputShape; + } + if (round$1(x1 * 2) === round$1(x2 * 2)) { + outputShape.x1 = outputShape.x2 = subPixelOptimize(x1, lineWidth, true); + } + if (round$1(y1 * 2) === round$1(y2 * 2)) { + outputShape.y1 = outputShape.y2 = subPixelOptimize(y1, lineWidth, true); + } + return outputShape; + } + function subPixelOptimizeRect(outputShape, inputShape, style) { + if (!inputShape) { + return; + } + var originX = inputShape.x; + var originY = inputShape.y; + var originWidth = inputShape.width; + var originHeight = inputShape.height; + outputShape.x = originX; + outputShape.y = originY; + outputShape.width = originWidth; + outputShape.height = originHeight; + var lineWidth = style && style.lineWidth; + if (!lineWidth) { + return outputShape; + } + outputShape.x = subPixelOptimize(originX, lineWidth, true); + outputShape.y = subPixelOptimize(originY, lineWidth, true); + outputShape.width = Math.max(subPixelOptimize(originX + originWidth, lineWidth, false) - outputShape.x, originWidth === 0 ? 0 : 1); + outputShape.height = Math.max(subPixelOptimize(originY + originHeight, lineWidth, false) - outputShape.y, originHeight === 0 ? 0 : 1); + return outputShape; + } + function subPixelOptimize(position, lineWidth, positiveOrNegative) { + if (!lineWidth) { + return position; + } + var doubledPosition = round$1(position * 2); + return (doubledPosition + round$1(lineWidth)) % 2 === 0 + ? doubledPosition / 2 + : (doubledPosition + (positiveOrNegative ? 1 : -1)) / 2; + } + + var RectShape = (function () { + function RectShape() { + this.x = 0; + this.y = 0; + this.width = 0; + this.height = 0; + } + return RectShape; + }()); + var subPixelOptimizeOutputShape = {}; + var Rect = (function (_super) { + __extends(Rect, _super); + function Rect(opts) { + return _super.call(this, opts) || this; + } + Rect.prototype.getDefaultShape = function () { + return new RectShape(); + }; + Rect.prototype.buildPath = function (ctx, shape) { + var x; + var y; + var width; + var height; + if (this.subPixelOptimize) { + var optimizedShape = subPixelOptimizeRect(subPixelOptimizeOutputShape, shape, this.style); + x = optimizedShape.x; + y = optimizedShape.y; + width = optimizedShape.width; + height = optimizedShape.height; + optimizedShape.r = shape.r; + shape = optimizedShape; + } + else { + x = shape.x; + y = shape.y; + width = shape.width; + height = shape.height; + } + if (!shape.r) { + ctx.rect(x, y, width, height); + } + else { + buildPath(ctx, shape); + } + }; + Rect.prototype.isZeroArea = function () { + return !this.shape.width || !this.shape.height; + }; + return Rect; + }(Path)); + Rect.prototype.type = 'rect'; + + var DEFAULT_RICH_TEXT_COLOR = { + fill: '#000' + }; + var DEFAULT_STROKE_LINE_WIDTH = 2; + var DEFAULT_TEXT_ANIMATION_PROPS = { + style: defaults({ + fill: true, + stroke: true, + fillOpacity: true, + strokeOpacity: true, + lineWidth: true, + fontSize: true, + lineHeight: true, + width: true, + height: true, + textShadowColor: true, + textShadowBlur: true, + textShadowOffsetX: true, + textShadowOffsetY: true, + backgroundColor: true, + padding: true, + borderColor: true, + borderWidth: true, + borderRadius: true + }, DEFAULT_COMMON_ANIMATION_PROPS.style) + }; + var ZRText = (function (_super) { + __extends(ZRText, _super); + function ZRText(opts) { + var _this = _super.call(this) || this; + _this.type = 'text'; + _this._children = []; + _this._defaultStyle = DEFAULT_RICH_TEXT_COLOR; + _this.attr(opts); + return _this; + } + ZRText.prototype.childrenRef = function () { + return this._children; + }; + ZRText.prototype.update = function () { + _super.prototype.update.call(this); + if (this.styleChanged()) { + this._updateSubTexts(); + } + for (var i = 0; i < this._children.length; i++) { + var child = this._children[i]; + child.zlevel = this.zlevel; + child.z = this.z; + child.z2 = this.z2; + child.culling = this.culling; + child.cursor = this.cursor; + child.invisible = this.invisible; + } + }; + ZRText.prototype.updateTransform = function () { + var innerTransformable = this.innerTransformable; + if (innerTransformable) { + innerTransformable.updateTransform(); + if (innerTransformable.transform) { + this.transform = innerTransformable.transform; + } + } + else { + _super.prototype.updateTransform.call(this); + } + }; + ZRText.prototype.getLocalTransform = function (m) { + var innerTransformable = this.innerTransformable; + return innerTransformable + ? innerTransformable.getLocalTransform(m) + : _super.prototype.getLocalTransform.call(this, m); + }; + ZRText.prototype.getComputedTransform = function () { + if (this.__hostTarget) { + this.__hostTarget.getComputedTransform(); + this.__hostTarget.updateInnerText(true); + } + return _super.prototype.getComputedTransform.call(this); + }; + ZRText.prototype._updateSubTexts = function () { + this._childCursor = 0; + normalizeTextStyle(this.style); + this.style.rich + ? this._updateRichTexts() + : this._updatePlainTexts(); + this._children.length = this._childCursor; + this.styleUpdated(); + }; + ZRText.prototype.addSelfToZr = function (zr) { + _super.prototype.addSelfToZr.call(this, zr); + for (var i = 0; i < this._children.length; i++) { + this._children[i].__zr = zr; + } + }; + ZRText.prototype.removeSelfFromZr = function (zr) { + _super.prototype.removeSelfFromZr.call(this, zr); + for (var i = 0; i < this._children.length; i++) { + this._children[i].__zr = null; + } + }; + ZRText.prototype.getBoundingRect = function () { + if (this.styleChanged()) { + this._updateSubTexts(); + } + if (!this._rect) { + var tmpRect = new BoundingRect(0, 0, 0, 0); + var children = this._children; + var tmpMat = []; + var rect = null; + for (var i = 0; i < children.length; i++) { + var child = children[i]; + var childRect = child.getBoundingRect(); + var transform = child.getLocalTransform(tmpMat); + if (transform) { + tmpRect.copy(childRect); + tmpRect.applyTransform(transform); + rect = rect || tmpRect.clone(); + rect.union(tmpRect); + } + else { + rect = rect || childRect.clone(); + rect.union(childRect); + } + } + this._rect = rect || tmpRect; + } + return this._rect; + }; + ZRText.prototype.setDefaultTextStyle = function (defaultTextStyle) { + this._defaultStyle = defaultTextStyle || DEFAULT_RICH_TEXT_COLOR; + }; + ZRText.prototype.setTextContent = function (textContent) { + if ("development" !== 'production') { + throw new Error('Can\'t attach text on another text'); + } + }; + ZRText.prototype._mergeStyle = function (targetStyle, sourceStyle) { + if (!sourceStyle) { + return targetStyle; + } + var sourceRich = sourceStyle.rich; + var targetRich = targetStyle.rich || (sourceRich && {}); + extend(targetStyle, sourceStyle); + if (sourceRich && targetRich) { + this._mergeRich(targetRich, sourceRich); + targetStyle.rich = targetRich; + } + else if (targetRich) { + targetStyle.rich = targetRich; + } + return targetStyle; + }; + ZRText.prototype._mergeRich = function (targetRich, sourceRich) { + var richNames = keys(sourceRich); + for (var i = 0; i < richNames.length; i++) { + var richName = richNames[i]; + targetRich[richName] = targetRich[richName] || {}; + extend(targetRich[richName], sourceRich[richName]); + } + }; + ZRText.prototype.getAnimationStyleProps = function () { + return DEFAULT_TEXT_ANIMATION_PROPS; + }; + ZRText.prototype._getOrCreateChild = function (Ctor) { + var child = this._children[this._childCursor]; + if (!child || !(child instanceof Ctor)) { + child = new Ctor(); + } + this._children[this._childCursor++] = child; + child.__zr = this.__zr; + child.parent = this; + return child; + }; + ZRText.prototype._updatePlainTexts = function () { + var style = this.style; + var textFont = style.font || DEFAULT_FONT; + var textPadding = style.padding; + var text = getStyleText(style); + var contentBlock = parsePlainText(text, style); + var needDrawBg = needDrawBackground(style); + var bgColorDrawn = !!(style.backgroundColor); + var outerHeight = contentBlock.outerHeight; + var outerWidth = contentBlock.outerWidth; + var contentWidth = contentBlock.contentWidth; + var textLines = contentBlock.lines; + var lineHeight = contentBlock.lineHeight; + var defaultStyle = this._defaultStyle; + var baseX = style.x || 0; + var baseY = style.y || 0; + var textAlign = style.align || defaultStyle.align || 'left'; + var verticalAlign = style.verticalAlign || defaultStyle.verticalAlign || 'top'; + var textX = baseX; + var textY = adjustTextY$1(baseY, contentBlock.contentHeight, verticalAlign); + if (needDrawBg || textPadding) { + var boxX = adjustTextX(baseX, outerWidth, textAlign); + var boxY = adjustTextY$1(baseY, outerHeight, verticalAlign); + needDrawBg && this._renderBackground(style, style, boxX, boxY, outerWidth, outerHeight); + } + textY += lineHeight / 2; + if (textPadding) { + textX = getTextXForPadding(baseX, textAlign, textPadding); + if (verticalAlign === 'top') { + textY += textPadding[0]; + } + else if (verticalAlign === 'bottom') { + textY -= textPadding[2]; + } + } + var defaultLineWidth = 0; + var useDefaultFill = false; + var textFill = getFill('fill' in style + ? style.fill + : (useDefaultFill = true, defaultStyle.fill)); + var textStroke = getStroke('stroke' in style + ? style.stroke + : (!bgColorDrawn + && (!defaultStyle.autoStroke || useDefaultFill)) + ? (defaultLineWidth = DEFAULT_STROKE_LINE_WIDTH, defaultStyle.stroke) + : null); + var hasShadow = style.textShadowBlur > 0; + var fixedBoundingRect = style.width != null + && (style.overflow === 'truncate' || style.overflow === 'break' || style.overflow === 'breakAll'); + var calculatedLineHeight = contentBlock.calculatedLineHeight; + for (var i = 0; i < textLines.length; i++) { + var el = this._getOrCreateChild(TSpan); + var subElStyle = el.createStyle(); + el.useStyle(subElStyle); + subElStyle.text = textLines[i]; + subElStyle.x = textX; + subElStyle.y = textY; + if (textAlign) { + subElStyle.textAlign = textAlign; + } + subElStyle.textBaseline = 'middle'; + subElStyle.opacity = style.opacity; + subElStyle.strokeFirst = true; + if (hasShadow) { + subElStyle.shadowBlur = style.textShadowBlur || 0; + subElStyle.shadowColor = style.textShadowColor || 'transparent'; + subElStyle.shadowOffsetX = style.textShadowOffsetX || 0; + subElStyle.shadowOffsetY = style.textShadowOffsetY || 0; + } + subElStyle.stroke = textStroke; + subElStyle.fill = textFill; + if (textStroke) { + subElStyle.lineWidth = style.lineWidth || defaultLineWidth; + subElStyle.lineDash = style.lineDash; + subElStyle.lineDashOffset = style.lineDashOffset || 0; + } + subElStyle.font = textFont; + setSeparateFont(subElStyle, style); + textY += lineHeight; + if (fixedBoundingRect) { + el.setBoundingRect(new BoundingRect(adjustTextX(subElStyle.x, style.width, subElStyle.textAlign), adjustTextY$1(subElStyle.y, calculatedLineHeight, subElStyle.textBaseline), contentWidth, calculatedLineHeight)); + } + } + }; + ZRText.prototype._updateRichTexts = function () { + var style = this.style; + var text = getStyleText(style); + var contentBlock = parseRichText(text, style); + var contentWidth = contentBlock.width; + var outerWidth = contentBlock.outerWidth; + var outerHeight = contentBlock.outerHeight; + var textPadding = style.padding; + var baseX = style.x || 0; + var baseY = style.y || 0; + var defaultStyle = this._defaultStyle; + var textAlign = style.align || defaultStyle.align; + var verticalAlign = style.verticalAlign || defaultStyle.verticalAlign; + var boxX = adjustTextX(baseX, outerWidth, textAlign); + var boxY = adjustTextY$1(baseY, outerHeight, verticalAlign); + var xLeft = boxX; + var lineTop = boxY; + if (textPadding) { + xLeft += textPadding[3]; + lineTop += textPadding[0]; + } + var xRight = xLeft + contentWidth; + if (needDrawBackground(style)) { + this._renderBackground(style, style, boxX, boxY, outerWidth, outerHeight); + } + var bgColorDrawn = !!(style.backgroundColor); + for (var i = 0; i < contentBlock.lines.length; i++) { + var line = contentBlock.lines[i]; + var tokens = line.tokens; + var tokenCount = tokens.length; + var lineHeight = line.lineHeight; + var remainedWidth = line.width; + var leftIndex = 0; + var lineXLeft = xLeft; + var lineXRight = xRight; + var rightIndex = tokenCount - 1; + var token = void 0; + while (leftIndex < tokenCount + && (token = tokens[leftIndex], !token.align || token.align === 'left')) { + this._placeToken(token, style, lineHeight, lineTop, lineXLeft, 'left', bgColorDrawn); + remainedWidth -= token.width; + lineXLeft += token.width; + leftIndex++; + } + while (rightIndex >= 0 + && (token = tokens[rightIndex], token.align === 'right')) { + this._placeToken(token, style, lineHeight, lineTop, lineXRight, 'right', bgColorDrawn); + remainedWidth -= token.width; + lineXRight -= token.width; + rightIndex--; + } + lineXLeft += (contentWidth - (lineXLeft - xLeft) - (xRight - lineXRight) - remainedWidth) / 2; + while (leftIndex <= rightIndex) { + token = tokens[leftIndex]; + this._placeToken(token, style, lineHeight, lineTop, lineXLeft + token.width / 2, 'center', bgColorDrawn); + lineXLeft += token.width; + leftIndex++; + } + lineTop += lineHeight; + } + }; + ZRText.prototype._placeToken = function (token, style, lineHeight, lineTop, x, textAlign, parentBgColorDrawn) { + var tokenStyle = style.rich[token.styleName] || {}; + tokenStyle.text = token.text; + var verticalAlign = token.verticalAlign; + var y = lineTop + lineHeight / 2; + if (verticalAlign === 'top') { + y = lineTop + token.height / 2; + } + else if (verticalAlign === 'bottom') { + y = lineTop + lineHeight - token.height / 2; + } + var needDrawBg = !token.isLineHolder && needDrawBackground(tokenStyle); + needDrawBg && this._renderBackground(tokenStyle, style, textAlign === 'right' + ? x - token.width + : textAlign === 'center' + ? x - token.width / 2 + : x, y - token.height / 2, token.width, token.height); + var bgColorDrawn = !!tokenStyle.backgroundColor; + var textPadding = token.textPadding; + if (textPadding) { + x = getTextXForPadding(x, textAlign, textPadding); + y -= token.height / 2 - textPadding[0] - token.innerHeight / 2; + } + var el = this._getOrCreateChild(TSpan); + var subElStyle = el.createStyle(); + el.useStyle(subElStyle); + var defaultStyle = this._defaultStyle; + var useDefaultFill = false; + var defaultLineWidth = 0; + var textFill = getFill('fill' in tokenStyle ? tokenStyle.fill + : 'fill' in style ? style.fill + : (useDefaultFill = true, defaultStyle.fill)); + var textStroke = getStroke('stroke' in tokenStyle ? tokenStyle.stroke + : 'stroke' in style ? style.stroke + : (!bgColorDrawn + && !parentBgColorDrawn + && (!defaultStyle.autoStroke || useDefaultFill)) ? (defaultLineWidth = DEFAULT_STROKE_LINE_WIDTH, defaultStyle.stroke) + : null); + var hasShadow = tokenStyle.textShadowBlur > 0 + || style.textShadowBlur > 0; + subElStyle.text = token.text; + subElStyle.x = x; + subElStyle.y = y; + if (hasShadow) { + subElStyle.shadowBlur = tokenStyle.textShadowBlur || style.textShadowBlur || 0; + subElStyle.shadowColor = tokenStyle.textShadowColor || style.textShadowColor || 'transparent'; + subElStyle.shadowOffsetX = tokenStyle.textShadowOffsetX || style.textShadowOffsetX || 0; + subElStyle.shadowOffsetY = tokenStyle.textShadowOffsetY || style.textShadowOffsetY || 0; + } + subElStyle.textAlign = textAlign; + subElStyle.textBaseline = 'middle'; + subElStyle.font = token.font || DEFAULT_FONT; + subElStyle.opacity = retrieve3(tokenStyle.opacity, style.opacity, 1); + setSeparateFont(subElStyle, tokenStyle); + if (textStroke) { + subElStyle.lineWidth = retrieve3(tokenStyle.lineWidth, style.lineWidth, defaultLineWidth); + subElStyle.lineDash = retrieve2(tokenStyle.lineDash, style.lineDash); + subElStyle.lineDashOffset = style.lineDashOffset || 0; + subElStyle.stroke = textStroke; + } + if (textFill) { + subElStyle.fill = textFill; + } + var textWidth = token.contentWidth; + var textHeight = token.contentHeight; + el.setBoundingRect(new BoundingRect(adjustTextX(subElStyle.x, textWidth, subElStyle.textAlign), adjustTextY$1(subElStyle.y, textHeight, subElStyle.textBaseline), textWidth, textHeight)); + }; + ZRText.prototype._renderBackground = function (style, topStyle, x, y, width, height) { + var textBackgroundColor = style.backgroundColor; + var textBorderWidth = style.borderWidth; + var textBorderColor = style.borderColor; + var isImageBg = textBackgroundColor && textBackgroundColor.image; + var isPlainOrGradientBg = textBackgroundColor && !isImageBg; + var textBorderRadius = style.borderRadius; + var self = this; + var rectEl; + var imgEl; + if (isPlainOrGradientBg || style.lineHeight || (textBorderWidth && textBorderColor)) { + rectEl = this._getOrCreateChild(Rect); + rectEl.useStyle(rectEl.createStyle()); + rectEl.style.fill = null; + var rectShape = rectEl.shape; + rectShape.x = x; + rectShape.y = y; + rectShape.width = width; + rectShape.height = height; + rectShape.r = textBorderRadius; + rectEl.dirtyShape(); + } + if (isPlainOrGradientBg) { + var rectStyle = rectEl.style; + rectStyle.fill = textBackgroundColor || null; + rectStyle.fillOpacity = retrieve2(style.fillOpacity, 1); + } + else if (isImageBg) { + imgEl = this._getOrCreateChild(ZRImage); + imgEl.onload = function () { + self.dirtyStyle(); + }; + var imgStyle = imgEl.style; + imgStyle.image = textBackgroundColor.image; + imgStyle.x = x; + imgStyle.y = y; + imgStyle.width = width; + imgStyle.height = height; + } + if (textBorderWidth && textBorderColor) { + var rectStyle = rectEl.style; + rectStyle.lineWidth = textBorderWidth; + rectStyle.stroke = textBorderColor; + rectStyle.strokeOpacity = retrieve2(style.strokeOpacity, 1); + rectStyle.lineDash = style.borderDash; + rectStyle.lineDashOffset = style.borderDashOffset || 0; + rectEl.strokeContainThreshold = 0; + if (rectEl.hasFill() && rectEl.hasStroke()) { + rectStyle.strokeFirst = true; + rectStyle.lineWidth *= 2; + } + } + var commonStyle = (rectEl || imgEl).style; + commonStyle.shadowBlur = style.shadowBlur || 0; + commonStyle.shadowColor = style.shadowColor || 'transparent'; + commonStyle.shadowOffsetX = style.shadowOffsetX || 0; + commonStyle.shadowOffsetY = style.shadowOffsetY || 0; + commonStyle.opacity = retrieve3(style.opacity, topStyle.opacity, 1); + }; + ZRText.makeFont = function (style) { + var font = ''; + if (hasSeparateFont(style)) { + font = [ + style.fontStyle, + style.fontWeight, + parseFontSize(style.fontSize), + style.fontFamily || 'sans-serif' + ].join(' '); + } + return font && trim(font) || style.textFont || style.font; + }; + return ZRText; + }(Displayable)); + var VALID_TEXT_ALIGN = { left: true, right: 1, center: 1 }; + var VALID_TEXT_VERTICAL_ALIGN = { top: 1, bottom: 1, middle: 1 }; + var FONT_PARTS = ['fontStyle', 'fontWeight', 'fontSize', 'fontFamily']; + function parseFontSize(fontSize) { + if (typeof fontSize === 'string' + && (fontSize.indexOf('px') !== -1 + || fontSize.indexOf('rem') !== -1 + || fontSize.indexOf('em') !== -1)) { + return fontSize; + } + else if (!isNaN(+fontSize)) { + return fontSize + 'px'; + } + else { + return DEFAULT_FONT_SIZE + 'px'; + } + } + function setSeparateFont(targetStyle, sourceStyle) { + for (var i = 0; i < FONT_PARTS.length; i++) { + var fontProp = FONT_PARTS[i]; + var val = sourceStyle[fontProp]; + if (val != null) { + targetStyle[fontProp] = val; + } + } + } + function hasSeparateFont(style) { + return style.fontSize != null || style.fontFamily || style.fontWeight; + } + function normalizeTextStyle(style) { + normalizeStyle(style); + each(style.rich, normalizeStyle); + return style; + } + function normalizeStyle(style) { + if (style) { + style.font = ZRText.makeFont(style); + var textAlign = style.align; + textAlign === 'middle' && (textAlign = 'center'); + style.align = (textAlign == null || VALID_TEXT_ALIGN[textAlign]) ? textAlign : 'left'; + var verticalAlign = style.verticalAlign; + verticalAlign === 'center' && (verticalAlign = 'middle'); + style.verticalAlign = (verticalAlign == null || VALID_TEXT_VERTICAL_ALIGN[verticalAlign]) ? verticalAlign : 'top'; + var textPadding = style.padding; + if (textPadding) { + style.padding = normalizeCssArray(style.padding); + } + } + } + function getStroke(stroke, lineWidth) { + return (stroke == null || lineWidth <= 0 || stroke === 'transparent' || stroke === 'none') + ? null + : (stroke.image || stroke.colorStops) + ? '#000' + : stroke; + } + function getFill(fill) { + return (fill == null || fill === 'none') + ? null + : (fill.image || fill.colorStops) + ? '#000' + : fill; + } + function getTextXForPadding(x, textAlign, textPadding) { + return textAlign === 'right' + ? (x - textPadding[1]) + : textAlign === 'center' + ? (x + textPadding[3] / 2 - textPadding[1] / 2) + : (x + textPadding[3]); + } + function getStyleText(style) { + var text = style.text; + text != null && (text += ''); + return text; + } + function needDrawBackground(style) { + return !!(style.backgroundColor + || style.lineHeight + || (style.borderWidth && style.borderColor)); + } + + var getECData = makeInner(); + var setCommonECData = function (seriesIndex, dataType, dataIdx, el) { + if (el) { + var ecData = getECData(el); + // Add data index and series index for indexing the data by element + // Useful in tooltip + ecData.dataIndex = dataIdx; + ecData.dataType = dataType; + ecData.seriesIndex = seriesIndex; + ecData.ssrType = 'chart'; + // TODO: not store dataIndex on children. + if (el.type === 'group') { + el.traverse(function (child) { + var childECData = getECData(child); + childECData.seriesIndex = seriesIndex; + childECData.dataIndex = dataIdx; + childECData.dataType = dataType; + childECData.ssrType = 'chart'; + }); + } + } + }; + + // Reserve 0 as default. + var _highlightNextDigit = 1; + var _highlightKeyMap = {}; + var getSavedStates = makeInner(); + var getComponentStates = makeInner(); + var HOVER_STATE_NORMAL = 0; + var HOVER_STATE_BLUR = 1; + var HOVER_STATE_EMPHASIS = 2; + var SPECIAL_STATES = ['emphasis', 'blur', 'select']; + var DISPLAY_STATES = ['normal', 'emphasis', 'blur', 'select']; + var Z2_EMPHASIS_LIFT = 10; + var Z2_SELECT_LIFT = 9; + var HIGHLIGHT_ACTION_TYPE = 'highlight'; + var DOWNPLAY_ACTION_TYPE = 'downplay'; + var SELECT_ACTION_TYPE = 'select'; + var UNSELECT_ACTION_TYPE = 'unselect'; + var TOGGLE_SELECT_ACTION_TYPE = 'toggleSelect'; + function hasFillOrStroke(fillOrStroke) { + return fillOrStroke != null && fillOrStroke !== 'none'; + } + function doChangeHoverState(el, stateName, hoverStateEnum) { + if (el.onHoverStateChange && (el.hoverState || 0) !== hoverStateEnum) { + el.onHoverStateChange(stateName); + } + el.hoverState = hoverStateEnum; + } + function singleEnterEmphasis(el) { + // Only mark the flag. + // States will be applied in the echarts.ts in next frame. + doChangeHoverState(el, 'emphasis', HOVER_STATE_EMPHASIS); + } + function singleLeaveEmphasis(el) { + // Only mark the flag. + // States will be applied in the echarts.ts in next frame. + if (el.hoverState === HOVER_STATE_EMPHASIS) { + doChangeHoverState(el, 'normal', HOVER_STATE_NORMAL); + } + } + function singleEnterBlur(el) { + doChangeHoverState(el, 'blur', HOVER_STATE_BLUR); + } + function singleLeaveBlur(el) { + if (el.hoverState === HOVER_STATE_BLUR) { + doChangeHoverState(el, 'normal', HOVER_STATE_NORMAL); + } + } + function singleEnterSelect(el) { + el.selected = true; + } + function singleLeaveSelect(el) { + el.selected = false; + } + function updateElementState(el, updater, commonParam) { + updater(el, commonParam); + } + function traverseUpdateState(el, updater, commonParam) { + updateElementState(el, updater, commonParam); + el.isGroup && el.traverse(function (child) { + updateElementState(child, updater, commonParam); + }); + } + function setStatesFlag(el, stateName) { + switch (stateName) { + case 'emphasis': + el.hoverState = HOVER_STATE_EMPHASIS; + break; + case 'normal': + el.hoverState = HOVER_STATE_NORMAL; + break; + case 'blur': + el.hoverState = HOVER_STATE_BLUR; + break; + case 'select': + el.selected = true; + } + } + function getFromStateStyle(el, props, toStateName, defaultValue) { + var style = el.style; + var fromState = {}; + for (var i = 0; i < props.length; i++) { + var propName = props[i]; + var val = style[propName]; + fromState[propName] = val == null ? defaultValue && defaultValue[propName] : val; + } + for (var i = 0; i < el.animators.length; i++) { + var animator = el.animators[i]; + if (animator.__fromStateTransition + // Don't consider the animation to emphasis state. + && animator.__fromStateTransition.indexOf(toStateName) < 0 && animator.targetName === 'style') { + animator.saveTo(fromState, props); + } + } + return fromState; + } + function createEmphasisDefaultState(el, stateName, targetStates, state) { + var hasSelect = targetStates && indexOf(targetStates, 'select') >= 0; + var cloned = false; + if (el instanceof Path) { + var store = getSavedStates(el); + var fromFill = hasSelect ? store.selectFill || store.normalFill : store.normalFill; + var fromStroke = hasSelect ? store.selectStroke || store.normalStroke : store.normalStroke; + if (hasFillOrStroke(fromFill) || hasFillOrStroke(fromStroke)) { + state = state || {}; + var emphasisStyle = state.style || {}; + // inherit case + if (emphasisStyle.fill === 'inherit') { + cloned = true; + state = extend({}, state); + emphasisStyle = extend({}, emphasisStyle); + emphasisStyle.fill = fromFill; + } + // Apply default color lift + else if (!hasFillOrStroke(emphasisStyle.fill) && hasFillOrStroke(fromFill)) { + cloned = true; + // Not modify the original value. + state = extend({}, state); + emphasisStyle = extend({}, emphasisStyle); + // Already being applied 'emphasis'. DON'T lift color multiple times. + emphasisStyle.fill = liftColor(fromFill); + } + // Not highlight stroke if fill has been highlighted. + else if (!hasFillOrStroke(emphasisStyle.stroke) && hasFillOrStroke(fromStroke)) { + if (!cloned) { + state = extend({}, state); + emphasisStyle = extend({}, emphasisStyle); + } + emphasisStyle.stroke = liftColor(fromStroke); + } + state.style = emphasisStyle; + } + } + if (state) { + // TODO Share with textContent? + if (state.z2 == null) { + if (!cloned) { + state = extend({}, state); + } + var z2EmphasisLift = el.z2EmphasisLift; + state.z2 = el.z2 + (z2EmphasisLift != null ? z2EmphasisLift : Z2_EMPHASIS_LIFT); + } + } + return state; + } + function createSelectDefaultState(el, stateName, state) { + // const hasSelect = indexOf(el.currentStates, stateName) >= 0; + if (state) { + // TODO Share with textContent? + if (state.z2 == null) { + state = extend({}, state); + var z2SelectLift = el.z2SelectLift; + state.z2 = el.z2 + (z2SelectLift != null ? z2SelectLift : Z2_SELECT_LIFT); + } + } + return state; + } + function createBlurDefaultState(el, stateName, state) { + var hasBlur = indexOf(el.currentStates, stateName) >= 0; + var currentOpacity = el.style.opacity; + var fromState = !hasBlur ? getFromStateStyle(el, ['opacity'], stateName, { + opacity: 1 + }) : null; + state = state || {}; + var blurStyle = state.style || {}; + if (blurStyle.opacity == null) { + // clone state + state = extend({}, state); + blurStyle = extend({ + // Already being applied 'emphasis'. DON'T mul opacity multiple times. + opacity: hasBlur ? currentOpacity : fromState.opacity * 0.1 + }, blurStyle); + state.style = blurStyle; + } + return state; + } + function elementStateProxy(stateName, targetStates) { + var state = this.states[stateName]; + if (this.style) { + if (stateName === 'emphasis') { + return createEmphasisDefaultState(this, stateName, targetStates, state); + } else if (stateName === 'blur') { + return createBlurDefaultState(this, stateName, state); + } else if (stateName === 'select') { + return createSelectDefaultState(this, stateName, state); + } + } + return state; + } + /** + * Set hover style (namely "emphasis style") of element. + * @param el Should not be `zrender/graphic/Group`. + * @param focus 'self' | 'selfInSeries' | 'series' + */ + function setDefaultStateProxy(el) { + el.stateProxy = elementStateProxy; + var textContent = el.getTextContent(); + var textGuide = el.getTextGuideLine(); + if (textContent) { + textContent.stateProxy = elementStateProxy; + } + if (textGuide) { + textGuide.stateProxy = elementStateProxy; + } + } + function enterEmphasisWhenMouseOver(el, e) { + !shouldSilent(el, e) + // "emphasis" event highlight has higher priority than mouse highlight. + && !el.__highByOuter && traverseUpdateState(el, singleEnterEmphasis); + } + function leaveEmphasisWhenMouseOut(el, e) { + !shouldSilent(el, e) + // "emphasis" event highlight has higher priority than mouse highlight. + && !el.__highByOuter && traverseUpdateState(el, singleLeaveEmphasis); + } + function enterEmphasis(el, highlightDigit) { + el.__highByOuter |= 1 << (highlightDigit || 0); + traverseUpdateState(el, singleEnterEmphasis); + } + function leaveEmphasis(el, highlightDigit) { + !(el.__highByOuter &= ~(1 << (highlightDigit || 0))) && traverseUpdateState(el, singleLeaveEmphasis); + } + function enterBlur(el) { + traverseUpdateState(el, singleEnterBlur); + } + function leaveBlur(el) { + traverseUpdateState(el, singleLeaveBlur); + } + function enterSelect(el) { + traverseUpdateState(el, singleEnterSelect); + } + function leaveSelect(el) { + traverseUpdateState(el, singleLeaveSelect); + } + function shouldSilent(el, e) { + return el.__highDownSilentOnTouch && e.zrByTouch; + } + function allLeaveBlur(api) { + var model = api.getModel(); + var leaveBlurredSeries = []; + var allComponentViews = []; + model.eachComponent(function (componentType, componentModel) { + var componentStates = getComponentStates(componentModel); + var isSeries = componentType === 'series'; + var view = isSeries ? api.getViewOfSeriesModel(componentModel) : api.getViewOfComponentModel(componentModel); + !isSeries && allComponentViews.push(view); + if (componentStates.isBlured) { + // Leave blur anyway + view.group.traverse(function (child) { + singleLeaveBlur(child); + }); + isSeries && leaveBlurredSeries.push(componentModel); + } + componentStates.isBlured = false; + }); + each(allComponentViews, function (view) { + if (view && view.toggleBlurSeries) { + view.toggleBlurSeries(leaveBlurredSeries, false, model); + } + }); + } + function blurSeries(targetSeriesIndex, focus, blurScope, api) { + var ecModel = api.getModel(); + blurScope = blurScope || 'coordinateSystem'; + function leaveBlurOfIndices(data, dataIndices) { + for (var i = 0; i < dataIndices.length; i++) { + var itemEl = data.getItemGraphicEl(dataIndices[i]); + itemEl && leaveBlur(itemEl); + } + } + if (targetSeriesIndex == null) { + return; + } + if (!focus || focus === 'none') { + return; + } + var targetSeriesModel = ecModel.getSeriesByIndex(targetSeriesIndex); + var targetCoordSys = targetSeriesModel.coordinateSystem; + if (targetCoordSys && targetCoordSys.master) { + targetCoordSys = targetCoordSys.master; + } + var blurredSeries = []; + ecModel.eachSeries(function (seriesModel) { + var sameSeries = targetSeriesModel === seriesModel; + var coordSys = seriesModel.coordinateSystem; + if (coordSys && coordSys.master) { + coordSys = coordSys.master; + } + var sameCoordSys = coordSys && targetCoordSys ? coordSys === targetCoordSys : sameSeries; // If there is no coordinate system. use sameSeries instead. + if (!( + // Not blur other series if blurScope series + blurScope === 'series' && !sameSeries + // Not blur other coordinate system if blurScope is coordinateSystem + || blurScope === 'coordinateSystem' && !sameCoordSys + // Not blur self series if focus is series. + || focus === 'series' && sameSeries + // TODO blurScope: coordinate system + )) { + var view = api.getViewOfSeriesModel(seriesModel); + view.group.traverse(function (child) { + // For the elements that have been triggered by other components, + // and are still required to be highlighted, + // because the current is directly forced to blur the element, + // it will cause the focus self to be unable to highlight, so skip the blur of this element. + if (child.__highByOuter && sameSeries && focus === 'self') { + return; + } + singleEnterBlur(child); + }); + if (isArrayLike(focus)) { + leaveBlurOfIndices(seriesModel.getData(), focus); + } else if (isObject(focus)) { + var dataTypes = keys(focus); + for (var d = 0; d < dataTypes.length; d++) { + leaveBlurOfIndices(seriesModel.getData(dataTypes[d]), focus[dataTypes[d]]); + } + } + blurredSeries.push(seriesModel); + getComponentStates(seriesModel).isBlured = true; + } + }); + ecModel.eachComponent(function (componentType, componentModel) { + if (componentType === 'series') { + return; + } + var view = api.getViewOfComponentModel(componentModel); + if (view && view.toggleBlurSeries) { + view.toggleBlurSeries(blurredSeries, true, ecModel); + } + }); + } + function blurComponent(componentMainType, componentIndex, api) { + if (componentMainType == null || componentIndex == null) { + return; + } + var componentModel = api.getModel().getComponent(componentMainType, componentIndex); + if (!componentModel) { + return; + } + getComponentStates(componentModel).isBlured = true; + var view = api.getViewOfComponentModel(componentModel); + if (!view || !view.focusBlurEnabled) { + return; + } + view.group.traverse(function (child) { + singleEnterBlur(child); + }); + } + function blurSeriesFromHighlightPayload(seriesModel, payload, api) { + var seriesIndex = seriesModel.seriesIndex; + var data = seriesModel.getData(payload.dataType); + if (!data) { + if ("development" !== 'production') { + error("Unknown dataType " + payload.dataType); + } + return; + } + var dataIndex = queryDataIndex(data, payload); + // Pick the first one if there is multiple/none exists. + dataIndex = (isArray(dataIndex) ? dataIndex[0] : dataIndex) || 0; + var el = data.getItemGraphicEl(dataIndex); + if (!el) { + var count = data.count(); + var current = 0; + // If data on dataIndex is NaN. + while (!el && current < count) { + el = data.getItemGraphicEl(current++); + } + } + if (el) { + var ecData = getECData(el); + blurSeries(seriesIndex, ecData.focus, ecData.blurScope, api); + } else { + // If there is no element put on the data. Try getting it from raw option + // TODO Should put it on seriesModel? + var focus_1 = seriesModel.get(['emphasis', 'focus']); + var blurScope = seriesModel.get(['emphasis', 'blurScope']); + if (focus_1 != null) { + blurSeries(seriesIndex, focus_1, blurScope, api); + } + } + } + function findComponentHighDownDispatchers(componentMainType, componentIndex, name, api) { + var ret = { + focusSelf: false, + dispatchers: null + }; + if (componentMainType == null || componentMainType === 'series' || componentIndex == null || name == null) { + return ret; + } + var componentModel = api.getModel().getComponent(componentMainType, componentIndex); + if (!componentModel) { + return ret; + } + var view = api.getViewOfComponentModel(componentModel); + if (!view || !view.findHighDownDispatchers) { + return ret; + } + var dispatchers = view.findHighDownDispatchers(name); + // At presnet, the component (like Geo) only blur inside itself. + // So we do not use `blurScope` in component. + var focusSelf; + for (var i = 0; i < dispatchers.length; i++) { + if ("development" !== 'production' && !isHighDownDispatcher(dispatchers[i])) { + error('param should be highDownDispatcher'); + } + if (getECData(dispatchers[i]).focus === 'self') { + focusSelf = true; + break; + } + } + return { + focusSelf: focusSelf, + dispatchers: dispatchers + }; + } + function handleGlobalMouseOverForHighDown(dispatcher, e, api) { + if ("development" !== 'production' && !isHighDownDispatcher(dispatcher)) { + error('param should be highDownDispatcher'); + } + var ecData = getECData(dispatcher); + var _a = findComponentHighDownDispatchers(ecData.componentMainType, ecData.componentIndex, ecData.componentHighDownName, api), + dispatchers = _a.dispatchers, + focusSelf = _a.focusSelf; + // If `findHighDownDispatchers` is supported on the component, + // highlight/downplay elements with the same name. + if (dispatchers) { + if (focusSelf) { + blurComponent(ecData.componentMainType, ecData.componentIndex, api); + } + each(dispatchers, function (dispatcher) { + return enterEmphasisWhenMouseOver(dispatcher, e); + }); + } else { + // Try blur all in the related series. Then emphasis the hoverred. + // TODO. progressive mode. + blurSeries(ecData.seriesIndex, ecData.focus, ecData.blurScope, api); + if (ecData.focus === 'self') { + blurComponent(ecData.componentMainType, ecData.componentIndex, api); + } + // Other than series, component that not support `findHighDownDispatcher` will + // also use it. But in this case, highlight/downplay are only supported in + // mouse hover but not in dispatchAction. + enterEmphasisWhenMouseOver(dispatcher, e); + } + } + function handleGlobalMouseOutForHighDown(dispatcher, e, api) { + if ("development" !== 'production' && !isHighDownDispatcher(dispatcher)) { + error('param should be highDownDispatcher'); + } + allLeaveBlur(api); + var ecData = getECData(dispatcher); + var dispatchers = findComponentHighDownDispatchers(ecData.componentMainType, ecData.componentIndex, ecData.componentHighDownName, api).dispatchers; + if (dispatchers) { + each(dispatchers, function (dispatcher) { + return leaveEmphasisWhenMouseOut(dispatcher, e); + }); + } else { + leaveEmphasisWhenMouseOut(dispatcher, e); + } + } + function toggleSelectionFromPayload(seriesModel, payload, api) { + if (!isSelectChangePayload(payload)) { + return; + } + var dataType = payload.dataType; + var data = seriesModel.getData(dataType); + var dataIndex = queryDataIndex(data, payload); + if (!isArray(dataIndex)) { + dataIndex = [dataIndex]; + } + seriesModel[payload.type === TOGGLE_SELECT_ACTION_TYPE ? 'toggleSelect' : payload.type === SELECT_ACTION_TYPE ? 'select' : 'unselect'](dataIndex, dataType); + } + function updateSeriesElementSelection(seriesModel) { + var allData = seriesModel.getAllData(); + each(allData, function (_a) { + var data = _a.data, + type = _a.type; + data.eachItemGraphicEl(function (el, idx) { + seriesModel.isSelected(idx, type) ? enterSelect(el) : leaveSelect(el); + }); + }); + } + function getAllSelectedIndices(ecModel) { + var ret = []; + ecModel.eachSeries(function (seriesModel) { + var allData = seriesModel.getAllData(); + each(allData, function (_a) { + var data = _a.data, + type = _a.type; + var dataIndices = seriesModel.getSelectedDataIndices(); + if (dataIndices.length > 0) { + var item = { + dataIndex: dataIndices, + seriesIndex: seriesModel.seriesIndex + }; + if (type != null) { + item.dataType = type; + } + ret.push(item); + } + }); + }); + return ret; + } + /** + * Enable the function that mouseover will trigger the emphasis state. + * + * NOTE: + * This function should be used on the element with dataIndex, seriesIndex. + * + */ + function enableHoverEmphasis(el, focus, blurScope) { + setAsHighDownDispatcher(el, true); + traverseUpdateState(el, setDefaultStateProxy); + enableHoverFocus(el, focus, blurScope); + } + function disableHoverEmphasis(el) { + setAsHighDownDispatcher(el, false); + } + function toggleHoverEmphasis(el, focus, blurScope, isDisabled) { + isDisabled ? disableHoverEmphasis(el) : enableHoverEmphasis(el, focus, blurScope); + } + function enableHoverFocus(el, focus, blurScope) { + var ecData = getECData(el); + if (focus != null) { + // TODO dataIndex may be set after this function. This check is not useful. + // if (ecData.dataIndex == null) { + // if (__DEV__) { + // console.warn('focus can only been set on element with dataIndex'); + // } + // } + // else { + ecData.focus = focus; + ecData.blurScope = blurScope; + // } + } else if (ecData.focus) { + ecData.focus = null; + } + } + var OTHER_STATES = ['emphasis', 'blur', 'select']; + var defaultStyleGetterMap = { + itemStyle: 'getItemStyle', + lineStyle: 'getLineStyle', + areaStyle: 'getAreaStyle' + }; + /** + * Set emphasis/blur/selected states of element. + */ + function setStatesStylesFromModel(el, itemModel, styleType, + // default itemStyle + getter) { + styleType = styleType || 'itemStyle'; + for (var i = 0; i < OTHER_STATES.length; i++) { + var stateName = OTHER_STATES[i]; + var model = itemModel.getModel([stateName, styleType]); + var state = el.ensureState(stateName); + // Let it throw error if getterType is not found. + state.style = getter ? getter(model) : model[defaultStyleGetterMap[styleType]](); + } + } + /** + * + * Set element as highlight / downplay dispatcher. + * It will be checked when element received mouseover event or from highlight action. + * It's in change of all highlight/downplay behavior of it's children. + * + * @param el + * @param el.highDownSilentOnTouch + * In touch device, mouseover event will be trigger on touchstart event + * (see module:zrender/dom/HandlerProxy). By this mechanism, we can + * conveniently use hoverStyle when tap on touch screen without additional + * code for compatibility. + * But if the chart/component has select feature, which usually also use + * hoverStyle, there might be conflict between 'select-highlight' and + * 'hover-highlight' especially when roam is enabled (see geo for example). + * In this case, `highDownSilentOnTouch` should be used to disable + * hover-highlight on touch device. + * @param asDispatcher If `false`, do not set as "highDownDispatcher". + */ + function setAsHighDownDispatcher(el, asDispatcher) { + var disable = asDispatcher === false; + var extendedEl = el; + // Make `highDownSilentOnTouch` and `onStateChange` only work after + // `setAsHighDownDispatcher` called. Avoid it is modified by user unexpectedly. + if (el.highDownSilentOnTouch) { + extendedEl.__highDownSilentOnTouch = el.highDownSilentOnTouch; + } + // Simple optimize, since this method might be + // called for each elements of a group in some cases. + if (!disable || extendedEl.__highDownDispatcher) { + // Emphasis, normal can be triggered manually by API or other components like hover link. + // el[method]('emphasis', onElementEmphasisEvent)[method]('normal', onElementNormalEvent); + // Also keep previous record. + extendedEl.__highByOuter = extendedEl.__highByOuter || 0; + extendedEl.__highDownDispatcher = !disable; + } + } + function isHighDownDispatcher(el) { + return !!(el && el.__highDownDispatcher); + } + /** + * Enable component highlight/downplay features: + * + hover link (within the same name) + * + focus blur in component + */ + function enableComponentHighDownFeatures(el, componentModel, componentHighDownName) { + var ecData = getECData(el); + ecData.componentMainType = componentModel.mainType; + ecData.componentIndex = componentModel.componentIndex; + ecData.componentHighDownName = componentHighDownName; + } + /** + * Support highlight/downplay record on each elements. + * For the case: hover highlight/downplay (legend, visualMap, ...) and + * user triggered highlight/downplay should not conflict. + * Only all of the highlightDigit cleared, return to normal. + * @param {string} highlightKey + * @return {number} highlightDigit + */ + function getHighlightDigit(highlightKey) { + var highlightDigit = _highlightKeyMap[highlightKey]; + if (highlightDigit == null && _highlightNextDigit <= 32) { + highlightDigit = _highlightKeyMap[highlightKey] = _highlightNextDigit++; + } + return highlightDigit; + } + function isSelectChangePayload(payload) { + var payloadType = payload.type; + return payloadType === SELECT_ACTION_TYPE || payloadType === UNSELECT_ACTION_TYPE || payloadType === TOGGLE_SELECT_ACTION_TYPE; + } + function isHighDownPayload(payload) { + var payloadType = payload.type; + return payloadType === HIGHLIGHT_ACTION_TYPE || payloadType === DOWNPLAY_ACTION_TYPE; + } + function savePathStates(el) { + var store = getSavedStates(el); + store.normalFill = el.style.fill; + store.normalStroke = el.style.stroke; + var selectState = el.states.select || {}; + store.selectFill = selectState.style && selectState.style.fill || null; + store.selectStroke = selectState.style && selectState.style.stroke || null; + } + + var CMD$2 = PathProxy.CMD; + var points = [[], [], []]; + var mathSqrt$1 = Math.sqrt; + var mathAtan2 = Math.atan2; + function transformPath(path, m) { + if (!m) { + return; + } + var data = path.data; + var len = path.len(); + var cmd; + var nPoint; + var i; + var j; + var k; + var p; + var M = CMD$2.M; + var C = CMD$2.C; + var L = CMD$2.L; + var R = CMD$2.R; + var A = CMD$2.A; + var Q = CMD$2.Q; + for (i = 0, j = 0; i < len;) { + cmd = data[i++]; + j = i; + nPoint = 0; + switch (cmd) { + case M: + nPoint = 1; + break; + case L: + nPoint = 1; + break; + case C: + nPoint = 3; + break; + case Q: + nPoint = 2; + break; + case A: + var x = m[4]; + var y = m[5]; + var sx = mathSqrt$1(m[0] * m[0] + m[1] * m[1]); + var sy = mathSqrt$1(m[2] * m[2] + m[3] * m[3]); + var angle = mathAtan2(-m[1] / sy, m[0] / sx); + data[i] *= sx; + data[i++] += x; + data[i] *= sy; + data[i++] += y; + data[i++] *= sx; + data[i++] *= sy; + data[i++] += angle; + data[i++] += angle; + i += 2; + j = i; + break; + case R: + p[0] = data[i++]; + p[1] = data[i++]; + applyTransform(p, p, m); + data[j++] = p[0]; + data[j++] = p[1]; + p[0] += data[i++]; + p[1] += data[i++]; + applyTransform(p, p, m); + data[j++] = p[0]; + data[j++] = p[1]; + } + for (k = 0; k < nPoint; k++) { + var p_1 = points[k]; + p_1[0] = data[i++]; + p_1[1] = data[i++]; + applyTransform(p_1, p_1, m); + data[j++] = p_1[0]; + data[j++] = p_1[1]; + } + } + path.increaseVersion(); + } + + var mathSqrt$2 = Math.sqrt; + var mathSin$2 = Math.sin; + var mathCos$2 = Math.cos; + var PI$1 = Math.PI; + function vMag(v) { + return Math.sqrt(v[0] * v[0] + v[1] * v[1]); + } + function vRatio(u, v) { + return (u[0] * v[0] + u[1] * v[1]) / (vMag(u) * vMag(v)); + } + function vAngle(u, v) { + return (u[0] * v[1] < u[1] * v[0] ? -1 : 1) + * Math.acos(vRatio(u, v)); + } + function processArc(x1, y1, x2, y2, fa, fs, rx, ry, psiDeg, cmd, path) { + var psi = psiDeg * (PI$1 / 180.0); + var xp = mathCos$2(psi) * (x1 - x2) / 2.0 + + mathSin$2(psi) * (y1 - y2) / 2.0; + var yp = -1 * mathSin$2(psi) * (x1 - x2) / 2.0 + + mathCos$2(psi) * (y1 - y2) / 2.0; + var lambda = (xp * xp) / (rx * rx) + (yp * yp) / (ry * ry); + if (lambda > 1) { + rx *= mathSqrt$2(lambda); + ry *= mathSqrt$2(lambda); + } + var f = (fa === fs ? -1 : 1) + * mathSqrt$2((((rx * rx) * (ry * ry)) + - ((rx * rx) * (yp * yp)) + - ((ry * ry) * (xp * xp))) / ((rx * rx) * (yp * yp) + + (ry * ry) * (xp * xp))) || 0; + var cxp = f * rx * yp / ry; + var cyp = f * -ry * xp / rx; + var cx = (x1 + x2) / 2.0 + + mathCos$2(psi) * cxp + - mathSin$2(psi) * cyp; + var cy = (y1 + y2) / 2.0 + + mathSin$2(psi) * cxp + + mathCos$2(psi) * cyp; + var theta = vAngle([1, 0], [(xp - cxp) / rx, (yp - cyp) / ry]); + var u = [(xp - cxp) / rx, (yp - cyp) / ry]; + var v = [(-1 * xp - cxp) / rx, (-1 * yp - cyp) / ry]; + var dTheta = vAngle(u, v); + if (vRatio(u, v) <= -1) { + dTheta = PI$1; + } + if (vRatio(u, v) >= 1) { + dTheta = 0; + } + if (dTheta < 0) { + var n = Math.round(dTheta / PI$1 * 1e6) / 1e6; + dTheta = PI$1 * 2 + (n % 2) * PI$1; + } + path.addData(cmd, cx, cy, rx, ry, theta, dTheta, psi, fs); + } + var commandReg = /([mlvhzcqtsa])([^mlvhzcqtsa]*)/ig; + var numberReg = /-?([0-9]*\.)?[0-9]+([eE]-?[0-9]+)?/g; + function createPathProxyFromString(data) { + var path = new PathProxy(); + if (!data) { + return path; + } + var cpx = 0; + var cpy = 0; + var subpathX = cpx; + var subpathY = cpy; + var prevCmd; + var CMD = PathProxy.CMD; + var cmdList = data.match(commandReg); + if (!cmdList) { + return path; + } + for (var l = 0; l < cmdList.length; l++) { + var cmdText = cmdList[l]; + var cmdStr = cmdText.charAt(0); + var cmd = void 0; + var p = cmdText.match(numberReg) || []; + var pLen = p.length; + for (var i = 0; i < pLen; i++) { + p[i] = parseFloat(p[i]); + } + var off = 0; + while (off < pLen) { + var ctlPtx = void 0; + var ctlPty = void 0; + var rx = void 0; + var ry = void 0; + var psi = void 0; + var fa = void 0; + var fs = void 0; + var x1 = cpx; + var y1 = cpy; + var len = void 0; + var pathData = void 0; + switch (cmdStr) { + case 'l': + cpx += p[off++]; + cpy += p[off++]; + cmd = CMD.L; + path.addData(cmd, cpx, cpy); + break; + case 'L': + cpx = p[off++]; + cpy = p[off++]; + cmd = CMD.L; + path.addData(cmd, cpx, cpy); + break; + case 'm': + cpx += p[off++]; + cpy += p[off++]; + cmd = CMD.M; + path.addData(cmd, cpx, cpy); + subpathX = cpx; + subpathY = cpy; + cmdStr = 'l'; + break; + case 'M': + cpx = p[off++]; + cpy = p[off++]; + cmd = CMD.M; + path.addData(cmd, cpx, cpy); + subpathX = cpx; + subpathY = cpy; + cmdStr = 'L'; + break; + case 'h': + cpx += p[off++]; + cmd = CMD.L; + path.addData(cmd, cpx, cpy); + break; + case 'H': + cpx = p[off++]; + cmd = CMD.L; + path.addData(cmd, cpx, cpy); + break; + case 'v': + cpy += p[off++]; + cmd = CMD.L; + path.addData(cmd, cpx, cpy); + break; + case 'V': + cpy = p[off++]; + cmd = CMD.L; + path.addData(cmd, cpx, cpy); + break; + case 'C': + cmd = CMD.C; + path.addData(cmd, p[off++], p[off++], p[off++], p[off++], p[off++], p[off++]); + cpx = p[off - 2]; + cpy = p[off - 1]; + break; + case 'c': + cmd = CMD.C; + path.addData(cmd, p[off++] + cpx, p[off++] + cpy, p[off++] + cpx, p[off++] + cpy, p[off++] + cpx, p[off++] + cpy); + cpx += p[off - 2]; + cpy += p[off - 1]; + break; + case 'S': + ctlPtx = cpx; + ctlPty = cpy; + len = path.len(); + pathData = path.data; + if (prevCmd === CMD.C) { + ctlPtx += cpx - pathData[len - 4]; + ctlPty += cpy - pathData[len - 3]; + } + cmd = CMD.C; + x1 = p[off++]; + y1 = p[off++]; + cpx = p[off++]; + cpy = p[off++]; + path.addData(cmd, ctlPtx, ctlPty, x1, y1, cpx, cpy); + break; + case 's': + ctlPtx = cpx; + ctlPty = cpy; + len = path.len(); + pathData = path.data; + if (prevCmd === CMD.C) { + ctlPtx += cpx - pathData[len - 4]; + ctlPty += cpy - pathData[len - 3]; + } + cmd = CMD.C; + x1 = cpx + p[off++]; + y1 = cpy + p[off++]; + cpx += p[off++]; + cpy += p[off++]; + path.addData(cmd, ctlPtx, ctlPty, x1, y1, cpx, cpy); + break; + case 'Q': + x1 = p[off++]; + y1 = p[off++]; + cpx = p[off++]; + cpy = p[off++]; + cmd = CMD.Q; + path.addData(cmd, x1, y1, cpx, cpy); + break; + case 'q': + x1 = p[off++] + cpx; + y1 = p[off++] + cpy; + cpx += p[off++]; + cpy += p[off++]; + cmd = CMD.Q; + path.addData(cmd, x1, y1, cpx, cpy); + break; + case 'T': + ctlPtx = cpx; + ctlPty = cpy; + len = path.len(); + pathData = path.data; + if (prevCmd === CMD.Q) { + ctlPtx += cpx - pathData[len - 4]; + ctlPty += cpy - pathData[len - 3]; + } + cpx = p[off++]; + cpy = p[off++]; + cmd = CMD.Q; + path.addData(cmd, ctlPtx, ctlPty, cpx, cpy); + break; + case 't': + ctlPtx = cpx; + ctlPty = cpy; + len = path.len(); + pathData = path.data; + if (prevCmd === CMD.Q) { + ctlPtx += cpx - pathData[len - 4]; + ctlPty += cpy - pathData[len - 3]; + } + cpx += p[off++]; + cpy += p[off++]; + cmd = CMD.Q; + path.addData(cmd, ctlPtx, ctlPty, cpx, cpy); + break; + case 'A': + rx = p[off++]; + ry = p[off++]; + psi = p[off++]; + fa = p[off++]; + fs = p[off++]; + x1 = cpx, y1 = cpy; + cpx = p[off++]; + cpy = p[off++]; + cmd = CMD.A; + processArc(x1, y1, cpx, cpy, fa, fs, rx, ry, psi, cmd, path); + break; + case 'a': + rx = p[off++]; + ry = p[off++]; + psi = p[off++]; + fa = p[off++]; + fs = p[off++]; + x1 = cpx, y1 = cpy; + cpx += p[off++]; + cpy += p[off++]; + cmd = CMD.A; + processArc(x1, y1, cpx, cpy, fa, fs, rx, ry, psi, cmd, path); + break; + } + } + if (cmdStr === 'z' || cmdStr === 'Z') { + cmd = CMD.Z; + path.addData(cmd); + cpx = subpathX; + cpy = subpathY; + } + prevCmd = cmd; + } + path.toStatic(); + return path; + } + var SVGPath = (function (_super) { + __extends(SVGPath, _super); + function SVGPath() { + return _super !== null && _super.apply(this, arguments) || this; + } + SVGPath.prototype.applyTransform = function (m) { }; + return SVGPath; + }(Path)); + function isPathProxy(path) { + return path.setData != null; + } + function createPathOptions(str, opts) { + var pathProxy = createPathProxyFromString(str); + var innerOpts = extend({}, opts); + innerOpts.buildPath = function (path) { + if (isPathProxy(path)) { + path.setData(pathProxy.data); + var ctx = path.getContext(); + if (ctx) { + path.rebuildPath(ctx, 1); + } + } + else { + var ctx = path; + pathProxy.rebuildPath(ctx, 1); + } + }; + innerOpts.applyTransform = function (m) { + transformPath(pathProxy, m); + this.dirtyShape(); + }; + return innerOpts; + } + function createFromString(str, opts) { + return new SVGPath(createPathOptions(str, opts)); + } + function extendFromString(str, defaultOpts) { + var innerOpts = createPathOptions(str, defaultOpts); + var Sub = (function (_super) { + __extends(Sub, _super); + function Sub(opts) { + var _this = _super.call(this, opts) || this; + _this.applyTransform = innerOpts.applyTransform; + _this.buildPath = innerOpts.buildPath; + return _this; + } + return Sub; + }(SVGPath)); + return Sub; + } + function mergePath(pathEls, opts) { + var pathList = []; + var len = pathEls.length; + for (var i = 0; i < len; i++) { + var pathEl = pathEls[i]; + pathList.push(pathEl.getUpdatedPathProxy(true)); + } + var pathBundle = new Path(opts); + pathBundle.createPathProxy(); + pathBundle.buildPath = function (path) { + if (isPathProxy(path)) { + path.appendPath(pathList); + var ctx = path.getContext(); + if (ctx) { + path.rebuildPath(ctx, 1); + } + } + }; + return pathBundle; + } + function clonePath(sourcePath, opts) { + opts = opts || {}; + var path = new Path(); + if (sourcePath.shape) { + path.setShape(sourcePath.shape); + } + path.setStyle(sourcePath.style); + if (opts.bakeTransform) { + transformPath(path.path, sourcePath.getComputedTransform()); + } + else { + if (opts.toLocal) { + path.setLocalTransform(sourcePath.getComputedTransform()); + } + else { + path.copyTransform(sourcePath); + } + } + path.buildPath = sourcePath.buildPath; + path.applyTransform = path.applyTransform; + path.z = sourcePath.z; + path.z2 = sourcePath.z2; + path.zlevel = sourcePath.zlevel; + return path; + } + + var CircleShape = (function () { + function CircleShape() { + this.cx = 0; + this.cy = 0; + this.r = 0; + } + return CircleShape; + }()); + var Circle = (function (_super) { + __extends(Circle, _super); + function Circle(opts) { + return _super.call(this, opts) || this; + } + Circle.prototype.getDefaultShape = function () { + return new CircleShape(); + }; + Circle.prototype.buildPath = function (ctx, shape) { + ctx.moveTo(shape.cx + shape.r, shape.cy); + ctx.arc(shape.cx, shape.cy, shape.r, 0, Math.PI * 2); + }; + return Circle; + }(Path)); + Circle.prototype.type = 'circle'; + + var EllipseShape = (function () { + function EllipseShape() { + this.cx = 0; + this.cy = 0; + this.rx = 0; + this.ry = 0; + } + return EllipseShape; + }()); + var Ellipse = (function (_super) { + __extends(Ellipse, _super); + function Ellipse(opts) { + return _super.call(this, opts) || this; + } + Ellipse.prototype.getDefaultShape = function () { + return new EllipseShape(); + }; + Ellipse.prototype.buildPath = function (ctx, shape) { + var k = 0.5522848; + var x = shape.cx; + var y = shape.cy; + var a = shape.rx; + var b = shape.ry; + var ox = a * k; + var oy = b * k; + ctx.moveTo(x - a, y); + ctx.bezierCurveTo(x - a, y - oy, x - ox, y - b, x, y - b); + ctx.bezierCurveTo(x + ox, y - b, x + a, y - oy, x + a, y); + ctx.bezierCurveTo(x + a, y + oy, x + ox, y + b, x, y + b); + ctx.bezierCurveTo(x - ox, y + b, x - a, y + oy, x - a, y); + ctx.closePath(); + }; + return Ellipse; + }(Path)); + Ellipse.prototype.type = 'ellipse'; + + var PI$2 = Math.PI; + var PI2$5 = PI$2 * 2; + var mathSin$3 = Math.sin; + var mathCos$3 = Math.cos; + var mathACos = Math.acos; + var mathATan2 = Math.atan2; + var mathAbs$1 = Math.abs; + var mathSqrt$3 = Math.sqrt; + var mathMax$3 = Math.max; + var mathMin$3 = Math.min; + var e = 1e-4; + function intersect(x0, y0, x1, y1, x2, y2, x3, y3) { + var dx10 = x1 - x0; + var dy10 = y1 - y0; + var dx32 = x3 - x2; + var dy32 = y3 - y2; + var t = dy32 * dx10 - dx32 * dy10; + if (t * t < e) { + return; + } + t = (dx32 * (y0 - y2) - dy32 * (x0 - x2)) / t; + return [x0 + t * dx10, y0 + t * dy10]; + } + function computeCornerTangents(x0, y0, x1, y1, radius, cr, clockwise) { + var x01 = x0 - x1; + var y01 = y0 - y1; + var lo = (clockwise ? cr : -cr) / mathSqrt$3(x01 * x01 + y01 * y01); + var ox = lo * y01; + var oy = -lo * x01; + var x11 = x0 + ox; + var y11 = y0 + oy; + var x10 = x1 + ox; + var y10 = y1 + oy; + var x00 = (x11 + x10) / 2; + var y00 = (y11 + y10) / 2; + var dx = x10 - x11; + var dy = y10 - y11; + var d2 = dx * dx + dy * dy; + var r = radius - cr; + var s = x11 * y10 - x10 * y11; + var d = (dy < 0 ? -1 : 1) * mathSqrt$3(mathMax$3(0, r * r * d2 - s * s)); + var cx0 = (s * dy - dx * d) / d2; + var cy0 = (-s * dx - dy * d) / d2; + var cx1 = (s * dy + dx * d) / d2; + var cy1 = (-s * dx + dy * d) / d2; + var dx0 = cx0 - x00; + var dy0 = cy0 - y00; + var dx1 = cx1 - x00; + var dy1 = cy1 - y00; + if (dx0 * dx0 + dy0 * dy0 > dx1 * dx1 + dy1 * dy1) { + cx0 = cx1; + cy0 = cy1; + } + return { + cx: cx0, + cy: cy0, + x0: -ox, + y0: -oy, + x1: cx0 * (radius / r - 1), + y1: cy0 * (radius / r - 1) + }; + } + function normalizeCornerRadius(cr) { + var arr; + if (isArray(cr)) { + var len = cr.length; + if (!len) { + return cr; + } + if (len === 1) { + arr = [cr[0], cr[0], 0, 0]; + } + else if (len === 2) { + arr = [cr[0], cr[0], cr[1], cr[1]]; + } + else if (len === 3) { + arr = cr.concat(cr[2]); + } + else { + arr = cr; + } + } + else { + arr = [cr, cr, cr, cr]; + } + return arr; + } + function buildPath$1(ctx, shape) { + var _a; + var radius = mathMax$3(shape.r, 0); + var innerRadius = mathMax$3(shape.r0 || 0, 0); + var hasRadius = radius > 0; + var hasInnerRadius = innerRadius > 0; + if (!hasRadius && !hasInnerRadius) { + return; + } + if (!hasRadius) { + radius = innerRadius; + innerRadius = 0; + } + if (innerRadius > radius) { + var tmp = radius; + radius = innerRadius; + innerRadius = tmp; + } + var startAngle = shape.startAngle, endAngle = shape.endAngle; + if (isNaN(startAngle) || isNaN(endAngle)) { + return; + } + var cx = shape.cx, cy = shape.cy; + var clockwise = !!shape.clockwise; + var arc = mathAbs$1(endAngle - startAngle); + var mod = arc > PI2$5 && arc % PI2$5; + mod > e && (arc = mod); + if (!(radius > e)) { + ctx.moveTo(cx, cy); + } + else if (arc > PI2$5 - e) { + ctx.moveTo(cx + radius * mathCos$3(startAngle), cy + radius * mathSin$3(startAngle)); + ctx.arc(cx, cy, radius, startAngle, endAngle, !clockwise); + if (innerRadius > e) { + ctx.moveTo(cx + innerRadius * mathCos$3(endAngle), cy + innerRadius * mathSin$3(endAngle)); + ctx.arc(cx, cy, innerRadius, endAngle, startAngle, clockwise); + } + } + else { + var icrStart = void 0; + var icrEnd = void 0; + var ocrStart = void 0; + var ocrEnd = void 0; + var ocrs = void 0; + var ocre = void 0; + var icrs = void 0; + var icre = void 0; + var ocrMax = void 0; + var icrMax = void 0; + var limitedOcrMax = void 0; + var limitedIcrMax = void 0; + var xre = void 0; + var yre = void 0; + var xirs = void 0; + var yirs = void 0; + var xrs = radius * mathCos$3(startAngle); + var yrs = radius * mathSin$3(startAngle); + var xire = innerRadius * mathCos$3(endAngle); + var yire = innerRadius * mathSin$3(endAngle); + var hasArc = arc > e; + if (hasArc) { + var cornerRadius = shape.cornerRadius; + if (cornerRadius) { + _a = normalizeCornerRadius(cornerRadius), icrStart = _a[0], icrEnd = _a[1], ocrStart = _a[2], ocrEnd = _a[3]; + } + var halfRd = mathAbs$1(radius - innerRadius) / 2; + ocrs = mathMin$3(halfRd, ocrStart); + ocre = mathMin$3(halfRd, ocrEnd); + icrs = mathMin$3(halfRd, icrStart); + icre = mathMin$3(halfRd, icrEnd); + limitedOcrMax = ocrMax = mathMax$3(ocrs, ocre); + limitedIcrMax = icrMax = mathMax$3(icrs, icre); + if (ocrMax > e || icrMax > e) { + xre = radius * mathCos$3(endAngle); + yre = radius * mathSin$3(endAngle); + xirs = innerRadius * mathCos$3(startAngle); + yirs = innerRadius * mathSin$3(startAngle); + if (arc < PI$2) { + var it_1 = intersect(xrs, yrs, xirs, yirs, xre, yre, xire, yire); + if (it_1) { + var x0 = xrs - it_1[0]; + var y0 = yrs - it_1[1]; + var x1 = xre - it_1[0]; + var y1 = yre - it_1[1]; + var a = 1 / mathSin$3(mathACos((x0 * x1 + y0 * y1) / (mathSqrt$3(x0 * x0 + y0 * y0) * mathSqrt$3(x1 * x1 + y1 * y1))) / 2); + var b = mathSqrt$3(it_1[0] * it_1[0] + it_1[1] * it_1[1]); + limitedOcrMax = mathMin$3(ocrMax, (radius - b) / (a + 1)); + limitedIcrMax = mathMin$3(icrMax, (innerRadius - b) / (a - 1)); + } + } + } + } + if (!hasArc) { + ctx.moveTo(cx + xrs, cy + yrs); + } + else if (limitedOcrMax > e) { + var crStart = mathMin$3(ocrStart, limitedOcrMax); + var crEnd = mathMin$3(ocrEnd, limitedOcrMax); + var ct0 = computeCornerTangents(xirs, yirs, xrs, yrs, radius, crStart, clockwise); + var ct1 = computeCornerTangents(xre, yre, xire, yire, radius, crEnd, clockwise); + ctx.moveTo(cx + ct0.cx + ct0.x0, cy + ct0.cy + ct0.y0); + if (limitedOcrMax < ocrMax && crStart === crEnd) { + ctx.arc(cx + ct0.cx, cy + ct0.cy, limitedOcrMax, mathATan2(ct0.y0, ct0.x0), mathATan2(ct1.y0, ct1.x0), !clockwise); + } + else { + crStart > 0 && ctx.arc(cx + ct0.cx, cy + ct0.cy, crStart, mathATan2(ct0.y0, ct0.x0), mathATan2(ct0.y1, ct0.x1), !clockwise); + ctx.arc(cx, cy, radius, mathATan2(ct0.cy + ct0.y1, ct0.cx + ct0.x1), mathATan2(ct1.cy + ct1.y1, ct1.cx + ct1.x1), !clockwise); + crEnd > 0 && ctx.arc(cx + ct1.cx, cy + ct1.cy, crEnd, mathATan2(ct1.y1, ct1.x1), mathATan2(ct1.y0, ct1.x0), !clockwise); + } + } + else { + ctx.moveTo(cx + xrs, cy + yrs); + ctx.arc(cx, cy, radius, startAngle, endAngle, !clockwise); + } + if (!(innerRadius > e) || !hasArc) { + ctx.lineTo(cx + xire, cy + yire); + } + else if (limitedIcrMax > e) { + var crStart = mathMin$3(icrStart, limitedIcrMax); + var crEnd = mathMin$3(icrEnd, limitedIcrMax); + var ct0 = computeCornerTangents(xire, yire, xre, yre, innerRadius, -crEnd, clockwise); + var ct1 = computeCornerTangents(xrs, yrs, xirs, yirs, innerRadius, -crStart, clockwise); + ctx.lineTo(cx + ct0.cx + ct0.x0, cy + ct0.cy + ct0.y0); + if (limitedIcrMax < icrMax && crStart === crEnd) { + ctx.arc(cx + ct0.cx, cy + ct0.cy, limitedIcrMax, mathATan2(ct0.y0, ct0.x0), mathATan2(ct1.y0, ct1.x0), !clockwise); + } + else { + crEnd > 0 && ctx.arc(cx + ct0.cx, cy + ct0.cy, crEnd, mathATan2(ct0.y0, ct0.x0), mathATan2(ct0.y1, ct0.x1), !clockwise); + ctx.arc(cx, cy, innerRadius, mathATan2(ct0.cy + ct0.y1, ct0.cx + ct0.x1), mathATan2(ct1.cy + ct1.y1, ct1.cx + ct1.x1), clockwise); + crStart > 0 && ctx.arc(cx + ct1.cx, cy + ct1.cy, crStart, mathATan2(ct1.y1, ct1.x1), mathATan2(ct1.y0, ct1.x0), !clockwise); + } + } + else { + ctx.lineTo(cx + xire, cy + yire); + ctx.arc(cx, cy, innerRadius, endAngle, startAngle, clockwise); + } + } + ctx.closePath(); + } + + var SectorShape = (function () { + function SectorShape() { + this.cx = 0; + this.cy = 0; + this.r0 = 0; + this.r = 0; + this.startAngle = 0; + this.endAngle = Math.PI * 2; + this.clockwise = true; + this.cornerRadius = 0; + } + return SectorShape; + }()); + var Sector = (function (_super) { + __extends(Sector, _super); + function Sector(opts) { + return _super.call(this, opts) || this; + } + Sector.prototype.getDefaultShape = function () { + return new SectorShape(); + }; + Sector.prototype.buildPath = function (ctx, shape) { + buildPath$1(ctx, shape); + }; + Sector.prototype.isZeroArea = function () { + return this.shape.startAngle === this.shape.endAngle + || this.shape.r === this.shape.r0; + }; + return Sector; + }(Path)); + Sector.prototype.type = 'sector'; + + var RingShape = (function () { + function RingShape() { + this.cx = 0; + this.cy = 0; + this.r = 0; + this.r0 = 0; + } + return RingShape; + }()); + var Ring = (function (_super) { + __extends(Ring, _super); + function Ring(opts) { + return _super.call(this, opts) || this; + } + Ring.prototype.getDefaultShape = function () { + return new RingShape(); + }; + Ring.prototype.buildPath = function (ctx, shape) { + var x = shape.cx; + var y = shape.cy; + var PI2 = Math.PI * 2; + ctx.moveTo(x + shape.r, y); + ctx.arc(x, y, shape.r, 0, PI2, false); + ctx.moveTo(x + shape.r0, y); + ctx.arc(x, y, shape.r0, 0, PI2, true); + }; + return Ring; + }(Path)); + Ring.prototype.type = 'ring'; + + function smoothBezier(points, smooth, isLoop, constraint) { + var cps = []; + var v = []; + var v1 = []; + var v2 = []; + var prevPoint; + var nextPoint; + var min$1; + var max$1; + if (constraint) { + min$1 = [Infinity, Infinity]; + max$1 = [-Infinity, -Infinity]; + for (var i = 0, len = points.length; i < len; i++) { + min(min$1, min$1, points[i]); + max(max$1, max$1, points[i]); + } + min(min$1, min$1, constraint[0]); + max(max$1, max$1, constraint[1]); + } + for (var i = 0, len = points.length; i < len; i++) { + var point = points[i]; + if (isLoop) { + prevPoint = points[i ? i - 1 : len - 1]; + nextPoint = points[(i + 1) % len]; + } + else { + if (i === 0 || i === len - 1) { + cps.push(clone$1(points[i])); + continue; + } + else { + prevPoint = points[i - 1]; + nextPoint = points[i + 1]; + } + } + sub(v, nextPoint, prevPoint); + scale(v, v, smooth); + var d0 = distance(point, prevPoint); + var d1 = distance(point, nextPoint); + var sum = d0 + d1; + if (sum !== 0) { + d0 /= sum; + d1 /= sum; + } + scale(v1, v, -d0); + scale(v2, v, d1); + var cp0 = add([], point, v1); + var cp1 = add([], point, v2); + if (constraint) { + max(cp0, cp0, min$1); + min(cp0, cp0, max$1); + max(cp1, cp1, min$1); + min(cp1, cp1, max$1); + } + cps.push(cp0); + cps.push(cp1); + } + if (isLoop) { + cps.push(cps.shift()); + } + return cps; + } + + function buildPath$2(ctx, shape, closePath) { + var smooth = shape.smooth; + var points = shape.points; + if (points && points.length >= 2) { + if (smooth) { + var controlPoints = smoothBezier(points, smooth, closePath, shape.smoothConstraint); + ctx.moveTo(points[0][0], points[0][1]); + var len = points.length; + for (var i = 0; i < (closePath ? len : len - 1); i++) { + var cp1 = controlPoints[i * 2]; + var cp2 = controlPoints[i * 2 + 1]; + var p = points[(i + 1) % len]; + ctx.bezierCurveTo(cp1[0], cp1[1], cp2[0], cp2[1], p[0], p[1]); + } + } + else { + ctx.moveTo(points[0][0], points[0][1]); + for (var i = 1, l = points.length; i < l; i++) { + ctx.lineTo(points[i][0], points[i][1]); + } + } + closePath && ctx.closePath(); + } + } + + var PolygonShape = (function () { + function PolygonShape() { + this.points = null; + this.smooth = 0; + this.smoothConstraint = null; + } + return PolygonShape; + }()); + var Polygon = (function (_super) { + __extends(Polygon, _super); + function Polygon(opts) { + return _super.call(this, opts) || this; + } + Polygon.prototype.getDefaultShape = function () { + return new PolygonShape(); + }; + Polygon.prototype.buildPath = function (ctx, shape) { + buildPath$2(ctx, shape, true); + }; + return Polygon; + }(Path)); + Polygon.prototype.type = 'polygon'; + + var PolylineShape = (function () { + function PolylineShape() { + this.points = null; + this.percent = 1; + this.smooth = 0; + this.smoothConstraint = null; + } + return PolylineShape; + }()); + var Polyline = (function (_super) { + __extends(Polyline, _super); + function Polyline(opts) { + return _super.call(this, opts) || this; + } + Polyline.prototype.getDefaultStyle = function () { + return { + stroke: '#000', + fill: null + }; + }; + Polyline.prototype.getDefaultShape = function () { + return new PolylineShape(); + }; + Polyline.prototype.buildPath = function (ctx, shape) { + buildPath$2(ctx, shape, false); + }; + return Polyline; + }(Path)); + Polyline.prototype.type = 'polyline'; + + var subPixelOptimizeOutputShape$1 = {}; + var LineShape = (function () { + function LineShape() { + this.x1 = 0; + this.y1 = 0; + this.x2 = 0; + this.y2 = 0; + this.percent = 1; + } + return LineShape; + }()); + var Line = (function (_super) { + __extends(Line, _super); + function Line(opts) { + return _super.call(this, opts) || this; + } + Line.prototype.getDefaultStyle = function () { + return { + stroke: '#000', + fill: null + }; + }; + Line.prototype.getDefaultShape = function () { + return new LineShape(); + }; + Line.prototype.buildPath = function (ctx, shape) { + var x1; + var y1; + var x2; + var y2; + if (this.subPixelOptimize) { + var optimizedShape = subPixelOptimizeLine(subPixelOptimizeOutputShape$1, shape, this.style); + x1 = optimizedShape.x1; + y1 = optimizedShape.y1; + x2 = optimizedShape.x2; + y2 = optimizedShape.y2; + } + else { + x1 = shape.x1; + y1 = shape.y1; + x2 = shape.x2; + y2 = shape.y2; + } + var percent = shape.percent; + if (percent === 0) { + return; + } + ctx.moveTo(x1, y1); + if (percent < 1) { + x2 = x1 * (1 - percent) + x2 * percent; + y2 = y1 * (1 - percent) + y2 * percent; + } + ctx.lineTo(x2, y2); + }; + Line.prototype.pointAt = function (p) { + var shape = this.shape; + return [ + shape.x1 * (1 - p) + shape.x2 * p, + shape.y1 * (1 - p) + shape.y2 * p + ]; + }; + return Line; + }(Path)); + Line.prototype.type = 'line'; + + var out = []; + var BezierCurveShape = (function () { + function BezierCurveShape() { + this.x1 = 0; + this.y1 = 0; + this.x2 = 0; + this.y2 = 0; + this.cpx1 = 0; + this.cpy1 = 0; + this.percent = 1; + } + return BezierCurveShape; + }()); + function someVectorAt(shape, t, isTangent) { + var cpx2 = shape.cpx2; + var cpy2 = shape.cpy2; + if (cpx2 != null || cpy2 != null) { + return [ + (isTangent ? cubicDerivativeAt : cubicAt)(shape.x1, shape.cpx1, shape.cpx2, shape.x2, t), + (isTangent ? cubicDerivativeAt : cubicAt)(shape.y1, shape.cpy1, shape.cpy2, shape.y2, t) + ]; + } + else { + return [ + (isTangent ? quadraticDerivativeAt : quadraticAt)(shape.x1, shape.cpx1, shape.x2, t), + (isTangent ? quadraticDerivativeAt : quadraticAt)(shape.y1, shape.cpy1, shape.y2, t) + ]; + } + } + var BezierCurve = (function (_super) { + __extends(BezierCurve, _super); + function BezierCurve(opts) { + return _super.call(this, opts) || this; + } + BezierCurve.prototype.getDefaultStyle = function () { + return { + stroke: '#000', + fill: null + }; + }; + BezierCurve.prototype.getDefaultShape = function () { + return new BezierCurveShape(); + }; + BezierCurve.prototype.buildPath = function (ctx, shape) { + var x1 = shape.x1; + var y1 = shape.y1; + var x2 = shape.x2; + var y2 = shape.y2; + var cpx1 = shape.cpx1; + var cpy1 = shape.cpy1; + var cpx2 = shape.cpx2; + var cpy2 = shape.cpy2; + var percent = shape.percent; + if (percent === 0) { + return; + } + ctx.moveTo(x1, y1); + if (cpx2 == null || cpy2 == null) { + if (percent < 1) { + quadraticSubdivide(x1, cpx1, x2, percent, out); + cpx1 = out[1]; + x2 = out[2]; + quadraticSubdivide(y1, cpy1, y2, percent, out); + cpy1 = out[1]; + y2 = out[2]; + } + ctx.quadraticCurveTo(cpx1, cpy1, x2, y2); + } + else { + if (percent < 1) { + cubicSubdivide(x1, cpx1, cpx2, x2, percent, out); + cpx1 = out[1]; + cpx2 = out[2]; + x2 = out[3]; + cubicSubdivide(y1, cpy1, cpy2, y2, percent, out); + cpy1 = out[1]; + cpy2 = out[2]; + y2 = out[3]; + } + ctx.bezierCurveTo(cpx1, cpy1, cpx2, cpy2, x2, y2); + } + }; + BezierCurve.prototype.pointAt = function (t) { + return someVectorAt(this.shape, t, false); + }; + BezierCurve.prototype.tangentAt = function (t) { + var p = someVectorAt(this.shape, t, true); + return normalize(p, p); + }; + return BezierCurve; + }(Path)); + BezierCurve.prototype.type = 'bezier-curve'; + + var ArcShape = (function () { + function ArcShape() { + this.cx = 0; + this.cy = 0; + this.r = 0; + this.startAngle = 0; + this.endAngle = Math.PI * 2; + this.clockwise = true; + } + return ArcShape; + }()); + var Arc = (function (_super) { + __extends(Arc, _super); + function Arc(opts) { + return _super.call(this, opts) || this; + } + Arc.prototype.getDefaultStyle = function () { + return { + stroke: '#000', + fill: null + }; + }; + Arc.prototype.getDefaultShape = function () { + return new ArcShape(); + }; + Arc.prototype.buildPath = function (ctx, shape) { + var x = shape.cx; + var y = shape.cy; + var r = Math.max(shape.r, 0); + var startAngle = shape.startAngle; + var endAngle = shape.endAngle; + var clockwise = shape.clockwise; + var unitX = Math.cos(startAngle); + var unitY = Math.sin(startAngle); + ctx.moveTo(unitX * r + x, unitY * r + y); + ctx.arc(x, y, r, startAngle, endAngle, !clockwise); + }; + return Arc; + }(Path)); + Arc.prototype.type = 'arc'; + + var CompoundPath = (function (_super) { + __extends(CompoundPath, _super); + function CompoundPath() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = 'compound'; + return _this; + } + CompoundPath.prototype._updatePathDirty = function () { + var paths = this.shape.paths; + var dirtyPath = this.shapeChanged(); + for (var i = 0; i < paths.length; i++) { + dirtyPath = dirtyPath || paths[i].shapeChanged(); + } + if (dirtyPath) { + this.dirtyShape(); + } + }; + CompoundPath.prototype.beforeBrush = function () { + this._updatePathDirty(); + var paths = this.shape.paths || []; + var scale = this.getGlobalScale(); + for (var i = 0; i < paths.length; i++) { + if (!paths[i].path) { + paths[i].createPathProxy(); + } + paths[i].path.setScale(scale[0], scale[1], paths[i].segmentIgnoreThreshold); + } + }; + CompoundPath.prototype.buildPath = function (ctx, shape) { + var paths = shape.paths || []; + for (var i = 0; i < paths.length; i++) { + paths[i].buildPath(ctx, paths[i].shape, true); + } + }; + CompoundPath.prototype.afterBrush = function () { + var paths = this.shape.paths || []; + for (var i = 0; i < paths.length; i++) { + paths[i].pathUpdated(); + } + }; + CompoundPath.prototype.getBoundingRect = function () { + this._updatePathDirty.call(this); + return Path.prototype.getBoundingRect.call(this); + }; + return CompoundPath; + }(Path)); + + var Gradient = (function () { + function Gradient(colorStops) { + this.colorStops = colorStops || []; + } + Gradient.prototype.addColorStop = function (offset, color) { + this.colorStops.push({ + offset: offset, + color: color + }); + }; + return Gradient; + }()); + + var LinearGradient = (function (_super) { + __extends(LinearGradient, _super); + function LinearGradient(x, y, x2, y2, colorStops, globalCoord) { + var _this = _super.call(this, colorStops) || this; + _this.x = x == null ? 0 : x; + _this.y = y == null ? 0 : y; + _this.x2 = x2 == null ? 1 : x2; + _this.y2 = y2 == null ? 0 : y2; + _this.type = 'linear'; + _this.global = globalCoord || false; + return _this; + } + return LinearGradient; + }(Gradient)); + + var RadialGradient = (function (_super) { + __extends(RadialGradient, _super); + function RadialGradient(x, y, r, colorStops, globalCoord) { + var _this = _super.call(this, colorStops) || this; + _this.x = x == null ? 0.5 : x; + _this.y = y == null ? 0.5 : y; + _this.r = r == null ? 0.5 : r; + _this.type = 'radial'; + _this.global = globalCoord || false; + return _this; + } + return RadialGradient; + }(Gradient)); + + var extent = [0, 0]; + var extent2 = [0, 0]; + var minTv$1 = new Point(); + var maxTv$1 = new Point(); + var OrientedBoundingRect = (function () { + function OrientedBoundingRect(rect, transform) { + this._corners = []; + this._axes = []; + this._origin = [0, 0]; + for (var i = 0; i < 4; i++) { + this._corners[i] = new Point(); + } + for (var i = 0; i < 2; i++) { + this._axes[i] = new Point(); + } + if (rect) { + this.fromBoundingRect(rect, transform); + } + } + OrientedBoundingRect.prototype.fromBoundingRect = function (rect, transform) { + var corners = this._corners; + var axes = this._axes; + var x = rect.x; + var y = rect.y; + var x2 = x + rect.width; + var y2 = y + rect.height; + corners[0].set(x, y); + corners[1].set(x2, y); + corners[2].set(x2, y2); + corners[3].set(x, y2); + if (transform) { + for (var i = 0; i < 4; i++) { + corners[i].transform(transform); + } + } + Point.sub(axes[0], corners[1], corners[0]); + Point.sub(axes[1], corners[3], corners[0]); + axes[0].normalize(); + axes[1].normalize(); + for (var i = 0; i < 2; i++) { + this._origin[i] = axes[i].dot(corners[0]); + } + }; + OrientedBoundingRect.prototype.intersect = function (other, mtv) { + var overlapped = true; + var noMtv = !mtv; + minTv$1.set(Infinity, Infinity); + maxTv$1.set(0, 0); + if (!this._intersectCheckOneSide(this, other, minTv$1, maxTv$1, noMtv, 1)) { + overlapped = false; + if (noMtv) { + return overlapped; + } + } + if (!this._intersectCheckOneSide(other, this, minTv$1, maxTv$1, noMtv, -1)) { + overlapped = false; + if (noMtv) { + return overlapped; + } + } + if (!noMtv) { + Point.copy(mtv, overlapped ? minTv$1 : maxTv$1); + } + return overlapped; + }; + OrientedBoundingRect.prototype._intersectCheckOneSide = function (self, other, minTv, maxTv, noMtv, inverse) { + var overlapped = true; + for (var i = 0; i < 2; i++) { + var axis = this._axes[i]; + this._getProjMinMaxOnAxis(i, self._corners, extent); + this._getProjMinMaxOnAxis(i, other._corners, extent2); + if (extent[1] < extent2[0] || extent[0] > extent2[1]) { + overlapped = false; + if (noMtv) { + return overlapped; + } + var dist0 = Math.abs(extent2[0] - extent[1]); + var dist1 = Math.abs(extent[0] - extent2[1]); + if (Math.min(dist0, dist1) > maxTv.len()) { + if (dist0 < dist1) { + Point.scale(maxTv, axis, -dist0 * inverse); + } + else { + Point.scale(maxTv, axis, dist1 * inverse); + } + } + } + else if (minTv) { + var dist0 = Math.abs(extent2[0] - extent[1]); + var dist1 = Math.abs(extent[0] - extent2[1]); + if (Math.min(dist0, dist1) < minTv.len()) { + if (dist0 < dist1) { + Point.scale(minTv, axis, dist0 * inverse); + } + else { + Point.scale(minTv, axis, -dist1 * inverse); + } + } + } + } + return overlapped; + }; + OrientedBoundingRect.prototype._getProjMinMaxOnAxis = function (dim, corners, out) { + var axis = this._axes[dim]; + var origin = this._origin; + var proj = corners[0].dot(axis) + origin[dim]; + var min = proj; + var max = proj; + for (var i = 1; i < corners.length; i++) { + var proj_1 = corners[i].dot(axis) + origin[dim]; + min = Math.min(proj_1, min); + max = Math.max(proj_1, max); + } + out[0] = min; + out[1] = max; + }; + return OrientedBoundingRect; + }()); + + var m = []; + var IncrementalDisplayable = (function (_super) { + __extends(IncrementalDisplayable, _super); + function IncrementalDisplayable() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.notClear = true; + _this.incremental = true; + _this._displayables = []; + _this._temporaryDisplayables = []; + _this._cursor = 0; + return _this; + } + IncrementalDisplayable.prototype.traverse = function (cb, context) { + cb.call(context, this); + }; + IncrementalDisplayable.prototype.useStyle = function () { + this.style = {}; + }; + IncrementalDisplayable.prototype.getCursor = function () { + return this._cursor; + }; + IncrementalDisplayable.prototype.innerAfterBrush = function () { + this._cursor = this._displayables.length; + }; + IncrementalDisplayable.prototype.clearDisplaybles = function () { + this._displayables = []; + this._temporaryDisplayables = []; + this._cursor = 0; + this.markRedraw(); + this.notClear = false; + }; + IncrementalDisplayable.prototype.clearTemporalDisplayables = function () { + this._temporaryDisplayables = []; + }; + IncrementalDisplayable.prototype.addDisplayable = function (displayable, notPersistent) { + if (notPersistent) { + this._temporaryDisplayables.push(displayable); + } + else { + this._displayables.push(displayable); + } + this.markRedraw(); + }; + IncrementalDisplayable.prototype.addDisplayables = function (displayables, notPersistent) { + notPersistent = notPersistent || false; + for (var i = 0; i < displayables.length; i++) { + this.addDisplayable(displayables[i], notPersistent); + } + }; + IncrementalDisplayable.prototype.getDisplayables = function () { + return this._displayables; + }; + IncrementalDisplayable.prototype.getTemporalDisplayables = function () { + return this._temporaryDisplayables; + }; + IncrementalDisplayable.prototype.eachPendingDisplayable = function (cb) { + for (var i = this._cursor; i < this._displayables.length; i++) { + cb && cb(this._displayables[i]); + } + for (var i = 0; i < this._temporaryDisplayables.length; i++) { + cb && cb(this._temporaryDisplayables[i]); + } + }; + IncrementalDisplayable.prototype.update = function () { + this.updateTransform(); + for (var i = this._cursor; i < this._displayables.length; i++) { + var displayable = this._displayables[i]; + displayable.parent = this; + displayable.update(); + displayable.parent = null; + } + for (var i = 0; i < this._temporaryDisplayables.length; i++) { + var displayable = this._temporaryDisplayables[i]; + displayable.parent = this; + displayable.update(); + displayable.parent = null; + } + }; + IncrementalDisplayable.prototype.getBoundingRect = function () { + if (!this._rect) { + var rect = new BoundingRect(Infinity, Infinity, -Infinity, -Infinity); + for (var i = 0; i < this._displayables.length; i++) { + var displayable = this._displayables[i]; + var childRect = displayable.getBoundingRect().clone(); + if (displayable.needLocalTransform()) { + childRect.applyTransform(displayable.getLocalTransform(m)); + } + rect.union(childRect); + } + this._rect = rect; + } + return this._rect; + }; + IncrementalDisplayable.prototype.contain = function (x, y) { + var localPos = this.transformCoordToLocal(x, y); + var rect = this.getBoundingRect(); + if (rect.contain(localPos[0], localPos[1])) { + for (var i = 0; i < this._displayables.length; i++) { + var displayable = this._displayables[i]; + if (displayable.contain(x, y)) { + return true; + } + } + } + return false; + }; + return IncrementalDisplayable; + }(Displayable)); + + // Stored properties for further transition. + var transitionStore = makeInner(); + /** + * Return null if animation is disabled. + */ + function getAnimationConfig(animationType, animatableModel, dataIndex, + // Extra opts can override the option in animatable model. + extraOpts, + // TODO It's only for pictorial bar now. + extraDelayParams) { + var animationPayload; + // Check if there is global animation configuration from dataZoom/resize can override the config in option. + // If animation is enabled. Will use this animation config in payload. + // If animation is disabled. Just ignore it. + if (animatableModel && animatableModel.ecModel) { + var updatePayload = animatableModel.ecModel.getUpdatePayload(); + animationPayload = updatePayload && updatePayload.animation; + } + var animationEnabled = animatableModel && animatableModel.isAnimationEnabled(); + var isUpdate = animationType === 'update'; + if (animationEnabled) { + var duration = void 0; + var easing = void 0; + var delay = void 0; + if (extraOpts) { + duration = retrieve2(extraOpts.duration, 200); + easing = retrieve2(extraOpts.easing, 'cubicOut'); + delay = 0; + } else { + duration = animatableModel.getShallow(isUpdate ? 'animationDurationUpdate' : 'animationDuration'); + easing = animatableModel.getShallow(isUpdate ? 'animationEasingUpdate' : 'animationEasing'); + delay = animatableModel.getShallow(isUpdate ? 'animationDelayUpdate' : 'animationDelay'); + } + // animation from payload has highest priority. + if (animationPayload) { + animationPayload.duration != null && (duration = animationPayload.duration); + animationPayload.easing != null && (easing = animationPayload.easing); + animationPayload.delay != null && (delay = animationPayload.delay); + } + if (isFunction(delay)) { + delay = delay(dataIndex, extraDelayParams); + } + if (isFunction(duration)) { + duration = duration(dataIndex); + } + var config = { + duration: duration || 0, + delay: delay, + easing: easing + }; + return config; + } else { + return null; + } + } + function animateOrSetProps(animationType, el, props, animatableModel, dataIndex, cb, during) { + var isFrom = false; + var removeOpt; + if (isFunction(dataIndex)) { + during = cb; + cb = dataIndex; + dataIndex = null; + } else if (isObject(dataIndex)) { + cb = dataIndex.cb; + during = dataIndex.during; + isFrom = dataIndex.isFrom; + removeOpt = dataIndex.removeOpt; + dataIndex = dataIndex.dataIndex; + } + var isRemove = animationType === 'leave'; + if (!isRemove) { + // Must stop the remove animation. + el.stopAnimation('leave'); + } + var animationConfig = getAnimationConfig(animationType, animatableModel, dataIndex, isRemove ? removeOpt || {} : null, animatableModel && animatableModel.getAnimationDelayParams ? animatableModel.getAnimationDelayParams(el, dataIndex) : null); + if (animationConfig && animationConfig.duration > 0) { + var duration = animationConfig.duration; + var animationDelay = animationConfig.delay; + var animationEasing = animationConfig.easing; + var animateConfig = { + duration: duration, + delay: animationDelay || 0, + easing: animationEasing, + done: cb, + force: !!cb || !!during, + // Set to final state in update/init animation. + // So the post processing based on the path shape can be done correctly. + setToFinal: !isRemove, + scope: animationType, + during: during + }; + isFrom ? el.animateFrom(props, animateConfig) : el.animateTo(props, animateConfig); + } else { + el.stopAnimation(); + // If `isFrom`, the props is the "from" props. + !isFrom && el.attr(props); + // Call during at least once. + during && during(1); + cb && cb(); + } + } + /** + * Update graphic element properties with or without animation according to the + * configuration in series. + * + * Caution: this method will stop previous animation. + * So do not use this method to one element twice before + * animation starts, unless you know what you are doing. + * @example + * graphic.updateProps(el, { + * position: [100, 100] + * }, seriesModel, dataIndex, function () { console.log('Animation done!'); }); + * // Or + * graphic.updateProps(el, { + * position: [100, 100] + * }, seriesModel, function () { console.log('Animation done!'); }); + */ + function updateProps(el, props, + // TODO: TYPE AnimatableModel + animatableModel, dataIndex, cb, during) { + animateOrSetProps('update', el, props, animatableModel, dataIndex, cb, during); + } + /** + * Init graphic element properties with or without animation according to the + * configuration in series. + * + * Caution: this method will stop previous animation. + * So do not use this method to one element twice before + * animation starts, unless you know what you are doing. + */ + function initProps(el, props, animatableModel, dataIndex, cb, during) { + animateOrSetProps('enter', el, props, animatableModel, dataIndex, cb, during); + } + /** + * If element is removed. + * It can determine if element is having remove animation. + */ + function isElementRemoved(el) { + if (!el.__zr) { + return true; + } + for (var i = 0; i < el.animators.length; i++) { + var animator = el.animators[i]; + if (animator.scope === 'leave') { + return true; + } + } + return false; + } + /** + * Remove graphic element + */ + function removeElement(el, props, animatableModel, dataIndex, cb, during) { + // Don't do remove animation twice. + if (isElementRemoved(el)) { + return; + } + animateOrSetProps('leave', el, props, animatableModel, dataIndex, cb, during); + } + function fadeOutDisplayable(el, animatableModel, dataIndex, done) { + el.removeTextContent(); + el.removeTextGuideLine(); + removeElement(el, { + style: { + opacity: 0 + } + }, animatableModel, dataIndex, done); + } + function removeElementWithFadeOut(el, animatableModel, dataIndex) { + function doRemove() { + el.parent && el.parent.remove(el); + } + // Hide label and labelLine first + // TODO Also use fade out animation? + if (!el.isGroup) { + fadeOutDisplayable(el, animatableModel, dataIndex, doRemove); + } else { + el.traverse(function (disp) { + if (!disp.isGroup) { + // Can invoke doRemove multiple times. + fadeOutDisplayable(disp, animatableModel, dataIndex, doRemove); + } + }); + } + } + /** + * Save old style for style transition in universalTransition module. + * It's used when element will be reused in each render. + * For chart like map, heatmap, which will always create new element. + * We don't need to save this because universalTransition can get old style from the old element + */ + function saveOldStyle(el) { + transitionStore(el).oldStyle = el.style; + } + function getOldStyle(el) { + return transitionStore(el).oldStyle; + } + + var mathMax$4 = Math.max; + var mathMin$4 = Math.min; + var _customShapeMap = {}; + /** + * Extend shape with parameters + */ + function extendShape(opts) { + return Path.extend(opts); + } + var extendPathFromString = extendFromString; + /** + * Extend path + */ + function extendPath(pathData, opts) { + return extendPathFromString(pathData, opts); + } + /** + * Register a user defined shape. + * The shape class can be fetched by `getShapeClass` + * This method will overwrite the registered shapes, including + * the registered built-in shapes, if using the same `name`. + * The shape can be used in `custom series` and + * `graphic component` by declaring `{type: name}`. + * + * @param name + * @param ShapeClass Can be generated by `extendShape`. + */ + function registerShape(name, ShapeClass) { + _customShapeMap[name] = ShapeClass; + } + /** + * Find shape class registered by `registerShape`. Usually used in + * fetching user defined shape. + * + * [Caution]: + * (1) This method **MUST NOT be used inside echarts !!!**, unless it is prepared + * to use user registered shapes. + * Because the built-in shape (see `getBuiltInShape`) will be registered by + * `registerShape` by default. That enables users to get both built-in + * shapes as well as the shapes belonging to themsleves. But users can overwrite + * the built-in shapes by using names like 'circle', 'rect' via calling + * `registerShape`. So the echarts inner featrues should not fetch shapes from here + * in case that it is overwritten by users, except that some features, like + * `custom series`, `graphic component`, do it deliberately. + * + * (2) In the features like `custom series`, `graphic component`, the user input + * `{tpye: 'xxx'}` does not only specify shapes but also specify other graphic + * elements like `'group'`, `'text'`, `'image'` or event `'path'`. Those names + * are reserved names, that is, if some user registers a shape named `'image'`, + * the shape will not be used. If we intending to add some more reserved names + * in feature, that might bring break changes (disable some existing user shape + * names). But that case probably rarely happens. So we don't make more mechanism + * to resolve this issue here. + * + * @param name + * @return The shape class. If not found, return nothing. + */ + function getShapeClass(name) { + if (_customShapeMap.hasOwnProperty(name)) { + return _customShapeMap[name]; + } + } + /** + * Create a path element from path data string + * @param pathData + * @param opts + * @param rect + * @param layout 'center' or 'cover' default to be cover + */ + function makePath(pathData, opts, rect, layout) { + var path = createFromString(pathData, opts); + if (rect) { + if (layout === 'center') { + rect = centerGraphic(rect, path.getBoundingRect()); + } + resizePath(path, rect); + } + return path; + } + /** + * Create a image element from image url + * @param imageUrl image url + * @param opts options + * @param rect constrain rect + * @param layout 'center' or 'cover'. Default to be 'cover' + */ + function makeImage(imageUrl, rect, layout) { + var zrImg = new ZRImage({ + style: { + image: imageUrl, + x: rect.x, + y: rect.y, + width: rect.width, + height: rect.height + }, + onload: function (img) { + if (layout === 'center') { + var boundingRect = { + width: img.width, + height: img.height + }; + zrImg.setStyle(centerGraphic(rect, boundingRect)); + } + } + }); + return zrImg; + } + /** + * Get position of centered element in bounding box. + * + * @param rect element local bounding box + * @param boundingRect constraint bounding box + * @return element position containing x, y, width, and height + */ + function centerGraphic(rect, boundingRect) { + // Set rect to center, keep width / height ratio. + var aspect = boundingRect.width / boundingRect.height; + var width = rect.height * aspect; + var height; + if (width <= rect.width) { + height = rect.height; + } else { + width = rect.width; + height = width / aspect; + } + var cx = rect.x + rect.width / 2; + var cy = rect.y + rect.height / 2; + return { + x: cx - width / 2, + y: cy - height / 2, + width: width, + height: height + }; + } + var mergePath$1 = mergePath; + /** + * Resize a path to fit the rect + * @param path + * @param rect + */ + function resizePath(path, rect) { + if (!path.applyTransform) { + return; + } + var pathRect = path.getBoundingRect(); + var m = pathRect.calculateTransform(rect); + path.applyTransform(m); + } + /** + * Sub pixel optimize line for canvas + */ + function subPixelOptimizeLine$1(shape, lineWidth) { + subPixelOptimizeLine(shape, shape, { + lineWidth: lineWidth + }); + return shape; + } + /** + * Sub pixel optimize rect for canvas + */ + function subPixelOptimizeRect$1(param) { + subPixelOptimizeRect(param.shape, param.shape, param.style); + return param; + } + /** + * Sub pixel optimize for canvas + * + * @param position Coordinate, such as x, y + * @param lineWidth Should be nonnegative integer. + * @param positiveOrNegative Default false (negative). + * @return Optimized position. + */ + var subPixelOptimize$1 = subPixelOptimize; + /** + * Get transform matrix of target (param target), + * in coordinate of its ancestor (param ancestor) + * + * @param target + * @param [ancestor] + */ + function getTransform(target, ancestor) { + var mat = identity([]); + while (target && target !== ancestor) { + mul$1(mat, target.getLocalTransform(), mat); + target = target.parent; + } + return mat; + } + /** + * Apply transform to an vertex. + * @param target [x, y] + * @param transform Can be: + * + Transform matrix: like [1, 0, 0, 1, 0, 0] + * + {position, rotation, scale}, the same as `zrender/Transformable`. + * @param invert Whether use invert matrix. + * @return [x, y] + */ + function applyTransform$1(target, transform, invert$1) { + if (transform && !isArrayLike(transform)) { + transform = Transformable.getLocalTransform(transform); + } + if (invert$1) { + transform = invert([], transform); + } + return applyTransform([], target, transform); + } + /** + * @param direction 'left' 'right' 'top' 'bottom' + * @param transform Transform matrix: like [1, 0, 0, 1, 0, 0] + * @param invert Whether use invert matrix. + * @return Transformed direction. 'left' 'right' 'top' 'bottom' + */ + function transformDirection(direction, transform, invert) { + // Pick a base, ensure that transform result will not be (0, 0). + var hBase = transform[4] === 0 || transform[5] === 0 || transform[0] === 0 ? 1 : Math.abs(2 * transform[4] / transform[0]); + var vBase = transform[4] === 0 || transform[5] === 0 || transform[2] === 0 ? 1 : Math.abs(2 * transform[4] / transform[2]); + var vertex = [direction === 'left' ? -hBase : direction === 'right' ? hBase : 0, direction === 'top' ? -vBase : direction === 'bottom' ? vBase : 0]; + vertex = applyTransform$1(vertex, transform, invert); + return Math.abs(vertex[0]) > Math.abs(vertex[1]) ? vertex[0] > 0 ? 'right' : 'left' : vertex[1] > 0 ? 'bottom' : 'top'; + } + function isNotGroup(el) { + return !el.isGroup; + } + function isPath(el) { + return el.shape != null; + } + /** + * Apply group transition animation from g1 to g2. + * If no animatableModel, no animation. + */ + function groupTransition(g1, g2, animatableModel) { + if (!g1 || !g2) { + return; + } + function getElMap(g) { + var elMap = {}; + g.traverse(function (el) { + if (isNotGroup(el) && el.anid) { + elMap[el.anid] = el; + } + }); + return elMap; + } + function getAnimatableProps(el) { + var obj = { + x: el.x, + y: el.y, + rotation: el.rotation + }; + if (isPath(el)) { + obj.shape = extend({}, el.shape); + } + return obj; + } + var elMap1 = getElMap(g1); + g2.traverse(function (el) { + if (isNotGroup(el) && el.anid) { + var oldEl = elMap1[el.anid]; + if (oldEl) { + var newProp = getAnimatableProps(el); + el.attr(getAnimatableProps(oldEl)); + updateProps(el, newProp, animatableModel, getECData(el).dataIndex); + } + } + }); + } + function clipPointsByRect(points, rect) { + // FIXME: This way might be incorrect when graphic clipped by a corner + // and when element has a border. + return map(points, function (point) { + var x = point[0]; + x = mathMax$4(x, rect.x); + x = mathMin$4(x, rect.x + rect.width); + var y = point[1]; + y = mathMax$4(y, rect.y); + y = mathMin$4(y, rect.y + rect.height); + return [x, y]; + }); + } + /** + * Return a new clipped rect. If rect size are negative, return undefined. + */ + function clipRectByRect(targetRect, rect) { + var x = mathMax$4(targetRect.x, rect.x); + var x2 = mathMin$4(targetRect.x + targetRect.width, rect.x + rect.width); + var y = mathMax$4(targetRect.y, rect.y); + var y2 = mathMin$4(targetRect.y + targetRect.height, rect.y + rect.height); + // If the total rect is cliped, nothing, including the border, + // should be painted. So return undefined. + if (x2 >= x && y2 >= y) { + return { + x: x, + y: y, + width: x2 - x, + height: y2 - y + }; + } + } + function createIcon(iconStr, + // Support 'image://' or 'path://' or direct svg path. + opt, rect) { + var innerOpts = extend({ + rectHover: true + }, opt); + var style = innerOpts.style = { + strokeNoScale: true + }; + rect = rect || { + x: -1, + y: -1, + width: 2, + height: 2 + }; + if (iconStr) { + return iconStr.indexOf('image://') === 0 ? (style.image = iconStr.slice(8), defaults(style, rect), new ZRImage(innerOpts)) : makePath(iconStr.replace('path://', ''), innerOpts, rect, 'center'); + } + } + /** + * Return `true` if the given line (line `a`) and the given polygon + * are intersect. + * Note that we do not count colinear as intersect here because no + * requirement for that. We could do that if required in future. + */ + function linePolygonIntersect(a1x, a1y, a2x, a2y, points) { + for (var i = 0, p2 = points[points.length - 1]; i < points.length; i++) { + var p = points[i]; + if (lineLineIntersect(a1x, a1y, a2x, a2y, p[0], p[1], p2[0], p2[1])) { + return true; + } + p2 = p; + } + } + /** + * Return `true` if the given two lines (line `a` and line `b`) + * are intersect. + * Note that we do not count colinear as intersect here because no + * requirement for that. We could do that if required in future. + */ + function lineLineIntersect(a1x, a1y, a2x, a2y, b1x, b1y, b2x, b2y) { + // let `vec_m` to be `vec_a2 - vec_a1` and `vec_n` to be `vec_b2 - vec_b1`. + var mx = a2x - a1x; + var my = a2y - a1y; + var nx = b2x - b1x; + var ny = b2y - b1y; + // `vec_m` and `vec_n` are parallel iff + // existing `k` such that `vec_m = k · vec_n`, equivalent to `vec_m X vec_n = 0`. + var nmCrossProduct = crossProduct2d(nx, ny, mx, my); + if (nearZero(nmCrossProduct)) { + return false; + } + // `vec_m` and `vec_n` are intersect iff + // existing `p` and `q` in [0, 1] such that `vec_a1 + p * vec_m = vec_b1 + q * vec_n`, + // such that `q = ((vec_a1 - vec_b1) X vec_m) / (vec_n X vec_m)` + // and `p = ((vec_a1 - vec_b1) X vec_n) / (vec_n X vec_m)`. + var b1a1x = a1x - b1x; + var b1a1y = a1y - b1y; + var q = crossProduct2d(b1a1x, b1a1y, mx, my) / nmCrossProduct; + if (q < 0 || q > 1) { + return false; + } + var p = crossProduct2d(b1a1x, b1a1y, nx, ny) / nmCrossProduct; + if (p < 0 || p > 1) { + return false; + } + return true; + } + /** + * Cross product of 2-dimension vector. + */ + function crossProduct2d(x1, y1, x2, y2) { + return x1 * y2 - x2 * y1; + } + function nearZero(val) { + return val <= 1e-6 && val >= -1e-6; + } + function setTooltipConfig(opt) { + var itemTooltipOption = opt.itemTooltipOption; + var componentModel = opt.componentModel; + var itemName = opt.itemName; + var itemTooltipOptionObj = isString(itemTooltipOption) ? { + formatter: itemTooltipOption + } : itemTooltipOption; + var mainType = componentModel.mainType; + var componentIndex = componentModel.componentIndex; + var formatterParams = { + componentType: mainType, + name: itemName, + $vars: ['name'] + }; + formatterParams[mainType + 'Index'] = componentIndex; + var formatterParamsExtra = opt.formatterParamsExtra; + if (formatterParamsExtra) { + each(keys(formatterParamsExtra), function (key) { + if (!hasOwn(formatterParams, key)) { + formatterParams[key] = formatterParamsExtra[key]; + formatterParams.$vars.push(key); + } + }); + } + var ecData = getECData(opt.el); + ecData.componentMainType = mainType; + ecData.componentIndex = componentIndex; + ecData.tooltipConfig = { + name: itemName, + option: defaults({ + content: itemName, + formatterParams: formatterParams + }, itemTooltipOptionObj) + }; + } + function traverseElement(el, cb) { + var stopped; + // TODO + // Polyfill for fixing zrender group traverse don't visit it's root issue. + if (el.isGroup) { + stopped = cb(el); + } + if (!stopped) { + el.traverse(cb); + } + } + function traverseElements(els, cb) { + if (els) { + if (isArray(els)) { + for (var i = 0; i < els.length; i++) { + traverseElement(els[i], cb); + } + } else { + traverseElement(els, cb); + } + } + } + // Register built-in shapes. These shapes might be overwritten + // by users, although we do not recommend that. + registerShape('circle', Circle); + registerShape('ellipse', Ellipse); + registerShape('sector', Sector); + registerShape('ring', Ring); + registerShape('polygon', Polygon); + registerShape('polyline', Polyline); + registerShape('rect', Rect); + registerShape('line', Line); + registerShape('bezierCurve', BezierCurve); + registerShape('arc', Arc); + + var graphic = /*#__PURE__*/Object.freeze({ + __proto__: null, + updateProps: updateProps, + initProps: initProps, + removeElement: removeElement, + removeElementWithFadeOut: removeElementWithFadeOut, + isElementRemoved: isElementRemoved, + extendShape: extendShape, + extendPath: extendPath, + registerShape: registerShape, + getShapeClass: getShapeClass, + makePath: makePath, + makeImage: makeImage, + mergePath: mergePath$1, + resizePath: resizePath, + subPixelOptimizeLine: subPixelOptimizeLine$1, + subPixelOptimizeRect: subPixelOptimizeRect$1, + subPixelOptimize: subPixelOptimize$1, + getTransform: getTransform, + applyTransform: applyTransform$1, + transformDirection: transformDirection, + groupTransition: groupTransition, + clipPointsByRect: clipPointsByRect, + clipRectByRect: clipRectByRect, + createIcon: createIcon, + linePolygonIntersect: linePolygonIntersect, + lineLineIntersect: lineLineIntersect, + setTooltipConfig: setTooltipConfig, + traverseElements: traverseElements, + Group: Group, + Image: ZRImage, + Text: ZRText, + Circle: Circle, + Ellipse: Ellipse, + Sector: Sector, + Ring: Ring, + Polygon: Polygon, + Polyline: Polyline, + Rect: Rect, + Line: Line, + BezierCurve: BezierCurve, + Arc: Arc, + IncrementalDisplayable: IncrementalDisplayable, + CompoundPath: CompoundPath, + LinearGradient: LinearGradient, + RadialGradient: RadialGradient, + BoundingRect: BoundingRect, + OrientedBoundingRect: OrientedBoundingRect, + Point: Point, + Path: Path + }); + + var EMPTY_OBJ = {}; + function setLabelText(label, labelTexts) { + for (var i = 0; i < SPECIAL_STATES.length; i++) { + var stateName = SPECIAL_STATES[i]; + var text = labelTexts[stateName]; + var state = label.ensureState(stateName); + state.style = state.style || {}; + state.style.text = text; + } + var oldStates = label.currentStates.slice(); + label.clearStates(true); + label.setStyle({ + text: labelTexts.normal + }); + label.useStates(oldStates, true); + } + function getLabelText(opt, stateModels, interpolatedValue) { + var labelFetcher = opt.labelFetcher; + var labelDataIndex = opt.labelDataIndex; + var labelDimIndex = opt.labelDimIndex; + var normalModel = stateModels.normal; + var baseText; + if (labelFetcher) { + baseText = labelFetcher.getFormattedLabel(labelDataIndex, 'normal', null, labelDimIndex, normalModel && normalModel.get('formatter'), interpolatedValue != null ? { + interpolatedValue: interpolatedValue + } : null); + } + if (baseText == null) { + baseText = isFunction(opt.defaultText) ? opt.defaultText(labelDataIndex, opt, interpolatedValue) : opt.defaultText; + } + var statesText = { + normal: baseText + }; + for (var i = 0; i < SPECIAL_STATES.length; i++) { + var stateName = SPECIAL_STATES[i]; + var stateModel = stateModels[stateName]; + statesText[stateName] = retrieve2(labelFetcher ? labelFetcher.getFormattedLabel(labelDataIndex, stateName, null, labelDimIndex, stateModel && stateModel.get('formatter')) : null, baseText); + } + return statesText; + } + function setLabelStyle(targetEl, labelStatesModels, opt, stateSpecified + // TODO specified position? + ) { + opt = opt || EMPTY_OBJ; + var isSetOnText = targetEl instanceof ZRText; + var needsCreateText = false; + for (var i = 0; i < DISPLAY_STATES.length; i++) { + var stateModel = labelStatesModels[DISPLAY_STATES[i]]; + if (stateModel && stateModel.getShallow('show')) { + needsCreateText = true; + break; + } + } + var textContent = isSetOnText ? targetEl : targetEl.getTextContent(); + if (needsCreateText) { + if (!isSetOnText) { + // Reuse the previous + if (!textContent) { + textContent = new ZRText(); + targetEl.setTextContent(textContent); + } + // Use same state proxy + if (targetEl.stateProxy) { + textContent.stateProxy = targetEl.stateProxy; + } + } + var labelStatesTexts = getLabelText(opt, labelStatesModels); + var normalModel = labelStatesModels.normal; + var showNormal = !!normalModel.getShallow('show'); + var normalStyle = createTextStyle(normalModel, stateSpecified && stateSpecified.normal, opt, false, !isSetOnText); + normalStyle.text = labelStatesTexts.normal; + if (!isSetOnText) { + // Always create new + targetEl.setTextConfig(createTextConfig(normalModel, opt, false)); + } + for (var i = 0; i < SPECIAL_STATES.length; i++) { + var stateName = SPECIAL_STATES[i]; + var stateModel = labelStatesModels[stateName]; + if (stateModel) { + var stateObj = textContent.ensureState(stateName); + var stateShow = !!retrieve2(stateModel.getShallow('show'), showNormal); + if (stateShow !== showNormal) { + stateObj.ignore = !stateShow; + } + stateObj.style = createTextStyle(stateModel, stateSpecified && stateSpecified[stateName], opt, true, !isSetOnText); + stateObj.style.text = labelStatesTexts[stateName]; + if (!isSetOnText) { + var targetElEmphasisState = targetEl.ensureState(stateName); + targetElEmphasisState.textConfig = createTextConfig(stateModel, opt, true); + } + } + } + // PENDING: if there is many requirements that emphasis position + // need to be different from normal position, we might consider + // auto silent is those cases. + textContent.silent = !!normalModel.getShallow('silent'); + // Keep x and y + if (textContent.style.x != null) { + normalStyle.x = textContent.style.x; + } + if (textContent.style.y != null) { + normalStyle.y = textContent.style.y; + } + textContent.ignore = !showNormal; + // Always create new style. + textContent.useStyle(normalStyle); + textContent.dirty(); + if (opt.enableTextSetter) { + labelInner(textContent).setLabelText = function (interpolatedValue) { + var labelStatesTexts = getLabelText(opt, labelStatesModels, interpolatedValue); + setLabelText(textContent, labelStatesTexts); + }; + } + } else if (textContent) { + // Not display rich text. + textContent.ignore = true; + } + targetEl.dirty(); + } + function getLabelStatesModels(itemModel, labelName) { + labelName = labelName || 'label'; + var statesModels = { + normal: itemModel.getModel(labelName) + }; + for (var i = 0; i < SPECIAL_STATES.length; i++) { + var stateName = SPECIAL_STATES[i]; + statesModels[stateName] = itemModel.getModel([stateName, labelName]); + } + return statesModels; + } + /** + * Set basic textStyle properties. + */ + function createTextStyle(textStyleModel, specifiedTextStyle, + // Fixed style in the code. Can't be set by model. + opt, isNotNormal, isAttached // If text is attached on an element. If so, auto color will handling in zrender. + ) { + var textStyle = {}; + setTextStyleCommon(textStyle, textStyleModel, opt, isNotNormal, isAttached); + specifiedTextStyle && extend(textStyle, specifiedTextStyle); + // textStyle.host && textStyle.host.dirty && textStyle.host.dirty(false); + return textStyle; + } + function createTextConfig(textStyleModel, opt, isNotNormal) { + opt = opt || {}; + var textConfig = {}; + var labelPosition; + var labelRotate = textStyleModel.getShallow('rotate'); + var labelDistance = retrieve2(textStyleModel.getShallow('distance'), isNotNormal ? null : 5); + var labelOffset = textStyleModel.getShallow('offset'); + labelPosition = textStyleModel.getShallow('position') || (isNotNormal ? null : 'inside'); + // 'outside' is not a valid zr textPostion value, but used + // in bar series, and magric type should be considered. + labelPosition === 'outside' && (labelPosition = opt.defaultOutsidePosition || 'top'); + if (labelPosition != null) { + textConfig.position = labelPosition; + } + if (labelOffset != null) { + textConfig.offset = labelOffset; + } + if (labelRotate != null) { + labelRotate *= Math.PI / 180; + textConfig.rotation = labelRotate; + } + if (labelDistance != null) { + textConfig.distance = labelDistance; + } + // fill and auto is determined by the color of path fill if it's not specified by developers. + textConfig.outsideFill = textStyleModel.get('color') === 'inherit' ? opt.inheritColor || null : 'auto'; + return textConfig; + } + /** + * The uniform entry of set text style, that is, retrieve style definitions + * from `model` and set to `textStyle` object. + * + * Never in merge mode, but in overwrite mode, that is, all of the text style + * properties will be set. (Consider the states of normal and emphasis and + * default value can be adopted, merge would make the logic too complicated + * to manage.) + */ + function setTextStyleCommon(textStyle, textStyleModel, opt, isNotNormal, isAttached) { + // Consider there will be abnormal when merge hover style to normal style if given default value. + opt = opt || EMPTY_OBJ; + var ecModel = textStyleModel.ecModel; + var globalTextStyle = ecModel && ecModel.option.textStyle; + // Consider case: + // { + // data: [{ + // value: 12, + // label: { + // rich: { + // // no 'a' here but using parent 'a'. + // } + // } + // }], + // rich: { + // a: { ... } + // } + // } + var richItemNames = getRichItemNames(textStyleModel); + var richResult; + if (richItemNames) { + richResult = {}; + for (var name_1 in richItemNames) { + if (richItemNames.hasOwnProperty(name_1)) { + // Cascade is supported in rich. + var richTextStyle = textStyleModel.getModel(['rich', name_1]); + // In rich, never `disableBox`. + // FIXME: consider `label: {formatter: '{a|xx}', color: 'blue', rich: {a: {}}}`, + // the default color `'blue'` will not be adopted if no color declared in `rich`. + // That might confuses users. So probably we should put `textStyleModel` as the + // root ancestor of the `richTextStyle`. But that would be a break change. + setTokenTextStyle(richResult[name_1] = {}, richTextStyle, globalTextStyle, opt, isNotNormal, isAttached, false, true); + } + } + } + if (richResult) { + textStyle.rich = richResult; + } + var overflow = textStyleModel.get('overflow'); + if (overflow) { + textStyle.overflow = overflow; + } + var margin = textStyleModel.get('minMargin'); + if (margin != null) { + textStyle.margin = margin; + } + setTokenTextStyle(textStyle, textStyleModel, globalTextStyle, opt, isNotNormal, isAttached, true, false); + } + // Consider case: + // { + // data: [{ + // value: 12, + // label: { + // rich: { + // // no 'a' here but using parent 'a'. + // } + // } + // }], + // rich: { + // a: { ... } + // } + // } + // TODO TextStyleModel + function getRichItemNames(textStyleModel) { + // Use object to remove duplicated names. + var richItemNameMap; + while (textStyleModel && textStyleModel !== textStyleModel.ecModel) { + var rich = (textStyleModel.option || EMPTY_OBJ).rich; + if (rich) { + richItemNameMap = richItemNameMap || {}; + var richKeys = keys(rich); + for (var i = 0; i < richKeys.length; i++) { + var richKey = richKeys[i]; + richItemNameMap[richKey] = 1; + } + } + textStyleModel = textStyleModel.parentModel; + } + return richItemNameMap; + } + var TEXT_PROPS_WITH_GLOBAL = ['fontStyle', 'fontWeight', 'fontSize', 'fontFamily', 'textShadowColor', 'textShadowBlur', 'textShadowOffsetX', 'textShadowOffsetY']; + var TEXT_PROPS_SELF = ['align', 'lineHeight', 'width', 'height', 'tag', 'verticalAlign', 'ellipsis']; + var TEXT_PROPS_BOX = ['padding', 'borderWidth', 'borderRadius', 'borderDashOffset', 'backgroundColor', 'borderColor', 'shadowColor', 'shadowBlur', 'shadowOffsetX', 'shadowOffsetY']; + function setTokenTextStyle(textStyle, textStyleModel, globalTextStyle, opt, isNotNormal, isAttached, isBlock, inRich) { + // In merge mode, default value should not be given. + globalTextStyle = !isNotNormal && globalTextStyle || EMPTY_OBJ; + var inheritColor = opt && opt.inheritColor; + var fillColor = textStyleModel.getShallow('color'); + var strokeColor = textStyleModel.getShallow('textBorderColor'); + var opacity = retrieve2(textStyleModel.getShallow('opacity'), globalTextStyle.opacity); + if (fillColor === 'inherit' || fillColor === 'auto') { + if ("development" !== 'production') { + if (fillColor === 'auto') { + deprecateReplaceLog('color: \'auto\'', 'color: \'inherit\''); + } + } + if (inheritColor) { + fillColor = inheritColor; + } else { + fillColor = null; + } + } + if (strokeColor === 'inherit' || strokeColor === 'auto') { + if ("development" !== 'production') { + if (strokeColor === 'auto') { + deprecateReplaceLog('color: \'auto\'', 'color: \'inherit\''); + } + } + if (inheritColor) { + strokeColor = inheritColor; + } else { + strokeColor = null; + } + } + if (!isAttached) { + // Only use default global textStyle.color if text is individual. + // Otherwise it will use the strategy of attached text color because text may be on a path. + fillColor = fillColor || globalTextStyle.color; + strokeColor = strokeColor || globalTextStyle.textBorderColor; + } + if (fillColor != null) { + textStyle.fill = fillColor; + } + if (strokeColor != null) { + textStyle.stroke = strokeColor; + } + var textBorderWidth = retrieve2(textStyleModel.getShallow('textBorderWidth'), globalTextStyle.textBorderWidth); + if (textBorderWidth != null) { + textStyle.lineWidth = textBorderWidth; + } + var textBorderType = retrieve2(textStyleModel.getShallow('textBorderType'), globalTextStyle.textBorderType); + if (textBorderType != null) { + textStyle.lineDash = textBorderType; + } + var textBorderDashOffset = retrieve2(textStyleModel.getShallow('textBorderDashOffset'), globalTextStyle.textBorderDashOffset); + if (textBorderDashOffset != null) { + textStyle.lineDashOffset = textBorderDashOffset; + } + if (!isNotNormal && opacity == null && !inRich) { + opacity = opt && opt.defaultOpacity; + } + if (opacity != null) { + textStyle.opacity = opacity; + } + // TODO + if (!isNotNormal && !isAttached) { + // Set default finally. + if (textStyle.fill == null && opt.inheritColor) { + textStyle.fill = opt.inheritColor; + } + } + // Do not use `getFont` here, because merge should be supported, where + // part of these properties may be changed in emphasis style, and the + // others should remain their original value got from normal style. + for (var i = 0; i < TEXT_PROPS_WITH_GLOBAL.length; i++) { + var key = TEXT_PROPS_WITH_GLOBAL[i]; + var val = retrieve2(textStyleModel.getShallow(key), globalTextStyle[key]); + if (val != null) { + textStyle[key] = val; + } + } + for (var i = 0; i < TEXT_PROPS_SELF.length; i++) { + var key = TEXT_PROPS_SELF[i]; + var val = textStyleModel.getShallow(key); + if (val != null) { + textStyle[key] = val; + } + } + if (textStyle.verticalAlign == null) { + var baseline = textStyleModel.getShallow('baseline'); + if (baseline != null) { + textStyle.verticalAlign = baseline; + } + } + if (!isBlock || !opt.disableBox) { + for (var i = 0; i < TEXT_PROPS_BOX.length; i++) { + var key = TEXT_PROPS_BOX[i]; + var val = textStyleModel.getShallow(key); + if (val != null) { + textStyle[key] = val; + } + } + var borderType = textStyleModel.getShallow('borderType'); + if (borderType != null) { + textStyle.borderDash = borderType; + } + if ((textStyle.backgroundColor === 'auto' || textStyle.backgroundColor === 'inherit') && inheritColor) { + if ("development" !== 'production') { + if (textStyle.backgroundColor === 'auto') { + deprecateReplaceLog('backgroundColor: \'auto\'', 'backgroundColor: \'inherit\''); + } + } + textStyle.backgroundColor = inheritColor; + } + if ((textStyle.borderColor === 'auto' || textStyle.borderColor === 'inherit') && inheritColor) { + if ("development" !== 'production') { + if (textStyle.borderColor === 'auto') { + deprecateReplaceLog('borderColor: \'auto\'', 'borderColor: \'inherit\''); + } + } + textStyle.borderColor = inheritColor; + } + } + } + function getFont(opt, ecModel) { + var gTextStyleModel = ecModel && ecModel.getModel('textStyle'); + return trim([ + // FIXME in node-canvas fontWeight is before fontStyle + opt.fontStyle || gTextStyleModel && gTextStyleModel.getShallow('fontStyle') || '', opt.fontWeight || gTextStyleModel && gTextStyleModel.getShallow('fontWeight') || '', (opt.fontSize || gTextStyleModel && gTextStyleModel.getShallow('fontSize') || 12) + 'px', opt.fontFamily || gTextStyleModel && gTextStyleModel.getShallow('fontFamily') || 'sans-serif'].join(' ')); + } + var labelInner = makeInner(); + function setLabelValueAnimation(label, labelStatesModels, value, getDefaultText) { + if (!label) { + return; + } + var obj = labelInner(label); + obj.prevValue = obj.value; + obj.value = value; + var normalLabelModel = labelStatesModels.normal; + obj.valueAnimation = normalLabelModel.get('valueAnimation'); + if (obj.valueAnimation) { + obj.precision = normalLabelModel.get('precision'); + obj.defaultInterpolatedText = getDefaultText; + obj.statesModels = labelStatesModels; + } + } + function animateLabelValue(textEl, dataIndex, data, animatableModel, labelFetcher) { + var labelInnerStore = labelInner(textEl); + if (!labelInnerStore.valueAnimation || labelInnerStore.prevValue === labelInnerStore.value) { + // Value not changed, no new label animation + return; + } + var defaultInterpolatedText = labelInnerStore.defaultInterpolatedText; + // Consider the case that being animating, do not use the `obj.value`, + // Otherwise it will jump to the `obj.value` when this new animation started. + var currValue = retrieve2(labelInnerStore.interpolatedValue, labelInnerStore.prevValue); + var targetValue = labelInnerStore.value; + function during(percent) { + var interpolated = interpolateRawValues(data, labelInnerStore.precision, currValue, targetValue, percent); + labelInnerStore.interpolatedValue = percent === 1 ? null : interpolated; + var labelText = getLabelText({ + labelDataIndex: dataIndex, + labelFetcher: labelFetcher, + defaultText: defaultInterpolatedText ? defaultInterpolatedText(interpolated) : interpolated + '' + }, labelInnerStore.statesModels, interpolated); + setLabelText(textEl, labelText); + } + textEl.percent = 0; + (labelInnerStore.prevValue == null ? initProps : updateProps)(textEl, { + // percent is used to prevent animation from being aborted #15916 + percent: 1 + }, animatableModel, dataIndex, null, during); + } + + var PATH_COLOR = ['textStyle', 'color']; + var textStyleParams = ['fontStyle', 'fontWeight', 'fontSize', 'fontFamily', 'padding', 'lineHeight', 'rich', 'width', 'height', 'overflow']; + // TODO Performance improvement? + var tmpText = new ZRText(); + var TextStyleMixin = /** @class */function () { + function TextStyleMixin() {} + /** + * Get color property or get color from option.textStyle.color + */ + // TODO Callback + TextStyleMixin.prototype.getTextColor = function (isEmphasis) { + var ecModel = this.ecModel; + return this.getShallow('color') || (!isEmphasis && ecModel ? ecModel.get(PATH_COLOR) : null); + }; + /** + * Create font string from fontStyle, fontWeight, fontSize, fontFamily + * @return {string} + */ + TextStyleMixin.prototype.getFont = function () { + return getFont({ + fontStyle: this.getShallow('fontStyle'), + fontWeight: this.getShallow('fontWeight'), + fontSize: this.getShallow('fontSize'), + fontFamily: this.getShallow('fontFamily') + }, this.ecModel); + }; + TextStyleMixin.prototype.getTextRect = function (text) { + var style = { + text: text, + verticalAlign: this.getShallow('verticalAlign') || this.getShallow('baseline') + }; + for (var i = 0; i < textStyleParams.length; i++) { + style[textStyleParams[i]] = this.getShallow(textStyleParams[i]); + } + tmpText.useStyle(style); + tmpText.update(); + return tmpText.getBoundingRect(); + }; + return TextStyleMixin; + }(); + + var LINE_STYLE_KEY_MAP = [['lineWidth', 'width'], ['stroke', 'color'], ['opacity'], ['shadowBlur'], ['shadowOffsetX'], ['shadowOffsetY'], ['shadowColor'], ['lineDash', 'type'], ['lineDashOffset', 'dashOffset'], ['lineCap', 'cap'], ['lineJoin', 'join'], ['miterLimit'] + // Option decal is in `DecalObject` but style.decal is in `PatternObject`. + // So do not transfer decal directly. + ]; + + var getLineStyle = makeStyleMapper(LINE_STYLE_KEY_MAP); + var LineStyleMixin = /** @class */function () { + function LineStyleMixin() {} + LineStyleMixin.prototype.getLineStyle = function (excludes) { + return getLineStyle(this, excludes); + }; + return LineStyleMixin; + }(); + + var ITEM_STYLE_KEY_MAP = [['fill', 'color'], ['stroke', 'borderColor'], ['lineWidth', 'borderWidth'], ['opacity'], ['shadowBlur'], ['shadowOffsetX'], ['shadowOffsetY'], ['shadowColor'], ['lineDash', 'borderType'], ['lineDashOffset', 'borderDashOffset'], ['lineCap', 'borderCap'], ['lineJoin', 'borderJoin'], ['miterLimit', 'borderMiterLimit'] + // Option decal is in `DecalObject` but style.decal is in `PatternObject`. + // So do not transfer decal directly. + ]; + + var getItemStyle = makeStyleMapper(ITEM_STYLE_KEY_MAP); + var ItemStyleMixin = /** @class */function () { + function ItemStyleMixin() {} + ItemStyleMixin.prototype.getItemStyle = function (excludes, includes) { + return getItemStyle(this, excludes, includes); + }; + return ItemStyleMixin; + }(); + + var Model = /** @class */function () { + function Model(option, parentModel, ecModel) { + this.parentModel = parentModel; + this.ecModel = ecModel; + this.option = option; + // Simple optimization + // if (this.init) { + // if (arguments.length <= 4) { + // this.init(option, parentModel, ecModel, extraOpt); + // } + // else { + // this.init.apply(this, arguments); + // } + // } + } + + Model.prototype.init = function (option, parentModel, ecModel) { + var rest = []; + for (var _i = 3; _i < arguments.length; _i++) { + rest[_i - 3] = arguments[_i]; + } + }; + /** + * Merge the input option to me. + */ + Model.prototype.mergeOption = function (option, ecModel) { + merge(this.option, option, true); + }; + // `path` can be 'a.b.c', so the return value type have to be `ModelOption` + // TODO: TYPE strict key check? + // get(path: string | string[], ignoreParent?: boolean): ModelOption; + Model.prototype.get = function (path, ignoreParent) { + if (path == null) { + return this.option; + } + return this._doGet(this.parsePath(path), !ignoreParent && this.parentModel); + }; + Model.prototype.getShallow = function (key, ignoreParent) { + var option = this.option; + var val = option == null ? option : option[key]; + if (val == null && !ignoreParent) { + var parentModel = this.parentModel; + if (parentModel) { + // FIXME:TS do not know how to make it works + val = parentModel.getShallow(key); + } + } + return val; + }; + // `path` can be 'a.b.c', so the return value type have to be `Model<ModelOption>` + // getModel(path: string | string[], parentModel?: Model): Model; + // TODO 'a.b.c' is deprecated + Model.prototype.getModel = function (path, parentModel) { + var hasPath = path != null; + var pathFinal = hasPath ? this.parsePath(path) : null; + var obj = hasPath ? this._doGet(pathFinal) : this.option; + parentModel = parentModel || this.parentModel && this.parentModel.getModel(this.resolveParentPath(pathFinal)); + return new Model(obj, parentModel, this.ecModel); + }; + /** + * If model has option + */ + Model.prototype.isEmpty = function () { + return this.option == null; + }; + Model.prototype.restoreData = function () {}; + // Pending + Model.prototype.clone = function () { + var Ctor = this.constructor; + return new Ctor(clone(this.option)); + }; + // setReadOnly(properties): void { + // clazzUtil.setReadOnly(this, properties); + // } + // If path is null/undefined, return null/undefined. + Model.prototype.parsePath = function (path) { + if (typeof path === 'string') { + return path.split('.'); + } + return path; + }; + // Resolve path for parent. Perhaps useful when parent use a different property. + // Default to be a identity resolver. + // Can be modified to a different resolver. + Model.prototype.resolveParentPath = function (path) { + return path; + }; + // FIXME:TS check whether put this method here + Model.prototype.isAnimationEnabled = function () { + if (!env.node && this.option) { + if (this.option.animation != null) { + return !!this.option.animation; + } else if (this.parentModel) { + return this.parentModel.isAnimationEnabled(); + } + } + }; + Model.prototype._doGet = function (pathArr, parentModel) { + var obj = this.option; + if (!pathArr) { + return obj; + } + for (var i = 0; i < pathArr.length; i++) { + // Ignore empty + if (!pathArr[i]) { + continue; + } + // obj could be number/string/... (like 0) + obj = obj && typeof obj === 'object' ? obj[pathArr[i]] : null; + if (obj == null) { + break; + } + } + if (obj == null && parentModel) { + obj = parentModel._doGet(this.resolveParentPath(pathArr), parentModel.parentModel); + } + return obj; + }; + return Model; + }(); + // Enable Model.extend. + enableClassExtend(Model); + enableClassCheck(Model); + mixin(Model, LineStyleMixin); + mixin(Model, ItemStyleMixin); + mixin(Model, AreaStyleMixin); + mixin(Model, TextStyleMixin); + + // A random offset + var base = Math.round(Math.random() * 10); + /** + * @public + * @param {string} type + * @return {string} + */ + function getUID(type) { + // Considering the case of crossing js context, + // use Math.random to make id as unique as possible. + return [type || '', base++].join('_'); + } + /** + * Implements `SubTypeDefaulterManager` for `target`. + */ + function enableSubTypeDefaulter(target) { + var subTypeDefaulters = {}; + target.registerSubTypeDefaulter = function (componentType, defaulter) { + var componentTypeInfo = parseClassType(componentType); + subTypeDefaulters[componentTypeInfo.main] = defaulter; + }; + target.determineSubType = function (componentType, option) { + var type = option.type; + if (!type) { + var componentTypeMain = parseClassType(componentType).main; + if (target.hasSubTypes(componentType) && subTypeDefaulters[componentTypeMain]) { + type = subTypeDefaulters[componentTypeMain](option); + } + } + return type; + }; + } + /** + * Implements `TopologicalTravelable<any>` for `entity`. + * + * Topological travel on Activity Network (Activity On Vertices). + * Dependencies is defined in Model.prototype.dependencies, like ['xAxis', 'yAxis']. + * If 'xAxis' or 'yAxis' is absent in componentTypeList, just ignore it in topology. + * If there is circular dependencey, Error will be thrown. + */ + function enableTopologicalTravel(entity, dependencyGetter) { + /** + * @param targetNameList Target Component type list. + * Can be ['aa', 'bb', 'aa.xx'] + * @param fullNameList By which we can build dependency graph. + * @param callback Params: componentType, dependencies. + * @param context Scope of callback. + */ + entity.topologicalTravel = function (targetNameList, fullNameList, callback, context) { + if (!targetNameList.length) { + return; + } + var result = makeDepndencyGraph(fullNameList); + var graph = result.graph; + var noEntryList = result.noEntryList; + var targetNameSet = {}; + each(targetNameList, function (name) { + targetNameSet[name] = true; + }); + while (noEntryList.length) { + var currComponentType = noEntryList.pop(); + var currVertex = graph[currComponentType]; + var isInTargetNameSet = !!targetNameSet[currComponentType]; + if (isInTargetNameSet) { + callback.call(context, currComponentType, currVertex.originalDeps.slice()); + delete targetNameSet[currComponentType]; + } + each(currVertex.successor, isInTargetNameSet ? removeEdgeAndAdd : removeEdge); + } + each(targetNameSet, function () { + var errMsg = ''; + if ("development" !== 'production') { + errMsg = makePrintable('Circular dependency may exists: ', targetNameSet, targetNameList, fullNameList); + } + throw new Error(errMsg); + }); + function removeEdge(succComponentType) { + graph[succComponentType].entryCount--; + if (graph[succComponentType].entryCount === 0) { + noEntryList.push(succComponentType); + } + } + // Consider this case: legend depends on series, and we call + // chart.setOption({series: [...]}), where only series is in option. + // If we do not have 'removeEdgeAndAdd', legendModel.mergeOption will + // not be called, but only sereis.mergeOption is called. Thus legend + // have no chance to update its local record about series (like which + // name of series is available in legend). + function removeEdgeAndAdd(succComponentType) { + targetNameSet[succComponentType] = true; + removeEdge(succComponentType); + } + }; + function makeDepndencyGraph(fullNameList) { + var graph = {}; + var noEntryList = []; + each(fullNameList, function (name) { + var thisItem = createDependencyGraphItem(graph, name); + var originalDeps = thisItem.originalDeps = dependencyGetter(name); + var availableDeps = getAvailableDependencies(originalDeps, fullNameList); + thisItem.entryCount = availableDeps.length; + if (thisItem.entryCount === 0) { + noEntryList.push(name); + } + each(availableDeps, function (dependentName) { + if (indexOf(thisItem.predecessor, dependentName) < 0) { + thisItem.predecessor.push(dependentName); + } + var thatItem = createDependencyGraphItem(graph, dependentName); + if (indexOf(thatItem.successor, dependentName) < 0) { + thatItem.successor.push(name); + } + }); + }); + return { + graph: graph, + noEntryList: noEntryList + }; + } + function createDependencyGraphItem(graph, name) { + if (!graph[name]) { + graph[name] = { + predecessor: [], + successor: [] + }; + } + return graph[name]; + } + function getAvailableDependencies(originalDeps, fullNameList) { + var availableDeps = []; + each(originalDeps, function (dep) { + indexOf(fullNameList, dep) >= 0 && availableDeps.push(dep); + }); + return availableDeps; + } + } + function inheritDefaultOption(superOption, subOption) { + // See also `model/Component.ts#getDefaultOption` + return merge(merge({}, superOption, true), subOption, true); + } + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + + /** + * AUTO-GENERATED FILE. DO NOT MODIFY. + */ + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + /** + * Language: English. + */ + var langEN = { + 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', + custom: 'Custom chart', + chart: 'Chart' + } + }, + 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: '. ' + } + } + } + }; + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + + /** + * AUTO-GENERATED FILE. DO NOT MODIFY. + */ + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + var langZH = { + time: { + month: ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'], + monthAbbr: ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'], + dayOfWeek: ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'], + dayOfWeekAbbr: ['日', '一', '二', '三', '四', '五', '六'] + }, + legend: { + selector: { + all: '全选', + inverse: '反选' + } + }, + toolbox: { + brush: { + title: { + rect: '矩形选择', + polygon: '圈选', + lineX: '横向选择', + lineY: '纵向选择', + keep: '保持选择', + clear: '清除选择' + } + }, + dataView: { + title: '数据视图', + lang: ['数据视图', '关闭', '刷新'] + }, + dataZoom: { + title: { + zoom: '区域缩放', + back: '区域缩放还原' + } + }, + magicType: { + title: { + line: '切换为折线图', + bar: '切换为柱状图', + stack: '切换为堆叠', + tiled: '切换为平铺' + } + }, + restore: { + title: '还原' + }, + saveAsImage: { + title: '保存为图片', + lang: ['右键另存为图片'] + } + }, + series: { + typeNames: { + pie: '饼图', + bar: '柱状图', + line: '折线图', + scatter: '散点图', + effectScatter: '涟漪散点图', + radar: '雷达图', + tree: '树图', + treemap: '矩形树图', + boxplot: '箱型图', + candlestick: 'K线图', + k: 'K线图', + heatmap: '热力图', + map: '地图', + parallel: '平行坐标图', + lines: '线图', + graph: '关系图', + sankey: '桑基图', + funnel: '漏斗图', + gauge: '仪表盘图', + pictorialBar: '象形柱图', + themeRiver: '主题河流图', + sunburst: '旭日图', + custom: '自定义图表', + chart: '图表' + } + }, + aria: { + general: { + withTitle: '这是一个关于“{title}”的图表。', + withoutTitle: '这是一个图表,' + }, + series: { + single: { + prefix: '', + withName: '图表类型是{seriesType},表示{seriesName}。', + withoutName: '图表类型是{seriesType}。' + }, + multiple: { + prefix: '它由{seriesCount}个图表系列组成。', + withName: '第{seriesId}个系列是一个表示{seriesName}的{seriesType},', + withoutName: '第{seriesId}个系列是一个{seriesType},', + separator: { + middle: ';', + end: '。' + } + } + }, + data: { + allData: '其数据是——', + partialData: '其中,前{displayCnt}项是——', + withName: '{name}的数据是{value}', + withoutName: '{value}', + separator: { + middle: ',', + end: '' + } + } + } + }; + + var LOCALE_ZH = 'ZH'; + var LOCALE_EN = 'EN'; + var DEFAULT_LOCALE = LOCALE_EN; + var localeStorage = {}; + var localeModels = {}; + var SYSTEM_LANG = !env.domSupported ? DEFAULT_LOCALE : function () { + var langStr = ( /* eslint-disable-next-line */ + document.documentElement.lang || navigator.language || navigator.browserLanguage || DEFAULT_LOCALE).toUpperCase(); + return langStr.indexOf(LOCALE_ZH) > -1 ? LOCALE_ZH : DEFAULT_LOCALE; + }(); + function registerLocale(locale, localeObj) { + locale = locale.toUpperCase(); + localeModels[locale] = new Model(localeObj); + localeStorage[locale] = localeObj; + } + // export function getLocale(locale: string) { + // return localeStorage[locale]; + // } + function createLocaleObject(locale) { + if (isString(locale)) { + var localeObj = localeStorage[locale.toUpperCase()] || {}; + if (locale === LOCALE_ZH || locale === LOCALE_EN) { + return clone(localeObj); + } else { + return merge(clone(localeObj), clone(localeStorage[DEFAULT_LOCALE]), false); + } + } else { + return merge(clone(locale), clone(localeStorage[DEFAULT_LOCALE]), false); + } + } + function getLocaleModel(lang) { + return localeModels[lang]; + } + function getDefaultLocaleModel() { + return localeModels[DEFAULT_LOCALE]; + } + // Default locale + registerLocale(LOCALE_EN, langEN); + registerLocale(LOCALE_ZH, langZH); + + var ONE_SECOND = 1000; + var ONE_MINUTE = ONE_SECOND * 60; + var ONE_HOUR = ONE_MINUTE * 60; + var ONE_DAY = ONE_HOUR * 24; + var ONE_YEAR = ONE_DAY * 365; + var defaultLeveledFormatter = { + 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}' + }; + var fullDayFormatter = '{yyyy}-{MM}-{dd}'; + var fullLeveledFormatter = { + year: '{yyyy}', + month: '{yyyy}-{MM}', + day: fullDayFormatter, + hour: fullDayFormatter + ' ' + defaultLeveledFormatter.hour, + minute: fullDayFormatter + ' ' + defaultLeveledFormatter.minute, + second: fullDayFormatter + ' ' + defaultLeveledFormatter.second, + millisecond: defaultLeveledFormatter.none + }; + var primaryTimeUnits = ['year', 'month', 'day', 'hour', 'minute', 'second', 'millisecond']; + var timeUnits = ['year', 'half-year', 'quarter', 'month', 'week', 'half-week', 'day', 'half-day', 'quarter-day', 'hour', 'minute', 'second', 'millisecond']; + function pad(str, len) { + str += ''; + return '0000'.substr(0, len - str.length) + str; + } + function getPrimaryTimeUnit(timeUnit) { + switch (timeUnit) { + case 'half-year': + case 'quarter': + return 'month'; + case 'week': + case 'half-week': + return 'day'; + case 'half-day': + case 'quarter-day': + return 'hour'; + default: + // year, minutes, second, milliseconds + return timeUnit; + } + } + function isPrimaryTimeUnit(timeUnit) { + return timeUnit === getPrimaryTimeUnit(timeUnit); + } + function getDefaultFormatPrecisionOfInterval(timeUnit) { + switch (timeUnit) { + case 'year': + case 'month': + return 'day'; + case 'millisecond': + return 'millisecond'; + default: + // Also for day, hour, minute, second + return 'second'; + } + } + function format( + // Note: The result based on `isUTC` are totally different, which can not be just simply + // substituted by the result without `isUTC`. So we make the param `isUTC` mandatory. + time, template, isUTC, lang) { + var date = parseDate(time); + var y = date[fullYearGetterName(isUTC)](); + var M = date[monthGetterName(isUTC)]() + 1; + var q = Math.floor((M - 1) / 3) + 1; + var d = date[dateGetterName(isUTC)](); + var e = date['get' + (isUTC ? 'UTC' : '') + 'Day'](); + var H = date[hoursGetterName(isUTC)](); + var h = (H - 1) % 12 + 1; + var m = date[minutesGetterName(isUTC)](); + var s = date[secondsGetterName(isUTC)](); + var S = date[millisecondsGetterName(isUTC)](); + var localeModel = lang instanceof Model ? lang : getLocaleModel(lang || SYSTEM_LANG) || getDefaultLocaleModel(); + var timeModel = localeModel.getModel('time'); + var month = timeModel.get('month'); + var monthAbbr = timeModel.get('monthAbbr'); + var dayOfWeek = timeModel.get('dayOfWeek'); + var dayOfWeekAbbr = timeModel.get('dayOfWeekAbbr'); + return (template || '').replace(/{yyyy}/g, y + '').replace(/{yy}/g, pad(y % 100 + '', 2)).replace(/{Q}/g, q + '').replace(/{MMMM}/g, month[M - 1]).replace(/{MMM}/g, monthAbbr[M - 1]).replace(/{MM}/g, pad(M, 2)).replace(/{M}/g, M + '').replace(/{dd}/g, pad(d, 2)).replace(/{d}/g, d + '').replace(/{eeee}/g, dayOfWeek[e]).replace(/{ee}/g, dayOfWeekAbbr[e]).replace(/{e}/g, e + '').replace(/{HH}/g, pad(H, 2)).replace(/{H}/g, H + '').replace(/{hh}/g, pad(h + '', 2)).replace(/{h}/g, h + '').replace(/{mm}/g, pad(m, 2)).replace(/{m}/g, m + '').replace(/{ss}/g, pad(s, 2)).replace(/{s}/g, s + '').replace(/{SSS}/g, pad(S, 3)).replace(/{S}/g, S + ''); + } + function leveledFormat(tick, idx, formatter, lang, isUTC) { + var template = null; + if (isString(formatter)) { + // Single formatter for all units at all levels + template = formatter; + } else if (isFunction(formatter)) { + // Callback formatter + template = formatter(tick.value, idx, { + level: tick.level + }); + } else { + var defaults$1 = extend({}, defaultLeveledFormatter); + if (tick.level > 0) { + for (var i = 0; i < primaryTimeUnits.length; ++i) { + defaults$1[primaryTimeUnits[i]] = "{primary|" + defaults$1[primaryTimeUnits[i]] + "}"; + } + } + var mergedFormatter = formatter ? formatter.inherit === false ? formatter // Use formatter with bigger units + : defaults(formatter, defaults$1) : defaults$1; + var unit = getUnitFromValue(tick.value, isUTC); + if (mergedFormatter[unit]) { + template = mergedFormatter[unit]; + } else if (mergedFormatter.inherit) { + // Unit formatter is not defined and should inherit from bigger units + var targetId = timeUnits.indexOf(unit); + for (var i = targetId - 1; i >= 0; --i) { + if (mergedFormatter[unit]) { + template = mergedFormatter[unit]; + break; + } + } + template = template || defaults$1.none; + } + if (isArray(template)) { + var levelId = tick.level == null ? 0 : tick.level >= 0 ? tick.level : template.length + tick.level; + levelId = Math.min(levelId, template.length - 1); + template = template[levelId]; + } + } + return format(new Date(tick.value), template, isUTC, lang); + } + function getUnitFromValue(value, isUTC) { + var date = parseDate(value); + var M = date[monthGetterName(isUTC)]() + 1; + var d = date[dateGetterName(isUTC)](); + var h = date[hoursGetterName(isUTC)](); + var m = date[minutesGetterName(isUTC)](); + var s = date[secondsGetterName(isUTC)](); + var S = date[millisecondsGetterName(isUTC)](); + var isSecond = S === 0; + var isMinute = isSecond && s === 0; + var isHour = isMinute && m === 0; + var isDay = isHour && h === 0; + var isMonth = isDay && d === 1; + var isYear = isMonth && M === 1; + if (isYear) { + return 'year'; + } else if (isMonth) { + return 'month'; + } else if (isDay) { + return 'day'; + } else if (isHour) { + return 'hour'; + } else if (isMinute) { + return 'minute'; + } else if (isSecond) { + return 'second'; + } else { + return 'millisecond'; + } + } + function getUnitValue(value, unit, isUTC) { + var date = isNumber(value) ? parseDate(value) : value; + unit = unit || getUnitFromValue(value, isUTC); + switch (unit) { + case 'year': + return date[fullYearGetterName(isUTC)](); + case 'half-year': + return date[monthGetterName(isUTC)]() >= 6 ? 1 : 0; + case 'quarter': + return Math.floor((date[monthGetterName(isUTC)]() + 1) / 4); + case 'month': + return date[monthGetterName(isUTC)](); + case 'day': + return date[dateGetterName(isUTC)](); + case 'half-day': + return date[hoursGetterName(isUTC)]() / 24; + case 'hour': + return date[hoursGetterName(isUTC)](); + case 'minute': + return date[minutesGetterName(isUTC)](); + case 'second': + return date[secondsGetterName(isUTC)](); + case 'millisecond': + return date[millisecondsGetterName(isUTC)](); + } + } + function fullYearGetterName(isUTC) { + return isUTC ? 'getUTCFullYear' : 'getFullYear'; + } + function monthGetterName(isUTC) { + return isUTC ? 'getUTCMonth' : 'getMonth'; + } + function dateGetterName(isUTC) { + return isUTC ? 'getUTCDate' : 'getDate'; + } + function hoursGetterName(isUTC) { + return isUTC ? 'getUTCHours' : 'getHours'; + } + function minutesGetterName(isUTC) { + return isUTC ? 'getUTCMinutes' : 'getMinutes'; + } + function secondsGetterName(isUTC) { + return isUTC ? 'getUTCSeconds' : 'getSeconds'; + } + function millisecondsGetterName(isUTC) { + return isUTC ? 'getUTCMilliseconds' : 'getMilliseconds'; + } + function fullYearSetterName(isUTC) { + return isUTC ? 'setUTCFullYear' : 'setFullYear'; + } + function monthSetterName(isUTC) { + return isUTC ? 'setUTCMonth' : 'setMonth'; + } + function dateSetterName(isUTC) { + return isUTC ? 'setUTCDate' : 'setDate'; + } + function hoursSetterName(isUTC) { + return isUTC ? 'setUTCHours' : 'setHours'; + } + function minutesSetterName(isUTC) { + return isUTC ? 'setUTCMinutes' : 'setMinutes'; + } + function secondsSetterName(isUTC) { + return isUTC ? 'setUTCSeconds' : 'setSeconds'; + } + function millisecondsSetterName(isUTC) { + return isUTC ? 'setUTCMilliseconds' : 'setMilliseconds'; + } + + function getTextRect(text, font, align, verticalAlign, padding, rich, truncate, lineHeight) { + var textEl = new ZRText({ + style: { + text: text, + font: font, + align: align, + verticalAlign: verticalAlign, + padding: padding, + rich: rich, + overflow: truncate ? 'truncate' : null, + lineHeight: lineHeight + } + }); + return textEl.getBoundingRect(); + } + + /** + * Add a comma each three digit. + */ + function addCommas(x) { + if (!isNumeric(x)) { + return isString(x) ? x : '-'; + } + var parts = (x + '').split('.'); + return parts[0].replace(/(\d{1,3})(?=(?:\d{3})+(?!\d))/g, '$1,') + (parts.length > 1 ? '.' + parts[1] : ''); + } + function toCamelCase(str, upperCaseFirst) { + str = (str || '').toLowerCase().replace(/-(.)/g, function (match, group1) { + return group1.toUpperCase(); + }); + if (upperCaseFirst && str) { + str = str.charAt(0).toUpperCase() + str.slice(1); + } + return str; + } + var normalizeCssArray$1 = normalizeCssArray; + /** + * Make value user readable for tooltip and label. + * "User readable": + * Try to not print programmer-specific text like NaN, Infinity, null, undefined. + * Avoid to display an empty string, which users can not recognize there is + * a value and it might look like a bug. + */ + function makeValueReadable(value, valueType, useUTC) { + var USER_READABLE_DEFUALT_TIME_PATTERN = '{yyyy}-{MM}-{dd} {HH}:{mm}:{ss}'; + function stringToUserReadable(str) { + return str && trim(str) ? str : '-'; + } + function isNumberUserReadable(num) { + return !!(num != null && !isNaN(num) && isFinite(num)); + } + var isTypeTime = valueType === 'time'; + var isValueDate = value instanceof Date; + if (isTypeTime || isValueDate) { + var date = isTypeTime ? parseDate(value) : value; + if (!isNaN(+date)) { + return format(date, USER_READABLE_DEFUALT_TIME_PATTERN, useUTC); + } else if (isValueDate) { + return '-'; + } + // In other cases, continue to try to display the value in the following code. + } + + if (valueType === 'ordinal') { + return isStringSafe(value) ? stringToUserReadable(value) : isNumber(value) ? isNumberUserReadable(value) ? value + '' : '-' : '-'; + } + // By default. + var numericResult = numericToNumber(value); + return isNumberUserReadable(numericResult) ? addCommas(numericResult) : isStringSafe(value) ? stringToUserReadable(value) : typeof value === 'boolean' ? value + '' : '-'; + } + var TPL_VAR_ALIAS = ['a', 'b', 'c', 'd', 'e', 'f', 'g']; + var wrapVar = function (varName, seriesIdx) { + return '{' + varName + (seriesIdx == null ? '' : seriesIdx) + '}'; + }; + /** + * Template formatter + * @param {Array.<Object>|Object} paramsList + */ + function formatTpl(tpl, paramsList, encode) { + if (!isArray(paramsList)) { + paramsList = [paramsList]; + } + var seriesLen = paramsList.length; + if (!seriesLen) { + return ''; + } + var $vars = paramsList[0].$vars || []; + for (var i = 0; i < $vars.length; i++) { + var alias = TPL_VAR_ALIAS[i]; + tpl = tpl.replace(wrapVar(alias), wrapVar(alias, 0)); + } + for (var seriesIdx = 0; seriesIdx < seriesLen; seriesIdx++) { + for (var k = 0; k < $vars.length; k++) { + var val = paramsList[seriesIdx][$vars[k]]; + tpl = tpl.replace(wrapVar(TPL_VAR_ALIAS[k], seriesIdx), encode ? encodeHTML(val) : val); + } + } + return tpl; + } + /** + * simple Template formatter + */ + function formatTplSimple(tpl, param, encode) { + each(param, function (value, key) { + tpl = tpl.replace('{' + key + '}', encode ? encodeHTML(value) : value); + }); + return tpl; + } + function getTooltipMarker(inOpt, extraCssText) { + var opt = isString(inOpt) ? { + color: inOpt, + extraCssText: extraCssText + } : inOpt || {}; + var color = opt.color; + var type = opt.type; + extraCssText = opt.extraCssText; + var renderMode = opt.renderMode || 'html'; + if (!color) { + return ''; + } + if (renderMode === 'html') { + return type === 'subItem' ? '<span style="display:inline-block;vertical-align:middle;margin-right:8px;margin-left:3px;' + 'border-radius:4px;width:4px;height:4px;background-color:' + // Only support string + + encodeHTML(color) + ';' + (extraCssText || '') + '"></span>' : '<span style="display:inline-block;margin-right:4px;' + 'border-radius:10px;width:10px;height:10px;background-color:' + encodeHTML(color) + ';' + (extraCssText || '') + '"></span>'; + } else { + // Should better not to auto generate style name by auto-increment number here. + // Because this util is usually called in tooltip formatter, which is probably + // called repeatedly when mouse move and the auto-increment number increases fast. + // Users can make their own style name by theirselves, make it unique and readable. + var markerId = opt.markerId || 'markerX'; + return { + renderMode: renderMode, + content: '{' + markerId + '|} ', + style: type === 'subItem' ? { + width: 4, + height: 4, + borderRadius: 2, + backgroundColor: color + } : { + width: 10, + height: 10, + borderRadius: 5, + backgroundColor: color + } + }; + } + } + /** + * @deprecated Use `time/format` instead. + * ISO Date format + * @param {string} tpl + * @param {number} value + * @param {boolean} [isUTC=false] Default in local time. + * see `module:echarts/scale/Time` + * and `module:echarts/util/number#parseDate`. + * @inner + */ + function formatTime(tpl, value, isUTC) { + if ("development" !== 'production') { + deprecateReplaceLog('echarts.format.formatTime', 'echarts.time.format'); + } + if (tpl === 'week' || tpl === 'month' || tpl === 'quarter' || tpl === 'half-year' || tpl === 'year') { + tpl = 'MM-dd\nyyyy'; + } + var date = parseDate(value); + var getUTC = isUTC ? 'getUTC' : 'get'; + var y = date[getUTC + 'FullYear'](); + var M = date[getUTC + 'Month']() + 1; + var d = date[getUTC + 'Date'](); + var h = date[getUTC + 'Hours'](); + var m = date[getUTC + 'Minutes'](); + var s = date[getUTC + 'Seconds'](); + var S = date[getUTC + 'Milliseconds'](); + tpl = tpl.replace('MM', pad(M, 2)).replace('M', M).replace('yyyy', y).replace('yy', pad(y % 100 + '', 2)).replace('dd', pad(d, 2)).replace('d', d).replace('hh', pad(h, 2)).replace('h', h).replace('mm', pad(m, 2)).replace('m', m).replace('ss', pad(s, 2)).replace('s', s).replace('SSS', pad(S, 3)); + return tpl; + } + /** + * Capital first + * @param {string} str + * @return {string} + */ + function capitalFirst(str) { + return str ? str.charAt(0).toUpperCase() + str.substr(1) : str; + } + /** + * @return Never be null/undefined. + */ + function convertToColorString(color, defaultColor) { + defaultColor = defaultColor || 'transparent'; + return isString(color) ? color : isObject(color) ? color.colorStops && (color.colorStops[0] || {}).color || defaultColor : defaultColor; + } + /** + * open new tab + * @param link url + * @param target blank or self + */ + function windowOpen(link, target) { + /* global window */ + if (target === '_blank' || target === 'blank') { + var blank = window.open(); + blank.opener = null; + blank.location.href = link; + } else { + window.open(link, target); + } + } + + var each$1 = each; + /** + * @public + */ + var LOCATION_PARAMS = ['left', 'right', 'top', 'bottom', 'width', 'height']; + /** + * @public + */ + var HV_NAMES = [['width', 'left', 'right'], ['height', 'top', 'bottom']]; + function boxLayout(orient, group, gap, maxWidth, maxHeight) { + var x = 0; + var y = 0; + if (maxWidth == null) { + maxWidth = Infinity; + } + if (maxHeight == null) { + maxHeight = Infinity; + } + var currentLineMaxSize = 0; + group.eachChild(function (child, idx) { + var rect = child.getBoundingRect(); + var nextChild = group.childAt(idx + 1); + var nextChildRect = nextChild && nextChild.getBoundingRect(); + var nextX; + var nextY; + if (orient === 'horizontal') { + var moveX = rect.width + (nextChildRect ? -nextChildRect.x + rect.x : 0); + nextX = x + moveX; + // Wrap when width exceeds maxWidth or meet a `newline` group + // FIXME compare before adding gap? + if (nextX > maxWidth || child.newline) { + x = 0; + nextX = moveX; + y += currentLineMaxSize + gap; + currentLineMaxSize = rect.height; + } else { + // FIXME: consider rect.y is not `0`? + currentLineMaxSize = Math.max(currentLineMaxSize, rect.height); + } + } else { + var moveY = rect.height + (nextChildRect ? -nextChildRect.y + rect.y : 0); + nextY = y + moveY; + // Wrap when width exceeds maxHeight or meet a `newline` group + if (nextY > maxHeight || child.newline) { + x += currentLineMaxSize + gap; + y = 0; + nextY = moveY; + currentLineMaxSize = rect.width; + } else { + currentLineMaxSize = Math.max(currentLineMaxSize, rect.width); + } + } + if (child.newline) { + return; + } + child.x = x; + child.y = y; + child.markRedraw(); + orient === 'horizontal' ? x = nextX + gap : y = nextY + gap; + }); + } + /** + * VBox or HBox layouting + * @param {string} orient + * @param {module:zrender/graphic/Group} group + * @param {number} gap + * @param {number} [width=Infinity] + * @param {number} [height=Infinity] + */ + var box = boxLayout; + /** + * VBox layouting + * @param {module:zrender/graphic/Group} group + * @param {number} gap + * @param {number} [width=Infinity] + * @param {number} [height=Infinity] + */ + var vbox = curry(boxLayout, 'vertical'); + /** + * HBox layouting + * @param {module:zrender/graphic/Group} group + * @param {number} gap + * @param {number} [width=Infinity] + * @param {number} [height=Infinity] + */ + var hbox = curry(boxLayout, 'horizontal'); + /** + * If x or x2 is not specified or 'center' 'left' 'right', + * the width would be as long as possible. + * If y or y2 is not specified or 'middle' 'top' 'bottom', + * the height would be as long as possible. + */ + function getAvailableSize(positionInfo, containerRect, margin) { + var containerWidth = containerRect.width; + var containerHeight = containerRect.height; + var x = parsePercent$1(positionInfo.left, containerWidth); + var y = parsePercent$1(positionInfo.top, containerHeight); + var x2 = parsePercent$1(positionInfo.right, containerWidth); + var y2 = parsePercent$1(positionInfo.bottom, containerHeight); + (isNaN(x) || isNaN(parseFloat(positionInfo.left))) && (x = 0); + (isNaN(x2) || isNaN(parseFloat(positionInfo.right))) && (x2 = containerWidth); + (isNaN(y) || isNaN(parseFloat(positionInfo.top))) && (y = 0); + (isNaN(y2) || isNaN(parseFloat(positionInfo.bottom))) && (y2 = containerHeight); + margin = normalizeCssArray$1(margin || 0); + return { + width: Math.max(x2 - x - margin[1] - margin[3], 0), + height: Math.max(y2 - y - margin[0] - margin[2], 0) + }; + } + /** + * Parse position info. + */ + function getLayoutRect(positionInfo, containerRect, margin) { + margin = normalizeCssArray$1(margin || 0); + var containerWidth = containerRect.width; + var containerHeight = containerRect.height; + var left = parsePercent$1(positionInfo.left, containerWidth); + var top = parsePercent$1(positionInfo.top, containerHeight); + var right = parsePercent$1(positionInfo.right, containerWidth); + var bottom = parsePercent$1(positionInfo.bottom, containerHeight); + var width = parsePercent$1(positionInfo.width, containerWidth); + var height = parsePercent$1(positionInfo.height, containerHeight); + var verticalMargin = margin[2] + margin[0]; + var horizontalMargin = margin[1] + margin[3]; + var aspect = positionInfo.aspect; + // If width is not specified, calculate width from left and right + if (isNaN(width)) { + width = containerWidth - right - horizontalMargin - left; + } + if (isNaN(height)) { + height = containerHeight - bottom - verticalMargin - top; + } + if (aspect != null) { + // If width and height are not given + // 1. Graph should not exceeds the container + // 2. Aspect must be keeped + // 3. Graph should take the space as more as possible + // FIXME + // Margin is not considered, because there is no case that both + // using margin and aspect so far. + if (isNaN(width) && isNaN(height)) { + if (aspect > containerWidth / containerHeight) { + width = containerWidth * 0.8; + } else { + height = containerHeight * 0.8; + } + } + // Calculate width or height with given aspect + if (isNaN(width)) { + width = aspect * height; + } + if (isNaN(height)) { + height = width / aspect; + } + } + // If left is not specified, calculate left from right and width + if (isNaN(left)) { + left = containerWidth - right - width - horizontalMargin; + } + if (isNaN(top)) { + top = containerHeight - bottom - height - verticalMargin; + } + // Align left and top + switch (positionInfo.left || positionInfo.right) { + case 'center': + left = containerWidth / 2 - width / 2 - margin[3]; + break; + case 'right': + left = containerWidth - width - horizontalMargin; + break; + } + switch (positionInfo.top || positionInfo.bottom) { + case 'middle': + case 'center': + top = containerHeight / 2 - height / 2 - margin[0]; + break; + case 'bottom': + top = containerHeight - height - verticalMargin; + break; + } + // If something is wrong and left, top, width, height are calculated as NaN + left = left || 0; + top = top || 0; + if (isNaN(width)) { + // Width may be NaN if only one value is given except width + width = containerWidth - horizontalMargin - left - (right || 0); + } + if (isNaN(height)) { + // Height may be NaN if only one value is given except height + height = containerHeight - verticalMargin - top - (bottom || 0); + } + var rect = new BoundingRect(left + margin[3], top + margin[0], width, height); + rect.margin = margin; + return rect; + } + /** + * Position a zr element in viewport + * Group position is specified by either + * {left, top}, {right, bottom} + * If all properties exists, right and bottom will be igonred. + * + * Logic: + * 1. Scale (against origin point in parent coord) + * 2. Rotate (against origin point in parent coord) + * 3. Translate (with el.position by this method) + * So this method only fixes the last step 'Translate', which does not affect + * scaling and rotating. + * + * If be called repeatedly with the same input el, the same result will be gotten. + * + * Return true if the layout happened. + * + * @param el Should have `getBoundingRect` method. + * @param positionInfo + * @param positionInfo.left + * @param positionInfo.top + * @param positionInfo.right + * @param positionInfo.bottom + * @param positionInfo.width Only for opt.boundingModel: 'raw' + * @param positionInfo.height Only for opt.boundingModel: 'raw' + * @param containerRect + * @param margin + * @param opt + * @param opt.hv Only horizontal or only vertical. Default to be [1, 1] + * @param opt.boundingMode + * Specify how to calculate boundingRect when locating. + * 'all': Position the boundingRect that is transformed and uioned + * both itself and its descendants. + * This mode simplies confine the elements in the bounding + * of their container (e.g., using 'right: 0'). + * 'raw': Position the boundingRect that is not transformed and only itself. + * This mode is useful when you want a element can overflow its + * container. (Consider a rotated circle needs to be located in a corner.) + * In this mode positionInfo.width/height can only be number. + */ + function positionElement(el, positionInfo, containerRect, margin, opt, out) { + var h = !opt || !opt.hv || opt.hv[0]; + var v = !opt || !opt.hv || opt.hv[1]; + var boundingMode = opt && opt.boundingMode || 'all'; + out = out || el; + out.x = el.x; + out.y = el.y; + if (!h && !v) { + return false; + } + var rect; + if (boundingMode === 'raw') { + rect = el.type === 'group' ? new BoundingRect(0, 0, +positionInfo.width || 0, +positionInfo.height || 0) : el.getBoundingRect(); + } else { + rect = el.getBoundingRect(); + if (el.needLocalTransform()) { + var transform = el.getLocalTransform(); + // Notice: raw rect may be inner object of el, + // which should not be modified. + rect = rect.clone(); + rect.applyTransform(transform); + } + } + // The real width and height can not be specified but calculated by the given el. + var layoutRect = getLayoutRect(defaults({ + width: rect.width, + height: rect.height + }, positionInfo), containerRect, margin); + // Because 'tranlate' is the last step in transform + // (see zrender/core/Transformable#getLocalTransform), + // we can just only modify el.position to get final result. + var dx = h ? layoutRect.x - rect.x : 0; + var dy = v ? layoutRect.y - rect.y : 0; + if (boundingMode === 'raw') { + out.x = dx; + out.y = dy; + } else { + out.x += dx; + out.y += dy; + } + if (out === el) { + el.markRedraw(); + } + return true; + } + /** + * @param option Contains some of the properties in HV_NAMES. + * @param hvIdx 0: horizontal; 1: vertical. + */ + function sizeCalculable(option, hvIdx) { + return option[HV_NAMES[hvIdx][0]] != null || option[HV_NAMES[hvIdx][1]] != null && option[HV_NAMES[hvIdx][2]] != null; + } + function fetchLayoutMode(ins) { + var layoutMode = ins.layoutMode || ins.constructor.layoutMode; + return isObject(layoutMode) ? layoutMode : layoutMode ? { + type: layoutMode + } : null; + } + /** + * Consider Case: + * When default option has {left: 0, width: 100}, and we set {right: 0} + * through setOption or media query, using normal zrUtil.merge will cause + * {right: 0} does not take effect. + * + * @example + * ComponentModel.extend({ + * init: function () { + * ... + * let inputPositionParams = layout.getLayoutParams(option); + * this.mergeOption(inputPositionParams); + * }, + * mergeOption: function (newOption) { + * newOption && zrUtil.merge(thisOption, newOption, true); + * layout.mergeLayoutParam(thisOption, newOption); + * } + * }); + * + * @param targetOption + * @param newOption + * @param opt + */ + function mergeLayoutParam(targetOption, newOption, opt) { + var ignoreSize = opt && opt.ignoreSize; + !isArray(ignoreSize) && (ignoreSize = [ignoreSize, ignoreSize]); + var hResult = merge(HV_NAMES[0], 0); + var vResult = merge(HV_NAMES[1], 1); + copy(HV_NAMES[0], targetOption, hResult); + copy(HV_NAMES[1], targetOption, vResult); + function merge(names, hvIdx) { + var newParams = {}; + var newValueCount = 0; + var merged = {}; + var mergedValueCount = 0; + var enoughParamNumber = 2; + each$1(names, function (name) { + merged[name] = targetOption[name]; + }); + each$1(names, function (name) { + // Consider case: newOption.width is null, which is + // set by user for removing width setting. + hasProp(newOption, name) && (newParams[name] = merged[name] = newOption[name]); + hasValue(newParams, name) && newValueCount++; + hasValue(merged, name) && mergedValueCount++; + }); + if (ignoreSize[hvIdx]) { + // Only one of left/right is premitted to exist. + if (hasValue(newOption, names[1])) { + merged[names[2]] = null; + } else if (hasValue(newOption, names[2])) { + merged[names[1]] = null; + } + return merged; + } + // Case: newOption: {width: ..., right: ...}, + // or targetOption: {right: ...} and newOption: {width: ...}, + // There is no conflict when merged only has params count + // little than enoughParamNumber. + if (mergedValueCount === enoughParamNumber || !newValueCount) { + return merged; + } + // Case: newOption: {width: ..., right: ...}, + // Than we can make sure user only want those two, and ignore + // all origin params in targetOption. + else if (newValueCount >= enoughParamNumber) { + return newParams; + } else { + // Chose another param from targetOption by priority. + for (var i = 0; i < names.length; i++) { + var name_1 = names[i]; + if (!hasProp(newParams, name_1) && hasProp(targetOption, name_1)) { + newParams[name_1] = targetOption[name_1]; + break; + } + } + return newParams; + } + } + function hasProp(obj, name) { + return obj.hasOwnProperty(name); + } + function hasValue(obj, name) { + return obj[name] != null && obj[name] !== 'auto'; + } + function copy(names, target, source) { + each$1(names, function (name) { + target[name] = source[name]; + }); + } + } + /** + * Retrieve 'left', 'right', 'top', 'bottom', 'width', 'height' from object. + */ + function getLayoutParams(source) { + return copyLayoutParams({}, source); + } + /** + * Retrieve 'left', 'right', 'top', 'bottom', 'width', 'height' from object. + * @param {Object} source + * @return {Object} Result contains those props. + */ + function copyLayoutParams(target, source) { + source && target && each$1(LOCATION_PARAMS, function (name) { + source.hasOwnProperty(name) && (target[name] = source[name]); + }); + return target; + } + + var inner = makeInner(); + var ComponentModel = /** @class */function (_super) { + __extends(ComponentModel, _super); + function ComponentModel(option, parentModel, ecModel) { + var _this = _super.call(this, option, parentModel, ecModel) || this; + _this.uid = getUID('ec_cpt_model'); + return _this; + } + ComponentModel.prototype.init = function (option, parentModel, ecModel) { + this.mergeDefaultAndTheme(option, ecModel); + }; + ComponentModel.prototype.mergeDefaultAndTheme = function (option, ecModel) { + var layoutMode = fetchLayoutMode(this); + var inputPositionParams = layoutMode ? getLayoutParams(option) : {}; + var themeModel = ecModel.getTheme(); + merge(option, themeModel.get(this.mainType)); + merge(option, this.getDefaultOption()); + if (layoutMode) { + mergeLayoutParam(option, inputPositionParams, layoutMode); + } + }; + ComponentModel.prototype.mergeOption = function (option, ecModel) { + merge(this.option, option, true); + var layoutMode = fetchLayoutMode(this); + if (layoutMode) { + mergeLayoutParam(this.option, option, layoutMode); + } + }; + /** + * Called immediately after `init` or `mergeOption` of this instance called. + */ + ComponentModel.prototype.optionUpdated = function (newCptOption, isInit) {}; + /** + * [How to declare defaultOption]: + * + * (A) If using class declaration in typescript (since echarts 5): + * ```ts + * import {ComponentOption} from '../model/option.js'; + * export interface XxxOption extends ComponentOption { + * aaa: number + * } + * export class XxxModel extends Component { + * static type = 'xxx'; + * static defaultOption: XxxOption = { + * aaa: 123 + * } + * } + * Component.registerClass(XxxModel); + * ``` + * ```ts + * import {inheritDefaultOption} from '../util/component.js'; + * import {XxxModel, XxxOption} from './XxxModel.js'; + * export interface XxxSubOption extends XxxOption { + * bbb: number + * } + * class XxxSubModel extends XxxModel { + * static defaultOption: XxxSubOption = inheritDefaultOption(XxxModel.defaultOption, { + * bbb: 456 + * }) + * fn() { + * let opt = this.getDefaultOption(); + * // opt is {aaa: 123, bbb: 456} + * } + * } + * ``` + * + * (B) If using class extend (previous approach in echarts 3 & 4): + * ```js + * let XxxComponent = Component.extend({ + * defaultOption: { + * xx: 123 + * } + * }) + * ``` + * ```js + * let XxxSubComponent = XxxComponent.extend({ + * defaultOption: { + * yy: 456 + * }, + * fn: function () { + * let opt = this.getDefaultOption(); + * // opt is {xx: 123, yy: 456} + * } + * }) + * ``` + */ + ComponentModel.prototype.getDefaultOption = function () { + var ctor = this.constructor; + // If using class declaration, it is different to travel super class + // in legacy env and auto merge defaultOption. So if using class + // declaration, defaultOption should be merged manually. + if (!isExtendedClass(ctor)) { + // When using ts class, defaultOption must be declared as static. + return ctor.defaultOption; + } + // FIXME: remove this approach? + var fields = inner(this); + if (!fields.defaultOption) { + var optList = []; + var clz = ctor; + while (clz) { + var opt = clz.prototype.defaultOption; + opt && optList.push(opt); + clz = clz.superClass; + } + var defaultOption = {}; + for (var i = optList.length - 1; i >= 0; i--) { + defaultOption = merge(defaultOption, optList[i], true); + } + fields.defaultOption = defaultOption; + } + return fields.defaultOption; + }; + /** + * Notice: always force to input param `useDefault` in case that forget to consider it. + * The same behavior as `modelUtil.parseFinder`. + * + * @param useDefault In many cases like series refer axis and axis refer grid, + * If axis index / axis id not specified, use the first target as default. + * In other cases like dataZoom refer axis, if not specified, measn no refer. + */ + ComponentModel.prototype.getReferringComponents = function (mainType, opt) { + var indexKey = mainType + 'Index'; + var idKey = mainType + 'Id'; + return queryReferringComponents(this.ecModel, mainType, { + index: this.get(indexKey, true), + id: this.get(idKey, true) + }, opt); + }; + ComponentModel.prototype.getBoxLayoutParams = function () { + // Consider itself having box layout configs. + var boxLayoutModel = this; + return { + left: boxLayoutModel.get('left'), + top: boxLayoutModel.get('top'), + right: boxLayoutModel.get('right'), + bottom: boxLayoutModel.get('bottom'), + width: boxLayoutModel.get('width'), + height: boxLayoutModel.get('height') + }; + }; + /** + * Get key for zlevel. + * If developers don't configure zlevel. We will assign zlevel to series based on the key. + * For example, lines with trail effect and progressive series will in an individual zlevel. + */ + ComponentModel.prototype.getZLevelKey = function () { + return ''; + }; + ComponentModel.prototype.setZLevel = function (zlevel) { + this.option.zlevel = zlevel; + }; + ComponentModel.protoInitialize = function () { + var proto = ComponentModel.prototype; + proto.type = 'component'; + proto.id = ''; + proto.name = ''; + proto.mainType = ''; + proto.subType = ''; + proto.componentIndex = 0; + }(); + return ComponentModel; + }(Model); + mountExtend(ComponentModel, Model); + enableClassManagement(ComponentModel); + enableSubTypeDefaulter(ComponentModel); + enableTopologicalTravel(ComponentModel, getDependencies); + function getDependencies(componentType) { + var deps = []; + each(ComponentModel.getClassesByMainType(componentType), function (clz) { + deps = deps.concat(clz.dependencies || clz.prototype.dependencies || []); + }); + // Ensure main type. + deps = map(deps, function (type) { + return parseClassType(type).main; + }); + // Hack dataset for convenience. + if (componentType !== 'dataset' && indexOf(deps, 'dataset') <= 0) { + deps.unshift('dataset'); + } + return deps; + } + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + + /** + * AUTO-GENERATED FILE. DO NOT MODIFY. + */ + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + var platform = ''; + // Navigator not exists in node + if (typeof navigator !== 'undefined') { + /* global navigator */ + platform = navigator.platform || ''; + } + var decalColor = 'rgba(0, 0, 0, 0.2)'; + var globalDefault = { + darkMode: 'auto', + // backgroundColor: 'rgba(0,0,0,0)', + colorBy: 'series', + color: ['#5470c6', '#91cc75', '#fac858', '#ee6666', '#73c0de', '#3ba272', '#fc8452', '#9a60b4', '#ea7ccc'], + gradientColor: ['#f6efa6', '#d88273', '#bf444c'], + aria: { + decal: { + decals: [{ + color: decalColor, + dashArrayX: [1, 0], + dashArrayY: [2, 5], + symbolSize: 1, + rotation: Math.PI / 6 + }, { + color: decalColor, + symbol: 'circle', + dashArrayX: [[8, 8], [0, 8, 8, 0]], + dashArrayY: [6, 0], + symbolSize: 0.8 + }, { + color: decalColor, + dashArrayX: [1, 0], + dashArrayY: [4, 3], + rotation: -Math.PI / 4 + }, { + color: decalColor, + dashArrayX: [[6, 6], [0, 6, 6, 0]], + dashArrayY: [6, 0] + }, { + color: decalColor, + dashArrayX: [[1, 0], [1, 6]], + dashArrayY: [1, 0, 6, 0], + rotation: Math.PI / 4 + }, { + color: decalColor, + symbol: 'triangle', + dashArrayX: [[9, 9], [0, 9, 9, 0]], + dashArrayY: [7, 2], + symbolSize: 0.75 + }] + } + }, + // If xAxis and yAxis declared, grid is created by default. + // grid: {}, + textStyle: { + // color: '#000', + // decoration: 'none', + // PENDING + fontFamily: platform.match(/^Win/) ? 'Microsoft YaHei' : 'sans-serif', + // fontFamily: 'Arial, Verdana, sans-serif', + fontSize: 12, + fontStyle: 'normal', + fontWeight: 'normal' + }, + // http://blogs.adobe.com/webplatform/2014/02/24/using-blend-modes-in-html-canvas/ + // https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/globalCompositeOperation + // Default is source-over + blendMode: null, + stateAnimation: { + duration: 300, + easing: 'cubicOut' + }, + animation: 'auto', + animationDuration: 1000, + animationDurationUpdate: 500, + animationEasing: 'cubicInOut', + animationEasingUpdate: 'cubicInOut', + animationThreshold: 2000, + // Configuration for progressive/incremental rendering + progressiveThreshold: 3000, + progressive: 400, + // Threshold of if use single hover layer to optimize. + // It is recommended that `hoverLayerThreshold` is equivalent to or less than + // `progressiveThreshold`, otherwise hover will cause restart of progressive, + // which is unexpected. + // see example <echarts/test/heatmap-large.html>. + hoverLayerThreshold: 3000, + // See: module:echarts/scale/Time + useUTC: false + }; + + var VISUAL_DIMENSIONS = createHashMap(['tooltip', 'label', 'itemName', 'itemId', 'itemGroupId', 'itemChildGroupId', 'seriesName']); + var SOURCE_FORMAT_ORIGINAL = 'original'; + var SOURCE_FORMAT_ARRAY_ROWS = 'arrayRows'; + var SOURCE_FORMAT_OBJECT_ROWS = 'objectRows'; + var SOURCE_FORMAT_KEYED_COLUMNS = 'keyedColumns'; + var SOURCE_FORMAT_TYPED_ARRAY = 'typedArray'; + var SOURCE_FORMAT_UNKNOWN = 'unknown'; + var SERIES_LAYOUT_BY_COLUMN = 'column'; + var SERIES_LAYOUT_BY_ROW = 'row'; + + // The result of `guessOrdinal`. + var BE_ORDINAL = { + Must: 1, + Might: 2, + Not: 3 // Other cases + }; + + var innerGlobalModel = makeInner(); + /** + * MUST be called before mergeOption of all series. + */ + function resetSourceDefaulter(ecModel) { + // `datasetMap` is used to make default encode. + innerGlobalModel(ecModel).datasetMap = createHashMap(); + } + /** + * [The strategy of the arrengment of data dimensions for dataset]: + * "value way": all axes are non-category axes. So series one by one take + * several (the number is coordSysDims.length) dimensions from dataset. + * The result of data arrengment of data dimensions like: + * | ser0_x | ser0_y | ser1_x | ser1_y | ser2_x | ser2_y | + * "category way": at least one axis is category axis. So the the first data + * dimension is always mapped to the first category axis and shared by + * all of the series. The other data dimensions are taken by series like + * "value way" does. + * The result of data arrengment of data dimensions like: + * | ser_shared_x | ser0_y | ser1_y | ser2_y | + * + * @return encode Never be `null/undefined`. + */ + function makeSeriesEncodeForAxisCoordSys(coordDimensions, seriesModel, source) { + var encode = {}; + var datasetModel = querySeriesUpstreamDatasetModel(seriesModel); + // Currently only make default when using dataset, util more reqirements occur. + if (!datasetModel || !coordDimensions) { + return encode; + } + var encodeItemName = []; + var encodeSeriesName = []; + var ecModel = seriesModel.ecModel; + var datasetMap = innerGlobalModel(ecModel).datasetMap; + var key = datasetModel.uid + '_' + source.seriesLayoutBy; + var baseCategoryDimIndex; + var categoryWayValueDimStart; + coordDimensions = coordDimensions.slice(); + each(coordDimensions, function (coordDimInfoLoose, coordDimIdx) { + var coordDimInfo = isObject(coordDimInfoLoose) ? coordDimInfoLoose : coordDimensions[coordDimIdx] = { + name: coordDimInfoLoose + }; + if (coordDimInfo.type === 'ordinal' && baseCategoryDimIndex == null) { + baseCategoryDimIndex = coordDimIdx; + categoryWayValueDimStart = getDataDimCountOnCoordDim(coordDimInfo); + } + encode[coordDimInfo.name] = []; + }); + var datasetRecord = datasetMap.get(key) || datasetMap.set(key, { + categoryWayDim: categoryWayValueDimStart, + valueWayDim: 0 + }); + // TODO + // Auto detect first time axis and do arrangement. + each(coordDimensions, function (coordDimInfo, coordDimIdx) { + var coordDimName = coordDimInfo.name; + var count = getDataDimCountOnCoordDim(coordDimInfo); + // In value way. + if (baseCategoryDimIndex == null) { + var start = datasetRecord.valueWayDim; + pushDim(encode[coordDimName], start, count); + pushDim(encodeSeriesName, start, count); + datasetRecord.valueWayDim += count; + // ??? TODO give a better default series name rule? + // especially when encode x y specified. + // consider: when multiple series share one dimension + // category axis, series name should better use + // the other dimension name. On the other hand, use + // both dimensions name. + } + // In category way, the first category axis. + else if (baseCategoryDimIndex === coordDimIdx) { + pushDim(encode[coordDimName], 0, count); + pushDim(encodeItemName, 0, count); + } + // In category way, the other axis. + else { + var start = datasetRecord.categoryWayDim; + pushDim(encode[coordDimName], start, count); + pushDim(encodeSeriesName, start, count); + datasetRecord.categoryWayDim += count; + } + }); + function pushDim(dimIdxArr, idxFrom, idxCount) { + for (var i = 0; i < idxCount; i++) { + dimIdxArr.push(idxFrom + i); + } + } + function getDataDimCountOnCoordDim(coordDimInfo) { + var dimsDef = coordDimInfo.dimsDef; + return dimsDef ? dimsDef.length : 1; + } + encodeItemName.length && (encode.itemName = encodeItemName); + encodeSeriesName.length && (encode.seriesName = encodeSeriesName); + return encode; + } + /** + * Work for data like [{name: ..., value: ...}, ...]. + * + * @return encode Never be `null/undefined`. + */ + function makeSeriesEncodeForNameBased(seriesModel, source, dimCount) { + var encode = {}; + var datasetModel = querySeriesUpstreamDatasetModel(seriesModel); + // Currently only make default when using dataset, util more reqirements occur. + if (!datasetModel) { + return encode; + } + var sourceFormat = source.sourceFormat; + var dimensionsDefine = source.dimensionsDefine; + var potentialNameDimIndex; + if (sourceFormat === SOURCE_FORMAT_OBJECT_ROWS || sourceFormat === SOURCE_FORMAT_KEYED_COLUMNS) { + each(dimensionsDefine, function (dim, idx) { + if ((isObject(dim) ? dim.name : dim) === 'name') { + potentialNameDimIndex = idx; + } + }); + } + var idxResult = function () { + var idxRes0 = {}; + var idxRes1 = {}; + var guessRecords = []; + // 5 is an experience value. + for (var i = 0, len = Math.min(5, dimCount); i < len; i++) { + var guessResult = doGuessOrdinal(source.data, sourceFormat, source.seriesLayoutBy, dimensionsDefine, source.startIndex, i); + guessRecords.push(guessResult); + var isPureNumber = guessResult === BE_ORDINAL.Not; + // [Strategy of idxRes0]: find the first BE_ORDINAL.Not as the value dim, + // and then find a name dim with the priority: + // "BE_ORDINAL.Might|BE_ORDINAL.Must" > "other dim" > "the value dim itself". + if (isPureNumber && idxRes0.v == null && i !== potentialNameDimIndex) { + idxRes0.v = i; + } + if (idxRes0.n == null || idxRes0.n === idxRes0.v || !isPureNumber && guessRecords[idxRes0.n] === BE_ORDINAL.Not) { + idxRes0.n = i; + } + if (fulfilled(idxRes0) && guessRecords[idxRes0.n] !== BE_ORDINAL.Not) { + return idxRes0; + } + // [Strategy of idxRes1]: if idxRes0 not satisfied (that is, no BE_ORDINAL.Not), + // find the first BE_ORDINAL.Might as the value dim, + // and then find a name dim with the priority: + // "other dim" > "the value dim itself". + // That is for backward compat: number-like (e.g., `'3'`, `'55'`) can be + // treated as number. + if (!isPureNumber) { + if (guessResult === BE_ORDINAL.Might && idxRes1.v == null && i !== potentialNameDimIndex) { + idxRes1.v = i; + } + if (idxRes1.n == null || idxRes1.n === idxRes1.v) { + idxRes1.n = i; + } + } + } + function fulfilled(idxResult) { + return idxResult.v != null && idxResult.n != null; + } + return fulfilled(idxRes0) ? idxRes0 : fulfilled(idxRes1) ? idxRes1 : null; + }(); + if (idxResult) { + encode.value = [idxResult.v]; + // `potentialNameDimIndex` has highest priority. + var nameDimIndex = potentialNameDimIndex != null ? potentialNameDimIndex : idxResult.n; + // By default, label uses itemName in charts. + // So we don't set encodeLabel here. + encode.itemName = [nameDimIndex]; + encode.seriesName = [nameDimIndex]; + } + return encode; + } + /** + * @return If return null/undefined, indicate that should not use datasetModel. + */ + function querySeriesUpstreamDatasetModel(seriesModel) { + // Caution: consider the scenario: + // A dataset is declared and a series is not expected to use the dataset, + // and at the beginning `setOption({series: { noData })` (just prepare other + // option but no data), then `setOption({series: {data: [...]}); In this case, + // the user should set an empty array to avoid that dataset is used by default. + var thisData = seriesModel.get('data', true); + if (!thisData) { + return queryReferringComponents(seriesModel.ecModel, 'dataset', { + index: seriesModel.get('datasetIndex', true), + id: seriesModel.get('datasetId', true) + }, SINGLE_REFERRING).models[0]; + } + } + /** + * @return Always return an array event empty. + */ + function queryDatasetUpstreamDatasetModels(datasetModel) { + // Only these attributes declared, we by default reference to `datasetIndex: 0`. + // Otherwise, no reference. + if (!datasetModel.get('transform', true) && !datasetModel.get('fromTransformResult', true)) { + return []; + } + return queryReferringComponents(datasetModel.ecModel, 'dataset', { + index: datasetModel.get('fromDatasetIndex', true), + id: datasetModel.get('fromDatasetId', true) + }, SINGLE_REFERRING).models; + } + /** + * The rule should not be complex, otherwise user might not + * be able to known where the data is wrong. + * The code is ugly, but how to make it neat? + */ + function guessOrdinal(source, dimIndex) { + return doGuessOrdinal(source.data, source.sourceFormat, source.seriesLayoutBy, source.dimensionsDefine, source.startIndex, dimIndex); + } + // dimIndex may be overflow source data. + // return {BE_ORDINAL} + function doGuessOrdinal(data, sourceFormat, seriesLayoutBy, dimensionsDefine, startIndex, dimIndex) { + var result; + // Experience value. + var maxLoop = 5; + if (isTypedArray(data)) { + return BE_ORDINAL.Not; + } + // When sourceType is 'objectRows' or 'keyedColumns', dimensionsDefine + // always exists in source. + var dimName; + var dimType; + if (dimensionsDefine) { + var dimDefItem = dimensionsDefine[dimIndex]; + if (isObject(dimDefItem)) { + dimName = dimDefItem.name; + dimType = dimDefItem.type; + } else if (isString(dimDefItem)) { + dimName = dimDefItem; + } + } + if (dimType != null) { + return dimType === 'ordinal' ? BE_ORDINAL.Must : BE_ORDINAL.Not; + } + if (sourceFormat === SOURCE_FORMAT_ARRAY_ROWS) { + var dataArrayRows = data; + if (seriesLayoutBy === SERIES_LAYOUT_BY_ROW) { + var sample = dataArrayRows[dimIndex]; + for (var i = 0; i < (sample || []).length && i < maxLoop; i++) { + if ((result = detectValue(sample[startIndex + i])) != null) { + return result; + } + } + } else { + for (var i = 0; i < dataArrayRows.length && i < maxLoop; i++) { + var row = dataArrayRows[startIndex + i]; + if (row && (result = detectValue(row[dimIndex])) != null) { + return result; + } + } + } + } else if (sourceFormat === SOURCE_FORMAT_OBJECT_ROWS) { + var dataObjectRows = data; + if (!dimName) { + return BE_ORDINAL.Not; + } + for (var i = 0; i < dataObjectRows.length && i < maxLoop; i++) { + var item = dataObjectRows[i]; + if (item && (result = detectValue(item[dimName])) != null) { + return result; + } + } + } else if (sourceFormat === SOURCE_FORMAT_KEYED_COLUMNS) { + var dataKeyedColumns = data; + if (!dimName) { + return BE_ORDINAL.Not; + } + var sample = dataKeyedColumns[dimName]; + if (!sample || isTypedArray(sample)) { + return BE_ORDINAL.Not; + } + for (var i = 0; i < sample.length && i < maxLoop; i++) { + if ((result = detectValue(sample[i])) != null) { + return result; + } + } + } else if (sourceFormat === SOURCE_FORMAT_ORIGINAL) { + var dataOriginal = data; + for (var i = 0; i < dataOriginal.length && i < maxLoop; i++) { + var item = dataOriginal[i]; + var val = getDataItemValue(item); + if (!isArray(val)) { + return BE_ORDINAL.Not; + } + if ((result = detectValue(val[dimIndex])) != null) { + return result; + } + } + } + function detectValue(val) { + var beStr = isString(val); + // Consider usage convenience, '1', '2' will be treated as "number". + // `isFinit('')` get `true`. + if (val != null && isFinite(val) && val !== '') { + return beStr ? BE_ORDINAL.Might : BE_ORDINAL.Not; + } else if (beStr && val !== '-') { + return BE_ORDINAL.Must; + } + } + return BE_ORDINAL.Not; + } + + var internalOptionCreatorMap = createHashMap(); + function registerInternalOptionCreator(mainType, creator) { + assert(internalOptionCreatorMap.get(mainType) == null && creator); + internalOptionCreatorMap.set(mainType, creator); + } + function concatInternalOptions(ecModel, mainType, newCmptOptionList) { + var internalOptionCreator = internalOptionCreatorMap.get(mainType); + if (!internalOptionCreator) { + return newCmptOptionList; + } + var internalOptions = internalOptionCreator(ecModel); + if (!internalOptions) { + return newCmptOptionList; + } + if ("development" !== 'production') { + for (var i = 0; i < internalOptions.length; i++) { + assert(isComponentIdInternal(internalOptions[i])); + } + } + return newCmptOptionList.concat(internalOptions); + } + + var innerColor = makeInner(); + var innerDecal = makeInner(); + var PaletteMixin = /** @class */function () { + function PaletteMixin() {} + PaletteMixin.prototype.getColorFromPalette = function (name, scope, requestNum) { + var defaultPalette = normalizeToArray(this.get('color', true)); + var layeredPalette = this.get('colorLayer', true); + return getFromPalette(this, innerColor, defaultPalette, layeredPalette, name, scope, requestNum); + }; + PaletteMixin.prototype.clearColorPalette = function () { + clearPalette(this, innerColor); + }; + return PaletteMixin; + }(); + function getDecalFromPalette(ecModel, name, scope, requestNum) { + var defaultDecals = normalizeToArray(ecModel.get(['aria', 'decal', 'decals'])); + return getFromPalette(ecModel, innerDecal, defaultDecals, null, name, scope, requestNum); + } + function getNearestPalette(palettes, requestColorNum) { + var paletteNum = palettes.length; + // TODO palettes must be in order + for (var i = 0; i < paletteNum; i++) { + if (palettes[i].length > requestColorNum) { + return palettes[i]; + } + } + return palettes[paletteNum - 1]; + } + /** + * @param name MUST NOT be null/undefined. Otherwise call this function + * twise with the same parameters will get different result. + * @param scope default this. + * @return Can be null/undefined + */ + function getFromPalette(that, inner, defaultPalette, layeredPalette, name, scope, requestNum) { + scope = scope || that; + var scopeFields = inner(scope); + var paletteIdx = scopeFields.paletteIdx || 0; + var paletteNameMap = scopeFields.paletteNameMap = scopeFields.paletteNameMap || {}; + // Use `hasOwnProperty` to avoid conflict with Object.prototype. + if (paletteNameMap.hasOwnProperty(name)) { + return paletteNameMap[name]; + } + var palette = requestNum == null || !layeredPalette ? defaultPalette : getNearestPalette(layeredPalette, requestNum); + // In case can't find in layered color palette. + palette = palette || defaultPalette; + if (!palette || !palette.length) { + return; + } + var pickedPaletteItem = palette[paletteIdx]; + if (name) { + paletteNameMap[name] = pickedPaletteItem; + } + scopeFields.paletteIdx = (paletteIdx + 1) % palette.length; + return pickedPaletteItem; + } + function clearPalette(that, inner) { + inner(that).paletteIdx = 0; + inner(that).paletteNameMap = {}; + } + + // ----------------------- + // Internal method names: + // ----------------------- + var reCreateSeriesIndices; + var assertSeriesInitialized; + var initBase; + var OPTION_INNER_KEY = '\0_ec_inner'; + var OPTION_INNER_VALUE = 1; + var BUITIN_COMPONENTS_MAP = { + grid: 'GridComponent', + polar: 'PolarComponent', + geo: 'GeoComponent', + singleAxis: 'SingleAxisComponent', + parallel: 'ParallelComponent', + calendar: 'CalendarComponent', + graphic: 'GraphicComponent', + toolbox: 'ToolboxComponent', + tooltip: 'TooltipComponent', + axisPointer: 'AxisPointerComponent', + brush: 'BrushComponent', + title: 'TitleComponent', + timeline: 'TimelineComponent', + markPoint: 'MarkPointComponent', + markLine: 'MarkLineComponent', + markArea: 'MarkAreaComponent', + legend: 'LegendComponent', + dataZoom: 'DataZoomComponent', + visualMap: 'VisualMapComponent', + // aria: 'AriaComponent', + // dataset: 'DatasetComponent', + // Dependencies + xAxis: 'GridComponent', + yAxis: 'GridComponent', + angleAxis: 'PolarComponent', + radiusAxis: 'PolarComponent' + }; + var BUILTIN_CHARTS_MAP = { + line: 'LineChart', + bar: 'BarChart', + pie: 'PieChart', + scatter: 'ScatterChart', + radar: 'RadarChart', + map: 'MapChart', + tree: 'TreeChart', + treemap: 'TreemapChart', + graph: 'GraphChart', + gauge: 'GaugeChart', + funnel: 'FunnelChart', + parallel: 'ParallelChart', + sankey: 'SankeyChart', + boxplot: 'BoxplotChart', + candlestick: 'CandlestickChart', + effectScatter: 'EffectScatterChart', + lines: 'LinesChart', + heatmap: 'HeatmapChart', + pictorialBar: 'PictorialBarChart', + themeRiver: 'ThemeRiverChart', + sunburst: 'SunburstChart', + custom: 'CustomChart' + }; + var componetsMissingLogPrinted = {}; + function checkMissingComponents(option) { + each(option, function (componentOption, mainType) { + if (!ComponentModel.hasClass(mainType)) { + var componentImportName = BUITIN_COMPONENTS_MAP[mainType]; + if (componentImportName && !componetsMissingLogPrinted[componentImportName]) { + error("Component " + mainType + " is used but not imported.\nimport { " + componentImportName + " } from 'echarts/components';\necharts.use([" + componentImportName + "]);"); + componetsMissingLogPrinted[componentImportName] = true; + } + } + }); + } + var GlobalModel = /** @class */function (_super) { + __extends(GlobalModel, _super); + function GlobalModel() { + return _super !== null && _super.apply(this, arguments) || this; + } + GlobalModel.prototype.init = function (option, parentModel, ecModel, theme, locale, optionManager) { + theme = theme || {}; + this.option = null; // Mark as not initialized. + this._theme = new Model(theme); + this._locale = new Model(locale); + this._optionManager = optionManager; + }; + GlobalModel.prototype.setOption = function (option, opts, optionPreprocessorFuncs) { + if ("development" !== 'production') { + assert(option != null, 'option is null/undefined'); + assert(option[OPTION_INNER_KEY] !== OPTION_INNER_VALUE, 'please use chart.getOption()'); + } + var innerOpt = normalizeSetOptionInput(opts); + this._optionManager.setOption(option, optionPreprocessorFuncs, innerOpt); + this._resetOption(null, innerOpt); + }; + /** + * @param type null/undefined: reset all. + * 'recreate': force recreate all. + * 'timeline': only reset timeline option + * 'media': only reset media query option + * @return Whether option changed. + */ + GlobalModel.prototype.resetOption = function (type, opt) { + return this._resetOption(type, normalizeSetOptionInput(opt)); + }; + GlobalModel.prototype._resetOption = function (type, opt) { + var optionChanged = false; + var optionManager = this._optionManager; + if (!type || type === 'recreate') { + var baseOption = optionManager.mountOption(type === 'recreate'); + if ("development" !== 'production') { + checkMissingComponents(baseOption); + } + if (!this.option || type === 'recreate') { + initBase(this, baseOption); + } else { + this.restoreData(); + this._mergeOption(baseOption, opt); + } + optionChanged = true; + } + if (type === 'timeline' || type === 'media') { + this.restoreData(); + } + // By design, if `setOption(option2)` at the second time, and `option2` is a `ECUnitOption`, + // it should better not have the same props with `MediaUnit['option']`. + // Because either `option2` or `MediaUnit['option']` will be always merged to "current option" + // rather than original "baseOption". If they both override a prop, the result might be + // unexpected when media state changed after `setOption` called. + // If we really need to modify a props in each `MediaUnit['option']`, use the full version + // (`{baseOption, media}`) in `setOption`. + // For `timeline`, the case is the same. + if (!type || type === 'recreate' || type === 'timeline') { + var timelineOption = optionManager.getTimelineOption(this); + if (timelineOption) { + optionChanged = true; + this._mergeOption(timelineOption, opt); + } + } + if (!type || type === 'recreate' || type === 'media') { + var mediaOptions = optionManager.getMediaOption(this); + if (mediaOptions.length) { + each(mediaOptions, function (mediaOption) { + optionChanged = true; + this._mergeOption(mediaOption, opt); + }, this); + } + } + return optionChanged; + }; + GlobalModel.prototype.mergeOption = function (option) { + this._mergeOption(option, null); + }; + GlobalModel.prototype._mergeOption = function (newOption, opt) { + var option = this.option; + var componentsMap = this._componentsMap; + var componentsCount = this._componentsCount; + var newCmptTypes = []; + var newCmptTypeMap = createHashMap(); + var replaceMergeMainTypeMap = opt && opt.replaceMergeMainTypeMap; + resetSourceDefaulter(this); + // If no component class, merge directly. + // For example: color, animaiton options, etc. + each(newOption, function (componentOption, mainType) { + if (componentOption == null) { + return; + } + if (!ComponentModel.hasClass(mainType)) { + // globalSettingTask.dirty(); + option[mainType] = option[mainType] == null ? clone(componentOption) : merge(option[mainType], componentOption, true); + } else if (mainType) { + newCmptTypes.push(mainType); + newCmptTypeMap.set(mainType, true); + } + }); + if (replaceMergeMainTypeMap) { + // If there is a mainType `xxx` in `replaceMerge` but not declared in option, + // we trade it as it is declared in option as `{xxx: []}`. Because: + // (1) for normal merge, `{xxx: null/undefined}` are the same meaning as `{xxx: []}`. + // (2) some preprocessor may convert some of `{xxx: null/undefined}` to `{xxx: []}`. + replaceMergeMainTypeMap.each(function (val, mainTypeInReplaceMerge) { + if (ComponentModel.hasClass(mainTypeInReplaceMerge) && !newCmptTypeMap.get(mainTypeInReplaceMerge)) { + newCmptTypes.push(mainTypeInReplaceMerge); + newCmptTypeMap.set(mainTypeInReplaceMerge, true); + } + }); + } + ComponentModel.topologicalTravel(newCmptTypes, ComponentModel.getAllClassMainTypes(), visitComponent, this); + function visitComponent(mainType) { + var newCmptOptionList = concatInternalOptions(this, mainType, normalizeToArray(newOption[mainType])); + var oldCmptList = componentsMap.get(mainType); + var mergeMode = + // `!oldCmptList` means init. See the comment in `mappingToExists` + !oldCmptList ? 'replaceAll' : replaceMergeMainTypeMap && replaceMergeMainTypeMap.get(mainType) ? 'replaceMerge' : 'normalMerge'; + var mappingResult = mappingToExists(oldCmptList, newCmptOptionList, mergeMode); + // Set mainType and complete subType. + setComponentTypeToKeyInfo(mappingResult, mainType, ComponentModel); + // Empty it before the travel, in order to prevent `this._componentsMap` + // from being used in the `init`/`mergeOption`/`optionUpdated` of some + // components, which is probably incorrect logic. + option[mainType] = null; + componentsMap.set(mainType, null); + componentsCount.set(mainType, 0); + var optionsByMainType = []; + var cmptsByMainType = []; + var cmptsCountByMainType = 0; + var tooltipExists; + var tooltipWarningLogged; + each(mappingResult, function (resultItem, index) { + var componentModel = resultItem.existing; + var newCmptOption = resultItem.newOption; + if (!newCmptOption) { + if (componentModel) { + // Consider where is no new option and should be merged using {}, + // see removeEdgeAndAdd in topologicalTravel and + // ComponentModel.getAllClassMainTypes. + componentModel.mergeOption({}, this); + componentModel.optionUpdated({}, false); + } + // If no both `resultItem.exist` and `resultItem.option`, + // either it is in `replaceMerge` and not matched by any id, + // or it has been removed in previous `replaceMerge` and left a "hole" in this component index. + } else { + var isSeriesType = mainType === 'series'; + var ComponentModelClass = ComponentModel.getClass(mainType, resultItem.keyInfo.subType, !isSeriesType // Give a more detailed warn later if series don't exists + ); + + if (!ComponentModelClass) { + if ("development" !== 'production') { + var subType = resultItem.keyInfo.subType; + var seriesImportName = BUILTIN_CHARTS_MAP[subType]; + if (!componetsMissingLogPrinted[subType]) { + componetsMissingLogPrinted[subType] = true; + if (seriesImportName) { + error("Series " + subType + " is used but not imported.\nimport { " + seriesImportName + " } from 'echarts/charts';\necharts.use([" + seriesImportName + "]);"); + } else { + error("Unknown series " + subType); + } + } + } + return; + } + // TODO Before multiple tooltips get supported, we do this check to avoid unexpected exception. + if (mainType === 'tooltip') { + if (tooltipExists) { + if ("development" !== 'production') { + if (!tooltipWarningLogged) { + warn('Currently only one tooltip component is allowed.'); + tooltipWarningLogged = true; + } + } + return; + } + tooltipExists = true; + } + if (componentModel && componentModel.constructor === ComponentModelClass) { + componentModel.name = resultItem.keyInfo.name; + // componentModel.settingTask && componentModel.settingTask.dirty(); + componentModel.mergeOption(newCmptOption, this); + componentModel.optionUpdated(newCmptOption, false); + } else { + // PENDING Global as parent ? + var extraOpt = extend({ + componentIndex: index + }, resultItem.keyInfo); + componentModel = new ComponentModelClass(newCmptOption, this, this, extraOpt); + // Assign `keyInfo` + extend(componentModel, extraOpt); + if (resultItem.brandNew) { + componentModel.__requireNewView = true; + } + componentModel.init(newCmptOption, this, this); + // Call optionUpdated after init. + // newCmptOption has been used as componentModel.option + // and may be merged with theme and default, so pass null + // to avoid confusion. + componentModel.optionUpdated(null, true); + } + } + if (componentModel) { + optionsByMainType.push(componentModel.option); + cmptsByMainType.push(componentModel); + cmptsCountByMainType++; + } else { + // Always do assign to avoid elided item in array. + optionsByMainType.push(void 0); + cmptsByMainType.push(void 0); + } + }, this); + option[mainType] = optionsByMainType; + componentsMap.set(mainType, cmptsByMainType); + componentsCount.set(mainType, cmptsCountByMainType); + // Backup series for filtering. + if (mainType === 'series') { + reCreateSeriesIndices(this); + } + } + // If no series declared, ensure `_seriesIndices` initialized. + if (!this._seriesIndices) { + reCreateSeriesIndices(this); + } + }; + /** + * Get option for output (cloned option and inner info removed) + */ + GlobalModel.prototype.getOption = function () { + var option = clone(this.option); + each(option, function (optInMainType, mainType) { + if (ComponentModel.hasClass(mainType)) { + var opts = normalizeToArray(optInMainType); + // Inner cmpts need to be removed. + // Inner cmpts might not be at last since ec5.0, but still + // compatible for users: if inner cmpt at last, splice the returned array. + var realLen = opts.length; + var metNonInner = false; + for (var i = realLen - 1; i >= 0; i--) { + // Remove options with inner id. + if (opts[i] && !isComponentIdInternal(opts[i])) { + metNonInner = true; + } else { + opts[i] = null; + !metNonInner && realLen--; + } + } + opts.length = realLen; + option[mainType] = opts; + } + }); + delete option[OPTION_INNER_KEY]; + return option; + }; + GlobalModel.prototype.getTheme = function () { + return this._theme; + }; + GlobalModel.prototype.getLocaleModel = function () { + return this._locale; + }; + GlobalModel.prototype.setUpdatePayload = function (payload) { + this._payload = payload; + }; + GlobalModel.prototype.getUpdatePayload = function () { + return this._payload; + }; + /** + * @param idx If not specified, return the first one. + */ + GlobalModel.prototype.getComponent = function (mainType, idx) { + var list = this._componentsMap.get(mainType); + if (list) { + var cmpt = list[idx || 0]; + if (cmpt) { + return cmpt; + } else if (idx == null) { + for (var i = 0; i < list.length; i++) { + if (list[i]) { + return list[i]; + } + } + } + } + }; + /** + * @return Never be null/undefined. + */ + GlobalModel.prototype.queryComponents = function (condition) { + var mainType = condition.mainType; + if (!mainType) { + return []; + } + var index = condition.index; + var id = condition.id; + var name = condition.name; + var cmpts = this._componentsMap.get(mainType); + if (!cmpts || !cmpts.length) { + return []; + } + var result; + if (index != null) { + result = []; + each(normalizeToArray(index), function (idx) { + cmpts[idx] && result.push(cmpts[idx]); + }); + } else if (id != null) { + result = queryByIdOrName('id', id, cmpts); + } else if (name != null) { + result = queryByIdOrName('name', name, cmpts); + } else { + // Return all non-empty components in that mainType + result = filter(cmpts, function (cmpt) { + return !!cmpt; + }); + } + return filterBySubType(result, condition); + }; + /** + * The interface is different from queryComponents, + * which is convenient for inner usage. + * + * @usage + * let result = findComponents( + * {mainType: 'dataZoom', query: {dataZoomId: 'abc'}} + * ); + * let result = findComponents( + * {mainType: 'series', subType: 'pie', query: {seriesName: 'uio'}} + * ); + * let result = findComponents( + * {mainType: 'series', + * filter: function (model, index) {...}} + * ); + * // result like [component0, componnet1, ...] + */ + GlobalModel.prototype.findComponents = function (condition) { + var query = condition.query; + var mainType = condition.mainType; + var queryCond = getQueryCond(query); + var result = queryCond ? this.queryComponents(queryCond) + // Retrieve all non-empty components. + : filter(this._componentsMap.get(mainType), function (cmpt) { + return !!cmpt; + }); + return doFilter(filterBySubType(result, condition)); + function getQueryCond(q) { + var indexAttr = mainType + 'Index'; + var idAttr = mainType + 'Id'; + var nameAttr = mainType + 'Name'; + return q && (q[indexAttr] != null || q[idAttr] != null || q[nameAttr] != null) ? { + mainType: mainType, + // subType will be filtered finally. + index: q[indexAttr], + id: q[idAttr], + name: q[nameAttr] + } : null; + } + function doFilter(res) { + return condition.filter ? filter(res, condition.filter) : res; + } + }; + GlobalModel.prototype.eachComponent = function (mainType, cb, context) { + var componentsMap = this._componentsMap; + if (isFunction(mainType)) { + var ctxForAll_1 = cb; + var cbForAll_1 = mainType; + componentsMap.each(function (cmpts, componentType) { + for (var i = 0; cmpts && i < cmpts.length; i++) { + var cmpt = cmpts[i]; + cmpt && cbForAll_1.call(ctxForAll_1, componentType, cmpt, cmpt.componentIndex); + } + }); + } else { + var cmpts = isString(mainType) ? componentsMap.get(mainType) : isObject(mainType) ? this.findComponents(mainType) : null; + for (var i = 0; cmpts && i < cmpts.length; i++) { + var cmpt = cmpts[i]; + cmpt && cb.call(context, cmpt, cmpt.componentIndex); + } + } + }; + /** + * Get series list before filtered by name. + */ + GlobalModel.prototype.getSeriesByName = function (name) { + var nameStr = convertOptionIdName(name, null); + return filter(this._componentsMap.get('series'), function (oneSeries) { + return !!oneSeries && nameStr != null && oneSeries.name === nameStr; + }); + }; + /** + * Get series list before filtered by index. + */ + GlobalModel.prototype.getSeriesByIndex = function (seriesIndex) { + return this._componentsMap.get('series')[seriesIndex]; + }; + /** + * Get series list before filtered by type. + * FIXME: rename to getRawSeriesByType? + */ + GlobalModel.prototype.getSeriesByType = function (subType) { + return filter(this._componentsMap.get('series'), function (oneSeries) { + return !!oneSeries && oneSeries.subType === subType; + }); + }; + /** + * Get all series before filtered. + */ + GlobalModel.prototype.getSeries = function () { + return filter(this._componentsMap.get('series'), function (oneSeries) { + return !!oneSeries; + }); + }; + /** + * Count series before filtered. + */ + GlobalModel.prototype.getSeriesCount = function () { + return this._componentsCount.get('series'); + }; + /** + * After filtering, series may be different + * from raw series. + */ + GlobalModel.prototype.eachSeries = function (cb, context) { + assertSeriesInitialized(this); + each(this._seriesIndices, function (rawSeriesIndex) { + var series = this._componentsMap.get('series')[rawSeriesIndex]; + cb.call(context, series, rawSeriesIndex); + }, this); + }; + /** + * Iterate raw series before filtered. + * + * @param {Function} cb + * @param {*} context + */ + GlobalModel.prototype.eachRawSeries = function (cb, context) { + each(this._componentsMap.get('series'), function (series) { + series && cb.call(context, series, series.componentIndex); + }); + }; + /** + * After filtering, series may be different. + * from raw series. + */ + GlobalModel.prototype.eachSeriesByType = function (subType, cb, context) { + assertSeriesInitialized(this); + each(this._seriesIndices, function (rawSeriesIndex) { + var series = this._componentsMap.get('series')[rawSeriesIndex]; + if (series.subType === subType) { + cb.call(context, series, rawSeriesIndex); + } + }, this); + }; + /** + * Iterate raw series before filtered of given type. + */ + GlobalModel.prototype.eachRawSeriesByType = function (subType, cb, context) { + return each(this.getSeriesByType(subType), cb, context); + }; + GlobalModel.prototype.isSeriesFiltered = function (seriesModel) { + assertSeriesInitialized(this); + return this._seriesIndicesMap.get(seriesModel.componentIndex) == null; + }; + GlobalModel.prototype.getCurrentSeriesIndices = function () { + return (this._seriesIndices || []).slice(); + }; + GlobalModel.prototype.filterSeries = function (cb, context) { + assertSeriesInitialized(this); + var newSeriesIndices = []; + each(this._seriesIndices, function (seriesRawIdx) { + var series = this._componentsMap.get('series')[seriesRawIdx]; + cb.call(context, series, seriesRawIdx) && newSeriesIndices.push(seriesRawIdx); + }, this); + this._seriesIndices = newSeriesIndices; + this._seriesIndicesMap = createHashMap(newSeriesIndices); + }; + GlobalModel.prototype.restoreData = function (payload) { + reCreateSeriesIndices(this); + var componentsMap = this._componentsMap; + var componentTypes = []; + componentsMap.each(function (components, componentType) { + if (ComponentModel.hasClass(componentType)) { + componentTypes.push(componentType); + } + }); + ComponentModel.topologicalTravel(componentTypes, ComponentModel.getAllClassMainTypes(), function (componentType) { + each(componentsMap.get(componentType), function (component) { + if (component && (componentType !== 'series' || !isNotTargetSeries(component, payload))) { + component.restoreData(); + } + }); + }); + }; + GlobalModel.internalField = function () { + reCreateSeriesIndices = function (ecModel) { + var seriesIndices = ecModel._seriesIndices = []; + each(ecModel._componentsMap.get('series'), function (series) { + // series may have been removed by `replaceMerge`. + series && seriesIndices.push(series.componentIndex); + }); + ecModel._seriesIndicesMap = createHashMap(seriesIndices); + }; + assertSeriesInitialized = function (ecModel) { + // Components that use _seriesIndices should depends on series component, + // which make sure that their initialization is after series. + if ("development" !== 'production') { + if (!ecModel._seriesIndices) { + throw new Error('Option should contains series.'); + } + } + }; + initBase = function (ecModel, baseOption) { + // Using OPTION_INNER_KEY to mark that this option cannot be used outside, + // i.e. `chart.setOption(chart.getModel().option);` is forbidden. + ecModel.option = {}; + ecModel.option[OPTION_INNER_KEY] = OPTION_INNER_VALUE; + // Init with series: [], in case of calling findSeries method + // before series initialized. + ecModel._componentsMap = createHashMap({ + series: [] + }); + ecModel._componentsCount = createHashMap(); + // If user spefied `option.aria`, aria will be enable. This detection should be + // performed before theme and globalDefault merge. + var airaOption = baseOption.aria; + if (isObject(airaOption) && airaOption.enabled == null) { + airaOption.enabled = true; + } + mergeTheme(baseOption, ecModel._theme.option); + // TODO Needs clone when merging to the unexisted property + merge(baseOption, globalDefault, false); + ecModel._mergeOption(baseOption, null); + }; + }(); + return GlobalModel; + }(Model); + function isNotTargetSeries(seriesModel, payload) { + if (payload) { + var index = payload.seriesIndex; + var id = payload.seriesId; + var name_1 = payload.seriesName; + return index != null && seriesModel.componentIndex !== index || id != null && seriesModel.id !== id || name_1 != null && seriesModel.name !== name_1; + } + } + function mergeTheme(option, theme) { + // PENDING + // NOT use `colorLayer` in theme if option has `color` + var notMergeColorLayer = option.color && !option.colorLayer; + each(theme, function (themeItem, name) { + if (name === 'colorLayer' && notMergeColorLayer) { + return; + } + // If it is component model mainType, the model handles that merge later. + // otherwise, merge them here. + if (!ComponentModel.hasClass(name)) { + if (typeof themeItem === 'object') { + option[name] = !option[name] ? clone(themeItem) : merge(option[name], themeItem, false); + } else { + if (option[name] == null) { + option[name] = themeItem; + } + } + } + }); + } + function queryByIdOrName(attr, idOrName, cmpts) { + // Here is a break from echarts4: string and number are + // treated as equal. + if (isArray(idOrName)) { + var keyMap_1 = createHashMap(); + each(idOrName, function (idOrNameItem) { + if (idOrNameItem != null) { + var idName = convertOptionIdName(idOrNameItem, null); + idName != null && keyMap_1.set(idOrNameItem, true); + } + }); + return filter(cmpts, function (cmpt) { + return cmpt && keyMap_1.get(cmpt[attr]); + }); + } else { + var idName_1 = convertOptionIdName(idOrName, null); + return filter(cmpts, function (cmpt) { + return cmpt && idName_1 != null && cmpt[attr] === idName_1; + }); + } + } + function filterBySubType(components, condition) { + // Using hasOwnProperty for restrict. Consider + // subType is undefined in user payload. + return condition.hasOwnProperty('subType') ? filter(components, function (cmpt) { + return cmpt && cmpt.subType === condition.subType; + }) : components; + } + function normalizeSetOptionInput(opts) { + var replaceMergeMainTypeMap = createHashMap(); + opts && each(normalizeToArray(opts.replaceMerge), function (mainType) { + if ("development" !== 'production') { + assert(ComponentModel.hasClass(mainType), '"' + mainType + '" is not valid component main type in "replaceMerge"'); + } + replaceMergeMainTypeMap.set(mainType, true); + }); + return { + replaceMergeMainTypeMap: replaceMergeMainTypeMap + }; + } + mixin(GlobalModel, PaletteMixin); + + var availableMethods = ['getDom', 'getZr', 'getWidth', 'getHeight', 'getDevicePixelRatio', 'dispatchAction', 'isSSR', 'isDisposed', 'on', 'off', 'getDataURL', 'getConnectedDataURL', + // 'getModel', + 'getOption', + // 'getViewOfComponentModel', + // 'getViewOfSeriesModel', + 'getId', 'updateLabelLayout']; + var ExtensionAPI = /** @class */function () { + function ExtensionAPI(ecInstance) { + each(availableMethods, function (methodName) { + this[methodName] = bind(ecInstance[methodName], ecInstance); + }, this); + } + return ExtensionAPI; + }(); + + var coordinateSystemCreators = {}; + var CoordinateSystemManager = /** @class */function () { + function CoordinateSystemManager() { + this._coordinateSystems = []; + } + CoordinateSystemManager.prototype.create = function (ecModel, api) { + var coordinateSystems = []; + each(coordinateSystemCreators, function (creator, type) { + var list = creator.create(ecModel, api); + coordinateSystems = coordinateSystems.concat(list || []); + }); + this._coordinateSystems = coordinateSystems; + }; + CoordinateSystemManager.prototype.update = function (ecModel, api) { + each(this._coordinateSystems, function (coordSys) { + coordSys.update && coordSys.update(ecModel, api); + }); + }; + CoordinateSystemManager.prototype.getCoordinateSystems = function () { + return this._coordinateSystems.slice(); + }; + CoordinateSystemManager.register = function (type, creator) { + coordinateSystemCreators[type] = creator; + }; + CoordinateSystemManager.get = function (type) { + return coordinateSystemCreators[type]; + }; + return CoordinateSystemManager; + }(); + + var QUERY_REG = /^(min|max)?(.+)$/; + // Key: mainType + // type FakeComponentsMap = HashMap<(MappingExistingItem & { subType: string })[]>; + /** + * TERM EXPLANATIONS: + * See `ECOption` and `ECUnitOption` in `src/util/types.ts`. + */ + var OptionManager = /** @class */function () { + // timeline.notMerge is not supported in ec3. Firstly there is rearly + // case that notMerge is needed. Secondly supporting 'notMerge' requires + // rawOption cloned and backuped when timeline changed, which does no + // good to performance. What's more, that both timeline and setOption + // method supply 'notMerge' brings complex and some problems. + // Consider this case: + // (step1) chart.setOption({timeline: {notMerge: false}, ...}, false); + // (step2) chart.setOption({timeline: {notMerge: true}, ...}, false); + function OptionManager(api) { + this._timelineOptions = []; + this._mediaList = []; + /** + * -1, means default. + * empty means no media. + */ + this._currentMediaIndices = []; + this._api = api; + } + OptionManager.prototype.setOption = function (rawOption, optionPreprocessorFuncs, opt) { + if (rawOption) { + // That set dat primitive is dangerous if user reuse the data when setOption again. + each(normalizeToArray(rawOption.series), function (series) { + series && series.data && isTypedArray(series.data) && setAsPrimitive(series.data); + }); + each(normalizeToArray(rawOption.dataset), function (dataset) { + dataset && dataset.source && isTypedArray(dataset.source) && setAsPrimitive(dataset.source); + }); + } + // Caution: some series modify option data, if do not clone, + // it should ensure that the repeat modify correctly + // (create a new object when modify itself). + rawOption = clone(rawOption); + // FIXME + // If some property is set in timeline options or media option but + // not set in baseOption, a warning should be given. + var optionBackup = this._optionBackup; + var newParsedOption = parseRawOption(rawOption, optionPreprocessorFuncs, !optionBackup); + this._newBaseOption = newParsedOption.baseOption; + // For setOption at second time (using merge mode); + if (optionBackup) { + // FIXME + // the restore merge solution is essentially incorrect. + // the mapping can not be 100% consistent with ecModel, which probably brings + // potential bug! + // The first merge is delayed, because in most cases, users do not call `setOption` twice. + // let fakeCmptsMap = this._fakeCmptsMap; + // if (!fakeCmptsMap) { + // fakeCmptsMap = this._fakeCmptsMap = createHashMap(); + // mergeToBackupOption(fakeCmptsMap, null, optionBackup.baseOption, null); + // } + // mergeToBackupOption( + // fakeCmptsMap, optionBackup.baseOption, newParsedOption.baseOption, opt + // ); + // For simplicity, timeline options and media options do not support merge, + // that is, if you `setOption` twice and both has timeline options, the latter + // timeline options will not be merged to the former, but just substitute them. + if (newParsedOption.timelineOptions.length) { + optionBackup.timelineOptions = newParsedOption.timelineOptions; + } + if (newParsedOption.mediaList.length) { + optionBackup.mediaList = newParsedOption.mediaList; + } + if (newParsedOption.mediaDefault) { + optionBackup.mediaDefault = newParsedOption.mediaDefault; + } + } else { + this._optionBackup = newParsedOption; + } + }; + OptionManager.prototype.mountOption = function (isRecreate) { + var optionBackup = this._optionBackup; + this._timelineOptions = optionBackup.timelineOptions; + this._mediaList = optionBackup.mediaList; + this._mediaDefault = optionBackup.mediaDefault; + this._currentMediaIndices = []; + return clone(isRecreate + // this._optionBackup.baseOption, which is created at the first `setOption` + // called, and is merged into every new option by inner method `mergeToBackupOption` + // each time `setOption` called, can be only used in `isRecreate`, because + // its reliability is under suspicion. In other cases option merge is + // performed by `model.mergeOption`. + ? optionBackup.baseOption : this._newBaseOption); + }; + OptionManager.prototype.getTimelineOption = function (ecModel) { + var option; + var timelineOptions = this._timelineOptions; + if (timelineOptions.length) { + // getTimelineOption can only be called after ecModel inited, + // so we can get currentIndex from timelineModel. + var timelineModel = ecModel.getComponent('timeline'); + if (timelineModel) { + option = clone( + // FIXME:TS as TimelineModel or quivlant interface + timelineOptions[timelineModel.getCurrentIndex()]); + } + } + return option; + }; + OptionManager.prototype.getMediaOption = function (ecModel) { + var ecWidth = this._api.getWidth(); + var ecHeight = this._api.getHeight(); + var mediaList = this._mediaList; + var mediaDefault = this._mediaDefault; + var indices = []; + var result = []; + // No media defined. + if (!mediaList.length && !mediaDefault) { + return result; + } + // Multi media may be applied, the latter defined media has higher priority. + for (var i = 0, len = mediaList.length; i < len; i++) { + if (applyMediaQuery(mediaList[i].query, ecWidth, ecHeight)) { + indices.push(i); + } + } + // FIXME + // Whether mediaDefault should force users to provide? Otherwise + // the change by media query can not be recorvered. + if (!indices.length && mediaDefault) { + indices = [-1]; + } + if (indices.length && !indicesEquals(indices, this._currentMediaIndices)) { + result = map(indices, function (index) { + return clone(index === -1 ? mediaDefault.option : mediaList[index].option); + }); + } + // Otherwise return nothing. + this._currentMediaIndices = indices; + return result; + }; + return OptionManager; + }(); + /** + * [RAW_OPTION_PATTERNS] + * (Note: "series: []" represents all other props in `ECUnitOption`) + * + * (1) No prop "baseOption" declared: + * Root option is used as "baseOption" (except prop "options" and "media"). + * ```js + * option = { + * series: [], + * timeline: {}, + * options: [], + * }; + * option = { + * series: [], + * media: {}, + * }; + * option = { + * series: [], + * timeline: {}, + * options: [], + * media: {}, + * } + * ``` + * + * (2) Prop "baseOption" declared: + * If "baseOption" declared, `ECUnitOption` props can only be declared + * inside "baseOption" except prop "timeline" (compat ec2). + * ```js + * option = { + * baseOption: { + * timeline: {}, + * series: [], + * }, + * options: [] + * }; + * option = { + * baseOption: { + * series: [], + * }, + * media: [] + * }; + * option = { + * baseOption: { + * timeline: {}, + * series: [], + * }, + * options: [] + * media: [] + * }; + * option = { + * // ec3 compat ec2: allow (only) `timeline` declared + * // outside baseOption. Keep this setting for compat. + * timeline: {}, + * baseOption: { + * series: [], + * }, + * options: [], + * media: [] + * }; + * ``` + */ + function parseRawOption( + // `rawOption` May be modified + rawOption, optionPreprocessorFuncs, isNew) { + var mediaList = []; + var mediaDefault; + var baseOption; + var declaredBaseOption = rawOption.baseOption; + // Compatible with ec2, [RAW_OPTION_PATTERNS] above. + var timelineOnRoot = rawOption.timeline; + var timelineOptionsOnRoot = rawOption.options; + var mediaOnRoot = rawOption.media; + var hasMedia = !!rawOption.media; + var hasTimeline = !!(timelineOptionsOnRoot || timelineOnRoot || declaredBaseOption && declaredBaseOption.timeline); + if (declaredBaseOption) { + baseOption = declaredBaseOption; + // For merge option. + if (!baseOption.timeline) { + baseOption.timeline = timelineOnRoot; + } + } + // For convenience, enable to use the root option as the `baseOption`: + // `{ ...normalOptionProps, media: [{ ... }, { ... }] }` + else { + if (hasTimeline || hasMedia) { + rawOption.options = rawOption.media = null; + } + baseOption = rawOption; + } + if (hasMedia) { + if (isArray(mediaOnRoot)) { + each(mediaOnRoot, function (singleMedia) { + if ("development" !== 'production') { + // Real case of wrong config. + if (singleMedia && !singleMedia.option && isObject(singleMedia.query) && isObject(singleMedia.query.option)) { + error('Illegal media option. Must be like { media: [ { query: {}, option: {} } ] }'); + } + } + if (singleMedia && singleMedia.option) { + if (singleMedia.query) { + mediaList.push(singleMedia); + } else if (!mediaDefault) { + // Use the first media default. + mediaDefault = singleMedia; + } + } + }); + } else { + if ("development" !== 'production') { + // Real case of wrong config. + error('Illegal media option. Must be an array. Like { media: [ {...}, {...} ] }'); + } + } + } + doPreprocess(baseOption); + each(timelineOptionsOnRoot, function (option) { + return doPreprocess(option); + }); + each(mediaList, function (media) { + return doPreprocess(media.option); + }); + function doPreprocess(option) { + each(optionPreprocessorFuncs, function (preProcess) { + preProcess(option, isNew); + }); + } + return { + baseOption: baseOption, + timelineOptions: timelineOptionsOnRoot || [], + mediaDefault: mediaDefault, + mediaList: mediaList + }; + } + /** + * @see <http://www.w3.org/TR/css3-mediaqueries/#media1> + * Support: width, height, aspectRatio + * Can use max or min as prefix. + */ + function applyMediaQuery(query, ecWidth, ecHeight) { + var realMap = { + width: ecWidth, + height: ecHeight, + aspectratio: ecWidth / ecHeight // lower case for convenience. + }; + + var applicable = true; + each(query, function (value, attr) { + var matched = attr.match(QUERY_REG); + if (!matched || !matched[1] || !matched[2]) { + return; + } + var operator = matched[1]; + var realAttr = matched[2].toLowerCase(); + if (!compare(realMap[realAttr], value, operator)) { + applicable = false; + } + }); + return applicable; + } + function compare(real, expect, operator) { + if (operator === 'min') { + return real >= expect; + } else if (operator === 'max') { + return real <= expect; + } else { + // Equals + return real === expect; + } + } + function indicesEquals(indices1, indices2) { + // indices is always order by asc and has only finite number. + return indices1.join(',') === indices2.join(','); + } + + var each$2 = each; + var isObject$1 = isObject; + var POSSIBLE_STYLES = ['areaStyle', 'lineStyle', 'nodeStyle', 'linkStyle', 'chordStyle', 'label', 'labelLine']; + function compatEC2ItemStyle(opt) { + var itemStyleOpt = opt && opt.itemStyle; + if (!itemStyleOpt) { + return; + } + for (var i = 0, len = POSSIBLE_STYLES.length; i < len; i++) { + var styleName = POSSIBLE_STYLES[i]; + var normalItemStyleOpt = itemStyleOpt.normal; + var emphasisItemStyleOpt = itemStyleOpt.emphasis; + if (normalItemStyleOpt && normalItemStyleOpt[styleName]) { + if ("development" !== 'production') { + deprecateReplaceLog("itemStyle.normal." + styleName, styleName); + } + opt[styleName] = opt[styleName] || {}; + if (!opt[styleName].normal) { + opt[styleName].normal = normalItemStyleOpt[styleName]; + } else { + merge(opt[styleName].normal, normalItemStyleOpt[styleName]); + } + normalItemStyleOpt[styleName] = null; + } + if (emphasisItemStyleOpt && emphasisItemStyleOpt[styleName]) { + if ("development" !== 'production') { + deprecateReplaceLog("itemStyle.emphasis." + styleName, "emphasis." + styleName); + } + opt[styleName] = opt[styleName] || {}; + if (!opt[styleName].emphasis) { + opt[styleName].emphasis = emphasisItemStyleOpt[styleName]; + } else { + merge(opt[styleName].emphasis, emphasisItemStyleOpt[styleName]); + } + emphasisItemStyleOpt[styleName] = null; + } + } + } + function convertNormalEmphasis(opt, optType, useExtend) { + if (opt && opt[optType] && (opt[optType].normal || opt[optType].emphasis)) { + var normalOpt = opt[optType].normal; + var emphasisOpt = opt[optType].emphasis; + if (normalOpt) { + if ("development" !== 'production') { + // eslint-disable-next-line max-len + deprecateLog("'normal' hierarchy in " + optType + " has been removed since 4.0. All style properties are configured in " + optType + " directly now."); + } + // Timeline controlStyle has other properties besides normal and emphasis + if (useExtend) { + opt[optType].normal = opt[optType].emphasis = null; + defaults(opt[optType], normalOpt); + } else { + opt[optType] = normalOpt; + } + } + if (emphasisOpt) { + if ("development" !== 'production') { + deprecateLog(optType + ".emphasis has been changed to emphasis." + optType + " since 4.0"); + } + opt.emphasis = opt.emphasis || {}; + opt.emphasis[optType] = emphasisOpt; + // Also compat the case user mix the style and focus together in ec3 style + // for example: { itemStyle: { normal: {}, emphasis: {focus, shadowBlur} } } + if (emphasisOpt.focus) { + opt.emphasis.focus = emphasisOpt.focus; + } + if (emphasisOpt.blurScope) { + opt.emphasis.blurScope = emphasisOpt.blurScope; + } + } + } + } + function removeEC3NormalStatus(opt) { + convertNormalEmphasis(opt, 'itemStyle'); + convertNormalEmphasis(opt, 'lineStyle'); + convertNormalEmphasis(opt, 'areaStyle'); + convertNormalEmphasis(opt, 'label'); + convertNormalEmphasis(opt, 'labelLine'); + // treemap + convertNormalEmphasis(opt, 'upperLabel'); + // graph + convertNormalEmphasis(opt, 'edgeLabel'); + } + function compatTextStyle(opt, propName) { + // Check whether is not object (string\null\undefined ...) + var labelOptSingle = isObject$1(opt) && opt[propName]; + var textStyle = isObject$1(labelOptSingle) && labelOptSingle.textStyle; + if (textStyle) { + if ("development" !== 'production') { + // eslint-disable-next-line max-len + deprecateLog("textStyle hierarchy in " + propName + " has been removed since 4.0. All textStyle properties are configured in " + propName + " directly now."); + } + for (var i = 0, len = TEXT_STYLE_OPTIONS.length; i < len; i++) { + var textPropName = TEXT_STYLE_OPTIONS[i]; + if (textStyle.hasOwnProperty(textPropName)) { + labelOptSingle[textPropName] = textStyle[textPropName]; + } + } + } + } + function compatEC3CommonStyles(opt) { + if (opt) { + removeEC3NormalStatus(opt); + compatTextStyle(opt, 'label'); + opt.emphasis && compatTextStyle(opt.emphasis, 'label'); + } + } + function processSeries(seriesOpt) { + if (!isObject$1(seriesOpt)) { + return; + } + compatEC2ItemStyle(seriesOpt); + removeEC3NormalStatus(seriesOpt); + compatTextStyle(seriesOpt, 'label'); + // treemap + compatTextStyle(seriesOpt, 'upperLabel'); + // graph + compatTextStyle(seriesOpt, 'edgeLabel'); + if (seriesOpt.emphasis) { + compatTextStyle(seriesOpt.emphasis, 'label'); + // treemap + compatTextStyle(seriesOpt.emphasis, 'upperLabel'); + // graph + compatTextStyle(seriesOpt.emphasis, 'edgeLabel'); + } + var markPoint = seriesOpt.markPoint; + if (markPoint) { + compatEC2ItemStyle(markPoint); + compatEC3CommonStyles(markPoint); + } + var markLine = seriesOpt.markLine; + if (markLine) { + compatEC2ItemStyle(markLine); + compatEC3CommonStyles(markLine); + } + var markArea = seriesOpt.markArea; + if (markArea) { + compatEC3CommonStyles(markArea); + } + var data = seriesOpt.data; + // Break with ec3: if `setOption` again, there may be no `type` in option, + // then the backward compat based on option type will not be performed. + if (seriesOpt.type === 'graph') { + data = data || seriesOpt.nodes; + var edgeData = seriesOpt.links || seriesOpt.edges; + if (edgeData && !isTypedArray(edgeData)) { + for (var i = 0; i < edgeData.length; i++) { + compatEC3CommonStyles(edgeData[i]); + } + } + each(seriesOpt.categories, function (opt) { + removeEC3NormalStatus(opt); + }); + } + if (data && !isTypedArray(data)) { + for (var i = 0; i < data.length; i++) { + compatEC3CommonStyles(data[i]); + } + } + // mark point data + markPoint = seriesOpt.markPoint; + if (markPoint && markPoint.data) { + var mpData = markPoint.data; + for (var i = 0; i < mpData.length; i++) { + compatEC3CommonStyles(mpData[i]); + } + } + // mark line data + markLine = seriesOpt.markLine; + if (markLine && markLine.data) { + var mlData = markLine.data; + for (var i = 0; i < mlData.length; i++) { + if (isArray(mlData[i])) { + compatEC3CommonStyles(mlData[i][0]); + compatEC3CommonStyles(mlData[i][1]); + } else { + compatEC3CommonStyles(mlData[i]); + } + } + } + // Series + if (seriesOpt.type === 'gauge') { + compatTextStyle(seriesOpt, 'axisLabel'); + compatTextStyle(seriesOpt, 'title'); + compatTextStyle(seriesOpt, 'detail'); + } else if (seriesOpt.type === 'treemap') { + convertNormalEmphasis(seriesOpt.breadcrumb, 'itemStyle'); + each(seriesOpt.levels, function (opt) { + removeEC3NormalStatus(opt); + }); + } else if (seriesOpt.type === 'tree') { + removeEC3NormalStatus(seriesOpt.leaves); + } + // sunburst starts from ec4, so it does not need to compat levels. + } + + function toArr(o) { + return isArray(o) ? o : o ? [o] : []; + } + function toObj(o) { + return (isArray(o) ? o[0] : o) || {}; + } + function globalCompatStyle(option, isTheme) { + each$2(toArr(option.series), function (seriesOpt) { + isObject$1(seriesOpt) && processSeries(seriesOpt); + }); + var axes = ['xAxis', 'yAxis', 'radiusAxis', 'angleAxis', 'singleAxis', 'parallelAxis', 'radar']; + isTheme && axes.push('valueAxis', 'categoryAxis', 'logAxis', 'timeAxis'); + each$2(axes, function (axisName) { + each$2(toArr(option[axisName]), function (axisOpt) { + if (axisOpt) { + compatTextStyle(axisOpt, 'axisLabel'); + compatTextStyle(axisOpt.axisPointer, 'label'); + } + }); + }); + each$2(toArr(option.parallel), function (parallelOpt) { + var parallelAxisDefault = parallelOpt && parallelOpt.parallelAxisDefault; + compatTextStyle(parallelAxisDefault, 'axisLabel'); + compatTextStyle(parallelAxisDefault && parallelAxisDefault.axisPointer, 'label'); + }); + each$2(toArr(option.calendar), function (calendarOpt) { + convertNormalEmphasis(calendarOpt, 'itemStyle'); + compatTextStyle(calendarOpt, 'dayLabel'); + compatTextStyle(calendarOpt, 'monthLabel'); + compatTextStyle(calendarOpt, 'yearLabel'); + }); + // radar.name.textStyle + each$2(toArr(option.radar), function (radarOpt) { + compatTextStyle(radarOpt, 'name'); + // Use axisName instead of name because component has name property + if (radarOpt.name && radarOpt.axisName == null) { + radarOpt.axisName = radarOpt.name; + delete radarOpt.name; + if ("development" !== 'production') { + deprecateLog('name property in radar component has been changed to axisName'); + } + } + if (radarOpt.nameGap != null && radarOpt.axisNameGap == null) { + radarOpt.axisNameGap = radarOpt.nameGap; + delete radarOpt.nameGap; + if ("development" !== 'production') { + deprecateLog('nameGap property in radar component has been changed to axisNameGap'); + } + } + if ("development" !== 'production') { + each$2(radarOpt.indicator, function (indicatorOpt) { + if (indicatorOpt.text) { + deprecateReplaceLog('text', 'name', 'radar.indicator'); + } + }); + } + }); + each$2(toArr(option.geo), function (geoOpt) { + if (isObject$1(geoOpt)) { + compatEC3CommonStyles(geoOpt); + each$2(toArr(geoOpt.regions), function (regionObj) { + compatEC3CommonStyles(regionObj); + }); + } + }); + each$2(toArr(option.timeline), function (timelineOpt) { + compatEC3CommonStyles(timelineOpt); + convertNormalEmphasis(timelineOpt, 'label'); + convertNormalEmphasis(timelineOpt, 'itemStyle'); + convertNormalEmphasis(timelineOpt, 'controlStyle', true); + var data = timelineOpt.data; + isArray(data) && each(data, function (item) { + if (isObject(item)) { + convertNormalEmphasis(item, 'label'); + convertNormalEmphasis(item, 'itemStyle'); + } + }); + }); + each$2(toArr(option.toolbox), function (toolboxOpt) { + convertNormalEmphasis(toolboxOpt, 'iconStyle'); + each$2(toolboxOpt.feature, function (featureOpt) { + convertNormalEmphasis(featureOpt, 'iconStyle'); + }); + }); + compatTextStyle(toObj(option.axisPointer), 'label'); + compatTextStyle(toObj(option.tooltip).axisPointer, 'label'); + // Clean logs + // storedLogs = {}; + } + + function get(opt, path) { + var pathArr = path.split(','); + var obj = opt; + for (var i = 0; i < pathArr.length; i++) { + obj = obj && obj[pathArr[i]]; + if (obj == null) { + break; + } + } + return obj; + } + function set$1(opt, path, val, overwrite) { + var pathArr = path.split(','); + var obj = opt; + var key; + var i = 0; + for (; i < pathArr.length - 1; i++) { + key = pathArr[i]; + if (obj[key] == null) { + obj[key] = {}; + } + obj = obj[key]; + } + if (overwrite || obj[pathArr[i]] == null) { + obj[pathArr[i]] = val; + } + } + function compatLayoutProperties(option) { + option && each(LAYOUT_PROPERTIES, function (prop) { + if (prop[0] in option && !(prop[1] in option)) { + option[prop[1]] = option[prop[0]]; + } + }); + } + var LAYOUT_PROPERTIES = [['x', 'left'], ['y', 'top'], ['x2', 'right'], ['y2', 'bottom']]; + var COMPATITABLE_COMPONENTS = ['grid', 'geo', 'parallel', 'legend', 'toolbox', 'title', 'visualMap', 'dataZoom', 'timeline']; + var BAR_ITEM_STYLE_MAP = [['borderRadius', 'barBorderRadius'], ['borderColor', 'barBorderColor'], ['borderWidth', 'barBorderWidth']]; + function compatBarItemStyle(option) { + var itemStyle = option && option.itemStyle; + if (itemStyle) { + for (var i = 0; i < BAR_ITEM_STYLE_MAP.length; i++) { + var oldName = BAR_ITEM_STYLE_MAP[i][1]; + var newName = BAR_ITEM_STYLE_MAP[i][0]; + if (itemStyle[oldName] != null) { + itemStyle[newName] = itemStyle[oldName]; + if ("development" !== 'production') { + deprecateReplaceLog(oldName, newName); + } + } + } + } + } + function compatPieLabel(option) { + if (!option) { + return; + } + if (option.alignTo === 'edge' && option.margin != null && option.edgeDistance == null) { + if ("development" !== 'production') { + deprecateReplaceLog('label.margin', 'label.edgeDistance', 'pie'); + } + option.edgeDistance = option.margin; + } + } + function compatSunburstState(option) { + if (!option) { + return; + } + if (option.downplay && !option.blur) { + option.blur = option.downplay; + if ("development" !== 'production') { + deprecateReplaceLog('downplay', 'blur', 'sunburst'); + } + } + } + function compatGraphFocus(option) { + if (!option) { + return; + } + if (option.focusNodeAdjacency != null) { + option.emphasis = option.emphasis || {}; + if (option.emphasis.focus == null) { + if ("development" !== 'production') { + deprecateReplaceLog('focusNodeAdjacency', 'emphasis: { focus: \'adjacency\'}', 'graph/sankey'); + } + option.emphasis.focus = 'adjacency'; + } + } + } + function traverseTree(data, cb) { + if (data) { + for (var i = 0; i < data.length; i++) { + cb(data[i]); + data[i] && traverseTree(data[i].children, cb); + } + } + } + function globalBackwardCompat(option, isTheme) { + globalCompatStyle(option, isTheme); + // Make sure series array for model initialization. + option.series = normalizeToArray(option.series); + each(option.series, function (seriesOpt) { + if (!isObject(seriesOpt)) { + return; + } + var seriesType = seriesOpt.type; + if (seriesType === 'line') { + if (seriesOpt.clipOverflow != null) { + seriesOpt.clip = seriesOpt.clipOverflow; + if ("development" !== 'production') { + deprecateReplaceLog('clipOverflow', 'clip', 'line'); + } + } + } else if (seriesType === 'pie' || seriesType === 'gauge') { + if (seriesOpt.clockWise != null) { + seriesOpt.clockwise = seriesOpt.clockWise; + if ("development" !== 'production') { + deprecateReplaceLog('clockWise', 'clockwise'); + } + } + compatPieLabel(seriesOpt.label); + var data = seriesOpt.data; + if (data && !isTypedArray(data)) { + for (var i = 0; i < data.length; i++) { + compatPieLabel(data[i]); + } + } + if (seriesOpt.hoverOffset != null) { + seriesOpt.emphasis = seriesOpt.emphasis || {}; + if (seriesOpt.emphasis.scaleSize = null) { + if ("development" !== 'production') { + deprecateReplaceLog('hoverOffset', 'emphasis.scaleSize'); + } + seriesOpt.emphasis.scaleSize = seriesOpt.hoverOffset; + } + } + } else if (seriesType === 'gauge') { + var pointerColor = get(seriesOpt, 'pointer.color'); + pointerColor != null && set$1(seriesOpt, 'itemStyle.color', pointerColor); + } else if (seriesType === 'bar') { + compatBarItemStyle(seriesOpt); + compatBarItemStyle(seriesOpt.backgroundStyle); + compatBarItemStyle(seriesOpt.emphasis); + var data = seriesOpt.data; + if (data && !isTypedArray(data)) { + for (var i = 0; i < data.length; i++) { + if (typeof data[i] === 'object') { + compatBarItemStyle(data[i]); + compatBarItemStyle(data[i] && data[i].emphasis); + } + } + } + } else if (seriesType === 'sunburst') { + var highlightPolicy = seriesOpt.highlightPolicy; + if (highlightPolicy) { + seriesOpt.emphasis = seriesOpt.emphasis || {}; + if (!seriesOpt.emphasis.focus) { + seriesOpt.emphasis.focus = highlightPolicy; + if ("development" !== 'production') { + deprecateReplaceLog('highlightPolicy', 'emphasis.focus', 'sunburst'); + } + } + } + compatSunburstState(seriesOpt); + traverseTree(seriesOpt.data, compatSunburstState); + } else if (seriesType === 'graph' || seriesType === 'sankey') { + compatGraphFocus(seriesOpt); + // TODO nodes, edges? + } else if (seriesType === 'map') { + if (seriesOpt.mapType && !seriesOpt.map) { + if ("development" !== 'production') { + deprecateReplaceLog('mapType', 'map', 'map'); + } + seriesOpt.map = seriesOpt.mapType; + } + if (seriesOpt.mapLocation) { + if ("development" !== 'production') { + deprecateLog('`mapLocation` is not used anymore.'); + } + defaults(seriesOpt, seriesOpt.mapLocation); + } + } + if (seriesOpt.hoverAnimation != null) { + seriesOpt.emphasis = seriesOpt.emphasis || {}; + if (seriesOpt.emphasis && seriesOpt.emphasis.scale == null) { + if ("development" !== 'production') { + deprecateReplaceLog('hoverAnimation', 'emphasis.scale'); + } + seriesOpt.emphasis.scale = seriesOpt.hoverAnimation; + } + } + compatLayoutProperties(seriesOpt); + }); + // dataRange has changed to visualMap + if (option.dataRange) { + option.visualMap = option.dataRange; + } + each(COMPATITABLE_COMPONENTS, function (componentName) { + var options = option[componentName]; + if (options) { + if (!isArray(options)) { + options = [options]; + } + each(options, function (option) { + compatLayoutProperties(option); + }); + } + }); + } + + // (1) [Caution]: the logic is correct based on the premises: + // data processing stage is blocked in stream. + // See <module:echarts/stream/Scheduler#performDataProcessorTasks> + // (2) Only register once when import repeatedly. + // Should be executed after series is filtered and before stack calculation. + function dataStack(ecModel) { + var stackInfoMap = createHashMap(); + ecModel.eachSeries(function (seriesModel) { + var stack = seriesModel.get('stack'); + // Compatible: when `stack` is set as '', do not stack. + if (stack) { + var stackInfoList = stackInfoMap.get(stack) || stackInfoMap.set(stack, []); + var data = seriesModel.getData(); + var stackInfo = { + // Used for calculate axis extent automatically. + // TODO: Type getCalculationInfo return more specific type? + stackResultDimension: data.getCalculationInfo('stackResultDimension'), + stackedOverDimension: data.getCalculationInfo('stackedOverDimension'), + stackedDimension: data.getCalculationInfo('stackedDimension'), + stackedByDimension: data.getCalculationInfo('stackedByDimension'), + isStackedByIndex: data.getCalculationInfo('isStackedByIndex'), + data: data, + seriesModel: seriesModel + }; + // If stacked on axis that do not support data stack. + if (!stackInfo.stackedDimension || !(stackInfo.isStackedByIndex || stackInfo.stackedByDimension)) { + return; + } + stackInfoList.length && data.setCalculationInfo('stackedOnSeries', stackInfoList[stackInfoList.length - 1].seriesModel); + stackInfoList.push(stackInfo); + } + }); + stackInfoMap.each(calculateStack); + } + function calculateStack(stackInfoList) { + each(stackInfoList, function (targetStackInfo, idxInStack) { + var resultVal = []; + var resultNaN = [NaN, NaN]; + var dims = [targetStackInfo.stackResultDimension, targetStackInfo.stackedOverDimension]; + var targetData = targetStackInfo.data; + var isStackedByIndex = targetStackInfo.isStackedByIndex; + var stackStrategy = targetStackInfo.seriesModel.get('stackStrategy') || 'samesign'; + // Should not write on raw data, because stack series model list changes + // depending on legend selection. + targetData.modify(dims, function (v0, v1, dataIndex) { + var sum = targetData.get(targetStackInfo.stackedDimension, dataIndex); + // Consider `connectNulls` of line area, if value is NaN, stackedOver + // should also be NaN, to draw a appropriate belt area. + if (isNaN(sum)) { + return resultNaN; + } + var byValue; + var stackedDataRawIndex; + if (isStackedByIndex) { + stackedDataRawIndex = targetData.getRawIndex(dataIndex); + } else { + byValue = targetData.get(targetStackInfo.stackedByDimension, dataIndex); + } + // If stackOver is NaN, chart view will render point on value start. + var stackedOver = NaN; + for (var j = idxInStack - 1; j >= 0; j--) { + var stackInfo = stackInfoList[j]; + // Has been optimized by inverted indices on `stackedByDimension`. + if (!isStackedByIndex) { + stackedDataRawIndex = stackInfo.data.rawIndexOf(stackInfo.stackedByDimension, byValue); + } + if (stackedDataRawIndex >= 0) { + var val = stackInfo.data.getByRawIndex(stackInfo.stackResultDimension, stackedDataRawIndex); + // Considering positive stack, negative stack and empty data + if (stackStrategy === 'all' // single stack group + || stackStrategy === 'positive' && val > 0 || stackStrategy === 'negative' && val < 0 || stackStrategy === 'samesign' && sum >= 0 && val > 0 // All positive stack + || stackStrategy === 'samesign' && sum <= 0 && val < 0 // All negative stack + ) { + // The sum has to be very small to be affected by the + // floating arithmetic problem. An incorrect result will probably + // cause axis min/max to be filtered incorrectly. + sum = addSafe(sum, val); + stackedOver = val; + break; + } + } + } + resultVal[0] = sum; + resultVal[1] = stackedOver; + return resultVal; + }); + }); + } + + // @inner + var SourceImpl = /** @class */function () { + function SourceImpl(fields) { + this.data = fields.data || (fields.sourceFormat === SOURCE_FORMAT_KEYED_COLUMNS ? {} : []); + this.sourceFormat = fields.sourceFormat || SOURCE_FORMAT_UNKNOWN; + // Visit config + this.seriesLayoutBy = fields.seriesLayoutBy || SERIES_LAYOUT_BY_COLUMN; + this.startIndex = fields.startIndex || 0; + this.dimensionsDetectedCount = fields.dimensionsDetectedCount; + this.metaRawOption = fields.metaRawOption; + var dimensionsDefine = this.dimensionsDefine = fields.dimensionsDefine; + if (dimensionsDefine) { + for (var i = 0; i < dimensionsDefine.length; i++) { + var dim = dimensionsDefine[i]; + if (dim.type == null) { + if (guessOrdinal(this, i) === BE_ORDINAL.Must) { + dim.type = 'ordinal'; + } + } + } + } + } + return SourceImpl; + }(); + function isSourceInstance(val) { + return val instanceof SourceImpl; + } + /** + * Create a source from option. + * NOTE: Created source is immutable. Don't change any properties in it. + */ + function createSource(sourceData, thisMetaRawOption, + // can be null. If not provided, auto detect it from `sourceData`. + sourceFormat) { + sourceFormat = sourceFormat || detectSourceFormat(sourceData); + var seriesLayoutBy = thisMetaRawOption.seriesLayoutBy; + var determined = determineSourceDimensions(sourceData, sourceFormat, seriesLayoutBy, thisMetaRawOption.sourceHeader, thisMetaRawOption.dimensions); + var source = new SourceImpl({ + data: sourceData, + sourceFormat: sourceFormat, + seriesLayoutBy: seriesLayoutBy, + dimensionsDefine: determined.dimensionsDefine, + startIndex: determined.startIndex, + dimensionsDetectedCount: determined.dimensionsDetectedCount, + metaRawOption: clone(thisMetaRawOption) + }); + return source; + } + /** + * Wrap original series data for some compatibility cases. + */ + function createSourceFromSeriesDataOption(data) { + return new SourceImpl({ + data: data, + sourceFormat: isTypedArray(data) ? SOURCE_FORMAT_TYPED_ARRAY : SOURCE_FORMAT_ORIGINAL + }); + } + /** + * Clone source but excludes source data. + */ + function cloneSourceShallow(source) { + return new SourceImpl({ + data: source.data, + sourceFormat: source.sourceFormat, + seriesLayoutBy: source.seriesLayoutBy, + dimensionsDefine: clone(source.dimensionsDefine), + startIndex: source.startIndex, + dimensionsDetectedCount: source.dimensionsDetectedCount + }); + } + /** + * Note: An empty array will be detected as `SOURCE_FORMAT_ARRAY_ROWS`. + */ + function detectSourceFormat(data) { + var sourceFormat = SOURCE_FORMAT_UNKNOWN; + if (isTypedArray(data)) { + sourceFormat = SOURCE_FORMAT_TYPED_ARRAY; + } else if (isArray(data)) { + // FIXME Whether tolerate null in top level array? + if (data.length === 0) { + sourceFormat = SOURCE_FORMAT_ARRAY_ROWS; + } + for (var i = 0, len = data.length; i < len; i++) { + var item = data[i]; + if (item == null) { + continue; + } else if (isArray(item) || isTypedArray(item)) { + sourceFormat = SOURCE_FORMAT_ARRAY_ROWS; + break; + } else if (isObject(item)) { + sourceFormat = SOURCE_FORMAT_OBJECT_ROWS; + break; + } + } + } else if (isObject(data)) { + for (var key in data) { + if (hasOwn(data, key) && isArrayLike(data[key])) { + sourceFormat = SOURCE_FORMAT_KEYED_COLUMNS; + break; + } + } + } + return sourceFormat; + } + /** + * Determine the source definitions from data standalone dimensions definitions + * are not specified. + */ + function determineSourceDimensions(data, sourceFormat, seriesLayoutBy, sourceHeader, + // standalone raw dimensions definition, like: + // { + // dimensions: ['aa', 'bb', { name: 'cc', type: 'time' }] + // } + // in `dataset` or `series` + dimensionsDefine) { + var dimensionsDetectedCount; + var startIndex; + // PENDING: Could data be null/undefined here? + // currently, if `dataset.source` not specified, error thrown. + // if `series.data` not specified, nothing rendered without error thrown. + // Should test these cases. + if (!data) { + return { + dimensionsDefine: normalizeDimensionsOption(dimensionsDefine), + startIndex: startIndex, + dimensionsDetectedCount: dimensionsDetectedCount + }; + } + if (sourceFormat === SOURCE_FORMAT_ARRAY_ROWS) { + var dataArrayRows = data; + // Rule: Most of the first line are string: it is header. + // Caution: consider a line with 5 string and 1 number, + // it still can not be sure it is a head, because the + // 5 string may be 5 values of category columns. + if (sourceHeader === 'auto' || sourceHeader == null) { + arrayRowsTravelFirst(function (val) { + // '-' is regarded as null/undefined. + if (val != null && val !== '-') { + if (isString(val)) { + startIndex == null && (startIndex = 1); + } else { + startIndex = 0; + } + } + // 10 is an experience number, avoid long loop. + }, seriesLayoutBy, dataArrayRows, 10); + } else { + startIndex = isNumber(sourceHeader) ? sourceHeader : sourceHeader ? 1 : 0; + } + if (!dimensionsDefine && startIndex === 1) { + dimensionsDefine = []; + arrayRowsTravelFirst(function (val, index) { + dimensionsDefine[index] = val != null ? val + '' : ''; + }, seriesLayoutBy, dataArrayRows, Infinity); + } + dimensionsDetectedCount = dimensionsDefine ? dimensionsDefine.length : seriesLayoutBy === SERIES_LAYOUT_BY_ROW ? dataArrayRows.length : dataArrayRows[0] ? dataArrayRows[0].length : null; + } else if (sourceFormat === SOURCE_FORMAT_OBJECT_ROWS) { + if (!dimensionsDefine) { + dimensionsDefine = objectRowsCollectDimensions(data); + } + } else if (sourceFormat === SOURCE_FORMAT_KEYED_COLUMNS) { + if (!dimensionsDefine) { + dimensionsDefine = []; + each(data, function (colArr, key) { + dimensionsDefine.push(key); + }); + } + } else if (sourceFormat === SOURCE_FORMAT_ORIGINAL) { + var value0 = getDataItemValue(data[0]); + dimensionsDetectedCount = isArray(value0) && value0.length || 1; + } else if (sourceFormat === SOURCE_FORMAT_TYPED_ARRAY) { + if ("development" !== 'production') { + assert(!!dimensionsDefine, 'dimensions must be given if data is TypedArray.'); + } + } + return { + startIndex: startIndex, + dimensionsDefine: normalizeDimensionsOption(dimensionsDefine), + dimensionsDetectedCount: dimensionsDetectedCount + }; + } + function objectRowsCollectDimensions(data) { + var firstIndex = 0; + var obj; + while (firstIndex < data.length && !(obj = data[firstIndex++])) {} // jshint ignore: line + if (obj) { + return keys(obj); + } + } + // Consider dimensions defined like ['A', 'price', 'B', 'price', 'C', 'price'], + // which is reasonable. But dimension name is duplicated. + // Returns undefined or an array contains only object without null/undefined or string. + function normalizeDimensionsOption(dimensionsDefine) { + if (!dimensionsDefine) { + // The meaning of null/undefined is different from empty array. + return; + } + var nameMap = createHashMap(); + return map(dimensionsDefine, function (rawItem, index) { + rawItem = isObject(rawItem) ? rawItem : { + name: rawItem + }; + // Other fields will be discarded. + var item = { + name: rawItem.name, + displayName: rawItem.displayName, + type: rawItem.type + }; + // User can set null in dimensions. + // We don't auto specify name, otherwise a given name may + // cause it to be referred unexpectedly. + if (item.name == null) { + return item; + } + // Also consider number form like 2012. + item.name += ''; + // User may also specify displayName. + // displayName will always exists except user not + // specified or dim name is not specified or detected. + // (A auto generated dim name will not be used as + // displayName). + if (item.displayName == null) { + item.displayName = item.name; + } + var exist = nameMap.get(item.name); + if (!exist) { + nameMap.set(item.name, { + count: 1 + }); + } else { + item.name += '-' + exist.count++; + } + return item; + }); + } + function arrayRowsTravelFirst(cb, seriesLayoutBy, data, maxLoop) { + if (seriesLayoutBy === SERIES_LAYOUT_BY_ROW) { + for (var i = 0; i < data.length && i < maxLoop; i++) { + cb(data[i] ? data[i][0] : null, i); + } + } else { + var value0 = data[0] || []; + for (var i = 0; i < value0.length && i < maxLoop; i++) { + cb(value0[i], i); + } + } + } + function shouldRetrieveDataByName(source) { + var sourceFormat = source.sourceFormat; + return sourceFormat === SOURCE_FORMAT_OBJECT_ROWS || sourceFormat === SOURCE_FORMAT_KEYED_COLUMNS; + } + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + + /** + * AUTO-GENERATED FILE. DO NOT MODIFY. + */ + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + var _a, _b, _c; + var providerMethods; + var mountMethods; + /** + * If normal array used, mutable chunk size is supported. + * If typed array used, chunk size must be fixed. + */ + var DefaultDataProvider = /** @class */function () { + function DefaultDataProvider(sourceParam, dimSize) { + // let source: Source; + var source = !isSourceInstance(sourceParam) ? createSourceFromSeriesDataOption(sourceParam) : sourceParam; + // declare source is Source; + this._source = source; + var data = this._data = source.data; + // Typed array. TODO IE10+? + if (source.sourceFormat === SOURCE_FORMAT_TYPED_ARRAY) { + if ("development" !== 'production') { + if (dimSize == null) { + throw new Error('Typed array data must specify dimension size'); + } + } + this._offset = 0; + this._dimSize = dimSize; + this._data = data; + } + mountMethods(this, data, source); + } + DefaultDataProvider.prototype.getSource = function () { + return this._source; + }; + DefaultDataProvider.prototype.count = function () { + return 0; + }; + DefaultDataProvider.prototype.getItem = function (idx, out) { + return; + }; + DefaultDataProvider.prototype.appendData = function (newData) {}; + DefaultDataProvider.prototype.clean = function () {}; + DefaultDataProvider.protoInitialize = function () { + // PENDING: To avoid potential incompat (e.g., prototype + // is visited somewhere), still init them on prototype. + var proto = DefaultDataProvider.prototype; + proto.pure = false; + proto.persistent = true; + }(); + DefaultDataProvider.internalField = function () { + var _a; + mountMethods = function (provider, data, source) { + var sourceFormat = source.sourceFormat; + var seriesLayoutBy = source.seriesLayoutBy; + var startIndex = source.startIndex; + var dimsDef = source.dimensionsDefine; + var methods = providerMethods[getMethodMapKey(sourceFormat, seriesLayoutBy)]; + if ("development" !== 'production') { + assert(methods, 'Invalide sourceFormat: ' + sourceFormat); + } + extend(provider, methods); + if (sourceFormat === SOURCE_FORMAT_TYPED_ARRAY) { + provider.getItem = getItemForTypedArray; + provider.count = countForTypedArray; + provider.fillStorage = fillStorageForTypedArray; + } else { + var rawItemGetter = getRawSourceItemGetter(sourceFormat, seriesLayoutBy); + provider.getItem = bind(rawItemGetter, null, data, startIndex, dimsDef); + var rawCounter = getRawSourceDataCounter(sourceFormat, seriesLayoutBy); + provider.count = bind(rawCounter, null, data, startIndex, dimsDef); + } + }; + var getItemForTypedArray = function (idx, out) { + idx = idx - this._offset; + out = out || []; + var data = this._data; + var dimSize = this._dimSize; + var offset = dimSize * idx; + for (var i = 0; i < dimSize; i++) { + out[i] = data[offset + i]; + } + return out; + }; + var fillStorageForTypedArray = function (start, end, storage, extent) { + var data = this._data; + var dimSize = this._dimSize; + for (var dim = 0; dim < dimSize; dim++) { + var dimExtent = extent[dim]; + var min = dimExtent[0] == null ? Infinity : dimExtent[0]; + var max = dimExtent[1] == null ? -Infinity : dimExtent[1]; + var count = end - start; + var arr = storage[dim]; + for (var i = 0; i < count; i++) { + // appendData with TypedArray will always do replace in provider. + var val = data[i * dimSize + dim]; + arr[start + i] = val; + val < min && (min = val); + val > max && (max = val); + } + dimExtent[0] = min; + dimExtent[1] = max; + } + }; + var countForTypedArray = function () { + return this._data ? this._data.length / this._dimSize : 0; + }; + providerMethods = (_a = {}, _a[SOURCE_FORMAT_ARRAY_ROWS + '_' + SERIES_LAYOUT_BY_COLUMN] = { + pure: true, + appendData: appendDataSimply + }, _a[SOURCE_FORMAT_ARRAY_ROWS + '_' + SERIES_LAYOUT_BY_ROW] = { + pure: true, + appendData: function () { + throw new Error('Do not support appendData when set seriesLayoutBy: "row".'); + } + }, _a[SOURCE_FORMAT_OBJECT_ROWS] = { + pure: true, + appendData: appendDataSimply + }, _a[SOURCE_FORMAT_KEYED_COLUMNS] = { + pure: true, + appendData: function (newData) { + var data = this._data; + each(newData, function (newCol, key) { + var oldCol = data[key] || (data[key] = []); + for (var i = 0; i < (newCol || []).length; i++) { + oldCol.push(newCol[i]); + } + }); + } + }, _a[SOURCE_FORMAT_ORIGINAL] = { + appendData: appendDataSimply + }, _a[SOURCE_FORMAT_TYPED_ARRAY] = { + persistent: false, + pure: true, + appendData: function (newData) { + if ("development" !== 'production') { + assert(isTypedArray(newData), 'Added data must be TypedArray if data in initialization is TypedArray'); + } + this._data = newData; + }, + // Clean self if data is already used. + clean: function () { + // PENDING + this._offset += this.count(); + this._data = null; + } + }, _a); + function appendDataSimply(newData) { + for (var i = 0; i < newData.length; i++) { + this._data.push(newData[i]); + } + } + }(); + return DefaultDataProvider; + }(); + var getItemSimply = function (rawData, startIndex, dimsDef, idx) { + return rawData[idx]; + }; + var rawSourceItemGetterMap = (_a = {}, _a[SOURCE_FORMAT_ARRAY_ROWS + '_' + SERIES_LAYOUT_BY_COLUMN] = function (rawData, startIndex, dimsDef, idx) { + return rawData[idx + startIndex]; + }, _a[SOURCE_FORMAT_ARRAY_ROWS + '_' + SERIES_LAYOUT_BY_ROW] = function (rawData, startIndex, dimsDef, idx, out) { + idx += startIndex; + var item = out || []; + var data = rawData; + for (var i = 0; i < data.length; i++) { + var row = data[i]; + item[i] = row ? row[idx] : null; + } + return item; + }, _a[SOURCE_FORMAT_OBJECT_ROWS] = getItemSimply, _a[SOURCE_FORMAT_KEYED_COLUMNS] = function (rawData, startIndex, dimsDef, idx, out) { + var item = out || []; + for (var i = 0; i < dimsDef.length; i++) { + var dimName = dimsDef[i].name; + if ("development" !== 'production') { + if (dimName == null) { + throw new Error(); + } + } + var col = rawData[dimName]; + item[i] = col ? col[idx] : null; + } + return item; + }, _a[SOURCE_FORMAT_ORIGINAL] = getItemSimply, _a); + function getRawSourceItemGetter(sourceFormat, seriesLayoutBy) { + var method = rawSourceItemGetterMap[getMethodMapKey(sourceFormat, seriesLayoutBy)]; + if ("development" !== 'production') { + assert(method, 'Do not support get item on "' + sourceFormat + '", "' + seriesLayoutBy + '".'); + } + return method; + } + var countSimply = function (rawData, startIndex, dimsDef) { + return rawData.length; + }; + var rawSourceDataCounterMap = (_b = {}, _b[SOURCE_FORMAT_ARRAY_ROWS + '_' + SERIES_LAYOUT_BY_COLUMN] = function (rawData, startIndex, dimsDef) { + return Math.max(0, rawData.length - startIndex); + }, _b[SOURCE_FORMAT_ARRAY_ROWS + '_' + SERIES_LAYOUT_BY_ROW] = function (rawData, startIndex, dimsDef) { + var row = rawData[0]; + return row ? Math.max(0, row.length - startIndex) : 0; + }, _b[SOURCE_FORMAT_OBJECT_ROWS] = countSimply, _b[SOURCE_FORMAT_KEYED_COLUMNS] = function (rawData, startIndex, dimsDef) { + var dimName = dimsDef[0].name; + if ("development" !== 'production') { + if (dimName == null) { + throw new Error(); + } + } + var col = rawData[dimName]; + return col ? col.length : 0; + }, _b[SOURCE_FORMAT_ORIGINAL] = countSimply, _b); + function getRawSourceDataCounter(sourceFormat, seriesLayoutBy) { + var method = rawSourceDataCounterMap[getMethodMapKey(sourceFormat, seriesLayoutBy)]; + if ("development" !== 'production') { + assert(method, 'Do not support count on "' + sourceFormat + '", "' + seriesLayoutBy + '".'); + } + return method; + } + var getRawValueSimply = function (dataItem, dimIndex, property) { + return dataItem[dimIndex]; + }; + var rawSourceValueGetterMap = (_c = {}, _c[SOURCE_FORMAT_ARRAY_ROWS] = getRawValueSimply, _c[SOURCE_FORMAT_OBJECT_ROWS] = function (dataItem, dimIndex, property) { + return dataItem[property]; + }, _c[SOURCE_FORMAT_KEYED_COLUMNS] = getRawValueSimply, _c[SOURCE_FORMAT_ORIGINAL] = function (dataItem, dimIndex, property) { + // FIXME: In some case (markpoint in geo (geo-map.html)), + // dataItem is {coord: [...]} + var value = getDataItemValue(dataItem); + return !(value instanceof Array) ? value : value[dimIndex]; + }, _c[SOURCE_FORMAT_TYPED_ARRAY] = getRawValueSimply, _c); + function getRawSourceValueGetter(sourceFormat) { + var method = rawSourceValueGetterMap[sourceFormat]; + if ("development" !== 'production') { + assert(method, 'Do not support get value on "' + sourceFormat + '".'); + } + return method; + } + function getMethodMapKey(sourceFormat, seriesLayoutBy) { + return sourceFormat === SOURCE_FORMAT_ARRAY_ROWS ? sourceFormat + '_' + seriesLayoutBy : sourceFormat; + } + // ??? FIXME can these logic be more neat: getRawValue, getRawDataItem, + // Consider persistent. + // Caution: why use raw value to display on label or tooltip? + // A reason is to avoid format. For example time value we do not know + // how to format is expected. More over, if stack is used, calculated + // value may be 0.91000000001, which have brings trouble to display. + // TODO: consider how to treat null/undefined/NaN when display? + function retrieveRawValue(data, dataIndex, + // If dimIndex is null/undefined, return OptionDataItem. + // Otherwise, return OptionDataValue. + dim) { + if (!data) { + return; + } + // Consider data may be not persistent. + var dataItem = data.getRawDataItem(dataIndex); + if (dataItem == null) { + return; + } + var store = data.getStore(); + var sourceFormat = store.getSource().sourceFormat; + if (dim != null) { + var dimIndex = data.getDimensionIndex(dim); + var property = store.getDimensionProperty(dimIndex); + return getRawSourceValueGetter(sourceFormat)(dataItem, dimIndex, property); + } else { + var result = dataItem; + if (sourceFormat === SOURCE_FORMAT_ORIGINAL) { + result = getDataItemValue(dataItem); + } + return result; + } + } + + var DIMENSION_LABEL_REG = /\{@(.+?)\}/g; + var DataFormatMixin = /** @class */function () { + function DataFormatMixin() {} + /** + * Get params for formatter + */ + DataFormatMixin.prototype.getDataParams = function (dataIndex, dataType) { + var data = this.getData(dataType); + var rawValue = this.getRawValue(dataIndex, dataType); + var rawDataIndex = data.getRawIndex(dataIndex); + var name = data.getName(dataIndex); + var itemOpt = data.getRawDataItem(dataIndex); + var style = data.getItemVisual(dataIndex, 'style'); + var color = style && style[data.getItemVisual(dataIndex, 'drawType') || 'fill']; + var borderColor = style && style.stroke; + var mainType = this.mainType; + var isSeries = mainType === 'series'; + var userOutput = data.userOutput && data.userOutput.get(); + return { + componentType: mainType, + componentSubType: this.subType, + componentIndex: this.componentIndex, + seriesType: isSeries ? this.subType : null, + seriesIndex: this.seriesIndex, + seriesId: isSeries ? this.id : null, + seriesName: isSeries ? this.name : null, + name: name, + dataIndex: rawDataIndex, + data: itemOpt, + dataType: dataType, + value: rawValue, + color: color, + borderColor: borderColor, + dimensionNames: userOutput ? userOutput.fullDimensions : null, + encode: userOutput ? userOutput.encode : null, + // Param name list for mapping `a`, `b`, `c`, `d`, `e` + $vars: ['seriesName', 'name', 'value'] + }; + }; + /** + * Format label + * @param dataIndex + * @param status 'normal' by default + * @param dataType + * @param labelDimIndex Only used in some chart that + * use formatter in different dimensions, like radar. + * @param formatter Formatter given outside. + * @return return null/undefined if no formatter + */ + DataFormatMixin.prototype.getFormattedLabel = function (dataIndex, status, dataType, labelDimIndex, formatter, extendParams) { + status = status || 'normal'; + var data = this.getData(dataType); + var params = this.getDataParams(dataIndex, dataType); + if (extendParams) { + params.value = extendParams.interpolatedValue; + } + if (labelDimIndex != null && isArray(params.value)) { + params.value = params.value[labelDimIndex]; + } + if (!formatter) { + var itemModel = data.getItemModel(dataIndex); + // @ts-ignore + formatter = itemModel.get(status === 'normal' ? ['label', 'formatter'] : [status, 'label', 'formatter']); + } + if (isFunction(formatter)) { + params.status = status; + params.dimensionIndex = labelDimIndex; + return formatter(params); + } else if (isString(formatter)) { + var str = formatTpl(formatter, params); + // Support 'aaa{@[3]}bbb{@product}ccc'. + // Do not support '}' in dim name util have to. + return str.replace(DIMENSION_LABEL_REG, function (origin, dimStr) { + var len = dimStr.length; + var dimLoose = dimStr; + if (dimLoose.charAt(0) === '[' && dimLoose.charAt(len - 1) === ']') { + dimLoose = +dimLoose.slice(1, len - 1); // Also support: '[]' => 0 + if ("development" !== 'production') { + if (isNaN(dimLoose)) { + error("Invalide label formatter: @" + dimStr + ", only support @[0], @[1], @[2], ..."); + } + } + } + var val = retrieveRawValue(data, dataIndex, dimLoose); + if (extendParams && isArray(extendParams.interpolatedValue)) { + var dimIndex = data.getDimensionIndex(dimLoose); + if (dimIndex >= 0) { + val = extendParams.interpolatedValue[dimIndex]; + } + } + return val != null ? val + '' : ''; + }); + } + }; + /** + * Get raw value in option + */ + DataFormatMixin.prototype.getRawValue = function (idx, dataType) { + return retrieveRawValue(this.getData(dataType), idx); + }; + /** + * Should be implemented. + * @param {number} dataIndex + * @param {boolean} [multipleSeries=false] + * @param {string} [dataType] + */ + DataFormatMixin.prototype.formatTooltip = function (dataIndex, multipleSeries, dataType) { + // Empty function + return; + }; + return DataFormatMixin; + }(); + // PENDING: previously we accept this type when calling `formatTooltip`, + // but guess little chance has been used outside. Do we need to backward + // compat it? + // type TooltipFormatResultLegacyObject = { + // // `html` means the markup language text, either in 'html' or 'richText'. + // // The name `html` is not appropriate because in 'richText' it is not a HTML + // // string. But still support it for backward compatibility. + // html: string; + // markers: Dictionary<ColorString>; + // }; + /** + * For backward compat, normalize the return from `formatTooltip`. + */ + function normalizeTooltipFormatResult(result) { + var markupText; + // let markers: Dictionary<ColorString>; + var markupFragment; + if (isObject(result)) { + if (result.type) { + markupFragment = result; + } else { + if ("development" !== 'production') { + console.warn('The return type of `formatTooltip` is not supported: ' + makePrintable(result)); + } + } + // else { + // markupText = (result as TooltipFormatResultLegacyObject).html; + // markers = (result as TooltipFormatResultLegacyObject).markers; + // if (markersExisting) { + // markers = zrUtil.merge(markersExisting, markers); + // } + // } + } else { + markupText = result; + } + return { + text: markupText, + // markers: markers || markersExisting, + frag: markupFragment + }; + } + + /** + * @param {Object} define + * @return See the return of `createTask`. + */ + function createTask(define) { + return new Task(define); + } + var Task = /** @class */function () { + function Task(define) { + define = define || {}; + this._reset = define.reset; + this._plan = define.plan; + this._count = define.count; + this._onDirty = define.onDirty; + this._dirty = true; + } + /** + * @param step Specified step. + * @param skip Skip customer perform call. + * @param modBy Sampling window size. + * @param modDataCount Sampling count. + * @return whether unfinished. + */ + Task.prototype.perform = function (performArgs) { + var upTask = this._upstream; + var skip = performArgs && performArgs.skip; + // TODO some refactor. + // Pull data. Must pull data each time, because context.data + // may be updated by Series.setData. + if (this._dirty && upTask) { + var context = this.context; + context.data = context.outputData = upTask.context.outputData; + } + if (this.__pipeline) { + this.__pipeline.currentTask = this; + } + var planResult; + if (this._plan && !skip) { + planResult = this._plan(this.context); + } + // Support sharding by mod, which changes the render sequence and makes the rendered graphic + // elements uniformed distributed when progress, especially when moving or zooming. + var lastModBy = normalizeModBy(this._modBy); + var lastModDataCount = this._modDataCount || 0; + var modBy = normalizeModBy(performArgs && performArgs.modBy); + var modDataCount = performArgs && performArgs.modDataCount || 0; + if (lastModBy !== modBy || lastModDataCount !== modDataCount) { + planResult = 'reset'; + } + function normalizeModBy(val) { + !(val >= 1) && (val = 1); // jshint ignore:line + return val; + } + var forceFirstProgress; + if (this._dirty || planResult === 'reset') { + this._dirty = false; + forceFirstProgress = this._doReset(skip); + } + this._modBy = modBy; + this._modDataCount = modDataCount; + var step = performArgs && performArgs.step; + if (upTask) { + if ("development" !== 'production') { + assert(upTask._outputDueEnd != null); + } + this._dueEnd = upTask._outputDueEnd; + } + // DataTask or overallTask + else { + if ("development" !== 'production') { + assert(!this._progress || this._count); + } + this._dueEnd = this._count ? this._count(this.context) : Infinity; + } + // Note: Stubs, that its host overall task let it has progress, has progress. + // If no progress, pass index from upstream to downstream each time plan called. + if (this._progress) { + var start = this._dueIndex; + var end = Math.min(step != null ? this._dueIndex + step : Infinity, this._dueEnd); + if (!skip && (forceFirstProgress || start < end)) { + var progress = this._progress; + if (isArray(progress)) { + for (var i = 0; i < progress.length; i++) { + this._doProgress(progress[i], start, end, modBy, modDataCount); + } + } else { + this._doProgress(progress, start, end, modBy, modDataCount); + } + } + this._dueIndex = end; + // If no `outputDueEnd`, assume that output data and + // input data is the same, so use `dueIndex` as `outputDueEnd`. + var outputDueEnd = this._settedOutputEnd != null ? this._settedOutputEnd : end; + if ("development" !== 'production') { + // ??? Can not rollback. + assert(outputDueEnd >= this._outputDueEnd); + } + this._outputDueEnd = outputDueEnd; + } else { + // (1) Some overall task has no progress. + // (2) Stubs, that its host overall task do not let it has progress, has no progress. + // This should always be performed so it can be passed to downstream. + this._dueIndex = this._outputDueEnd = this._settedOutputEnd != null ? this._settedOutputEnd : this._dueEnd; + } + return this.unfinished(); + }; + Task.prototype.dirty = function () { + this._dirty = true; + this._onDirty && this._onDirty(this.context); + }; + Task.prototype._doProgress = function (progress, start, end, modBy, modDataCount) { + iterator.reset(start, end, modBy, modDataCount); + this._callingProgress = progress; + this._callingProgress({ + start: start, + end: end, + count: end - start, + next: iterator.next + }, this.context); + }; + Task.prototype._doReset = function (skip) { + this._dueIndex = this._outputDueEnd = this._dueEnd = 0; + this._settedOutputEnd = null; + var progress; + var forceFirstProgress; + if (!skip && this._reset) { + progress = this._reset(this.context); + if (progress && progress.progress) { + forceFirstProgress = progress.forceFirstProgress; + progress = progress.progress; + } + // To simplify no progress checking, array must has item. + if (isArray(progress) && !progress.length) { + progress = null; + } + } + this._progress = progress; + this._modBy = this._modDataCount = null; + var downstream = this._downstream; + downstream && downstream.dirty(); + return forceFirstProgress; + }; + Task.prototype.unfinished = function () { + return this._progress && this._dueIndex < this._dueEnd; + }; + /** + * @param downTask The downstream task. + * @return The downstream task. + */ + Task.prototype.pipe = function (downTask) { + if ("development" !== 'production') { + assert(downTask && !downTask._disposed && downTask !== this); + } + // If already downstream, do not dirty downTask. + if (this._downstream !== downTask || this._dirty) { + this._downstream = downTask; + downTask._upstream = this; + downTask.dirty(); + } + }; + Task.prototype.dispose = function () { + if (this._disposed) { + return; + } + this._upstream && (this._upstream._downstream = null); + this._downstream && (this._downstream._upstream = null); + this._dirty = false; + this._disposed = true; + }; + Task.prototype.getUpstream = function () { + return this._upstream; + }; + Task.prototype.getDownstream = function () { + return this._downstream; + }; + Task.prototype.setOutputEnd = function (end) { + // This only happens in dataTask, dataZoom, map, currently. + // where dataZoom do not set end each time, but only set + // when reset. So we should record the set end, in case + // that the stub of dataZoom perform again and earse the + // set end by upstream. + this._outputDueEnd = this._settedOutputEnd = end; + }; + return Task; + }(); + var iterator = function () { + var end; + var current; + var modBy; + var modDataCount; + var winCount; + var it = { + reset: function (s, e, sStep, sCount) { + current = s; + end = e; + modBy = sStep; + modDataCount = sCount; + winCount = Math.ceil(modDataCount / modBy); + it.next = modBy > 1 && modDataCount > 0 ? modNext : sequentialNext; + } + }; + return it; + function sequentialNext() { + return current < end ? current++ : null; + } + function modNext() { + var dataIndex = current % winCount * modBy + Math.ceil(current / winCount); + var result = current >= end ? null : dataIndex < modDataCount ? dataIndex + // If modDataCount is smaller than data.count() (consider `appendData` case), + // Use normal linear rendering mode. + : current; + current++; + return result; + } + }(); + // ----------------------------------------------------------------------------- + // For stream debug (Should be commented out after used!) + // @usage: printTask(this, 'begin'); + // @usage: printTask(this, null, {someExtraProp}); + // @usage: Use `__idxInPipeline` as conditional breakpiont. + // + // window.printTask = function (task: any, prefix: string, extra: { [key: string]: unknown }): void { + // window.ecTaskUID == null && (window.ecTaskUID = 0); + // task.uidDebug == null && (task.uidDebug = `task_${window.ecTaskUID++}`); + // task.agent && task.agent.uidDebug == null && (task.agent.uidDebug = `task_${window.ecTaskUID++}`); + // let props = []; + // if (task.__pipeline) { + // let val = `${task.__idxInPipeline}/${task.__pipeline.tail.__idxInPipeline} ${task.agent ? '(stub)' : ''}`; + // props.push({text: '__idxInPipeline/total', value: val}); + // } else { + // let stubCount = 0; + // task.agentStubMap.each(() => stubCount++); + // props.push({text: 'idx', value: `overall (stubs: ${stubCount})`}); + // } + // props.push({text: 'uid', value: task.uidDebug}); + // if (task.__pipeline) { + // props.push({text: 'pipelineId', value: task.__pipeline.id}); + // task.agent && props.push( + // {text: 'stubFor', value: task.agent.uidDebug} + // ); + // } + // props.push( + // {text: 'dirty', value: task._dirty}, + // {text: 'dueIndex', value: task._dueIndex}, + // {text: 'dueEnd', value: task._dueEnd}, + // {text: 'outputDueEnd', value: task._outputDueEnd} + // ); + // if (extra) { + // Object.keys(extra).forEach(key => { + // props.push({text: key, value: extra[key]}); + // }); + // } + // let args = ['color: blue']; + // let msg = `%c[${prefix || 'T'}] %c` + props.map(item => ( + // args.push('color: green', 'color: red'), + // `${item.text}: %c${item.value}` + // )).join('%c, '); + // console.log.apply(console, [msg].concat(args)); + // // console.log(this); + // }; + // window.printPipeline = function (task: any, prefix: string) { + // const pipeline = task.__pipeline; + // let currTask = pipeline.head; + // while (currTask) { + // window.printTask(currTask, prefix); + // currTask = currTask._downstream; + // } + // }; + // window.showChain = function (chainHeadTask) { + // var chain = []; + // var task = chainHeadTask; + // while (task) { + // chain.push({ + // task: task, + // up: task._upstream, + // down: task._downstream, + // idxInPipeline: task.__idxInPipeline + // }); + // task = task._downstream; + // } + // return chain; + // }; + // window.findTaskInChain = function (task, chainHeadTask) { + // let chain = window.showChain(chainHeadTask); + // let result = []; + // for (let i = 0; i < chain.length; i++) { + // let chainItem = chain[i]; + // if (chainItem.task === task) { + // result.push(i); + // } + // } + // return result; + // }; + // window.printChainAEachInChainB = function (chainHeadTaskA, chainHeadTaskB) { + // let chainA = window.showChain(chainHeadTaskA); + // for (let i = 0; i < chainA.length; i++) { + // console.log('chainAIdx:', i, 'inChainB:', window.findTaskInChain(chainA[i].task, chainHeadTaskB)); + // } + // }; + + /** + * Convert raw the value in to inner value in List. + * + * [Performance sensitive] + * + * [Caution]: this is the key logic of user value parser. + * For backward compatibility, do not modify it until you have to! + */ + function parseDataValue(value, + // For high performance, do not omit the second param. + opt) { + // Performance sensitive. + var dimType = opt && opt.type; + if (dimType === 'ordinal') { + // If given value is a category string + return value; + } + if (dimType === 'time' + // spead up when using timestamp + && !isNumber(value) && value != null && value !== '-') { + value = +parseDate(value); + } + // dimType defaults 'number'. + // If dimType is not ordinal and value is null or undefined or NaN or '-', + // parse to NaN. + // number-like string (like ' 123 ') can be converted to a number. + // where null/undefined or other string will be converted to NaN. + return value == null || value === '' ? NaN + // If string (like '-'), using '+' parse to NaN + // If object, also parse to NaN + : +value; + } + var valueParserMap = createHashMap({ + 'number': function (val) { + // Do not use `numericToNumber` here. We have `numericToNumber` by default. + // Here the number parser can have loose rule: + // enable to cut suffix: "120px" => 120, "14%" => 14. + return parseFloat(val); + }, + 'time': function (val) { + // return timestamp. + return +parseDate(val); + }, + 'trim': function (val) { + return isString(val) ? trim(val) : val; + } + }); + function getRawValueParser(type) { + return valueParserMap.get(type); + } + var ORDER_COMPARISON_OP_MAP = { + lt: function (lval, rval) { + return lval < rval; + }, + lte: function (lval, rval) { + return lval <= rval; + }, + gt: function (lval, rval) { + return lval > rval; + }, + gte: function (lval, rval) { + return lval >= rval; + } + }; + var FilterOrderComparator = /** @class */function () { + function FilterOrderComparator(op, rval) { + if (!isNumber(rval)) { + var errMsg = ''; + if ("development" !== 'production') { + errMsg = 'rvalue of "<", ">", "<=", ">=" can only be number in filter.'; + } + throwError(errMsg); + } + this._opFn = ORDER_COMPARISON_OP_MAP[op]; + this._rvalFloat = numericToNumber(rval); + } + // Performance sensitive. + FilterOrderComparator.prototype.evaluate = function (lval) { + // Most cases is 'number', and typeof maybe 10 times faseter than parseFloat. + return isNumber(lval) ? this._opFn(lval, this._rvalFloat) : this._opFn(numericToNumber(lval), this._rvalFloat); + }; + return FilterOrderComparator; + }(); + var SortOrderComparator = /** @class */function () { + /** + * @param order by default: 'asc' + * @param incomparable by default: Always on the tail. + * That is, if 'asc' => 'max', if 'desc' => 'min' + * See the definition of "incomparable" in [SORT_COMPARISON_RULE]. + */ + function SortOrderComparator(order, incomparable) { + var isDesc = order === 'desc'; + this._resultLT = isDesc ? 1 : -1; + if (incomparable == null) { + incomparable = isDesc ? 'min' : 'max'; + } + this._incomparable = incomparable === 'min' ? -Infinity : Infinity; + } + // See [SORT_COMPARISON_RULE]. + // Performance sensitive. + SortOrderComparator.prototype.evaluate = function (lval, rval) { + // Most cases is 'number', and typeof maybe 10 times faseter than parseFloat. + var lvalFloat = isNumber(lval) ? lval : numericToNumber(lval); + var rvalFloat = isNumber(rval) ? rval : numericToNumber(rval); + var lvalNotNumeric = isNaN(lvalFloat); + var rvalNotNumeric = isNaN(rvalFloat); + if (lvalNotNumeric) { + lvalFloat = this._incomparable; + } + if (rvalNotNumeric) { + rvalFloat = this._incomparable; + } + if (lvalNotNumeric && rvalNotNumeric) { + var lvalIsStr = isString(lval); + var rvalIsStr = isString(rval); + if (lvalIsStr) { + lvalFloat = rvalIsStr ? lval : 0; + } + if (rvalIsStr) { + rvalFloat = lvalIsStr ? rval : 0; + } + } + return lvalFloat < rvalFloat ? this._resultLT : lvalFloat > rvalFloat ? -this._resultLT : 0; + }; + return SortOrderComparator; + }(); + var FilterEqualityComparator = /** @class */function () { + function FilterEqualityComparator(isEq, rval) { + this._rval = rval; + this._isEQ = isEq; + this._rvalTypeof = typeof rval; + this._rvalFloat = numericToNumber(rval); + } + // Performance sensitive. + FilterEqualityComparator.prototype.evaluate = function (lval) { + var eqResult = lval === this._rval; + if (!eqResult) { + var lvalTypeof = typeof lval; + if (lvalTypeof !== this._rvalTypeof && (lvalTypeof === 'number' || this._rvalTypeof === 'number')) { + eqResult = numericToNumber(lval) === this._rvalFloat; + } + } + return this._isEQ ? eqResult : !eqResult; + }; + return FilterEqualityComparator; + }(); + /** + * [FILTER_COMPARISON_RULE] + * `lt`|`lte`|`gt`|`gte`: + * + rval must be a number. And lval will be converted to number (`numericToNumber`) to compare. + * `eq`: + * + If same type, compare with `===`. + * + If there is one number, convert to number (`numericToNumber`) to compare. + * + Else return `false`. + * `ne`: + * + Not `eq`. + * + * + * [SORT_COMPARISON_RULE] + * All the values are grouped into three categories: + * + "numeric" (number and numeric string) + * + "non-numeric-string" (string that excluding numeric string) + * + "others" + * "numeric" vs "numeric": values are ordered by number order. + * "non-numeric-string" vs "non-numeric-string": values are ordered by ES spec (#sec-abstract-relational-comparison). + * "others" vs "others": do not change order (always return 0). + * "numeric" vs "non-numeric-string": "non-numeric-string" is treated as "incomparable". + * "number" vs "others": "others" is treated as "incomparable". + * "non-numeric-string" vs "others": "others" is treated as "incomparable". + * "incomparable" will be seen as -Infinity or Infinity (depends on the settings). + * MEMO: + * Non-numeric string sort makes sense when we need to put the items with the same tag together. + * But if we support string sort, we still need to avoid the misleading like `'2' > '12'`, + * So we treat "numeric-string" sorted by number order rather than string comparison. + * + * + * [CHECK_LIST_OF_THE_RULE_DESIGN] + * + Do not support string comparison until required. And also need to + * avoid the misleading of "2" > "12". + * + Should avoid the misleading case: + * `" 22 " gte "22"` is `true` but `" 22 " eq "22"` is `false`. + * + JS bad case should be avoided: null <= 0, [] <= 0, ' ' <= 0, ... + * + Only "numeric" can be converted to comparable number, otherwise converted to NaN. + * See `util/number.ts#numericToNumber`. + * + * @return If `op` is not `RelationalOperator`, return null; + */ + function createFilterComparator(op, rval) { + return op === 'eq' || op === 'ne' ? new FilterEqualityComparator(op === 'eq', rval) : hasOwn(ORDER_COMPARISON_OP_MAP, op) ? new FilterOrderComparator(op, rval) : null; + } + + /** + * TODO: disable writable. + * This structure will be exposed to users. + */ + var ExternalSource = /** @class */function () { + function ExternalSource() {} + ExternalSource.prototype.getRawData = function () { + // Only built-in transform available. + throw new Error('not supported'); + }; + ExternalSource.prototype.getRawDataItem = function (dataIndex) { + // Only built-in transform available. + throw new Error('not supported'); + }; + ExternalSource.prototype.cloneRawData = function () { + return; + }; + /** + * @return If dimension not found, return null/undefined. + */ + ExternalSource.prototype.getDimensionInfo = function (dim) { + return; + }; + /** + * dimensions defined if and only if either: + * (a) dataset.dimensions are declared. + * (b) dataset data include dimensions definitions in data (detected or via specified `sourceHeader`). + * If dimensions are defined, `dimensionInfoAll` is corresponding to + * the defined dimensions. + * Otherwise, `dimensionInfoAll` is determined by data columns. + * @return Always return an array (even empty array). + */ + ExternalSource.prototype.cloneAllDimensionInfo = function () { + return; + }; + ExternalSource.prototype.count = function () { + return; + }; + /** + * Only support by dimension index. + * No need to support by dimension name in transform function, + * because transform function is not case-specific, no need to use name literally. + */ + ExternalSource.prototype.retrieveValue = function (dataIndex, dimIndex) { + return; + }; + ExternalSource.prototype.retrieveValueFromItem = function (dataItem, dimIndex) { + return; + }; + ExternalSource.prototype.convertValue = function (rawVal, dimInfo) { + return parseDataValue(rawVal, dimInfo); + }; + return ExternalSource; + }(); + function createExternalSource(internalSource, externalTransform) { + var extSource = new ExternalSource(); + var data = internalSource.data; + var sourceFormat = extSource.sourceFormat = internalSource.sourceFormat; + var sourceHeaderCount = internalSource.startIndex; + var errMsg = ''; + if (internalSource.seriesLayoutBy !== SERIES_LAYOUT_BY_COLUMN) { + // For the logic simplicity in transformer, only 'culumn' is + // supported in data transform. Otherwise, the `dimensionsDefine` + // might be detected by 'row', which probably confuses users. + if ("development" !== 'production') { + errMsg = '`seriesLayoutBy` of upstream dataset can only be "column" in data transform.'; + } + throwError(errMsg); + } + // [MEMO] + // Create a new dimensions structure for exposing. + // Do not expose all dimension info to users directly. + // Because the dimension is probably auto detected from data and not might reliable. + // Should not lead the transformers to think that is reliable and return it. + // See [DIMENSION_INHERIT_RULE] in `sourceManager.ts`. + var dimensions = []; + var dimsByName = {}; + var dimsDef = internalSource.dimensionsDefine; + if (dimsDef) { + each(dimsDef, function (dimDef, idx) { + var name = dimDef.name; + var dimDefExt = { + index: idx, + name: name, + displayName: dimDef.displayName + }; + dimensions.push(dimDefExt); + // Users probably do not specify dimension name. For simplicity, data transform + // does not generate dimension name. + if (name != null) { + // Dimension name should not be duplicated. + // For simplicity, data transform forbids name duplication, do not generate + // new name like module `completeDimensions.ts` did, but just tell users. + var errMsg_1 = ''; + if (hasOwn(dimsByName, name)) { + if ("development" !== 'production') { + errMsg_1 = 'dimension name "' + name + '" duplicated.'; + } + throwError(errMsg_1); + } + dimsByName[name] = dimDefExt; + } + }); + } + // If dimension definitions are not defined and can not be detected. + // e.g., pure data `[[11, 22], ...]`. + else { + for (var i = 0; i < internalSource.dimensionsDetectedCount || 0; i++) { + // Do not generete name or anything others. The consequence process in + // `transform` or `series` probably have there own name generation strategry. + dimensions.push({ + index: i + }); + } + } + // Implement public methods: + var rawItemGetter = getRawSourceItemGetter(sourceFormat, SERIES_LAYOUT_BY_COLUMN); + if (externalTransform.__isBuiltIn) { + extSource.getRawDataItem = function (dataIndex) { + return rawItemGetter(data, sourceHeaderCount, dimensions, dataIndex); + }; + extSource.getRawData = bind(getRawData, null, internalSource); + } + extSource.cloneRawData = bind(cloneRawData, null, internalSource); + var rawCounter = getRawSourceDataCounter(sourceFormat, SERIES_LAYOUT_BY_COLUMN); + extSource.count = bind(rawCounter, null, data, sourceHeaderCount, dimensions); + var rawValueGetter = getRawSourceValueGetter(sourceFormat); + extSource.retrieveValue = function (dataIndex, dimIndex) { + var rawItem = rawItemGetter(data, sourceHeaderCount, dimensions, dataIndex); + return retrieveValueFromItem(rawItem, dimIndex); + }; + var retrieveValueFromItem = extSource.retrieveValueFromItem = function (dataItem, dimIndex) { + if (dataItem == null) { + return; + } + var dimDef = dimensions[dimIndex]; + // When `dimIndex` is `null`, `rawValueGetter` return the whole item. + if (dimDef) { + return rawValueGetter(dataItem, dimIndex, dimDef.name); + } + }; + extSource.getDimensionInfo = bind(getDimensionInfo, null, dimensions, dimsByName); + extSource.cloneAllDimensionInfo = bind(cloneAllDimensionInfo, null, dimensions); + return extSource; + } + function getRawData(upstream) { + var sourceFormat = upstream.sourceFormat; + if (!isSupportedSourceFormat(sourceFormat)) { + var errMsg = ''; + if ("development" !== 'production') { + errMsg = '`getRawData` is not supported in source format ' + sourceFormat; + } + throwError(errMsg); + } + return upstream.data; + } + function cloneRawData(upstream) { + var sourceFormat = upstream.sourceFormat; + var data = upstream.data; + if (!isSupportedSourceFormat(sourceFormat)) { + var errMsg = ''; + if ("development" !== 'production') { + errMsg = '`cloneRawData` is not supported in source format ' + sourceFormat; + } + throwError(errMsg); + } + if (sourceFormat === SOURCE_FORMAT_ARRAY_ROWS) { + var result = []; + for (var i = 0, len = data.length; i < len; i++) { + // Not strictly clone for performance + result.push(data[i].slice()); + } + return result; + } else if (sourceFormat === SOURCE_FORMAT_OBJECT_ROWS) { + var result = []; + for (var i = 0, len = data.length; i < len; i++) { + // Not strictly clone for performance + result.push(extend({}, data[i])); + } + return result; + } + } + function getDimensionInfo(dimensions, dimsByName, dim) { + if (dim == null) { + return; + } + // Keep the same logic as `List::getDimension` did. + if (isNumber(dim) + // If being a number-like string but not being defined a dimension name. + || !isNaN(dim) && !hasOwn(dimsByName, dim)) { + return dimensions[dim]; + } else if (hasOwn(dimsByName, dim)) { + return dimsByName[dim]; + } + } + function cloneAllDimensionInfo(dimensions) { + return clone(dimensions); + } + var externalTransformMap = createHashMap(); + function registerExternalTransform(externalTransform) { + externalTransform = clone(externalTransform); + var type = externalTransform.type; + var errMsg = ''; + if (!type) { + if ("development" !== 'production') { + errMsg = 'Must have a `type` when `registerTransform`.'; + } + throwError(errMsg); + } + var typeParsed = type.split(':'); + if (typeParsed.length !== 2) { + if ("development" !== 'production') { + errMsg = 'Name must include namespace like "ns:regression".'; + } + throwError(errMsg); + } + // Namespace 'echarts:xxx' is official namespace, where the transforms should + // be called directly via 'xxx' rather than 'echarts:xxx'. + var isBuiltIn = false; + if (typeParsed[0] === 'echarts') { + type = typeParsed[1]; + isBuiltIn = true; + } + externalTransform.__isBuiltIn = isBuiltIn; + externalTransformMap.set(type, externalTransform); + } + function applyDataTransform(rawTransOption, sourceList, infoForPrint) { + var pipedTransOption = normalizeToArray(rawTransOption); + var pipeLen = pipedTransOption.length; + var errMsg = ''; + if (!pipeLen) { + if ("development" !== 'production') { + errMsg = 'If `transform` declared, it should at least contain one transform.'; + } + throwError(errMsg); + } + for (var i = 0, len = pipeLen; i < len; i++) { + var transOption = pipedTransOption[i]; + sourceList = applySingleDataTransform(transOption, sourceList, infoForPrint, pipeLen === 1 ? null : i); + // piped transform only support single input, except the fist one. + // piped transform only support single output, except the last one. + if (i !== len - 1) { + sourceList.length = Math.max(sourceList.length, 1); + } + } + return sourceList; + } + function applySingleDataTransform(transOption, upSourceList, infoForPrint, + // If `pipeIndex` is null/undefined, no piped transform. + pipeIndex) { + var errMsg = ''; + if (!upSourceList.length) { + if ("development" !== 'production') { + errMsg = 'Must have at least one upstream dataset.'; + } + throwError(errMsg); + } + if (!isObject(transOption)) { + if ("development" !== 'production') { + errMsg = 'transform declaration must be an object rather than ' + typeof transOption + '.'; + } + throwError(errMsg); + } + var transType = transOption.type; + var externalTransform = externalTransformMap.get(transType); + if (!externalTransform) { + if ("development" !== 'production') { + errMsg = 'Can not find transform on type "' + transType + '".'; + } + throwError(errMsg); + } + // Prepare source + var extUpSourceList = map(upSourceList, function (upSource) { + return createExternalSource(upSource, externalTransform); + }); + var resultList = normalizeToArray(externalTransform.transform({ + upstream: extUpSourceList[0], + upstreamList: extUpSourceList, + config: clone(transOption.config) + })); + if ("development" !== 'production') { + if (transOption.print) { + var printStrArr = map(resultList, function (extSource) { + var pipeIndexStr = pipeIndex != null ? ' === pipe index: ' + pipeIndex : ''; + return ['=== dataset index: ' + infoForPrint.datasetIndex + pipeIndexStr + ' ===', '- transform result data:', makePrintable(extSource.data), '- transform result dimensions:', makePrintable(extSource.dimensions)].join('\n'); + }).join('\n'); + log(printStrArr); + } + } + return map(resultList, function (result, resultIndex) { + var errMsg = ''; + if (!isObject(result)) { + if ("development" !== 'production') { + errMsg = 'A transform should not return some empty results.'; + } + throwError(errMsg); + } + if (!result.data) { + if ("development" !== 'production') { + errMsg = 'Transform result data should be not be null or undefined'; + } + throwError(errMsg); + } + var sourceFormat = detectSourceFormat(result.data); + if (!isSupportedSourceFormat(sourceFormat)) { + if ("development" !== 'production') { + errMsg = 'Transform result data should be array rows or object rows.'; + } + throwError(errMsg); + } + var resultMetaRawOption; + var firstUpSource = upSourceList[0]; + /** + * Intuitively, the end users known the content of the original `dataset.source`, + * calucating the transform result in mind. + * Suppose the original `dataset.source` is: + * ```js + * [ + * ['product', '2012', '2013', '2014', '2015'], + * ['AAA', 41.1, 30.4, 65.1, 53.3], + * ['BBB', 86.5, 92.1, 85.7, 83.1], + * ['CCC', 24.1, 67.2, 79.5, 86.4] + * ] + * ``` + * The dimension info have to be detected from the source data. + * Some of the transformers (like filter, sort) will follow the dimension info + * of upstream, while others use new dimensions (like aggregate). + * Transformer can output a field `dimensions` to define the its own output dimensions. + * We also allow transformers to ignore the output `dimensions` field, and + * inherit the upstream dimensions definition. It can reduce the burden of handling + * dimensions in transformers. + * + * See also [DIMENSION_INHERIT_RULE] in `sourceManager.ts`. + */ + if (firstUpSource && resultIndex === 0 + // If transformer returns `dimensions`, it means that the transformer has different + // dimensions definitions. We do not inherit anything from upstream. + && !result.dimensions) { + var startIndex = firstUpSource.startIndex; + // We copy the header of upstream to the result, because: + // (1) The returned data always does not contain header line and can not be used + // as dimension-detection. In this case we can not use "detected dimensions" of + // upstream directly, because it might be detected based on different `seriesLayoutBy`. + // (2) We should support that the series read the upstream source in `seriesLayoutBy: 'row'`. + // So the original detected header should be add to the result, otherwise they can not be read. + if (startIndex) { + result.data = firstUpSource.data.slice(0, startIndex).concat(result.data); + } + resultMetaRawOption = { + seriesLayoutBy: SERIES_LAYOUT_BY_COLUMN, + sourceHeader: startIndex, + dimensions: firstUpSource.metaRawOption.dimensions + }; + } else { + resultMetaRawOption = { + seriesLayoutBy: SERIES_LAYOUT_BY_COLUMN, + sourceHeader: 0, + dimensions: result.dimensions + }; + } + return createSource(result.data, resultMetaRawOption, null); + }); + } + function isSupportedSourceFormat(sourceFormat) { + return sourceFormat === SOURCE_FORMAT_ARRAY_ROWS || sourceFormat === SOURCE_FORMAT_OBJECT_ROWS; + } + + var UNDEFINED = 'undefined'; + /* global Float64Array, Int32Array, Uint32Array, Uint16Array */ + // Caution: MUST not use `new CtorUint32Array(arr, 0, len)`, because the Ctor of array is + // different from the Ctor of typed array. + var CtorUint32Array = typeof Uint32Array === UNDEFINED ? Array : Uint32Array; + var CtorUint16Array = typeof Uint16Array === UNDEFINED ? Array : Uint16Array; + var CtorInt32Array = typeof Int32Array === UNDEFINED ? Array : Int32Array; + var CtorFloat64Array = typeof Float64Array === UNDEFINED ? Array : Float64Array; + /** + * Multi dimensional data store + */ + var dataCtors = { + 'float': CtorFloat64Array, + 'int': CtorInt32Array, + // Ordinal data type can be string or int + 'ordinal': Array, + 'number': Array, + 'time': CtorFloat64Array + }; + var defaultDimValueGetters; + function getIndicesCtor(rawCount) { + // The possible max value in this._indicies is always this._rawCount despite of filtering. + return rawCount > 65535 ? CtorUint32Array : CtorUint16Array; + } + function getInitialExtent() { + return [Infinity, -Infinity]; + } + function cloneChunk(originalChunk) { + var Ctor = originalChunk.constructor; + // Only shallow clone is enough when Array. + return Ctor === Array ? originalChunk.slice() : new Ctor(originalChunk); + } + function prepareStore(store, dimIdx, dimType, end, append) { + var DataCtor = dataCtors[dimType || 'float']; + if (append) { + var oldStore = store[dimIdx]; + var oldLen = oldStore && oldStore.length; + if (!(oldLen === end)) { + var newStore = new DataCtor(end); + // The cost of the copy is probably inconsiderable + // within the initial chunkSize. + for (var j = 0; j < oldLen; j++) { + newStore[j] = oldStore[j]; + } + store[dimIdx] = newStore; + } + } else { + store[dimIdx] = new DataCtor(end); + } + } + /** + * Basically, DataStore API keep immutable. + */ + var DataStore = /** @class */function () { + function DataStore() { + this._chunks = []; + // It will not be calculated until needed. + this._rawExtent = []; + this._extent = []; + this._count = 0; + this._rawCount = 0; + this._calcDimNameToIdx = createHashMap(); + } + /** + * Initialize from data + */ + DataStore.prototype.initData = function (provider, inputDimensions, dimValueGetter) { + if ("development" !== 'production') { + assert(isFunction(provider.getItem) && isFunction(provider.count), 'Invalid data provider.'); + } + this._provider = provider; + // Clear + this._chunks = []; + this._indices = null; + this.getRawIndex = this._getRawIdxIdentity; + var source = provider.getSource(); + var defaultGetter = this.defaultDimValueGetter = defaultDimValueGetters[source.sourceFormat]; + // Default dim value getter + this._dimValueGetter = dimValueGetter || defaultGetter; + // Reset raw extent. + this._rawExtent = []; + var willRetrieveDataByName = shouldRetrieveDataByName(source); + this._dimensions = map(inputDimensions, function (dim) { + if ("development" !== 'production') { + if (willRetrieveDataByName) { + assert(dim.property != null); + } + } + return { + // Only pick these two props. Not leak other properties like orderMeta. + type: dim.type, + property: dim.property + }; + }); + this._initDataFromProvider(0, provider.count()); + }; + DataStore.prototype.getProvider = function () { + return this._provider; + }; + /** + * Caution: even when a `source` instance owned by a series, the created data store + * may still be shared by different sereis (the source hash does not use all `source` + * props, see `sourceManager`). In this case, the `source` props that are not used in + * hash (like `source.dimensionDefine`) probably only belongs to a certain series and + * thus should not be fetch here. + */ + DataStore.prototype.getSource = function () { + return this._provider.getSource(); + }; + /** + * @caution Only used in dataStack. + */ + DataStore.prototype.ensureCalculationDimension = function (dimName, type) { + var calcDimNameToIdx = this._calcDimNameToIdx; + var dimensions = this._dimensions; + var calcDimIdx = calcDimNameToIdx.get(dimName); + if (calcDimIdx != null) { + if (dimensions[calcDimIdx].type === type) { + return calcDimIdx; + } + } else { + calcDimIdx = dimensions.length; + } + dimensions[calcDimIdx] = { + type: type + }; + calcDimNameToIdx.set(dimName, calcDimIdx); + this._chunks[calcDimIdx] = new dataCtors[type || 'float'](this._rawCount); + this._rawExtent[calcDimIdx] = getInitialExtent(); + return calcDimIdx; + }; + DataStore.prototype.collectOrdinalMeta = function (dimIdx, ordinalMeta) { + var chunk = this._chunks[dimIdx]; + var dim = this._dimensions[dimIdx]; + var rawExtents = this._rawExtent; + var offset = dim.ordinalOffset || 0; + var len = chunk.length; + if (offset === 0) { + // We need to reset the rawExtent if collect is from start. + // Because this dimension may be guessed as number and calcuating a wrong extent. + rawExtents[dimIdx] = getInitialExtent(); + } + var dimRawExtent = rawExtents[dimIdx]; + // Parse from previous data offset. len may be changed after appendData + for (var i = offset; i < len; i++) { + var val = chunk[i] = ordinalMeta.parseAndCollect(chunk[i]); + if (!isNaN(val)) { + dimRawExtent[0] = Math.min(val, dimRawExtent[0]); + dimRawExtent[1] = Math.max(val, dimRawExtent[1]); + } + } + dim.ordinalMeta = ordinalMeta; + dim.ordinalOffset = len; + dim.type = 'ordinal'; // Force to be ordinal + }; + + DataStore.prototype.getOrdinalMeta = function (dimIdx) { + var dimInfo = this._dimensions[dimIdx]; + var ordinalMeta = dimInfo.ordinalMeta; + return ordinalMeta; + }; + DataStore.prototype.getDimensionProperty = function (dimIndex) { + var item = this._dimensions[dimIndex]; + return item && item.property; + }; + /** + * Caution: Can be only called on raw data (before `this._indices` created). + */ + DataStore.prototype.appendData = function (data) { + if ("development" !== 'production') { + assert(!this._indices, 'appendData can only be called on raw data.'); + } + var provider = this._provider; + var start = this.count(); + provider.appendData(data); + var end = provider.count(); + if (!provider.persistent) { + end += start; + } + if (start < end) { + this._initDataFromProvider(start, end, true); + } + return [start, end]; + }; + DataStore.prototype.appendValues = function (values, minFillLen) { + var chunks = this._chunks; + var dimensions = this._dimensions; + var dimLen = dimensions.length; + var rawExtent = this._rawExtent; + var start = this.count(); + var end = start + Math.max(values.length, minFillLen || 0); + for (var i = 0; i < dimLen; i++) { + var dim = dimensions[i]; + prepareStore(chunks, i, dim.type, end, true); + } + var emptyDataItem = []; + for (var idx = start; idx < end; idx++) { + var sourceIdx = idx - start; + // Store the data by dimensions + for (var dimIdx = 0; dimIdx < dimLen; dimIdx++) { + var dim = dimensions[dimIdx]; + var val = defaultDimValueGetters.arrayRows.call(this, values[sourceIdx] || emptyDataItem, dim.property, sourceIdx, dimIdx); + chunks[dimIdx][idx] = val; + var dimRawExtent = rawExtent[dimIdx]; + val < dimRawExtent[0] && (dimRawExtent[0] = val); + val > dimRawExtent[1] && (dimRawExtent[1] = val); + } + } + this._rawCount = this._count = end; + return { + start: start, + end: end + }; + }; + DataStore.prototype._initDataFromProvider = function (start, end, append) { + var provider = this._provider; + var chunks = this._chunks; + var dimensions = this._dimensions; + var dimLen = dimensions.length; + var rawExtent = this._rawExtent; + var dimNames = map(dimensions, function (dim) { + return dim.property; + }); + for (var i = 0; i < dimLen; i++) { + var dim = dimensions[i]; + if (!rawExtent[i]) { + rawExtent[i] = getInitialExtent(); + } + prepareStore(chunks, i, dim.type, end, append); + } + if (provider.fillStorage) { + provider.fillStorage(start, end, chunks, rawExtent); + } else { + var dataItem = []; + for (var idx = start; idx < end; idx++) { + // NOTICE: Try not to write things into dataItem + dataItem = provider.getItem(idx, dataItem); + // Each data item is value + // [1, 2] + // 2 + // Bar chart, line chart which uses category axis + // only gives the 'y' value. 'x' value is the indices of category + // Use a tempValue to normalize the value to be a (x, y) value + // Store the data by dimensions + for (var dimIdx = 0; dimIdx < dimLen; dimIdx++) { + var dimStorage = chunks[dimIdx]; + // PENDING NULL is empty or zero + var val = this._dimValueGetter(dataItem, dimNames[dimIdx], idx, dimIdx); + dimStorage[idx] = val; + var dimRawExtent = rawExtent[dimIdx]; + val < dimRawExtent[0] && (dimRawExtent[0] = val); + val > dimRawExtent[1] && (dimRawExtent[1] = val); + } + } + } + if (!provider.persistent && provider.clean) { + // Clean unused data if data source is typed array. + provider.clean(); + } + this._rawCount = this._count = end; + // Reset data extent + this._extent = []; + }; + DataStore.prototype.count = function () { + return this._count; + }; + /** + * Get value. Return NaN if idx is out of range. + */ + DataStore.prototype.get = function (dim, idx) { + if (!(idx >= 0 && idx < this._count)) { + return NaN; + } + var dimStore = this._chunks[dim]; + return dimStore ? dimStore[this.getRawIndex(idx)] : NaN; + }; + DataStore.prototype.getValues = function (dimensions, idx) { + var values = []; + var dimArr = []; + if (idx == null) { + idx = dimensions; + // TODO get all from store? + dimensions = []; + // All dimensions + for (var i = 0; i < this._dimensions.length; i++) { + dimArr.push(i); + } + } else { + dimArr = dimensions; + } + for (var i = 0, len = dimArr.length; i < len; i++) { + values.push(this.get(dimArr[i], idx)); + } + return values; + }; + /** + * @param dim concrete dim + */ + DataStore.prototype.getByRawIndex = function (dim, rawIdx) { + if (!(rawIdx >= 0 && rawIdx < this._rawCount)) { + return NaN; + } + var dimStore = this._chunks[dim]; + return dimStore ? dimStore[rawIdx] : NaN; + }; + /** + * Get sum of data in one dimension + */ + DataStore.prototype.getSum = function (dim) { + var dimData = this._chunks[dim]; + var sum = 0; + if (dimData) { + for (var i = 0, len = this.count(); i < len; i++) { + var value = this.get(dim, i); + if (!isNaN(value)) { + sum += value; + } + } + } + return sum; + }; + /** + * Get median of data in one dimension + */ + DataStore.prototype.getMedian = function (dim) { + var dimDataArray = []; + // map all data of one dimension + this.each([dim], function (val) { + if (!isNaN(val)) { + dimDataArray.push(val); + } + }); + // TODO + // Use quick select? + var sortedDimDataArray = dimDataArray.sort(function (a, b) { + return a - b; + }); + var len = this.count(); + // calculate median + return len === 0 ? 0 : len % 2 === 1 ? sortedDimDataArray[(len - 1) / 2] : (sortedDimDataArray[len / 2] + sortedDimDataArray[len / 2 - 1]) / 2; + }; + /** + * Retrieve the index with given raw data index. + */ + DataStore.prototype.indexOfRawIndex = function (rawIndex) { + if (rawIndex >= this._rawCount || rawIndex < 0) { + return -1; + } + if (!this._indices) { + return rawIndex; + } + // Indices are ascending + var indices = this._indices; + // If rawIndex === dataIndex + var rawDataIndex = indices[rawIndex]; + if (rawDataIndex != null && rawDataIndex < this._count && rawDataIndex === rawIndex) { + return rawIndex; + } + var left = 0; + var right = this._count - 1; + while (left <= right) { + var mid = (left + right) / 2 | 0; + if (indices[mid] < rawIndex) { + left = mid + 1; + } else if (indices[mid] > rawIndex) { + right = mid - 1; + } else { + return mid; + } + } + return -1; + }; + /** + * Retrieve the index of nearest value. + * @param dim + * @param value + * @param [maxDistance=Infinity] + * @return If and only if multiple indices have + * the same value, they are put to the result. + */ + DataStore.prototype.indicesOfNearest = function (dim, value, maxDistance) { + var chunks = this._chunks; + var dimData = chunks[dim]; + var nearestIndices = []; + if (!dimData) { + return nearestIndices; + } + if (maxDistance == null) { + maxDistance = Infinity; + } + var minDist = Infinity; + var minDiff = -1; + var nearestIndicesLen = 0; + // Check the test case of `test/ut/spec/data/SeriesData.js`. + for (var i = 0, len = this.count(); i < len; i++) { + var dataIndex = this.getRawIndex(i); + var diff = value - dimData[dataIndex]; + var dist = Math.abs(diff); + if (dist <= maxDistance) { + // When the `value` is at the middle of `this.get(dim, i)` and `this.get(dim, i+1)`, + // we'd better not push both of them to `nearestIndices`, otherwise it is easy to + // get more than one item in `nearestIndices` (more specifically, in `tooltip`). + // So we choose the one that `diff >= 0` in this case. + // But if `this.get(dim, i)` and `this.get(dim, j)` get the same value, both of them + // should be push to `nearestIndices`. + if (dist < minDist || dist === minDist && diff >= 0 && minDiff < 0) { + minDist = dist; + minDiff = diff; + nearestIndicesLen = 0; + } + if (diff === minDiff) { + nearestIndices[nearestIndicesLen++] = i; + } + } + } + nearestIndices.length = nearestIndicesLen; + return nearestIndices; + }; + DataStore.prototype.getIndices = function () { + var newIndices; + var indices = this._indices; + if (indices) { + var Ctor = indices.constructor; + var thisCount = this._count; + // `new Array(a, b, c)` is different from `new Uint32Array(a, b, c)`. + if (Ctor === Array) { + newIndices = new Ctor(thisCount); + for (var i = 0; i < thisCount; i++) { + newIndices[i] = indices[i]; + } + } else { + newIndices = new Ctor(indices.buffer, 0, thisCount); + } + } else { + var Ctor = getIndicesCtor(this._rawCount); + newIndices = new Ctor(this.count()); + for (var i = 0; i < newIndices.length; i++) { + newIndices[i] = i; + } + } + return newIndices; + }; + /** + * Data filter. + */ + DataStore.prototype.filter = function (dims, cb) { + if (!this._count) { + return this; + } + var newStore = this.clone(); + var count = newStore.count(); + var Ctor = getIndicesCtor(newStore._rawCount); + var newIndices = new Ctor(count); + var value = []; + var dimSize = dims.length; + var offset = 0; + var dim0 = dims[0]; + var chunks = newStore._chunks; + for (var i = 0; i < count; i++) { + var keep = void 0; + var rawIdx = newStore.getRawIndex(i); + // Simple optimization + if (dimSize === 0) { + keep = cb(i); + } else if (dimSize === 1) { + var val = chunks[dim0][rawIdx]; + keep = cb(val, i); + } else { + var k = 0; + for (; k < dimSize; k++) { + value[k] = chunks[dims[k]][rawIdx]; + } + value[k] = i; + keep = cb.apply(null, value); + } + if (keep) { + newIndices[offset++] = rawIdx; + } + } + // Set indices after filtered. + if (offset < count) { + newStore._indices = newIndices; + } + newStore._count = offset; + // Reset data extent + newStore._extent = []; + newStore._updateGetRawIdx(); + return newStore; + }; + /** + * Select data in range. (For optimization of filter) + * (Manually inline code, support 5 million data filtering in data zoom.) + */ + DataStore.prototype.selectRange = function (range) { + var newStore = this.clone(); + var len = newStore._count; + if (!len) { + return this; + } + var dims = keys(range); + var dimSize = dims.length; + if (!dimSize) { + return this; + } + var originalCount = newStore.count(); + var Ctor = getIndicesCtor(newStore._rawCount); + var newIndices = new Ctor(originalCount); + var offset = 0; + var dim0 = dims[0]; + var min = range[dim0][0]; + var max = range[dim0][1]; + var storeArr = newStore._chunks; + var quickFinished = false; + if (!newStore._indices) { + // Extreme optimization for common case. About 2x faster in chrome. + var idx = 0; + if (dimSize === 1) { + var dimStorage = storeArr[dims[0]]; + for (var i = 0; i < len; i++) { + var val = dimStorage[i]; + // NaN will not be filtered. Consider the case, in line chart, empty + // value indicates the line should be broken. But for the case like + // scatter plot, a data item with empty value will not be rendered, + // but the axis extent may be effected if some other dim of the data + // item has value. Fortunately it is not a significant negative effect. + if (val >= min && val <= max || isNaN(val)) { + newIndices[offset++] = idx; + } + idx++; + } + quickFinished = true; + } else if (dimSize === 2) { + var dimStorage = storeArr[dims[0]]; + var dimStorage2 = storeArr[dims[1]]; + var min2 = range[dims[1]][0]; + var max2 = range[dims[1]][1]; + for (var i = 0; i < len; i++) { + var val = dimStorage[i]; + var val2 = dimStorage2[i]; + // Do not filter NaN, see comment above. + if ((val >= min && val <= max || isNaN(val)) && (val2 >= min2 && val2 <= max2 || isNaN(val2))) { + newIndices[offset++] = idx; + } + idx++; + } + quickFinished = true; + } + } + if (!quickFinished) { + if (dimSize === 1) { + for (var i = 0; i < originalCount; i++) { + var rawIndex = newStore.getRawIndex(i); + var val = storeArr[dims[0]][rawIndex]; + // Do not filter NaN, see comment above. + if (val >= min && val <= max || isNaN(val)) { + newIndices[offset++] = rawIndex; + } + } + } else { + for (var i = 0; i < originalCount; i++) { + var keep = true; + var rawIndex = newStore.getRawIndex(i); + for (var k = 0; k < dimSize; k++) { + var dimk = dims[k]; + var val = storeArr[dimk][rawIndex]; + // Do not filter NaN, see comment above. + if (val < range[dimk][0] || val > range[dimk][1]) { + keep = false; + } + } + if (keep) { + newIndices[offset++] = newStore.getRawIndex(i); + } + } + } + } + // Set indices after filtered. + if (offset < originalCount) { + newStore._indices = newIndices; + } + newStore._count = offset; + // Reset data extent + newStore._extent = []; + newStore._updateGetRawIdx(); + return newStore; + }; + // /** + // * Data mapping to a plain array + // */ + // mapArray(dims: DimensionIndex[], cb: MapArrayCb): any[] { + // const result: any[] = []; + // this.each(dims, function () { + // result.push(cb && (cb as MapArrayCb).apply(null, arguments)); + // }); + // return result; + // } + /** + * Data mapping to a new List with given dimensions + */ + DataStore.prototype.map = function (dims, cb) { + // TODO only clone picked chunks. + var target = this.clone(dims); + this._updateDims(target, dims, cb); + return target; + }; + /** + * @caution Danger!! Only used in dataStack. + */ + DataStore.prototype.modify = function (dims, cb) { + this._updateDims(this, dims, cb); + }; + DataStore.prototype._updateDims = function (target, dims, cb) { + var targetChunks = target._chunks; + var tmpRetValue = []; + var dimSize = dims.length; + var dataCount = target.count(); + var values = []; + var rawExtent = target._rawExtent; + for (var i = 0; i < dims.length; i++) { + rawExtent[dims[i]] = getInitialExtent(); + } + for (var dataIndex = 0; dataIndex < dataCount; dataIndex++) { + var rawIndex = target.getRawIndex(dataIndex); + for (var k = 0; k < dimSize; k++) { + values[k] = targetChunks[dims[k]][rawIndex]; + } + values[dimSize] = dataIndex; + var retValue = cb && cb.apply(null, values); + if (retValue != null) { + // a number or string (in oridinal dimension)? + if (typeof retValue !== 'object') { + tmpRetValue[0] = retValue; + retValue = tmpRetValue; + } + for (var i = 0; i < retValue.length; i++) { + var dim = dims[i]; + var val = retValue[i]; + var rawExtentOnDim = rawExtent[dim]; + var dimStore = targetChunks[dim]; + if (dimStore) { + dimStore[rawIndex] = val; + } + if (val < rawExtentOnDim[0]) { + rawExtentOnDim[0] = val; + } + if (val > rawExtentOnDim[1]) { + rawExtentOnDim[1] = val; + } + } + } + } + }; + /** + * Large data down sampling using largest-triangle-three-buckets + * @param {string} valueDimension + * @param {number} targetCount + */ + DataStore.prototype.lttbDownSample = function (valueDimension, rate) { + var target = this.clone([valueDimension], true); + var targetStorage = target._chunks; + var dimStore = targetStorage[valueDimension]; + var len = this.count(); + var sampledIndex = 0; + var frameSize = Math.floor(1 / rate); + var currentRawIndex = this.getRawIndex(0); + var maxArea; + var area; + var nextRawIndex; + var newIndices = new (getIndicesCtor(this._rawCount))(Math.min((Math.ceil(len / frameSize) + 2) * 2, len)); + // First frame use the first data. + newIndices[sampledIndex++] = currentRawIndex; + for (var i = 1; i < len - 1; i += frameSize) { + var nextFrameStart = Math.min(i + frameSize, len - 1); + var nextFrameEnd = Math.min(i + frameSize * 2, len); + var avgX = (nextFrameEnd + nextFrameStart) / 2; + var avgY = 0; + for (var idx = nextFrameStart; idx < nextFrameEnd; idx++) { + var rawIndex = this.getRawIndex(idx); + var y = dimStore[rawIndex]; + if (isNaN(y)) { + continue; + } + avgY += y; + } + avgY /= nextFrameEnd - nextFrameStart; + var frameStart = i; + var frameEnd = Math.min(i + frameSize, len); + var pointAX = i - 1; + var pointAY = dimStore[currentRawIndex]; + maxArea = -1; + nextRawIndex = frameStart; + var firstNaNIndex = -1; + var countNaN = 0; + // Find a point from current frame that construct a triangle with largest area with previous selected point + // And the average of next frame. + for (var idx = frameStart; idx < frameEnd; idx++) { + var rawIndex = this.getRawIndex(idx); + var y = dimStore[rawIndex]; + if (isNaN(y)) { + countNaN++; + if (firstNaNIndex < 0) { + firstNaNIndex = rawIndex; + } + continue; + } + // Calculate triangle area over three buckets + area = Math.abs((pointAX - avgX) * (y - pointAY) - (pointAX - idx) * (avgY - pointAY)); + if (area > maxArea) { + maxArea = area; + nextRawIndex = rawIndex; // Next a is this b + } + } + + if (countNaN > 0 && countNaN < frameEnd - frameStart) { + // Append first NaN point in every bucket. + // It is necessary to ensure the correct order of indices. + newIndices[sampledIndex++] = Math.min(firstNaNIndex, nextRawIndex); + nextRawIndex = Math.max(firstNaNIndex, nextRawIndex); + } + newIndices[sampledIndex++] = nextRawIndex; + currentRawIndex = nextRawIndex; // This a is the next a (chosen b) + } + // First frame use the last data. + newIndices[sampledIndex++] = this.getRawIndex(len - 1); + target._count = sampledIndex; + target._indices = newIndices; + target.getRawIndex = this._getRawIdx; + return target; + }; + /** + * Large data down sampling on given dimension + * @param sampleIndex Sample index for name and id + */ + DataStore.prototype.downSample = function (dimension, rate, sampleValue, sampleIndex) { + var target = this.clone([dimension], true); + var targetStorage = target._chunks; + var frameValues = []; + var frameSize = Math.floor(1 / rate); + var dimStore = targetStorage[dimension]; + var len = this.count(); + var rawExtentOnDim = target._rawExtent[dimension] = getInitialExtent(); + var newIndices = new (getIndicesCtor(this._rawCount))(Math.ceil(len / frameSize)); + var offset = 0; + for (var i = 0; i < len; i += frameSize) { + // Last frame + if (frameSize > len - i) { + frameSize = len - i; + frameValues.length = frameSize; + } + for (var k = 0; k < frameSize; k++) { + var dataIdx = this.getRawIndex(i + k); + frameValues[k] = dimStore[dataIdx]; + } + var value = sampleValue(frameValues); + var sampleFrameIdx = this.getRawIndex(Math.min(i + sampleIndex(frameValues, value) || 0, len - 1)); + // Only write value on the filtered data + dimStore[sampleFrameIdx] = value; + if (value < rawExtentOnDim[0]) { + rawExtentOnDim[0] = value; + } + if (value > rawExtentOnDim[1]) { + rawExtentOnDim[1] = value; + } + newIndices[offset++] = sampleFrameIdx; + } + target._count = offset; + target._indices = newIndices; + target._updateGetRawIdx(); + return target; + }; + /** + * Data iteration + * @param ctx default this + * @example + * list.each('x', function (x, idx) {}); + * list.each(['x', 'y'], function (x, y, idx) {}); + * list.each(function (idx) {}) + */ + DataStore.prototype.each = function (dims, cb) { + if (!this._count) { + return; + } + var dimSize = dims.length; + var chunks = this._chunks; + for (var i = 0, len = this.count(); i < len; i++) { + var rawIdx = this.getRawIndex(i); + // Simple optimization + switch (dimSize) { + case 0: + cb(i); + break; + case 1: + cb(chunks[dims[0]][rawIdx], i); + break; + case 2: + cb(chunks[dims[0]][rawIdx], chunks[dims[1]][rawIdx], i); + break; + default: + var k = 0; + var value = []; + for (; k < dimSize; k++) { + value[k] = chunks[dims[k]][rawIdx]; + } + // Index + value[k] = i; + cb.apply(null, value); + } + } + }; + /** + * Get extent of data in one dimension + */ + DataStore.prototype.getDataExtent = function (dim) { + // Make sure use concrete dim as cache name. + var dimData = this._chunks[dim]; + var initialExtent = getInitialExtent(); + if (!dimData) { + return initialExtent; + } + // Make more strict checkings to ensure hitting cache. + var currEnd = this.count(); + // Consider the most cases when using data zoom, `getDataExtent` + // happened before filtering. We cache raw extent, which is not + // necessary to be cleared and recalculated when restore data. + var useRaw = !this._indices; + var dimExtent; + if (useRaw) { + return this._rawExtent[dim].slice(); + } + dimExtent = this._extent[dim]; + if (dimExtent) { + return dimExtent.slice(); + } + dimExtent = initialExtent; + var min = dimExtent[0]; + var max = dimExtent[1]; + for (var i = 0; i < currEnd; i++) { + var rawIdx = this.getRawIndex(i); + var value = dimData[rawIdx]; + value < min && (min = value); + value > max && (max = value); + } + dimExtent = [min, max]; + this._extent[dim] = dimExtent; + return dimExtent; + }; + /** + * Get raw data item + */ + DataStore.prototype.getRawDataItem = function (idx) { + var rawIdx = this.getRawIndex(idx); + if (!this._provider.persistent) { + var val = []; + var chunks = this._chunks; + for (var i = 0; i < chunks.length; i++) { + val.push(chunks[i][rawIdx]); + } + return val; + } else { + return this._provider.getItem(rawIdx); + } + }; + /** + * Clone shallow. + * + * @param clonedDims Determine which dims to clone. Will share the data if not specified. + */ + DataStore.prototype.clone = function (clonedDims, ignoreIndices) { + var target = new DataStore(); + var chunks = this._chunks; + var clonedDimsMap = clonedDims && reduce(clonedDims, function (obj, dimIdx) { + obj[dimIdx] = true; + return obj; + }, {}); + if (clonedDimsMap) { + for (var i = 0; i < chunks.length; i++) { + // Not clone if dim is not picked. + target._chunks[i] = !clonedDimsMap[i] ? chunks[i] : cloneChunk(chunks[i]); + } + } else { + target._chunks = chunks; + } + this._copyCommonProps(target); + if (!ignoreIndices) { + target._indices = this._cloneIndices(); + } + target._updateGetRawIdx(); + return target; + }; + DataStore.prototype._copyCommonProps = function (target) { + target._count = this._count; + target._rawCount = this._rawCount; + target._provider = this._provider; + target._dimensions = this._dimensions; + target._extent = clone(this._extent); + target._rawExtent = clone(this._rawExtent); + }; + DataStore.prototype._cloneIndices = function () { + if (this._indices) { + var Ctor = this._indices.constructor; + var indices = void 0; + if (Ctor === Array) { + var thisCount = this._indices.length; + indices = new Ctor(thisCount); + for (var i = 0; i < thisCount; i++) { + indices[i] = this._indices[i]; + } + } else { + indices = new Ctor(this._indices); + } + return indices; + } + return null; + }; + DataStore.prototype._getRawIdxIdentity = function (idx) { + return idx; + }; + DataStore.prototype._getRawIdx = function (idx) { + if (idx < this._count && idx >= 0) { + return this._indices[idx]; + } + return -1; + }; + DataStore.prototype._updateGetRawIdx = function () { + this.getRawIndex = this._indices ? this._getRawIdx : this._getRawIdxIdentity; + }; + DataStore.internalField = function () { + function getDimValueSimply(dataItem, property, dataIndex, dimIndex) { + return parseDataValue(dataItem[dimIndex], this._dimensions[dimIndex]); + } + defaultDimValueGetters = { + arrayRows: getDimValueSimply, + objectRows: function (dataItem, property, dataIndex, dimIndex) { + return parseDataValue(dataItem[property], this._dimensions[dimIndex]); + }, + keyedColumns: getDimValueSimply, + original: function (dataItem, property, dataIndex, dimIndex) { + // Performance sensitive, do not use modelUtil.getDataItemValue. + // If dataItem is an plain object with no value field, the let `value` + // will be assigned with the object, but it will be tread correctly + // in the `convertValue`. + var value = dataItem && (dataItem.value == null ? dataItem : dataItem.value); + return parseDataValue(value instanceof Array ? value[dimIndex] + // If value is a single number or something else not array. + : value, this._dimensions[dimIndex]); + }, + typedArray: function (dataItem, property, dataIndex, dimIndex) { + return dataItem[dimIndex]; + } + }; + }(); + return DataStore; + }(); + + /** + * [REQUIREMENT_MEMO]: + * (0) `metaRawOption` means `dimensions`/`sourceHeader`/`seriesLayoutBy` in raw option. + * (1) Keep support the feature: `metaRawOption` can be specified both on `series` and + * `root-dataset`. Them on `series` has higher priority. + * (2) Do not support to set `metaRawOption` on a `non-root-dataset`, because it might + * confuse users: whether those props indicate how to visit the upstream source or visit + * the transform result source, and some transforms has nothing to do with these props, + * and some transforms might have multiple upstream. + * (3) Transforms should specify `metaRawOption` in each output, just like they can be + * declared in `root-dataset`. + * (4) At present only support visit source in `SERIES_LAYOUT_BY_COLUMN` in transforms. + * That is for reducing complexity in transforms. + * PENDING: Whether to provide transposition transform? + * + * [IMPLEMENTAION_MEMO]: + * "sourceVisitConfig" are calculated from `metaRawOption` and `data`. + * They will not be calculated until `source` is about to be visited (to prevent from + * duplicate calcuation). `source` is visited only in series and input to transforms. + * + * [DIMENSION_INHERIT_RULE]: + * By default the dimensions are inherited from ancestors, unless a transform return + * a new dimensions definition. + * Consider the case: + * ```js + * dataset: [{ + * source: [ ['Product', 'Sales', 'Prise'], ['Cookies', 321, 44.21], ...] + * }, { + * transform: { type: 'filter', ... } + * }] + * dataset: [{ + * dimension: ['Product', 'Sales', 'Prise'], + * source: [ ['Cookies', 321, 44.21], ...] + * }, { + * transform: { type: 'filter', ... } + * }] + * ``` + * The two types of option should have the same behavior after transform. + * + * + * [SCENARIO]: + * (1) Provide source data directly: + * ```js + * series: { + * encode: {...}, + * dimensions: [...] + * seriesLayoutBy: 'row', + * data: [[...]] + * } + * ``` + * (2) Series refer to dataset. + * ```js + * series: [{ + * encode: {...} + * // Ignore datasetIndex means `datasetIndex: 0` + * // and the dimensions defination in dataset is used + * }, { + * encode: {...}, + * seriesLayoutBy: 'column', + * datasetIndex: 1 + * }] + * ``` + * (3) dataset transform + * ```js + * dataset: [{ + * source: [...] + * }, { + * source: [...] + * }, { + * // By default from 0. + * transform: { type: 'filter', config: {...} } + * }, { + * // Piped. + * transform: [ + * { type: 'filter', config: {...} }, + * { type: 'sort', config: {...} } + * ] + * }, { + * id: 'regressionData', + * fromDatasetIndex: 1, + * // Third-party transform + * transform: { type: 'ecStat:regression', config: {...} } + * }, { + * // retrieve the extra result. + * id: 'regressionFormula', + * fromDatasetId: 'regressionData', + * fromTransformResult: 1 + * }] + * ``` + */ + var SourceManager = /** @class */function () { + function SourceManager(sourceHost) { + // Cached source. Do not repeat calculating if not dirty. + this._sourceList = []; + this._storeList = []; + // version sign of each upstream source manager. + this._upstreamSignList = []; + this._versionSignBase = 0; + this._dirty = true; + this._sourceHost = sourceHost; + } + /** + * Mark dirty. + */ + SourceManager.prototype.dirty = function () { + this._setLocalSource([], []); + this._storeList = []; + this._dirty = true; + }; + SourceManager.prototype._setLocalSource = function (sourceList, upstreamSignList) { + this._sourceList = sourceList; + this._upstreamSignList = upstreamSignList; + this._versionSignBase++; + if (this._versionSignBase > 9e10) { + this._versionSignBase = 0; + } + }; + /** + * For detecting whether the upstream source is dirty, so that + * the local cached source (in `_sourceList`) should be discarded. + */ + SourceManager.prototype._getVersionSign = function () { + return this._sourceHost.uid + '_' + this._versionSignBase; + }; + /** + * Always return a source instance. Otherwise throw error. + */ + SourceManager.prototype.prepareSource = function () { + // For the case that call `setOption` multiple time but no data changed, + // cache the result source to prevent from repeating transform. + if (this._isDirty()) { + this._createSource(); + this._dirty = false; + } + }; + SourceManager.prototype._createSource = function () { + this._setLocalSource([], []); + var sourceHost = this._sourceHost; + var upSourceMgrList = this._getUpstreamSourceManagers(); + var hasUpstream = !!upSourceMgrList.length; + var resultSourceList; + var upstreamSignList; + if (isSeries(sourceHost)) { + var seriesModel = sourceHost; + var data = void 0; + var sourceFormat = void 0; + var upSource = void 0; + // Has upstream dataset + if (hasUpstream) { + var upSourceMgr = upSourceMgrList[0]; + upSourceMgr.prepareSource(); + upSource = upSourceMgr.getSource(); + data = upSource.data; + sourceFormat = upSource.sourceFormat; + upstreamSignList = [upSourceMgr._getVersionSign()]; + } + // Series data is from own. + else { + data = seriesModel.get('data', true); + sourceFormat = isTypedArray(data) ? SOURCE_FORMAT_TYPED_ARRAY : SOURCE_FORMAT_ORIGINAL; + upstreamSignList = []; + } + // See [REQUIREMENT_MEMO], merge settings on series and parent dataset if it is root. + var newMetaRawOption = this._getSourceMetaRawOption() || {}; + var upMetaRawOption = upSource && upSource.metaRawOption || {}; + var seriesLayoutBy = retrieve2(newMetaRawOption.seriesLayoutBy, upMetaRawOption.seriesLayoutBy) || null; + var sourceHeader = retrieve2(newMetaRawOption.sourceHeader, upMetaRawOption.sourceHeader); + // Note here we should not use `upSource.dimensionsDefine`. Consider the case: + // `upSource.dimensionsDefine` is detected by `seriesLayoutBy: 'column'`, + // but series need `seriesLayoutBy: 'row'`. + var dimensions = retrieve2(newMetaRawOption.dimensions, upMetaRawOption.dimensions); + // We share source with dataset as much as possible + // to avoid extra memory cost of high dimensional data. + var needsCreateSource = seriesLayoutBy !== upMetaRawOption.seriesLayoutBy || !!sourceHeader !== !!upMetaRawOption.sourceHeader || dimensions; + resultSourceList = needsCreateSource ? [createSource(data, { + seriesLayoutBy: seriesLayoutBy, + sourceHeader: sourceHeader, + dimensions: dimensions + }, sourceFormat)] : []; + } else { + var datasetModel = sourceHost; + // Has upstream dataset. + if (hasUpstream) { + var result = this._applyTransform(upSourceMgrList); + resultSourceList = result.sourceList; + upstreamSignList = result.upstreamSignList; + } + // Is root dataset. + else { + var sourceData = datasetModel.get('source', true); + resultSourceList = [createSource(sourceData, this._getSourceMetaRawOption(), null)]; + upstreamSignList = []; + } + } + if ("development" !== 'production') { + assert(resultSourceList && upstreamSignList); + } + this._setLocalSource(resultSourceList, upstreamSignList); + }; + SourceManager.prototype._applyTransform = function (upMgrList) { + var datasetModel = this._sourceHost; + var transformOption = datasetModel.get('transform', true); + var fromTransformResult = datasetModel.get('fromTransformResult', true); + if ("development" !== 'production') { + assert(fromTransformResult != null || transformOption != null); + } + if (fromTransformResult != null) { + var errMsg = ''; + if (upMgrList.length !== 1) { + if ("development" !== 'production') { + errMsg = 'When using `fromTransformResult`, there should be only one upstream dataset'; + } + doThrow(errMsg); + } + } + var sourceList; + var upSourceList = []; + var upstreamSignList = []; + each(upMgrList, function (upMgr) { + upMgr.prepareSource(); + var upSource = upMgr.getSource(fromTransformResult || 0); + var errMsg = ''; + if (fromTransformResult != null && !upSource) { + if ("development" !== 'production') { + errMsg = 'Can not retrieve result by `fromTransformResult`: ' + fromTransformResult; + } + doThrow(errMsg); + } + upSourceList.push(upSource); + upstreamSignList.push(upMgr._getVersionSign()); + }); + if (transformOption) { + sourceList = applyDataTransform(transformOption, upSourceList, { + datasetIndex: datasetModel.componentIndex + }); + } else if (fromTransformResult != null) { + sourceList = [cloneSourceShallow(upSourceList[0])]; + } + return { + sourceList: sourceList, + upstreamSignList: upstreamSignList + }; + }; + SourceManager.prototype._isDirty = function () { + if (this._dirty) { + return true; + } + // All sourceList is from the some upstream. + var upSourceMgrList = this._getUpstreamSourceManagers(); + for (var i = 0; i < upSourceMgrList.length; i++) { + var upSrcMgr = upSourceMgrList[i]; + if ( + // Consider the case that there is ancestor diry, call it recursively. + // The performance is probably not an issue because usually the chain is not long. + upSrcMgr._isDirty() || this._upstreamSignList[i] !== upSrcMgr._getVersionSign()) { + return true; + } + } + }; + /** + * @param sourceIndex By default 0, means "main source". + * In most cases there is only one source. + */ + SourceManager.prototype.getSource = function (sourceIndex) { + sourceIndex = sourceIndex || 0; + var source = this._sourceList[sourceIndex]; + if (!source) { + // Series may share source instance with dataset. + var upSourceMgrList = this._getUpstreamSourceManagers(); + return upSourceMgrList[0] && upSourceMgrList[0].getSource(sourceIndex); + } + return source; + }; + /** + * + * Get a data store which can be shared across series. + * Only available for series. + * + * @param seriesDimRequest Dimensions that are generated in series. + * Should have been sorted by `storeDimIndex` asc. + */ + SourceManager.prototype.getSharedDataStore = function (seriesDimRequest) { + if ("development" !== 'production') { + assert(isSeries(this._sourceHost), 'Can only call getDataStore on series source manager.'); + } + var schema = seriesDimRequest.makeStoreSchema(); + return this._innerGetDataStore(schema.dimensions, seriesDimRequest.source, schema.hash); + }; + SourceManager.prototype._innerGetDataStore = function (storeDims, seriesSource, sourceReadKey) { + // TODO Can use other sourceIndex? + var sourceIndex = 0; + var storeList = this._storeList; + var cachedStoreMap = storeList[sourceIndex]; + if (!cachedStoreMap) { + cachedStoreMap = storeList[sourceIndex] = {}; + } + var cachedStore = cachedStoreMap[sourceReadKey]; + if (!cachedStore) { + var upSourceMgr = this._getUpstreamSourceManagers()[0]; + if (isSeries(this._sourceHost) && upSourceMgr) { + cachedStore = upSourceMgr._innerGetDataStore(storeDims, seriesSource, sourceReadKey); + } else { + cachedStore = new DataStore(); + // Always create store from source of series. + cachedStore.initData(new DefaultDataProvider(seriesSource, storeDims.length), storeDims); + } + cachedStoreMap[sourceReadKey] = cachedStore; + } + return cachedStore; + }; + /** + * PENDING: Is it fast enough? + * If no upstream, return empty array. + */ + SourceManager.prototype._getUpstreamSourceManagers = function () { + // Always get the relationship from the raw option. + // Do not cache the link of the dependency graph, so that + // there is no need to update them when change happens. + var sourceHost = this._sourceHost; + if (isSeries(sourceHost)) { + var datasetModel = querySeriesUpstreamDatasetModel(sourceHost); + return !datasetModel ? [] : [datasetModel.getSourceManager()]; + } else { + return map(queryDatasetUpstreamDatasetModels(sourceHost), function (datasetModel) { + return datasetModel.getSourceManager(); + }); + } + }; + SourceManager.prototype._getSourceMetaRawOption = function () { + var sourceHost = this._sourceHost; + var seriesLayoutBy; + var sourceHeader; + var dimensions; + if (isSeries(sourceHost)) { + seriesLayoutBy = sourceHost.get('seriesLayoutBy', true); + sourceHeader = sourceHost.get('sourceHeader', true); + dimensions = sourceHost.get('dimensions', true); + } + // See [REQUIREMENT_MEMO], `non-root-dataset` do not support them. + else if (!this._getUpstreamSourceManagers().length) { + var model = sourceHost; + seriesLayoutBy = model.get('seriesLayoutBy', true); + sourceHeader = model.get('sourceHeader', true); + dimensions = model.get('dimensions', true); + } + return { + seriesLayoutBy: seriesLayoutBy, + sourceHeader: sourceHeader, + dimensions: dimensions + }; + }; + return SourceManager; + }(); + // Call this method after `super.init` and `super.mergeOption` to + // disable the transform merge, but do not disable transform clone from rawOption. + function disableTransformOptionMerge(datasetModel) { + var transformOption = datasetModel.option.transform; + transformOption && setAsPrimitive(datasetModel.option.transform); + } + function isSeries(sourceHost) { + // Avoid circular dependency with Series.ts + return sourceHost.mainType === 'series'; + } + function doThrow(errMsg) { + throw new Error(errMsg); + } + + var TOOLTIP_LINE_HEIGHT_CSS = 'line-height:1'; + // TODO: more textStyle option + function getTooltipTextStyle(textStyle, renderMode) { + var nameFontColor = textStyle.color || '#6e7079'; + var nameFontSize = textStyle.fontSize || 12; + var nameFontWeight = textStyle.fontWeight || '400'; + var valueFontColor = textStyle.color || '#464646'; + var valueFontSize = textStyle.fontSize || 14; + var valueFontWeight = textStyle.fontWeight || '900'; + if (renderMode === 'html') { + // `textStyle` is probably from user input, should be encoded to reduce security risk. + return { + // eslint-disable-next-line max-len + nameStyle: "font-size:" + encodeHTML(nameFontSize + '') + "px;color:" + encodeHTML(nameFontColor) + ";font-weight:" + encodeHTML(nameFontWeight + ''), + // eslint-disable-next-line max-len + valueStyle: "font-size:" + encodeHTML(valueFontSize + '') + "px;color:" + encodeHTML(valueFontColor) + ";font-weight:" + encodeHTML(valueFontWeight + '') + }; + } else { + return { + nameStyle: { + fontSize: nameFontSize, + fill: nameFontColor, + fontWeight: nameFontWeight + }, + valueStyle: { + fontSize: valueFontSize, + fill: valueFontColor, + fontWeight: valueFontWeight + } + }; + } + } + // See `TooltipMarkupLayoutIntent['innerGapLevel']`. + // (value from UI design) + var HTML_GAPS = [0, 10, 20, 30]; + var RICH_TEXT_GAPS = ['', '\n', '\n\n', '\n\n\n']; + // eslint-disable-next-line max-len + function createTooltipMarkup(type, option) { + option.type = type; + return option; + } + function isSectionFragment(frag) { + return frag.type === 'section'; + } + function getBuilder(frag) { + return isSectionFragment(frag) ? buildSection : buildNameValue; + } + function getBlockGapLevel(frag) { + if (isSectionFragment(frag)) { + var gapLevel_1 = 0; + var subBlockLen = frag.blocks.length; + var hasInnerGap_1 = subBlockLen > 1 || subBlockLen > 0 && !frag.noHeader; + each(frag.blocks, function (subBlock) { + var subGapLevel = getBlockGapLevel(subBlock); + // If the some of the sub-blocks have some gaps (like 10px) inside, this block + // should use a larger gap (like 20px) to distinguish those sub-blocks. + if (subGapLevel >= gapLevel_1) { + gapLevel_1 = subGapLevel + +(hasInnerGap_1 && ( + // 0 always can not be readable gap level. + !subGapLevel + // If no header, always keep the sub gap level. Otherwise + // look weird in case `multipleSeries`. + || isSectionFragment(subBlock) && !subBlock.noHeader)); + } + }); + return gapLevel_1; + } + return 0; + } + function buildSection(ctx, fragment, topMarginForOuterGap, toolTipTextStyle) { + var noHeader = fragment.noHeader; + var gaps = getGap(getBlockGapLevel(fragment)); + var subMarkupTextList = []; + var subBlocks = fragment.blocks || []; + assert(!subBlocks || isArray(subBlocks)); + subBlocks = subBlocks || []; + var orderMode = ctx.orderMode; + if (fragment.sortBlocks && orderMode) { + subBlocks = subBlocks.slice(); + var orderMap = { + valueAsc: 'asc', + valueDesc: 'desc' + }; + if (hasOwn(orderMap, orderMode)) { + var comparator_1 = new SortOrderComparator(orderMap[orderMode], null); + subBlocks.sort(function (a, b) { + return comparator_1.evaluate(a.sortParam, b.sortParam); + }); + } + // FIXME 'seriesDesc' necessary? + else if (orderMode === 'seriesDesc') { + subBlocks.reverse(); + } + } + each(subBlocks, function (subBlock, idx) { + var valueFormatter = fragment.valueFormatter; + var subMarkupText = getBuilder(subBlock)( + // Inherit valueFormatter + valueFormatter ? extend(extend({}, ctx), { + valueFormatter: valueFormatter + }) : ctx, subBlock, idx > 0 ? gaps.html : 0, toolTipTextStyle); + subMarkupText != null && subMarkupTextList.push(subMarkupText); + }); + var subMarkupText = ctx.renderMode === 'richText' ? subMarkupTextList.join(gaps.richText) : wrapBlockHTML(subMarkupTextList.join(''), noHeader ? topMarginForOuterGap : gaps.html); + if (noHeader) { + return subMarkupText; + } + var displayableHeader = makeValueReadable(fragment.header, 'ordinal', ctx.useUTC); + var nameStyle = getTooltipTextStyle(toolTipTextStyle, ctx.renderMode).nameStyle; + if (ctx.renderMode === 'richText') { + return wrapInlineNameRichText(ctx, displayableHeader, nameStyle) + gaps.richText + subMarkupText; + } else { + return wrapBlockHTML("<div style=\"" + nameStyle + ";" + TOOLTIP_LINE_HEIGHT_CSS + ";\">" + encodeHTML(displayableHeader) + '</div>' + subMarkupText, topMarginForOuterGap); + } + } + function buildNameValue(ctx, fragment, topMarginForOuterGap, toolTipTextStyle) { + var renderMode = ctx.renderMode; + var noName = fragment.noName; + var noValue = fragment.noValue; + var noMarker = !fragment.markerType; + var name = fragment.name; + var useUTC = ctx.useUTC; + var valueFormatter = fragment.valueFormatter || ctx.valueFormatter || function (value) { + value = isArray(value) ? value : [value]; + return map(value, function (val, idx) { + return makeValueReadable(val, isArray(valueTypeOption) ? valueTypeOption[idx] : valueTypeOption, useUTC); + }); + }; + if (noName && noValue) { + return; + } + var markerStr = noMarker ? '' : ctx.markupStyleCreator.makeTooltipMarker(fragment.markerType, fragment.markerColor || '#333', renderMode); + var readableName = noName ? '' : makeValueReadable(name, 'ordinal', useUTC); + var valueTypeOption = fragment.valueType; + var readableValueList = noValue ? [] : valueFormatter(fragment.value, fragment.dataIndex); + var valueAlignRight = !noMarker || !noName; + // It little weird if only value next to marker but far from marker. + var valueCloseToMarker = !noMarker && noName; + var _a = getTooltipTextStyle(toolTipTextStyle, renderMode), + nameStyle = _a.nameStyle, + valueStyle = _a.valueStyle; + return renderMode === 'richText' ? (noMarker ? '' : markerStr) + (noName ? '' : wrapInlineNameRichText(ctx, readableName, nameStyle)) + // Value has commas inside, so use ' ' as delimiter for multiple values. + + (noValue ? '' : wrapInlineValueRichText(ctx, readableValueList, valueAlignRight, valueCloseToMarker, valueStyle)) : wrapBlockHTML((noMarker ? '' : markerStr) + (noName ? '' : wrapInlineNameHTML(readableName, !noMarker, nameStyle)) + (noValue ? '' : wrapInlineValueHTML(readableValueList, valueAlignRight, valueCloseToMarker, valueStyle)), topMarginForOuterGap); + } + /** + * @return markupText. null/undefined means no content. + */ + function buildTooltipMarkup(fragment, markupStyleCreator, renderMode, orderMode, useUTC, toolTipTextStyle) { + if (!fragment) { + return; + } + var builder = getBuilder(fragment); + var ctx = { + useUTC: useUTC, + renderMode: renderMode, + orderMode: orderMode, + markupStyleCreator: markupStyleCreator, + valueFormatter: fragment.valueFormatter + }; + return builder(ctx, fragment, 0, toolTipTextStyle); + } + function getGap(gapLevel) { + return { + html: HTML_GAPS[gapLevel], + richText: RICH_TEXT_GAPS[gapLevel] + }; + } + function wrapBlockHTML(encodedContent, topGap) { + var clearfix = '<div style="clear:both"></div>'; + var marginCSS = "margin: " + topGap + "px 0 0"; + return "<div style=\"" + marginCSS + ";" + TOOLTIP_LINE_HEIGHT_CSS + ";\">" + encodedContent + clearfix + '</div>'; + } + function wrapInlineNameHTML(name, leftHasMarker, style) { + var marginCss = leftHasMarker ? 'margin-left:2px' : ''; + return "<span style=\"" + style + ";" + marginCss + "\">" + encodeHTML(name) + '</span>'; + } + function wrapInlineValueHTML(valueList, alignRight, valueCloseToMarker, style) { + // Do not too close to marker, considering there are multiple values separated by spaces. + var paddingStr = valueCloseToMarker ? '10px' : '20px'; + var alignCSS = alignRight ? "float:right;margin-left:" + paddingStr : ''; + valueList = isArray(valueList) ? valueList : [valueList]; + return "<span style=\"" + alignCSS + ";" + style + "\">" + // Value has commas inside, so use ' ' as delimiter for multiple values. + + map(valueList, function (value) { + return encodeHTML(value); + }).join('&nbsp;&nbsp;') + '</span>'; + } + function wrapInlineNameRichText(ctx, name, style) { + return ctx.markupStyleCreator.wrapRichTextStyle(name, style); + } + function wrapInlineValueRichText(ctx, values, alignRight, valueCloseToMarker, style) { + var styles = [style]; + var paddingLeft = valueCloseToMarker ? 10 : 20; + alignRight && styles.push({ + padding: [0, 0, 0, paddingLeft], + align: 'right' + }); + // Value has commas inside, so use ' ' as delimiter for multiple values. + return ctx.markupStyleCreator.wrapRichTextStyle(isArray(values) ? values.join(' ') : values, styles); + } + function retrieveVisualColorForTooltipMarker(series, dataIndex) { + var style = series.getData().getItemVisual(dataIndex, 'style'); + var color = style[series.visualDrawType]; + return convertToColorString(color); + } + function getPaddingFromTooltipModel(model, renderMode) { + var padding = model.get('padding'); + return padding != null ? padding + // We give slightly different to look pretty. + : renderMode === 'richText' ? [8, 10] : 10; + } + /** + * The major feature is generate styles for `renderMode: 'richText'`. + * But it also serves `renderMode: 'html'` to provide + * "renderMode-independent" API. + */ + var TooltipMarkupStyleCreator = /** @class */function () { + function TooltipMarkupStyleCreator() { + this.richTextStyles = {}; + // Notice that "generate a style name" usually happens repeatedly when mouse is moving and + // a tooltip is displayed. So we put the `_nextStyleNameId` as a member of each creator + // rather than static shared by all creators (which will cause it increase to fast). + this._nextStyleNameId = getRandomIdBase(); + } + TooltipMarkupStyleCreator.prototype._generateStyleName = function () { + return '__EC_aUTo_' + this._nextStyleNameId++; + }; + TooltipMarkupStyleCreator.prototype.makeTooltipMarker = function (markerType, colorStr, renderMode) { + var markerId = renderMode === 'richText' ? this._generateStyleName() : null; + var marker = getTooltipMarker({ + color: colorStr, + type: markerType, + renderMode: renderMode, + markerId: markerId + }); + if (isString(marker)) { + return marker; + } else { + if ("development" !== 'production') { + assert(markerId); + } + this.richTextStyles[markerId] = marker.style; + return marker.content; + } + }; + /** + * @usage + * ```ts + * const styledText = markupStyleCreator.wrapRichTextStyle([ + * // The styles will be auto merged. + * { + * fontSize: 12, + * color: 'blue' + * }, + * { + * padding: 20 + * } + * ]); + * ``` + */ + TooltipMarkupStyleCreator.prototype.wrapRichTextStyle = function (text, styles) { + var finalStl = {}; + if (isArray(styles)) { + each(styles, function (stl) { + return extend(finalStl, stl); + }); + } else { + extend(finalStl, styles); + } + var styleName = this._generateStyleName(); + this.richTextStyles[styleName] = finalStl; + return "{" + styleName + "|" + text + "}"; + }; + return TooltipMarkupStyleCreator; + }(); + + function defaultSeriesFormatTooltip(opt) { + var series = opt.series; + var dataIndex = opt.dataIndex; + var multipleSeries = opt.multipleSeries; + var data = series.getData(); + var tooltipDims = data.mapDimensionsAll('defaultedTooltip'); + var tooltipDimLen = tooltipDims.length; + var value = series.getRawValue(dataIndex); + var isValueArr = isArray(value); + var markerColor = retrieveVisualColorForTooltipMarker(series, dataIndex); + // Complicated rule for pretty tooltip. + var inlineValue; + var inlineValueType; + var subBlocks; + var sortParam; + if (tooltipDimLen > 1 || isValueArr && !tooltipDimLen) { + var formatArrResult = formatTooltipArrayValue(value, series, dataIndex, tooltipDims, markerColor); + inlineValue = formatArrResult.inlineValues; + inlineValueType = formatArrResult.inlineValueTypes; + subBlocks = formatArrResult.blocks; + // Only support tooltip sort by the first inline value. It's enough in most cases. + sortParam = formatArrResult.inlineValues[0]; + } else if (tooltipDimLen) { + var dimInfo = data.getDimensionInfo(tooltipDims[0]); + sortParam = inlineValue = retrieveRawValue(data, dataIndex, tooltipDims[0]); + inlineValueType = dimInfo.type; + } else { + sortParam = inlineValue = isValueArr ? value[0] : value; + } + // Do not show generated series name. It might not be readable. + var seriesNameSpecified = isNameSpecified(series); + var seriesName = seriesNameSpecified && series.name || ''; + var itemName = data.getName(dataIndex); + var inlineName = multipleSeries ? seriesName : itemName; + return createTooltipMarkup('section', { + header: seriesName, + // When series name is not specified, do not show a header line with only '-'. + // This case always happens in tooltip.trigger: 'item'. + noHeader: multipleSeries || !seriesNameSpecified, + sortParam: sortParam, + blocks: [createTooltipMarkup('nameValue', { + markerType: 'item', + markerColor: markerColor, + // Do not mix display seriesName and itemName in one tooltip, + // which might confuses users. + name: inlineName, + // name dimension might be auto assigned, where the name might + // be not readable. So we check trim here. + noName: !trim(inlineName), + value: inlineValue, + valueType: inlineValueType, + dataIndex: dataIndex + })].concat(subBlocks || []) + }); + } + function formatTooltipArrayValue(value, series, dataIndex, tooltipDims, colorStr) { + // check: category-no-encode-has-axis-data in dataset.html + var data = series.getData(); + var isValueMultipleLine = reduce(value, function (isValueMultipleLine, val, idx) { + var dimItem = data.getDimensionInfo(idx); + return isValueMultipleLine = isValueMultipleLine || dimItem && dimItem.tooltip !== false && dimItem.displayName != null; + }, false); + var inlineValues = []; + var inlineValueTypes = []; + var blocks = []; + tooltipDims.length ? each(tooltipDims, function (dim) { + setEachItem(retrieveRawValue(data, dataIndex, dim), dim); + }) + // By default, all dims is used on tooltip. + : each(value, setEachItem); + function setEachItem(val, dim) { + var dimInfo = data.getDimensionInfo(dim); + // If `dimInfo.tooltip` is not set, show tooltip. + if (!dimInfo || dimInfo.otherDims.tooltip === false) { + return; + } + if (isValueMultipleLine) { + blocks.push(createTooltipMarkup('nameValue', { + markerType: 'subItem', + markerColor: colorStr, + name: dimInfo.displayName, + value: val, + valueType: dimInfo.type + })); + } else { + inlineValues.push(val); + inlineValueTypes.push(dimInfo.type); + } + } + return { + inlineValues: inlineValues, + inlineValueTypes: inlineValueTypes, + blocks: blocks + }; + } + + var inner$1 = makeInner(); + function getSelectionKey(data, dataIndex) { + return data.getName(dataIndex) || data.getId(dataIndex); + } + var SERIES_UNIVERSAL_TRANSITION_PROP = '__universalTransitionEnabled'; + var SeriesModel = /** @class */function (_super) { + __extends(SeriesModel, _super); + function SeriesModel() { + // [Caution]: Because this class or desecendants can be used as `XXX.extend(subProto)`, + // the class members must not be initialized in constructor or declaration place. + // Otherwise there is bad case: + // class A {xxx = 1;} + // enableClassExtend(A); + // class B extends A {} + // var C = B.extend({xxx: 5}); + // var c = new C(); + // console.log(c.xxx); // expect 5 but always 1. + var _this = _super !== null && _super.apply(this, arguments) || this; + // --------------------------------------- + // Props about data selection + // --------------------------------------- + _this._selectedDataIndicesMap = {}; + return _this; + } + SeriesModel.prototype.init = function (option, parentModel, ecModel) { + this.seriesIndex = this.componentIndex; + this.dataTask = createTask({ + count: dataTaskCount, + reset: dataTaskReset + }); + this.dataTask.context = { + model: this + }; + this.mergeDefaultAndTheme(option, ecModel); + var sourceManager = inner$1(this).sourceManager = new SourceManager(this); + sourceManager.prepareSource(); + var data = this.getInitialData(option, ecModel); + wrapData(data, this); + this.dataTask.context.data = data; + if ("development" !== 'production') { + assert(data, 'getInitialData returned invalid data.'); + } + inner$1(this).dataBeforeProcessed = data; + // If we reverse the order (make data firstly, and then make + // dataBeforeProcessed by cloneShallow), cloneShallow will + // cause data.graph.data !== data when using + // module:echarts/data/Graph or module:echarts/data/Tree. + // See module:echarts/data/helper/linkSeriesData + // Theoretically, it is unreasonable to call `seriesModel.getData()` in the model + // init or merge stage, because the data can be restored. So we do not `restoreData` + // and `setData` here, which forbids calling `seriesModel.getData()` in this stage. + // Call `seriesModel.getRawData()` instead. + // this.restoreData(); + autoSeriesName(this); + this._initSelectedMapFromData(data); + }; + /** + * Util for merge default and theme to option + */ + SeriesModel.prototype.mergeDefaultAndTheme = function (option, ecModel) { + var layoutMode = fetchLayoutMode(this); + var inputPositionParams = layoutMode ? getLayoutParams(option) : {}; + // Backward compat: using subType on theme. + // But if name duplicate between series subType + // (for example: parallel) add component mainType, + // add suffix 'Series'. + var themeSubType = this.subType; + if (ComponentModel.hasClass(themeSubType)) { + themeSubType += 'Series'; + } + merge(option, ecModel.getTheme().get(this.subType)); + merge(option, this.getDefaultOption()); + // Default label emphasis `show` + defaultEmphasis(option, 'label', ['show']); + this.fillDataTextStyle(option.data); + if (layoutMode) { + mergeLayoutParam(option, inputPositionParams, layoutMode); + } + }; + SeriesModel.prototype.mergeOption = function (newSeriesOption, ecModel) { + // this.settingTask.dirty(); + newSeriesOption = merge(this.option, newSeriesOption, true); + this.fillDataTextStyle(newSeriesOption.data); + var layoutMode = fetchLayoutMode(this); + if (layoutMode) { + mergeLayoutParam(this.option, newSeriesOption, layoutMode); + } + var sourceManager = inner$1(this).sourceManager; + sourceManager.dirty(); + sourceManager.prepareSource(); + var data = this.getInitialData(newSeriesOption, ecModel); + wrapData(data, this); + this.dataTask.dirty(); + this.dataTask.context.data = data; + inner$1(this).dataBeforeProcessed = data; + autoSeriesName(this); + this._initSelectedMapFromData(data); + }; + SeriesModel.prototype.fillDataTextStyle = function (data) { + // Default data label emphasis `show` + // FIXME Tree structure data ? + // FIXME Performance ? + if (data && !isTypedArray(data)) { + var props = ['show']; + for (var i = 0; i < data.length; i++) { + if (data[i] && data[i].label) { + defaultEmphasis(data[i], 'label', props); + } + } + } + }; + /** + * Init a data structure from data related option in series + * Must be overridden. + */ + SeriesModel.prototype.getInitialData = function (option, ecModel) { + return; + }; + /** + * Append data to list + */ + SeriesModel.prototype.appendData = function (params) { + // FIXME ??? + // (1) If data from dataset, forbidden append. + // (2) support append data of dataset. + var data = this.getRawData(); + data.appendData(params.data); + }; + /** + * Consider some method like `filter`, `map` need make new data, + * We should make sure that `seriesModel.getData()` get correct + * data in the stream procedure. So we fetch data from upstream + * each time `task.perform` called. + */ + SeriesModel.prototype.getData = function (dataType) { + var task = getCurrentTask(this); + if (task) { + var data = task.context.data; + return dataType == null ? data : data.getLinkedData(dataType); + } else { + // When series is not alive (that may happen when click toolbox + // restore or setOption with not merge mode), series data may + // be still need to judge animation or something when graphic + // elements want to know whether fade out. + return inner$1(this).data; + } + }; + SeriesModel.prototype.getAllData = function () { + var mainData = this.getData(); + return mainData && mainData.getLinkedDataAll ? mainData.getLinkedDataAll() : [{ + data: mainData + }]; + }; + SeriesModel.prototype.setData = function (data) { + var task = getCurrentTask(this); + if (task) { + var context = task.context; + // Consider case: filter, data sample. + // FIXME:TS never used, so comment it + // if (context.data !== data && task.modifyOutputEnd) { + // task.setOutputEnd(data.count()); + // } + context.outputData = data; + // Caution: setData should update context.data, + // Because getData may be called multiply in a + // single stage and expect to get the data just + // set. (For example, AxisProxy, x y both call + // getData and setDate sequentially). + // So the context.data should be fetched from + // upstream each time when a stage starts to be + // performed. + if (task !== this.dataTask) { + context.data = data; + } + } + inner$1(this).data = data; + }; + SeriesModel.prototype.getEncode = function () { + var encode = this.get('encode', true); + if (encode) { + return createHashMap(encode); + } + }; + SeriesModel.prototype.getSourceManager = function () { + return inner$1(this).sourceManager; + }; + SeriesModel.prototype.getSource = function () { + return this.getSourceManager().getSource(); + }; + /** + * Get data before processed + */ + SeriesModel.prototype.getRawData = function () { + return inner$1(this).dataBeforeProcessed; + }; + SeriesModel.prototype.getColorBy = function () { + var colorBy = this.get('colorBy'); + return colorBy || 'series'; + }; + SeriesModel.prototype.isColorBySeries = function () { + return this.getColorBy() === 'series'; + }; + /** + * Get base axis if has coordinate system and has axis. + * By default use coordSys.getBaseAxis(); + * Can be overridden for some chart. + * @return {type} description + */ + SeriesModel.prototype.getBaseAxis = function () { + var coordSys = this.coordinateSystem; + // @ts-ignore + return coordSys && coordSys.getBaseAxis && coordSys.getBaseAxis(); + }; + /** + * Default tooltip formatter + * + * @param dataIndex + * @param multipleSeries + * @param dataType + * @param renderMode valid values: 'html'(by default) and 'richText'. + * 'html' is used for rendering tooltip in extra DOM form, and the result + * string is used as DOM HTML content. + * 'richText' is used for rendering tooltip in rich text form, for those where + * DOM operation is not supported. + * @return formatted tooltip with `html` and `markers` + * Notice: The override method can also return string + */ + SeriesModel.prototype.formatTooltip = function (dataIndex, multipleSeries, dataType) { + return defaultSeriesFormatTooltip({ + series: this, + dataIndex: dataIndex, + multipleSeries: multipleSeries + }); + }; + SeriesModel.prototype.isAnimationEnabled = function () { + var ecModel = this.ecModel; + // Disable animation if using echarts in node but not give ssr flag. + // In ssr mode, renderToString will generate svg with css animation. + if (env.node && !(ecModel && ecModel.ssr)) { + return false; + } + var animationEnabled = this.getShallow('animation'); + if (animationEnabled) { + if (this.getData().count() > this.getShallow('animationThreshold')) { + animationEnabled = false; + } + } + return !!animationEnabled; + }; + SeriesModel.prototype.restoreData = function () { + this.dataTask.dirty(); + }; + SeriesModel.prototype.getColorFromPalette = function (name, scope, requestColorNum) { + var ecModel = this.ecModel; + // PENDING + var color = PaletteMixin.prototype.getColorFromPalette.call(this, name, scope, requestColorNum); + if (!color) { + color = ecModel.getColorFromPalette(name, scope, requestColorNum); + } + return color; + }; + /** + * Use `data.mapDimensionsAll(coordDim)` instead. + * @deprecated + */ + SeriesModel.prototype.coordDimToDataDim = function (coordDim) { + return this.getRawData().mapDimensionsAll(coordDim); + }; + /** + * Get progressive rendering count each step + */ + SeriesModel.prototype.getProgressive = function () { + return this.get('progressive'); + }; + /** + * Get progressive rendering count each step + */ + SeriesModel.prototype.getProgressiveThreshold = function () { + return this.get('progressiveThreshold'); + }; + // PENGING If selectedMode is null ? + SeriesModel.prototype.select = function (innerDataIndices, dataType) { + this._innerSelect(this.getData(dataType), innerDataIndices); + }; + SeriesModel.prototype.unselect = function (innerDataIndices, dataType) { + var selectedMap = this.option.selectedMap; + if (!selectedMap) { + return; + } + var selectedMode = this.option.selectedMode; + var data = this.getData(dataType); + if (selectedMode === 'series' || selectedMap === 'all') { + this.option.selectedMap = {}; + this._selectedDataIndicesMap = {}; + return; + } + for (var i = 0; i < innerDataIndices.length; i++) { + var dataIndex = innerDataIndices[i]; + var nameOrId = getSelectionKey(data, dataIndex); + selectedMap[nameOrId] = false; + this._selectedDataIndicesMap[nameOrId] = -1; + } + }; + SeriesModel.prototype.toggleSelect = function (innerDataIndices, dataType) { + var tmpArr = []; + for (var i = 0; i < innerDataIndices.length; i++) { + tmpArr[0] = innerDataIndices[i]; + this.isSelected(innerDataIndices[i], dataType) ? this.unselect(tmpArr, dataType) : this.select(tmpArr, dataType); + } + }; + SeriesModel.prototype.getSelectedDataIndices = function () { + if (this.option.selectedMap === 'all') { + return [].slice.call(this.getData().getIndices()); + } + var selectedDataIndicesMap = this._selectedDataIndicesMap; + var nameOrIds = keys(selectedDataIndicesMap); + var dataIndices = []; + for (var i = 0; i < nameOrIds.length; i++) { + var dataIndex = selectedDataIndicesMap[nameOrIds[i]]; + if (dataIndex >= 0) { + dataIndices.push(dataIndex); + } + } + return dataIndices; + }; + SeriesModel.prototype.isSelected = function (dataIndex, dataType) { + var selectedMap = this.option.selectedMap; + if (!selectedMap) { + return false; + } + var data = this.getData(dataType); + return (selectedMap === 'all' || selectedMap[getSelectionKey(data, dataIndex)]) && !data.getItemModel(dataIndex).get(['select', 'disabled']); + }; + SeriesModel.prototype.isUniversalTransitionEnabled = function () { + if (this[SERIES_UNIVERSAL_TRANSITION_PROP]) { + return true; + } + var universalTransitionOpt = this.option.universalTransition; + // Quick reject + if (!universalTransitionOpt) { + return false; + } + if (universalTransitionOpt === true) { + return true; + } + // Can be simply 'universalTransition: true' + return universalTransitionOpt && universalTransitionOpt.enabled; + }; + SeriesModel.prototype._innerSelect = function (data, innerDataIndices) { + var _a, _b; + var option = this.option; + var selectedMode = option.selectedMode; + var len = innerDataIndices.length; + if (!selectedMode || !len) { + return; + } + if (selectedMode === 'series') { + option.selectedMap = 'all'; + } else if (selectedMode === 'multiple') { + if (!isObject(option.selectedMap)) { + option.selectedMap = {}; + } + var selectedMap = option.selectedMap; + for (var i = 0; i < len; i++) { + var dataIndex = innerDataIndices[i]; + // TODO different types of data share same object. + var nameOrId = getSelectionKey(data, dataIndex); + selectedMap[nameOrId] = true; + this._selectedDataIndicesMap[nameOrId] = data.getRawIndex(dataIndex); + } + } else if (selectedMode === 'single' || selectedMode === true) { + var lastDataIndex = innerDataIndices[len - 1]; + var nameOrId = getSelectionKey(data, lastDataIndex); + option.selectedMap = (_a = {}, _a[nameOrId] = true, _a); + this._selectedDataIndicesMap = (_b = {}, _b[nameOrId] = data.getRawIndex(lastDataIndex), _b); + } + }; + SeriesModel.prototype._initSelectedMapFromData = function (data) { + // Ignore select info in data if selectedMap exists. + // NOTE It's only for legacy usage. edge data is not supported. + if (this.option.selectedMap) { + return; + } + var dataIndices = []; + if (data.hasItemOption) { + data.each(function (idx) { + var rawItem = data.getRawDataItem(idx); + if (rawItem && rawItem.selected) { + dataIndices.push(idx); + } + }); + } + if (dataIndices.length > 0) { + this._innerSelect(data, dataIndices); + } + }; + // /** + // * @see {module:echarts/stream/Scheduler} + // */ + // abstract pipeTask: null + SeriesModel.registerClass = function (clz) { + return ComponentModel.registerClass(clz); + }; + SeriesModel.protoInitialize = function () { + var proto = SeriesModel.prototype; + proto.type = 'series.__base__'; + proto.seriesIndex = 0; + proto.ignoreStyleOnData = false; + proto.hasSymbolVisual = false; + proto.defaultSymbol = 'circle'; + // Make sure the values can be accessed! + proto.visualStyleAccessPath = 'itemStyle'; + proto.visualDrawType = 'fill'; + }(); + return SeriesModel; + }(ComponentModel); + mixin(SeriesModel, DataFormatMixin); + mixin(SeriesModel, PaletteMixin); + mountExtend(SeriesModel, ComponentModel); + /** + * MUST be called after `prepareSource` called + * Here we need to make auto series, especially for auto legend. But we + * do not modify series.name in option to avoid side effects. + */ + function autoSeriesName(seriesModel) { + // User specified name has higher priority, otherwise it may cause + // series can not be queried unexpectedly. + var name = seriesModel.name; + if (!isNameSpecified(seriesModel)) { + seriesModel.name = getSeriesAutoName(seriesModel) || name; + } + } + function getSeriesAutoName(seriesModel) { + var data = seriesModel.getRawData(); + var dataDims = data.mapDimensionsAll('seriesName'); + var nameArr = []; + each(dataDims, function (dataDim) { + var dimInfo = data.getDimensionInfo(dataDim); + dimInfo.displayName && nameArr.push(dimInfo.displayName); + }); + return nameArr.join(' '); + } + function dataTaskCount(context) { + return context.model.getRawData().count(); + } + function dataTaskReset(context) { + var seriesModel = context.model; + seriesModel.setData(seriesModel.getRawData().cloneShallow()); + return dataTaskProgress; + } + function dataTaskProgress(param, context) { + // Avoid repeat cloneShallow when data just created in reset. + if (context.outputData && param.end > context.outputData.count()) { + context.model.getRawData().cloneShallow(context.outputData); + } + } + // TODO refactor + function wrapData(data, seriesModel) { + each(concatArray(data.CHANGABLE_METHODS, data.DOWNSAMPLE_METHODS), function (methodName) { + data.wrapMethod(methodName, curry(onDataChange, seriesModel)); + }); + } + function onDataChange(seriesModel, newList) { + var task = getCurrentTask(seriesModel); + if (task) { + // Consider case: filter, selectRange + task.setOutputEnd((newList || this).count()); + } + return newList; + } + function getCurrentTask(seriesModel) { + var scheduler = (seriesModel.ecModel || {}).scheduler; + var pipeline = scheduler && scheduler.getPipeline(seriesModel.uid); + if (pipeline) { + // When pipline finished, the currrentTask keep the last + // task (renderTask). + var task = pipeline.currentTask; + if (task) { + var agentStubMap = task.agentStubMap; + if (agentStubMap) { + task = agentStubMap.get(seriesModel.uid); + } + } + return task; + } + } + + var ComponentView = /** @class */function () { + function ComponentView() { + this.group = new Group(); + this.uid = getUID('viewComponent'); + } + ComponentView.prototype.init = function (ecModel, api) {}; + ComponentView.prototype.render = function (model, ecModel, api, payload) {}; + ComponentView.prototype.dispose = function (ecModel, api) {}; + ComponentView.prototype.updateView = function (model, ecModel, api, payload) { + // Do nothing; + }; + ComponentView.prototype.updateLayout = function (model, ecModel, api, payload) { + // Do nothing; + }; + ComponentView.prototype.updateVisual = function (model, ecModel, api, payload) { + // Do nothing; + }; + /** + * Hook for toggle blur target series. + * Can be used in marker for blur or leave blur the markers + */ + ComponentView.prototype.toggleBlurSeries = function (seriesModels, isBlur, ecModel) { + // Do nothing; + }; + /** + * Traverse the new rendered elements. + * + * It will traverse the new added element in progressive rendering. + * And traverse all in normal rendering. + */ + ComponentView.prototype.eachRendered = function (cb) { + var group = this.group; + if (group) { + group.traverse(cb); + } + }; + return ComponentView; + }(); + enableClassExtend(ComponentView); + enableClassManagement(ComponentView); + + /** + * @return {string} If large mode changed, return string 'reset'; + */ + function createRenderPlanner() { + var inner = makeInner(); + return function (seriesModel) { + var fields = inner(seriesModel); + var pipelineContext = seriesModel.pipelineContext; + var originalLarge = !!fields.large; + var originalProgressive = !!fields.progressiveRender; + // FIXME: if the planner works on a filtered series, `pipelineContext` does not + // exists. See #11611 . Probably we need to modify this structure, see the comment + // on `performRawSeries` in `Schedular.js`. + var large = fields.large = !!(pipelineContext && pipelineContext.large); + var progressive = fields.progressiveRender = !!(pipelineContext && pipelineContext.progressiveRender); + return !!(originalLarge !== large || originalProgressive !== progressive) && 'reset'; + }; + } + + var inner$2 = makeInner(); + var renderPlanner = createRenderPlanner(); + var ChartView = /** @class */function () { + function ChartView() { + this.group = new Group(); + this.uid = getUID('viewChart'); + this.renderTask = createTask({ + plan: renderTaskPlan, + reset: renderTaskReset + }); + this.renderTask.context = { + view: this + }; + } + ChartView.prototype.init = function (ecModel, api) {}; + ChartView.prototype.render = function (seriesModel, ecModel, api, payload) { + if ("development" !== 'production') { + throw new Error('render method must been implemented'); + } + }; + /** + * Highlight series or specified data item. + */ + ChartView.prototype.highlight = function (seriesModel, ecModel, api, payload) { + var data = seriesModel.getData(payload && payload.dataType); + if (!data) { + if ("development" !== 'production') { + error("Unknown dataType " + payload.dataType); + } + return; + } + toggleHighlight(data, payload, 'emphasis'); + }; + /** + * Downplay series or specified data item. + */ + ChartView.prototype.downplay = function (seriesModel, ecModel, api, payload) { + var data = seriesModel.getData(payload && payload.dataType); + if (!data) { + if ("development" !== 'production') { + error("Unknown dataType " + payload.dataType); + } + return; + } + toggleHighlight(data, payload, 'normal'); + }; + /** + * Remove self. + */ + ChartView.prototype.remove = function (ecModel, api) { + this.group.removeAll(); + }; + /** + * Dispose self. + */ + ChartView.prototype.dispose = function (ecModel, api) {}; + ChartView.prototype.updateView = function (seriesModel, ecModel, api, payload) { + this.render(seriesModel, ecModel, api, payload); + }; + // FIXME never used? + ChartView.prototype.updateLayout = function (seriesModel, ecModel, api, payload) { + this.render(seriesModel, ecModel, api, payload); + }; + // FIXME never used? + ChartView.prototype.updateVisual = function (seriesModel, ecModel, api, payload) { + this.render(seriesModel, ecModel, api, payload); + }; + /** + * Traverse the new rendered elements. + * + * It will traverse the new added element in progressive rendering. + * And traverse all in normal rendering. + */ + ChartView.prototype.eachRendered = function (cb) { + traverseElements(this.group, cb); + }; + ChartView.markUpdateMethod = function (payload, methodName) { + inner$2(payload).updateMethod = methodName; + }; + ChartView.protoInitialize = function () { + var proto = ChartView.prototype; + proto.type = 'chart'; + }(); + return ChartView; + }(); + /** + * Set state of single element + */ + function elSetState(el, state, highlightDigit) { + if (el && isHighDownDispatcher(el)) { + (state === 'emphasis' ? enterEmphasis : leaveEmphasis)(el, highlightDigit); + } + } + function toggleHighlight(data, payload, state) { + var dataIndex = queryDataIndex(data, payload); + var highlightDigit = payload && payload.highlightKey != null ? getHighlightDigit(payload.highlightKey) : null; + if (dataIndex != null) { + each(normalizeToArray(dataIndex), function (dataIdx) { + elSetState(data.getItemGraphicEl(dataIdx), state, highlightDigit); + }); + } else { + data.eachItemGraphicEl(function (el) { + elSetState(el, state, highlightDigit); + }); + } + } + enableClassExtend(ChartView, ['dispose']); + enableClassManagement(ChartView); + function renderTaskPlan(context) { + return renderPlanner(context.model); + } + function renderTaskReset(context) { + var seriesModel = context.model; + var ecModel = context.ecModel; + var api = context.api; + var payload = context.payload; + // FIXME: remove updateView updateVisual + var progressiveRender = seriesModel.pipelineContext.progressiveRender; + var view = context.view; + var updateMethod = payload && inner$2(payload).updateMethod; + var methodName = progressiveRender ? 'incrementalPrepareRender' : updateMethod && view[updateMethod] ? updateMethod + // `appendData` is also supported when data amount + // is less than progressive threshold. + : 'render'; + if (methodName !== 'render') { + view[methodName](seriesModel, ecModel, api, payload); + } + return progressMethodMap[methodName]; + } + var progressMethodMap = { + incrementalPrepareRender: { + progress: function (params, context) { + context.view.incrementalRender(params, context.model, context.ecModel, context.api, context.payload); + } + }, + render: { + // Put view.render in `progress` to support appendData. But in this case + // view.render should not be called in reset, otherwise it will be called + // twise. Use `forceFirstProgress` to make sure that view.render is called + // in any cases. + forceFirstProgress: true, + progress: function (params, context) { + context.view.render(context.model, context.ecModel, context.api, context.payload); + } + } + }; + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + + /** + * AUTO-GENERATED FILE. DO NOT MODIFY. + */ + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + var ORIGIN_METHOD = '\0__throttleOriginMethod'; + var RATE = '\0__throttleRate'; + var THROTTLE_TYPE = '\0__throttleType'; + /** + * @public + * @param {(Function)} fn + * @param {number} [delay=0] Unit: ms. + * @param {boolean} [debounce=false] + * true: If call interval less than `delay`, only the last call works. + * false: If call interval less than `delay, call works on fixed rate. + * @return {(Function)} throttled fn. + */ + function throttle(fn, delay, debounce) { + var currCall; + var lastCall = 0; + var lastExec = 0; + var timer = null; + var diff; + var scope; + var args; + var debounceNextCall; + delay = delay || 0; + function exec() { + lastExec = new Date().getTime(); + timer = null; + fn.apply(scope, args || []); + } + var cb = function () { + var cbArgs = []; + for (var _i = 0; _i < arguments.length; _i++) { + cbArgs[_i] = arguments[_i]; + } + currCall = new Date().getTime(); + scope = this; + args = cbArgs; + var thisDelay = debounceNextCall || delay; + var thisDebounce = debounceNextCall || debounce; + debounceNextCall = null; + diff = currCall - (thisDebounce ? lastCall : lastExec) - thisDelay; + clearTimeout(timer); + // Here we should make sure that: the `exec` SHOULD NOT be called later + // than a new call of `cb`, that is, preserving the command order. Consider + // calculating "scale rate" when roaming as an example. When a call of `cb` + // happens, either the `exec` is called dierectly, or the call is delayed. + // But the delayed call should never be later than next call of `cb`. Under + // this assurance, we can simply update view state each time `dispatchAction` + // triggered by user roaming, but not need to add extra code to avoid the + // state being "rolled-back". + if (thisDebounce) { + timer = setTimeout(exec, thisDelay); + } else { + if (diff >= 0) { + exec(); + } else { + timer = setTimeout(exec, -diff); + } + } + lastCall = currCall; + }; + /** + * Clear throttle. + * @public + */ + cb.clear = function () { + if (timer) { + clearTimeout(timer); + timer = null; + } + }; + /** + * Enable debounce once. + */ + cb.debounceNextCall = function (debounceDelay) { + debounceNextCall = debounceDelay; + }; + return cb; + } + /** + * Create throttle method or update throttle rate. + * + * @example + * ComponentView.prototype.render = function () { + * ... + * throttle.createOrUpdate( + * this, + * '_dispatchAction', + * this.model.get('throttle'), + * 'fixRate' + * ); + * }; + * ComponentView.prototype.remove = function () { + * throttle.clear(this, '_dispatchAction'); + * }; + * ComponentView.prototype.dispose = function () { + * throttle.clear(this, '_dispatchAction'); + * }; + * + */ + function createOrUpdate(obj, fnAttr, rate, throttleType) { + var fn = obj[fnAttr]; + if (!fn) { + return; + } + var originFn = fn[ORIGIN_METHOD] || fn; + var lastThrottleType = fn[THROTTLE_TYPE]; + var lastRate = fn[RATE]; + if (lastRate !== rate || lastThrottleType !== throttleType) { + if (rate == null || !throttleType) { + return obj[fnAttr] = originFn; + } + fn = obj[fnAttr] = throttle(originFn, rate, throttleType === 'debounce'); + fn[ORIGIN_METHOD] = originFn; + fn[THROTTLE_TYPE] = throttleType; + fn[RATE] = rate; + } + return fn; + } + /** + * Clear throttle. Example see throttle.createOrUpdate. + */ + function clear(obj, fnAttr) { + var fn = obj[fnAttr]; + if (fn && fn[ORIGIN_METHOD]) { + // Clear throttle + fn.clear && fn.clear(); + obj[fnAttr] = fn[ORIGIN_METHOD]; + } + } + + var inner$3 = makeInner(); + var defaultStyleMappers = { + itemStyle: makeStyleMapper(ITEM_STYLE_KEY_MAP, true), + lineStyle: makeStyleMapper(LINE_STYLE_KEY_MAP, true) + }; + var defaultColorKey = { + lineStyle: 'stroke', + itemStyle: 'fill' + }; + function getStyleMapper(seriesModel, stylePath) { + var styleMapper = seriesModel.visualStyleMapper || defaultStyleMappers[stylePath]; + if (!styleMapper) { + console.warn("Unknown style type '" + stylePath + "'."); + return defaultStyleMappers.itemStyle; + } + return styleMapper; + } + function getDefaultColorKey(seriesModel, stylePath) { + // return defaultColorKey[stylePath] || + var colorKey = seriesModel.visualDrawType || defaultColorKey[stylePath]; + if (!colorKey) { + console.warn("Unknown style type '" + stylePath + "'."); + return 'fill'; + } + return colorKey; + } + var seriesStyleTask = { + createOnAllSeries: true, + performRawSeries: true, + reset: function (seriesModel, ecModel) { + var data = seriesModel.getData(); + var stylePath = seriesModel.visualStyleAccessPath || 'itemStyle'; + // Set in itemStyle + var styleModel = seriesModel.getModel(stylePath); + var getStyle = getStyleMapper(seriesModel, stylePath); + var globalStyle = getStyle(styleModel); + var decalOption = styleModel.getShallow('decal'); + if (decalOption) { + data.setVisual('decal', decalOption); + decalOption.dirty = true; + } + // TODO + var colorKey = getDefaultColorKey(seriesModel, stylePath); + var color = globalStyle[colorKey]; + // TODO style callback + var colorCallback = isFunction(color) ? color : null; + var hasAutoColor = globalStyle.fill === 'auto' || globalStyle.stroke === 'auto'; + // Get from color palette by default. + if (!globalStyle[colorKey] || colorCallback || hasAutoColor) { + // Note: If some series has color specified (e.g., by itemStyle.color), we DO NOT + // make it effect palette. Because some scenarios users need to make some series + // transparent or as background, which should better not effect the palette. + var colorPalette = seriesModel.getColorFromPalette( + // TODO series count changed. + seriesModel.name, null, ecModel.getSeriesCount()); + if (!globalStyle[colorKey]) { + globalStyle[colorKey] = colorPalette; + data.setVisual('colorFromPalette', true); + } + globalStyle.fill = globalStyle.fill === 'auto' || isFunction(globalStyle.fill) ? colorPalette : globalStyle.fill; + globalStyle.stroke = globalStyle.stroke === 'auto' || isFunction(globalStyle.stroke) ? colorPalette : globalStyle.stroke; + } + data.setVisual('style', globalStyle); + data.setVisual('drawType', colorKey); + // Only visible series has each data be visual encoded + if (!ecModel.isSeriesFiltered(seriesModel) && colorCallback) { + data.setVisual('colorFromPalette', false); + return { + dataEach: function (data, idx) { + var dataParams = seriesModel.getDataParams(idx); + var itemStyle = extend({}, globalStyle); + itemStyle[colorKey] = colorCallback(dataParams); + data.setItemVisual(idx, 'style', itemStyle); + } + }; + } + } + }; + var sharedModel = new Model(); + var dataStyleTask = { + createOnAllSeries: true, + performRawSeries: true, + reset: function (seriesModel, ecModel) { + if (seriesModel.ignoreStyleOnData || ecModel.isSeriesFiltered(seriesModel)) { + return; + } + var data = seriesModel.getData(); + var stylePath = seriesModel.visualStyleAccessPath || 'itemStyle'; + // Set in itemStyle + var getStyle = getStyleMapper(seriesModel, stylePath); + var colorKey = data.getVisual('drawType'); + return { + dataEach: data.hasItemOption ? function (data, idx) { + // Not use getItemModel for performance considuration + var rawItem = data.getRawDataItem(idx); + if (rawItem && rawItem[stylePath]) { + sharedModel.option = rawItem[stylePath]; + var style = getStyle(sharedModel); + var existsStyle = data.ensureUniqueItemVisual(idx, 'style'); + extend(existsStyle, style); + if (sharedModel.option.decal) { + data.setItemVisual(idx, 'decal', sharedModel.option.decal); + sharedModel.option.decal.dirty = true; + } + if (colorKey in style) { + data.setItemVisual(idx, 'colorFromPalette', false); + } + } + } : null + }; + } + }; + // Pick color from palette for the data which has not been set with color yet. + // Note: do not support stream rendering. No such cases yet. + var dataColorPaletteTask = { + performRawSeries: true, + overallReset: function (ecModel) { + // Each type of series uses one scope. + // Pie and funnel are using different scopes. + var paletteScopeGroupByType = createHashMap(); + ecModel.eachSeries(function (seriesModel) { + var colorBy = seriesModel.getColorBy(); + if (seriesModel.isColorBySeries()) { + return; + } + var key = seriesModel.type + '-' + colorBy; + var colorScope = paletteScopeGroupByType.get(key); + if (!colorScope) { + colorScope = {}; + paletteScopeGroupByType.set(key, colorScope); + } + inner$3(seriesModel).scope = colorScope; + }); + ecModel.eachSeries(function (seriesModel) { + if (seriesModel.isColorBySeries() || ecModel.isSeriesFiltered(seriesModel)) { + return; + } + var dataAll = seriesModel.getRawData(); + var idxMap = {}; + var data = seriesModel.getData(); + var colorScope = inner$3(seriesModel).scope; + var stylePath = seriesModel.visualStyleAccessPath || 'itemStyle'; + var colorKey = getDefaultColorKey(seriesModel, stylePath); + data.each(function (idx) { + var rawIdx = data.getRawIndex(idx); + idxMap[rawIdx] = idx; + }); + // Iterate on data before filtered. To make sure color from palette can be + // Consistent when toggling legend. + dataAll.each(function (rawIdx) { + var idx = idxMap[rawIdx]; + var fromPalette = data.getItemVisual(idx, 'colorFromPalette'); + // Get color from palette for each data only when the color is inherited from series color, which is + // also picked from color palette. So following situation is not in the case: + // 1. series.itemStyle.color is set + // 2. color is encoded by visualMap + if (fromPalette) { + var itemStyle = data.ensureUniqueItemVisual(idx, 'style'); + var name_1 = dataAll.getName(rawIdx) || rawIdx + ''; + var dataCount = dataAll.count(); + itemStyle[colorKey] = seriesModel.getColorFromPalette(name_1, colorScope, dataCount); + } + }); + }); + } + }; + + var PI$3 = Math.PI; + /** + * @param {module:echarts/ExtensionAPI} api + * @param {Object} [opts] + * @param {string} [opts.text] + * @param {string} [opts.color] + * @param {string} [opts.textColor] + * @return {module:zrender/Element} + */ + function defaultLoading(api, opts) { + opts = opts || {}; + defaults(opts, { + text: 'loading', + textColor: '#000', + fontSize: 12, + fontWeight: 'normal', + fontStyle: 'normal', + fontFamily: 'sans-serif', + maskColor: 'rgba(255, 255, 255, 0.8)', + showSpinner: true, + color: '#5470c6', + spinnerRadius: 10, + lineWidth: 5, + zlevel: 0 + }); + var group = new Group(); + var mask = new Rect({ + style: { + fill: opts.maskColor + }, + zlevel: opts.zlevel, + z: 10000 + }); + group.add(mask); + var textContent = new ZRText({ + style: { + text: opts.text, + fill: opts.textColor, + fontSize: opts.fontSize, + fontWeight: opts.fontWeight, + fontStyle: opts.fontStyle, + fontFamily: opts.fontFamily + }, + zlevel: opts.zlevel, + z: 10001 + }); + var labelRect = new Rect({ + style: { + fill: 'none' + }, + textContent: textContent, + textConfig: { + position: 'right', + distance: 10 + }, + zlevel: opts.zlevel, + z: 10001 + }); + group.add(labelRect); + var arc; + if (opts.showSpinner) { + arc = new Arc({ + shape: { + startAngle: -PI$3 / 2, + endAngle: -PI$3 / 2 + 0.1, + r: opts.spinnerRadius + }, + style: { + stroke: opts.color, + lineCap: 'round', + lineWidth: opts.lineWidth + }, + zlevel: opts.zlevel, + z: 10001 + }); + arc.animateShape(true).when(1000, { + endAngle: PI$3 * 3 / 2 + }).start('circularInOut'); + arc.animateShape(true).when(1000, { + startAngle: PI$3 * 3 / 2 + }).delay(300).start('circularInOut'); + group.add(arc); + } + // Inject resize + group.resize = function () { + var textWidth = textContent.getBoundingRect().width; + var r = opts.showSpinner ? opts.spinnerRadius : 0; + // cx = (containerWidth - arcDiameter - textDistance - textWidth) / 2 + // textDistance needs to be calculated when both animation and text exist + var cx = (api.getWidth() - r * 2 - (opts.showSpinner && textWidth ? 10 : 0) - textWidth) / 2 - (opts.showSpinner && textWidth ? 0 : 5 + textWidth / 2) + // only show the text + + (opts.showSpinner ? 0 : textWidth / 2) + // only show the spinner + + (textWidth ? 0 : r); + var cy = api.getHeight() / 2; + opts.showSpinner && arc.setShape({ + cx: cx, + cy: cy + }); + labelRect.setShape({ + x: cx - r, + y: cy - r, + width: r * 2, + height: r * 2 + }); + mask.setShape({ + x: 0, + y: 0, + width: api.getWidth(), + height: api.getHeight() + }); + }; + group.resize(); + return group; + } + + var Scheduler = /** @class */function () { + function Scheduler(ecInstance, api, dataProcessorHandlers, visualHandlers) { + // key: handlerUID + this._stageTaskMap = createHashMap(); + this.ecInstance = ecInstance; + this.api = api; + // Fix current processors in case that in some rear cases that + // processors might be registered after echarts instance created. + // Register processors incrementally for a echarts instance is + // not supported by this stream architecture. + dataProcessorHandlers = this._dataProcessorHandlers = dataProcessorHandlers.slice(); + visualHandlers = this._visualHandlers = visualHandlers.slice(); + this._allHandlers = dataProcessorHandlers.concat(visualHandlers); + } + Scheduler.prototype.restoreData = function (ecModel, payload) { + // TODO: Only restore needed series and components, but not all components. + // Currently `restoreData` of all of the series and component will be called. + // But some independent components like `title`, `legend`, `graphic`, `toolbox`, + // `tooltip`, `axisPointer`, etc, do not need series refresh when `setOption`, + // and some components like coordinate system, axes, dataZoom, visualMap only + // need their target series refresh. + // (1) If we are implementing this feature some day, we should consider these cases: + // if a data processor depends on a component (e.g., dataZoomProcessor depends + // on the settings of `dataZoom`), it should be re-performed if the component + // is modified by `setOption`. + // (2) If a processor depends on sevral series, speicified by its `getTargetSeries`, + // it should be re-performed when the result array of `getTargetSeries` changed. + // We use `dependencies` to cover these issues. + // (3) How to update target series when coordinate system related components modified. + // TODO: simply the dirty mechanism? Check whether only the case here can set tasks dirty, + // and this case all of the tasks will be set as dirty. + ecModel.restoreData(payload); + // Theoretically an overall task not only depends on each of its target series, but also + // depends on all of the series. + // The overall task is not in pipeline, and `ecModel.restoreData` only set pipeline tasks + // dirty. If `getTargetSeries` of an overall task returns nothing, we should also ensure + // that the overall task is set as dirty and to be performed, otherwise it probably cause + // state chaos. So we have to set dirty of all of the overall tasks manually, otherwise it + // probably cause state chaos (consider `dataZoomProcessor`). + this._stageTaskMap.each(function (taskRecord) { + var overallTask = taskRecord.overallTask; + overallTask && overallTask.dirty(); + }); + }; + // If seriesModel provided, incremental threshold is check by series data. + Scheduler.prototype.getPerformArgs = function (task, isBlock) { + // For overall task + if (!task.__pipeline) { + return; + } + var pipeline = this._pipelineMap.get(task.__pipeline.id); + var pCtx = pipeline.context; + var incremental = !isBlock && pipeline.progressiveEnabled && (!pCtx || pCtx.progressiveRender) && task.__idxInPipeline > pipeline.blockIndex; + var step = incremental ? pipeline.step : null; + var modDataCount = pCtx && pCtx.modDataCount; + var modBy = modDataCount != null ? Math.ceil(modDataCount / step) : null; + return { + step: step, + modBy: modBy, + modDataCount: modDataCount + }; + }; + Scheduler.prototype.getPipeline = function (pipelineId) { + return this._pipelineMap.get(pipelineId); + }; + /** + * Current, progressive rendering starts from visual and layout. + * Always detect render mode in the same stage, avoiding that incorrect + * detection caused by data filtering. + * Caution: + * `updateStreamModes` use `seriesModel.getData()`. + */ + Scheduler.prototype.updateStreamModes = function (seriesModel, view) { + var pipeline = this._pipelineMap.get(seriesModel.uid); + var data = seriesModel.getData(); + var dataLen = data.count(); + // `progressiveRender` means that can render progressively in each + // animation frame. Note that some types of series do not provide + // `view.incrementalPrepareRender` but support `chart.appendData`. We + // use the term `incremental` but not `progressive` to describe the + // case that `chart.appendData`. + var progressiveRender = pipeline.progressiveEnabled && view.incrementalPrepareRender && dataLen >= pipeline.threshold; + var large = seriesModel.get('large') && dataLen >= seriesModel.get('largeThreshold'); + // TODO: modDataCount should not updated if `appendData`, otherwise cause whole repaint. + // see `test/candlestick-large3.html` + var modDataCount = seriesModel.get('progressiveChunkMode') === 'mod' ? dataLen : null; + seriesModel.pipelineContext = pipeline.context = { + progressiveRender: progressiveRender, + modDataCount: modDataCount, + large: large + }; + }; + Scheduler.prototype.restorePipelines = function (ecModel) { + var scheduler = this; + var pipelineMap = scheduler._pipelineMap = createHashMap(); + ecModel.eachSeries(function (seriesModel) { + var progressive = seriesModel.getProgressive(); + var pipelineId = seriesModel.uid; + pipelineMap.set(pipelineId, { + id: pipelineId, + head: null, + tail: null, + threshold: seriesModel.getProgressiveThreshold(), + progressiveEnabled: progressive && !(seriesModel.preventIncremental && seriesModel.preventIncremental()), + blockIndex: -1, + step: Math.round(progressive || 700), + count: 0 + }); + scheduler._pipe(seriesModel, seriesModel.dataTask); + }); + }; + Scheduler.prototype.prepareStageTasks = function () { + var stageTaskMap = this._stageTaskMap; + var ecModel = this.api.getModel(); + var api = this.api; + each(this._allHandlers, function (handler) { + var record = stageTaskMap.get(handler.uid) || stageTaskMap.set(handler.uid, {}); + var errMsg = ''; + if ("development" !== 'production') { + // Currently do not need to support to sepecify them both. + errMsg = '"reset" and "overallReset" must not be both specified.'; + } + assert(!(handler.reset && handler.overallReset), errMsg); + handler.reset && this._createSeriesStageTask(handler, record, ecModel, api); + handler.overallReset && this._createOverallStageTask(handler, record, ecModel, api); + }, this); + }; + Scheduler.prototype.prepareView = function (view, model, ecModel, api) { + var renderTask = view.renderTask; + var context = renderTask.context; + context.model = model; + context.ecModel = ecModel; + context.api = api; + renderTask.__block = !view.incrementalPrepareRender; + this._pipe(model, renderTask); + }; + Scheduler.prototype.performDataProcessorTasks = function (ecModel, payload) { + // If we do not use `block` here, it should be considered when to update modes. + this._performStageTasks(this._dataProcessorHandlers, ecModel, payload, { + block: true + }); + }; + Scheduler.prototype.performVisualTasks = function (ecModel, payload, opt) { + this._performStageTasks(this._visualHandlers, ecModel, payload, opt); + }; + Scheduler.prototype._performStageTasks = function (stageHandlers, ecModel, payload, opt) { + opt = opt || {}; + var unfinished = false; + var scheduler = this; + each(stageHandlers, function (stageHandler, idx) { + if (opt.visualType && opt.visualType !== stageHandler.visualType) { + return; + } + var stageHandlerRecord = scheduler._stageTaskMap.get(stageHandler.uid); + var seriesTaskMap = stageHandlerRecord.seriesTaskMap; + var overallTask = stageHandlerRecord.overallTask; + if (overallTask) { + var overallNeedDirty_1; + var agentStubMap = overallTask.agentStubMap; + agentStubMap.each(function (stub) { + if (needSetDirty(opt, stub)) { + stub.dirty(); + overallNeedDirty_1 = true; + } + }); + overallNeedDirty_1 && overallTask.dirty(); + scheduler.updatePayload(overallTask, payload); + var performArgs_1 = scheduler.getPerformArgs(overallTask, opt.block); + // Execute stubs firstly, which may set the overall task dirty, + // then execute the overall task. And stub will call seriesModel.setData, + // which ensures that in the overallTask seriesModel.getData() will not + // return incorrect data. + agentStubMap.each(function (stub) { + stub.perform(performArgs_1); + }); + if (overallTask.perform(performArgs_1)) { + unfinished = true; + } + } else if (seriesTaskMap) { + seriesTaskMap.each(function (task, pipelineId) { + if (needSetDirty(opt, task)) { + task.dirty(); + } + var performArgs = scheduler.getPerformArgs(task, opt.block); + // FIXME + // if intending to declare `performRawSeries` in handlers, only + // stream-independent (specifically, data item independent) operations can be + // performed. Because if a series is filtered, most of the tasks will not + // be performed. A stream-dependent operation probably cause wrong biz logic. + // Perhaps we should not provide a separate callback for this case instead + // of providing the config `performRawSeries`. The stream-dependent operations + // and stream-independent operations should better not be mixed. + performArgs.skip = !stageHandler.performRawSeries && ecModel.isSeriesFiltered(task.context.model); + scheduler.updatePayload(task, payload); + if (task.perform(performArgs)) { + unfinished = true; + } + }); + } + }); + function needSetDirty(opt, task) { + return opt.setDirty && (!opt.dirtyMap || opt.dirtyMap.get(task.__pipeline.id)); + } + this.unfinished = unfinished || this.unfinished; + }; + Scheduler.prototype.performSeriesTasks = function (ecModel) { + var unfinished; + ecModel.eachSeries(function (seriesModel) { + // Progress to the end for dataInit and dataRestore. + unfinished = seriesModel.dataTask.perform() || unfinished; + }); + this.unfinished = unfinished || this.unfinished; + }; + Scheduler.prototype.plan = function () { + // Travel pipelines, check block. + this._pipelineMap.each(function (pipeline) { + var task = pipeline.tail; + do { + if (task.__block) { + pipeline.blockIndex = task.__idxInPipeline; + break; + } + task = task.getUpstream(); + } while (task); + }); + }; + Scheduler.prototype.updatePayload = function (task, payload) { + payload !== 'remain' && (task.context.payload = payload); + }; + Scheduler.prototype._createSeriesStageTask = function (stageHandler, stageHandlerRecord, ecModel, api) { + var scheduler = this; + var oldSeriesTaskMap = stageHandlerRecord.seriesTaskMap; + // The count of stages are totally about only several dozen, so + // do not need to reuse the map. + var newSeriesTaskMap = stageHandlerRecord.seriesTaskMap = createHashMap(); + var seriesType = stageHandler.seriesType; + var getTargetSeries = stageHandler.getTargetSeries; + // If a stageHandler should cover all series, `createOnAllSeries` should be declared mandatorily, + // to avoid some typo or abuse. Otherwise if an extension do not specify a `seriesType`, + // it works but it may cause other irrelevant charts blocked. + if (stageHandler.createOnAllSeries) { + ecModel.eachRawSeries(create); + } else if (seriesType) { + ecModel.eachRawSeriesByType(seriesType, create); + } else if (getTargetSeries) { + getTargetSeries(ecModel, api).each(create); + } + function create(seriesModel) { + var pipelineId = seriesModel.uid; + // Init tasks for each seriesModel only once. + // Reuse original task instance. + var task = newSeriesTaskMap.set(pipelineId, oldSeriesTaskMap && oldSeriesTaskMap.get(pipelineId) || createTask({ + plan: seriesTaskPlan, + reset: seriesTaskReset, + count: seriesTaskCount + })); + task.context = { + model: seriesModel, + ecModel: ecModel, + api: api, + // PENDING: `useClearVisual` not used? + useClearVisual: stageHandler.isVisual && !stageHandler.isLayout, + plan: stageHandler.plan, + reset: stageHandler.reset, + scheduler: scheduler + }; + scheduler._pipe(seriesModel, task); + } + }; + Scheduler.prototype._createOverallStageTask = function (stageHandler, stageHandlerRecord, ecModel, api) { + var scheduler = this; + var overallTask = stageHandlerRecord.overallTask = stageHandlerRecord.overallTask + // For overall task, the function only be called on reset stage. + || createTask({ + reset: overallTaskReset + }); + overallTask.context = { + ecModel: ecModel, + api: api, + overallReset: stageHandler.overallReset, + scheduler: scheduler + }; + var oldAgentStubMap = overallTask.agentStubMap; + // The count of stages are totally about only several dozen, so + // do not need to reuse the map. + var newAgentStubMap = overallTask.agentStubMap = createHashMap(); + var seriesType = stageHandler.seriesType; + var getTargetSeries = stageHandler.getTargetSeries; + var overallProgress = true; + var shouldOverallTaskDirty = false; + // FIXME:TS never used, so comment it + // let modifyOutputEnd = stageHandler.modifyOutputEnd; + // An overall task with seriesType detected or has `getTargetSeries`, we add + // stub in each pipelines, it will set the overall task dirty when the pipeline + // progress. Moreover, to avoid call the overall task each frame (too frequent), + // we set the pipeline block. + var errMsg = ''; + if ("development" !== 'production') { + errMsg = '"createOnAllSeries" is not supported for "overallReset", ' + 'because it will block all streams.'; + } + assert(!stageHandler.createOnAllSeries, errMsg); + if (seriesType) { + ecModel.eachRawSeriesByType(seriesType, createStub); + } else if (getTargetSeries) { + getTargetSeries(ecModel, api).each(createStub); + } + // Otherwise, (usually it is legacy case), the overall task will only be + // executed when upstream is dirty. Otherwise the progressive rendering of all + // pipelines will be disabled unexpectedly. But it still needs stubs to receive + // dirty info from upstream. + else { + overallProgress = false; + each(ecModel.getSeries(), createStub); + } + function createStub(seriesModel) { + var pipelineId = seriesModel.uid; + var stub = newAgentStubMap.set(pipelineId, oldAgentStubMap && oldAgentStubMap.get(pipelineId) || ( + // When the result of `getTargetSeries` changed, the overallTask + // should be set as dirty and re-performed. + shouldOverallTaskDirty = true, createTask({ + reset: stubReset, + onDirty: stubOnDirty + }))); + stub.context = { + model: seriesModel, + overallProgress: overallProgress + // FIXME:TS never used, so comment it + // modifyOutputEnd: modifyOutputEnd + }; + + stub.agent = overallTask; + stub.__block = overallProgress; + scheduler._pipe(seriesModel, stub); + } + if (shouldOverallTaskDirty) { + overallTask.dirty(); + } + }; + Scheduler.prototype._pipe = function (seriesModel, task) { + var pipelineId = seriesModel.uid; + var pipeline = this._pipelineMap.get(pipelineId); + !pipeline.head && (pipeline.head = task); + pipeline.tail && pipeline.tail.pipe(task); + pipeline.tail = task; + task.__idxInPipeline = pipeline.count++; + task.__pipeline = pipeline; + }; + Scheduler.wrapStageHandler = function (stageHandler, visualType) { + if (isFunction(stageHandler)) { + stageHandler = { + overallReset: stageHandler, + seriesType: detectSeriseType(stageHandler) + }; + } + stageHandler.uid = getUID('stageHandler'); + visualType && (stageHandler.visualType = visualType); + return stageHandler; + }; + return Scheduler; + }(); + function overallTaskReset(context) { + context.overallReset(context.ecModel, context.api, context.payload); + } + function stubReset(context) { + return context.overallProgress && stubProgress; + } + function stubProgress() { + this.agent.dirty(); + this.getDownstream().dirty(); + } + function stubOnDirty() { + this.agent && this.agent.dirty(); + } + function seriesTaskPlan(context) { + return context.plan ? context.plan(context.model, context.ecModel, context.api, context.payload) : null; + } + function seriesTaskReset(context) { + if (context.useClearVisual) { + context.data.clearAllVisual(); + } + var resetDefines = context.resetDefines = normalizeToArray(context.reset(context.model, context.ecModel, context.api, context.payload)); + return resetDefines.length > 1 ? map(resetDefines, function (v, idx) { + return makeSeriesTaskProgress(idx); + }) : singleSeriesTaskProgress; + } + var singleSeriesTaskProgress = makeSeriesTaskProgress(0); + function makeSeriesTaskProgress(resetDefineIdx) { + return function (params, context) { + var data = context.data; + var resetDefine = context.resetDefines[resetDefineIdx]; + if (resetDefine && resetDefine.dataEach) { + for (var i = params.start; i < params.end; i++) { + resetDefine.dataEach(data, i); + } + } else if (resetDefine && resetDefine.progress) { + resetDefine.progress(params, data); + } + }; + } + function seriesTaskCount(context) { + return context.data.count(); + } + /** + * Only some legacy stage handlers (usually in echarts extensions) are pure function. + * To ensure that they can work normally, they should work in block mode, that is, + * they should not be started util the previous tasks finished. So they cause the + * progressive rendering disabled. We try to detect the series type, to narrow down + * the block range to only the series type they concern, but not all series. + */ + function detectSeriseType(legacyFunc) { + seriesType = null; + try { + // Assume there is no async when calling `eachSeriesByType`. + legacyFunc(ecModelMock, apiMock); + } catch (e) {} + return seriesType; + } + var ecModelMock = {}; + var apiMock = {}; + var seriesType; + mockMethods(ecModelMock, GlobalModel); + mockMethods(apiMock, ExtensionAPI); + ecModelMock.eachSeriesByType = ecModelMock.eachRawSeriesByType = function (type) { + seriesType = type; + }; + ecModelMock.eachComponent = function (cond) { + if (cond.mainType === 'series' && cond.subType) { + seriesType = cond.subType; + } + }; + function mockMethods(target, Clz) { + /* eslint-disable */ + for (var name_1 in Clz.prototype) { + // Do not use hasOwnProperty + target[name_1] = noop; + } + /* eslint-enable */ + } + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + + /** + * AUTO-GENERATED FILE. DO NOT MODIFY. + */ + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + var colorAll = ['#37A2DA', '#32C5E9', '#67E0E3', '#9FE6B8', '#FFDB5C', '#ff9f7f', '#fb7293', '#E062AE', '#E690D1', '#e7bcf3', '#9d96f5', '#8378EA', '#96BFFF']; + var lightTheme = { + color: colorAll, + colorLayer: [['#37A2DA', '#ffd85c', '#fd7b5f'], ['#37A2DA', '#67E0E3', '#FFDB5C', '#ff9f7f', '#E062AE', '#9d96f5'], ['#37A2DA', '#32C5E9', '#9FE6B8', '#FFDB5C', '#ff9f7f', '#fb7293', '#e7bcf3', '#8378EA', '#96BFFF'], colorAll] + }; + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + + /** + * AUTO-GENERATED FILE. DO NOT MODIFY. + */ + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + var contrastColor = '#B9B8CE'; + var backgroundColor = '#100C2A'; + var axisCommon = function () { + return { + axisLine: { + lineStyle: { + color: contrastColor + } + }, + splitLine: { + lineStyle: { + color: '#484753' + } + }, + splitArea: { + areaStyle: { + color: ['rgba(255,255,255,0.02)', 'rgba(255,255,255,0.05)'] + } + }, + minorSplitLine: { + lineStyle: { + color: '#20203B' + } + } + }; + }; + var colorPalette = ['#4992ff', '#7cffb2', '#fddd60', '#ff6e76', '#58d9f9', '#05c091', '#ff8a45', '#8d48e3', '#dd79ff']; + var theme = { + darkMode: true, + color: colorPalette, + backgroundColor: backgroundColor, + axisPointer: { + lineStyle: { + color: '#817f91' + }, + crossStyle: { + color: '#817f91' + }, + label: { + // TODO Contrast of label backgorundColor + color: '#fff' + } + }, + legend: { + textStyle: { + color: contrastColor + } + }, + textStyle: { + color: contrastColor + }, + title: { + textStyle: { + color: '#EEF1FA' + }, + subtextStyle: { + color: '#B9B8CE' + } + }, + toolbox: { + iconStyle: { + borderColor: contrastColor + } + }, + dataZoom: { + borderColor: '#71708A', + textStyle: { + color: contrastColor + }, + 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: contrastColor + } + }, + timeline: { + lineStyle: { + color: contrastColor + }, + label: { + color: contrastColor + }, + controlStyle: { + color: contrastColor, + borderColor: contrastColor + } + }, + calendar: { + itemStyle: { + color: backgroundColor + }, + dayLabel: { + color: contrastColor + }, + monthLabel: { + color: contrastColor + }, + yearLabel: { + color: contrastColor + } + }, + timeAxis: axisCommon(), + logAxis: axisCommon(), + valueAxis: axisCommon(), + categoryAxis: axisCommon(), + line: { + symbol: 'circle' + }, + graph: { + color: colorPalette + }, + gauge: { + title: { + color: contrastColor + }, + axisLine: { + lineStyle: { + color: [[1, 'rgba(207,212,219,0.2)']] + } + }, + axisLabel: { + color: contrastColor + }, + detail: { + color: '#EEF1FA' + } + }, + candlestick: { + itemStyle: { + color: '#f64e56', + color0: '#54ea92', + borderColor: '#f64e56', + borderColor0: '#54ea92' + // borderColor: '#ca2824', + // borderColor0: '#09a443' + } + } + }; + + theme.categoryAxis.splitLine.show = false; + + /** + * Usage of query: + * `chart.on('click', query, handler);` + * The `query` can be: + * + The component type query string, only `mainType` or `mainType.subType`, + * like: 'xAxis', 'series', 'xAxis.category' or 'series.line'. + * + The component query object, like: + * `{seriesIndex: 2}`, `{seriesName: 'xx'}`, `{seriesId: 'some'}`, + * `{xAxisIndex: 2}`, `{xAxisName: 'xx'}`, `{xAxisId: 'some'}`. + * + The data query object, like: + * `{dataIndex: 123}`, `{dataType: 'link'}`, `{name: 'some'}`. + * + The other query object (cmponent customized query), like: + * `{element: 'some'}` (only available in custom series). + * + * Caveat: If a prop in the `query` object is `null/undefined`, it is the + * same as there is no such prop in the `query` object. + */ + var ECEventProcessor = /** @class */function () { + function ECEventProcessor() {} + ECEventProcessor.prototype.normalizeQuery = function (query) { + var cptQuery = {}; + var dataQuery = {}; + var otherQuery = {}; + // `query` is `mainType` or `mainType.subType` of component. + if (isString(query)) { + var condCptType = parseClassType(query); + // `.main` and `.sub` may be ''. + cptQuery.mainType = condCptType.main || null; + cptQuery.subType = condCptType.sub || null; + } + // `query` is an object, convert to {mainType, index, name, id}. + else { + // `xxxIndex`, `xxxName`, `xxxId`, `name`, `dataIndex`, `dataType` is reserved, + // can not be used in `compomentModel.filterForExposedEvent`. + var suffixes_1 = ['Index', 'Name', 'Id']; + var dataKeys_1 = { + name: 1, + dataIndex: 1, + dataType: 1 + }; + each(query, function (val, key) { + var reserved = false; + for (var i = 0; i < suffixes_1.length; i++) { + var propSuffix = suffixes_1[i]; + var suffixPos = key.lastIndexOf(propSuffix); + if (suffixPos > 0 && suffixPos === key.length - propSuffix.length) { + var mainType = key.slice(0, suffixPos); + // Consider `dataIndex`. + if (mainType !== 'data') { + cptQuery.mainType = mainType; + cptQuery[propSuffix.toLowerCase()] = val; + reserved = true; + } + } + } + if (dataKeys_1.hasOwnProperty(key)) { + dataQuery[key] = val; + reserved = true; + } + if (!reserved) { + otherQuery[key] = val; + } + }); + } + return { + cptQuery: cptQuery, + dataQuery: dataQuery, + otherQuery: otherQuery + }; + }; + ECEventProcessor.prototype.filter = function (eventType, query) { + // They should be assigned before each trigger call. + var eventInfo = this.eventInfo; + if (!eventInfo) { + return true; + } + var targetEl = eventInfo.targetEl; + var packedEvent = eventInfo.packedEvent; + var model = eventInfo.model; + var view = eventInfo.view; + // For event like 'globalout'. + if (!model || !view) { + return true; + } + var cptQuery = query.cptQuery; + var dataQuery = query.dataQuery; + return check(cptQuery, model, 'mainType') && check(cptQuery, model, 'subType') && check(cptQuery, model, 'index', 'componentIndex') && check(cptQuery, model, 'name') && check(cptQuery, model, 'id') && check(dataQuery, packedEvent, 'name') && check(dataQuery, packedEvent, 'dataIndex') && check(dataQuery, packedEvent, 'dataType') && (!view.filterForExposedEvent || view.filterForExposedEvent(eventType, query.otherQuery, targetEl, packedEvent)); + function check(query, host, prop, propOnHost) { + return query[prop] == null || host[propOnHost || prop] === query[prop]; + } + }; + ECEventProcessor.prototype.afterTrigger = function () { + // Make sure the eventInfo won't be used in next trigger. + this.eventInfo = null; + }; + return ECEventProcessor; + }(); + + var SYMBOL_PROPS_WITH_CB = ['symbol', 'symbolSize', 'symbolRotate', 'symbolOffset']; + var SYMBOL_PROPS = SYMBOL_PROPS_WITH_CB.concat(['symbolKeepAspect']); + // Encoding visual for all series include which is filtered for legend drawing + var seriesSymbolTask = { + createOnAllSeries: true, + // For legend. + performRawSeries: true, + reset: function (seriesModel, ecModel) { + var data = seriesModel.getData(); + if (seriesModel.legendIcon) { + data.setVisual('legendIcon', seriesModel.legendIcon); + } + if (!seriesModel.hasSymbolVisual) { + return; + } + var symbolOptions = {}; + var symbolOptionsCb = {}; + var hasCallback = false; + for (var i = 0; i < SYMBOL_PROPS_WITH_CB.length; i++) { + var symbolPropName = SYMBOL_PROPS_WITH_CB[i]; + var val = seriesModel.get(symbolPropName); + if (isFunction(val)) { + hasCallback = true; + symbolOptionsCb[symbolPropName] = val; + } else { + symbolOptions[symbolPropName] = val; + } + } + symbolOptions.symbol = symbolOptions.symbol || seriesModel.defaultSymbol; + data.setVisual(extend({ + legendIcon: seriesModel.legendIcon || symbolOptions.symbol, + symbolKeepAspect: seriesModel.get('symbolKeepAspect') + }, symbolOptions)); + // Only visible series has each data be visual encoded + if (ecModel.isSeriesFiltered(seriesModel)) { + return; + } + var symbolPropsCb = keys(symbolOptionsCb); + function dataEach(data, idx) { + var rawValue = seriesModel.getRawValue(idx); + var params = seriesModel.getDataParams(idx); + for (var i = 0; i < symbolPropsCb.length; i++) { + var symbolPropName = symbolPropsCb[i]; + data.setItemVisual(idx, symbolPropName, symbolOptionsCb[symbolPropName](rawValue, params)); + } + } + return { + dataEach: hasCallback ? dataEach : null + }; + } + }; + var dataSymbolTask = { + createOnAllSeries: true, + // For legend. + performRawSeries: true, + reset: function (seriesModel, ecModel) { + if (!seriesModel.hasSymbolVisual) { + return; + } + // Only visible series has each data be visual encoded + if (ecModel.isSeriesFiltered(seriesModel)) { + return; + } + var data = seriesModel.getData(); + function dataEach(data, idx) { + var itemModel = data.getItemModel(idx); + for (var i = 0; i < SYMBOL_PROPS.length; i++) { + var symbolPropName = SYMBOL_PROPS[i]; + var val = itemModel.getShallow(symbolPropName, true); + if (val != null) { + data.setItemVisual(idx, symbolPropName, val); + } + } + } + return { + dataEach: data.hasItemOption ? dataEach : null + }; + } + }; + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + + /** + * AUTO-GENERATED FILE. DO NOT MODIFY. + */ + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + function getItemVisualFromData(data, dataIndex, key) { + switch (key) { + case 'color': + var style = data.getItemVisual(dataIndex, 'style'); + return style[data.getVisual('drawType')]; + case 'opacity': + return data.getItemVisual(dataIndex, 'style').opacity; + case 'symbol': + case 'symbolSize': + case 'liftZ': + return data.getItemVisual(dataIndex, key); + default: + if ("development" !== 'production') { + console.warn("Unknown visual type " + key); + } + } + } + function getVisualFromData(data, key) { + switch (key) { + case 'color': + var style = data.getVisual('style'); + return style[data.getVisual('drawType')]; + case 'opacity': + return data.getVisual('style').opacity; + case 'symbol': + case 'symbolSize': + case 'liftZ': + return data.getVisual(key); + default: + if ("development" !== 'production') { + console.warn("Unknown visual type " + key); + } + } + } + function setItemVisualFromData(data, dataIndex, key, value) { + switch (key) { + case 'color': + // Make sure not sharing style object. + var style = data.ensureUniqueItemVisual(dataIndex, 'style'); + style[data.getVisual('drawType')] = value; + // Mark the color has been changed, not from palette anymore + data.setItemVisual(dataIndex, 'colorFromPalette', false); + break; + case 'opacity': + data.ensureUniqueItemVisual(dataIndex, 'style').opacity = value; + break; + case 'symbol': + case 'symbolSize': + case 'liftZ': + data.setItemVisual(dataIndex, key, value); + break; + default: + if ("development" !== 'production') { + console.warn("Unknown visual type " + key); + } + } + } + + // Legacy data selection action. + // Includes: pieSelect, pieUnSelect, pieToggleSelect, mapSelect, mapUnSelect, mapToggleSelect + function createLegacyDataSelectAction(seriesType, ecRegisterAction) { + function getSeriesIndices(ecModel, payload) { + var seriesIndices = []; + ecModel.eachComponent({ + mainType: 'series', + subType: seriesType, + query: payload + }, function (seriesModel) { + seriesIndices.push(seriesModel.seriesIndex); + }); + return seriesIndices; + } + each([[seriesType + 'ToggleSelect', 'toggleSelect'], [seriesType + 'Select', 'select'], [seriesType + 'UnSelect', 'unselect']], function (eventsMap) { + ecRegisterAction(eventsMap[0], function (payload, ecModel, api) { + payload = extend({}, payload); + if ("development" !== 'production') { + deprecateReplaceLog(payload.type, eventsMap[1]); + } + api.dispatchAction(extend(payload, { + type: eventsMap[1], + seriesIndex: getSeriesIndices(ecModel, payload) + })); + }); + }); + } + function handleSeriesLegacySelectEvents(type, eventPostfix, ecIns, ecModel, payload) { + var legacyEventName = type + eventPostfix; + if (!ecIns.isSilent(legacyEventName)) { + if ("development" !== 'production') { + deprecateLog("event " + legacyEventName + " is deprecated."); + } + ecModel.eachComponent({ + mainType: 'series', + subType: 'pie' + }, function (seriesModel) { + var seriesIndex = seriesModel.seriesIndex; + var selectedMap = seriesModel.option.selectedMap; + var selected = payload.selected; + for (var i = 0; i < selected.length; i++) { + if (selected[i].seriesIndex === seriesIndex) { + var data = seriesModel.getData(); + var dataIndex = queryDataIndex(data, payload.fromActionPayload); + ecIns.trigger(legacyEventName, { + type: legacyEventName, + seriesId: seriesModel.id, + name: isArray(dataIndex) ? data.getName(dataIndex[0]) : data.getName(dataIndex), + selected: isString(selectedMap) ? selectedMap : extend({}, selectedMap) + }); + } + } + }); + } + } + function handleLegacySelectEvents(messageCenter, ecIns, api) { + messageCenter.on('selectchanged', function (params) { + var ecModel = api.getModel(); + if (params.isFromClick) { + handleSeriesLegacySelectEvents('map', 'selectchanged', ecIns, ecModel, params); + handleSeriesLegacySelectEvents('pie', 'selectchanged', ecIns, ecModel, params); + } else if (params.fromAction === 'select') { + handleSeriesLegacySelectEvents('map', 'selected', ecIns, ecModel, params); + handleSeriesLegacySelectEvents('pie', 'selected', ecIns, ecModel, params); + } else if (params.fromAction === 'unselect') { + handleSeriesLegacySelectEvents('map', 'unselected', ecIns, ecModel, params); + handleSeriesLegacySelectEvents('pie', 'unselected', ecIns, ecModel, params); + } + }); + } + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + + /** + * AUTO-GENERATED FILE. DO NOT MODIFY. + */ + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + function findEventDispatcher(target, det, returnFirstMatch) { + var found; + while (target) { + if (det(target)) { + found = target; + if (returnFirstMatch) { + break; + } + } + target = target.__hostTarget || target.parent; + } + return found; + } + + var wmUniqueIndex = Math.round(Math.random() * 9); + var supportDefineProperty = typeof Object.defineProperty === 'function'; + var WeakMap = (function () { + function WeakMap() { + this._id = '__ec_inner_' + wmUniqueIndex++; + } + WeakMap.prototype.get = function (key) { + return this._guard(key)[this._id]; + }; + WeakMap.prototype.set = function (key, value) { + var target = this._guard(key); + if (supportDefineProperty) { + Object.defineProperty(target, this._id, { + value: value, + enumerable: false, + configurable: true + }); + } + else { + target[this._id] = value; + } + return this; + }; + WeakMap.prototype["delete"] = function (key) { + if (this.has(key)) { + delete this._guard(key)[this._id]; + return true; + } + return false; + }; + WeakMap.prototype.has = function (key) { + return !!this._guard(key)[this._id]; + }; + WeakMap.prototype._guard = function (key) { + if (key !== Object(key)) { + throw TypeError('Value of WeakMap is not a non-null object.'); + } + return key; + }; + return WeakMap; + }()); + + /** + * Triangle shape + * @inner + */ + var Triangle = Path.extend({ + type: 'triangle', + shape: { + cx: 0, + cy: 0, + width: 0, + height: 0 + }, + buildPath: function (path, shape) { + var cx = shape.cx; + var cy = shape.cy; + var width = shape.width / 2; + var height = shape.height / 2; + path.moveTo(cx, cy - height); + path.lineTo(cx + width, cy + height); + path.lineTo(cx - width, cy + height); + path.closePath(); + } + }); + /** + * Diamond shape + * @inner + */ + var Diamond = Path.extend({ + type: 'diamond', + shape: { + cx: 0, + cy: 0, + width: 0, + height: 0 + }, + buildPath: function (path, shape) { + var cx = shape.cx; + var cy = shape.cy; + var width = shape.width / 2; + var height = shape.height / 2; + path.moveTo(cx, cy - height); + path.lineTo(cx + width, cy); + path.lineTo(cx, cy + height); + path.lineTo(cx - width, cy); + path.closePath(); + } + }); + /** + * Pin shape + * @inner + */ + var Pin = Path.extend({ + type: 'pin', + shape: { + // x, y on the cusp + x: 0, + y: 0, + width: 0, + height: 0 + }, + buildPath: function (path, shape) { + var x = shape.x; + var y = shape.y; + var w = shape.width / 5 * 3; + // Height must be larger than width + var h = Math.max(w, shape.height); + var r = w / 2; + // Dist on y with tangent point and circle center + var dy = r * r / (h - r); + var cy = y - h + r + dy; + var angle = Math.asin(dy / r); + // Dist on x with tangent point and circle center + var dx = Math.cos(angle) * r; + var tanX = Math.sin(angle); + var tanY = Math.cos(angle); + var cpLen = r * 0.6; + var cpLen2 = r * 0.7; + path.moveTo(x - dx, cy + dy); + path.arc(x, cy, r, Math.PI - angle, Math.PI * 2 + angle); + path.bezierCurveTo(x + dx - tanX * cpLen, cy + dy + tanY * cpLen, x, y - cpLen2, x, y); + path.bezierCurveTo(x, y - cpLen2, x - dx + tanX * cpLen, cy + dy + tanY * cpLen, x - dx, cy + dy); + path.closePath(); + } + }); + /** + * Arrow shape + * @inner + */ + var Arrow = Path.extend({ + type: 'arrow', + shape: { + x: 0, + y: 0, + width: 0, + height: 0 + }, + buildPath: function (ctx, shape) { + var height = shape.height; + var width = shape.width; + var x = shape.x; + var y = shape.y; + var dx = width / 3 * 2; + ctx.moveTo(x, y); + ctx.lineTo(x + dx, y + height); + ctx.lineTo(x, y + height / 4 * 3); + ctx.lineTo(x - dx, y + height); + ctx.lineTo(x, y); + ctx.closePath(); + } + }); + /** + * Map of path constructors + */ + // TODO Use function to build symbol path. + var symbolCtors = { + line: Line, + rect: Rect, + roundRect: Rect, + square: Rect, + circle: Circle, + diamond: Diamond, + pin: Pin, + arrow: Arrow, + triangle: Triangle + }; + var symbolShapeMakers = { + line: function (x, y, w, h, shape) { + shape.x1 = x; + shape.y1 = y + h / 2; + shape.x2 = x + w; + shape.y2 = y + h / 2; + }, + rect: function (x, y, w, h, shape) { + shape.x = x; + shape.y = y; + shape.width = w; + shape.height = h; + }, + roundRect: function (x, y, w, h, shape) { + shape.x = x; + shape.y = y; + shape.width = w; + shape.height = h; + shape.r = Math.min(w, h) / 4; + }, + square: function (x, y, w, h, shape) { + var size = Math.min(w, h); + shape.x = x; + shape.y = y; + shape.width = size; + shape.height = size; + }, + circle: function (x, y, w, h, shape) { + // Put circle in the center of square + shape.cx = x + w / 2; + shape.cy = y + h / 2; + shape.r = Math.min(w, h) / 2; + }, + diamond: function (x, y, w, h, shape) { + shape.cx = x + w / 2; + shape.cy = y + h / 2; + shape.width = w; + shape.height = h; + }, + pin: function (x, y, w, h, shape) { + shape.x = x + w / 2; + shape.y = y + h / 2; + shape.width = w; + shape.height = h; + }, + arrow: function (x, y, w, h, shape) { + shape.x = x + w / 2; + shape.y = y + h / 2; + shape.width = w; + shape.height = h; + }, + triangle: function (x, y, w, h, shape) { + shape.cx = x + w / 2; + shape.cy = y + h / 2; + shape.width = w; + shape.height = h; + } + }; + var symbolBuildProxies = {}; + each(symbolCtors, function (Ctor, name) { + symbolBuildProxies[name] = new Ctor(); + }); + var SymbolClz = Path.extend({ + type: 'symbol', + shape: { + symbolType: '', + x: 0, + y: 0, + width: 0, + height: 0 + }, + calculateTextPosition: function (out, config, rect) { + var res = calculateTextPosition(out, config, rect); + var shape = this.shape; + if (shape && shape.symbolType === 'pin' && config.position === 'inside') { + res.y = rect.y + rect.height * 0.4; + } + return res; + }, + buildPath: function (ctx, shape, inBundle) { + var symbolType = shape.symbolType; + if (symbolType !== 'none') { + var proxySymbol = symbolBuildProxies[symbolType]; + if (!proxySymbol) { + // Default rect + symbolType = 'rect'; + proxySymbol = symbolBuildProxies[symbolType]; + } + symbolShapeMakers[symbolType](shape.x, shape.y, shape.width, shape.height, proxySymbol.shape); + proxySymbol.buildPath(ctx, proxySymbol.shape, inBundle); + } + } + }); + // Provide setColor helper method to avoid determine if set the fill or stroke outside + function symbolPathSetColor(color, innerColor) { + if (this.type !== 'image') { + var symbolStyle = this.style; + if (this.__isEmptyBrush) { + symbolStyle.stroke = color; + symbolStyle.fill = innerColor || '#fff'; + // TODO Same width with lineStyle in LineView + symbolStyle.lineWidth = 2; + } else if (this.shape.symbolType === 'line') { + symbolStyle.stroke = color; + } else { + symbolStyle.fill = color; + } + this.markRedraw(); + } + } + /** + * Create a symbol element with given symbol configuration: shape, x, y, width, height, color + */ + function createSymbol(symbolType, x, y, w, h, color, + // whether to keep the ratio of w/h, + keepAspect) { + // TODO Support image object, DynamicImage. + var isEmpty = symbolType.indexOf('empty') === 0; + if (isEmpty) { + symbolType = symbolType.substr(5, 1).toLowerCase() + symbolType.substr(6); + } + var symbolPath; + if (symbolType.indexOf('image://') === 0) { + symbolPath = makeImage(symbolType.slice(8), new BoundingRect(x, y, w, h), keepAspect ? 'center' : 'cover'); + } else if (symbolType.indexOf('path://') === 0) { + symbolPath = makePath(symbolType.slice(7), {}, new BoundingRect(x, y, w, h), keepAspect ? 'center' : 'cover'); + } else { + symbolPath = new SymbolClz({ + shape: { + symbolType: symbolType, + x: x, + y: y, + width: w, + height: h + } + }); + } + symbolPath.__isEmptyBrush = isEmpty; + // TODO Should deprecate setColor + symbolPath.setColor = symbolPathSetColor; + if (color) { + symbolPath.setColor(color); + } + return symbolPath; + } + function normalizeSymbolSize(symbolSize) { + if (!isArray(symbolSize)) { + symbolSize = [+symbolSize, +symbolSize]; + } + return [symbolSize[0] || 0, symbolSize[1] || 0]; + } + function normalizeSymbolOffset(symbolOffset, symbolSize) { + if (symbolOffset == null) { + return; + } + if (!isArray(symbolOffset)) { + symbolOffset = [symbolOffset, symbolOffset]; + } + return [parsePercent$1(symbolOffset[0], symbolSize[0]) || 0, parsePercent$1(retrieve2(symbolOffset[1], symbolOffset[0]), symbolSize[1]) || 0]; + } + + function isSafeNum(num) { + return isFinite(num); + } + function createLinearGradient(ctx, obj, rect) { + var x = obj.x == null ? 0 : obj.x; + var x2 = obj.x2 == null ? 1 : obj.x2; + var y = obj.y == null ? 0 : obj.y; + var y2 = obj.y2 == null ? 0 : obj.y2; + if (!obj.global) { + x = x * rect.width + rect.x; + x2 = x2 * rect.width + rect.x; + y = y * rect.height + rect.y; + y2 = y2 * rect.height + rect.y; + } + x = isSafeNum(x) ? x : 0; + x2 = isSafeNum(x2) ? x2 : 1; + y = isSafeNum(y) ? y : 0; + y2 = isSafeNum(y2) ? y2 : 0; + var canvasGradient = ctx.createLinearGradient(x, y, x2, y2); + return canvasGradient; + } + function createRadialGradient(ctx, obj, rect) { + var width = rect.width; + var height = rect.height; + var min = Math.min(width, height); + var x = obj.x == null ? 0.5 : obj.x; + var y = obj.y == null ? 0.5 : obj.y; + var r = obj.r == null ? 0.5 : obj.r; + if (!obj.global) { + x = x * width + rect.x; + y = y * height + rect.y; + r = r * min; + } + x = isSafeNum(x) ? x : 0.5; + y = isSafeNum(y) ? y : 0.5; + r = r >= 0 && isSafeNum(r) ? r : 0.5; + var canvasGradient = ctx.createRadialGradient(x, y, 0, x, y, r); + return canvasGradient; + } + function getCanvasGradient(ctx, obj, rect) { + var canvasGradient = obj.type === 'radial' + ? createRadialGradient(ctx, obj, rect) + : createLinearGradient(ctx, obj, rect); + var colorStops = obj.colorStops; + for (var i = 0; i < colorStops.length; i++) { + canvasGradient.addColorStop(colorStops[i].offset, colorStops[i].color); + } + return canvasGradient; + } + function isClipPathChanged(clipPaths, prevClipPaths) { + if (clipPaths === prevClipPaths || (!clipPaths && !prevClipPaths)) { + return false; + } + if (!clipPaths || !prevClipPaths || (clipPaths.length !== prevClipPaths.length)) { + return true; + } + for (var i = 0; i < clipPaths.length; i++) { + if (clipPaths[i] !== prevClipPaths[i]) { + return true; + } + } + return false; + } + function parseInt10(val) { + return parseInt(val, 10); + } + function getSize(root, whIdx, opts) { + var wh = ['width', 'height'][whIdx]; + var cwh = ['clientWidth', 'clientHeight'][whIdx]; + var plt = ['paddingLeft', 'paddingTop'][whIdx]; + var prb = ['paddingRight', 'paddingBottom'][whIdx]; + if (opts[wh] != null && opts[wh] !== 'auto') { + return parseFloat(opts[wh]); + } + var stl = document.defaultView.getComputedStyle(root); + return ((root[cwh] || parseInt10(stl[wh]) || parseInt10(root.style[wh])) + - (parseInt10(stl[plt]) || 0) + - (parseInt10(stl[prb]) || 0)) | 0; + } + + function normalizeLineDash(lineType, lineWidth) { + if (!lineType || lineType === 'solid' || !(lineWidth > 0)) { + return null; + } + return lineType === 'dashed' + ? [4 * lineWidth, 2 * lineWidth] + : lineType === 'dotted' + ? [lineWidth] + : isNumber(lineType) + ? [lineType] : isArray(lineType) ? lineType : null; + } + function getLineDash(el) { + var style = el.style; + var lineDash = style.lineDash && style.lineWidth > 0 && normalizeLineDash(style.lineDash, style.lineWidth); + var lineDashOffset = style.lineDashOffset; + if (lineDash) { + var lineScale_1 = (style.strokeNoScale && el.getLineScale) ? el.getLineScale() : 1; + if (lineScale_1 && lineScale_1 !== 1) { + lineDash = map(lineDash, function (rawVal) { + return rawVal / lineScale_1; + }); + lineDashOffset /= lineScale_1; + } + } + return [lineDash, lineDashOffset]; + } + + var pathProxyForDraw = new PathProxy(true); + function styleHasStroke(style) { + var stroke = style.stroke; + return !(stroke == null || stroke === 'none' || !(style.lineWidth > 0)); + } + function isValidStrokeFillStyle(strokeOrFill) { + return typeof strokeOrFill === 'string' && strokeOrFill !== 'none'; + } + function styleHasFill(style) { + var fill = style.fill; + return fill != null && fill !== 'none'; + } + function doFillPath(ctx, style) { + if (style.fillOpacity != null && style.fillOpacity !== 1) { + var originalGlobalAlpha = ctx.globalAlpha; + ctx.globalAlpha = style.fillOpacity * style.opacity; + ctx.fill(); + ctx.globalAlpha = originalGlobalAlpha; + } + else { + ctx.fill(); + } + } + function doStrokePath(ctx, style) { + if (style.strokeOpacity != null && style.strokeOpacity !== 1) { + var originalGlobalAlpha = ctx.globalAlpha; + ctx.globalAlpha = style.strokeOpacity * style.opacity; + ctx.stroke(); + ctx.globalAlpha = originalGlobalAlpha; + } + else { + ctx.stroke(); + } + } + function createCanvasPattern(ctx, pattern, el) { + var image = createOrUpdateImage(pattern.image, pattern.__image, el); + if (isImageReady(image)) { + var canvasPattern = ctx.createPattern(image, pattern.repeat || 'repeat'); + if (typeof DOMMatrix === 'function' + && canvasPattern + && canvasPattern.setTransform) { + var matrix = new DOMMatrix(); + matrix.translateSelf((pattern.x || 0), (pattern.y || 0)); + matrix.rotateSelf(0, 0, (pattern.rotation || 0) * RADIAN_TO_DEGREE); + matrix.scaleSelf((pattern.scaleX || 1), (pattern.scaleY || 1)); + canvasPattern.setTransform(matrix); + } + return canvasPattern; + } + } + function brushPath(ctx, el, style, inBatch) { + var _a; + var hasStroke = styleHasStroke(style); + var hasFill = styleHasFill(style); + var strokePercent = style.strokePercent; + var strokePart = strokePercent < 1; + var firstDraw = !el.path; + if ((!el.silent || strokePart) && firstDraw) { + el.createPathProxy(); + } + var path = el.path || pathProxyForDraw; + var dirtyFlag = el.__dirty; + if (!inBatch) { + var fill = style.fill; + var stroke = style.stroke; + var hasFillGradient = hasFill && !!fill.colorStops; + var hasStrokeGradient = hasStroke && !!stroke.colorStops; + var hasFillPattern = hasFill && !!fill.image; + var hasStrokePattern = hasStroke && !!stroke.image; + var fillGradient = void 0; + var strokeGradient = void 0; + var fillPattern = void 0; + var strokePattern = void 0; + var rect = void 0; + if (hasFillGradient || hasStrokeGradient) { + rect = el.getBoundingRect(); + } + if (hasFillGradient) { + fillGradient = dirtyFlag + ? getCanvasGradient(ctx, fill, rect) + : el.__canvasFillGradient; + el.__canvasFillGradient = fillGradient; + } + if (hasStrokeGradient) { + strokeGradient = dirtyFlag + ? getCanvasGradient(ctx, stroke, rect) + : el.__canvasStrokeGradient; + el.__canvasStrokeGradient = strokeGradient; + } + if (hasFillPattern) { + fillPattern = (dirtyFlag || !el.__canvasFillPattern) + ? createCanvasPattern(ctx, fill, el) + : el.__canvasFillPattern; + el.__canvasFillPattern = fillPattern; + } + if (hasStrokePattern) { + strokePattern = (dirtyFlag || !el.__canvasStrokePattern) + ? createCanvasPattern(ctx, stroke, el) + : el.__canvasStrokePattern; + el.__canvasStrokePattern = fillPattern; + } + if (hasFillGradient) { + ctx.fillStyle = fillGradient; + } + else if (hasFillPattern) { + if (fillPattern) { + ctx.fillStyle = fillPattern; + } + else { + hasFill = false; + } + } + if (hasStrokeGradient) { + ctx.strokeStyle = strokeGradient; + } + else if (hasStrokePattern) { + if (strokePattern) { + ctx.strokeStyle = strokePattern; + } + else { + hasStroke = false; + } + } + } + var scale = el.getGlobalScale(); + path.setScale(scale[0], scale[1], el.segmentIgnoreThreshold); + var lineDash; + var lineDashOffset; + if (ctx.setLineDash && style.lineDash) { + _a = getLineDash(el), lineDash = _a[0], lineDashOffset = _a[1]; + } + var needsRebuild = true; + if (firstDraw || (dirtyFlag & SHAPE_CHANGED_BIT)) { + path.setDPR(ctx.dpr); + if (strokePart) { + path.setContext(null); + } + else { + path.setContext(ctx); + needsRebuild = false; + } + path.reset(); + el.buildPath(path, el.shape, inBatch); + path.toStatic(); + el.pathUpdated(); + } + if (needsRebuild) { + path.rebuildPath(ctx, strokePart ? strokePercent : 1); + } + if (lineDash) { + ctx.setLineDash(lineDash); + ctx.lineDashOffset = lineDashOffset; + } + if (!inBatch) { + if (style.strokeFirst) { + if (hasStroke) { + doStrokePath(ctx, style); + } + if (hasFill) { + doFillPath(ctx, style); + } + } + else { + if (hasFill) { + doFillPath(ctx, style); + } + if (hasStroke) { + doStrokePath(ctx, style); + } + } + } + if (lineDash) { + ctx.setLineDash([]); + } + } + function brushImage(ctx, el, style) { + var image = el.__image = createOrUpdateImage(style.image, el.__image, el, el.onload); + if (!image || !isImageReady(image)) { + return; + } + var x = style.x || 0; + var y = style.y || 0; + var width = el.getWidth(); + var height = el.getHeight(); + var aspect = image.width / image.height; + if (width == null && height != null) { + width = height * aspect; + } + else if (height == null && width != null) { + height = width / aspect; + } + else if (width == null && height == null) { + width = image.width; + height = image.height; + } + if (style.sWidth && style.sHeight) { + var sx = style.sx || 0; + var sy = style.sy || 0; + ctx.drawImage(image, sx, sy, style.sWidth, style.sHeight, x, y, width, height); + } + else if (style.sx && style.sy) { + var sx = style.sx; + var sy = style.sy; + var sWidth = width - sx; + var sHeight = height - sy; + ctx.drawImage(image, sx, sy, sWidth, sHeight, x, y, width, height); + } + else { + ctx.drawImage(image, x, y, width, height); + } + } + function brushText(ctx, el, style) { + var _a; + var text = style.text; + text != null && (text += ''); + if (text) { + ctx.font = style.font || DEFAULT_FONT; + ctx.textAlign = style.textAlign; + ctx.textBaseline = style.textBaseline; + var lineDash = void 0; + var lineDashOffset = void 0; + if (ctx.setLineDash && style.lineDash) { + _a = getLineDash(el), lineDash = _a[0], lineDashOffset = _a[1]; + } + if (lineDash) { + ctx.setLineDash(lineDash); + ctx.lineDashOffset = lineDashOffset; + } + if (style.strokeFirst) { + if (styleHasStroke(style)) { + ctx.strokeText(text, style.x, style.y); + } + if (styleHasFill(style)) { + ctx.fillText(text, style.x, style.y); + } + } + else { + if (styleHasFill(style)) { + ctx.fillText(text, style.x, style.y); + } + if (styleHasStroke(style)) { + ctx.strokeText(text, style.x, style.y); + } + } + if (lineDash) { + ctx.setLineDash([]); + } + } + } + var SHADOW_NUMBER_PROPS = ['shadowBlur', 'shadowOffsetX', 'shadowOffsetY']; + var STROKE_PROPS = [ + ['lineCap', 'butt'], ['lineJoin', 'miter'], ['miterLimit', 10] + ]; + function bindCommonProps(ctx, style, prevStyle, forceSetAll, scope) { + var styleChanged = false; + if (!forceSetAll) { + prevStyle = prevStyle || {}; + if (style === prevStyle) { + return false; + } + } + if (forceSetAll || style.opacity !== prevStyle.opacity) { + flushPathDrawn(ctx, scope); + styleChanged = true; + var opacity = Math.max(Math.min(style.opacity, 1), 0); + ctx.globalAlpha = isNaN(opacity) ? DEFAULT_COMMON_STYLE.opacity : opacity; + } + if (forceSetAll || style.blend !== prevStyle.blend) { + if (!styleChanged) { + flushPathDrawn(ctx, scope); + styleChanged = true; + } + ctx.globalCompositeOperation = style.blend || DEFAULT_COMMON_STYLE.blend; + } + for (var i = 0; i < SHADOW_NUMBER_PROPS.length; i++) { + var propName = SHADOW_NUMBER_PROPS[i]; + if (forceSetAll || style[propName] !== prevStyle[propName]) { + if (!styleChanged) { + flushPathDrawn(ctx, scope); + styleChanged = true; + } + ctx[propName] = ctx.dpr * (style[propName] || 0); + } + } + if (forceSetAll || style.shadowColor !== prevStyle.shadowColor) { + if (!styleChanged) { + flushPathDrawn(ctx, scope); + styleChanged = true; + } + ctx.shadowColor = style.shadowColor || DEFAULT_COMMON_STYLE.shadowColor; + } + return styleChanged; + } + function bindPathAndTextCommonStyle(ctx, el, prevEl, forceSetAll, scope) { + var style = getStyle(el, scope.inHover); + var prevStyle = forceSetAll + ? null + : (prevEl && getStyle(prevEl, scope.inHover) || {}); + if (style === prevStyle) { + return false; + } + var styleChanged = bindCommonProps(ctx, style, prevStyle, forceSetAll, scope); + if (forceSetAll || style.fill !== prevStyle.fill) { + if (!styleChanged) { + flushPathDrawn(ctx, scope); + styleChanged = true; + } + isValidStrokeFillStyle(style.fill) && (ctx.fillStyle = style.fill); + } + if (forceSetAll || style.stroke !== prevStyle.stroke) { + if (!styleChanged) { + flushPathDrawn(ctx, scope); + styleChanged = true; + } + isValidStrokeFillStyle(style.stroke) && (ctx.strokeStyle = style.stroke); + } + if (forceSetAll || style.opacity !== prevStyle.opacity) { + if (!styleChanged) { + flushPathDrawn(ctx, scope); + styleChanged = true; + } + ctx.globalAlpha = style.opacity == null ? 1 : style.opacity; + } + if (el.hasStroke()) { + var lineWidth = style.lineWidth; + var newLineWidth = lineWidth / ((style.strokeNoScale && el.getLineScale) ? el.getLineScale() : 1); + if (ctx.lineWidth !== newLineWidth) { + if (!styleChanged) { + flushPathDrawn(ctx, scope); + styleChanged = true; + } + ctx.lineWidth = newLineWidth; + } + } + for (var i = 0; i < STROKE_PROPS.length; i++) { + var prop = STROKE_PROPS[i]; + var propName = prop[0]; + if (forceSetAll || style[propName] !== prevStyle[propName]) { + if (!styleChanged) { + flushPathDrawn(ctx, scope); + styleChanged = true; + } + ctx[propName] = style[propName] || prop[1]; + } + } + return styleChanged; + } + function bindImageStyle(ctx, el, prevEl, forceSetAll, scope) { + return bindCommonProps(ctx, getStyle(el, scope.inHover), prevEl && getStyle(prevEl, scope.inHover), forceSetAll, scope); + } + function setContextTransform(ctx, el) { + var m = el.transform; + var dpr = ctx.dpr || 1; + if (m) { + ctx.setTransform(dpr * m[0], dpr * m[1], dpr * m[2], dpr * m[3], dpr * m[4], dpr * m[5]); + } + else { + ctx.setTransform(dpr, 0, 0, dpr, 0, 0); + } + } + function updateClipStatus(clipPaths, ctx, scope) { + var allClipped = false; + for (var i = 0; i < clipPaths.length; i++) { + var clipPath = clipPaths[i]; + allClipped = allClipped || clipPath.isZeroArea(); + setContextTransform(ctx, clipPath); + ctx.beginPath(); + clipPath.buildPath(ctx, clipPath.shape); + ctx.clip(); + } + scope.allClipped = allClipped; + } + function isTransformChanged(m0, m1) { + if (m0 && m1) { + return m0[0] !== m1[0] + || m0[1] !== m1[1] + || m0[2] !== m1[2] + || m0[3] !== m1[3] + || m0[4] !== m1[4] + || m0[5] !== m1[5]; + } + else if (!m0 && !m1) { + return false; + } + return true; + } + var DRAW_TYPE_PATH = 1; + var DRAW_TYPE_IMAGE = 2; + var DRAW_TYPE_TEXT = 3; + var DRAW_TYPE_INCREMENTAL = 4; + function canPathBatch(style) { + var hasFill = styleHasFill(style); + var hasStroke = styleHasStroke(style); + return !(style.lineDash + || !(+hasFill ^ +hasStroke) + || (hasFill && typeof style.fill !== 'string') + || (hasStroke && typeof style.stroke !== 'string') + || style.strokePercent < 1 + || style.strokeOpacity < 1 + || style.fillOpacity < 1); + } + function flushPathDrawn(ctx, scope) { + scope.batchFill && ctx.fill(); + scope.batchStroke && ctx.stroke(); + scope.batchFill = ''; + scope.batchStroke = ''; + } + function getStyle(el, inHover) { + return inHover ? (el.__hoverStyle || el.style) : el.style; + } + function brushSingle(ctx, el) { + brush(ctx, el, { inHover: false, viewWidth: 0, viewHeight: 0 }, true); + } + function brush(ctx, el, scope, isLast) { + var m = el.transform; + if (!el.shouldBePainted(scope.viewWidth, scope.viewHeight, false, false)) { + el.__dirty &= ~REDRAW_BIT; + el.__isRendered = false; + return; + } + var clipPaths = el.__clipPaths; + var prevElClipPaths = scope.prevElClipPaths; + var forceSetTransform = false; + var forceSetStyle = false; + if (!prevElClipPaths || isClipPathChanged(clipPaths, prevElClipPaths)) { + if (prevElClipPaths && prevElClipPaths.length) { + flushPathDrawn(ctx, scope); + ctx.restore(); + forceSetStyle = forceSetTransform = true; + scope.prevElClipPaths = null; + scope.allClipped = false; + scope.prevEl = null; + } + if (clipPaths && clipPaths.length) { + flushPathDrawn(ctx, scope); + ctx.save(); + updateClipStatus(clipPaths, ctx, scope); + forceSetTransform = true; + } + scope.prevElClipPaths = clipPaths; + } + if (scope.allClipped) { + el.__isRendered = false; + return; + } + el.beforeBrush && el.beforeBrush(); + el.innerBeforeBrush(); + var prevEl = scope.prevEl; + if (!prevEl) { + forceSetStyle = forceSetTransform = true; + } + var canBatchPath = el instanceof Path + && el.autoBatch + && canPathBatch(el.style); + if (forceSetTransform || isTransformChanged(m, prevEl.transform)) { + flushPathDrawn(ctx, scope); + setContextTransform(ctx, el); + } + else if (!canBatchPath) { + flushPathDrawn(ctx, scope); + } + var style = getStyle(el, scope.inHover); + if (el instanceof Path) { + if (scope.lastDrawType !== DRAW_TYPE_PATH) { + forceSetStyle = true; + scope.lastDrawType = DRAW_TYPE_PATH; + } + bindPathAndTextCommonStyle(ctx, el, prevEl, forceSetStyle, scope); + if (!canBatchPath || (!scope.batchFill && !scope.batchStroke)) { + ctx.beginPath(); + } + brushPath(ctx, el, style, canBatchPath); + if (canBatchPath) { + scope.batchFill = style.fill || ''; + scope.batchStroke = style.stroke || ''; + } + } + else { + if (el instanceof TSpan) { + if (scope.lastDrawType !== DRAW_TYPE_TEXT) { + forceSetStyle = true; + scope.lastDrawType = DRAW_TYPE_TEXT; + } + bindPathAndTextCommonStyle(ctx, el, prevEl, forceSetStyle, scope); + brushText(ctx, el, style); + } + else if (el instanceof ZRImage) { + if (scope.lastDrawType !== DRAW_TYPE_IMAGE) { + forceSetStyle = true; + scope.lastDrawType = DRAW_TYPE_IMAGE; + } + bindImageStyle(ctx, el, prevEl, forceSetStyle, scope); + brushImage(ctx, el, style); + } + else if (el.getTemporalDisplayables) { + if (scope.lastDrawType !== DRAW_TYPE_INCREMENTAL) { + forceSetStyle = true; + scope.lastDrawType = DRAW_TYPE_INCREMENTAL; + } + brushIncremental(ctx, el, scope); + } + } + if (canBatchPath && isLast) { + flushPathDrawn(ctx, scope); + } + el.innerAfterBrush(); + el.afterBrush && el.afterBrush(); + scope.prevEl = el; + el.__dirty = 0; + el.__isRendered = true; + } + function brushIncremental(ctx, el, scope) { + var displayables = el.getDisplayables(); + var temporalDisplayables = el.getTemporalDisplayables(); + ctx.save(); + var innerScope = { + prevElClipPaths: null, + prevEl: null, + allClipped: false, + viewWidth: scope.viewWidth, + viewHeight: scope.viewHeight, + inHover: scope.inHover + }; + var i; + var len; + for (i = el.getCursor(), len = displayables.length; i < len; i++) { + var displayable = displayables[i]; + displayable.beforeBrush && displayable.beforeBrush(); + displayable.innerBeforeBrush(); + brush(ctx, displayable, innerScope, i === len - 1); + displayable.innerAfterBrush(); + displayable.afterBrush && displayable.afterBrush(); + innerScope.prevEl = displayable; + } + for (var i_1 = 0, len_1 = temporalDisplayables.length; i_1 < len_1; i_1++) { + var displayable = temporalDisplayables[i_1]; + displayable.beforeBrush && displayable.beforeBrush(); + displayable.innerBeforeBrush(); + brush(ctx, displayable, innerScope, i_1 === len_1 - 1); + displayable.innerAfterBrush(); + displayable.afterBrush && displayable.afterBrush(); + innerScope.prevEl = displayable; + } + el.clearTemporalDisplayables(); + el.notClear = true; + ctx.restore(); + } + + var decalMap = new WeakMap(); + var decalCache = new LRU(100); + var decalKeys = ['symbol', 'symbolSize', 'symbolKeepAspect', 'color', 'backgroundColor', 'dashArrayX', 'dashArrayY', 'maxTileWidth', 'maxTileHeight']; + /** + * Create or update pattern image from decal options + * + * @param {InnerDecalObject | 'none'} decalObject decal options, 'none' if no decal + * @return {Pattern} pattern with generated image, null if no decal + */ + function createOrUpdatePatternFromDecal(decalObject, api) { + if (decalObject === 'none') { + return null; + } + var dpr = api.getDevicePixelRatio(); + var zr = api.getZr(); + var isSVG = zr.painter.type === 'svg'; + if (decalObject.dirty) { + decalMap["delete"](decalObject); + } + var oldPattern = decalMap.get(decalObject); + if (oldPattern) { + return oldPattern; + } + var decalOpt = defaults(decalObject, { + symbol: 'rect', + symbolSize: 1, + symbolKeepAspect: true, + color: 'rgba(0, 0, 0, 0.2)', + backgroundColor: null, + dashArrayX: 5, + dashArrayY: 5, + rotation: 0, + maxTileWidth: 512, + maxTileHeight: 512 + }); + if (decalOpt.backgroundColor === 'none') { + decalOpt.backgroundColor = null; + } + var pattern = { + repeat: 'repeat' + }; + setPatternnSource(pattern); + pattern.rotation = decalOpt.rotation; + pattern.scaleX = pattern.scaleY = isSVG ? 1 : 1 / dpr; + decalMap.set(decalObject, pattern); + decalObject.dirty = false; + return pattern; + function setPatternnSource(pattern) { + var keys = [dpr]; + var isValidKey = true; + for (var i = 0; i < decalKeys.length; ++i) { + var value = decalOpt[decalKeys[i]]; + if (value != null && !isArray(value) && !isString(value) && !isNumber(value) && typeof value !== 'boolean') { + isValidKey = false; + break; + } + keys.push(value); + } + var cacheKey; + if (isValidKey) { + cacheKey = keys.join(',') + (isSVG ? '-svg' : ''); + var cache = decalCache.get(cacheKey); + if (cache) { + isSVG ? pattern.svgElement = cache : pattern.image = cache; + } + } + var dashArrayX = normalizeDashArrayX(decalOpt.dashArrayX); + var dashArrayY = normalizeDashArrayY(decalOpt.dashArrayY); + var symbolArray = normalizeSymbolArray(decalOpt.symbol); + var lineBlockLengthsX = getLineBlockLengthX(dashArrayX); + var lineBlockLengthY = getLineBlockLengthY(dashArrayY); + var canvas = !isSVG && platformApi.createCanvas(); + var svgRoot = isSVG && { + tag: 'g', + attrs: {}, + key: 'dcl', + children: [] + }; + var pSize = getPatternSize(); + var ctx; + if (canvas) { + canvas.width = pSize.width * dpr; + canvas.height = pSize.height * dpr; + ctx = canvas.getContext('2d'); + } + brushDecal(); + if (isValidKey) { + decalCache.put(cacheKey, canvas || svgRoot); + } + pattern.image = canvas; + pattern.svgElement = svgRoot; + pattern.svgWidth = pSize.width; + pattern.svgHeight = pSize.height; + /** + * Get minimum length that can make a repeatable pattern. + * + * @return {Object} pattern width and height + */ + function getPatternSize() { + /** + * For example, if dash is [[3, 2], [2, 1]] for X, it looks like + * |--- --- --- --- --- ... + * |-- -- -- -- -- -- -- -- ... + * |--- --- --- --- --- ... + * |-- -- -- -- -- -- -- -- ... + * So the minimum length of X is 15, + * which is the least common multiple of `3 + 2` and `2 + 1` + * |--- --- --- |--- --- ... + * |-- -- -- -- -- |-- -- -- ... + */ + var width = 1; + for (var i = 0, xlen = lineBlockLengthsX.length; i < xlen; ++i) { + width = getLeastCommonMultiple(width, lineBlockLengthsX[i]); + } + var symbolRepeats = 1; + for (var i = 0, xlen = symbolArray.length; i < xlen; ++i) { + symbolRepeats = getLeastCommonMultiple(symbolRepeats, symbolArray[i].length); + } + width *= symbolRepeats; + var height = lineBlockLengthY * lineBlockLengthsX.length * symbolArray.length; + if ("development" !== 'production') { + var warn = function (attrName) { + /* eslint-disable-next-line */ + console.warn("Calculated decal size is greater than " + attrName + " due to decal option settings so " + attrName + " is used for the decal size. Please consider changing the decal option to make a smaller decal or set " + attrName + " to be larger to avoid incontinuity."); + }; + if (width > decalOpt.maxTileWidth) { + warn('maxTileWidth'); + } + if (height > decalOpt.maxTileHeight) { + warn('maxTileHeight'); + } + } + return { + width: Math.max(1, Math.min(width, decalOpt.maxTileWidth)), + height: Math.max(1, Math.min(height, decalOpt.maxTileHeight)) + }; + } + function brushDecal() { + if (ctx) { + ctx.clearRect(0, 0, canvas.width, canvas.height); + if (decalOpt.backgroundColor) { + ctx.fillStyle = decalOpt.backgroundColor; + ctx.fillRect(0, 0, canvas.width, canvas.height); + } + } + var ySum = 0; + for (var i = 0; i < dashArrayY.length; ++i) { + ySum += dashArrayY[i]; + } + if (ySum <= 0) { + // dashArrayY is 0, draw nothing + return; + } + var y = -lineBlockLengthY; + var yId = 0; + var yIdTotal = 0; + var xId0 = 0; + while (y < pSize.height) { + if (yId % 2 === 0) { + var symbolYId = yIdTotal / 2 % symbolArray.length; + var x = 0; + var xId1 = 0; + var xId1Total = 0; + while (x < pSize.width * 2) { + var xSum = 0; + for (var i = 0; i < dashArrayX[xId0].length; ++i) { + xSum += dashArrayX[xId0][i]; + } + if (xSum <= 0) { + // Skip empty line + break; + } + // E.g., [15, 5, 20, 5] draws only for 15 and 20 + if (xId1 % 2 === 0) { + var size = (1 - decalOpt.symbolSize) * 0.5; + var left = x + dashArrayX[xId0][xId1] * size; + var top_1 = y + dashArrayY[yId] * size; + var width = dashArrayX[xId0][xId1] * decalOpt.symbolSize; + var height = dashArrayY[yId] * decalOpt.symbolSize; + var symbolXId = xId1Total / 2 % symbolArray[symbolYId].length; + brushSymbol(left, top_1, width, height, symbolArray[symbolYId][symbolXId]); + } + x += dashArrayX[xId0][xId1]; + ++xId1Total; + ++xId1; + if (xId1 === dashArrayX[xId0].length) { + xId1 = 0; + } + } + ++xId0; + if (xId0 === dashArrayX.length) { + xId0 = 0; + } + } + y += dashArrayY[yId]; + ++yIdTotal; + ++yId; + if (yId === dashArrayY.length) { + yId = 0; + } + } + function brushSymbol(x, y, width, height, symbolType) { + var scale = isSVG ? 1 : dpr; + var symbol = createSymbol(symbolType, x * scale, y * scale, width * scale, height * scale, decalOpt.color, decalOpt.symbolKeepAspect); + if (isSVG) { + var symbolVNode = zr.painter.renderOneToVNode(symbol); + if (symbolVNode) { + svgRoot.children.push(symbolVNode); + } + } else { + // Paint to canvas for all other renderers. + brushSingle(ctx, symbol); + } + } + } + } + } + /** + * Convert symbol array into normalized array + * + * @param {string | (string | string[])[]} symbol symbol input + * @return {string[][]} normolized symbol array + */ + function normalizeSymbolArray(symbol) { + if (!symbol || symbol.length === 0) { + return [['rect']]; + } + if (isString(symbol)) { + return [[symbol]]; + } + var isAllString = true; + for (var i = 0; i < symbol.length; ++i) { + if (!isString(symbol[i])) { + isAllString = false; + break; + } + } + if (isAllString) { + return normalizeSymbolArray([symbol]); + } + var result = []; + for (var i = 0; i < symbol.length; ++i) { + if (isString(symbol[i])) { + result.push([symbol[i]]); + } else { + result.push(symbol[i]); + } + } + return result; + } + /** + * Convert dash input into dashArray + * + * @param {DecalDashArrayX} dash dash input + * @return {number[][]} normolized dash array + */ + function normalizeDashArrayX(dash) { + if (!dash || dash.length === 0) { + return [[0, 0]]; + } + if (isNumber(dash)) { + var dashValue = Math.ceil(dash); + return [[dashValue, dashValue]]; + } + /** + * [20, 5] should be normalized into [[20, 5]], + * while [20, [5, 10]] should be normalized into [[20, 20], [5, 10]] + */ + var isAllNumber = true; + for (var i = 0; i < dash.length; ++i) { + if (!isNumber(dash[i])) { + isAllNumber = false; + break; + } + } + if (isAllNumber) { + return normalizeDashArrayX([dash]); + } + var result = []; + for (var i = 0; i < dash.length; ++i) { + if (isNumber(dash[i])) { + var dashValue = Math.ceil(dash[i]); + result.push([dashValue, dashValue]); + } else { + var dashValue = map(dash[i], function (n) { + return Math.ceil(n); + }); + if (dashValue.length % 2 === 1) { + // [4, 2, 1] means |---- - -- |---- - -- | + // so normalize it to be [4, 2, 1, 4, 2, 1] + result.push(dashValue.concat(dashValue)); + } else { + result.push(dashValue); + } + } + } + return result; + } + /** + * Convert dash input into dashArray + * + * @param {DecalDashArrayY} dash dash input + * @return {number[]} normolized dash array + */ + function normalizeDashArrayY(dash) { + if (!dash || typeof dash === 'object' && dash.length === 0) { + return [0, 0]; + } + if (isNumber(dash)) { + var dashValue_1 = Math.ceil(dash); + return [dashValue_1, dashValue_1]; + } + var dashValue = map(dash, function (n) { + return Math.ceil(n); + }); + return dash.length % 2 ? dashValue.concat(dashValue) : dashValue; + } + /** + * Get block length of each line. A block is the length of dash line and space. + * For example, a line with [4, 1] has a dash line of 4 and a space of 1 after + * that, so the block length of this line is 5. + * + * @param {number[][]} dash dash array of X or Y + * @return {number[]} block length of each line + */ + function getLineBlockLengthX(dash) { + return map(dash, function (line) { + return getLineBlockLengthY(line); + }); + } + function getLineBlockLengthY(dash) { + var blockLength = 0; + for (var i = 0; i < dash.length; ++i) { + blockLength += dash[i]; + } + if (dash.length % 2 === 1) { + // [4, 2, 1] means |---- - -- |---- - -- | + // So total length is (4 + 2 + 1) * 2 + return blockLength * 2; + } + return blockLength; + } + + function decalVisual(ecModel, api) { + ecModel.eachRawSeries(function (seriesModel) { + if (ecModel.isSeriesFiltered(seriesModel)) { + return; + } + var data = seriesModel.getData(); + if (data.hasItemVisual()) { + data.each(function (idx) { + var decal = data.getItemVisual(idx, 'decal'); + if (decal) { + var itemStyle = data.ensureUniqueItemVisual(idx, 'style'); + itemStyle.decal = createOrUpdatePatternFromDecal(decal, api); + } + }); + } + var decal = data.getVisual('decal'); + if (decal) { + var style = data.getVisual('style'); + style.decal = createOrUpdatePatternFromDecal(decal, api); + } + }); + } + + var lifecycle = new Eventful(); + + // Implementation of exported APIs. For example registerMap, getMap. + // The implementations will be registered when installing the component. + // Avoid these code being bundled to the core module. + var implsStore = {}; + // TODO Type + function registerImpl(name, impl) { + if ("development" !== 'production') { + if (implsStore[name]) { + error("Already has an implementation of " + name + "."); + } + } + implsStore[name] = impl; + } + function getImpl(name) { + if ("development" !== 'production') { + if (!implsStore[name]) { + error("Implementation of " + name + " doesn't exists."); + } + } + return implsStore[name]; + } + + var version$1 = '5.5.0'; + var dependencies = { + zrender: '5.5.0' + }; + var TEST_FRAME_REMAIN_TIME = 1; + var PRIORITY_PROCESSOR_SERIES_FILTER = 800; + // Some data processors depends on the stack result dimension (to calculate data extent). + // So data stack stage should be in front of data processing stage. + var PRIORITY_PROCESSOR_DATASTACK = 900; + // "Data filter" will block the stream, so it should be + // put at the beginning of data processing. + var PRIORITY_PROCESSOR_FILTER = 1000; + var PRIORITY_PROCESSOR_DEFAULT = 2000; + var PRIORITY_PROCESSOR_STATISTIC = 5000; + var PRIORITY_VISUAL_LAYOUT = 1000; + var PRIORITY_VISUAL_PROGRESSIVE_LAYOUT = 1100; + var PRIORITY_VISUAL_GLOBAL = 2000; + var PRIORITY_VISUAL_CHART = 3000; + var PRIORITY_VISUAL_COMPONENT = 4000; + // Visual property in data. Greater than `PRIORITY_VISUAL_COMPONENT` to enable to + // overwrite the viusal result of component (like `visualMap`) + // using data item specific setting (like itemStyle.xxx on data item) + var PRIORITY_VISUAL_CHART_DATA_CUSTOM = 4500; + // Greater than `PRIORITY_VISUAL_CHART_DATA_CUSTOM` to enable to layout based on + // visual result like `symbolSize`. + var PRIORITY_VISUAL_POST_CHART_LAYOUT = 4600; + var PRIORITY_VISUAL_BRUSH = 5000; + var PRIORITY_VISUAL_ARIA = 6000; + var PRIORITY_VISUAL_DECAL = 7000; + var PRIORITY = { + PROCESSOR: { + FILTER: PRIORITY_PROCESSOR_FILTER, + SERIES_FILTER: PRIORITY_PROCESSOR_SERIES_FILTER, + STATISTIC: PRIORITY_PROCESSOR_STATISTIC + }, + VISUAL: { + LAYOUT: PRIORITY_VISUAL_LAYOUT, + PROGRESSIVE_LAYOUT: PRIORITY_VISUAL_PROGRESSIVE_LAYOUT, + GLOBAL: PRIORITY_VISUAL_GLOBAL, + CHART: PRIORITY_VISUAL_CHART, + POST_CHART_LAYOUT: PRIORITY_VISUAL_POST_CHART_LAYOUT, + COMPONENT: PRIORITY_VISUAL_COMPONENT, + BRUSH: PRIORITY_VISUAL_BRUSH, + CHART_ITEM: PRIORITY_VISUAL_CHART_DATA_CUSTOM, + ARIA: PRIORITY_VISUAL_ARIA, + DECAL: PRIORITY_VISUAL_DECAL + } + }; + // Main process have three entries: `setOption`, `dispatchAction` and `resize`, + // where they must not be invoked nestedly, except the only case: invoke + // dispatchAction with updateMethod "none" in main process. + // This flag is used to carry out this rule. + // All events will be triggered out side main process (i.e. when !this[IN_MAIN_PROCESS]). + var IN_MAIN_PROCESS_KEY = '__flagInMainProcess'; + var PENDING_UPDATE = '__pendingUpdate'; + var STATUS_NEEDS_UPDATE_KEY = '__needsUpdateStatus'; + var ACTION_REG = /^[a-zA-Z0-9_]+$/; + var CONNECT_STATUS_KEY = '__connectUpdateStatus'; + var CONNECT_STATUS_PENDING = 0; + var CONNECT_STATUS_UPDATING = 1; + var CONNECT_STATUS_UPDATED = 2; + function createRegisterEventWithLowercaseECharts(method) { + return function () { + var args = []; + for (var _i = 0; _i < arguments.length; _i++) { + args[_i] = arguments[_i]; + } + if (this.isDisposed()) { + disposedWarning(this.id); + return; + } + return toLowercaseNameAndCallEventful(this, method, args); + }; + } + function createRegisterEventWithLowercaseMessageCenter(method) { + return function () { + var args = []; + for (var _i = 0; _i < arguments.length; _i++) { + args[_i] = arguments[_i]; + } + return toLowercaseNameAndCallEventful(this, method, args); + }; + } + function toLowercaseNameAndCallEventful(host, method, args) { + // `args[0]` is event name. Event name is all lowercase. + args[0] = args[0] && args[0].toLowerCase(); + return Eventful.prototype[method].apply(host, args); + } + var MessageCenter = /** @class */function (_super) { + __extends(MessageCenter, _super); + function MessageCenter() { + return _super !== null && _super.apply(this, arguments) || this; + } + return MessageCenter; + }(Eventful); + var messageCenterProto = MessageCenter.prototype; + messageCenterProto.on = createRegisterEventWithLowercaseMessageCenter('on'); + messageCenterProto.off = createRegisterEventWithLowercaseMessageCenter('off'); + // --------------------------------------- + // Internal method names for class ECharts + // --------------------------------------- + var prepare; + var prepareView; + var updateDirectly; + var updateMethods; + var doConvertPixel; + var updateStreamModes; + var doDispatchAction; + var flushPendingActions; + var triggerUpdatedEvent; + var bindRenderedEvent; + var bindMouseEvent; + var render; + var renderComponents; + var renderSeries; + var createExtensionAPI; + var enableConnect; + var markStatusToUpdate; + var applyChangedStates; + var ECharts = /** @class */function (_super) { + __extends(ECharts, _super); + function ECharts(dom, + // Theme name or themeOption. + theme, opts) { + var _this = _super.call(this, new ECEventProcessor()) || this; + _this._chartsViews = []; + _this._chartsMap = {}; + _this._componentsViews = []; + _this._componentsMap = {}; + // Can't dispatch action during rendering procedure + _this._pendingActions = []; + opts = opts || {}; + // Get theme by name + if (isString(theme)) { + theme = themeStorage[theme]; + } + _this._dom = dom; + var defaultRenderer = 'canvas'; + var defaultCoarsePointer = 'auto'; + var defaultUseDirtyRect = false; + if ("development" !== 'production') { + var root = /* eslint-disable-next-line */ + env.hasGlobalWindow ? window : global; + if (root) { + defaultRenderer = retrieve2(root.__ECHARTS__DEFAULT__RENDERER__, defaultRenderer); + defaultCoarsePointer = retrieve2(root.__ECHARTS__DEFAULT__COARSE_POINTER, defaultCoarsePointer); + defaultUseDirtyRect = retrieve2(root.__ECHARTS__DEFAULT__USE_DIRTY_RECT__, defaultUseDirtyRect); + } + } + if (opts.ssr) { + registerSSRDataGetter(function (el) { + var ecData = getECData(el); + var dataIndex = ecData.dataIndex; + if (dataIndex == null) { + return; + } + var hashMap = createHashMap(); + hashMap.set('series_index', ecData.seriesIndex); + hashMap.set('data_index', dataIndex); + ecData.ssrType && hashMap.set('ssr_type', ecData.ssrType); + return hashMap; + }); + } + var zr = _this._zr = init(dom, { + renderer: opts.renderer || defaultRenderer, + devicePixelRatio: opts.devicePixelRatio, + width: opts.width, + height: opts.height, + ssr: opts.ssr, + useDirtyRect: retrieve2(opts.useDirtyRect, defaultUseDirtyRect), + useCoarsePointer: retrieve2(opts.useCoarsePointer, defaultCoarsePointer), + pointerSize: opts.pointerSize + }); + _this._ssr = opts.ssr; + // Expect 60 fps. + _this._throttledZrFlush = throttle(bind(zr.flush, zr), 17); + theme = clone(theme); + theme && globalBackwardCompat(theme, true); + _this._theme = theme; + _this._locale = createLocaleObject(opts.locale || SYSTEM_LANG); + _this._coordSysMgr = new CoordinateSystemManager(); + var api = _this._api = createExtensionAPI(_this); + // Sort on demand + function prioritySortFunc(a, b) { + return a.__prio - b.__prio; + } + sort(visualFuncs, prioritySortFunc); + sort(dataProcessorFuncs, prioritySortFunc); + _this._scheduler = new Scheduler(_this, api, dataProcessorFuncs, visualFuncs); + _this._messageCenter = new MessageCenter(); + // Init mouse events + _this._initEvents(); + // In case some people write `window.onresize = chart.resize` + _this.resize = bind(_this.resize, _this); + zr.animation.on('frame', _this._onframe, _this); + bindRenderedEvent(zr, _this); + bindMouseEvent(zr, _this); + // ECharts instance can be used as value. + setAsPrimitive(_this); + return _this; + } + ECharts.prototype._onframe = function () { + if (this._disposed) { + return; + } + applyChangedStates(this); + var scheduler = this._scheduler; + // Lazy update + if (this[PENDING_UPDATE]) { + var silent = this[PENDING_UPDATE].silent; + this[IN_MAIN_PROCESS_KEY] = true; + try { + prepare(this); + updateMethods.update.call(this, null, this[PENDING_UPDATE].updateParams); + } catch (e) { + this[IN_MAIN_PROCESS_KEY] = false; + this[PENDING_UPDATE] = null; + throw e; + } + // At present, in each frame, zrender performs: + // (1) animation step forward. + // (2) trigger('frame') (where this `_onframe` is called) + // (3) zrender flush (render). + // If we do nothing here, since we use `setToFinal: true`, the step (3) above + // will render the final state of the elements before the real animation started. + this._zr.flush(); + this[IN_MAIN_PROCESS_KEY] = false; + this[PENDING_UPDATE] = null; + flushPendingActions.call(this, silent); + triggerUpdatedEvent.call(this, silent); + } + // Avoid do both lazy update and progress in one frame. + else if (scheduler.unfinished) { + // Stream progress. + var remainTime = TEST_FRAME_REMAIN_TIME; + var ecModel = this._model; + var api = this._api; + scheduler.unfinished = false; + do { + var startTime = +new Date(); + scheduler.performSeriesTasks(ecModel); + // Currently dataProcessorFuncs do not check threshold. + scheduler.performDataProcessorTasks(ecModel); + updateStreamModes(this, ecModel); + // Do not update coordinate system here. Because that coord system update in + // each frame is not a good user experience. So we follow the rule that + // the extent of the coordinate system is determined in the first frame (the + // frame is executed immediately after task reset. + // this._coordSysMgr.update(ecModel, api); + // console.log('--- ec frame visual ---', remainTime); + scheduler.performVisualTasks(ecModel); + renderSeries(this, this._model, api, 'remain', {}); + remainTime -= +new Date() - startTime; + } while (remainTime > 0 && scheduler.unfinished); + // Call flush explicitly for trigger finished event. + if (!scheduler.unfinished) { + this._zr.flush(); + } + // Else, zr flushing be ensue within the same frame, + // because zr flushing is after onframe event. + } + }; + + ECharts.prototype.getDom = function () { + return this._dom; + }; + ECharts.prototype.getId = function () { + return this.id; + }; + ECharts.prototype.getZr = function () { + return this._zr; + }; + ECharts.prototype.isSSR = function () { + return this._ssr; + }; + /* eslint-disable-next-line */ + ECharts.prototype.setOption = function (option, notMerge, lazyUpdate) { + if (this[IN_MAIN_PROCESS_KEY]) { + if ("development" !== 'production') { + error('`setOption` should not be called during main process.'); + } + return; + } + if (this._disposed) { + disposedWarning(this.id); + return; + } + var silent; + var replaceMerge; + var transitionOpt; + if (isObject(notMerge)) { + lazyUpdate = notMerge.lazyUpdate; + silent = notMerge.silent; + replaceMerge = notMerge.replaceMerge; + transitionOpt = notMerge.transition; + notMerge = notMerge.notMerge; + } + this[IN_MAIN_PROCESS_KEY] = true; + if (!this._model || notMerge) { + var optionManager = new OptionManager(this._api); + var theme = this._theme; + var ecModel = this._model = new GlobalModel(); + ecModel.scheduler = this._scheduler; + ecModel.ssr = this._ssr; + ecModel.init(null, null, null, theme, this._locale, optionManager); + } + this._model.setOption(option, { + replaceMerge: replaceMerge + }, optionPreprocessorFuncs); + var updateParams = { + seriesTransition: transitionOpt, + optionChanged: true + }; + if (lazyUpdate) { + this[PENDING_UPDATE] = { + silent: silent, + updateParams: updateParams + }; + this[IN_MAIN_PROCESS_KEY] = false; + // `setOption(option, {lazyMode: true})` may be called when zrender has been slept. + // It should wake it up to make sure zrender start to render at the next frame. + this.getZr().wakeUp(); + } else { + try { + prepare(this); + updateMethods.update.call(this, null, updateParams); + } catch (e) { + this[PENDING_UPDATE] = null; + this[IN_MAIN_PROCESS_KEY] = false; + throw e; + } + // Ensure zr refresh sychronously, and then pixel in canvas can be + // fetched after `setOption`. + if (!this._ssr) { + // not use flush when using ssr mode. + this._zr.flush(); + } + this[PENDING_UPDATE] = null; + this[IN_MAIN_PROCESS_KEY] = false; + flushPendingActions.call(this, silent); + triggerUpdatedEvent.call(this, silent); + } + }; + /** + * @deprecated + */ + ECharts.prototype.setTheme = function () { + deprecateLog('ECharts#setTheme() is DEPRECATED in ECharts 3.0'); + }; + // We don't want developers to use getModel directly. + ECharts.prototype.getModel = function () { + return this._model; + }; + ECharts.prototype.getOption = function () { + return this._model && this._model.getOption(); + }; + ECharts.prototype.getWidth = function () { + return this._zr.getWidth(); + }; + ECharts.prototype.getHeight = function () { + return this._zr.getHeight(); + }; + ECharts.prototype.getDevicePixelRatio = function () { + return this._zr.painter.dpr + /* eslint-disable-next-line */ || env.hasGlobalWindow && window.devicePixelRatio || 1; + }; + /** + * Get canvas which has all thing rendered + * @deprecated Use renderToCanvas instead. + */ + ECharts.prototype.getRenderedCanvas = function (opts) { + if ("development" !== 'production') { + deprecateReplaceLog('getRenderedCanvas', 'renderToCanvas'); + } + return this.renderToCanvas(opts); + }; + ECharts.prototype.renderToCanvas = function (opts) { + opts = opts || {}; + var painter = this._zr.painter; + if ("development" !== 'production') { + if (painter.type !== 'canvas') { + throw new Error('renderToCanvas can only be used in the canvas renderer.'); + } + } + return painter.getRenderedCanvas({ + backgroundColor: opts.backgroundColor || this._model.get('backgroundColor'), + pixelRatio: opts.pixelRatio || this.getDevicePixelRatio() + }); + }; + ECharts.prototype.renderToSVGString = function (opts) { + opts = opts || {}; + var painter = this._zr.painter; + if ("development" !== 'production') { + if (painter.type !== 'svg') { + throw new Error('renderToSVGString can only be used in the svg renderer.'); + } + } + return painter.renderToString({ + useViewBox: opts.useViewBox + }); + }; + /** + * Get svg data url + */ + ECharts.prototype.getSvgDataURL = function () { + if (!env.svgSupported) { + return; + } + var zr = this._zr; + var list = zr.storage.getDisplayList(); + // Stop animations + each(list, function (el) { + el.stopAnimation(null, true); + }); + return zr.painter.toDataURL(); + }; + ECharts.prototype.getDataURL = function (opts) { + if (this._disposed) { + disposedWarning(this.id); + return; + } + opts = opts || {}; + var excludeComponents = opts.excludeComponents; + var ecModel = this._model; + var excludesComponentViews = []; + var self = this; + each(excludeComponents, function (componentType) { + ecModel.eachComponent({ + mainType: componentType + }, function (component) { + var view = self._componentsMap[component.__viewId]; + if (!view.group.ignore) { + excludesComponentViews.push(view); + view.group.ignore = true; + } + }); + }); + var url = this._zr.painter.getType() === 'svg' ? this.getSvgDataURL() : this.renderToCanvas(opts).toDataURL('image/' + (opts && opts.type || 'png')); + each(excludesComponentViews, function (view) { + view.group.ignore = false; + }); + return url; + }; + ECharts.prototype.getConnectedDataURL = function (opts) { + if (this._disposed) { + disposedWarning(this.id); + return; + } + var isSvg = opts.type === 'svg'; + var groupId = this.group; + var mathMin = Math.min; + var mathMax = Math.max; + var MAX_NUMBER = Infinity; + if (connectedGroups[groupId]) { + var left_1 = MAX_NUMBER; + var top_1 = MAX_NUMBER; + var right_1 = -MAX_NUMBER; + var bottom_1 = -MAX_NUMBER; + var canvasList_1 = []; + var dpr_1 = opts && opts.pixelRatio || this.getDevicePixelRatio(); + each(instances$1, function (chart, id) { + if (chart.group === groupId) { + var canvas = isSvg ? chart.getZr().painter.getSvgDom().innerHTML : chart.renderToCanvas(clone(opts)); + var boundingRect = chart.getDom().getBoundingClientRect(); + left_1 = mathMin(boundingRect.left, left_1); + top_1 = mathMin(boundingRect.top, top_1); + right_1 = mathMax(boundingRect.right, right_1); + bottom_1 = mathMax(boundingRect.bottom, bottom_1); + canvasList_1.push({ + dom: canvas, + left: boundingRect.left, + top: boundingRect.top + }); + } + }); + left_1 *= dpr_1; + top_1 *= dpr_1; + right_1 *= dpr_1; + bottom_1 *= dpr_1; + var width = right_1 - left_1; + var height = bottom_1 - top_1; + var targetCanvas = platformApi.createCanvas(); + var zr_1 = init(targetCanvas, { + renderer: isSvg ? 'svg' : 'canvas' + }); + zr_1.resize({ + width: width, + height: height + }); + if (isSvg) { + var content_1 = ''; + each(canvasList_1, function (item) { + var x = item.left - left_1; + var y = item.top - top_1; + content_1 += '<g transform="translate(' + x + ',' + y + ')">' + item.dom + '</g>'; + }); + zr_1.painter.getSvgRoot().innerHTML = content_1; + if (opts.connectedBackgroundColor) { + zr_1.painter.setBackgroundColor(opts.connectedBackgroundColor); + } + zr_1.refreshImmediately(); + return zr_1.painter.toDataURL(); + } else { + // Background between the charts + if (opts.connectedBackgroundColor) { + zr_1.add(new Rect({ + shape: { + x: 0, + y: 0, + width: width, + height: height + }, + style: { + fill: opts.connectedBackgroundColor + } + })); + } + each(canvasList_1, function (item) { + var img = new ZRImage({ + style: { + x: item.left * dpr_1 - left_1, + y: item.top * dpr_1 - top_1, + image: item.dom + } + }); + zr_1.add(img); + }); + zr_1.refreshImmediately(); + return targetCanvas.toDataURL('image/' + (opts && opts.type || 'png')); + } + } else { + return this.getDataURL(opts); + } + }; + ECharts.prototype.convertToPixel = function (finder, value) { + return doConvertPixel(this, 'convertToPixel', finder, value); + }; + ECharts.prototype.convertFromPixel = function (finder, value) { + return doConvertPixel(this, 'convertFromPixel', finder, value); + }; + /** + * Is the specified coordinate systems or components contain the given pixel point. + * @param {Array|number} value + * @return {boolean} result + */ + ECharts.prototype.containPixel = function (finder, value) { + if (this._disposed) { + disposedWarning(this.id); + return; + } + var ecModel = this._model; + var result; + var findResult = parseFinder(ecModel, finder); + each(findResult, function (models, key) { + key.indexOf('Models') >= 0 && each(models, function (model) { + var coordSys = model.coordinateSystem; + if (coordSys && coordSys.containPoint) { + result = result || !!coordSys.containPoint(value); + } else if (key === 'seriesModels') { + var view = this._chartsMap[model.__viewId]; + if (view && view.containPoint) { + result = result || view.containPoint(value, model); + } else { + if ("development" !== 'production') { + warn(key + ': ' + (view ? 'The found component do not support containPoint.' : 'No view mapping to the found component.')); + } + } + } else { + if ("development" !== 'production') { + warn(key + ': containPoint is not supported'); + } + } + }, this); + }, this); + return !!result; + }; + /** + * Get visual from series or data. + * @param finder + * If string, e.g., 'series', means {seriesIndex: 0}. + * If Object, could contain some of these properties below: + * { + * seriesIndex / seriesId / seriesName, + * dataIndex / dataIndexInside + * } + * If dataIndex is not specified, series visual will be fetched, + * but not data item visual. + * If all of seriesIndex, seriesId, seriesName are not specified, + * visual will be fetched from first series. + * @param visualType 'color', 'symbol', 'symbolSize' + */ + ECharts.prototype.getVisual = function (finder, visualType) { + var ecModel = this._model; + var parsedFinder = parseFinder(ecModel, finder, { + defaultMainType: 'series' + }); + var seriesModel = parsedFinder.seriesModel; + if ("development" !== 'production') { + if (!seriesModel) { + warn('There is no specified series model'); + } + } + var data = seriesModel.getData(); + var dataIndexInside = parsedFinder.hasOwnProperty('dataIndexInside') ? parsedFinder.dataIndexInside : parsedFinder.hasOwnProperty('dataIndex') ? data.indexOfRawIndex(parsedFinder.dataIndex) : null; + return dataIndexInside != null ? getItemVisualFromData(data, dataIndexInside, visualType) : getVisualFromData(data, visualType); + }; + /** + * Get view of corresponding component model + */ + ECharts.prototype.getViewOfComponentModel = function (componentModel) { + return this._componentsMap[componentModel.__viewId]; + }; + /** + * Get view of corresponding series model + */ + ECharts.prototype.getViewOfSeriesModel = function (seriesModel) { + return this._chartsMap[seriesModel.__viewId]; + }; + ECharts.prototype._initEvents = function () { + var _this = this; + each(MOUSE_EVENT_NAMES, function (eveName) { + var handler = function (e) { + var ecModel = _this.getModel(); + var el = e.target; + var params; + var isGlobalOut = eveName === 'globalout'; + // no e.target when 'globalout'. + if (isGlobalOut) { + params = {}; + } else { + el && findEventDispatcher(el, function (parent) { + var ecData = getECData(parent); + if (ecData && ecData.dataIndex != null) { + var dataModel = ecData.dataModel || ecModel.getSeriesByIndex(ecData.seriesIndex); + params = dataModel && dataModel.getDataParams(ecData.dataIndex, ecData.dataType, el) || {}; + return true; + } + // If element has custom eventData of components + else if (ecData.eventData) { + params = extend({}, ecData.eventData); + return true; + } + }, true); + } + // Contract: if params prepared in mouse event, + // these properties must be specified: + // { + // componentType: string (component main type) + // componentIndex: number + // } + // Otherwise event query can not work. + if (params) { + var componentType = params.componentType; + var componentIndex = params.componentIndex; + // Special handling for historic reason: when trigger by + // markLine/markPoint/markArea, the componentType is + // 'markLine'/'markPoint'/'markArea', but we should better + // enable them to be queried by seriesIndex, since their + // option is set in each series. + if (componentType === 'markLine' || componentType === 'markPoint' || componentType === 'markArea') { + componentType = 'series'; + componentIndex = params.seriesIndex; + } + var model = componentType && componentIndex != null && ecModel.getComponent(componentType, componentIndex); + var view = model && _this[model.mainType === 'series' ? '_chartsMap' : '_componentsMap'][model.__viewId]; + if ("development" !== 'production') { + // `event.componentType` and `event[componentTpype + 'Index']` must not + // be missed, otherwise there is no way to distinguish source component. + // See `dataFormat.getDataParams`. + if (!isGlobalOut && !(model && view)) { + warn('model or view can not be found by params'); + } + } + params.event = e; + params.type = eveName; + _this._$eventProcessor.eventInfo = { + targetEl: el, + packedEvent: params, + model: model, + view: view + }; + _this.trigger(eveName, params); + } + }; + // Consider that some component (like tooltip, brush, ...) + // register zr event handler, but user event handler might + // do anything, such as call `setOption` or `dispatchAction`, + // which probably update any of the content and probably + // cause problem if it is called previous other inner handlers. + handler.zrEventfulCallAtLast = true; + _this._zr.on(eveName, handler, _this); + }); + each(eventActionMap, function (actionType, eventType) { + _this._messageCenter.on(eventType, function (event) { + this.trigger(eventType, event); + }, _this); + }); + // Extra events + // TODO register? + each(['selectchanged'], function (eventType) { + _this._messageCenter.on(eventType, function (event) { + this.trigger(eventType, event); + }, _this); + }); + handleLegacySelectEvents(this._messageCenter, this, this._api); + }; + ECharts.prototype.isDisposed = function () { + return this._disposed; + }; + ECharts.prototype.clear = function () { + if (this._disposed) { + disposedWarning(this.id); + return; + } + this.setOption({ + series: [] + }, true); + }; + ECharts.prototype.dispose = function () { + if (this._disposed) { + disposedWarning(this.id); + return; + } + this._disposed = true; + var dom = this.getDom(); + if (dom) { + setAttribute(this.getDom(), DOM_ATTRIBUTE_KEY, ''); + } + var chart = this; + var api = chart._api; + var ecModel = chart._model; + each(chart._componentsViews, function (component) { + component.dispose(ecModel, api); + }); + each(chart._chartsViews, function (chart) { + chart.dispose(ecModel, api); + }); + // Dispose after all views disposed + chart._zr.dispose(); + // Set properties to null. + // To reduce the memory cost in case the top code still holds this instance unexpectedly. + chart._dom = chart._model = chart._chartsMap = chart._componentsMap = chart._chartsViews = chart._componentsViews = chart._scheduler = chart._api = chart._zr = chart._throttledZrFlush = chart._theme = chart._coordSysMgr = chart._messageCenter = null; + delete instances$1[chart.id]; + }; + /** + * Resize the chart + */ + ECharts.prototype.resize = function (opts) { + if (this[IN_MAIN_PROCESS_KEY]) { + if ("development" !== 'production') { + error('`resize` should not be called during main process.'); + } + return; + } + if (this._disposed) { + disposedWarning(this.id); + return; + } + this._zr.resize(opts); + var ecModel = this._model; + // Resize loading effect + this._loadingFX && this._loadingFX.resize(); + if (!ecModel) { + return; + } + var needPrepare = ecModel.resetOption('media'); + var silent = opts && opts.silent; + // There is some real cases that: + // chart.setOption(option, { lazyUpdate: true }); + // chart.resize(); + if (this[PENDING_UPDATE]) { + if (silent == null) { + silent = this[PENDING_UPDATE].silent; + } + needPrepare = true; + this[PENDING_UPDATE] = null; + } + this[IN_MAIN_PROCESS_KEY] = true; + try { + needPrepare && prepare(this); + updateMethods.update.call(this, { + type: 'resize', + animation: extend({ + // Disable animation + duration: 0 + }, opts && opts.animation) + }); + } catch (e) { + this[IN_MAIN_PROCESS_KEY] = false; + throw e; + } + this[IN_MAIN_PROCESS_KEY] = false; + flushPendingActions.call(this, silent); + triggerUpdatedEvent.call(this, silent); + }; + ECharts.prototype.showLoading = function (name, cfg) { + if (this._disposed) { + disposedWarning(this.id); + return; + } + if (isObject(name)) { + cfg = name; + name = ''; + } + name = name || 'default'; + this.hideLoading(); + if (!loadingEffects[name]) { + if ("development" !== 'production') { + warn('Loading effects ' + name + ' not exists.'); + } + return; + } + var el = loadingEffects[name](this._api, cfg); + var zr = this._zr; + this._loadingFX = el; + zr.add(el); + }; + /** + * Hide loading effect + */ + ECharts.prototype.hideLoading = function () { + if (this._disposed) { + disposedWarning(this.id); + return; + } + this._loadingFX && this._zr.remove(this._loadingFX); + this._loadingFX = null; + }; + ECharts.prototype.makeActionFromEvent = function (eventObj) { + var payload = extend({}, eventObj); + payload.type = eventActionMap[eventObj.type]; + return payload; + }; + /** + * @param opt If pass boolean, means opt.silent + * @param opt.silent Default `false`. Whether trigger events. + * @param opt.flush Default `undefined`. + * true: Flush immediately, and then pixel in canvas can be fetched + * immediately. Caution: it might affect performance. + * false: Not flush. + * undefined: Auto decide whether perform flush. + */ + ECharts.prototype.dispatchAction = function (payload, opt) { + if (this._disposed) { + disposedWarning(this.id); + return; + } + if (!isObject(opt)) { + opt = { + silent: !!opt + }; + } + if (!actions[payload.type]) { + return; + } + // Avoid dispatch action before setOption. Especially in `connect`. + if (!this._model) { + return; + } + // May dispatchAction in rendering procedure + if (this[IN_MAIN_PROCESS_KEY]) { + this._pendingActions.push(payload); + return; + } + var silent = opt.silent; + doDispatchAction.call(this, payload, silent); + var flush = opt.flush; + if (flush) { + this._zr.flush(); + } else if (flush !== false && env.browser.weChat) { + // In WeChat embedded browser, `requestAnimationFrame` and `setInterval` + // hang when sliding page (on touch event), which cause that zr does not + // refresh until user interaction finished, which is not expected. + // But `dispatchAction` may be called too frequently when pan on touch + // screen, which impacts performance if do not throttle them. + this._throttledZrFlush(); + } + flushPendingActions.call(this, silent); + triggerUpdatedEvent.call(this, silent); + }; + ECharts.prototype.updateLabelLayout = function () { + lifecycle.trigger('series:layoutlabels', this._model, this._api, { + // Not adding series labels. + // TODO + updatedSeries: [] + }); + }; + ECharts.prototype.appendData = function (params) { + if (this._disposed) { + disposedWarning(this.id); + return; + } + var seriesIndex = params.seriesIndex; + var ecModel = this.getModel(); + var seriesModel = ecModel.getSeriesByIndex(seriesIndex); + if ("development" !== 'production') { + assert(params.data && seriesModel); + } + seriesModel.appendData(params); + // Note: `appendData` does not support that update extent of coordinate + // system, util some scenario require that. In the expected usage of + // `appendData`, the initial extent of coordinate system should better + // be fixed by axis `min`/`max` setting or initial data, otherwise if + // the extent changed while `appendData`, the location of the painted + // graphic elements have to be changed, which make the usage of + // `appendData` meaningless. + this._scheduler.unfinished = true; + this.getZr().wakeUp(); + }; + // A work around for no `internal` modifier in ts yet but + // need to strictly hide private methods to JS users. + ECharts.internalField = function () { + prepare = function (ecIns) { + var scheduler = ecIns._scheduler; + scheduler.restorePipelines(ecIns._model); + scheduler.prepareStageTasks(); + prepareView(ecIns, true); + prepareView(ecIns, false); + scheduler.plan(); + }; + /** + * Prepare view instances of charts and components + */ + prepareView = function (ecIns, isComponent) { + var ecModel = ecIns._model; + var scheduler = ecIns._scheduler; + var viewList = isComponent ? ecIns._componentsViews : ecIns._chartsViews; + var viewMap = isComponent ? ecIns._componentsMap : ecIns._chartsMap; + var zr = ecIns._zr; + var api = ecIns._api; + for (var i = 0; i < viewList.length; i++) { + viewList[i].__alive = false; + } + isComponent ? ecModel.eachComponent(function (componentType, model) { + componentType !== 'series' && doPrepare(model); + }) : ecModel.eachSeries(doPrepare); + function doPrepare(model) { + // By default view will be reused if possible for the case that `setOption` with "notMerge" + // mode and need to enable transition animation. (Usually, when they have the same id, or + // especially no id but have the same type & name & index. See the `model.id` generation + // rule in `makeIdAndName` and `viewId` generation rule here). + // But in `replaceMerge` mode, this feature should be able to disabled when it is clear that + // the new model has nothing to do with the old model. + var requireNewView = model.__requireNewView; + // This command should not work twice. + model.__requireNewView = false; + // Consider: id same and type changed. + var viewId = '_ec_' + model.id + '_' + model.type; + var view = !requireNewView && viewMap[viewId]; + if (!view) { + var classType = parseClassType(model.type); + var Clazz = isComponent ? ComponentView.getClass(classType.main, classType.sub) : + // FIXME:TS + // (ChartView as ChartViewConstructor).getClass('series', classType.sub) + // For backward compat, still support a chart type declared as only subType + // like "liquidfill", but recommend "series.liquidfill" + // But need a base class to make a type series. + ChartView.getClass(classType.sub); + if ("development" !== 'production') { + assert(Clazz, classType.sub + ' does not exist.'); + } + view = new Clazz(); + view.init(ecModel, api); + viewMap[viewId] = view; + viewList.push(view); + zr.add(view.group); + } + model.__viewId = view.__id = viewId; + view.__alive = true; + view.__model = model; + view.group.__ecComponentInfo = { + mainType: model.mainType, + index: model.componentIndex + }; + !isComponent && scheduler.prepareView(view, model, ecModel, api); + } + for (var i = 0; i < viewList.length;) { + var view = viewList[i]; + if (!view.__alive) { + !isComponent && view.renderTask.dispose(); + zr.remove(view.group); + view.dispose(ecModel, api); + viewList.splice(i, 1); + if (viewMap[view.__id] === view) { + delete viewMap[view.__id]; + } + view.__id = view.group.__ecComponentInfo = null; + } else { + i++; + } + } + }; + updateDirectly = function (ecIns, method, payload, mainType, subType) { + var ecModel = ecIns._model; + ecModel.setUpdatePayload(payload); + // broadcast + if (!mainType) { + // FIXME + // Chart will not be update directly here, except set dirty. + // But there is no such scenario now. + each([].concat(ecIns._componentsViews).concat(ecIns._chartsViews), callView); + return; + } + var query = {}; + query[mainType + 'Id'] = payload[mainType + 'Id']; + query[mainType + 'Index'] = payload[mainType + 'Index']; + query[mainType + 'Name'] = payload[mainType + 'Name']; + var condition = { + mainType: mainType, + query: query + }; + subType && (condition.subType = subType); // subType may be '' by parseClassType; + var excludeSeriesId = payload.excludeSeriesId; + var excludeSeriesIdMap; + if (excludeSeriesId != null) { + excludeSeriesIdMap = createHashMap(); + each(normalizeToArray(excludeSeriesId), function (id) { + var modelId = convertOptionIdName(id, null); + if (modelId != null) { + excludeSeriesIdMap.set(modelId, true); + } + }); + } + // If dispatchAction before setOption, do nothing. + ecModel && ecModel.eachComponent(condition, function (model) { + var isExcluded = excludeSeriesIdMap && excludeSeriesIdMap.get(model.id) != null; + if (isExcluded) { + return; + } + if (isHighDownPayload(payload)) { + if (model instanceof SeriesModel) { + if (payload.type === HIGHLIGHT_ACTION_TYPE && !payload.notBlur && !model.get(['emphasis', 'disabled'])) { + blurSeriesFromHighlightPayload(model, payload, ecIns._api); + } + } else { + var _a = findComponentHighDownDispatchers(model.mainType, model.componentIndex, payload.name, ecIns._api), + focusSelf = _a.focusSelf, + dispatchers = _a.dispatchers; + if (payload.type === HIGHLIGHT_ACTION_TYPE && focusSelf && !payload.notBlur) { + blurComponent(model.mainType, model.componentIndex, ecIns._api); + } + // PENDING: + // Whether to put this "enter emphasis" code in `ComponentView`, + // which will be the same as `ChartView` but might be not necessary + // and will be far from this logic. + if (dispatchers) { + each(dispatchers, function (dispatcher) { + payload.type === HIGHLIGHT_ACTION_TYPE ? enterEmphasis(dispatcher) : leaveEmphasis(dispatcher); + }); + } + } + } else if (isSelectChangePayload(payload)) { + // TODO geo + if (model instanceof SeriesModel) { + toggleSelectionFromPayload(model, payload, ecIns._api); + updateSeriesElementSelection(model); + markStatusToUpdate(ecIns); + } + } + }, ecIns); + ecModel && ecModel.eachComponent(condition, function (model) { + var isExcluded = excludeSeriesIdMap && excludeSeriesIdMap.get(model.id) != null; + if (isExcluded) { + return; + } + callView(ecIns[mainType === 'series' ? '_chartsMap' : '_componentsMap'][model.__viewId]); + }, ecIns); + function callView(view) { + view && view.__alive && view[method] && view[method](view.__model, ecModel, ecIns._api, payload); + } + }; + updateMethods = { + prepareAndUpdate: function (payload) { + prepare(this); + updateMethods.update.call(this, payload, { + // Needs to mark option changed if newOption is given. + // It's from MagicType. + // TODO If use a separate flag optionChanged in payload? + optionChanged: payload.newOption != null + }); + }, + update: function (payload, updateParams) { + var ecModel = this._model; + var api = this._api; + var zr = this._zr; + var coordSysMgr = this._coordSysMgr; + var scheduler = this._scheduler; + // update before setOption + if (!ecModel) { + return; + } + ecModel.setUpdatePayload(payload); + scheduler.restoreData(ecModel, payload); + scheduler.performSeriesTasks(ecModel); + // TODO + // Save total ecModel here for undo/redo (after restoring data and before processing data). + // Undo (restoration of total ecModel) can be carried out in 'action' or outside API call. + // Create new coordinate system each update + // In LineView may save the old coordinate system and use it to get the original point. + coordSysMgr.create(ecModel, api); + scheduler.performDataProcessorTasks(ecModel, payload); + // Current stream render is not supported in data process. So we can update + // stream modes after data processing, where the filtered data is used to + // determine whether to use progressive rendering. + updateStreamModes(this, ecModel); + // We update stream modes before coordinate system updated, then the modes info + // can be fetched when coord sys updating (consider the barGrid extent fix). But + // the drawback is the full coord info can not be fetched. Fortunately this full + // coord is not required in stream mode updater currently. + coordSysMgr.update(ecModel, api); + clearColorPalette(ecModel); + scheduler.performVisualTasks(ecModel, payload); + render(this, ecModel, api, payload, updateParams); + // Set background + var backgroundColor = ecModel.get('backgroundColor') || 'transparent'; + var darkMode = ecModel.get('darkMode'); + zr.setBackgroundColor(backgroundColor); + // Force set dark mode. + if (darkMode != null && darkMode !== 'auto') { + zr.setDarkMode(darkMode); + } + lifecycle.trigger('afterupdate', ecModel, api); + }, + updateTransform: function (payload) { + var _this = this; + var ecModel = this._model; + var api = this._api; + // update before setOption + if (!ecModel) { + return; + } + ecModel.setUpdatePayload(payload); + // ChartView.markUpdateMethod(payload, 'updateTransform'); + var componentDirtyList = []; + ecModel.eachComponent(function (componentType, componentModel) { + if (componentType === 'series') { + return; + } + var componentView = _this.getViewOfComponentModel(componentModel); + if (componentView && componentView.__alive) { + if (componentView.updateTransform) { + var result = componentView.updateTransform(componentModel, ecModel, api, payload); + result && result.update && componentDirtyList.push(componentView); + } else { + componentDirtyList.push(componentView); + } + } + }); + var seriesDirtyMap = createHashMap(); + ecModel.eachSeries(function (seriesModel) { + var chartView = _this._chartsMap[seriesModel.__viewId]; + if (chartView.updateTransform) { + var result = chartView.updateTransform(seriesModel, ecModel, api, payload); + result && result.update && seriesDirtyMap.set(seriesModel.uid, 1); + } else { + seriesDirtyMap.set(seriesModel.uid, 1); + } + }); + clearColorPalette(ecModel); + // Keep pipe to the exist pipeline because it depends on the render task of the full pipeline. + // this._scheduler.performVisualTasks(ecModel, payload, 'layout', true); + this._scheduler.performVisualTasks(ecModel, payload, { + setDirty: true, + dirtyMap: seriesDirtyMap + }); + // Currently, not call render of components. Geo render cost a lot. + // renderComponents(ecIns, ecModel, api, payload, componentDirtyList); + renderSeries(this, ecModel, api, payload, {}, seriesDirtyMap); + lifecycle.trigger('afterupdate', ecModel, api); + }, + updateView: function (payload) { + var ecModel = this._model; + // update before setOption + if (!ecModel) { + return; + } + ecModel.setUpdatePayload(payload); + ChartView.markUpdateMethod(payload, 'updateView'); + clearColorPalette(ecModel); + // Keep pipe to the exist pipeline because it depends on the render task of the full pipeline. + this._scheduler.performVisualTasks(ecModel, payload, { + setDirty: true + }); + render(this, ecModel, this._api, payload, {}); + lifecycle.trigger('afterupdate', ecModel, this._api); + }, + updateVisual: function (payload) { + // updateMethods.update.call(this, payload); + var _this = this; + var ecModel = this._model; + // update before setOption + if (!ecModel) { + return; + } + ecModel.setUpdatePayload(payload); + // clear all visual + ecModel.eachSeries(function (seriesModel) { + seriesModel.getData().clearAllVisual(); + }); + // Perform visual + ChartView.markUpdateMethod(payload, 'updateVisual'); + clearColorPalette(ecModel); + // Keep pipe to the exist pipeline because it depends on the render task of the full pipeline. + this._scheduler.performVisualTasks(ecModel, payload, { + visualType: 'visual', + setDirty: true + }); + ecModel.eachComponent(function (componentType, componentModel) { + if (componentType !== 'series') { + var componentView = _this.getViewOfComponentModel(componentModel); + componentView && componentView.__alive && componentView.updateVisual(componentModel, ecModel, _this._api, payload); + } + }); + ecModel.eachSeries(function (seriesModel) { + var chartView = _this._chartsMap[seriesModel.__viewId]; + chartView.updateVisual(seriesModel, ecModel, _this._api, payload); + }); + lifecycle.trigger('afterupdate', ecModel, this._api); + }, + updateLayout: function (payload) { + updateMethods.update.call(this, payload); + } + }; + doConvertPixel = function (ecIns, methodName, finder, value) { + if (ecIns._disposed) { + disposedWarning(ecIns.id); + return; + } + var ecModel = ecIns._model; + var coordSysList = ecIns._coordSysMgr.getCoordinateSystems(); + var result; + var parsedFinder = parseFinder(ecModel, finder); + for (var i = 0; i < coordSysList.length; i++) { + var coordSys = coordSysList[i]; + if (coordSys[methodName] && (result = coordSys[methodName](ecModel, parsedFinder, value)) != null) { + return result; + } + } + if ("development" !== 'production') { + warn('No coordinate system that supports ' + methodName + ' found by the given finder.'); + } + }; + updateStreamModes = function (ecIns, ecModel) { + var chartsMap = ecIns._chartsMap; + var scheduler = ecIns._scheduler; + ecModel.eachSeries(function (seriesModel) { + scheduler.updateStreamModes(seriesModel, chartsMap[seriesModel.__viewId]); + }); + }; + doDispatchAction = function (payload, silent) { + var _this = this; + var ecModel = this.getModel(); + var payloadType = payload.type; + var escapeConnect = payload.escapeConnect; + var actionWrap = actions[payloadType]; + var actionInfo = actionWrap.actionInfo; + var cptTypeTmp = (actionInfo.update || 'update').split(':'); + var updateMethod = cptTypeTmp.pop(); + var cptType = cptTypeTmp[0] != null && parseClassType(cptTypeTmp[0]); + this[IN_MAIN_PROCESS_KEY] = true; + var payloads = [payload]; + var batched = false; + // Batch action + if (payload.batch) { + batched = true; + payloads = map(payload.batch, function (item) { + item = defaults(extend({}, item), payload); + item.batch = null; + return item; + }); + } + var eventObjBatch = []; + var eventObj; + var isSelectChange = isSelectChangePayload(payload); + var isHighDown = isHighDownPayload(payload); + // Only leave blur once if there are multiple batches. + if (isHighDown) { + allLeaveBlur(this._api); + } + each(payloads, function (batchItem) { + // Action can specify the event by return it. + eventObj = actionWrap.action(batchItem, _this._model, _this._api); + // Emit event outside + eventObj = eventObj || extend({}, batchItem); + // Convert type to eventType + eventObj.type = actionInfo.event || eventObj.type; + eventObjBatch.push(eventObj); + // light update does not perform data process, layout and visual. + if (isHighDown) { + var _a = preParseFinder(payload), + queryOptionMap = _a.queryOptionMap, + mainTypeSpecified = _a.mainTypeSpecified; + var componentMainType = mainTypeSpecified ? queryOptionMap.keys()[0] : 'series'; + updateDirectly(_this, updateMethod, batchItem, componentMainType); + markStatusToUpdate(_this); + } else if (isSelectChange) { + // At present `dispatchAction({ type: 'select', ... })` is not supported on components. + // geo still use 'geoselect'. + updateDirectly(_this, updateMethod, batchItem, 'series'); + markStatusToUpdate(_this); + } else if (cptType) { + updateDirectly(_this, updateMethod, batchItem, cptType.main, cptType.sub); + } + }); + if (updateMethod !== 'none' && !isHighDown && !isSelectChange && !cptType) { + try { + // Still dirty + if (this[PENDING_UPDATE]) { + prepare(this); + updateMethods.update.call(this, payload); + this[PENDING_UPDATE] = null; + } else { + updateMethods[updateMethod].call(this, payload); + } + } catch (e) { + this[IN_MAIN_PROCESS_KEY] = false; + throw e; + } + } + // Follow the rule of action batch + if (batched) { + eventObj = { + type: actionInfo.event || payloadType, + escapeConnect: escapeConnect, + batch: eventObjBatch + }; + } else { + eventObj = eventObjBatch[0]; + } + this[IN_MAIN_PROCESS_KEY] = false; + if (!silent) { + var messageCenter = this._messageCenter; + messageCenter.trigger(eventObj.type, eventObj); + // Extra triggered 'selectchanged' event + if (isSelectChange) { + var newObj = { + type: 'selectchanged', + escapeConnect: escapeConnect, + selected: getAllSelectedIndices(ecModel), + isFromClick: payload.isFromClick || false, + fromAction: payload.type, + fromActionPayload: payload + }; + messageCenter.trigger(newObj.type, newObj); + } + } + }; + flushPendingActions = function (silent) { + var pendingActions = this._pendingActions; + while (pendingActions.length) { + var payload = pendingActions.shift(); + doDispatchAction.call(this, payload, silent); + } + }; + triggerUpdatedEvent = function (silent) { + !silent && this.trigger('updated'); + }; + /** + * Event `rendered` is triggered when zr + * rendered. It is useful for realtime + * snapshot (reflect animation). + * + * Event `finished` is triggered when: + * (1) zrender rendering finished. + * (2) initial animation finished. + * (3) progressive rendering finished. + * (4) no pending action. + * (5) no delayed setOption needs to be processed. + */ + bindRenderedEvent = function (zr, ecIns) { + zr.on('rendered', function (params) { + ecIns.trigger('rendered', params); + // The `finished` event should not be triggered repeatedly, + // so it should only be triggered when rendering indeed happens + // in zrender. (Consider the case that dipatchAction is keep + // triggering when mouse move). + if ( + // Although zr is dirty if initial animation is not finished + // and this checking is called on frame, we also check + // animation finished for robustness. + zr.animation.isFinished() && !ecIns[PENDING_UPDATE] && !ecIns._scheduler.unfinished && !ecIns._pendingActions.length) { + ecIns.trigger('finished'); + } + }); + }; + bindMouseEvent = function (zr, ecIns) { + zr.on('mouseover', function (e) { + var el = e.target; + var dispatcher = findEventDispatcher(el, isHighDownDispatcher); + if (dispatcher) { + handleGlobalMouseOverForHighDown(dispatcher, e, ecIns._api); + markStatusToUpdate(ecIns); + } + }).on('mouseout', function (e) { + var el = e.target; + var dispatcher = findEventDispatcher(el, isHighDownDispatcher); + if (dispatcher) { + handleGlobalMouseOutForHighDown(dispatcher, e, ecIns._api); + markStatusToUpdate(ecIns); + } + }).on('click', function (e) { + var el = e.target; + var dispatcher = findEventDispatcher(el, function (target) { + return getECData(target).dataIndex != null; + }, true); + if (dispatcher) { + var actionType = dispatcher.selected ? 'unselect' : 'select'; + var ecData = getECData(dispatcher); + ecIns._api.dispatchAction({ + type: actionType, + dataType: ecData.dataType, + dataIndexInside: ecData.dataIndex, + seriesIndex: ecData.seriesIndex, + isFromClick: true + }); + } + }); + }; + function clearColorPalette(ecModel) { + ecModel.clearColorPalette(); + ecModel.eachSeries(function (seriesModel) { + seriesModel.clearColorPalette(); + }); + } + // Allocate zlevels for series and components + function allocateZlevels(ecModel) { + var componentZLevels = []; + var seriesZLevels = []; + var hasSeparateZLevel = false; + ecModel.eachComponent(function (componentType, componentModel) { + var zlevel = componentModel.get('zlevel') || 0; + var z = componentModel.get('z') || 0; + var zlevelKey = componentModel.getZLevelKey(); + hasSeparateZLevel = hasSeparateZLevel || !!zlevelKey; + (componentType === 'series' ? seriesZLevels : componentZLevels).push({ + zlevel: zlevel, + z: z, + idx: componentModel.componentIndex, + type: componentType, + key: zlevelKey + }); + }); + if (hasSeparateZLevel) { + // Series after component + var zLevels = componentZLevels.concat(seriesZLevels); + var lastSeriesZLevel_1; + var lastSeriesKey_1; + sort(zLevels, function (a, b) { + if (a.zlevel === b.zlevel) { + return a.z - b.z; + } + return a.zlevel - b.zlevel; + }); + each(zLevels, function (item) { + var componentModel = ecModel.getComponent(item.type, item.idx); + var zlevel = item.zlevel; + var key = item.key; + if (lastSeriesZLevel_1 != null) { + zlevel = Math.max(lastSeriesZLevel_1, zlevel); + } + if (key) { + if (zlevel === lastSeriesZLevel_1 && key !== lastSeriesKey_1) { + zlevel++; + } + lastSeriesKey_1 = key; + } else if (lastSeriesKey_1) { + if (zlevel === lastSeriesZLevel_1) { + zlevel++; + } + lastSeriesKey_1 = ''; + } + lastSeriesZLevel_1 = zlevel; + componentModel.setZLevel(zlevel); + }); + } + } + render = function (ecIns, ecModel, api, payload, updateParams) { + allocateZlevels(ecModel); + renderComponents(ecIns, ecModel, api, payload, updateParams); + each(ecIns._chartsViews, function (chart) { + chart.__alive = false; + }); + renderSeries(ecIns, ecModel, api, payload, updateParams); + // Remove groups of unrendered charts + each(ecIns._chartsViews, function (chart) { + if (!chart.__alive) { + chart.remove(ecModel, api); + } + }); + }; + renderComponents = function (ecIns, ecModel, api, payload, updateParams, dirtyList) { + each(dirtyList || ecIns._componentsViews, function (componentView) { + var componentModel = componentView.__model; + clearStates(componentModel, componentView); + componentView.render(componentModel, ecModel, api, payload); + updateZ(componentModel, componentView); + updateStates(componentModel, componentView); + }); + }; + /** + * Render each chart and component + */ + renderSeries = function (ecIns, ecModel, api, payload, updateParams, dirtyMap) { + // Render all charts + var scheduler = ecIns._scheduler; + updateParams = extend(updateParams || {}, { + updatedSeries: ecModel.getSeries() + }); + // TODO progressive? + lifecycle.trigger('series:beforeupdate', ecModel, api, updateParams); + var unfinished = false; + ecModel.eachSeries(function (seriesModel) { + var chartView = ecIns._chartsMap[seriesModel.__viewId]; + chartView.__alive = true; + var renderTask = chartView.renderTask; + scheduler.updatePayload(renderTask, payload); + // TODO states on marker. + clearStates(seriesModel, chartView); + if (dirtyMap && dirtyMap.get(seriesModel.uid)) { + renderTask.dirty(); + } + if (renderTask.perform(scheduler.getPerformArgs(renderTask))) { + unfinished = true; + } + chartView.group.silent = !!seriesModel.get('silent'); + // Should not call markRedraw on group, because it will disable zrender + // incremental render (always render from the __startIndex each frame) + // chartView.group.markRedraw(); + updateBlend(seriesModel, chartView); + updateSeriesElementSelection(seriesModel); + }); + scheduler.unfinished = unfinished || scheduler.unfinished; + lifecycle.trigger('series:layoutlabels', ecModel, api, updateParams); + // transition after label is layouted. + lifecycle.trigger('series:transition', ecModel, api, updateParams); + ecModel.eachSeries(function (seriesModel) { + var chartView = ecIns._chartsMap[seriesModel.__viewId]; + // Update Z after labels updated. Before applying states. + updateZ(seriesModel, chartView); + // NOTE: Update states after label is updated. + // label should be in normal status when layouting. + updateStates(seriesModel, chartView); + }); + // If use hover layer + updateHoverLayerStatus(ecIns, ecModel); + lifecycle.trigger('series:afterupdate', ecModel, api, updateParams); + }; + markStatusToUpdate = function (ecIns) { + ecIns[STATUS_NEEDS_UPDATE_KEY] = true; + // Wake up zrender if it's sleep. Let it update states in the next frame. + ecIns.getZr().wakeUp(); + }; + applyChangedStates = function (ecIns) { + if (!ecIns[STATUS_NEEDS_UPDATE_KEY]) { + return; + } + ecIns.getZr().storage.traverse(function (el) { + // Not applied on removed elements, it may still in fading. + if (isElementRemoved(el)) { + return; + } + applyElementStates(el); + }); + ecIns[STATUS_NEEDS_UPDATE_KEY] = false; + }; + function applyElementStates(el) { + var newStates = []; + var oldStates = el.currentStates; + // Keep other states. + for (var i = 0; i < oldStates.length; i++) { + var stateName = oldStates[i]; + if (!(stateName === 'emphasis' || stateName === 'blur' || stateName === 'select')) { + newStates.push(stateName); + } + } + // Only use states when it's exists. + if (el.selected && el.states.select) { + newStates.push('select'); + } + if (el.hoverState === HOVER_STATE_EMPHASIS && el.states.emphasis) { + newStates.push('emphasis'); + } else if (el.hoverState === HOVER_STATE_BLUR && el.states.blur) { + newStates.push('blur'); + } + el.useStates(newStates); + } + function updateHoverLayerStatus(ecIns, ecModel) { + var zr = ecIns._zr; + var storage = zr.storage; + var elCount = 0; + storage.traverse(function (el) { + if (!el.isGroup) { + elCount++; + } + }); + if (elCount > ecModel.get('hoverLayerThreshold') && !env.node && !env.worker) { + ecModel.eachSeries(function (seriesModel) { + if (seriesModel.preventUsingHoverLayer) { + return; + } + var chartView = ecIns._chartsMap[seriesModel.__viewId]; + if (chartView.__alive) { + chartView.eachRendered(function (el) { + if (el.states.emphasis) { + el.states.emphasis.hoverLayer = true; + } + }); + } + }); + } + } + /** + * Update chart and blend. + */ + function updateBlend(seriesModel, chartView) { + var blendMode = seriesModel.get('blendMode') || null; + chartView.eachRendered(function (el) { + // FIXME marker and other components + if (!el.isGroup) { + // DON'T mark the element dirty. In case element is incremental and don't want to rerender. + el.style.blend = blendMode; + } + }); + } + function updateZ(model, view) { + if (model.preventAutoZ) { + return; + } + var z = model.get('z') || 0; + var zlevel = model.get('zlevel') || 0; + // Set z and zlevel + view.eachRendered(function (el) { + doUpdateZ(el, z, zlevel, -Infinity); + // Don't traverse the children because it has been traversed in _updateZ. + return true; + }); + } + function doUpdateZ(el, z, zlevel, maxZ2) { + // Group may also have textContent + var label = el.getTextContent(); + var labelLine = el.getTextGuideLine(); + var isGroup = el.isGroup; + if (isGroup) { + // set z & zlevel of children elements of Group + var children = el.childrenRef(); + for (var i = 0; i < children.length; i++) { + maxZ2 = Math.max(doUpdateZ(children[i], z, zlevel, maxZ2), maxZ2); + } + } else { + // not Group + el.z = z; + el.zlevel = zlevel; + maxZ2 = Math.max(el.z2, maxZ2); + } + // always set z and zlevel if label/labelLine exists + if (label) { + label.z = z; + label.zlevel = zlevel; + // lift z2 of text content + // TODO if el.emphasis.z2 is spcefied, what about textContent. + isFinite(maxZ2) && (label.z2 = maxZ2 + 2); + } + if (labelLine) { + var textGuideLineConfig = el.textGuideLineConfig; + labelLine.z = z; + labelLine.zlevel = zlevel; + isFinite(maxZ2) && (labelLine.z2 = maxZ2 + (textGuideLineConfig && textGuideLineConfig.showAbove ? 1 : -1)); + } + return maxZ2; + } + // Clear states without animation. + // TODO States on component. + function clearStates(model, view) { + view.eachRendered(function (el) { + // Not applied on removed elements, it may still in fading. + if (isElementRemoved(el)) { + return; + } + var textContent = el.getTextContent(); + var textGuide = el.getTextGuideLine(); + if (el.stateTransition) { + el.stateTransition = null; + } + if (textContent && textContent.stateTransition) { + textContent.stateTransition = null; + } + if (textGuide && textGuide.stateTransition) { + textGuide.stateTransition = null; + } + // TODO If el is incremental. + if (el.hasState()) { + el.prevStates = el.currentStates; + el.clearStates(); + } else if (el.prevStates) { + el.prevStates = null; + } + }); + } + function updateStates(model, view) { + var stateAnimationModel = model.getModel('stateAnimation'); + var enableAnimation = model.isAnimationEnabled(); + var duration = stateAnimationModel.get('duration'); + var stateTransition = duration > 0 ? { + duration: duration, + delay: stateAnimationModel.get('delay'), + easing: stateAnimationModel.get('easing') + // additive: stateAnimationModel.get('additive') + } : null; + view.eachRendered(function (el) { + if (el.states && el.states.emphasis) { + // Not applied on removed elements, it may still in fading. + if (isElementRemoved(el)) { + return; + } + if (el instanceof Path) { + savePathStates(el); + } + // Only updated on changed element. In case element is incremental and don't want to rerender. + // TODO, a more proper way? + if (el.__dirty) { + var prevStates = el.prevStates; + // Restore states without animation + if (prevStates) { + el.useStates(prevStates); + } + } + // Update state transition and enable animation again. + if (enableAnimation) { + el.stateTransition = stateTransition; + var textContent = el.getTextContent(); + var textGuide = el.getTextGuideLine(); + // TODO Is it necessary to animate label? + if (textContent) { + textContent.stateTransition = stateTransition; + } + if (textGuide) { + textGuide.stateTransition = stateTransition; + } + } + // Use highlighted and selected flag to toggle states. + if (el.__dirty) { + applyElementStates(el); + } + } + }); + } + createExtensionAPI = function (ecIns) { + return new ( /** @class */function (_super) { + __extends(class_1, _super); + function class_1() { + return _super !== null && _super.apply(this, arguments) || this; + } + class_1.prototype.getCoordinateSystems = function () { + return ecIns._coordSysMgr.getCoordinateSystems(); + }; + class_1.prototype.getComponentByElement = function (el) { + while (el) { + var modelInfo = el.__ecComponentInfo; + if (modelInfo != null) { + return ecIns._model.getComponent(modelInfo.mainType, modelInfo.index); + } + el = el.parent; + } + }; + class_1.prototype.enterEmphasis = function (el, highlightDigit) { + enterEmphasis(el, highlightDigit); + markStatusToUpdate(ecIns); + }; + class_1.prototype.leaveEmphasis = function (el, highlightDigit) { + leaveEmphasis(el, highlightDigit); + markStatusToUpdate(ecIns); + }; + class_1.prototype.enterBlur = function (el) { + enterBlur(el); + markStatusToUpdate(ecIns); + }; + class_1.prototype.leaveBlur = function (el) { + leaveBlur(el); + markStatusToUpdate(ecIns); + }; + class_1.prototype.enterSelect = function (el) { + enterSelect(el); + markStatusToUpdate(ecIns); + }; + class_1.prototype.leaveSelect = function (el) { + leaveSelect(el); + markStatusToUpdate(ecIns); + }; + class_1.prototype.getModel = function () { + return ecIns.getModel(); + }; + class_1.prototype.getViewOfComponentModel = function (componentModel) { + return ecIns.getViewOfComponentModel(componentModel); + }; + class_1.prototype.getViewOfSeriesModel = function (seriesModel) { + return ecIns.getViewOfSeriesModel(seriesModel); + }; + return class_1; + }(ExtensionAPI))(ecIns); + }; + enableConnect = function (chart) { + function updateConnectedChartsStatus(charts, status) { + for (var i = 0; i < charts.length; i++) { + var otherChart = charts[i]; + otherChart[CONNECT_STATUS_KEY] = status; + } + } + each(eventActionMap, function (actionType, eventType) { + chart._messageCenter.on(eventType, function (event) { + if (connectedGroups[chart.group] && chart[CONNECT_STATUS_KEY] !== CONNECT_STATUS_PENDING) { + if (event && event.escapeConnect) { + return; + } + var action_1 = chart.makeActionFromEvent(event); + var otherCharts_1 = []; + each(instances$1, function (otherChart) { + if (otherChart !== chart && otherChart.group === chart.group) { + otherCharts_1.push(otherChart); + } + }); + updateConnectedChartsStatus(otherCharts_1, CONNECT_STATUS_PENDING); + each(otherCharts_1, function (otherChart) { + if (otherChart[CONNECT_STATUS_KEY] !== CONNECT_STATUS_UPDATING) { + otherChart.dispatchAction(action_1); + } + }); + updateConnectedChartsStatus(otherCharts_1, CONNECT_STATUS_UPDATED); + } + }); + }); + }; + }(); + return ECharts; + }(Eventful); + var echartsProto = ECharts.prototype; + echartsProto.on = createRegisterEventWithLowercaseECharts('on'); + echartsProto.off = createRegisterEventWithLowercaseECharts('off'); + /** + * @deprecated + */ + // @ts-ignore + echartsProto.one = function (eventName, cb, ctx) { + var self = this; + deprecateLog('ECharts#one is deprecated.'); + function wrapped() { + var args2 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args2[_i] = arguments[_i]; + } + cb && cb.apply && cb.apply(this, args2); + // @ts-ignore + self.off(eventName, wrapped); + } + // @ts-ignore + this.on.call(this, eventName, wrapped, ctx); + }; + var MOUSE_EVENT_NAMES = ['click', 'dblclick', 'mouseover', 'mouseout', 'mousemove', 'mousedown', 'mouseup', 'globalout', 'contextmenu']; + function disposedWarning(id) { + if ("development" !== 'production') { + warn('Instance ' + id + ' has been disposed'); + } + } + var actions = {}; + /** + * Map eventType to actionType + */ + var eventActionMap = {}; + var dataProcessorFuncs = []; + var optionPreprocessorFuncs = []; + var visualFuncs = []; + var themeStorage = {}; + var loadingEffects = {}; + var instances$1 = {}; + var connectedGroups = {}; + var idBase = +new Date() - 0; + var groupIdBase = +new Date() - 0; + var DOM_ATTRIBUTE_KEY = '_echarts_instance_'; + /** + * @param opts.devicePixelRatio Use window.devicePixelRatio by default + * @param opts.renderer Can choose 'canvas' or 'svg' to render the chart. + * @param opts.width Use clientWidth of the input `dom` by default. + * Can be 'auto' (the same as null/undefined) + * @param opts.height Use clientHeight of the input `dom` by default. + * Can be 'auto' (the same as null/undefined) + * @param opts.locale Specify the locale. + * @param opts.useDirtyRect Enable dirty rectangle rendering or not. + */ + function init$1(dom, theme, opts) { + var isClient = !(opts && opts.ssr); + if (isClient) { + if ("development" !== 'production') { + if (!dom) { + throw new Error('Initialize failed: invalid dom.'); + } + } + var existInstance = getInstanceByDom(dom); + if (existInstance) { + if ("development" !== 'production') { + warn('There is a chart instance already initialized on the dom.'); + } + return existInstance; + } + if ("development" !== 'production') { + if (isDom(dom) && dom.nodeName.toUpperCase() !== 'CANVAS' && (!dom.clientWidth && (!opts || opts.width == null) || !dom.clientHeight && (!opts || opts.height == null))) { + warn('Can\'t get DOM width or height. Please check ' + 'dom.clientWidth and dom.clientHeight. They should not be 0.' + 'For example, you may need to call this in the callback ' + 'of window.onload.'); + } + } + } + var chart = new ECharts(dom, theme, opts); + chart.id = 'ec_' + idBase++; + instances$1[chart.id] = chart; + isClient && setAttribute(dom, DOM_ATTRIBUTE_KEY, chart.id); + enableConnect(chart); + lifecycle.trigger('afterinit', chart); + return chart; + } + /** + * @usage + * (A) + * ```js + * let chart1 = echarts.init(dom1); + * let chart2 = echarts.init(dom2); + * chart1.group = 'xxx'; + * chart2.group = 'xxx'; + * echarts.connect('xxx'); + * ``` + * (B) + * ```js + * let chart1 = echarts.init(dom1); + * let chart2 = echarts.init(dom2); + * echarts.connect('xxx', [chart1, chart2]); + * ``` + */ + function connect(groupId) { + // Is array of charts + if (isArray(groupId)) { + var charts = groupId; + groupId = null; + // If any chart has group + each(charts, function (chart) { + if (chart.group != null) { + groupId = chart.group; + } + }); + groupId = groupId || 'g_' + groupIdBase++; + each(charts, function (chart) { + chart.group = groupId; + }); + } + connectedGroups[groupId] = true; + return groupId; + } + function disconnect(groupId) { + connectedGroups[groupId] = false; + } + /** + * Alias and backward compatibility + * @deprecated + */ + var disConnect = disconnect; + /** + * Dispose a chart instance + */ + function dispose$1(chart) { + if (isString(chart)) { + chart = instances$1[chart]; + } else if (!(chart instanceof ECharts)) { + // Try to treat as dom + chart = getInstanceByDom(chart); + } + if (chart instanceof ECharts && !chart.isDisposed()) { + chart.dispose(); + } + } + function getInstanceByDom(dom) { + return instances$1[getAttribute(dom, DOM_ATTRIBUTE_KEY)]; + } + function getInstanceById(key) { + return instances$1[key]; + } + /** + * Register theme + */ + function registerTheme(name, theme) { + themeStorage[name] = theme; + } + /** + * Register option preprocessor + */ + function registerPreprocessor(preprocessorFunc) { + if (indexOf(optionPreprocessorFuncs, preprocessorFunc) < 0) { + optionPreprocessorFuncs.push(preprocessorFunc); + } + } + function registerProcessor(priority, processor) { + normalizeRegister(dataProcessorFuncs, priority, processor, PRIORITY_PROCESSOR_DEFAULT); + } + /** + * Register postIniter + * @param {Function} postInitFunc + */ + function registerPostInit(postInitFunc) { + registerUpdateLifecycle('afterinit', postInitFunc); + } + /** + * Register postUpdater + * @param {Function} postUpdateFunc + */ + function registerPostUpdate(postUpdateFunc) { + registerUpdateLifecycle('afterupdate', postUpdateFunc); + } + function registerUpdateLifecycle(name, cb) { + lifecycle.on(name, cb); + } + function registerAction(actionInfo, eventName, action) { + if (isFunction(eventName)) { + action = eventName; + eventName = ''; + } + var actionType = isObject(actionInfo) ? actionInfo.type : [actionInfo, actionInfo = { + event: eventName + }][0]; + // Event name is all lowercase + actionInfo.event = (actionInfo.event || actionType).toLowerCase(); + eventName = actionInfo.event; + if (eventActionMap[eventName]) { + // Already registered. + return; + } + // Validate action type and event name. + assert(ACTION_REG.test(actionType) && ACTION_REG.test(eventName)); + if (!actions[actionType]) { + actions[actionType] = { + action: action, + actionInfo: actionInfo + }; + } + eventActionMap[eventName] = actionType; + } + function registerCoordinateSystem(type, coordSysCreator) { + CoordinateSystemManager.register(type, coordSysCreator); + } + /** + * Get dimensions of specified coordinate system. + * @param {string} type + * @return {Array.<string|Object>} + */ + function getCoordinateSystemDimensions(type) { + var coordSysCreator = CoordinateSystemManager.get(type); + if (coordSysCreator) { + return coordSysCreator.getDimensionsInfo ? coordSysCreator.getDimensionsInfo() : coordSysCreator.dimensions.slice(); + } + } + function registerLayout(priority, layoutTask) { + normalizeRegister(visualFuncs, priority, layoutTask, PRIORITY_VISUAL_LAYOUT, 'layout'); + } + function registerVisual(priority, visualTask) { + normalizeRegister(visualFuncs, priority, visualTask, PRIORITY_VISUAL_CHART, 'visual'); + } + var registeredTasks = []; + function normalizeRegister(targetList, priority, fn, defaultPriority, visualType) { + if (isFunction(priority) || isObject(priority)) { + fn = priority; + priority = defaultPriority; + } + if ("development" !== 'production') { + if (isNaN(priority) || priority == null) { + throw new Error('Illegal priority'); + } + // Check duplicate + each(targetList, function (wrap) { + assert(wrap.__raw !== fn); + }); + } + // Already registered + if (indexOf(registeredTasks, fn) >= 0) { + return; + } + registeredTasks.push(fn); + var stageHandler = Scheduler.wrapStageHandler(fn, visualType); + stageHandler.__prio = priority; + stageHandler.__raw = fn; + targetList.push(stageHandler); + } + function registerLoading(name, loadingFx) { + loadingEffects[name] = loadingFx; + } + /** + * ZRender need a canvas context to do measureText. + * But in node environment canvas may be created by node-canvas. + * So we need to specify how to create a canvas instead of using document.createElement('canvas') + * + * + * @deprecated use setPlatformAPI({ createCanvas }) instead. + * + * @example + * let Canvas = require('canvas'); + * let echarts = require('echarts'); + * echarts.setCanvasCreator(function () { + * // Small size is enough. + * return new Canvas(32, 32); + * }); + */ + function setCanvasCreator(creator) { + if ("development" !== 'production') { + deprecateLog('setCanvasCreator is deprecated. Use setPlatformAPI({ createCanvas }) instead.'); + } + setPlatformAPI({ + createCanvas: creator + }); + } + /** + * The parameters and usage: see `geoSourceManager.registerMap`. + * Compatible with previous `echarts.registerMap`. + */ + function registerMap(mapName, geoJson, specialAreas) { + var registerMap = getImpl('registerMap'); + registerMap && registerMap(mapName, geoJson, specialAreas); + } + function getMap(mapName) { + var getMap = getImpl('getMap'); + return getMap && getMap(mapName); + } + var registerTransform = registerExternalTransform; + /** + * Globa dispatchAction to a specified chart instance. + */ + // export function dispatchAction(payload: { chartId: string } & Payload, opt?: Parameters<ECharts['dispatchAction']>[1]) { + // if (!payload || !payload.chartId) { + // // Must have chartId to find chart + // return; + // } + // const chart = instances[payload.chartId]; + // if (chart) { + // chart.dispatchAction(payload, opt); + // } + // } + // Builtin global visual + registerVisual(PRIORITY_VISUAL_GLOBAL, seriesStyleTask); + registerVisual(PRIORITY_VISUAL_CHART_DATA_CUSTOM, dataStyleTask); + registerVisual(PRIORITY_VISUAL_CHART_DATA_CUSTOM, dataColorPaletteTask); + registerVisual(PRIORITY_VISUAL_GLOBAL, seriesSymbolTask); + registerVisual(PRIORITY_VISUAL_CHART_DATA_CUSTOM, dataSymbolTask); + registerVisual(PRIORITY_VISUAL_DECAL, decalVisual); + registerPreprocessor(globalBackwardCompat); + registerProcessor(PRIORITY_PROCESSOR_DATASTACK, dataStack); + registerLoading('default', defaultLoading); + // Default actions + registerAction({ + type: HIGHLIGHT_ACTION_TYPE, + event: HIGHLIGHT_ACTION_TYPE, + update: HIGHLIGHT_ACTION_TYPE + }, noop); + registerAction({ + type: DOWNPLAY_ACTION_TYPE, + event: DOWNPLAY_ACTION_TYPE, + update: DOWNPLAY_ACTION_TYPE + }, noop); + registerAction({ + type: SELECT_ACTION_TYPE, + event: SELECT_ACTION_TYPE, + update: SELECT_ACTION_TYPE + }, noop); + registerAction({ + type: UNSELECT_ACTION_TYPE, + event: UNSELECT_ACTION_TYPE, + update: UNSELECT_ACTION_TYPE + }, noop); + registerAction({ + type: TOGGLE_SELECT_ACTION_TYPE, + event: TOGGLE_SELECT_ACTION_TYPE, + update: TOGGLE_SELECT_ACTION_TYPE + }, noop); + // Default theme + registerTheme('light', lightTheme); + registerTheme('dark', theme); + // For backward compatibility, where the namespace `dataTool` will + // be mounted on `echarts` is the extension `dataTool` is imported. + var dataTool = {}; + + var extensions = []; + var extensionRegisters = { + registerPreprocessor: registerPreprocessor, + registerProcessor: registerProcessor, + registerPostInit: registerPostInit, + registerPostUpdate: registerPostUpdate, + registerUpdateLifecycle: registerUpdateLifecycle, + registerAction: registerAction, + registerCoordinateSystem: registerCoordinateSystem, + registerLayout: registerLayout, + registerVisual: registerVisual, + registerTransform: registerTransform, + registerLoading: registerLoading, + registerMap: registerMap, + registerImpl: registerImpl, + PRIORITY: PRIORITY, + ComponentModel: ComponentModel, + ComponentView: ComponentView, + SeriesModel: SeriesModel, + ChartView: ChartView, + // TODO Use ComponentModel and SeriesModel instead of Constructor + registerComponentModel: function (ComponentModelClass) { + ComponentModel.registerClass(ComponentModelClass); + }, + registerComponentView: function (ComponentViewClass) { + ComponentView.registerClass(ComponentViewClass); + }, + registerSeriesModel: function (SeriesModelClass) { + SeriesModel.registerClass(SeriesModelClass); + }, + registerChartView: function (ChartViewClass) { + ChartView.registerClass(ChartViewClass); + }, + registerSubTypeDefaulter: function (componentType, defaulter) { + ComponentModel.registerSubTypeDefaulter(componentType, defaulter); + }, + registerPainter: function (painterType, PainterCtor) { + registerPainter(painterType, PainterCtor); + } + }; + function use(ext) { + if (isArray(ext)) { + // use([ChartLine, ChartBar]); + each(ext, function (singleExt) { + use(singleExt); + }); + return; + } + if (indexOf(extensions, ext) >= 0) { + return; + } + extensions.push(ext); + if (isFunction(ext)) { + ext = { + install: ext + }; + } + ext.install(extensionRegisters); + } + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + + /** + * AUTO-GENERATED FILE. DO NOT MODIFY. + */ + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + function dataIndexMapValueLength(valNumOrArrLengthMoreThan2) { + return valNumOrArrLengthMoreThan2 == null ? 0 : valNumOrArrLengthMoreThan2.length || 1; + } + function defaultKeyGetter(item) { + return item; + } + var DataDiffer = /** @class */function () { + /** + * @param context Can be visited by this.context in callback. + */ + function DataDiffer(oldArr, newArr, oldKeyGetter, newKeyGetter, context, + // By default: 'oneToOne'. + diffMode) { + this._old = oldArr; + this._new = newArr; + this._oldKeyGetter = oldKeyGetter || defaultKeyGetter; + this._newKeyGetter = newKeyGetter || defaultKeyGetter; + // Visible in callback via `this.context`; + this.context = context; + this._diffModeMultiple = diffMode === 'multiple'; + } + /** + * Callback function when add a data + */ + DataDiffer.prototype.add = function (func) { + this._add = func; + return this; + }; + /** + * Callback function when update a data + */ + DataDiffer.prototype.update = function (func) { + this._update = func; + return this; + }; + /** + * Callback function when update a data and only work in `cbMode: 'byKey'`. + */ + DataDiffer.prototype.updateManyToOne = function (func) { + this._updateManyToOne = func; + return this; + }; + /** + * Callback function when update a data and only work in `cbMode: 'byKey'`. + */ + DataDiffer.prototype.updateOneToMany = function (func) { + this._updateOneToMany = func; + return this; + }; + /** + * Callback function when update a data and only work in `cbMode: 'byKey'`. + */ + DataDiffer.prototype.updateManyToMany = function (func) { + this._updateManyToMany = func; + return this; + }; + /** + * Callback function when remove a data + */ + DataDiffer.prototype.remove = function (func) { + this._remove = func; + return this; + }; + DataDiffer.prototype.execute = function () { + this[this._diffModeMultiple ? '_executeMultiple' : '_executeOneToOne'](); + }; + DataDiffer.prototype._executeOneToOne = function () { + var oldArr = this._old; + var newArr = this._new; + var newDataIndexMap = {}; + var oldDataKeyArr = new Array(oldArr.length); + var newDataKeyArr = new Array(newArr.length); + this._initIndexMap(oldArr, null, oldDataKeyArr, '_oldKeyGetter'); + this._initIndexMap(newArr, newDataIndexMap, newDataKeyArr, '_newKeyGetter'); + for (var i = 0; i < oldArr.length; i++) { + var oldKey = oldDataKeyArr[i]; + var newIdxMapVal = newDataIndexMap[oldKey]; + var newIdxMapValLen = dataIndexMapValueLength(newIdxMapVal); + // idx can never be empty array here. see 'set null' logic below. + if (newIdxMapValLen > 1) { + // Consider there is duplicate key (for example, use dataItem.name as key). + // We should make sure every item in newArr and oldArr can be visited. + var newIdx = newIdxMapVal.shift(); + if (newIdxMapVal.length === 1) { + newDataIndexMap[oldKey] = newIdxMapVal[0]; + } + this._update && this._update(newIdx, i); + } else if (newIdxMapValLen === 1) { + newDataIndexMap[oldKey] = null; + this._update && this._update(newIdxMapVal, i); + } else { + this._remove && this._remove(i); + } + } + this._performRestAdd(newDataKeyArr, newDataIndexMap); + }; + /** + * For example, consider the case: + * oldData: [o0, o1, o2, o3, o4, o5, o6, o7], + * newData: [n0, n1, n2, n3, n4, n5, n6, n7, n8], + * Where: + * o0, o1, n0 has key 'a' (many to one) + * o5, n4, n5, n6 has key 'b' (one to many) + * o2, n1 has key 'c' (one to one) + * n2, n3 has key 'd' (add) + * o3, o4 has key 'e' (remove) + * o6, o7, n7, n8 has key 'f' (many to many, treated as add and remove) + * Then: + * (The order of the following directives are not ensured.) + * this._updateManyToOne(n0, [o0, o1]); + * this._updateOneToMany([n4, n5, n6], o5); + * this._update(n1, o2); + * this._remove(o3); + * this._remove(o4); + * this._remove(o6); + * this._remove(o7); + * this._add(n2); + * this._add(n3); + * this._add(n7); + * this._add(n8); + */ + DataDiffer.prototype._executeMultiple = function () { + var oldArr = this._old; + var newArr = this._new; + var oldDataIndexMap = {}; + var newDataIndexMap = {}; + var oldDataKeyArr = []; + var newDataKeyArr = []; + this._initIndexMap(oldArr, oldDataIndexMap, oldDataKeyArr, '_oldKeyGetter'); + this._initIndexMap(newArr, newDataIndexMap, newDataKeyArr, '_newKeyGetter'); + for (var i = 0; i < oldDataKeyArr.length; i++) { + var oldKey = oldDataKeyArr[i]; + var oldIdxMapVal = oldDataIndexMap[oldKey]; + var newIdxMapVal = newDataIndexMap[oldKey]; + var oldIdxMapValLen = dataIndexMapValueLength(oldIdxMapVal); + var newIdxMapValLen = dataIndexMapValueLength(newIdxMapVal); + if (oldIdxMapValLen > 1 && newIdxMapValLen === 1) { + this._updateManyToOne && this._updateManyToOne(newIdxMapVal, oldIdxMapVal); + newDataIndexMap[oldKey] = null; + } else if (oldIdxMapValLen === 1 && newIdxMapValLen > 1) { + this._updateOneToMany && this._updateOneToMany(newIdxMapVal, oldIdxMapVal); + newDataIndexMap[oldKey] = null; + } else if (oldIdxMapValLen === 1 && newIdxMapValLen === 1) { + this._update && this._update(newIdxMapVal, oldIdxMapVal); + newDataIndexMap[oldKey] = null; + } else if (oldIdxMapValLen > 1 && newIdxMapValLen > 1) { + this._updateManyToMany && this._updateManyToMany(newIdxMapVal, oldIdxMapVal); + newDataIndexMap[oldKey] = null; + } else if (oldIdxMapValLen > 1) { + for (var i_1 = 0; i_1 < oldIdxMapValLen; i_1++) { + this._remove && this._remove(oldIdxMapVal[i_1]); + } + } else { + this._remove && this._remove(oldIdxMapVal); + } + } + this._performRestAdd(newDataKeyArr, newDataIndexMap); + }; + DataDiffer.prototype._performRestAdd = function (newDataKeyArr, newDataIndexMap) { + for (var i = 0; i < newDataKeyArr.length; i++) { + var newKey = newDataKeyArr[i]; + var newIdxMapVal = newDataIndexMap[newKey]; + var idxMapValLen = dataIndexMapValueLength(newIdxMapVal); + if (idxMapValLen > 1) { + for (var j = 0; j < idxMapValLen; j++) { + this._add && this._add(newIdxMapVal[j]); + } + } else if (idxMapValLen === 1) { + this._add && this._add(newIdxMapVal); + } + // Support both `newDataKeyArr` are duplication removed or not removed. + newDataIndexMap[newKey] = null; + } + }; + DataDiffer.prototype._initIndexMap = function (arr, + // Can be null. + map, + // In 'byKey', the output `keyArr` is duplication removed. + // In 'byIndex', the output `keyArr` is not duplication removed and + // its indices are accurately corresponding to `arr`. + keyArr, keyGetterName) { + var cbModeMultiple = this._diffModeMultiple; + for (var i = 0; i < arr.length; i++) { + // Add prefix to avoid conflict with Object.prototype. + var key = '_ec_' + this[keyGetterName](arr[i], i); + if (!cbModeMultiple) { + keyArr[i] = key; + } + if (!map) { + continue; + } + var idxMapVal = map[key]; + var idxMapValLen = dataIndexMapValueLength(idxMapVal); + if (idxMapValLen === 0) { + // Simple optimize: in most cases, one index has one key, + // do not need array. + map[key] = i; + if (cbModeMultiple) { + keyArr.push(key); + } + } else if (idxMapValLen === 1) { + map[key] = [idxMapVal, i]; + } else { + idxMapVal.push(i); + } + } + }; + return DataDiffer; + }(); + + var DimensionUserOuput = /** @class */function () { + function DimensionUserOuput(encode, dimRequest) { + this._encode = encode; + this._schema = dimRequest; + } + DimensionUserOuput.prototype.get = function () { + return { + // Do not generate full dimension name until fist used. + fullDimensions: this._getFullDimensionNames(), + encode: this._encode + }; + }; + /** + * Get all data store dimension names. + * Theoretically a series data store is defined both by series and used dataset (if any). + * If some dimensions are omitted for performance reason in `this.dimensions`, + * the dimension name may not be auto-generated if user does not specify a dimension name. + * In this case, the dimension name is `null`/`undefined`. + */ + DimensionUserOuput.prototype._getFullDimensionNames = function () { + if (!this._cachedDimNames) { + this._cachedDimNames = this._schema ? this._schema.makeOutputDimensionNames() : []; + } + return this._cachedDimNames; + }; + return DimensionUserOuput; + }(); + function summarizeDimensions(data, schema) { + var summary = {}; + var encode = summary.encode = {}; + var notExtraCoordDimMap = createHashMap(); + var defaultedLabel = []; + var defaultedTooltip = []; + var userOutputEncode = {}; + each(data.dimensions, function (dimName) { + var dimItem = data.getDimensionInfo(dimName); + var coordDim = dimItem.coordDim; + if (coordDim) { + if ("development" !== 'production') { + assert(VISUAL_DIMENSIONS.get(coordDim) == null); + } + var coordDimIndex = dimItem.coordDimIndex; + getOrCreateEncodeArr(encode, coordDim)[coordDimIndex] = dimName; + if (!dimItem.isExtraCoord) { + notExtraCoordDimMap.set(coordDim, 1); + // Use the last coord dim (and label friendly) as default label, + // because when dataset is used, it is hard to guess which dimension + // can be value dimension. If both show x, y on label is not look good, + // and conventionally y axis is focused more. + if (mayLabelDimType(dimItem.type)) { + defaultedLabel[0] = dimName; + } + // User output encode do not contain generated coords. + // And it only has index. User can use index to retrieve value from the raw item array. + getOrCreateEncodeArr(userOutputEncode, coordDim)[coordDimIndex] = data.getDimensionIndex(dimItem.name); + } + if (dimItem.defaultTooltip) { + defaultedTooltip.push(dimName); + } + } + VISUAL_DIMENSIONS.each(function (v, otherDim) { + var encodeArr = getOrCreateEncodeArr(encode, otherDim); + var dimIndex = dimItem.otherDims[otherDim]; + if (dimIndex != null && dimIndex !== false) { + encodeArr[dimIndex] = dimItem.name; + } + }); + }); + var dataDimsOnCoord = []; + var encodeFirstDimNotExtra = {}; + notExtraCoordDimMap.each(function (v, coordDim) { + var dimArr = encode[coordDim]; + encodeFirstDimNotExtra[coordDim] = dimArr[0]; + // Not necessary to remove duplicate, because a data + // dim canot on more than one coordDim. + dataDimsOnCoord = dataDimsOnCoord.concat(dimArr); + }); + summary.dataDimsOnCoord = dataDimsOnCoord; + summary.dataDimIndicesOnCoord = map(dataDimsOnCoord, function (dimName) { + return data.getDimensionInfo(dimName).storeDimIndex; + }); + summary.encodeFirstDimNotExtra = encodeFirstDimNotExtra; + var encodeLabel = encode.label; + // FIXME `encode.label` is not recommended, because formatter cannot be set + // in this way. Use label.formatter instead. Maybe remove this approach someday. + if (encodeLabel && encodeLabel.length) { + defaultedLabel = encodeLabel.slice(); + } + var encodeTooltip = encode.tooltip; + if (encodeTooltip && encodeTooltip.length) { + defaultedTooltip = encodeTooltip.slice(); + } else if (!defaultedTooltip.length) { + defaultedTooltip = defaultedLabel.slice(); + } + encode.defaultedLabel = defaultedLabel; + encode.defaultedTooltip = defaultedTooltip; + summary.userOutput = new DimensionUserOuput(userOutputEncode, schema); + return summary; + } + function getOrCreateEncodeArr(encode, dim) { + if (!encode.hasOwnProperty(dim)) { + encode[dim] = []; + } + return encode[dim]; + } + // FIXME:TS should be type `AxisType` + function getDimensionTypeByAxis(axisType) { + return axisType === 'category' ? 'ordinal' : axisType === 'time' ? 'time' : 'float'; + } + function mayLabelDimType(dimType) { + // In most cases, ordinal and time do not suitable for label. + // Ordinal info can be displayed on axis. Time is too long. + return !(dimType === 'ordinal' || dimType === 'time'); + } + // function findTheLastDimMayLabel(data) { + // // Get last value dim + // let dimensions = data.dimensions.slice(); + // let valueType; + // let valueDim; + // while (dimensions.length && ( + // valueDim = dimensions.pop(), + // valueType = data.getDimensionInfo(valueDim).type, + // valueType === 'ordinal' || valueType === 'time' + // )) {} // jshint ignore:line + // return valueDim; + // } + + var SeriesDimensionDefine = /** @class */function () { + /** + * @param opt All of the fields will be shallow copied. + */ + function SeriesDimensionDefine(opt) { + /** + * The format of `otherDims` is: + * ```js + * { + * tooltip?: number + * label?: number + * itemName?: number + * seriesName?: number + * } + * ``` + * + * A `series.encode` can specified these fields: + * ```js + * encode: { + * // "3, 1, 5" is the index of data dimension. + * tooltip: [3, 1, 5], + * label: [0, 3], + * ... + * } + * ``` + * `otherDims` is the parse result of the `series.encode` above, like: + * ```js + * // Suppose the index of this data dimension is `3`. + * this.otherDims = { + * // `3` is at the index `0` of the `encode.tooltip` + * tooltip: 0, + * // `3` is at the index `1` of the `encode.label` + * label: 1 + * }; + * ``` + * + * This prop should never be `null`/`undefined` after initialized. + */ + this.otherDims = {}; + if (opt != null) { + extend(this, opt); + } + } + return SeriesDimensionDefine; + }(); + + var inner$4 = makeInner(); + var dimTypeShort = { + float: 'f', + int: 'i', + ordinal: 'o', + number: 'n', + time: 't' + }; + /** + * Represents the dimension requirement of a series. + * + * NOTICE: + * When there are too many dimensions in dataset and many series, only the used dimensions + * (i.e., used by coord sys and declared in `series.encode`) are add to `dimensionDefineList`. + * But users may query data by other unused dimension names. + * In this case, users can only query data if and only if they have defined dimension names + * via ec option, so we provide `getDimensionIndexFromSource`, which only query them from + * `source` dimensions. + */ + var SeriesDataSchema = /** @class */function () { + function SeriesDataSchema(opt) { + this.dimensions = opt.dimensions; + this._dimOmitted = opt.dimensionOmitted; + this.source = opt.source; + this._fullDimCount = opt.fullDimensionCount; + this._updateDimOmitted(opt.dimensionOmitted); + } + SeriesDataSchema.prototype.isDimensionOmitted = function () { + return this._dimOmitted; + }; + SeriesDataSchema.prototype._updateDimOmitted = function (dimensionOmitted) { + this._dimOmitted = dimensionOmitted; + if (!dimensionOmitted) { + return; + } + if (!this._dimNameMap) { + this._dimNameMap = ensureSourceDimNameMap(this.source); + } + }; + /** + * @caution Can only be used when `dimensionOmitted: true`. + * + * Get index by user defined dimension name (i.e., not internal generate name). + * That is, get index from `dimensionsDefine`. + * If no `dimensionsDefine`, or no name get, return -1. + */ + SeriesDataSchema.prototype.getSourceDimensionIndex = function (dimName) { + return retrieve2(this._dimNameMap.get(dimName), -1); + }; + /** + * @caution Can only be used when `dimensionOmitted: true`. + * + * Notice: may return `null`/`undefined` if user not specify dimension names. + */ + SeriesDataSchema.prototype.getSourceDimension = function (dimIndex) { + var dimensionsDefine = this.source.dimensionsDefine; + if (dimensionsDefine) { + return dimensionsDefine[dimIndex]; + } + }; + SeriesDataSchema.prototype.makeStoreSchema = function () { + var dimCount = this._fullDimCount; + var willRetrieveDataByName = shouldRetrieveDataByName(this.source); + var makeHashStrict = !shouldOmitUnusedDimensions(dimCount); + // If source don't have dimensions or series don't omit unsed dimensions. + // Generate from seriesDimList directly + var dimHash = ''; + var dims = []; + for (var fullDimIdx = 0, seriesDimIdx = 0; fullDimIdx < dimCount; fullDimIdx++) { + var property = void 0; + var type = void 0; + var ordinalMeta = void 0; + var seriesDimDef = this.dimensions[seriesDimIdx]; + // The list has been sorted by `storeDimIndex` asc. + if (seriesDimDef && seriesDimDef.storeDimIndex === fullDimIdx) { + property = willRetrieveDataByName ? seriesDimDef.name : null; + type = seriesDimDef.type; + ordinalMeta = seriesDimDef.ordinalMeta; + seriesDimIdx++; + } else { + var sourceDimDef = this.getSourceDimension(fullDimIdx); + if (sourceDimDef) { + property = willRetrieveDataByName ? sourceDimDef.name : null; + type = sourceDimDef.type; + } + } + dims.push({ + property: property, + type: type, + ordinalMeta: ordinalMeta + }); + // If retrieving data by index, + // use <index, type, ordinalMeta> to determine whether data can be shared. + // (Because in this case there might be no dimension name defined in dataset, but indices always exists). + // (Indices are always 0, 1, 2, ..., so we can ignore them to shorten the hash). + // Otherwise if retrieving data by property name (like `data: [{aa: 123, bb: 765}, ...]`), + // use <property, type, ordinalMeta> in hash. + if (willRetrieveDataByName && property != null + // For data stack, we have make sure each series has its own dim on this store. + // So we do not add property to hash to make sure they can share this store. + && (!seriesDimDef || !seriesDimDef.isCalculationCoord)) { + dimHash += makeHashStrict + // Use escape character '`' in case that property name contains '$'. + ? property.replace(/\`/g, '`1').replace(/\$/g, '`2') + // For better performance, when there are large dimensions, tolerant this defects that hardly meet. + : property; + } + dimHash += '$'; + dimHash += dimTypeShort[type] || 'f'; + if (ordinalMeta) { + dimHash += ordinalMeta.uid; + } + dimHash += '$'; + } + // Source from endpoint(usually series) will be read differently + // when seriesLayoutBy or startIndex(which is affected by sourceHeader) are different. + // So we use this three props as key. + var source = this.source; + var hash = [source.seriesLayoutBy, source.startIndex, dimHash].join('$$'); + return { + dimensions: dims, + hash: hash + }; + }; + SeriesDataSchema.prototype.makeOutputDimensionNames = function () { + var result = []; + for (var fullDimIdx = 0, seriesDimIdx = 0; fullDimIdx < this._fullDimCount; fullDimIdx++) { + var name_1 = void 0; + var seriesDimDef = this.dimensions[seriesDimIdx]; + // The list has been sorted by `storeDimIndex` asc. + if (seriesDimDef && seriesDimDef.storeDimIndex === fullDimIdx) { + if (!seriesDimDef.isCalculationCoord) { + name_1 = seriesDimDef.name; + } + seriesDimIdx++; + } else { + var sourceDimDef = this.getSourceDimension(fullDimIdx); + if (sourceDimDef) { + name_1 = sourceDimDef.name; + } + } + result.push(name_1); + } + return result; + }; + SeriesDataSchema.prototype.appendCalculationDimension = function (dimDef) { + this.dimensions.push(dimDef); + dimDef.isCalculationCoord = true; + this._fullDimCount++; + // If append dimension on a data store, consider the store + // might be shared by different series, series dimensions not + // really map to store dimensions. + this._updateDimOmitted(true); + }; + return SeriesDataSchema; + }(); + function isSeriesDataSchema(schema) { + return schema instanceof SeriesDataSchema; + } + function createDimNameMap(dimsDef) { + var dataDimNameMap = createHashMap(); + for (var i = 0; i < (dimsDef || []).length; i++) { + var dimDefItemRaw = dimsDef[i]; + var userDimName = isObject(dimDefItemRaw) ? dimDefItemRaw.name : dimDefItemRaw; + if (userDimName != null && dataDimNameMap.get(userDimName) == null) { + dataDimNameMap.set(userDimName, i); + } + } + return dataDimNameMap; + } + function ensureSourceDimNameMap(source) { + var innerSource = inner$4(source); + return innerSource.dimNameMap || (innerSource.dimNameMap = createDimNameMap(source.dimensionsDefine)); + } + function shouldOmitUnusedDimensions(dimCount) { + return dimCount > 30; + } + + var isObject$2 = isObject; + var map$1 = map; + var CtorInt32Array$1 = typeof Int32Array === 'undefined' ? Array : Int32Array; + // Use prefix to avoid index to be the same as otherIdList[idx], + // which will cause weird update animation. + var ID_PREFIX = 'e\0\0'; + var INDEX_NOT_FOUND = -1; + // type SeriesDimensionIndex = DimensionIndex; + var TRANSFERABLE_PROPERTIES = ['hasItemOption', '_nameList', '_idList', '_invertedIndicesMap', '_dimSummary', 'userOutput', '_rawData', '_dimValueGetter', '_nameDimIdx', '_idDimIdx', '_nameRepeatCount']; + var CLONE_PROPERTIES = ['_approximateExtent']; + // ----------------------------- + // Internal method declarations: + // ----------------------------- + var prepareInvertedIndex; + var getId; + var getIdNameFromStore; + var normalizeDimensions; + var transferProperties; + var cloneListForMapAndSample; + var makeIdFromName; + var SeriesData = /** @class */function () { + /** + * @param dimensionsInput.dimensions + * For example, ['someDimName', {name: 'someDimName', type: 'someDimType'}, ...]. + * Dimensions should be concrete names like x, y, z, lng, lat, angle, radius + */ + function SeriesData(dimensionsInput, hostModel) { + this.type = 'list'; + this._dimOmitted = false; + this._nameList = []; + this._idList = []; + // Models of data option is stored sparse for optimizing memory cost + // Never used yet (not used yet). + // private _optionModels: Model[] = []; + // Global visual properties after visual coding + this._visual = {}; + // Global layout properties. + this._layout = {}; + // Item visual properties after visual coding + this._itemVisuals = []; + // Item layout properties after layout + this._itemLayouts = []; + // Graphic elements + this._graphicEls = []; + // key: dim, value: extent + this._approximateExtent = {}; + this._calculationInfo = {}; + // Having detected that there is data item is non primitive type + // (in type `OptionDataItemObject`). + // Like `data: [ { value: xx, itemStyle: {...} }, ...]` + // At present it only happen in `SOURCE_FORMAT_ORIGINAL`. + this.hasItemOption = false; + // Methods that create a new list based on this list should be listed here. + // Notice that those method should `RETURN` the new list. + this.TRANSFERABLE_METHODS = ['cloneShallow', 'downSample', 'lttbDownSample', 'map']; + // Methods that change indices of this list should be listed here. + this.CHANGABLE_METHODS = ['filterSelf', 'selectRange']; + this.DOWNSAMPLE_METHODS = ['downSample', 'lttbDownSample']; + var dimensions; + var assignStoreDimIdx = false; + if (isSeriesDataSchema(dimensionsInput)) { + dimensions = dimensionsInput.dimensions; + this._dimOmitted = dimensionsInput.isDimensionOmitted(); + this._schema = dimensionsInput; + } else { + assignStoreDimIdx = true; + dimensions = dimensionsInput; + } + dimensions = dimensions || ['x', 'y']; + var dimensionInfos = {}; + var dimensionNames = []; + var invertedIndicesMap = {}; + var needsHasOwn = false; + var emptyObj = {}; + for (var i = 0; i < dimensions.length; i++) { + // Use the original dimensions[i], where other flag props may exists. + var dimInfoInput = dimensions[i]; + var dimensionInfo = isString(dimInfoInput) ? new SeriesDimensionDefine({ + name: dimInfoInput + }) : !(dimInfoInput instanceof SeriesDimensionDefine) ? new SeriesDimensionDefine(dimInfoInput) : dimInfoInput; + var dimensionName = dimensionInfo.name; + dimensionInfo.type = dimensionInfo.type || 'float'; + if (!dimensionInfo.coordDim) { + dimensionInfo.coordDim = dimensionName; + dimensionInfo.coordDimIndex = 0; + } + var otherDims = dimensionInfo.otherDims = dimensionInfo.otherDims || {}; + dimensionNames.push(dimensionName); + dimensionInfos[dimensionName] = dimensionInfo; + if (emptyObj[dimensionName] != null) { + needsHasOwn = true; + } + if (dimensionInfo.createInvertedIndices) { + invertedIndicesMap[dimensionName] = []; + } + if (otherDims.itemName === 0) { + this._nameDimIdx = i; + } + if (otherDims.itemId === 0) { + this._idDimIdx = i; + } + if ("development" !== 'production') { + assert(assignStoreDimIdx || dimensionInfo.storeDimIndex >= 0); + } + if (assignStoreDimIdx) { + dimensionInfo.storeDimIndex = i; + } + } + this.dimensions = dimensionNames; + this._dimInfos = dimensionInfos; + this._initGetDimensionInfo(needsHasOwn); + this.hostModel = hostModel; + this._invertedIndicesMap = invertedIndicesMap; + if (this._dimOmitted) { + var dimIdxToName_1 = this._dimIdxToName = createHashMap(); + each(dimensionNames, function (dimName) { + dimIdxToName_1.set(dimensionInfos[dimName].storeDimIndex, dimName); + }); + } + } + /** + * + * Get concrete dimension name by dimension name or dimension index. + * If input a dimension name, do not validate whether the dimension name exits. + * + * @caution + * @param dim Must make sure the dimension is `SeriesDimensionLoose`. + * Because only those dimensions will have auto-generated dimension names if not + * have a user-specified name, and other dimensions will get a return of null/undefined. + * + * @notice Because of this reason, should better use `getDimensionIndex` instead, for examples: + * ```js + * const val = data.getStore().get(data.getDimensionIndex(dim), dataIdx); + * ``` + * + * @return Concrete dim name. + */ + SeriesData.prototype.getDimension = function (dim) { + var dimIdx = this._recognizeDimIndex(dim); + if (dimIdx == null) { + return dim; + } + dimIdx = dim; + if (!this._dimOmitted) { + return this.dimensions[dimIdx]; + } + // Retrieve from series dimension definition because it probably contains + // generated dimension name (like 'x', 'y'). + var dimName = this._dimIdxToName.get(dimIdx); + if (dimName != null) { + return dimName; + } + var sourceDimDef = this._schema.getSourceDimension(dimIdx); + if (sourceDimDef) { + return sourceDimDef.name; + } + }; + /** + * Get dimension index in data store. Return -1 if not found. + * Can be used to index value from getRawValue. + */ + SeriesData.prototype.getDimensionIndex = function (dim) { + var dimIdx = this._recognizeDimIndex(dim); + if (dimIdx != null) { + return dimIdx; + } + if (dim == null) { + return -1; + } + var dimInfo = this._getDimInfo(dim); + return dimInfo ? dimInfo.storeDimIndex : this._dimOmitted ? this._schema.getSourceDimensionIndex(dim) : -1; + }; + /** + * The meanings of the input parameter `dim`: + * + * + If dim is a number (e.g., `1`), it means the index of the dimension. + * For example, `getDimension(0)` will return 'x' or 'lng' or 'radius'. + * + If dim is a number-like string (e.g., `"1"`): + * + If there is the same concrete dim name defined in `series.dimensions` or `dataset.dimensions`, + * it means that concrete name. + * + If not, it will be converted to a number, which means the index of the dimension. + * (why? because of the backward compatibility. We have been tolerating number-like string in + * dimension setting, although now it seems that it is not a good idea.) + * For example, `visualMap[i].dimension: "1"` is the same meaning as `visualMap[i].dimension: 1`, + * if no dimension name is defined as `"1"`. + * + If dim is a not-number-like string, it means the concrete dim name. + * For example, it can be be default name `"x"`, `"y"`, `"z"`, `"lng"`, `"lat"`, `"angle"`, `"radius"`, + * or customized in `dimensions` property of option like `"age"`. + * + * @return recognized `DimensionIndex`. Otherwise return null/undefined (means that dim is `DimensionName`). + */ + SeriesData.prototype._recognizeDimIndex = function (dim) { + if (isNumber(dim) + // If being a number-like string but not being defined as a dimension name. + || dim != null && !isNaN(dim) && !this._getDimInfo(dim) && (!this._dimOmitted || this._schema.getSourceDimensionIndex(dim) < 0)) { + return +dim; + } + }; + SeriesData.prototype._getStoreDimIndex = function (dim) { + var dimIdx = this.getDimensionIndex(dim); + if ("development" !== 'production') { + if (dimIdx == null) { + throw new Error('Unknown dimension ' + dim); + } + } + return dimIdx; + }; + /** + * Get type and calculation info of particular dimension + * @param dim + * Dimension can be concrete names like x, y, z, lng, lat, angle, radius + * Or a ordinal number. For example getDimensionInfo(0) will return 'x' or 'lng' or 'radius' + */ + SeriesData.prototype.getDimensionInfo = function (dim) { + // Do not clone, because there may be categories in dimInfo. + return this._getDimInfo(this.getDimension(dim)); + }; + SeriesData.prototype._initGetDimensionInfo = function (needsHasOwn) { + var dimensionInfos = this._dimInfos; + this._getDimInfo = needsHasOwn ? function (dimName) { + return dimensionInfos.hasOwnProperty(dimName) ? dimensionInfos[dimName] : undefined; + } : function (dimName) { + return dimensionInfos[dimName]; + }; + }; + /** + * concrete dimension name list on coord. + */ + SeriesData.prototype.getDimensionsOnCoord = function () { + return this._dimSummary.dataDimsOnCoord.slice(); + }; + SeriesData.prototype.mapDimension = function (coordDim, idx) { + var dimensionsSummary = this._dimSummary; + if (idx == null) { + return dimensionsSummary.encodeFirstDimNotExtra[coordDim]; + } + var dims = dimensionsSummary.encode[coordDim]; + return dims ? dims[idx] : null; + }; + SeriesData.prototype.mapDimensionsAll = function (coordDim) { + var dimensionsSummary = this._dimSummary; + var dims = dimensionsSummary.encode[coordDim]; + return (dims || []).slice(); + }; + SeriesData.prototype.getStore = function () { + return this._store; + }; + /** + * Initialize from data + * @param data source or data or data store. + * @param nameList The name of a datum is used on data diff and + * default label/tooltip. + * A name can be specified in encode.itemName, + * or dataItem.name (only for series option data), + * or provided in nameList from outside. + */ + SeriesData.prototype.initData = function (data, nameList, dimValueGetter) { + var _this = this; + var store; + if (data instanceof DataStore) { + store = data; + } + if (!store) { + var dimensions = this.dimensions; + var provider = isSourceInstance(data) || isArrayLike(data) ? new DefaultDataProvider(data, dimensions.length) : data; + store = new DataStore(); + var dimensionInfos = map$1(dimensions, function (dimName) { + return { + type: _this._dimInfos[dimName].type, + property: dimName + }; + }); + store.initData(provider, dimensionInfos, dimValueGetter); + } + this._store = store; + // Reset + this._nameList = (nameList || []).slice(); + this._idList = []; + this._nameRepeatCount = {}; + this._doInit(0, store.count()); + // Cache summary info for fast visit. See "dimensionHelper". + // Needs to be initialized after store is prepared. + this._dimSummary = summarizeDimensions(this, this._schema); + this.userOutput = this._dimSummary.userOutput; + }; + /** + * Caution: Can be only called on raw data (before `this._indices` created). + */ + SeriesData.prototype.appendData = function (data) { + var range = this._store.appendData(data); + this._doInit(range[0], range[1]); + }; + /** + * Caution: Can be only called on raw data (before `this._indices` created). + * This method does not modify `rawData` (`dataProvider`), but only + * add values to store. + * + * The final count will be increased by `Math.max(values.length, names.length)`. + * + * @param values That is the SourceType: 'arrayRows', like + * [ + * [12, 33, 44], + * [NaN, 43, 1], + * ['-', 'asdf', 0] + * ] + * Each item is exactly corresponding to a dimension. + */ + SeriesData.prototype.appendValues = function (values, names) { + var _a = this._store.appendValues(values, names.length), + start = _a.start, + end = _a.end; + var shouldMakeIdFromName = this._shouldMakeIdFromName(); + this._updateOrdinalMeta(); + if (names) { + for (var idx = start; idx < end; idx++) { + var sourceIdx = idx - start; + this._nameList[idx] = names[sourceIdx]; + if (shouldMakeIdFromName) { + makeIdFromName(this, idx); + } + } + } + }; + SeriesData.prototype._updateOrdinalMeta = function () { + var store = this._store; + var dimensions = this.dimensions; + for (var i = 0; i < dimensions.length; i++) { + var dimInfo = this._dimInfos[dimensions[i]]; + if (dimInfo.ordinalMeta) { + store.collectOrdinalMeta(dimInfo.storeDimIndex, dimInfo.ordinalMeta); + } + } + }; + SeriesData.prototype._shouldMakeIdFromName = function () { + var provider = this._store.getProvider(); + return this._idDimIdx == null && provider.getSource().sourceFormat !== SOURCE_FORMAT_TYPED_ARRAY && !provider.fillStorage; + }; + SeriesData.prototype._doInit = function (start, end) { + if (start >= end) { + return; + } + var store = this._store; + var provider = store.getProvider(); + this._updateOrdinalMeta(); + var nameList = this._nameList; + var idList = this._idList; + var sourceFormat = provider.getSource().sourceFormat; + var isFormatOriginal = sourceFormat === SOURCE_FORMAT_ORIGINAL; + // Each data item is value + // [1, 2] + // 2 + // Bar chart, line chart which uses category axis + // only gives the 'y' value. 'x' value is the indices of category + // Use a tempValue to normalize the value to be a (x, y) value + // If dataItem is {name: ...} or {id: ...}, it has highest priority. + // This kind of ids and names are always stored `_nameList` and `_idList`. + if (isFormatOriginal && !provider.pure) { + var sharedDataItem = []; + for (var idx = start; idx < end; idx++) { + // NOTICE: Try not to write things into dataItem + var dataItem = provider.getItem(idx, sharedDataItem); + if (!this.hasItemOption && isDataItemOption(dataItem)) { + this.hasItemOption = true; + } + if (dataItem) { + var itemName = dataItem.name; + if (nameList[idx] == null && itemName != null) { + nameList[idx] = convertOptionIdName(itemName, null); + } + var itemId = dataItem.id; + if (idList[idx] == null && itemId != null) { + idList[idx] = convertOptionIdName(itemId, null); + } + } + } + } + if (this._shouldMakeIdFromName()) { + for (var idx = start; idx < end; idx++) { + makeIdFromName(this, idx); + } + } + prepareInvertedIndex(this); + }; + /** + * PENDING: In fact currently this function is only used to short-circuit + * the calling of `scale.unionExtentFromData` when data have been filtered by modules + * like "dataZoom". `scale.unionExtentFromData` is used to calculate data extent for series on + * an axis, but if a "axis related data filter module" is used, the extent of the axis have + * been fixed and no need to calling `scale.unionExtentFromData` actually. + * But if we add "custom data filter" in future, which is not "axis related", this method may + * be still needed. + * + * Optimize for the scenario that data is filtered by a given extent. + * Consider that if data amount is more than hundreds of thousand, + * extent calculation will cost more than 10ms and the cache will + * be erased because of the filtering. + */ + SeriesData.prototype.getApproximateExtent = function (dim) { + return this._approximateExtent[dim] || this._store.getDataExtent(this._getStoreDimIndex(dim)); + }; + /** + * Calculate extent on a filtered data might be time consuming. + * Approximate extent is only used for: calculate extent of filtered data outside. + */ + SeriesData.prototype.setApproximateExtent = function (extent, dim) { + dim = this.getDimension(dim); + this._approximateExtent[dim] = extent.slice(); + }; + SeriesData.prototype.getCalculationInfo = function (key) { + return this._calculationInfo[key]; + }; + SeriesData.prototype.setCalculationInfo = function (key, value) { + isObject$2(key) ? extend(this._calculationInfo, key) : this._calculationInfo[key] = value; + }; + /** + * @return Never be null/undefined. `number` will be converted to string. Because: + * In most cases, name is used in display, where returning a string is more convenient. + * In other cases, name is used in query (see `indexOfName`), where we can keep the + * rule that name `2` equals to name `'2'`. + */ + SeriesData.prototype.getName = function (idx) { + var rawIndex = this.getRawIndex(idx); + var name = this._nameList[rawIndex]; + if (name == null && this._nameDimIdx != null) { + name = getIdNameFromStore(this, this._nameDimIdx, rawIndex); + } + if (name == null) { + name = ''; + } + return name; + }; + SeriesData.prototype._getCategory = function (dimIdx, idx) { + var ordinal = this._store.get(dimIdx, idx); + var ordinalMeta = this._store.getOrdinalMeta(dimIdx); + if (ordinalMeta) { + return ordinalMeta.categories[ordinal]; + } + return ordinal; + }; + /** + * @return Never null/undefined. `number` will be converted to string. Because: + * In all cases having encountered at present, id is used in making diff comparison, which + * are usually based on hash map. We can keep the rule that the internal id are always string + * (treat `2` is the same as `'2'`) to make the related logic simple. + */ + SeriesData.prototype.getId = function (idx) { + return getId(this, this.getRawIndex(idx)); + }; + SeriesData.prototype.count = function () { + return this._store.count(); + }; + /** + * Get value. Return NaN if idx is out of range. + * + * @notice Should better to use `data.getStore().get(dimIndex, dataIdx)` instead. + */ + SeriesData.prototype.get = function (dim, idx) { + var store = this._store; + var dimInfo = this._dimInfos[dim]; + if (dimInfo) { + return store.get(dimInfo.storeDimIndex, idx); + } + }; + /** + * @notice Should better to use `data.getStore().getByRawIndex(dimIndex, dataIdx)` instead. + */ + SeriesData.prototype.getByRawIndex = function (dim, rawIdx) { + var store = this._store; + var dimInfo = this._dimInfos[dim]; + if (dimInfo) { + return store.getByRawIndex(dimInfo.storeDimIndex, rawIdx); + } + }; + SeriesData.prototype.getIndices = function () { + return this._store.getIndices(); + }; + SeriesData.prototype.getDataExtent = function (dim) { + return this._store.getDataExtent(this._getStoreDimIndex(dim)); + }; + SeriesData.prototype.getSum = function (dim) { + return this._store.getSum(this._getStoreDimIndex(dim)); + }; + SeriesData.prototype.getMedian = function (dim) { + return this._store.getMedian(this._getStoreDimIndex(dim)); + }; + SeriesData.prototype.getValues = function (dimensions, idx) { + var _this = this; + var store = this._store; + return isArray(dimensions) ? store.getValues(map$1(dimensions, function (dim) { + return _this._getStoreDimIndex(dim); + }), idx) : store.getValues(dimensions); + }; + /** + * If value is NaN. Including '-' + * Only check the coord dimensions. + */ + SeriesData.prototype.hasValue = function (idx) { + var dataDimIndicesOnCoord = this._dimSummary.dataDimIndicesOnCoord; + for (var i = 0, len = dataDimIndicesOnCoord.length; i < len; i++) { + // Ordinal type originally can be string or number. + // But when an ordinal type is used on coord, it can + // not be string but only number. So we can also use isNaN. + if (isNaN(this._store.get(dataDimIndicesOnCoord[i], idx))) { + return false; + } + } + return true; + }; + /** + * Retrieve the index with given name + */ + SeriesData.prototype.indexOfName = function (name) { + for (var i = 0, len = this._store.count(); i < len; i++) { + if (this.getName(i) === name) { + return i; + } + } + return -1; + }; + SeriesData.prototype.getRawIndex = function (idx) { + return this._store.getRawIndex(idx); + }; + SeriesData.prototype.indexOfRawIndex = function (rawIndex) { + return this._store.indexOfRawIndex(rawIndex); + }; + /** + * Only support the dimension which inverted index created. + * Do not support other cases until required. + * @param dim concrete dim + * @param value ordinal index + * @return rawIndex + */ + SeriesData.prototype.rawIndexOf = function (dim, value) { + var invertedIndices = dim && this._invertedIndicesMap[dim]; + if ("development" !== 'production') { + if (!invertedIndices) { + throw new Error('Do not supported yet'); + } + } + var rawIndex = invertedIndices[value]; + if (rawIndex == null || isNaN(rawIndex)) { + return INDEX_NOT_FOUND; + } + return rawIndex; + }; + /** + * Retrieve the index of nearest value + * @param dim + * @param value + * @param [maxDistance=Infinity] + * @return If and only if multiple indices has + * the same value, they are put to the result. + */ + SeriesData.prototype.indicesOfNearest = function (dim, value, maxDistance) { + return this._store.indicesOfNearest(this._getStoreDimIndex(dim), value, maxDistance); + }; + SeriesData.prototype.each = function (dims, cb, ctx) { + + if (isFunction(dims)) { + ctx = cb; + cb = dims; + dims = []; + } + // ctxCompat just for compat echarts3 + var fCtx = ctx || this; + var dimIndices = map$1(normalizeDimensions(dims), this._getStoreDimIndex, this); + this._store.each(dimIndices, fCtx ? bind(cb, fCtx) : cb); + }; + SeriesData.prototype.filterSelf = function (dims, cb, ctx) { + + if (isFunction(dims)) { + ctx = cb; + cb = dims; + dims = []; + } + // ctxCompat just for compat echarts3 + var fCtx = ctx || this; + var dimIndices = map$1(normalizeDimensions(dims), this._getStoreDimIndex, this); + this._store = this._store.filter(dimIndices, fCtx ? bind(cb, fCtx) : cb); + return this; + }; + /** + * Select data in range. (For optimization of filter) + * (Manually inline code, support 5 million data filtering in data zoom.) + */ + SeriesData.prototype.selectRange = function (range) { + + var _this = this; + var innerRange = {}; + var dims = keys(range); + each(dims, function (dim) { + var dimIdx = _this._getStoreDimIndex(dim); + innerRange[dimIdx] = range[dim]; + }); + this._store = this._store.selectRange(innerRange); + return this; + }; + /* eslint-enable max-len */ + SeriesData.prototype.mapArray = function (dims, cb, ctx) { + + if (isFunction(dims)) { + ctx = cb; + cb = dims; + dims = []; + } + // ctxCompat just for compat echarts3 + ctx = ctx || this; + var result = []; + this.each(dims, function () { + result.push(cb && cb.apply(this, arguments)); + }, ctx); + return result; + }; + SeriesData.prototype.map = function (dims, cb, ctx, ctxCompat) { + + // ctxCompat just for compat echarts3 + var fCtx = ctx || ctxCompat || this; + var dimIndices = map$1(normalizeDimensions(dims), this._getStoreDimIndex, this); + var list = cloneListForMapAndSample(this); + list._store = this._store.map(dimIndices, fCtx ? bind(cb, fCtx) : cb); + return list; + }; + SeriesData.prototype.modify = function (dims, cb, ctx, ctxCompat) { + var _this = this; + // ctxCompat just for compat echarts3 + var fCtx = ctx || ctxCompat || this; + if ("development" !== 'production') { + each(normalizeDimensions(dims), function (dim) { + var dimInfo = _this.getDimensionInfo(dim); + if (!dimInfo.isCalculationCoord) { + console.error('Danger: only stack dimension can be modified'); + } + }); + } + var dimIndices = map$1(normalizeDimensions(dims), this._getStoreDimIndex, this); + // If do shallow clone here, if there are too many stacked series, + // it still cost lots of memory, because `_store.dimensions` are not shared. + // We should consider there probably be shallow clone happen in each series + // in consequent filter/map. + this._store.modify(dimIndices, fCtx ? bind(cb, fCtx) : cb); + }; + /** + * Large data down sampling on given dimension + * @param sampleIndex Sample index for name and id + */ + SeriesData.prototype.downSample = function (dimension, rate, sampleValue, sampleIndex) { + var list = cloneListForMapAndSample(this); + list._store = this._store.downSample(this._getStoreDimIndex(dimension), rate, sampleValue, sampleIndex); + return list; + }; + /** + * Large data down sampling using largest-triangle-three-buckets + * @param {string} valueDimension + * @param {number} targetCount + */ + SeriesData.prototype.lttbDownSample = function (valueDimension, rate) { + var list = cloneListForMapAndSample(this); + list._store = this._store.lttbDownSample(this._getStoreDimIndex(valueDimension), rate); + return list; + }; + SeriesData.prototype.getRawDataItem = function (idx) { + return this._store.getRawDataItem(idx); + }; + /** + * Get model of one data item. + */ + // TODO: Type of data item + SeriesData.prototype.getItemModel = function (idx) { + var hostModel = this.hostModel; + var dataItem = this.getRawDataItem(idx); + return new Model(dataItem, hostModel, hostModel && hostModel.ecModel); + }; + /** + * Create a data differ + */ + SeriesData.prototype.diff = function (otherList) { + var thisList = this; + return new DataDiffer(otherList ? otherList.getStore().getIndices() : [], this.getStore().getIndices(), function (idx) { + return getId(otherList, idx); + }, function (idx) { + return getId(thisList, idx); + }); + }; + /** + * Get visual property. + */ + SeriesData.prototype.getVisual = function (key) { + var visual = this._visual; + return visual && visual[key]; + }; + SeriesData.prototype.setVisual = function (kvObj, val) { + this._visual = this._visual || {}; + if (isObject$2(kvObj)) { + extend(this._visual, kvObj); + } else { + this._visual[kvObj] = val; + } + }; + /** + * Get visual property of single data item + */ + // eslint-disable-next-line + SeriesData.prototype.getItemVisual = function (idx, key) { + var itemVisual = this._itemVisuals[idx]; + var val = itemVisual && itemVisual[key]; + if (val == null) { + // Use global visual property + return this.getVisual(key); + } + return val; + }; + /** + * If exists visual property of single data item + */ + SeriesData.prototype.hasItemVisual = function () { + return this._itemVisuals.length > 0; + }; + /** + * Make sure itemVisual property is unique + */ + // TODO: use key to save visual to reduce memory. + SeriesData.prototype.ensureUniqueItemVisual = function (idx, key) { + var itemVisuals = this._itemVisuals; + var itemVisual = itemVisuals[idx]; + if (!itemVisual) { + itemVisual = itemVisuals[idx] = {}; + } + var val = itemVisual[key]; + if (val == null) { + val = this.getVisual(key); + // TODO Performance? + if (isArray(val)) { + val = val.slice(); + } else if (isObject$2(val)) { + val = extend({}, val); + } + itemVisual[key] = val; + } + return val; + }; + // eslint-disable-next-line + SeriesData.prototype.setItemVisual = function (idx, key, value) { + var itemVisual = this._itemVisuals[idx] || {}; + this._itemVisuals[idx] = itemVisual; + if (isObject$2(key)) { + extend(itemVisual, key); + } else { + itemVisual[key] = value; + } + }; + /** + * Clear itemVisuals and list visual. + */ + SeriesData.prototype.clearAllVisual = function () { + this._visual = {}; + this._itemVisuals = []; + }; + SeriesData.prototype.setLayout = function (key, val) { + isObject$2(key) ? extend(this._layout, key) : this._layout[key] = val; + }; + /** + * Get layout property. + */ + SeriesData.prototype.getLayout = function (key) { + return this._layout[key]; + }; + /** + * Get layout of single data item + */ + SeriesData.prototype.getItemLayout = function (idx) { + return this._itemLayouts[idx]; + }; + /** + * Set layout of single data item + */ + SeriesData.prototype.setItemLayout = function (idx, layout, merge) { + this._itemLayouts[idx] = merge ? extend(this._itemLayouts[idx] || {}, layout) : layout; + }; + /** + * Clear all layout of single data item + */ + SeriesData.prototype.clearItemLayouts = function () { + this._itemLayouts.length = 0; + }; + /** + * Set graphic element relative to data. It can be set as null + */ + SeriesData.prototype.setItemGraphicEl = function (idx, el) { + var seriesIndex = this.hostModel && this.hostModel.seriesIndex; + setCommonECData(seriesIndex, this.dataType, idx, el); + this._graphicEls[idx] = el; + }; + SeriesData.prototype.getItemGraphicEl = function (idx) { + return this._graphicEls[idx]; + }; + SeriesData.prototype.eachItemGraphicEl = function (cb, context) { + each(this._graphicEls, function (el, idx) { + if (el) { + cb && cb.call(context, el, idx); + } + }); + }; + /** + * Shallow clone a new list except visual and layout properties, and graph elements. + * New list only change the indices. + */ + SeriesData.prototype.cloneShallow = function (list) { + if (!list) { + list = new SeriesData(this._schema ? this._schema : map$1(this.dimensions, this._getDimInfo, this), this.hostModel); + } + transferProperties(list, this); + list._store = this._store; + return list; + }; + /** + * Wrap some method to add more feature + */ + SeriesData.prototype.wrapMethod = function (methodName, injectFunction) { + var originalMethod = this[methodName]; + if (!isFunction(originalMethod)) { + return; + } + this.__wrappedMethods = this.__wrappedMethods || []; + this.__wrappedMethods.push(methodName); + this[methodName] = function () { + var res = originalMethod.apply(this, arguments); + return injectFunction.apply(this, [res].concat(slice(arguments))); + }; + }; + // ---------------------------------------------------------- + // A work around for internal method visiting private member. + // ---------------------------------------------------------- + SeriesData.internalField = function () { + prepareInvertedIndex = function (data) { + var invertedIndicesMap = data._invertedIndicesMap; + each(invertedIndicesMap, function (invertedIndices, dim) { + var dimInfo = data._dimInfos[dim]; + // Currently, only dimensions that has ordinalMeta can create inverted indices. + var ordinalMeta = dimInfo.ordinalMeta; + var store = data._store; + if (ordinalMeta) { + invertedIndices = invertedIndicesMap[dim] = new CtorInt32Array$1(ordinalMeta.categories.length); + // The default value of TypedArray is 0. To avoid miss + // mapping to 0, we should set it as INDEX_NOT_FOUND. + for (var i = 0; i < invertedIndices.length; i++) { + invertedIndices[i] = INDEX_NOT_FOUND; + } + for (var i = 0; i < store.count(); i++) { + // Only support the case that all values are distinct. + invertedIndices[store.get(dimInfo.storeDimIndex, i)] = i; + } + } + }); + }; + getIdNameFromStore = function (data, dimIdx, idx) { + return convertOptionIdName(data._getCategory(dimIdx, idx), null); + }; + /** + * @see the comment of `List['getId']`. + */ + getId = function (data, rawIndex) { + var id = data._idList[rawIndex]; + if (id == null && data._idDimIdx != null) { + id = getIdNameFromStore(data, data._idDimIdx, rawIndex); + } + if (id == null) { + id = ID_PREFIX + rawIndex; + } + return id; + }; + normalizeDimensions = function (dimensions) { + if (!isArray(dimensions)) { + dimensions = dimensions != null ? [dimensions] : []; + } + return dimensions; + }; + /** + * Data in excludeDimensions is copied, otherwise transferred. + */ + cloneListForMapAndSample = function (original) { + var list = new SeriesData(original._schema ? original._schema : map$1(original.dimensions, original._getDimInfo, original), original.hostModel); + // FIXME If needs stackedOn, value may already been stacked + transferProperties(list, original); + return list; + }; + transferProperties = function (target, source) { + each(TRANSFERABLE_PROPERTIES.concat(source.__wrappedMethods || []), function (propName) { + if (source.hasOwnProperty(propName)) { + target[propName] = source[propName]; + } + }); + target.__wrappedMethods = source.__wrappedMethods; + each(CLONE_PROPERTIES, function (propName) { + target[propName] = clone(source[propName]); + }); + target._calculationInfo = extend({}, source._calculationInfo); + }; + makeIdFromName = function (data, idx) { + var nameList = data._nameList; + var idList = data._idList; + var nameDimIdx = data._nameDimIdx; + var idDimIdx = data._idDimIdx; + var name = nameList[idx]; + var id = idList[idx]; + if (name == null && nameDimIdx != null) { + nameList[idx] = name = getIdNameFromStore(data, nameDimIdx, idx); + } + if (id == null && idDimIdx != null) { + idList[idx] = id = getIdNameFromStore(data, idDimIdx, idx); + } + if (id == null && name != null) { + var nameRepeatCount = data._nameRepeatCount; + var nmCnt = nameRepeatCount[name] = (nameRepeatCount[name] || 0) + 1; + id = name; + if (nmCnt > 1) { + id += '__ec__' + nmCnt; + } + idList[idx] = id; + } + }; + }(); + return SeriesData; + }(); + + /** + * For outside usage compat (like echarts-gl are using it). + */ + function createDimensions(source, opt) { + return prepareSeriesDataSchema(source, opt).dimensions; + } + /** + * This method builds the relationship between: + * + "what the coord sys or series requires (see `coordDimensions`)", + * + "what the user defines (in `encode` and `dimensions`, see `opt.dimensionsDefine` and `opt.encodeDefine`)" + * + "what the data source provids (see `source`)". + * + * Some guess strategy will be adapted if user does not define something. + * If no 'value' dimension specified, the first no-named dimension will be + * named as 'value'. + * + * @return The results are always sorted by `storeDimIndex` asc. + */ + function prepareSeriesDataSchema( + // TODO: TYPE completeDimensions type + source, opt) { + if (!isSourceInstance(source)) { + source = createSourceFromSeriesDataOption(source); + } + opt = opt || {}; + var sysDims = opt.coordDimensions || []; + var dimsDef = opt.dimensionsDefine || source.dimensionsDefine || []; + var coordDimNameMap = createHashMap(); + var resultList = []; + var dimCount = getDimCount(source, sysDims, dimsDef, opt.dimensionsCount); + // Try to ignore unused dimensions if sharing a high dimension datastore + // 30 is an experience value. + var omitUnusedDimensions = opt.canOmitUnusedDimensions && shouldOmitUnusedDimensions(dimCount); + var isUsingSourceDimensionsDef = dimsDef === source.dimensionsDefine; + var dataDimNameMap = isUsingSourceDimensionsDef ? ensureSourceDimNameMap(source) : createDimNameMap(dimsDef); + var encodeDef = opt.encodeDefine; + if (!encodeDef && opt.encodeDefaulter) { + encodeDef = opt.encodeDefaulter(source, dimCount); + } + var encodeDefMap = createHashMap(encodeDef); + var indicesMap = new CtorInt32Array(dimCount); + for (var i = 0; i < indicesMap.length; i++) { + indicesMap[i] = -1; + } + function getResultItem(dimIdx) { + var idx = indicesMap[dimIdx]; + if (idx < 0) { + var dimDefItemRaw = dimsDef[dimIdx]; + var dimDefItem = isObject(dimDefItemRaw) ? dimDefItemRaw : { + name: dimDefItemRaw + }; + var resultItem = new SeriesDimensionDefine(); + var userDimName = dimDefItem.name; + if (userDimName != null && dataDimNameMap.get(userDimName) != null) { + // Only if `series.dimensions` is defined in option + // displayName, will be set, and dimension will be displayed vertically in + // tooltip by default. + resultItem.name = resultItem.displayName = userDimName; + } + dimDefItem.type != null && (resultItem.type = dimDefItem.type); + dimDefItem.displayName != null && (resultItem.displayName = dimDefItem.displayName); + var newIdx = resultList.length; + indicesMap[dimIdx] = newIdx; + resultItem.storeDimIndex = dimIdx; + resultList.push(resultItem); + return resultItem; + } + return resultList[idx]; + } + if (!omitUnusedDimensions) { + for (var i = 0; i < dimCount; i++) { + getResultItem(i); + } + } + // Set `coordDim` and `coordDimIndex` by `encodeDefMap` and normalize `encodeDefMap`. + encodeDefMap.each(function (dataDimsRaw, coordDim) { + var dataDims = normalizeToArray(dataDimsRaw).slice(); + // Note: It is allowed that `dataDims.length` is `0`, e.g., options is + // `{encode: {x: -1, y: 1}}`. Should not filter anything in + // this case. + if (dataDims.length === 1 && !isString(dataDims[0]) && dataDims[0] < 0) { + encodeDefMap.set(coordDim, false); + return; + } + var validDataDims = encodeDefMap.set(coordDim, []); + each(dataDims, function (resultDimIdxOrName, idx) { + // The input resultDimIdx can be dim name or index. + var resultDimIdx = isString(resultDimIdxOrName) ? dataDimNameMap.get(resultDimIdxOrName) : resultDimIdxOrName; + if (resultDimIdx != null && resultDimIdx < dimCount) { + validDataDims[idx] = resultDimIdx; + applyDim(getResultItem(resultDimIdx), coordDim, idx); + } + }); + }); + // Apply templates and default order from `sysDims`. + var availDimIdx = 0; + each(sysDims, function (sysDimItemRaw) { + var coordDim; + var sysDimItemDimsDef; + var sysDimItemOtherDims; + var sysDimItem; + if (isString(sysDimItemRaw)) { + coordDim = sysDimItemRaw; + sysDimItem = {}; + } else { + sysDimItem = sysDimItemRaw; + coordDim = sysDimItem.name; + var ordinalMeta = sysDimItem.ordinalMeta; + sysDimItem.ordinalMeta = null; + sysDimItem = extend({}, sysDimItem); + sysDimItem.ordinalMeta = ordinalMeta; + // `coordDimIndex` should not be set directly. + sysDimItemDimsDef = sysDimItem.dimsDef; + sysDimItemOtherDims = sysDimItem.otherDims; + sysDimItem.name = sysDimItem.coordDim = sysDimItem.coordDimIndex = sysDimItem.dimsDef = sysDimItem.otherDims = null; + } + var dataDims = encodeDefMap.get(coordDim); + // negative resultDimIdx means no need to mapping. + if (dataDims === false) { + return; + } + dataDims = normalizeToArray(dataDims); + // dimensions provides default dim sequences. + if (!dataDims.length) { + for (var i = 0; i < (sysDimItemDimsDef && sysDimItemDimsDef.length || 1); i++) { + while (availDimIdx < dimCount && getResultItem(availDimIdx).coordDim != null) { + availDimIdx++; + } + availDimIdx < dimCount && dataDims.push(availDimIdx++); + } + } + // Apply templates. + each(dataDims, function (resultDimIdx, coordDimIndex) { + var resultItem = getResultItem(resultDimIdx); + // Coordinate system has a higher priority on dim type than source. + if (isUsingSourceDimensionsDef && sysDimItem.type != null) { + resultItem.type = sysDimItem.type; + } + applyDim(defaults(resultItem, sysDimItem), coordDim, coordDimIndex); + if (resultItem.name == null && sysDimItemDimsDef) { + var sysDimItemDimsDefItem = sysDimItemDimsDef[coordDimIndex]; + !isObject(sysDimItemDimsDefItem) && (sysDimItemDimsDefItem = { + name: sysDimItemDimsDefItem + }); + resultItem.name = resultItem.displayName = sysDimItemDimsDefItem.name; + resultItem.defaultTooltip = sysDimItemDimsDefItem.defaultTooltip; + } + // FIXME refactor, currently only used in case: {otherDims: {tooltip: false}} + sysDimItemOtherDims && defaults(resultItem.otherDims, sysDimItemOtherDims); + }); + }); + function applyDim(resultItem, coordDim, coordDimIndex) { + if (VISUAL_DIMENSIONS.get(coordDim) != null) { + resultItem.otherDims[coordDim] = coordDimIndex; + } else { + resultItem.coordDim = coordDim; + resultItem.coordDimIndex = coordDimIndex; + coordDimNameMap.set(coordDim, true); + } + } + // Make sure the first extra dim is 'value'. + var generateCoord = opt.generateCoord; + var generateCoordCount = opt.generateCoordCount; + var fromZero = generateCoordCount != null; + generateCoordCount = generateCoord ? generateCoordCount || 1 : 0; + var extra = generateCoord || 'value'; + function ifNoNameFillWithCoordName(resultItem) { + if (resultItem.name == null) { + // Duplication will be removed in the next step. + resultItem.name = resultItem.coordDim; + } + } + // Set dim `name` and other `coordDim` and other props. + if (!omitUnusedDimensions) { + for (var resultDimIdx = 0; resultDimIdx < dimCount; resultDimIdx++) { + var resultItem = getResultItem(resultDimIdx); + var coordDim = resultItem.coordDim; + if (coordDim == null) { + // TODO no need to generate coordDim for isExtraCoord? + resultItem.coordDim = genCoordDimName(extra, coordDimNameMap, fromZero); + resultItem.coordDimIndex = 0; + // Series specified generateCoord is using out. + if (!generateCoord || generateCoordCount <= 0) { + resultItem.isExtraCoord = true; + } + generateCoordCount--; + } + ifNoNameFillWithCoordName(resultItem); + if (resultItem.type == null && (guessOrdinal(source, resultDimIdx) === BE_ORDINAL.Must + // Consider the case: + // { + // dataset: {source: [ + // ['2001', 123], + // ['2002', 456], + // ... + // ['The others', 987], + // ]}, + // series: {type: 'pie'} + // } + // The first column should better be treated as a "ordinal" although it + // might not be detected as an "ordinal" by `guessOrdinal`. + || resultItem.isExtraCoord && (resultItem.otherDims.itemName != null || resultItem.otherDims.seriesName != null))) { + resultItem.type = 'ordinal'; + } + } + } else { + each(resultList, function (resultItem) { + // PENDING: guessOrdinal or let user specify type: 'ordinal' manually? + ifNoNameFillWithCoordName(resultItem); + }); + // Sort dimensions: there are some rule that use the last dim as label, + // and for some latter travel process easier. + resultList.sort(function (item0, item1) { + return item0.storeDimIndex - item1.storeDimIndex; + }); + } + removeDuplication(resultList); + return new SeriesDataSchema({ + source: source, + dimensions: resultList, + fullDimensionCount: dimCount, + dimensionOmitted: omitUnusedDimensions + }); + } + function removeDuplication(result) { + var duplicationMap = createHashMap(); + for (var i = 0; i < result.length; i++) { + var dim = result[i]; + var dimOriginalName = dim.name; + var count = duplicationMap.get(dimOriginalName) || 0; + if (count > 0) { + // Starts from 0. + dim.name = dimOriginalName + (count - 1); + } + count++; + duplicationMap.set(dimOriginalName, count); + } + } + // ??? TODO + // Originally detect dimCount by data[0]. Should we + // optimize it to only by sysDims and dimensions and encode. + // So only necessary dims will be initialized. + // But + // (1) custom series should be considered. where other dims + // may be visited. + // (2) sometimes user need to calculate bubble size or use visualMap + // on other dimensions besides coordSys needed. + // So, dims that is not used by system, should be shared in data store? + function getDimCount(source, sysDims, dimsDef, optDimCount) { + // Note that the result dimCount should not small than columns count + // of data, otherwise `dataDimNameMap` checking will be incorrect. + var dimCount = Math.max(source.dimensionsDetectedCount || 1, sysDims.length, dimsDef.length, optDimCount || 0); + each(sysDims, function (sysDimItem) { + var sysDimItemDimsDef; + if (isObject(sysDimItem) && (sysDimItemDimsDef = sysDimItem.dimsDef)) { + dimCount = Math.max(dimCount, sysDimItemDimsDef.length); + } + }); + return dimCount; + } + function genCoordDimName(name, map, fromZero) { + if (fromZero || map.hasKey(name)) { + var i = 0; + while (map.hasKey(name + i)) { + i++; + } + name += i; + } + map.set(name, true); + return name; + } + + /** + * @class + * For example: + * { + * coordSysName: 'cartesian2d', + * coordSysDims: ['x', 'y', ...], + * axisMap: HashMap({ + * x: xAxisModel, + * y: yAxisModel + * }), + * categoryAxisMap: HashMap({ + * x: xAxisModel, + * y: undefined + * }), + * // The index of the first category axis in `coordSysDims`. + * // `null/undefined` means no category axis exists. + * firstCategoryDimIndex: 1, + * // To replace user specified encode. + * } + */ + var CoordSysInfo = /** @class */function () { + function CoordSysInfo(coordSysName) { + this.coordSysDims = []; + this.axisMap = createHashMap(); + this.categoryAxisMap = createHashMap(); + this.coordSysName = coordSysName; + } + return CoordSysInfo; + }(); + function getCoordSysInfoBySeries(seriesModel) { + var coordSysName = seriesModel.get('coordinateSystem'); + var result = new CoordSysInfo(coordSysName); + var fetch = fetchers[coordSysName]; + if (fetch) { + fetch(seriesModel, result, result.axisMap, result.categoryAxisMap); + return result; + } + } + var fetchers = { + cartesian2d: function (seriesModel, result, axisMap, categoryAxisMap) { + var xAxisModel = seriesModel.getReferringComponents('xAxis', SINGLE_REFERRING).models[0]; + var yAxisModel = seriesModel.getReferringComponents('yAxis', SINGLE_REFERRING).models[0]; + if ("development" !== 'production') { + if (!xAxisModel) { + throw new Error('xAxis "' + retrieve(seriesModel.get('xAxisIndex'), seriesModel.get('xAxisId'), 0) + '" not found'); + } + if (!yAxisModel) { + throw new Error('yAxis "' + retrieve(seriesModel.get('xAxisIndex'), seriesModel.get('yAxisId'), 0) + '" not found'); + } + } + result.coordSysDims = ['x', 'y']; + axisMap.set('x', xAxisModel); + axisMap.set('y', yAxisModel); + if (isCategory(xAxisModel)) { + categoryAxisMap.set('x', xAxisModel); + result.firstCategoryDimIndex = 0; + } + if (isCategory(yAxisModel)) { + categoryAxisMap.set('y', yAxisModel); + result.firstCategoryDimIndex == null && (result.firstCategoryDimIndex = 1); + } + }, + singleAxis: function (seriesModel, result, axisMap, categoryAxisMap) { + var singleAxisModel = seriesModel.getReferringComponents('singleAxis', SINGLE_REFERRING).models[0]; + if ("development" !== 'production') { + if (!singleAxisModel) { + throw new Error('singleAxis should be specified.'); + } + } + result.coordSysDims = ['single']; + axisMap.set('single', singleAxisModel); + if (isCategory(singleAxisModel)) { + categoryAxisMap.set('single', singleAxisModel); + result.firstCategoryDimIndex = 0; + } + }, + polar: function (seriesModel, result, axisMap, categoryAxisMap) { + var polarModel = seriesModel.getReferringComponents('polar', SINGLE_REFERRING).models[0]; + var radiusAxisModel = polarModel.findAxisModel('radiusAxis'); + var angleAxisModel = polarModel.findAxisModel('angleAxis'); + if ("development" !== 'production') { + if (!angleAxisModel) { + throw new Error('angleAxis option not found'); + } + if (!radiusAxisModel) { + throw new Error('radiusAxis option not found'); + } + } + result.coordSysDims = ['radius', 'angle']; + axisMap.set('radius', radiusAxisModel); + axisMap.set('angle', angleAxisModel); + if (isCategory(radiusAxisModel)) { + categoryAxisMap.set('radius', radiusAxisModel); + result.firstCategoryDimIndex = 0; + } + if (isCategory(angleAxisModel)) { + categoryAxisMap.set('angle', angleAxisModel); + result.firstCategoryDimIndex == null && (result.firstCategoryDimIndex = 1); + } + }, + geo: function (seriesModel, result, axisMap, categoryAxisMap) { + result.coordSysDims = ['lng', 'lat']; + }, + parallel: function (seriesModel, result, axisMap, categoryAxisMap) { + var ecModel = seriesModel.ecModel; + var parallelModel = ecModel.getComponent('parallel', seriesModel.get('parallelIndex')); + var coordSysDims = result.coordSysDims = parallelModel.dimensions.slice(); + each(parallelModel.parallelAxisIndex, function (axisIndex, index) { + var axisModel = ecModel.getComponent('parallelAxis', axisIndex); + var axisDim = coordSysDims[index]; + axisMap.set(axisDim, axisModel); + if (isCategory(axisModel)) { + categoryAxisMap.set(axisDim, axisModel); + if (result.firstCategoryDimIndex == null) { + result.firstCategoryDimIndex = index; + } + } + }); + } + }; + function isCategory(axisModel) { + return axisModel.get('type') === 'category'; + } + + /** + * Note that it is too complicated to support 3d stack by value + * (have to create two-dimension inverted index), so in 3d case + * we just support that stacked by index. + * + * @param seriesModel + * @param dimensionsInput The same as the input of <module:echarts/data/SeriesData>. + * The input will be modified. + * @param opt + * @param opt.stackedCoordDimension Specify a coord dimension if needed. + * @param opt.byIndex=false + * @return calculationInfo + * { + * stackedDimension: string + * stackedByDimension: string + * isStackedByIndex: boolean + * stackedOverDimension: string + * stackResultDimension: string + * } + */ + function enableDataStack(seriesModel, dimensionsInput, opt) { + opt = opt || {}; + var byIndex = opt.byIndex; + var stackedCoordDimension = opt.stackedCoordDimension; + var dimensionDefineList; + var schema; + var store; + if (isLegacyDimensionsInput(dimensionsInput)) { + dimensionDefineList = dimensionsInput; + } else { + schema = dimensionsInput.schema; + dimensionDefineList = schema.dimensions; + store = dimensionsInput.store; + } + // Compatibal: when `stack` is set as '', do not stack. + var mayStack = !!(seriesModel && seriesModel.get('stack')); + var stackedByDimInfo; + var stackedDimInfo; + var stackResultDimension; + var stackedOverDimension; + each(dimensionDefineList, function (dimensionInfo, index) { + if (isString(dimensionInfo)) { + dimensionDefineList[index] = dimensionInfo = { + name: dimensionInfo + }; + } + if (mayStack && !dimensionInfo.isExtraCoord) { + // Find the first ordinal dimension as the stackedByDimInfo. + if (!byIndex && !stackedByDimInfo && dimensionInfo.ordinalMeta) { + stackedByDimInfo = dimensionInfo; + } + // Find the first stackable dimension as the stackedDimInfo. + if (!stackedDimInfo && dimensionInfo.type !== 'ordinal' && dimensionInfo.type !== 'time' && (!stackedCoordDimension || stackedCoordDimension === dimensionInfo.coordDim)) { + stackedDimInfo = dimensionInfo; + } + } + }); + if (stackedDimInfo && !byIndex && !stackedByDimInfo) { + // Compatible with previous design, value axis (time axis) only stack by index. + // It may make sense if the user provides elaborately constructed data. + byIndex = true; + } + // Add stack dimension, they can be both calculated by coordinate system in `unionExtent`. + // That put stack logic in List is for using conveniently in echarts extensions, but it + // might not be a good way. + if (stackedDimInfo) { + // Use a weird name that not duplicated with other names. + // Also need to use seriesModel.id as postfix because different + // series may share same data store. The stack dimension needs to be distinguished. + stackResultDimension = '__\0ecstackresult_' + seriesModel.id; + stackedOverDimension = '__\0ecstackedover_' + seriesModel.id; + // Create inverted index to fast query index by value. + if (stackedByDimInfo) { + stackedByDimInfo.createInvertedIndices = true; + } + var stackedDimCoordDim_1 = stackedDimInfo.coordDim; + var stackedDimType = stackedDimInfo.type; + var stackedDimCoordIndex_1 = 0; + each(dimensionDefineList, function (dimensionInfo) { + if (dimensionInfo.coordDim === stackedDimCoordDim_1) { + stackedDimCoordIndex_1++; + } + }); + var stackedOverDimensionDefine = { + name: stackResultDimension, + coordDim: stackedDimCoordDim_1, + coordDimIndex: stackedDimCoordIndex_1, + type: stackedDimType, + isExtraCoord: true, + isCalculationCoord: true, + storeDimIndex: dimensionDefineList.length + }; + var stackResultDimensionDefine = { + name: stackedOverDimension, + // This dimension contains stack base (generally, 0), so do not set it as + // `stackedDimCoordDim` to avoid extent calculation, consider log scale. + coordDim: stackedOverDimension, + coordDimIndex: stackedDimCoordIndex_1 + 1, + type: stackedDimType, + isExtraCoord: true, + isCalculationCoord: true, + storeDimIndex: dimensionDefineList.length + 1 + }; + if (schema) { + if (store) { + stackedOverDimensionDefine.storeDimIndex = store.ensureCalculationDimension(stackedOverDimension, stackedDimType); + stackResultDimensionDefine.storeDimIndex = store.ensureCalculationDimension(stackResultDimension, stackedDimType); + } + schema.appendCalculationDimension(stackedOverDimensionDefine); + schema.appendCalculationDimension(stackResultDimensionDefine); + } else { + dimensionDefineList.push(stackedOverDimensionDefine); + dimensionDefineList.push(stackResultDimensionDefine); + } + } + return { + stackedDimension: stackedDimInfo && stackedDimInfo.name, + stackedByDimension: stackedByDimInfo && stackedByDimInfo.name, + isStackedByIndex: byIndex, + stackedOverDimension: stackedOverDimension, + stackResultDimension: stackResultDimension + }; + } + function isLegacyDimensionsInput(dimensionsInput) { + return !isSeriesDataSchema(dimensionsInput.schema); + } + function isDimensionStacked(data, stackedDim) { + // Each single series only maps to one pair of axis. So we do not need to + // check stackByDim, whatever stacked by a dimension or stacked by index. + return !!stackedDim && stackedDim === data.getCalculationInfo('stackedDimension'); + } + function getStackedDimension(data, targetDim) { + return isDimensionStacked(data, targetDim) ? data.getCalculationInfo('stackResultDimension') : targetDim; + } + + function getCoordSysDimDefs(seriesModel, coordSysInfo) { + var coordSysName = seriesModel.get('coordinateSystem'); + var registeredCoordSys = CoordinateSystemManager.get(coordSysName); + var coordSysDimDefs; + if (coordSysInfo && coordSysInfo.coordSysDims) { + coordSysDimDefs = map(coordSysInfo.coordSysDims, function (dim) { + var dimInfo = { + name: dim + }; + var axisModel = coordSysInfo.axisMap.get(dim); + if (axisModel) { + var axisType = axisModel.get('type'); + dimInfo.type = getDimensionTypeByAxis(axisType); + } + return dimInfo; + }); + } + if (!coordSysDimDefs) { + // Get dimensions from registered coordinate system + coordSysDimDefs = registeredCoordSys && (registeredCoordSys.getDimensionsInfo ? registeredCoordSys.getDimensionsInfo() : registeredCoordSys.dimensions.slice()) || ['x', 'y']; + } + return coordSysDimDefs; + } + function injectOrdinalMeta(dimInfoList, createInvertedIndices, coordSysInfo) { + var firstCategoryDimIndex; + var hasNameEncode; + coordSysInfo && each(dimInfoList, function (dimInfo, dimIndex) { + var coordDim = dimInfo.coordDim; + var categoryAxisModel = coordSysInfo.categoryAxisMap.get(coordDim); + if (categoryAxisModel) { + if (firstCategoryDimIndex == null) { + firstCategoryDimIndex = dimIndex; + } + dimInfo.ordinalMeta = categoryAxisModel.getOrdinalMeta(); + if (createInvertedIndices) { + dimInfo.createInvertedIndices = true; + } + } + if (dimInfo.otherDims.itemName != null) { + hasNameEncode = true; + } + }); + if (!hasNameEncode && firstCategoryDimIndex != null) { + dimInfoList[firstCategoryDimIndex].otherDims.itemName = 0; + } + return firstCategoryDimIndex; + } + /** + * Caution: there are side effects to `sourceManager` in this method. + * Should better only be called in `Series['getInitialData']`. + */ + function createSeriesData(sourceRaw, seriesModel, opt) { + opt = opt || {}; + var sourceManager = seriesModel.getSourceManager(); + var source; + var isOriginalSource = false; + if (sourceRaw) { + isOriginalSource = true; + source = createSourceFromSeriesDataOption(sourceRaw); + } else { + source = sourceManager.getSource(); + // Is series.data. not dataset. + isOriginalSource = source.sourceFormat === SOURCE_FORMAT_ORIGINAL; + } + var coordSysInfo = getCoordSysInfoBySeries(seriesModel); + var coordSysDimDefs = getCoordSysDimDefs(seriesModel, coordSysInfo); + var useEncodeDefaulter = opt.useEncodeDefaulter; + var encodeDefaulter = isFunction(useEncodeDefaulter) ? useEncodeDefaulter : useEncodeDefaulter ? curry(makeSeriesEncodeForAxisCoordSys, coordSysDimDefs, seriesModel) : null; + var createDimensionOptions = { + coordDimensions: coordSysDimDefs, + generateCoord: opt.generateCoord, + encodeDefine: seriesModel.getEncode(), + encodeDefaulter: encodeDefaulter, + canOmitUnusedDimensions: !isOriginalSource + }; + var schema = prepareSeriesDataSchema(source, createDimensionOptions); + var firstCategoryDimIndex = injectOrdinalMeta(schema.dimensions, opt.createInvertedIndices, coordSysInfo); + var store = !isOriginalSource ? sourceManager.getSharedDataStore(schema) : null; + var stackCalculationInfo = enableDataStack(seriesModel, { + schema: schema, + store: store + }); + var data = new SeriesData(schema, seriesModel); + data.setCalculationInfo(stackCalculationInfo); + var dimValueGetter = firstCategoryDimIndex != null && isNeedCompleteOrdinalData(source) ? function (itemOpt, dimName, dataIndex, dimIndex) { + // Use dataIndex as ordinal value in categoryAxis + return dimIndex === firstCategoryDimIndex ? dataIndex : this.defaultDimValueGetter(itemOpt, dimName, dataIndex, dimIndex); + } : null; + data.hasItemOption = false; + data.initData( + // Try to reuse the data store in sourceManager if using dataset. + isOriginalSource ? source : store, null, dimValueGetter); + return data; + } + function isNeedCompleteOrdinalData(source) { + if (source.sourceFormat === SOURCE_FORMAT_ORIGINAL) { + var sampleItem = firstDataNotNull(source.data || []); + return !isArray(getDataItemValue(sampleItem)); + } + } + function firstDataNotNull(arr) { + var i = 0; + while (i < arr.length && arr[i] == null) { + i++; + } + return arr[i]; + } + + var Scale = /** @class */function () { + function Scale(setting) { + this._setting = setting || {}; + this._extent = [Infinity, -Infinity]; + } + Scale.prototype.getSetting = function (name) { + return this._setting[name]; + }; + /** + * Set extent from data + */ + Scale.prototype.unionExtent = function (other) { + var extent = this._extent; + other[0] < extent[0] && (extent[0] = other[0]); + other[1] > extent[1] && (extent[1] = other[1]); + // not setExtent because in log axis it may transformed to power + // this.setExtent(extent[0], extent[1]); + }; + /** + * Set extent from data + */ + Scale.prototype.unionExtentFromData = function (data, dim) { + this.unionExtent(data.getApproximateExtent(dim)); + }; + /** + * Get extent + * + * Extent is always in increase order. + */ + Scale.prototype.getExtent = function () { + return this._extent.slice(); + }; + /** + * Set extent + */ + Scale.prototype.setExtent = function (start, end) { + var thisExtent = this._extent; + if (!isNaN(start)) { + thisExtent[0] = start; + } + if (!isNaN(end)) { + thisExtent[1] = end; + } + }; + /** + * If value is in extent range + */ + Scale.prototype.isInExtentRange = function (value) { + return this._extent[0] <= value && this._extent[1] >= value; + }; + /** + * When axis extent depends on data and no data exists, + * axis ticks should not be drawn, which is named 'blank'. + */ + Scale.prototype.isBlank = function () { + return this._isBlank; + }; + /** + * When axis extent depends on data and no data exists, + * axis ticks should not be drawn, which is named 'blank'. + */ + Scale.prototype.setBlank = function (isBlank) { + this._isBlank = isBlank; + }; + return Scale; + }(); + enableClassManagement(Scale); + + var uidBase = 0; + var OrdinalMeta = /** @class */function () { + function OrdinalMeta(opt) { + this.categories = opt.categories || []; + this._needCollect = opt.needCollect; + this._deduplication = opt.deduplication; + this.uid = ++uidBase; + } + OrdinalMeta.createByAxisModel = function (axisModel) { + var option = axisModel.option; + var data = option.data; + var categories = data && map(data, getName); + return new OrdinalMeta({ + categories: categories, + needCollect: !categories, + // deduplication is default in axis. + deduplication: option.dedplication !== false + }); + }; + OrdinalMeta.prototype.getOrdinal = function (category) { + // @ts-ignore + return this._getOrCreateMap().get(category); + }; + /** + * @return The ordinal. If not found, return NaN. + */ + OrdinalMeta.prototype.parseAndCollect = function (category) { + var index; + var needCollect = this._needCollect; + // The value of category dim can be the index of the given category set. + // This feature is only supported when !needCollect, because we should + // consider a common case: a value is 2017, which is a number but is + // expected to be tread as a category. This case usually happen in dataset, + // where it happent to be no need of the index feature. + if (!isString(category) && !needCollect) { + return category; + } + // Optimize for the scenario: + // category is ['2012-01-01', '2012-01-02', ...], where the input + // data has been ensured not duplicate and is large data. + // Notice, if a dataset dimension provide categroies, usually echarts + // should remove duplication except user tell echarts dont do that + // (set axis.deduplication = false), because echarts do not know whether + // the values in the category dimension has duplication (consider the + // parallel-aqi example) + if (needCollect && !this._deduplication) { + index = this.categories.length; + this.categories[index] = category; + return index; + } + var map = this._getOrCreateMap(); + // @ts-ignore + index = map.get(category); + if (index == null) { + if (needCollect) { + index = this.categories.length; + this.categories[index] = category; + // @ts-ignore + map.set(category, index); + } else { + index = NaN; + } + } + return index; + }; + // Consider big data, do not create map until needed. + OrdinalMeta.prototype._getOrCreateMap = function () { + return this._map || (this._map = createHashMap(this.categories)); + }; + return OrdinalMeta; + }(); + function getName(obj) { + if (isObject(obj) && obj.value != null) { + return obj.value; + } else { + return obj + ''; + } + } + + function isValueNice(val) { + var exp10 = Math.pow(10, quantityExponent(Math.abs(val))); + var f = Math.abs(val / exp10); + return f === 0 || f === 1 || f === 2 || f === 3 || f === 5; + } + function isIntervalOrLogScale(scale) { + return scale.type === 'interval' || scale.type === 'log'; + } + /** + * @param extent Both extent[0] and extent[1] should be valid number. + * Should be extent[0] < extent[1]. + * @param splitNumber splitNumber should be >= 1. + */ + function intervalScaleNiceTicks(extent, splitNumber, minInterval, maxInterval) { + var result = {}; + var span = extent[1] - extent[0]; + var interval = result.interval = nice(span / splitNumber, true); + if (minInterval != null && interval < minInterval) { + interval = result.interval = minInterval; + } + if (maxInterval != null && interval > maxInterval) { + interval = result.interval = maxInterval; + } + // Tow more digital for tick. + var precision = result.intervalPrecision = getIntervalPrecision(interval); + // Niced extent inside original extent + var niceTickExtent = result.niceTickExtent = [round(Math.ceil(extent[0] / interval) * interval, precision), round(Math.floor(extent[1] / interval) * interval, precision)]; + fixExtent(niceTickExtent, extent); + return result; + } + function increaseInterval(interval) { + var exp10 = Math.pow(10, quantityExponent(interval)); + // Increase interval + var f = interval / exp10; + if (!f) { + f = 1; + } else if (f === 2) { + f = 3; + } else if (f === 3) { + f = 5; + } else { + // f is 1 or 5 + f *= 2; + } + return round(f * exp10); + } + /** + * @return interval precision + */ + function getIntervalPrecision(interval) { + // Tow more digital for tick. + return getPrecision(interval) + 2; + } + function clamp(niceTickExtent, idx, extent) { + niceTickExtent[idx] = Math.max(Math.min(niceTickExtent[idx], extent[1]), extent[0]); + } + // In some cases (e.g., splitNumber is 1), niceTickExtent may be out of extent. + function fixExtent(niceTickExtent, extent) { + !isFinite(niceTickExtent[0]) && (niceTickExtent[0] = extent[0]); + !isFinite(niceTickExtent[1]) && (niceTickExtent[1] = extent[1]); + clamp(niceTickExtent, 0, extent); + clamp(niceTickExtent, 1, extent); + if (niceTickExtent[0] > niceTickExtent[1]) { + niceTickExtent[0] = niceTickExtent[1]; + } + } + function contain$1(val, extent) { + return val >= extent[0] && val <= extent[1]; + } + function normalize$1(val, extent) { + if (extent[1] === extent[0]) { + return 0.5; + } + return (val - extent[0]) / (extent[1] - extent[0]); + } + function scale$2(val, extent) { + return val * (extent[1] - extent[0]) + extent[0]; + } + + var OrdinalScale = /** @class */function (_super) { + __extends(OrdinalScale, _super); + function OrdinalScale(setting) { + var _this = _super.call(this, setting) || this; + _this.type = 'ordinal'; + var ordinalMeta = _this.getSetting('ordinalMeta'); + // Caution: Should not use instanceof, consider ec-extensions using + // import approach to get OrdinalMeta class. + if (!ordinalMeta) { + ordinalMeta = new OrdinalMeta({}); + } + if (isArray(ordinalMeta)) { + ordinalMeta = new OrdinalMeta({ + categories: map(ordinalMeta, function (item) { + return isObject(item) ? item.value : item; + }) + }); + } + _this._ordinalMeta = ordinalMeta; + _this._extent = _this.getSetting('extent') || [0, ordinalMeta.categories.length - 1]; + return _this; + } + OrdinalScale.prototype.parse = function (val) { + // Caution: Math.round(null) will return `0` rather than `NaN` + if (val == null) { + return NaN; + } + return isString(val) ? this._ordinalMeta.getOrdinal(val) + // val might be float. + : Math.round(val); + }; + OrdinalScale.prototype.contain = function (rank) { + rank = this.parse(rank); + return contain$1(rank, this._extent) && this._ordinalMeta.categories[rank] != null; + }; + /** + * Normalize given rank or name to linear [0, 1] + * @param val raw ordinal number. + * @return normalized value in [0, 1]. + */ + OrdinalScale.prototype.normalize = function (val) { + val = this._getTickNumber(this.parse(val)); + return normalize$1(val, this._extent); + }; + /** + * @param val normalized value in [0, 1]. + * @return raw ordinal number. + */ + OrdinalScale.prototype.scale = function (val) { + val = Math.round(scale$2(val, this._extent)); + return this.getRawOrdinalNumber(val); + }; + OrdinalScale.prototype.getTicks = function () { + var ticks = []; + var extent = this._extent; + var rank = extent[0]; + while (rank <= extent[1]) { + ticks.push({ + value: rank + }); + rank++; + } + return ticks; + }; + OrdinalScale.prototype.getMinorTicks = function (splitNumber) { + // Not support. + return; + }; + /** + * @see `Ordinal['_ordinalNumbersByTick']` + */ + OrdinalScale.prototype.setSortInfo = function (info) { + if (info == null) { + this._ordinalNumbersByTick = this._ticksByOrdinalNumber = null; + return; + } + var infoOrdinalNumbers = info.ordinalNumbers; + var ordinalsByTick = this._ordinalNumbersByTick = []; + var ticksByOrdinal = this._ticksByOrdinalNumber = []; + // Unnecessary support negative tick in `realtimeSort`. + var tickNum = 0; + var allCategoryLen = this._ordinalMeta.categories.length; + for (var len = Math.min(allCategoryLen, infoOrdinalNumbers.length); tickNum < len; ++tickNum) { + var ordinalNumber = infoOrdinalNumbers[tickNum]; + ordinalsByTick[tickNum] = ordinalNumber; + ticksByOrdinal[ordinalNumber] = tickNum; + } + // Handle that `series.data` only covers part of the `axis.category.data`. + var unusedOrdinal = 0; + for (; tickNum < allCategoryLen; ++tickNum) { + while (ticksByOrdinal[unusedOrdinal] != null) { + unusedOrdinal++; + } + ordinalsByTick.push(unusedOrdinal); + ticksByOrdinal[unusedOrdinal] = tickNum; + } + }; + OrdinalScale.prototype._getTickNumber = function (ordinal) { + var ticksByOrdinalNumber = this._ticksByOrdinalNumber; + // also support ordinal out of range of `ordinalMeta.categories.length`, + // where ordinal numbers are used as tick value directly. + return ticksByOrdinalNumber && ordinal >= 0 && ordinal < ticksByOrdinalNumber.length ? ticksByOrdinalNumber[ordinal] : ordinal; + }; + /** + * @usage + * ```js + * const ordinalNumber = ordinalScale.getRawOrdinalNumber(tickVal); + * + * // case0 + * const rawOrdinalValue = axisModel.getCategories()[ordinalNumber]; + * // case1 + * const rawOrdinalValue = this._ordinalMeta.categories[ordinalNumber]; + * // case2 + * const coord = axis.dataToCoord(ordinalNumber); + * ``` + * + * @param {OrdinalNumber} tickNumber index of display + */ + OrdinalScale.prototype.getRawOrdinalNumber = function (tickNumber) { + var ordinalNumbersByTick = this._ordinalNumbersByTick; + // tickNumber may be out of range, e.g., when axis max is larger than `ordinalMeta.categories.length`., + // where ordinal numbers are used as tick value directly. + return ordinalNumbersByTick && tickNumber >= 0 && tickNumber < ordinalNumbersByTick.length ? ordinalNumbersByTick[tickNumber] : tickNumber; + }; + /** + * Get item on tick + */ + OrdinalScale.prototype.getLabel = function (tick) { + if (!this.isBlank()) { + var ordinalNumber = this.getRawOrdinalNumber(tick.value); + var cateogry = this._ordinalMeta.categories[ordinalNumber]; + // Note that if no data, ordinalMeta.categories is an empty array. + // Return empty if it's not exist. + return cateogry == null ? '' : cateogry + ''; + } + }; + OrdinalScale.prototype.count = function () { + return this._extent[1] - this._extent[0] + 1; + }; + OrdinalScale.prototype.unionExtentFromData = function (data, dim) { + this.unionExtent(data.getApproximateExtent(dim)); + }; + /** + * @override + * If value is in extent range + */ + OrdinalScale.prototype.isInExtentRange = function (value) { + value = this._getTickNumber(value); + return this._extent[0] <= value && this._extent[1] >= value; + }; + OrdinalScale.prototype.getOrdinalMeta = function () { + return this._ordinalMeta; + }; + OrdinalScale.prototype.calcNiceTicks = function () {}; + OrdinalScale.prototype.calcNiceExtent = function () {}; + OrdinalScale.type = 'ordinal'; + return OrdinalScale; + }(Scale); + Scale.registerClass(OrdinalScale); + + var roundNumber = round; + var IntervalScale = /** @class */function (_super) { + __extends(IntervalScale, _super); + function IntervalScale() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = 'interval'; + // Step is calculated in adjustExtent. + _this._interval = 0; + _this._intervalPrecision = 2; + return _this; + } + IntervalScale.prototype.parse = function (val) { + return val; + }; + IntervalScale.prototype.contain = function (val) { + return contain$1(val, this._extent); + }; + IntervalScale.prototype.normalize = function (val) { + return normalize$1(val, this._extent); + }; + IntervalScale.prototype.scale = function (val) { + return scale$2(val, this._extent); + }; + IntervalScale.prototype.setExtent = function (start, end) { + var thisExtent = this._extent; + // start,end may be a Number like '25',so... + if (!isNaN(start)) { + thisExtent[0] = parseFloat(start); + } + if (!isNaN(end)) { + thisExtent[1] = parseFloat(end); + } + }; + IntervalScale.prototype.unionExtent = function (other) { + var extent = this._extent; + other[0] < extent[0] && (extent[0] = other[0]); + other[1] > extent[1] && (extent[1] = other[1]); + // unionExtent may called by it's sub classes + this.setExtent(extent[0], extent[1]); + }; + IntervalScale.prototype.getInterval = function () { + return this._interval; + }; + IntervalScale.prototype.setInterval = function (interval) { + this._interval = interval; + // Dropped auto calculated niceExtent and use user-set extent. + // We assume user wants to set both interval, min, max to get a better result. + this._niceExtent = this._extent.slice(); + this._intervalPrecision = getIntervalPrecision(interval); + }; + /** + * @param expandToNicedExtent Whether expand the ticks to niced extent. + */ + IntervalScale.prototype.getTicks = function (expandToNicedExtent) { + var interval = this._interval; + var extent = this._extent; + var niceTickExtent = this._niceExtent; + var intervalPrecision = this._intervalPrecision; + var ticks = []; + // If interval is 0, return []; + if (!interval) { + return ticks; + } + // Consider this case: using dataZoom toolbox, zoom and zoom. + var safeLimit = 10000; + if (extent[0] < niceTickExtent[0]) { + if (expandToNicedExtent) { + ticks.push({ + value: roundNumber(niceTickExtent[0] - interval, intervalPrecision) + }); + } else { + ticks.push({ + value: extent[0] + }); + } + } + var tick = niceTickExtent[0]; + while (tick <= niceTickExtent[1]) { + ticks.push({ + value: tick + }); + // Avoid rounding error + tick = roundNumber(tick + interval, intervalPrecision); + if (tick === ticks[ticks.length - 1].value) { + // Consider out of safe float point, e.g., + // -3711126.9907707 + 2e-10 === -3711126.9907707 + break; + } + if (ticks.length > safeLimit) { + return []; + } + } + // Consider this case: the last item of ticks is smaller + // than niceTickExtent[1] and niceTickExtent[1] === extent[1]. + var lastNiceTick = ticks.length ? ticks[ticks.length - 1].value : niceTickExtent[1]; + if (extent[1] > lastNiceTick) { + if (expandToNicedExtent) { + ticks.push({ + value: roundNumber(lastNiceTick + interval, intervalPrecision) + }); + } else { + ticks.push({ + value: extent[1] + }); + } + } + return ticks; + }; + IntervalScale.prototype.getMinorTicks = function (splitNumber) { + var ticks = this.getTicks(true); + var minorTicks = []; + var extent = this.getExtent(); + for (var i = 1; i < ticks.length; i++) { + var nextTick = ticks[i]; + var prevTick = ticks[i - 1]; + var count = 0; + var minorTicksGroup = []; + var interval = nextTick.value - prevTick.value; + var minorInterval = interval / splitNumber; + while (count < splitNumber - 1) { + var minorTick = roundNumber(prevTick.value + (count + 1) * minorInterval); + // For the first and last interval. The count may be less than splitNumber. + if (minorTick > extent[0] && minorTick < extent[1]) { + minorTicksGroup.push(minorTick); + } + count++; + } + minorTicks.push(minorTicksGroup); + } + return minorTicks; + }; + /** + * @param opt.precision If 'auto', use nice presision. + * @param opt.pad returns 1.50 but not 1.5 if precision is 2. + */ + IntervalScale.prototype.getLabel = function (data, opt) { + if (data == null) { + return ''; + } + var precision = opt && opt.precision; + if (precision == null) { + precision = getPrecision(data.value) || 0; + } else if (precision === 'auto') { + // Should be more precise then tick. + precision = this._intervalPrecision; + } + // (1) If `precision` is set, 12.005 should be display as '12.00500'. + // (2) Use roundNumber (toFixed) to avoid scientific notation like '3.5e-7'. + var dataNum = roundNumber(data.value, precision, true); + return addCommas(dataNum); + }; + /** + * @param splitNumber By default `5`. + */ + IntervalScale.prototype.calcNiceTicks = function (splitNumber, minInterval, maxInterval) { + splitNumber = splitNumber || 5; + var extent = this._extent; + var span = extent[1] - extent[0]; + if (!isFinite(span)) { + return; + } + // User may set axis min 0 and data are all negative + // FIXME If it needs to reverse ? + if (span < 0) { + span = -span; + extent.reverse(); + } + var result = intervalScaleNiceTicks(extent, splitNumber, minInterval, maxInterval); + this._intervalPrecision = result.intervalPrecision; + this._interval = result.interval; + this._niceExtent = result.niceTickExtent; + }; + IntervalScale.prototype.calcNiceExtent = function (opt) { + var extent = this._extent; + // If extent start and end are same, expand them + if (extent[0] === extent[1]) { + if (extent[0] !== 0) { + // Expand extent + // Note that extents can be both negative. See #13154 + var expandSize = Math.abs(extent[0]); + // In the fowllowing case + // Axis has been fixed max 100 + // Plus data are all 100 and axis extent are [100, 100]. + // Extend to the both side will cause expanded max is larger than fixed max. + // So only expand to the smaller side. + if (!opt.fixMax) { + extent[1] += expandSize / 2; + extent[0] -= expandSize / 2; + } else { + extent[0] -= expandSize / 2; + } + } else { + extent[1] = 1; + } + } + var span = extent[1] - extent[0]; + // If there are no data and extent are [Infinity, -Infinity] + if (!isFinite(span)) { + extent[0] = 0; + extent[1] = 1; + } + this.calcNiceTicks(opt.splitNumber, opt.minInterval, opt.maxInterval); + // let extent = this._extent; + var interval = this._interval; + if (!opt.fixMin) { + extent[0] = roundNumber(Math.floor(extent[0] / interval) * interval); + } + if (!opt.fixMax) { + extent[1] = roundNumber(Math.ceil(extent[1] / interval) * interval); + } + }; + IntervalScale.prototype.setNiceExtent = function (min, max) { + this._niceExtent = [min, max]; + }; + IntervalScale.type = 'interval'; + return IntervalScale; + }(Scale); + Scale.registerClass(IntervalScale); + + /* global Float32Array */ + var supportFloat32Array = typeof Float32Array !== 'undefined'; + var Float32ArrayCtor = !supportFloat32Array ? Array : Float32Array; + function createFloat32Array(arg) { + if (isArray(arg)) { + // Return self directly if don't support TypedArray. + return supportFloat32Array ? new Float32Array(arg) : arg; + } + // Else is number + return new Float32ArrayCtor(arg); + } + + var STACK_PREFIX = '__ec_stack_'; + function getSeriesStackId(seriesModel) { + return seriesModel.get('stack') || STACK_PREFIX + seriesModel.seriesIndex; + } + function getAxisKey(axis) { + return axis.dim + axis.index; + } + /** + * @return {Object} {width, offset, offsetCenter} If axis.type is not 'category', return undefined. + */ + function getLayoutOnAxis(opt) { + var params = []; + var baseAxis = opt.axis; + var axisKey = 'axis0'; + if (baseAxis.type !== 'category') { + return; + } + var bandWidth = baseAxis.getBandWidth(); + for (var i = 0; i < opt.count || 0; i++) { + params.push(defaults({ + bandWidth: bandWidth, + axisKey: axisKey, + stackId: STACK_PREFIX + i + }, opt)); + } + var widthAndOffsets = doCalBarWidthAndOffset(params); + var result = []; + for (var i = 0; i < opt.count; i++) { + var item = widthAndOffsets[axisKey][STACK_PREFIX + i]; + item.offsetCenter = item.offset + item.width / 2; + result.push(item); + } + return result; + } + function prepareLayoutBarSeries(seriesType, ecModel) { + var seriesModels = []; + ecModel.eachSeriesByType(seriesType, function (seriesModel) { + // Check series coordinate, do layout for cartesian2d only + if (isOnCartesian(seriesModel)) { + seriesModels.push(seriesModel); + } + }); + return seriesModels; + } + /** + * Map from (baseAxis.dim + '_' + baseAxis.index) to min gap of two adjacent + * values. + * This works for time axes, value axes, and log axes. + * For a single time axis, return value is in the form like + * {'x_0': [1000000]}. + * The value of 1000000 is in milliseconds. + */ + function getValueAxesMinGaps(barSeries) { + /** + * Map from axis.index to values. + * For a single time axis, axisValues is in the form like + * {'x_0': [1495555200000, 1495641600000, 1495728000000]}. + * Items in axisValues[x], e.g. 1495555200000, are time values of all + * series. + */ + var axisValues = {}; + each(barSeries, function (seriesModel) { + var cartesian = seriesModel.coordinateSystem; + var baseAxis = cartesian.getBaseAxis(); + if (baseAxis.type !== 'time' && baseAxis.type !== 'value') { + return; + } + var data = seriesModel.getData(); + var key = baseAxis.dim + '_' + baseAxis.index; + var dimIdx = data.getDimensionIndex(data.mapDimension(baseAxis.dim)); + var store = data.getStore(); + for (var i = 0, cnt = store.count(); i < cnt; ++i) { + var value = store.get(dimIdx, i); + if (!axisValues[key]) { + // No previous data for the axis + axisValues[key] = [value]; + } else { + // No value in previous series + axisValues[key].push(value); + } + // Ignore duplicated time values in the same axis + } + }); + + var axisMinGaps = {}; + for (var key in axisValues) { + if (axisValues.hasOwnProperty(key)) { + var valuesInAxis = axisValues[key]; + if (valuesInAxis) { + // Sort axis values into ascending order to calculate gaps + valuesInAxis.sort(function (a, b) { + return a - b; + }); + var min = null; + for (var j = 1; j < valuesInAxis.length; ++j) { + var delta = valuesInAxis[j] - valuesInAxis[j - 1]; + if (delta > 0) { + // Ignore 0 delta because they are of the same axis value + min = min === null ? delta : Math.min(min, delta); + } + } + // Set to null if only have one data + axisMinGaps[key] = min; + } + } + } + return axisMinGaps; + } + function makeColumnLayout(barSeries) { + var axisMinGaps = getValueAxesMinGaps(barSeries); + var seriesInfoList = []; + each(barSeries, function (seriesModel) { + var cartesian = seriesModel.coordinateSystem; + var baseAxis = cartesian.getBaseAxis(); + var axisExtent = baseAxis.getExtent(); + var bandWidth; + if (baseAxis.type === 'category') { + bandWidth = baseAxis.getBandWidth(); + } else if (baseAxis.type === 'value' || baseAxis.type === 'time') { + var key = baseAxis.dim + '_' + baseAxis.index; + var minGap = axisMinGaps[key]; + var extentSpan = Math.abs(axisExtent[1] - axisExtent[0]); + var scale = baseAxis.scale.getExtent(); + var scaleSpan = Math.abs(scale[1] - scale[0]); + bandWidth = minGap ? extentSpan / scaleSpan * minGap : extentSpan; // When there is only one data value + } else { + var data = seriesModel.getData(); + bandWidth = Math.abs(axisExtent[1] - axisExtent[0]) / data.count(); + } + var barWidth = parsePercent$1(seriesModel.get('barWidth'), bandWidth); + var barMaxWidth = parsePercent$1(seriesModel.get('barMaxWidth'), bandWidth); + var barMinWidth = parsePercent$1( + // barMinWidth by default is 0.5 / 1 in cartesian. Because in value axis, + // the auto-calculated bar width might be less than 0.5 / 1. + seriesModel.get('barMinWidth') || (isInLargeMode(seriesModel) ? 0.5 : 1), bandWidth); + var barGap = seriesModel.get('barGap'); + var barCategoryGap = seriesModel.get('barCategoryGap'); + seriesInfoList.push({ + bandWidth: bandWidth, + barWidth: barWidth, + barMaxWidth: barMaxWidth, + barMinWidth: barMinWidth, + barGap: barGap, + barCategoryGap: barCategoryGap, + axisKey: getAxisKey(baseAxis), + stackId: getSeriesStackId(seriesModel) + }); + }); + return doCalBarWidthAndOffset(seriesInfoList); + } + function doCalBarWidthAndOffset(seriesInfoList) { + // Columns info on each category axis. Key is cartesian name + var columnsMap = {}; + each(seriesInfoList, function (seriesInfo, idx) { + var axisKey = seriesInfo.axisKey; + var bandWidth = seriesInfo.bandWidth; + var columnsOnAxis = columnsMap[axisKey] || { + bandWidth: bandWidth, + remainedWidth: bandWidth, + autoWidthCount: 0, + categoryGap: null, + gap: '20%', + stacks: {} + }; + var stacks = columnsOnAxis.stacks; + columnsMap[axisKey] = columnsOnAxis; + var stackId = seriesInfo.stackId; + if (!stacks[stackId]) { + columnsOnAxis.autoWidthCount++; + } + stacks[stackId] = stacks[stackId] || { + width: 0, + maxWidth: 0 + }; + // Caution: In a single coordinate system, these barGrid attributes + // will be shared by series. Consider that they have default values, + // only the attributes set on the last series will work. + // Do not change this fact unless there will be a break change. + var barWidth = seriesInfo.barWidth; + if (barWidth && !stacks[stackId].width) { + // See #6312, do not restrict width. + stacks[stackId].width = barWidth; + barWidth = Math.min(columnsOnAxis.remainedWidth, barWidth); + columnsOnAxis.remainedWidth -= barWidth; + } + var barMaxWidth = seriesInfo.barMaxWidth; + barMaxWidth && (stacks[stackId].maxWidth = barMaxWidth); + var barMinWidth = seriesInfo.barMinWidth; + barMinWidth && (stacks[stackId].minWidth = barMinWidth); + var barGap = seriesInfo.barGap; + barGap != null && (columnsOnAxis.gap = barGap); + var barCategoryGap = seriesInfo.barCategoryGap; + barCategoryGap != null && (columnsOnAxis.categoryGap = barCategoryGap); + }); + var result = {}; + each(columnsMap, function (columnsOnAxis, coordSysName) { + result[coordSysName] = {}; + var stacks = columnsOnAxis.stacks; + var bandWidth = columnsOnAxis.bandWidth; + var categoryGapPercent = columnsOnAxis.categoryGap; + if (categoryGapPercent == null) { + var columnCount = keys(stacks).length; + // More columns in one group + // the spaces between group is smaller. Or the column will be too thin. + categoryGapPercent = Math.max(35 - columnCount * 4, 15) + '%'; + } + var categoryGap = parsePercent$1(categoryGapPercent, bandWidth); + var barGapPercent = parsePercent$1(columnsOnAxis.gap, 1); + var remainedWidth = columnsOnAxis.remainedWidth; + var autoWidthCount = columnsOnAxis.autoWidthCount; + var autoWidth = (remainedWidth - categoryGap) / (autoWidthCount + (autoWidthCount - 1) * barGapPercent); + autoWidth = Math.max(autoWidth, 0); + // Find if any auto calculated bar exceeded maxBarWidth + each(stacks, function (column) { + var maxWidth = column.maxWidth; + var minWidth = column.minWidth; + if (!column.width) { + var finalWidth = autoWidth; + if (maxWidth && maxWidth < finalWidth) { + finalWidth = Math.min(maxWidth, remainedWidth); + } + // `minWidth` has higher priority. `minWidth` decide that whether the + // bar is able to be visible. So `minWidth` should not be restricted + // by `maxWidth` or `remainedWidth` (which is from `bandWidth`). In + // the extreme cases for `value` axis, bars are allowed to overlap + // with each other if `minWidth` specified. + if (minWidth && minWidth > finalWidth) { + finalWidth = minWidth; + } + if (finalWidth !== autoWidth) { + column.width = finalWidth; + remainedWidth -= finalWidth + barGapPercent * finalWidth; + autoWidthCount--; + } + } else { + // `barMinWidth/barMaxWidth` has higher priority than `barWidth`, as + // CSS does. Because barWidth can be a percent value, where + // `barMaxWidth` can be used to restrict the final width. + var finalWidth = column.width; + if (maxWidth) { + finalWidth = Math.min(finalWidth, maxWidth); + } + // `minWidth` has higher priority, as described above + if (minWidth) { + finalWidth = Math.max(finalWidth, minWidth); + } + column.width = finalWidth; + remainedWidth -= finalWidth + barGapPercent * finalWidth; + autoWidthCount--; + } + }); + // Recalculate width again + autoWidth = (remainedWidth - categoryGap) / (autoWidthCount + (autoWidthCount - 1) * barGapPercent); + autoWidth = Math.max(autoWidth, 0); + var widthSum = 0; + var lastColumn; + each(stacks, function (column, idx) { + if (!column.width) { + column.width = autoWidth; + } + lastColumn = column; + widthSum += column.width * (1 + barGapPercent); + }); + if (lastColumn) { + widthSum -= lastColumn.width * barGapPercent; + } + var offset = -widthSum / 2; + each(stacks, function (column, stackId) { + result[coordSysName][stackId] = result[coordSysName][stackId] || { + bandWidth: bandWidth, + offset: offset, + width: column.width + }; + offset += column.width * (1 + barGapPercent); + }); + }); + return result; + } + function retrieveColumnLayout(barWidthAndOffset, axis, seriesModel) { + if (barWidthAndOffset && axis) { + var result = barWidthAndOffset[getAxisKey(axis)]; + if (result != null && seriesModel != null) { + return result[getSeriesStackId(seriesModel)]; + } + return result; + } + } + function layout(seriesType, ecModel) { + var seriesModels = prepareLayoutBarSeries(seriesType, ecModel); + var barWidthAndOffset = makeColumnLayout(seriesModels); + each(seriesModels, function (seriesModel) { + var data = seriesModel.getData(); + var cartesian = seriesModel.coordinateSystem; + var baseAxis = cartesian.getBaseAxis(); + var stackId = getSeriesStackId(seriesModel); + var columnLayoutInfo = barWidthAndOffset[getAxisKey(baseAxis)][stackId]; + var columnOffset = columnLayoutInfo.offset; + var columnWidth = columnLayoutInfo.width; + data.setLayout({ + bandWidth: columnLayoutInfo.bandWidth, + offset: columnOffset, + size: columnWidth + }); + }); + } + // TODO: Do not support stack in large mode yet. + function createProgressiveLayout(seriesType) { + return { + seriesType: seriesType, + plan: createRenderPlanner(), + reset: function (seriesModel) { + if (!isOnCartesian(seriesModel)) { + return; + } + var data = seriesModel.getData(); + var cartesian = seriesModel.coordinateSystem; + var baseAxis = cartesian.getBaseAxis(); + var valueAxis = cartesian.getOtherAxis(baseAxis); + var valueDimIdx = data.getDimensionIndex(data.mapDimension(valueAxis.dim)); + var baseDimIdx = data.getDimensionIndex(data.mapDimension(baseAxis.dim)); + var drawBackground = seriesModel.get('showBackground', true); + var valueDim = data.mapDimension(valueAxis.dim); + var stackResultDim = data.getCalculationInfo('stackResultDimension'); + var stacked = isDimensionStacked(data, valueDim) && !!data.getCalculationInfo('stackedOnSeries'); + var isValueAxisH = valueAxis.isHorizontal(); + var valueAxisStart = getValueAxisStart(baseAxis, valueAxis); + var isLarge = isInLargeMode(seriesModel); + var barMinHeight = seriesModel.get('barMinHeight') || 0; + var stackedDimIdx = stackResultDim && data.getDimensionIndex(stackResultDim); + // Layout info. + var columnWidth = data.getLayout('size'); + var columnOffset = data.getLayout('offset'); + return { + progress: function (params, data) { + var count = params.count; + var largePoints = isLarge && createFloat32Array(count * 3); + var largeBackgroundPoints = isLarge && drawBackground && createFloat32Array(count * 3); + var largeDataIndices = isLarge && createFloat32Array(count); + var coordLayout = cartesian.master.getRect(); + var bgSize = isValueAxisH ? coordLayout.width : coordLayout.height; + var dataIndex; + var store = data.getStore(); + var idxOffset = 0; + while ((dataIndex = params.next()) != null) { + var value = store.get(stacked ? stackedDimIdx : valueDimIdx, dataIndex); + var baseValue = store.get(baseDimIdx, dataIndex); + var baseCoord = valueAxisStart; + var startValue = void 0; + // Because of the barMinHeight, we can not use the value in + // stackResultDimension directly. + if (stacked) { + startValue = +value - store.get(valueDimIdx, dataIndex); + } + var x = void 0; + var y = void 0; + var width = void 0; + var height = void 0; + if (isValueAxisH) { + var coord = cartesian.dataToPoint([value, baseValue]); + if (stacked) { + var startCoord = cartesian.dataToPoint([startValue, baseValue]); + baseCoord = startCoord[0]; + } + x = baseCoord; + y = coord[1] + columnOffset; + width = coord[0] - baseCoord; + height = columnWidth; + if (Math.abs(width) < barMinHeight) { + width = (width < 0 ? -1 : 1) * barMinHeight; + } + } else { + var coord = cartesian.dataToPoint([baseValue, value]); + if (stacked) { + var startCoord = cartesian.dataToPoint([baseValue, startValue]); + baseCoord = startCoord[1]; + } + x = coord[0] + columnOffset; + y = baseCoord; + width = columnWidth; + height = coord[1] - baseCoord; + if (Math.abs(height) < barMinHeight) { + // Include zero to has a positive bar + height = (height <= 0 ? -1 : 1) * barMinHeight; + } + } + if (!isLarge) { + data.setItemLayout(dataIndex, { + x: x, + y: y, + width: width, + height: height + }); + } else { + largePoints[idxOffset] = x; + largePoints[idxOffset + 1] = y; + largePoints[idxOffset + 2] = isValueAxisH ? width : height; + if (largeBackgroundPoints) { + largeBackgroundPoints[idxOffset] = isValueAxisH ? coordLayout.x : x; + largeBackgroundPoints[idxOffset + 1] = isValueAxisH ? y : coordLayout.y; + largeBackgroundPoints[idxOffset + 2] = bgSize; + } + largeDataIndices[dataIndex] = dataIndex; + } + idxOffset += 3; + } + if (isLarge) { + data.setLayout({ + largePoints: largePoints, + largeDataIndices: largeDataIndices, + largeBackgroundPoints: largeBackgroundPoints, + valueAxisHorizontal: isValueAxisH + }); + } + } + }; + } + }; + } + function isOnCartesian(seriesModel) { + return seriesModel.coordinateSystem && seriesModel.coordinateSystem.type === 'cartesian2d'; + } + function isInLargeMode(seriesModel) { + return seriesModel.pipelineContext && seriesModel.pipelineContext.large; + } + // See cases in `test/bar-start.html` and `#7412`, `#8747`. + function getValueAxisStart(baseAxis, valueAxis) { + return valueAxis.toGlobalCoord(valueAxis.dataToCoord(valueAxis.type === 'log' ? 1 : 0)); + } + + // FIXME 公用? + var bisect = function (a, x, lo, hi) { + while (lo < hi) { + var mid = lo + hi >>> 1; + if (a[mid][1] < x) { + lo = mid + 1; + } else { + hi = mid; + } + } + return lo; + }; + var TimeScale = /** @class */function (_super) { + __extends(TimeScale, _super); + function TimeScale(settings) { + var _this = _super.call(this, settings) || this; + _this.type = 'time'; + return _this; + } + /** + * Get label is mainly for other components like dataZoom, tooltip. + */ + TimeScale.prototype.getLabel = function (tick) { + var useUTC = this.getSetting('useUTC'); + return format(tick.value, fullLeveledFormatter[getDefaultFormatPrecisionOfInterval(getPrimaryTimeUnit(this._minLevelUnit))] || fullLeveledFormatter.second, useUTC, this.getSetting('locale')); + }; + TimeScale.prototype.getFormattedLabel = function (tick, idx, labelFormatter) { + var isUTC = this.getSetting('useUTC'); + var lang = this.getSetting('locale'); + return leveledFormat(tick, idx, labelFormatter, lang, isUTC); + }; + /** + * @override + */ + TimeScale.prototype.getTicks = function () { + var interval = this._interval; + var extent = this._extent; + var ticks = []; + // If interval is 0, return []; + if (!interval) { + return ticks; + } + ticks.push({ + value: extent[0], + level: 0 + }); + var useUTC = this.getSetting('useUTC'); + var innerTicks = getIntervalTicks(this._minLevelUnit, this._approxInterval, useUTC, extent); + ticks = ticks.concat(innerTicks); + ticks.push({ + value: extent[1], + level: 0 + }); + return ticks; + }; + TimeScale.prototype.calcNiceExtent = function (opt) { + var extent = this._extent; + // If extent start and end are same, expand them + if (extent[0] === extent[1]) { + // Expand extent + extent[0] -= ONE_DAY; + extent[1] += ONE_DAY; + } + // If there are no data and extent are [Infinity, -Infinity] + if (extent[1] === -Infinity && extent[0] === Infinity) { + var d = new Date(); + extent[1] = +new Date(d.getFullYear(), d.getMonth(), d.getDate()); + extent[0] = extent[1] - ONE_DAY; + } + this.calcNiceTicks(opt.splitNumber, opt.minInterval, opt.maxInterval); + }; + TimeScale.prototype.calcNiceTicks = function (approxTickNum, minInterval, maxInterval) { + approxTickNum = approxTickNum || 10; + var extent = this._extent; + var span = extent[1] - extent[0]; + this._approxInterval = span / approxTickNum; + if (minInterval != null && this._approxInterval < minInterval) { + this._approxInterval = minInterval; + } + if (maxInterval != null && this._approxInterval > maxInterval) { + this._approxInterval = maxInterval; + } + var scaleIntervalsLen = scaleIntervals.length; + var idx = Math.min(bisect(scaleIntervals, this._approxInterval, 0, scaleIntervalsLen), scaleIntervalsLen - 1); + // Interval that can be used to calculate ticks + this._interval = scaleIntervals[idx][1]; + // Min level used when picking ticks from top down. + // We check one more level to avoid the ticks are to sparse in some case. + this._minLevelUnit = scaleIntervals[Math.max(idx - 1, 0)][0]; + }; + TimeScale.prototype.parse = function (val) { + // val might be float. + return isNumber(val) ? val : +parseDate(val); + }; + TimeScale.prototype.contain = function (val) { + return contain$1(this.parse(val), this._extent); + }; + TimeScale.prototype.normalize = function (val) { + return normalize$1(this.parse(val), this._extent); + }; + TimeScale.prototype.scale = function (val) { + return scale$2(val, this._extent); + }; + TimeScale.type = 'time'; + return TimeScale; + }(IntervalScale); + /** + * This implementation was originally copied from "d3.js" + * <https://github.com/d3/d3/blob/b516d77fb8566b576088e73410437494717ada26/src/time/scale.js> + * with some modifications made for this program. + * See the license statement at the head of this file. + */ + var scaleIntervals = [ + // Format interval + ['second', ONE_SECOND], ['minute', ONE_MINUTE], ['hour', ONE_HOUR], ['quarter-day', ONE_HOUR * 6], ['half-day', ONE_HOUR * 12], ['day', ONE_DAY * 1.2], ['half-week', ONE_DAY * 3.5], ['week', ONE_DAY * 7], ['month', ONE_DAY * 31], ['quarter', ONE_DAY * 95], ['half-year', ONE_YEAR / 2], ['year', ONE_YEAR] // 1Y + ]; + + function isUnitValueSame(unit, valueA, valueB, isUTC) { + var dateA = parseDate(valueA); + var dateB = parseDate(valueB); + var isSame = function (unit) { + return getUnitValue(dateA, unit, isUTC) === getUnitValue(dateB, unit, isUTC); + }; + var isSameYear = function () { + return isSame('year'); + }; + // const isSameHalfYear = () => isSameYear() && isSame('half-year'); + // const isSameQuater = () => isSameYear() && isSame('quarter'); + var isSameMonth = function () { + return isSameYear() && isSame('month'); + }; + var isSameDay = function () { + return isSameMonth() && isSame('day'); + }; + // const isSameHalfDay = () => isSameDay() && isSame('half-day'); + var isSameHour = function () { + return isSameDay() && isSame('hour'); + }; + var isSameMinute = function () { + return isSameHour() && isSame('minute'); + }; + var isSameSecond = function () { + return isSameMinute() && isSame('second'); + }; + var isSameMilliSecond = function () { + return isSameSecond() && isSame('millisecond'); + }; + switch (unit) { + case 'year': + return isSameYear(); + case 'month': + return isSameMonth(); + case 'day': + return isSameDay(); + case 'hour': + return isSameHour(); + case 'minute': + return isSameMinute(); + case 'second': + return isSameSecond(); + case 'millisecond': + return isSameMilliSecond(); + } + } + // const primaryUnitGetters = { + // year: fullYearGetterName(), + // month: monthGetterName(), + // day: dateGetterName(), + // hour: hoursGetterName(), + // minute: minutesGetterName(), + // second: secondsGetterName(), + // millisecond: millisecondsGetterName() + // }; + // const primaryUnitUTCGetters = { + // year: fullYearGetterName(true), + // month: monthGetterName(true), + // day: dateGetterName(true), + // hour: hoursGetterName(true), + // minute: minutesGetterName(true), + // second: secondsGetterName(true), + // millisecond: millisecondsGetterName(true) + // }; + // function moveTick(date: Date, unitName: TimeUnit, step: number, isUTC: boolean) { + // step = step || 1; + // switch (getPrimaryTimeUnit(unitName)) { + // case 'year': + // date[fullYearSetterName(isUTC)](date[fullYearGetterName(isUTC)]() + step); + // break; + // case 'month': + // date[monthSetterName(isUTC)](date[monthGetterName(isUTC)]() + step); + // break; + // case 'day': + // date[dateSetterName(isUTC)](date[dateGetterName(isUTC)]() + step); + // break; + // case 'hour': + // date[hoursSetterName(isUTC)](date[hoursGetterName(isUTC)]() + step); + // break; + // case 'minute': + // date[minutesSetterName(isUTC)](date[minutesGetterName(isUTC)]() + step); + // break; + // case 'second': + // date[secondsSetterName(isUTC)](date[secondsGetterName(isUTC)]() + step); + // break; + // case 'millisecond': + // date[millisecondsSetterName(isUTC)](date[millisecondsGetterName(isUTC)]() + step); + // break; + // } + // return date.getTime(); + // } + // const DATE_INTERVALS = [[8, 7.5], [4, 3.5], [2, 1.5]]; + // const MONTH_INTERVALS = [[6, 5.5], [3, 2.5], [2, 1.5]]; + // const MINUTES_SECONDS_INTERVALS = [[30, 30], [20, 20], [15, 15], [10, 10], [5, 5], [2, 2]]; + function getDateInterval(approxInterval, daysInMonth) { + approxInterval /= ONE_DAY; + return approxInterval > 16 ? 16 + // Math.floor(daysInMonth / 2) + 1 // In this case we only want one tick between two months. + : approxInterval > 7.5 ? 7 // TODO week 7 or day 8? + : approxInterval > 3.5 ? 4 : approxInterval > 1.5 ? 2 : 1; + } + function getMonthInterval(approxInterval) { + var APPROX_ONE_MONTH = 30 * ONE_DAY; + approxInterval /= APPROX_ONE_MONTH; + return approxInterval > 6 ? 6 : approxInterval > 3 ? 3 : approxInterval > 2 ? 2 : 1; + } + function getHourInterval(approxInterval) { + approxInterval /= ONE_HOUR; + return approxInterval > 12 ? 12 : approxInterval > 6 ? 6 : approxInterval > 3.5 ? 4 : approxInterval > 2 ? 2 : 1; + } + function getMinutesAndSecondsInterval(approxInterval, isMinutes) { + approxInterval /= isMinutes ? ONE_MINUTE : ONE_SECOND; + return approxInterval > 30 ? 30 : approxInterval > 20 ? 20 : approxInterval > 15 ? 15 : approxInterval > 10 ? 10 : approxInterval > 5 ? 5 : approxInterval > 2 ? 2 : 1; + } + function getMillisecondsInterval(approxInterval) { + return nice(approxInterval, true); + } + function getFirstTimestampOfUnit(date, unitName, isUTC) { + var outDate = new Date(date); + switch (getPrimaryTimeUnit(unitName)) { + case 'year': + case 'month': + outDate[monthSetterName(isUTC)](0); + case 'day': + outDate[dateSetterName(isUTC)](1); + case 'hour': + outDate[hoursSetterName(isUTC)](0); + case 'minute': + outDate[minutesSetterName(isUTC)](0); + case 'second': + outDate[secondsSetterName(isUTC)](0); + outDate[millisecondsSetterName(isUTC)](0); + } + return outDate.getTime(); + } + function getIntervalTicks(bottomUnitName, approxInterval, isUTC, extent) { + var safeLimit = 10000; + var unitNames = timeUnits; + var iter = 0; + function addTicksInSpan(interval, minTimestamp, maxTimestamp, getMethodName, setMethodName, isDate, out) { + var date = new Date(minTimestamp); + var dateTime = minTimestamp; + var d = date[getMethodName](); + // if (isDate) { + // d -= 1; // Starts with 0; PENDING + // } + while (dateTime < maxTimestamp && dateTime <= extent[1]) { + out.push({ + value: dateTime + }); + d += interval; + date[setMethodName](d); + dateTime = date.getTime(); + } + // This extra tick is for calcuating ticks of next level. Will not been added to the final result + out.push({ + value: dateTime, + notAdd: true + }); + } + function addLevelTicks(unitName, lastLevelTicks, levelTicks) { + var newAddedTicks = []; + var isFirstLevel = !lastLevelTicks.length; + if (isUnitValueSame(getPrimaryTimeUnit(unitName), extent[0], extent[1], isUTC)) { + return; + } + if (isFirstLevel) { + lastLevelTicks = [{ + // TODO Optimize. Not include so may ticks. + value: getFirstTimestampOfUnit(new Date(extent[0]), unitName, isUTC) + }, { + value: extent[1] + }]; + } + for (var i = 0; i < lastLevelTicks.length - 1; i++) { + var startTick = lastLevelTicks[i].value; + var endTick = lastLevelTicks[i + 1].value; + if (startTick === endTick) { + continue; + } + var interval = void 0; + var getterName = void 0; + var setterName = void 0; + var isDate = false; + switch (unitName) { + case 'year': + interval = Math.max(1, Math.round(approxInterval / ONE_DAY / 365)); + getterName = fullYearGetterName(isUTC); + setterName = fullYearSetterName(isUTC); + break; + case 'half-year': + case 'quarter': + case 'month': + interval = getMonthInterval(approxInterval); + getterName = monthGetterName(isUTC); + setterName = monthSetterName(isUTC); + break; + case 'week': // PENDING If week is added. Ignore day. + case 'half-week': + case 'day': + interval = getDateInterval(approxInterval); // Use 32 days and let interval been 16 + getterName = dateGetterName(isUTC); + setterName = dateSetterName(isUTC); + isDate = true; + break; + case 'half-day': + case 'quarter-day': + case 'hour': + interval = getHourInterval(approxInterval); + getterName = hoursGetterName(isUTC); + setterName = hoursSetterName(isUTC); + break; + case 'minute': + interval = getMinutesAndSecondsInterval(approxInterval, true); + getterName = minutesGetterName(isUTC); + setterName = minutesSetterName(isUTC); + break; + case 'second': + interval = getMinutesAndSecondsInterval(approxInterval, false); + getterName = secondsGetterName(isUTC); + setterName = secondsSetterName(isUTC); + break; + case 'millisecond': + interval = getMillisecondsInterval(approxInterval); + getterName = millisecondsGetterName(isUTC); + setterName = millisecondsSetterName(isUTC); + break; + } + addTicksInSpan(interval, startTick, endTick, getterName, setterName, isDate, newAddedTicks); + if (unitName === 'year' && levelTicks.length > 1 && i === 0) { + // Add nearest years to the left extent. + levelTicks.unshift({ + value: levelTicks[0].value - interval + }); + } + } + for (var i = 0; i < newAddedTicks.length; i++) { + levelTicks.push(newAddedTicks[i]); + } + // newAddedTicks.length && console.log(unitName, newAddedTicks); + return newAddedTicks; + } + var levelsTicks = []; + var currentLevelTicks = []; + var tickCount = 0; + var lastLevelTickCount = 0; + for (var i = 0; i < unitNames.length && iter++ < safeLimit; ++i) { + var primaryTimeUnit = getPrimaryTimeUnit(unitNames[i]); + if (!isPrimaryTimeUnit(unitNames[i])) { + // TODO + continue; + } + addLevelTicks(unitNames[i], levelsTicks[levelsTicks.length - 1] || [], currentLevelTicks); + var nextPrimaryTimeUnit = unitNames[i + 1] ? getPrimaryTimeUnit(unitNames[i + 1]) : null; + if (primaryTimeUnit !== nextPrimaryTimeUnit) { + if (currentLevelTicks.length) { + lastLevelTickCount = tickCount; + // Remove the duplicate so the tick count can be precisely. + currentLevelTicks.sort(function (a, b) { + return a.value - b.value; + }); + var levelTicksRemoveDuplicated = []; + for (var i_1 = 0; i_1 < currentLevelTicks.length; ++i_1) { + var tickValue = currentLevelTicks[i_1].value; + if (i_1 === 0 || currentLevelTicks[i_1 - 1].value !== tickValue) { + levelTicksRemoveDuplicated.push(currentLevelTicks[i_1]); + if (tickValue >= extent[0] && tickValue <= extent[1]) { + tickCount++; + } + } + } + var targetTickNum = (extent[1] - extent[0]) / approxInterval; + // Added too much in this level and not too less in last level + if (tickCount > targetTickNum * 1.5 && lastLevelTickCount > targetTickNum / 1.5) { + break; + } + // Only treat primary time unit as one level. + levelsTicks.push(levelTicksRemoveDuplicated); + if (tickCount > targetTickNum || bottomUnitName === unitNames[i]) { + break; + } + } + // Reset if next unitName is primary + currentLevelTicks = []; + } + } + if ("development" !== 'production') { + if (iter >= safeLimit) { + warn('Exceed safe limit.'); + } + } + var levelsTicksInExtent = filter(map(levelsTicks, function (levelTicks) { + return filter(levelTicks, function (tick) { + return tick.value >= extent[0] && tick.value <= extent[1] && !tick.notAdd; + }); + }), function (levelTicks) { + return levelTicks.length > 0; + }); + var ticks = []; + var maxLevel = levelsTicksInExtent.length - 1; + for (var i = 0; i < levelsTicksInExtent.length; ++i) { + var levelTicks = levelsTicksInExtent[i]; + for (var k = 0; k < levelTicks.length; ++k) { + ticks.push({ + value: levelTicks[k].value, + level: maxLevel - i + }); + } + } + ticks.sort(function (a, b) { + return a.value - b.value; + }); + // Remove duplicates + var result = []; + for (var i = 0; i < ticks.length; ++i) { + if (i === 0 || ticks[i].value !== ticks[i - 1].value) { + result.push(ticks[i]); + } + } + return result; + } + Scale.registerClass(TimeScale); + + var scaleProto = Scale.prototype; + // FIXME:TS refactor: not good to call it directly with `this`? + var intervalScaleProto = IntervalScale.prototype; + var roundingErrorFix = round; + var mathFloor = Math.floor; + var mathCeil = Math.ceil; + var mathPow$1 = Math.pow; + var mathLog = Math.log; + var LogScale = /** @class */function (_super) { + __extends(LogScale, _super); + function LogScale() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = 'log'; + _this.base = 10; + _this._originalScale = new IntervalScale(); + // FIXME:TS actually used by `IntervalScale` + _this._interval = 0; + return _this; + } + /** + * @param Whether expand the ticks to niced extent. + */ + LogScale.prototype.getTicks = function (expandToNicedExtent) { + var originalScale = this._originalScale; + var extent = this._extent; + var originalExtent = originalScale.getExtent(); + var ticks = intervalScaleProto.getTicks.call(this, expandToNicedExtent); + return map(ticks, function (tick) { + var val = tick.value; + var powVal = round(mathPow$1(this.base, val)); + // Fix #4158 + powVal = val === extent[0] && this._fixMin ? fixRoundingError(powVal, originalExtent[0]) : powVal; + powVal = val === extent[1] && this._fixMax ? fixRoundingError(powVal, originalExtent[1]) : powVal; + return { + value: powVal + }; + }, this); + }; + LogScale.prototype.setExtent = function (start, end) { + var base = mathLog(this.base); + // log(-Infinity) is NaN, so safe guard here + start = mathLog(Math.max(0, start)) / base; + end = mathLog(Math.max(0, end)) / base; + intervalScaleProto.setExtent.call(this, start, end); + }; + /** + * @return {number} end + */ + LogScale.prototype.getExtent = function () { + var base = this.base; + var extent = scaleProto.getExtent.call(this); + extent[0] = mathPow$1(base, extent[0]); + extent[1] = mathPow$1(base, extent[1]); + // Fix #4158 + var originalScale = this._originalScale; + var originalExtent = originalScale.getExtent(); + this._fixMin && (extent[0] = fixRoundingError(extent[0], originalExtent[0])); + this._fixMax && (extent[1] = fixRoundingError(extent[1], originalExtent[1])); + return extent; + }; + LogScale.prototype.unionExtent = function (extent) { + this._originalScale.unionExtent(extent); + var base = this.base; + extent[0] = mathLog(extent[0]) / mathLog(base); + extent[1] = mathLog(extent[1]) / mathLog(base); + scaleProto.unionExtent.call(this, extent); + }; + LogScale.prototype.unionExtentFromData = function (data, dim) { + // TODO + // filter value that <= 0 + this.unionExtent(data.getApproximateExtent(dim)); + }; + /** + * Update interval and extent of intervals for nice ticks + * @param approxTickNum default 10 Given approx tick number + */ + LogScale.prototype.calcNiceTicks = function (approxTickNum) { + approxTickNum = approxTickNum || 10; + var extent = this._extent; + var span = extent[1] - extent[0]; + if (span === Infinity || span <= 0) { + return; + } + var interval = quantity(span); + var err = approxTickNum / span * interval; + // Filter ticks to get closer to the desired count. + if (err <= 0.5) { + interval *= 10; + } + // Interval should be integer + while (!isNaN(interval) && Math.abs(interval) < 1 && Math.abs(interval) > 0) { + interval *= 10; + } + var niceExtent = [round(mathCeil(extent[0] / interval) * interval), round(mathFloor(extent[1] / interval) * interval)]; + this._interval = interval; + this._niceExtent = niceExtent; + }; + LogScale.prototype.calcNiceExtent = function (opt) { + intervalScaleProto.calcNiceExtent.call(this, opt); + this._fixMin = opt.fixMin; + this._fixMax = opt.fixMax; + }; + LogScale.prototype.parse = function (val) { + return val; + }; + LogScale.prototype.contain = function (val) { + val = mathLog(val) / mathLog(this.base); + return contain$1(val, this._extent); + }; + LogScale.prototype.normalize = function (val) { + val = mathLog(val) / mathLog(this.base); + return normalize$1(val, this._extent); + }; + LogScale.prototype.scale = function (val) { + val = scale$2(val, this._extent); + return mathPow$1(this.base, val); + }; + LogScale.type = 'log'; + return LogScale; + }(Scale); + var proto = LogScale.prototype; + proto.getMinorTicks = intervalScaleProto.getMinorTicks; + proto.getLabel = intervalScaleProto.getLabel; + function fixRoundingError(val, originalVal) { + return roundingErrorFix(val, getPrecision(originalVal)); + } + Scale.registerClass(LogScale); + + var ScaleRawExtentInfo = /** @class */function () { + function ScaleRawExtentInfo(scale, model, + // Usually: data extent from all series on this axis. + originalExtent) { + this._prepareParams(scale, model, originalExtent); + } + /** + * Parameters depending on outside (like model, user callback) + * are prepared and fixed here. + */ + ScaleRawExtentInfo.prototype._prepareParams = function (scale, model, + // Usually: data extent from all series on this axis. + dataExtent) { + if (dataExtent[1] < dataExtent[0]) { + dataExtent = [NaN, NaN]; + } + this._dataMin = dataExtent[0]; + this._dataMax = dataExtent[1]; + var isOrdinal = this._isOrdinal = scale.type === 'ordinal'; + this._needCrossZero = scale.type === 'interval' && model.getNeedCrossZero && model.getNeedCrossZero(); + var modelMinRaw = this._modelMinRaw = model.get('min', true); + if (isFunction(modelMinRaw)) { + // This callback always provides users the full data extent (before data is filtered). + this._modelMinNum = parseAxisModelMinMax(scale, modelMinRaw({ + min: dataExtent[0], + max: dataExtent[1] + })); + } else if (modelMinRaw !== 'dataMin') { + this._modelMinNum = parseAxisModelMinMax(scale, modelMinRaw); + } + var modelMaxRaw = this._modelMaxRaw = model.get('max', true); + if (isFunction(modelMaxRaw)) { + // This callback always provides users the full data extent (before data is filtered). + this._modelMaxNum = parseAxisModelMinMax(scale, modelMaxRaw({ + min: dataExtent[0], + max: dataExtent[1] + })); + } else if (modelMaxRaw !== 'dataMax') { + this._modelMaxNum = parseAxisModelMinMax(scale, modelMaxRaw); + } + if (isOrdinal) { + // FIXME: there is a flaw here: if there is no "block" data processor like `dataZoom`, + // and progressive rendering is using, here the category result might just only contain + // the processed chunk rather than the entire result. + this._axisDataLen = model.getCategories().length; + } else { + var boundaryGap = model.get('boundaryGap'); + var boundaryGapArr = isArray(boundaryGap) ? boundaryGap : [boundaryGap || 0, boundaryGap || 0]; + if (typeof boundaryGapArr[0] === 'boolean' || typeof boundaryGapArr[1] === 'boolean') { + if ("development" !== 'production') { + console.warn('Boolean type for boundaryGap is only ' + 'allowed for ordinal axis. Please use string in ' + 'percentage instead, e.g., "20%". Currently, ' + 'boundaryGap is set to be 0.'); + } + this._boundaryGapInner = [0, 0]; + } else { + this._boundaryGapInner = [parsePercent(boundaryGapArr[0], 1), parsePercent(boundaryGapArr[1], 1)]; + } + } + }; + /** + * Calculate extent by prepared parameters. + * This method has no external dependency and can be called duplicatedly, + * getting the same result. + * If parameters changed, should call this method to recalcuate. + */ + ScaleRawExtentInfo.prototype.calculate = function () { + // Notice: When min/max is not set (that is, when there are null/undefined, + // which is the most common case), these cases should be ensured: + // (1) For 'ordinal', show all axis.data. + // (2) For others: + // + `boundaryGap` is applied (if min/max set, boundaryGap is + // disabled). + // + If `needCrossZero`, min/max should be zero, otherwise, min/max should + // be the result that originalExtent enlarged by boundaryGap. + // (3) If no data, it should be ensured that `scale.setBlank` is set. + var isOrdinal = this._isOrdinal; + var dataMin = this._dataMin; + var dataMax = this._dataMax; + var axisDataLen = this._axisDataLen; + var boundaryGapInner = this._boundaryGapInner; + var span = !isOrdinal ? dataMax - dataMin || Math.abs(dataMin) : null; + // Currently if a `'value'` axis model min is specified as 'dataMin'/'dataMax', + // `boundaryGap` will not be used. It's the different from specifying as `null`/`undefined`. + var min = this._modelMinRaw === 'dataMin' ? dataMin : this._modelMinNum; + var max = this._modelMaxRaw === 'dataMax' ? dataMax : this._modelMaxNum; + // If `_modelMinNum`/`_modelMaxNum` is `null`/`undefined`, should not be fixed. + var minFixed = min != null; + var maxFixed = max != null; + if (min == null) { + min = isOrdinal ? axisDataLen ? 0 : NaN : dataMin - boundaryGapInner[0] * span; + } + if (max == null) { + max = isOrdinal ? axisDataLen ? axisDataLen - 1 : NaN : dataMax + boundaryGapInner[1] * span; + } + (min == null || !isFinite(min)) && (min = NaN); + (max == null || !isFinite(max)) && (max = NaN); + var isBlank = eqNaN(min) || eqNaN(max) || isOrdinal && !axisDataLen; + // If data extent modified, need to recalculated to ensure cross zero. + if (this._needCrossZero) { + // Axis is over zero and min is not set + if (min > 0 && max > 0 && !minFixed) { + min = 0; + // minFixed = true; + } + // Axis is under zero and max is not set + if (min < 0 && max < 0 && !maxFixed) { + max = 0; + // maxFixed = true; + } + // PENDING: + // When `needCrossZero` and all data is positive/negative, should it be ensured + // that the results processed by boundaryGap are positive/negative? + // If so, here `minFixed`/`maxFixed` need to be set. + } + + var determinedMin = this._determinedMin; + var determinedMax = this._determinedMax; + if (determinedMin != null) { + min = determinedMin; + minFixed = true; + } + if (determinedMax != null) { + max = determinedMax; + maxFixed = true; + } + // Ensure min/max be finite number or NaN here. (not to be null/undefined) + // `NaN` means min/max axis is blank. + return { + min: min, + max: max, + minFixed: minFixed, + maxFixed: maxFixed, + isBlank: isBlank + }; + }; + ScaleRawExtentInfo.prototype.modifyDataMinMax = function (minMaxName, val) { + if ("development" !== 'production') { + assert(!this.frozen); + } + this[DATA_MIN_MAX_ATTR[minMaxName]] = val; + }; + ScaleRawExtentInfo.prototype.setDeterminedMinMax = function (minMaxName, val) { + var attr = DETERMINED_MIN_MAX_ATTR[minMaxName]; + if ("development" !== 'production') { + assert(!this.frozen + // Earse them usually means logic flaw. + && this[attr] == null); + } + this[attr] = val; + }; + ScaleRawExtentInfo.prototype.freeze = function () { + // @ts-ignore + this.frozen = true; + }; + return ScaleRawExtentInfo; + }(); + var DETERMINED_MIN_MAX_ATTR = { + min: '_determinedMin', + max: '_determinedMax' + }; + var DATA_MIN_MAX_ATTR = { + min: '_dataMin', + max: '_dataMax' + }; + /** + * Get scale min max and related info only depends on model settings. + * This method can be called after coordinate system created. + * For example, in data processing stage. + * + * Scale extent info probably be required multiple times during a workflow. + * For example: + * (1) `dataZoom` depends it to get the axis extent in "100%" state. + * (2) `processor/extentCalculator` depends it to make sure whether axis extent is specified. + * (3) `coordSys.update` use it to finally decide the scale extent. + * But the callback of `min`/`max` should not be called multiple times. + * The code below should not be implemented repeatedly either. + * So we cache the result in the scale instance, which will be recreated at the beginning + * of the workflow (because `scale` instance will be recreated each round of the workflow). + */ + function ensureScaleRawExtentInfo(scale, model, + // Usually: data extent from all series on this axis. + originalExtent) { + // Do not permit to recreate. + var rawExtentInfo = scale.rawExtentInfo; + if (rawExtentInfo) { + return rawExtentInfo; + } + rawExtentInfo = new ScaleRawExtentInfo(scale, model, originalExtent); + // @ts-ignore + scale.rawExtentInfo = rawExtentInfo; + return rawExtentInfo; + } + function parseAxisModelMinMax(scale, minMax) { + return minMax == null ? null : eqNaN(minMax) ? NaN : scale.parse(minMax); + } + + /** + * Get axis scale extent before niced. + * Item of returned array can only be number (including Infinity and NaN). + * + * Caution: + * Precondition of calling this method: + * The scale extent has been initialized using series data extent via + * `scale.setExtent` or `scale.unionExtentFromData`; + */ + function getScaleExtent(scale, model) { + var scaleType = scale.type; + var rawExtentResult = ensureScaleRawExtentInfo(scale, model, scale.getExtent()).calculate(); + scale.setBlank(rawExtentResult.isBlank); + var min = rawExtentResult.min; + var max = rawExtentResult.max; + // If bars are placed on a base axis of type time or interval account for axis boundary overflow and current axis + // is base axis + // FIXME + // (1) Consider support value axis, where below zero and axis `onZero` should be handled properly. + // (2) Refactor the logic with `barGrid`. Is it not need to `makeBarWidthAndOffsetInfo` twice with different extent? + // Should not depend on series type `bar`? + // (3) Fix that might overlap when using dataZoom. + // (4) Consider other chart types using `barGrid`? + // See #6728, #4862, `test/bar-overflow-time-plot.html` + var ecModel = model.ecModel; + if (ecModel && scaleType === 'time' /* || scaleType === 'interval' */) { + var barSeriesModels = prepareLayoutBarSeries('bar', ecModel); + var isBaseAxisAndHasBarSeries_1 = false; + each(barSeriesModels, function (seriesModel) { + isBaseAxisAndHasBarSeries_1 = isBaseAxisAndHasBarSeries_1 || seriesModel.getBaseAxis() === model.axis; + }); + if (isBaseAxisAndHasBarSeries_1) { + // Calculate placement of bars on axis. TODO should be decoupled + // with barLayout + var barWidthAndOffset = makeColumnLayout(barSeriesModels); + // Adjust axis min and max to account for overflow + var adjustedScale = adjustScaleForOverflow(min, max, model, barWidthAndOffset); + min = adjustedScale.min; + max = adjustedScale.max; + } + } + return { + extent: [min, max], + // "fix" means "fixed", the value should not be + // changed in the subsequent steps. + fixMin: rawExtentResult.minFixed, + fixMax: rawExtentResult.maxFixed + }; + } + function adjustScaleForOverflow(min, max, model, + // Only support cartesian coord yet. + barWidthAndOffset) { + // Get Axis Length + var axisExtent = model.axis.getExtent(); + var axisLength = axisExtent[1] - axisExtent[0]; + // Get bars on current base axis and calculate min and max overflow + var barsOnCurrentAxis = retrieveColumnLayout(barWidthAndOffset, model.axis); + if (barsOnCurrentAxis === undefined) { + return { + min: min, + max: max + }; + } + var minOverflow = Infinity; + each(barsOnCurrentAxis, function (item) { + minOverflow = Math.min(item.offset, minOverflow); + }); + var maxOverflow = -Infinity; + each(barsOnCurrentAxis, function (item) { + maxOverflow = Math.max(item.offset + item.width, maxOverflow); + }); + minOverflow = Math.abs(minOverflow); + maxOverflow = Math.abs(maxOverflow); + var totalOverFlow = minOverflow + maxOverflow; + // Calculate required buffer based on old range and overflow + var oldRange = max - min; + var oldRangePercentOfNew = 1 - (minOverflow + maxOverflow) / axisLength; + var overflowBuffer = oldRange / oldRangePercentOfNew - oldRange; + max += overflowBuffer * (maxOverflow / totalOverFlow); + min -= overflowBuffer * (minOverflow / totalOverFlow); + return { + min: min, + max: max + }; + } + // Precondition of calling this method: + // The scale extent has been initialized using series data extent via + // `scale.setExtent` or `scale.unionExtentFromData`; + function niceScaleExtent(scale, inModel) { + var model = inModel; + var extentInfo = getScaleExtent(scale, model); + var extent = extentInfo.extent; + var splitNumber = model.get('splitNumber'); + if (scale instanceof LogScale) { + scale.base = model.get('logBase'); + } + var scaleType = scale.type; + var interval = model.get('interval'); + var isIntervalOrTime = scaleType === 'interval' || scaleType === 'time'; + scale.setExtent(extent[0], extent[1]); + scale.calcNiceExtent({ + splitNumber: splitNumber, + fixMin: extentInfo.fixMin, + fixMax: extentInfo.fixMax, + minInterval: isIntervalOrTime ? model.get('minInterval') : null, + maxInterval: isIntervalOrTime ? model.get('maxInterval') : null + }); + // If some one specified the min, max. And the default calculated interval + // is not good enough. He can specify the interval. It is often appeared + // in angle axis with angle 0 - 360. Interval calculated in interval scale is hard + // to be 60. + // FIXME + if (interval != null) { + scale.setInterval && scale.setInterval(interval); + } + } + /** + * @param axisType Default retrieve from model.type + */ + function createScaleByModel(model, axisType) { + axisType = axisType || model.get('type'); + if (axisType) { + switch (axisType) { + // Buildin scale + case 'category': + return new OrdinalScale({ + ordinalMeta: model.getOrdinalMeta ? model.getOrdinalMeta() : model.getCategories(), + extent: [Infinity, -Infinity] + }); + case 'time': + return new TimeScale({ + locale: model.ecModel.getLocaleModel(), + useUTC: model.ecModel.get('useUTC') + }); + default: + // case 'value'/'interval', 'log', or others. + return new (Scale.getClass(axisType) || IntervalScale)(); + } + } + } + /** + * Check if the axis cross 0 + */ + function ifAxisCrossZero(axis) { + var dataExtent = axis.scale.getExtent(); + var min = dataExtent[0]; + var max = dataExtent[1]; + return !(min > 0 && max > 0 || min < 0 && max < 0); + } + /** + * @param axis + * @return Label formatter function. + * param: {number} tickValue, + * param: {number} idx, the index in all ticks. + * If category axis, this param is not required. + * return: {string} label string. + */ + function makeLabelFormatter(axis) { + var labelFormatter = axis.getLabelModel().get('formatter'); + var categoryTickStart = axis.type === 'category' ? axis.scale.getExtent()[0] : null; + if (axis.scale.type === 'time') { + return function (tpl) { + return function (tick, idx) { + return axis.scale.getFormattedLabel(tick, idx, tpl); + }; + }(labelFormatter); + } else if (isString(labelFormatter)) { + return function (tpl) { + return function (tick) { + // For category axis, get raw value; for numeric axis, + // get formatted label like '1,333,444'. + var label = axis.scale.getLabel(tick); + var text = tpl.replace('{value}', label != null ? label : ''); + return text; + }; + }(labelFormatter); + } else if (isFunction(labelFormatter)) { + return function (cb) { + return function (tick, idx) { + // The original intention of `idx` is "the index of the tick in all ticks". + // But the previous implementation of category axis do not consider the + // `axisLabel.interval`, which cause that, for example, the `interval` is + // `1`, then the ticks "name5", "name7", "name9" are displayed, where the + // corresponding `idx` are `0`, `2`, `4`, but not `0`, `1`, `2`. So we keep + // the definition here for back compatibility. + if (categoryTickStart != null) { + idx = tick.value - categoryTickStart; + } + return cb(getAxisRawValue(axis, tick), idx, tick.level != null ? { + level: tick.level + } : null); + }; + }(labelFormatter); + } else { + return function (tick) { + return axis.scale.getLabel(tick); + }; + } + } + function getAxisRawValue(axis, tick) { + // In category axis with data zoom, tick is not the original + // index of axis.data. So tick should not be exposed to user + // in category axis. + return axis.type === 'category' ? axis.scale.getLabel(tick) : tick.value; + } + /** + * @param axis + * @return Be null/undefined if no labels. + */ + function estimateLabelUnionRect(axis) { + var axisModel = axis.model; + var scale = axis.scale; + if (!axisModel.get(['axisLabel', 'show']) || scale.isBlank()) { + return; + } + var realNumberScaleTicks; + var tickCount; + var categoryScaleExtent = scale.getExtent(); + // Optimize for large category data, avoid call `getTicks()`. + if (scale instanceof OrdinalScale) { + tickCount = scale.count(); + } else { + realNumberScaleTicks = scale.getTicks(); + tickCount = realNumberScaleTicks.length; + } + var axisLabelModel = axis.getLabelModel(); + var labelFormatter = makeLabelFormatter(axis); + var rect; + var step = 1; + // Simple optimization for large amount of labels + if (tickCount > 40) { + step = Math.ceil(tickCount / 40); + } + for (var i = 0; i < tickCount; i += step) { + var tick = realNumberScaleTicks ? realNumberScaleTicks[i] : { + value: categoryScaleExtent[0] + i + }; + var label = labelFormatter(tick, i); + var unrotatedSingleRect = axisLabelModel.getTextRect(label); + var singleRect = rotateTextRect(unrotatedSingleRect, axisLabelModel.get('rotate') || 0); + rect ? rect.union(singleRect) : rect = singleRect; + } + return rect; + } + function rotateTextRect(textRect, rotate) { + var rotateRadians = rotate * Math.PI / 180; + var beforeWidth = textRect.width; + var beforeHeight = textRect.height; + var afterWidth = beforeWidth * Math.abs(Math.cos(rotateRadians)) + Math.abs(beforeHeight * Math.sin(rotateRadians)); + var afterHeight = beforeWidth * Math.abs(Math.sin(rotateRadians)) + Math.abs(beforeHeight * Math.cos(rotateRadians)); + var rotatedRect = new BoundingRect(textRect.x, textRect.y, afterWidth, afterHeight); + return rotatedRect; + } + /** + * @param model axisLabelModel or axisTickModel + * @return {number|String} Can be null|'auto'|number|function + */ + function getOptionCategoryInterval(model) { + var interval = model.get('interval'); + return interval == null ? 'auto' : interval; + } + /** + * Set `categoryInterval` as 0 implicitly indicates that + * show all labels regardless of overlap. + * @param {Object} axis axisModel.axis + */ + function shouldShowAllLabels(axis) { + return axis.type === 'category' && getOptionCategoryInterval(axis.getLabelModel()) === 0; + } + function getDataDimensionsOnAxis(data, axisDim) { + // Remove duplicated dat dimensions caused by `getStackedDimension`. + var dataDimMap = {}; + // Currently `mapDimensionsAll` will contain stack result dimension ('__\0ecstackresult'). + // PENDING: is it reasonable? Do we need to remove the original dim from "coord dim" since + // there has been stacked result dim? + each(data.mapDimensionsAll(axisDim), function (dataDim) { + // For example, the extent of the original dimension + // is [0.1, 0.5], the extent of the `stackResultDimension` + // is [7, 9], the final extent should NOT include [0.1, 0.5], + // because there is no graphic corresponding to [0.1, 0.5]. + // See the case in `test/area-stack.html` `main1`, where area line + // stack needs `yAxis` not start from 0. + dataDimMap[getStackedDimension(data, dataDim)] = true; + }); + return keys(dataDimMap); + } + function unionAxisExtentFromData(dataExtent, data, axisDim) { + if (data) { + each(getDataDimensionsOnAxis(data, axisDim), function (dim) { + var seriesExtent = data.getApproximateExtent(dim); + seriesExtent[0] < dataExtent[0] && (dataExtent[0] = seriesExtent[0]); + seriesExtent[1] > dataExtent[1] && (dataExtent[1] = seriesExtent[1]); + }); + } + } + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + + /** + * AUTO-GENERATED FILE. DO NOT MODIFY. + */ + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + // eslint-disable-next-line @typescript-eslint/no-unused-vars + var AxisModelCommonMixin = /** @class */function () { + function AxisModelCommonMixin() {} + AxisModelCommonMixin.prototype.getNeedCrossZero = function () { + var option = this.option; + return !option.scale; + }; + /** + * Should be implemented by each axis model if necessary. + * @return coordinate system model + */ + AxisModelCommonMixin.prototype.getCoordSysModel = function () { + return; + }; + return AxisModelCommonMixin; + }(); + + /** + * Create a multi dimension List structure from seriesModel. + */ + function createList(seriesModel) { + return createSeriesData(null, seriesModel); + } + var dataStack$1 = { + isDimensionStacked: isDimensionStacked, + enableDataStack: enableDataStack, + getStackedDimension: getStackedDimension + }; + /** + * Create scale + * @param {Array.<number>} dataExtent + * @param {Object|module:echarts/Model} option If `optoin.type` + * is secified, it can only be `'value'` currently. + */ + function createScale(dataExtent, option) { + var axisModel = option; + if (!(option instanceof Model)) { + axisModel = new Model(option); + // FIXME + // Currently AxisModelCommonMixin has nothing to do with the + // the requirements of `axisHelper.createScaleByModel`. For + // example the methods `getCategories` and `getOrdinalMeta` + // are required for `'category'` axis, and ecModel is required + // for `'time'` axis. But occasionally echarts-gl happened + // to only use `'value'` axis. + // zrUtil.mixin(axisModel, AxisModelCommonMixin); + } + + var scale = createScaleByModel(axisModel); + scale.setExtent(dataExtent[0], dataExtent[1]); + niceScaleExtent(scale, axisModel); + return scale; + } + /** + * Mixin common methods to axis model, + * + * Include methods + * `getFormattedLabels() => Array.<string>` + * `getCategories() => Array.<string>` + * `getMin(origin: boolean) => number` + * `getMax(origin: boolean) => number` + * `getNeedCrossZero() => boolean` + */ + function mixinAxisModelCommonMethods(Model) { + mixin(Model, AxisModelCommonMixin); + } + function createTextStyle$1(textStyleModel, opts) { + opts = opts || {}; + return createTextStyle(textStyleModel, null, null, opts.state !== 'normal'); + } + + var helper = /*#__PURE__*/Object.freeze({ + __proto__: null, + createList: createList, + getLayoutRect: getLayoutRect, + dataStack: dataStack$1, + createScale: createScale, + mixinAxisModelCommonMethods: mixinAxisModelCommonMethods, + getECData: getECData, + createTextStyle: createTextStyle$1, + createDimensions: createDimensions, + createSymbol: createSymbol, + enableHoverEmphasis: enableHoverEmphasis + }); + + var EPSILON$4 = 1e-8; + function isAroundEqual$1(a, b) { + return Math.abs(a - b) < EPSILON$4; + } + function contain$2(points, x, y) { + var w = 0; + var p = points[0]; + if (!p) { + return false; + } + for (var i = 1; i < points.length; i++) { + var p2 = points[i]; + w += windingLine(p[0], p[1], p2[0], p2[1], x, y); + p = p2; + } + var p0 = points[0]; + if (!isAroundEqual$1(p[0], p0[0]) || !isAroundEqual$1(p[1], p0[1])) { + w += windingLine(p[0], p[1], p0[0], p0[1], x, y); + } + return w !== 0; + } + + var TMP_TRANSFORM = []; + function transformPoints(points, transform) { + for (var p = 0; p < points.length; p++) { + applyTransform(points[p], points[p], transform); + } + } + function updateBBoxFromPoints(points, min$1, max$1, projection) { + for (var i = 0; i < points.length; i++) { + var p = points[i]; + if (projection) { + // projection may return null point. + p = projection.project(p); + } + if (p && isFinite(p[0]) && isFinite(p[1])) { + min(min$1, min$1, p); + max(max$1, max$1, p); + } + } + } + function centroid(points) { + var signedArea = 0; + var cx = 0; + var cy = 0; + var len = points.length; + var x0 = points[len - 1][0]; + var y0 = points[len - 1][1]; + // Polygon should been closed. + for (var i = 0; i < len; i++) { + var x1 = points[i][0]; + var y1 = points[i][1]; + var a = x0 * y1 - x1 * y0; + signedArea += a; + cx += (x0 + x1) * a; + cy += (y0 + y1) * a; + x0 = x1; + y0 = y1; + } + return signedArea ? [cx / signedArea / 3, cy / signedArea / 3, signedArea] : [points[0][0] || 0, points[0][1] || 0]; + } + var Region = /** @class */function () { + function Region(name) { + this.name = name; + } + Region.prototype.setCenter = function (center) { + this._center = center; + }; + /** + * Get center point in data unit. That is, + * for GeoJSONRegion, the unit is lat/lng, + * for GeoSVGRegion, the unit is SVG local coord. + */ + Region.prototype.getCenter = function () { + var center = this._center; + if (!center) { + // In most cases there are no need to calculate this center. + // So calculate only when called. + center = this._center = this.calcCenter(); + } + return center; + }; + return Region; + }(); + var GeoJSONPolygonGeometry = /** @class */function () { + function GeoJSONPolygonGeometry(exterior, interiors) { + this.type = 'polygon'; + this.exterior = exterior; + this.interiors = interiors; + } + return GeoJSONPolygonGeometry; + }(); + var GeoJSONLineStringGeometry = /** @class */function () { + function GeoJSONLineStringGeometry(points) { + this.type = 'linestring'; + this.points = points; + } + return GeoJSONLineStringGeometry; + }(); + var GeoJSONRegion = /** @class */function (_super) { + __extends(GeoJSONRegion, _super); + function GeoJSONRegion(name, geometries, cp) { + var _this = _super.call(this, name) || this; + _this.type = 'geoJSON'; + _this.geometries = geometries; + _this._center = cp && [cp[0], cp[1]]; + return _this; + } + GeoJSONRegion.prototype.calcCenter = function () { + var geometries = this.geometries; + var largestGeo; + var largestGeoSize = 0; + for (var i = 0; i < geometries.length; i++) { + var geo = geometries[i]; + var exterior = geo.exterior; + // Simple trick to use points count instead of polygon area as region size. + // Ignore linestring + var size = exterior && exterior.length; + if (size > largestGeoSize) { + largestGeo = geo; + largestGeoSize = size; + } + } + if (largestGeo) { + return centroid(largestGeo.exterior); + } + // from bounding rect by default. + var rect = this.getBoundingRect(); + return [rect.x + rect.width / 2, rect.y + rect.height / 2]; + }; + GeoJSONRegion.prototype.getBoundingRect = function (projection) { + var rect = this._rect; + // Always recalculate if using projection. + if (rect && !projection) { + return rect; + } + var min = [Infinity, Infinity]; + var max = [-Infinity, -Infinity]; + var geometries = this.geometries; + each(geometries, function (geo) { + if (geo.type === 'polygon') { + // Doesn't consider hole + updateBBoxFromPoints(geo.exterior, min, max, projection); + } else { + each(geo.points, function (points) { + updateBBoxFromPoints(points, min, max, projection); + }); + } + }); + // Normalie invalid bounding. + if (!(isFinite(min[0]) && isFinite(min[1]) && isFinite(max[0]) && isFinite(max[1]))) { + min[0] = min[1] = max[0] = max[1] = 0; + } + rect = new BoundingRect(min[0], min[1], max[0] - min[0], max[1] - min[1]); + if (!projection) { + this._rect = rect; + } + return rect; + }; + GeoJSONRegion.prototype.contain = function (coord) { + var rect = this.getBoundingRect(); + var geometries = this.geometries; + if (!rect.contain(coord[0], coord[1])) { + return false; + } + loopGeo: for (var i = 0, len = geometries.length; i < len; i++) { + var geo = geometries[i]; + // Only support polygon. + if (geo.type !== 'polygon') { + continue; + } + var exterior = geo.exterior; + var interiors = geo.interiors; + if (contain$2(exterior, coord[0], coord[1])) { + // Not in the region if point is in the hole. + for (var k = 0; k < (interiors ? interiors.length : 0); k++) { + if (contain$2(interiors[k], coord[0], coord[1])) { + continue loopGeo; + } + } + return true; + } + } + return false; + }; + /** + * Transform the raw coords to target bounding. + * @param x + * @param y + * @param width + * @param height + */ + GeoJSONRegion.prototype.transformTo = function (x, y, width, height) { + var rect = this.getBoundingRect(); + var aspect = rect.width / rect.height; + if (!width) { + width = aspect * height; + } else if (!height) { + height = width / aspect; + } + var target = new BoundingRect(x, y, width, height); + var transform = rect.calculateTransform(target); + var geometries = this.geometries; + for (var i = 0; i < geometries.length; i++) { + var geo = geometries[i]; + if (geo.type === 'polygon') { + transformPoints(geo.exterior, transform); + each(geo.interiors, function (interior) { + transformPoints(interior, transform); + }); + } else { + each(geo.points, function (points) { + transformPoints(points, transform); + }); + } + } + rect = this._rect; + rect.copy(target); + // Update center + this._center = [rect.x + rect.width / 2, rect.y + rect.height / 2]; + }; + GeoJSONRegion.prototype.cloneShallow = function (name) { + name == null && (name = this.name); + var newRegion = new GeoJSONRegion(name, this.geometries, this._center); + newRegion._rect = this._rect; + newRegion.transformTo = null; // Simply avoid to be called. + return newRegion; + }; + return GeoJSONRegion; + }(Region); + var GeoSVGRegion = /** @class */function (_super) { + __extends(GeoSVGRegion, _super); + function GeoSVGRegion(name, elOnlyForCalculate) { + var _this = _super.call(this, name) || this; + _this.type = 'geoSVG'; + _this._elOnlyForCalculate = elOnlyForCalculate; + return _this; + } + GeoSVGRegion.prototype.calcCenter = function () { + var el = this._elOnlyForCalculate; + var rect = el.getBoundingRect(); + var center = [rect.x + rect.width / 2, rect.y + rect.height / 2]; + var mat = identity(TMP_TRANSFORM); + var target = el; + while (target && !target.isGeoSVGGraphicRoot) { + mul$1(mat, target.getLocalTransform(), mat); + target = target.parent; + } + invert(mat, mat); + applyTransform(center, center, mat); + return center; + }; + return GeoSVGRegion; + }(Region); + + function decode(json) { + if (!json.UTF8Encoding) { + return json; + } + var jsonCompressed = json; + var encodeScale = jsonCompressed.UTF8Scale; + if (encodeScale == null) { + encodeScale = 1024; + } + var features = jsonCompressed.features; + each(features, function (feature) { + var geometry = feature.geometry; + var encodeOffsets = geometry.encodeOffsets; + var coordinates = geometry.coordinates; + // Geometry may be appeded manually in the script after json loaded. + // In this case this geometry is usually not encoded. + if (!encodeOffsets) { + return; + } + switch (geometry.type) { + case 'LineString': + geometry.coordinates = decodeRing(coordinates, encodeOffsets, encodeScale); + break; + case 'Polygon': + decodeRings(coordinates, encodeOffsets, encodeScale); + break; + case 'MultiLineString': + decodeRings(coordinates, encodeOffsets, encodeScale); + break; + case 'MultiPolygon': + each(coordinates, function (rings, idx) { + return decodeRings(rings, encodeOffsets[idx], encodeScale); + }); + } + }); + // Has been decoded + jsonCompressed.UTF8Encoding = false; + return jsonCompressed; + } + function decodeRings(rings, encodeOffsets, encodeScale) { + for (var c = 0; c < rings.length; c++) { + rings[c] = decodeRing(rings[c], encodeOffsets[c], encodeScale); + } + } + function decodeRing(coordinate, encodeOffsets, encodeScale) { + var result = []; + var prevX = encodeOffsets[0]; + var prevY = encodeOffsets[1]; + for (var i = 0; i < coordinate.length; i += 2) { + var x = coordinate.charCodeAt(i) - 64; + var y = coordinate.charCodeAt(i + 1) - 64; + // ZigZag decoding + x = x >> 1 ^ -(x & 1); + y = y >> 1 ^ -(y & 1); + // Delta deocding + x += prevX; + y += prevY; + prevX = x; + prevY = y; + // Dequantize + result.push([x / encodeScale, y / encodeScale]); + } + return result; + } + function parseGeoJSON(geoJson, nameProperty) { + geoJson = decode(geoJson); + return map(filter(geoJson.features, function (featureObj) { + // Output of mapshaper may have geometry null + return featureObj.geometry && featureObj.properties && featureObj.geometry.coordinates.length > 0; + }), function (featureObj) { + var properties = featureObj.properties; + var geo = featureObj.geometry; + var geometries = []; + switch (geo.type) { + case 'Polygon': + var coordinates = geo.coordinates; + // According to the GeoJSON specification. + // First must be exterior, and the rest are all interior(holes). + geometries.push(new GeoJSONPolygonGeometry(coordinates[0], coordinates.slice(1))); + break; + case 'MultiPolygon': + each(geo.coordinates, function (item) { + if (item[0]) { + geometries.push(new GeoJSONPolygonGeometry(item[0], item.slice(1))); + } + }); + break; + case 'LineString': + geometries.push(new GeoJSONLineStringGeometry([geo.coordinates])); + break; + case 'MultiLineString': + geometries.push(new GeoJSONLineStringGeometry(geo.coordinates)); + } + var region = new GeoJSONRegion(properties[nameProperty || 'name'], geometries, properties.cp); + region.properties = properties; + return region; + }); + } + + var number = /*#__PURE__*/Object.freeze({ + __proto__: null, + linearMap: linearMap, + round: round, + asc: asc, + getPrecision: getPrecision, + getPrecisionSafe: getPrecisionSafe, + getPixelPrecision: getPixelPrecision, + getPercentWithPrecision: getPercentWithPrecision, + MAX_SAFE_INTEGER: MAX_SAFE_INTEGER, + remRadian: remRadian, + isRadianAroundZero: isRadianAroundZero, + parseDate: parseDate, + quantity: quantity, + quantityExponent: quantityExponent, + nice: nice, + quantile: quantile, + reformIntervals: reformIntervals, + isNumeric: isNumeric, + numericToNumber: numericToNumber + }); + + var time = /*#__PURE__*/Object.freeze({ + __proto__: null, + parse: parseDate, + format: format + }); + + var graphic$1 = /*#__PURE__*/Object.freeze({ + __proto__: null, + extendShape: extendShape, + extendPath: extendPath, + makePath: makePath, + makeImage: makeImage, + mergePath: mergePath$1, + resizePath: resizePath, + createIcon: createIcon, + updateProps: updateProps, + initProps: initProps, + getTransform: getTransform, + clipPointsByRect: clipPointsByRect, + clipRectByRect: clipRectByRect, + registerShape: registerShape, + getShapeClass: getShapeClass, + Group: Group, + Image: ZRImage, + Text: ZRText, + Circle: Circle, + Ellipse: Ellipse, + Sector: Sector, + Ring: Ring, + Polygon: Polygon, + Polyline: Polyline, + Rect: Rect, + Line: Line, + BezierCurve: BezierCurve, + Arc: Arc, + IncrementalDisplayable: IncrementalDisplayable, + CompoundPath: CompoundPath, + LinearGradient: LinearGradient, + RadialGradient: RadialGradient, + BoundingRect: BoundingRect + }); + + var format$1 = /*#__PURE__*/Object.freeze({ + __proto__: null, + addCommas: addCommas, + toCamelCase: toCamelCase, + normalizeCssArray: normalizeCssArray$1, + encodeHTML: encodeHTML, + formatTpl: formatTpl, + getTooltipMarker: getTooltipMarker, + formatTime: formatTime, + capitalFirst: capitalFirst, + truncateText: truncateText, + getTextRect: getTextRect + }); + + var util$1 = /*#__PURE__*/Object.freeze({ + __proto__: null, + map: map, + each: each, + indexOf: indexOf, + inherits: inherits, + reduce: reduce, + filter: filter, + bind: bind, + curry: curry, + isArray: isArray, + isString: isString, + isObject: isObject, + isFunction: isFunction, + extend: extend, + defaults: defaults, + clone: clone, + merge: merge + }); + + var inner$5 = makeInner(); + function createAxisLabels(axis) { + // Only ordinal scale support tick interval + return axis.type === 'category' ? makeCategoryLabels(axis) : makeRealNumberLabels(axis); + } + /** + * @param {module:echats/coord/Axis} axis + * @param {module:echarts/model/Model} tickModel For example, can be axisTick, splitLine, splitArea. + * @return {Object} { + * ticks: Array.<number> + * tickCategoryInterval: number + * } + */ + function createAxisTicks(axis, tickModel) { + // Only ordinal scale support tick interval + return axis.type === 'category' ? makeCategoryTicks(axis, tickModel) : { + ticks: map(axis.scale.getTicks(), function (tick) { + return tick.value; + }) + }; + } + function makeCategoryLabels(axis) { + var labelModel = axis.getLabelModel(); + var result = makeCategoryLabelsActually(axis, labelModel); + return !labelModel.get('show') || axis.scale.isBlank() ? { + labels: [], + labelCategoryInterval: result.labelCategoryInterval + } : result; + } + function makeCategoryLabelsActually(axis, labelModel) { + var labelsCache = getListCache(axis, 'labels'); + var optionLabelInterval = getOptionCategoryInterval(labelModel); + var result = listCacheGet(labelsCache, optionLabelInterval); + if (result) { + return result; + } + var labels; + var numericLabelInterval; + if (isFunction(optionLabelInterval)) { + labels = makeLabelsByCustomizedCategoryInterval(axis, optionLabelInterval); + } else { + numericLabelInterval = optionLabelInterval === 'auto' ? makeAutoCategoryInterval(axis) : optionLabelInterval; + labels = makeLabelsByNumericCategoryInterval(axis, numericLabelInterval); + } + // Cache to avoid calling interval function repeatedly. + return listCacheSet(labelsCache, optionLabelInterval, { + labels: labels, + labelCategoryInterval: numericLabelInterval + }); + } + function makeCategoryTicks(axis, tickModel) { + var ticksCache = getListCache(axis, 'ticks'); + var optionTickInterval = getOptionCategoryInterval(tickModel); + var result = listCacheGet(ticksCache, optionTickInterval); + if (result) { + return result; + } + var ticks; + var tickCategoryInterval; + // Optimize for the case that large category data and no label displayed, + // we should not return all ticks. + if (!tickModel.get('show') || axis.scale.isBlank()) { + ticks = []; + } + if (isFunction(optionTickInterval)) { + ticks = makeLabelsByCustomizedCategoryInterval(axis, optionTickInterval, true); + } + // Always use label interval by default despite label show. Consider this + // scenario, Use multiple grid with the xAxis sync, and only one xAxis shows + // labels. `splitLine` and `axisTick` should be consistent in this case. + else if (optionTickInterval === 'auto') { + var labelsResult = makeCategoryLabelsActually(axis, axis.getLabelModel()); + tickCategoryInterval = labelsResult.labelCategoryInterval; + ticks = map(labelsResult.labels, function (labelItem) { + return labelItem.tickValue; + }); + } else { + tickCategoryInterval = optionTickInterval; + ticks = makeLabelsByNumericCategoryInterval(axis, tickCategoryInterval, true); + } + // Cache to avoid calling interval function repeatedly. + return listCacheSet(ticksCache, optionTickInterval, { + ticks: ticks, + tickCategoryInterval: tickCategoryInterval + }); + } + function makeRealNumberLabels(axis) { + var ticks = axis.scale.getTicks(); + var labelFormatter = makeLabelFormatter(axis); + return { + labels: map(ticks, function (tick, idx) { + return { + level: tick.level, + formattedLabel: labelFormatter(tick, idx), + rawLabel: axis.scale.getLabel(tick), + tickValue: tick.value + }; + }) + }; + } + function getListCache(axis, prop) { + // Because key can be a function, and cache size always is small, we use array cache. + return inner$5(axis)[prop] || (inner$5(axis)[prop] = []); + } + function listCacheGet(cache, key) { + for (var i = 0; i < cache.length; i++) { + if (cache[i].key === key) { + return cache[i].value; + } + } + } + function listCacheSet(cache, key, value) { + cache.push({ + key: key, + value: value + }); + return value; + } + function makeAutoCategoryInterval(axis) { + var result = inner$5(axis).autoInterval; + return result != null ? result : inner$5(axis).autoInterval = axis.calculateCategoryInterval(); + } + /** + * Calculate interval for category axis ticks and labels. + * To get precise result, at least one of `getRotate` and `isHorizontal` + * should be implemented in axis. + */ + function calculateCategoryInterval(axis) { + var params = fetchAutoCategoryIntervalCalculationParams(axis); + var labelFormatter = makeLabelFormatter(axis); + var rotation = (params.axisRotate - params.labelRotate) / 180 * Math.PI; + var ordinalScale = axis.scale; + var ordinalExtent = ordinalScale.getExtent(); + // Providing this method is for optimization: + // avoid generating a long array by `getTicks` + // in large category data case. + var tickCount = ordinalScale.count(); + if (ordinalExtent[1] - ordinalExtent[0] < 1) { + return 0; + } + var step = 1; + // Simple optimization. Empirical value: tick count should less than 40. + if (tickCount > 40) { + step = Math.max(1, Math.floor(tickCount / 40)); + } + var tickValue = ordinalExtent[0]; + var unitSpan = axis.dataToCoord(tickValue + 1) - axis.dataToCoord(tickValue); + var unitW = Math.abs(unitSpan * Math.cos(rotation)); + var unitH = Math.abs(unitSpan * Math.sin(rotation)); + var maxW = 0; + var maxH = 0; + // Caution: Performance sensitive for large category data. + // Consider dataZoom, we should make appropriate step to avoid O(n) loop. + for (; tickValue <= ordinalExtent[1]; tickValue += step) { + var width = 0; + var height = 0; + // Not precise, do not consider align and vertical align + // and each distance from axis line yet. + var rect = getBoundingRect(labelFormatter({ + value: tickValue + }), params.font, 'center', 'top'); + // Magic number + width = rect.width * 1.3; + height = rect.height * 1.3; + // Min size, void long loop. + maxW = Math.max(maxW, width, 7); + maxH = Math.max(maxH, height, 7); + } + var dw = maxW / unitW; + var dh = maxH / unitH; + // 0/0 is NaN, 1/0 is Infinity. + isNaN(dw) && (dw = Infinity); + isNaN(dh) && (dh = Infinity); + var interval = Math.max(0, Math.floor(Math.min(dw, dh))); + var cache = inner$5(axis.model); + var axisExtent = axis.getExtent(); + var lastAutoInterval = cache.lastAutoInterval; + var lastTickCount = cache.lastTickCount; + // Use cache to keep interval stable while moving zoom window, + // otherwise the calculated interval might jitter when the zoom + // window size is close to the interval-changing size. + // For example, if all of the axis labels are `a, b, c, d, e, f, g`. + // The jitter will cause that sometimes the displayed labels are + // `a, d, g` (interval: 2) sometimes `a, c, e`(interval: 1). + if (lastAutoInterval != null && lastTickCount != null && Math.abs(lastAutoInterval - interval) <= 1 && Math.abs(lastTickCount - tickCount) <= 1 + // Always choose the bigger one, otherwise the critical + // point is not the same when zooming in or zooming out. + && lastAutoInterval > interval + // If the axis change is caused by chart resize, the cache should not + // be used. Otherwise some hidden labels might not be shown again. + && cache.axisExtent0 === axisExtent[0] && cache.axisExtent1 === axisExtent[1]) { + interval = lastAutoInterval; + } + // Only update cache if cache not used, otherwise the + // changing of interval is too insensitive. + else { + cache.lastTickCount = tickCount; + cache.lastAutoInterval = interval; + cache.axisExtent0 = axisExtent[0]; + cache.axisExtent1 = axisExtent[1]; + } + return interval; + } + function fetchAutoCategoryIntervalCalculationParams(axis) { + var labelModel = axis.getLabelModel(); + return { + axisRotate: axis.getRotate ? axis.getRotate() : axis.isHorizontal && !axis.isHorizontal() ? 90 : 0, + labelRotate: labelModel.get('rotate') || 0, + font: labelModel.getFont() + }; + } + function makeLabelsByNumericCategoryInterval(axis, categoryInterval, onlyTick) { + var labelFormatter = makeLabelFormatter(axis); + var ordinalScale = axis.scale; + var ordinalExtent = ordinalScale.getExtent(); + var labelModel = axis.getLabelModel(); + var result = []; + // TODO: axisType: ordinalTime, pick the tick from each month/day/year/... + var step = Math.max((categoryInterval || 0) + 1, 1); + var startTick = ordinalExtent[0]; + var tickCount = ordinalScale.count(); + // Calculate start tick based on zero if possible to keep label consistent + // while zooming and moving while interval > 0. Otherwise the selection + // of displayable ticks and symbols probably keep changing. + // 3 is empirical value. + if (startTick !== 0 && step > 1 && tickCount / step > 2) { + startTick = Math.round(Math.ceil(startTick / step) * step); + } + // (1) Only add min max label here but leave overlap checking + // to render stage, which also ensure the returned list + // suitable for splitLine and splitArea rendering. + // (2) Scales except category always contain min max label so + // do not need to perform this process. + var showAllLabel = shouldShowAllLabels(axis); + var includeMinLabel = labelModel.get('showMinLabel') || showAllLabel; + var includeMaxLabel = labelModel.get('showMaxLabel') || showAllLabel; + if (includeMinLabel && startTick !== ordinalExtent[0]) { + addItem(ordinalExtent[0]); + } + // Optimize: avoid generating large array by `ordinalScale.getTicks()`. + var tickValue = startTick; + for (; tickValue <= ordinalExtent[1]; tickValue += step) { + addItem(tickValue); + } + if (includeMaxLabel && tickValue - step !== ordinalExtent[1]) { + addItem(ordinalExtent[1]); + } + function addItem(tickValue) { + var tickObj = { + value: tickValue + }; + result.push(onlyTick ? tickValue : { + formattedLabel: labelFormatter(tickObj), + rawLabel: ordinalScale.getLabel(tickObj), + tickValue: tickValue + }); + } + return result; + } + function makeLabelsByCustomizedCategoryInterval(axis, categoryInterval, onlyTick) { + var ordinalScale = axis.scale; + var labelFormatter = makeLabelFormatter(axis); + var result = []; + each(ordinalScale.getTicks(), function (tick) { + var rawLabel = ordinalScale.getLabel(tick); + var tickValue = tick.value; + if (categoryInterval(tick.value, rawLabel)) { + result.push(onlyTick ? tickValue : { + formattedLabel: labelFormatter(tick), + rawLabel: rawLabel, + tickValue: tickValue + }); + } + }); + return result; + } + + var NORMALIZED_EXTENT = [0, 1]; + /** + * Base class of Axis. + */ + var Axis = /** @class */function () { + function Axis(dim, scale, extent) { + this.onBand = false; + this.inverse = false; + this.dim = dim; + this.scale = scale; + this._extent = extent || [0, 0]; + } + /** + * If axis extent contain given coord + */ + Axis.prototype.contain = function (coord) { + var extent = this._extent; + var min = Math.min(extent[0], extent[1]); + var max = Math.max(extent[0], extent[1]); + return coord >= min && coord <= max; + }; + /** + * If axis extent contain given data + */ + Axis.prototype.containData = function (data) { + return this.scale.contain(data); + }; + /** + * Get coord extent. + */ + Axis.prototype.getExtent = function () { + return this._extent.slice(); + }; + /** + * Get precision used for formatting + */ + Axis.prototype.getPixelPrecision = function (dataExtent) { + return getPixelPrecision(dataExtent || this.scale.getExtent(), this._extent); + }; + /** + * Set coord extent + */ + Axis.prototype.setExtent = function (start, end) { + var extent = this._extent; + extent[0] = start; + extent[1] = end; + }; + /** + * Convert data to coord. Data is the rank if it has an ordinal scale + */ + Axis.prototype.dataToCoord = function (data, clamp) { + var extent = this._extent; + var scale = this.scale; + data = scale.normalize(data); + if (this.onBand && scale.type === 'ordinal') { + extent = extent.slice(); + fixExtentWithBands(extent, scale.count()); + } + return linearMap(data, NORMALIZED_EXTENT, extent, clamp); + }; + /** + * Convert coord to data. Data is the rank if it has an ordinal scale + */ + Axis.prototype.coordToData = function (coord, clamp) { + var extent = this._extent; + var scale = this.scale; + if (this.onBand && scale.type === 'ordinal') { + extent = extent.slice(); + fixExtentWithBands(extent, scale.count()); + } + var t = linearMap(coord, extent, NORMALIZED_EXTENT, clamp); + return this.scale.scale(t); + }; + /** + * Convert pixel point to data in axis + */ + Axis.prototype.pointToData = function (point, clamp) { + // Should be implemented in derived class if necessary. + return; + }; + /** + * Different from `zrUtil.map(axis.getTicks(), axis.dataToCoord, axis)`, + * `axis.getTicksCoords` considers `onBand`, which is used by + * `boundaryGap:true` of category axis and splitLine and splitArea. + * @param opt.tickModel default: axis.model.getModel('axisTick') + * @param opt.clamp If `true`, the first and the last + * tick must be at the axis end points. Otherwise, clip ticks + * that outside the axis extent. + */ + Axis.prototype.getTicksCoords = function (opt) { + opt = opt || {}; + var tickModel = opt.tickModel || this.getTickModel(); + var result = createAxisTicks(this, tickModel); + var ticks = result.ticks; + var ticksCoords = map(ticks, function (tickVal) { + return { + coord: this.dataToCoord(this.scale.type === 'ordinal' ? this.scale.getRawOrdinalNumber(tickVal) : tickVal), + tickValue: tickVal + }; + }, this); + var alignWithLabel = tickModel.get('alignWithLabel'); + fixOnBandTicksCoords(this, ticksCoords, alignWithLabel, opt.clamp); + return ticksCoords; + }; + Axis.prototype.getMinorTicksCoords = function () { + if (this.scale.type === 'ordinal') { + // Category axis doesn't support minor ticks + return []; + } + var minorTickModel = this.model.getModel('minorTick'); + var splitNumber = minorTickModel.get('splitNumber'); + // Protection. + if (!(splitNumber > 0 && splitNumber < 100)) { + splitNumber = 5; + } + var minorTicks = this.scale.getMinorTicks(splitNumber); + var minorTicksCoords = map(minorTicks, function (minorTicksGroup) { + return map(minorTicksGroup, function (minorTick) { + return { + coord: this.dataToCoord(minorTick), + tickValue: minorTick + }; + }, this); + }, this); + return minorTicksCoords; + }; + Axis.prototype.getViewLabels = function () { + return createAxisLabels(this).labels; + }; + Axis.prototype.getLabelModel = function () { + return this.model.getModel('axisLabel'); + }; + /** + * Notice here we only get the default tick model. For splitLine + * or splitArea, we should pass the splitLineModel or splitAreaModel + * manually when calling `getTicksCoords`. + * In GL, this method may be overridden to: + * `axisModel.getModel('axisTick', grid3DModel.getModel('axisTick'));` + */ + Axis.prototype.getTickModel = function () { + return this.model.getModel('axisTick'); + }; + /** + * Get width of band + */ + Axis.prototype.getBandWidth = function () { + var axisExtent = this._extent; + var dataExtent = this.scale.getExtent(); + var len = dataExtent[1] - dataExtent[0] + (this.onBand ? 1 : 0); + // Fix #2728, avoid NaN when only one data. + len === 0 && (len = 1); + var size = Math.abs(axisExtent[1] - axisExtent[0]); + return Math.abs(size) / len; + }; + /** + * Only be called in category axis. + * Can be overridden, consider other axes like in 3D. + * @return Auto interval for cateogry axis tick and label + */ + Axis.prototype.calculateCategoryInterval = function () { + return calculateCategoryInterval(this); + }; + return Axis; + }(); + function fixExtentWithBands(extent, nTick) { + var size = extent[1] - extent[0]; + var len = nTick; + var margin = size / len / 2; + extent[0] += margin; + extent[1] -= margin; + } + // If axis has labels [1, 2, 3, 4]. Bands on the axis are + // |---1---|---2---|---3---|---4---|. + // So the displayed ticks and splitLine/splitArea should between + // each data item, otherwise cause misleading (e.g., split tow bars + // of a single data item when there are two bar series). + // Also consider if tickCategoryInterval > 0 and onBand, ticks and + // splitLine/spliteArea should layout appropriately corresponding + // to displayed labels. (So we should not use `getBandWidth` in this + // case). + function fixOnBandTicksCoords(axis, ticksCoords, alignWithLabel, clamp) { + var ticksLen = ticksCoords.length; + if (!axis.onBand || alignWithLabel || !ticksLen) { + return; + } + var axisExtent = axis.getExtent(); + var last; + var diffSize; + if (ticksLen === 1) { + ticksCoords[0].coord = axisExtent[0]; + last = ticksCoords[1] = { + coord: axisExtent[1] + }; + } else { + var crossLen = ticksCoords[ticksLen - 1].tickValue - ticksCoords[0].tickValue; + var shift_1 = (ticksCoords[ticksLen - 1].coord - ticksCoords[0].coord) / crossLen; + each(ticksCoords, function (ticksItem) { + ticksItem.coord -= shift_1 / 2; + }); + var dataExtent = axis.scale.getExtent(); + diffSize = 1 + dataExtent[1] - ticksCoords[ticksLen - 1].tickValue; + last = { + coord: ticksCoords[ticksLen - 1].coord + shift_1 * diffSize + }; + ticksCoords.push(last); + } + var inverse = axisExtent[0] > axisExtent[1]; + // Handling clamp. + if (littleThan(ticksCoords[0].coord, axisExtent[0])) { + clamp ? ticksCoords[0].coord = axisExtent[0] : ticksCoords.shift(); + } + if (clamp && littleThan(axisExtent[0], ticksCoords[0].coord)) { + ticksCoords.unshift({ + coord: axisExtent[0] + }); + } + if (littleThan(axisExtent[1], last.coord)) { + clamp ? last.coord = axisExtent[1] : ticksCoords.pop(); + } + if (clamp && littleThan(last.coord, axisExtent[1])) { + ticksCoords.push({ + coord: axisExtent[1] + }); + } + function littleThan(a, b) { + // Avoid rounding error cause calculated tick coord different with extent. + // It may cause an extra unnecessary tick added. + a = round(a); + b = round(b); + return inverse ? a > b : a < b; + } + } + + // --------------------- Deprecated Extension Methods --------------------- + // Should use `ComponentModel.extend` or `class XXXX extend ComponentModel` to create class. + // Then use `registerComponentModel` in `install` parameter when `use` this extension. For example: + // class Bar3DModel extends ComponentModel {} + // export function install(registers) { registers.registerComponentModel(Bar3DModel); } + // echarts.use(install); + function extendComponentModel(proto) { + var Model = ComponentModel.extend(proto); + ComponentModel.registerClass(Model); + return Model; + } + function extendComponentView(proto) { + var View = ComponentView.extend(proto); + ComponentView.registerClass(View); + return View; + } + function extendSeriesModel(proto) { + var Model = SeriesModel.extend(proto); + SeriesModel.registerClass(Model); + return Model; + } + function extendChartView(proto) { + var View = ChartView.extend(proto); + ChartView.registerClass(View); + return View; + } + + var PI2$6 = Math.PI * 2; + var CMD$3 = PathProxy.CMD; + var DEFAULT_SEARCH_SPACE = ['top', 'right', 'bottom', 'left']; + function getCandidateAnchor(pos, distance, rect, outPt, outDir) { + var width = rect.width; + var height = rect.height; + switch (pos) { + case 'top': + outPt.set(rect.x + width / 2, rect.y - distance); + outDir.set(0, -1); + break; + case 'bottom': + outPt.set(rect.x + width / 2, rect.y + height + distance); + outDir.set(0, 1); + break; + case 'left': + outPt.set(rect.x - distance, rect.y + height / 2); + outDir.set(-1, 0); + break; + case 'right': + outPt.set(rect.x + width + distance, rect.y + height / 2); + outDir.set(1, 0); + break; + } + } + function projectPointToArc(cx, cy, r, startAngle, endAngle, anticlockwise, x, y, out) { + x -= cx; + y -= cy; + var d = Math.sqrt(x * x + y * y); + x /= d; + y /= d; + // Intersect point. + var ox = x * r + cx; + var oy = y * r + cy; + if (Math.abs(startAngle - endAngle) % PI2$6 < 1e-4) { + // Is a circle + out[0] = ox; + out[1] = oy; + return d - r; + } + if (anticlockwise) { + var tmp = startAngle; + startAngle = normalizeRadian(endAngle); + endAngle = normalizeRadian(tmp); + } else { + startAngle = normalizeRadian(startAngle); + endAngle = normalizeRadian(endAngle); + } + if (startAngle > endAngle) { + endAngle += PI2$6; + } + var angle = Math.atan2(y, x); + if (angle < 0) { + angle += PI2$6; + } + if (angle >= startAngle && angle <= endAngle || angle + PI2$6 >= startAngle && angle + PI2$6 <= endAngle) { + // Project point is on the arc. + out[0] = ox; + out[1] = oy; + return d - r; + } + var x1 = r * Math.cos(startAngle) + cx; + var y1 = r * Math.sin(startAngle) + cy; + var x2 = r * Math.cos(endAngle) + cx; + var y2 = r * Math.sin(endAngle) + cy; + var d1 = (x1 - x) * (x1 - x) + (y1 - y) * (y1 - y); + var d2 = (x2 - x) * (x2 - x) + (y2 - y) * (y2 - y); + if (d1 < d2) { + out[0] = x1; + out[1] = y1; + return Math.sqrt(d1); + } else { + out[0] = x2; + out[1] = y2; + return Math.sqrt(d2); + } + } + function projectPointToLine(x1, y1, x2, y2, x, y, out, limitToEnds) { + var dx = x - x1; + var dy = y - y1; + var dx1 = x2 - x1; + var dy1 = y2 - y1; + var lineLen = Math.sqrt(dx1 * dx1 + dy1 * dy1); + dx1 /= lineLen; + dy1 /= lineLen; + // dot product + var projectedLen = dx * dx1 + dy * dy1; + var t = projectedLen / lineLen; + if (limitToEnds) { + t = Math.min(Math.max(t, 0), 1); + } + t *= lineLen; + var ox = out[0] = x1 + t * dx1; + var oy = out[1] = y1 + t * dy1; + return Math.sqrt((ox - x) * (ox - x) + (oy - y) * (oy - y)); + } + function projectPointToRect(x1, y1, width, height, x, y, out) { + if (width < 0) { + x1 = x1 + width; + width = -width; + } + if (height < 0) { + y1 = y1 + height; + height = -height; + } + var x2 = x1 + width; + var y2 = y1 + height; + var ox = out[0] = Math.min(Math.max(x, x1), x2); + var oy = out[1] = Math.min(Math.max(y, y1), y2); + return Math.sqrt((ox - x) * (ox - x) + (oy - y) * (oy - y)); + } + var tmpPt = []; + function nearestPointOnRect(pt, rect, out) { + var dist = projectPointToRect(rect.x, rect.y, rect.width, rect.height, pt.x, pt.y, tmpPt); + out.set(tmpPt[0], tmpPt[1]); + return dist; + } + /** + * Calculate min distance corresponding point. + * This method won't evaluate if point is in the path. + */ + function nearestPointOnPath(pt, path, out) { + var xi = 0; + var yi = 0; + var x0 = 0; + var y0 = 0; + var x1; + var y1; + var minDist = Infinity; + var data = path.data; + var x = pt.x; + var y = pt.y; + for (var i = 0; i < data.length;) { + var cmd = data[i++]; + if (i === 1) { + xi = data[i]; + yi = data[i + 1]; + x0 = xi; + y0 = yi; + } + var d = minDist; + switch (cmd) { + case CMD$3.M: + // moveTo 命令重新创建一个新的 subpath, 并且更新新的起点 + // 在 closePath 的时候使用 + x0 = data[i++]; + y0 = data[i++]; + xi = x0; + yi = y0; + break; + case CMD$3.L: + d = projectPointToLine(xi, yi, data[i], data[i + 1], x, y, tmpPt, true); + xi = data[i++]; + yi = data[i++]; + break; + case CMD$3.C: + d = cubicProjectPoint(xi, yi, data[i++], data[i++], data[i++], data[i++], data[i], data[i + 1], x, y, tmpPt); + xi = data[i++]; + yi = data[i++]; + break; + case CMD$3.Q: + d = quadraticProjectPoint(xi, yi, data[i++], data[i++], data[i], data[i + 1], x, y, tmpPt); + xi = data[i++]; + yi = data[i++]; + break; + case CMD$3.A: + // TODO Arc 判断的开销比较大 + var cx = data[i++]; + var cy = data[i++]; + var rx = data[i++]; + var ry = data[i++]; + var theta = data[i++]; + var dTheta = data[i++]; + // TODO Arc 旋转 + i += 1; + var anticlockwise = !!(1 - data[i++]); + x1 = Math.cos(theta) * rx + cx; + y1 = Math.sin(theta) * ry + cy; + // 不是直接使用 arc 命令 + if (i <= 1) { + // 第一个命令起点还未定义 + x0 = x1; + y0 = y1; + } + // zr 使用scale来模拟椭圆, 这里也对x做一定的缩放 + var _x = (x - cx) * ry / rx + cx; + d = projectPointToArc(cx, cy, ry, theta, theta + dTheta, anticlockwise, _x, y, tmpPt); + xi = Math.cos(theta + dTheta) * rx + cx; + yi = Math.sin(theta + dTheta) * ry + cy; + break; + case CMD$3.R: + x0 = xi = data[i++]; + y0 = yi = data[i++]; + var width = data[i++]; + var height = data[i++]; + d = projectPointToRect(x0, y0, width, height, x, y, tmpPt); + break; + case CMD$3.Z: + d = projectPointToLine(xi, yi, x0, y0, x, y, tmpPt, true); + xi = x0; + yi = y0; + break; + } + if (d < minDist) { + minDist = d; + out.set(tmpPt[0], tmpPt[1]); + } + } + return minDist; + } + // Temporal variable for intermediate usage. + var pt0 = new Point(); + var pt1 = new Point(); + var pt2 = new Point(); + var dir = new Point(); + var dir2 = new Point(); + /** + * Calculate a proper guide line based on the label position and graphic element definition + * @param label + * @param labelRect + * @param target + * @param targetRect + */ + function updateLabelLinePoints(target, labelLineModel) { + if (!target) { + return; + } + var labelLine = target.getTextGuideLine(); + var label = target.getTextContent(); + // Needs to create text guide in each charts. + if (!(label && labelLine)) { + return; + } + var labelGuideConfig = target.textGuideLineConfig || {}; + var points = [[0, 0], [0, 0], [0, 0]]; + var searchSpace = labelGuideConfig.candidates || DEFAULT_SEARCH_SPACE; + var labelRect = label.getBoundingRect().clone(); + labelRect.applyTransform(label.getComputedTransform()); + var minDist = Infinity; + var anchorPoint = labelGuideConfig.anchor; + var targetTransform = target.getComputedTransform(); + var targetInversedTransform = targetTransform && invert([], targetTransform); + var len = labelLineModel.get('length2') || 0; + if (anchorPoint) { + pt2.copy(anchorPoint); + } + for (var i = 0; i < searchSpace.length; i++) { + var candidate = searchSpace[i]; + getCandidateAnchor(candidate, 0, labelRect, pt0, dir); + Point.scaleAndAdd(pt1, pt0, dir, len); + // Transform to target coord space. + pt1.transform(targetInversedTransform); + // Note: getBoundingRect will ensure the `path` being created. + var boundingRect = target.getBoundingRect(); + var dist = anchorPoint ? anchorPoint.distance(pt1) : target instanceof Path ? nearestPointOnPath(pt1, target.path, pt2) : nearestPointOnRect(pt1, boundingRect, pt2); + // TODO pt2 is in the path + if (dist < minDist) { + minDist = dist; + // Transform back to global space. + pt1.transform(targetTransform); + pt2.transform(targetTransform); + pt2.toArray(points[0]); + pt1.toArray(points[1]); + pt0.toArray(points[2]); + } + } + limitTurnAngle(points, labelLineModel.get('minTurnAngle')); + labelLine.setShape({ + points: points + }); + } + // Temporal variable for the limitTurnAngle function + var tmpArr = []; + var tmpProjPoint = new Point(); + /** + * Reduce the line segment attached to the label to limit the turn angle between two segments. + * @param linePoints + * @param minTurnAngle Radian of minimum turn angle. 0 - 180 + */ + function limitTurnAngle(linePoints, minTurnAngle) { + if (!(minTurnAngle <= 180 && minTurnAngle > 0)) { + return; + } + minTurnAngle = minTurnAngle / 180 * Math.PI; + // The line points can be + // /pt1----pt2 (label) + // / + // pt0/ + pt0.fromArray(linePoints[0]); + pt1.fromArray(linePoints[1]); + pt2.fromArray(linePoints[2]); + Point.sub(dir, pt0, pt1); + Point.sub(dir2, pt2, pt1); + var len1 = dir.len(); + var len2 = dir2.len(); + if (len1 < 1e-3 || len2 < 1e-3) { + return; + } + dir.scale(1 / len1); + dir2.scale(1 / len2); + var angleCos = dir.dot(dir2); + var minTurnAngleCos = Math.cos(minTurnAngle); + if (minTurnAngleCos < angleCos) { + // Smaller than minTurnAngle + // Calculate project point of pt0 on pt1-pt2 + var d = projectPointToLine(pt1.x, pt1.y, pt2.x, pt2.y, pt0.x, pt0.y, tmpArr, false); + tmpProjPoint.fromArray(tmpArr); + // Calculate new projected length with limited minTurnAngle and get the new connect point + tmpProjPoint.scaleAndAdd(dir2, d / Math.tan(Math.PI - minTurnAngle)); + // Limit the new calculated connect point between pt1 and pt2. + var t = pt2.x !== pt1.x ? (tmpProjPoint.x - pt1.x) / (pt2.x - pt1.x) : (tmpProjPoint.y - pt1.y) / (pt2.y - pt1.y); + if (isNaN(t)) { + return; + } + if (t < 0) { + Point.copy(tmpProjPoint, pt1); + } else if (t > 1) { + Point.copy(tmpProjPoint, pt2); + } + tmpProjPoint.toArray(linePoints[1]); + } + } + /** + * Limit the angle of line and the surface + * @param maxSurfaceAngle Radian of minimum turn angle. 0 - 180. 0 is same direction to normal. 180 is opposite + */ + function limitSurfaceAngle(linePoints, surfaceNormal, maxSurfaceAngle) { + if (!(maxSurfaceAngle <= 180 && maxSurfaceAngle > 0)) { + return; + } + maxSurfaceAngle = maxSurfaceAngle / 180 * Math.PI; + pt0.fromArray(linePoints[0]); + pt1.fromArray(linePoints[1]); + pt2.fromArray(linePoints[2]); + Point.sub(dir, pt1, pt0); + Point.sub(dir2, pt2, pt1); + var len1 = dir.len(); + var len2 = dir2.len(); + if (len1 < 1e-3 || len2 < 1e-3) { + return; + } + dir.scale(1 / len1); + dir2.scale(1 / len2); + var angleCos = dir.dot(surfaceNormal); + var maxSurfaceAngleCos = Math.cos(maxSurfaceAngle); + if (angleCos < maxSurfaceAngleCos) { + // Calculate project point of pt0 on pt1-pt2 + var d = projectPointToLine(pt1.x, pt1.y, pt2.x, pt2.y, pt0.x, pt0.y, tmpArr, false); + tmpProjPoint.fromArray(tmpArr); + var HALF_PI = Math.PI / 2; + var angle2 = Math.acos(dir2.dot(surfaceNormal)); + var newAngle = HALF_PI + angle2 - maxSurfaceAngle; + if (newAngle >= HALF_PI) { + // parallel + Point.copy(tmpProjPoint, pt2); + } else { + // Calculate new projected length with limited minTurnAngle and get the new connect point + tmpProjPoint.scaleAndAdd(dir2, d / Math.tan(Math.PI / 2 - newAngle)); + // Limit the new calculated connect point between pt1 and pt2. + var t = pt2.x !== pt1.x ? (tmpProjPoint.x - pt1.x) / (pt2.x - pt1.x) : (tmpProjPoint.y - pt1.y) / (pt2.y - pt1.y); + if (isNaN(t)) { + return; + } + if (t < 0) { + Point.copy(tmpProjPoint, pt1); + } else if (t > 1) { + Point.copy(tmpProjPoint, pt2); + } + } + tmpProjPoint.toArray(linePoints[1]); + } + } + function setLabelLineState(labelLine, ignore, stateName, stateModel) { + var isNormal = stateName === 'normal'; + var stateObj = isNormal ? labelLine : labelLine.ensureState(stateName); + // Make sure display. + stateObj.ignore = ignore; + // Set smooth + var smooth = stateModel.get('smooth'); + if (smooth && smooth === true) { + smooth = 0.3; + } + stateObj.shape = stateObj.shape || {}; + if (smooth > 0) { + stateObj.shape.smooth = smooth; + } + var styleObj = stateModel.getModel('lineStyle').getLineStyle(); + isNormal ? labelLine.useStyle(styleObj) : stateObj.style = styleObj; + } + function buildLabelLinePath(path, shape) { + var smooth = shape.smooth; + var points = shape.points; + if (!points) { + return; + } + path.moveTo(points[0][0], points[0][1]); + if (smooth > 0 && points.length >= 3) { + var len1 = dist(points[0], points[1]); + var len2 = dist(points[1], points[2]); + if (!len1 || !len2) { + path.lineTo(points[1][0], points[1][1]); + path.lineTo(points[2][0], points[2][1]); + return; + } + var moveLen = Math.min(len1, len2) * smooth; + var midPoint0 = lerp([], points[1], points[0], moveLen / len1); + var midPoint2 = lerp([], points[1], points[2], moveLen / len2); + var midPoint1 = lerp([], midPoint0, midPoint2, 0.5); + path.bezierCurveTo(midPoint0[0], midPoint0[1], midPoint0[0], midPoint0[1], midPoint1[0], midPoint1[1]); + path.bezierCurveTo(midPoint2[0], midPoint2[1], midPoint2[0], midPoint2[1], points[2][0], points[2][1]); + } else { + for (var i = 1; i < points.length; i++) { + path.lineTo(points[i][0], points[i][1]); + } + } + } + /** + * Create a label line if necessary and set it's style. + */ + function setLabelLineStyle(targetEl, statesModels, defaultStyle) { + var labelLine = targetEl.getTextGuideLine(); + var label = targetEl.getTextContent(); + if (!label) { + // Not show label line if there is no label. + if (labelLine) { + targetEl.removeTextGuideLine(); + } + return; + } + var normalModel = statesModels.normal; + var showNormal = normalModel.get('show'); + var labelIgnoreNormal = label.ignore; + for (var i = 0; i < DISPLAY_STATES.length; i++) { + var stateName = DISPLAY_STATES[i]; + var stateModel = statesModels[stateName]; + var isNormal = stateName === 'normal'; + if (stateModel) { + var stateShow = stateModel.get('show'); + var isLabelIgnored = isNormal ? labelIgnoreNormal : retrieve2(label.states[stateName] && label.states[stateName].ignore, labelIgnoreNormal); + if (isLabelIgnored // Not show when label is not shown in this state. + || !retrieve2(stateShow, showNormal) // Use normal state by default if not set. + ) { + var stateObj = isNormal ? labelLine : labelLine && labelLine.states[stateName]; + if (stateObj) { + stateObj.ignore = true; + } + if (!!labelLine) { + setLabelLineState(labelLine, true, stateName, stateModel); + } + continue; + } + // Create labelLine if not exists + if (!labelLine) { + labelLine = new Polyline(); + targetEl.setTextGuideLine(labelLine); + // Reset state of normal because it's new created. + // NOTE: NORMAL should always been the first! + if (!isNormal && (labelIgnoreNormal || !showNormal)) { + setLabelLineState(labelLine, true, 'normal', statesModels.normal); + } + // Use same state proxy. + if (targetEl.stateProxy) { + labelLine.stateProxy = targetEl.stateProxy; + } + } + setLabelLineState(labelLine, false, stateName, stateModel); + } + } + if (labelLine) { + defaults(labelLine.style, defaultStyle); + // Not fill. + labelLine.style.fill = null; + var showAbove = normalModel.get('showAbove'); + var labelLineConfig = targetEl.textGuideLineConfig = targetEl.textGuideLineConfig || {}; + labelLineConfig.showAbove = showAbove || false; + // Custom the buildPath. + labelLine.buildPath = buildLabelLinePath; + } + } + function getLabelLineStatesModels(itemModel, labelLineName) { + labelLineName = labelLineName || 'labelLine'; + var statesModels = { + normal: itemModel.getModel(labelLineName) + }; + for (var i = 0; i < SPECIAL_STATES.length; i++) { + var stateName = SPECIAL_STATES[i]; + statesModels[stateName] = itemModel.getModel([stateName, labelLineName]); + } + return statesModels; + } + + function prepareLayoutList(input) { + var list = []; + for (var i = 0; i < input.length; i++) { + var rawItem = input[i]; + if (rawItem.defaultAttr.ignore) { + continue; + } + var label = rawItem.label; + var transform = label.getComputedTransform(); + // NOTE: Get bounding rect after getComputedTransform, or label may not been updated by the host el. + var localRect = label.getBoundingRect(); + var isAxisAligned = !transform || transform[1] < 1e-5 && transform[2] < 1e-5; + var minMargin = label.style.margin || 0; + var globalRect = localRect.clone(); + globalRect.applyTransform(transform); + globalRect.x -= minMargin / 2; + globalRect.y -= minMargin / 2; + globalRect.width += minMargin; + globalRect.height += minMargin; + var obb = isAxisAligned ? new OrientedBoundingRect(localRect, transform) : null; + list.push({ + label: label, + labelLine: rawItem.labelLine, + rect: globalRect, + localRect: localRect, + obb: obb, + priority: rawItem.priority, + defaultAttr: rawItem.defaultAttr, + layoutOption: rawItem.computedLayoutOption, + axisAligned: isAxisAligned, + transform: transform + }); + } + return list; + } + function shiftLayout(list, xyDim, sizeDim, minBound, maxBound, balanceShift) { + var len = list.length; + if (len < 2) { + return; + } + list.sort(function (a, b) { + return a.rect[xyDim] - b.rect[xyDim]; + }); + var lastPos = 0; + var delta; + var adjusted = false; + var totalShifts = 0; + for (var i = 0; i < len; i++) { + var item = list[i]; + var rect = item.rect; + delta = rect[xyDim] - lastPos; + if (delta < 0) { + // shiftForward(i, len, -delta); + rect[xyDim] -= delta; + item.label[xyDim] -= delta; + adjusted = true; + } + var shift = Math.max(-delta, 0); + totalShifts += shift; + lastPos = rect[xyDim] + rect[sizeDim]; + } + if (totalShifts > 0 && balanceShift) { + // Shift back to make the distribution more equally. + shiftList(-totalShifts / len, 0, len); + } + // TODO bleedMargin? + var first = list[0]; + var last = list[len - 1]; + var minGap; + var maxGap; + updateMinMaxGap(); + // If ends exceed two bounds, squeeze at most 80%, then take the gap of two bounds. + minGap < 0 && squeezeGaps(-minGap, 0.8); + maxGap < 0 && squeezeGaps(maxGap, 0.8); + updateMinMaxGap(); + takeBoundsGap(minGap, maxGap, 1); + takeBoundsGap(maxGap, minGap, -1); + // Handle bailout when there is not enough space. + updateMinMaxGap(); + if (minGap < 0) { + squeezeWhenBailout(-minGap); + } + if (maxGap < 0) { + squeezeWhenBailout(maxGap); + } + function updateMinMaxGap() { + minGap = first.rect[xyDim] - minBound; + maxGap = maxBound - last.rect[xyDim] - last.rect[sizeDim]; + } + function takeBoundsGap(gapThisBound, gapOtherBound, moveDir) { + if (gapThisBound < 0) { + // Move from other gap if can. + var moveFromMaxGap = Math.min(gapOtherBound, -gapThisBound); + if (moveFromMaxGap > 0) { + shiftList(moveFromMaxGap * moveDir, 0, len); + var remained = moveFromMaxGap + gapThisBound; + if (remained < 0) { + squeezeGaps(-remained * moveDir, 1); + } + } else { + squeezeGaps(-gapThisBound * moveDir, 1); + } + } + } + function shiftList(delta, start, end) { + if (delta !== 0) { + adjusted = true; + } + for (var i = start; i < end; i++) { + var item = list[i]; + var rect = item.rect; + rect[xyDim] += delta; + item.label[xyDim] += delta; + } + } + // Squeeze gaps if the labels exceed margin. + function squeezeGaps(delta, maxSqeezePercent) { + var gaps = []; + var totalGaps = 0; + for (var i = 1; i < len; i++) { + var prevItemRect = list[i - 1].rect; + var gap = Math.max(list[i].rect[xyDim] - prevItemRect[xyDim] - prevItemRect[sizeDim], 0); + gaps.push(gap); + totalGaps += gap; + } + if (!totalGaps) { + return; + } + var squeezePercent = Math.min(Math.abs(delta) / totalGaps, maxSqeezePercent); + if (delta > 0) { + for (var i = 0; i < len - 1; i++) { + // Distribute the shift delta to all gaps. + var movement = gaps[i] * squeezePercent; + // Forward + shiftList(movement, 0, i + 1); + } + } else { + // Backward + for (var i = len - 1; i > 0; i--) { + // Distribute the shift delta to all gaps. + var movement = gaps[i - 1] * squeezePercent; + shiftList(-movement, i, len); + } + } + } + /** + * Squeeze to allow overlap if there is no more space available. + * Let other overlapping strategy like hideOverlap do the job instead of keep exceeding the bounds. + */ + function squeezeWhenBailout(delta) { + var dir = delta < 0 ? -1 : 1; + delta = Math.abs(delta); + var moveForEachLabel = Math.ceil(delta / (len - 1)); + for (var i = 0; i < len - 1; i++) { + if (dir > 0) { + // Forward + shiftList(moveForEachLabel, 0, i + 1); + } else { + // Backward + shiftList(-moveForEachLabel, len - i - 1, len); + } + delta -= moveForEachLabel; + if (delta <= 0) { + return; + } + } + } + return adjusted; + } + /** + * Adjust labels on x direction to avoid overlap. + */ + function shiftLayoutOnX(list, leftBound, rightBound, + // If average the shifts on all labels and add them to 0 + // TODO: Not sure if should enable it. + // Pros: The angle of lines will distribute more equally + // Cons: In some layout. It may not what user wanted. like in pie. the label of last sector is usually changed unexpectedly. + balanceShift) { + return shiftLayout(list, 'x', 'width', leftBound, rightBound, balanceShift); + } + /** + * Adjust labels on y direction to avoid overlap. + */ + function shiftLayoutOnY(list, topBound, bottomBound, + // If average the shifts on all labels and add them to 0 + balanceShift) { + return shiftLayout(list, 'y', 'height', topBound, bottomBound, balanceShift); + } + function hideOverlap(labelList) { + var displayedLabels = []; + // TODO, render overflow visible first, put in the displayedLabels. + labelList.sort(function (a, b) { + return b.priority - a.priority; + }); + var globalRect = new BoundingRect(0, 0, 0, 0); + function hideEl(el) { + if (!el.ignore) { + // Show on emphasis. + var emphasisState = el.ensureState('emphasis'); + if (emphasisState.ignore == null) { + emphasisState.ignore = false; + } + } + el.ignore = true; + } + for (var i = 0; i < labelList.length; i++) { + var labelItem = labelList[i]; + var isAxisAligned = labelItem.axisAligned; + var localRect = labelItem.localRect; + var transform = labelItem.transform; + var label = labelItem.label; + var labelLine = labelItem.labelLine; + globalRect.copy(labelItem.rect); + // Add a threshold because layout may be aligned precisely. + globalRect.width -= 0.1; + globalRect.height -= 0.1; + globalRect.x += 0.05; + globalRect.y += 0.05; + var obb = labelItem.obb; + var overlapped = false; + for (var j = 0; j < displayedLabels.length; j++) { + var existsTextCfg = displayedLabels[j]; + // Fast rejection. + if (!globalRect.intersect(existsTextCfg.rect)) { + continue; + } + if (isAxisAligned && existsTextCfg.axisAligned) { + // Is overlapped + overlapped = true; + break; + } + if (!existsTextCfg.obb) { + // If self is not axis aligned. But other is. + existsTextCfg.obb = new OrientedBoundingRect(existsTextCfg.localRect, existsTextCfg.transform); + } + if (!obb) { + // If self is axis aligned. But other is not. + obb = new OrientedBoundingRect(localRect, transform); + } + if (obb.intersect(existsTextCfg.obb)) { + overlapped = true; + break; + } + } + // TODO Callback to determine if this overlap should be handled? + if (overlapped) { + hideEl(label); + labelLine && hideEl(labelLine); + } else { + label.attr('ignore', labelItem.defaultAttr.ignore); + labelLine && labelLine.attr('ignore', labelItem.defaultAttr.labelGuideIgnore); + displayedLabels.push(labelItem); + } + } + } + + function cloneArr(points) { + if (points) { + var newPoints = []; + for (var i = 0; i < points.length; i++) { + newPoints.push(points[i].slice()); + } + return newPoints; + } + } + function prepareLayoutCallbackParams(labelItem, hostEl) { + var label = labelItem.label; + var labelLine = hostEl && hostEl.getTextGuideLine(); + return { + dataIndex: labelItem.dataIndex, + dataType: labelItem.dataType, + seriesIndex: labelItem.seriesModel.seriesIndex, + text: labelItem.label.style.text, + rect: labelItem.hostRect, + labelRect: labelItem.rect, + // x: labelAttr.x, + // y: labelAttr.y, + align: label.style.align, + verticalAlign: label.style.verticalAlign, + labelLinePoints: cloneArr(labelLine && labelLine.shape.points) + }; + } + var LABEL_OPTION_TO_STYLE_KEYS = ['align', 'verticalAlign', 'width', 'height', 'fontSize']; + var dummyTransformable = new Transformable(); + var labelLayoutInnerStore = makeInner(); + var labelLineAnimationStore = makeInner(); + function extendWithKeys(target, source, keys) { + for (var i = 0; i < keys.length; i++) { + var key = keys[i]; + if (source[key] != null) { + target[key] = source[key]; + } + } + } + var LABEL_LAYOUT_PROPS = ['x', 'y', 'rotation']; + var LabelManager = /** @class */function () { + function LabelManager() { + this._labelList = []; + this._chartViewList = []; + } + LabelManager.prototype.clearLabels = function () { + this._labelList = []; + this._chartViewList = []; + }; + /** + * Add label to manager + */ + LabelManager.prototype._addLabel = function (dataIndex, dataType, seriesModel, label, layoutOption) { + var labelStyle = label.style; + var hostEl = label.__hostTarget; + var textConfig = hostEl.textConfig || {}; + // TODO: If label is in other state. + var labelTransform = label.getComputedTransform(); + var labelRect = label.getBoundingRect().plain(); + BoundingRect.applyTransform(labelRect, labelRect, labelTransform); + if (labelTransform) { + dummyTransformable.setLocalTransform(labelTransform); + } else { + // Identity transform. + dummyTransformable.x = dummyTransformable.y = dummyTransformable.rotation = dummyTransformable.originX = dummyTransformable.originY = 0; + dummyTransformable.scaleX = dummyTransformable.scaleY = 1; + } + dummyTransformable.rotation = normalizeRadian(dummyTransformable.rotation); + var host = label.__hostTarget; + var hostRect; + if (host) { + hostRect = host.getBoundingRect().plain(); + var transform = host.getComputedTransform(); + BoundingRect.applyTransform(hostRect, hostRect, transform); + } + var labelGuide = hostRect && host.getTextGuideLine(); + this._labelList.push({ + label: label, + labelLine: labelGuide, + seriesModel: seriesModel, + dataIndex: dataIndex, + dataType: dataType, + layoutOption: layoutOption, + computedLayoutOption: null, + rect: labelRect, + hostRect: hostRect, + // Label with lower priority will be hidden when overlapped + // Use rect size as default priority + priority: hostRect ? hostRect.width * hostRect.height : 0, + // Save default label attributes. + // For restore if developers want get back to default value in callback. + defaultAttr: { + ignore: label.ignore, + labelGuideIgnore: labelGuide && labelGuide.ignore, + x: dummyTransformable.x, + y: dummyTransformable.y, + scaleX: dummyTransformable.scaleX, + scaleY: dummyTransformable.scaleY, + rotation: dummyTransformable.rotation, + style: { + x: labelStyle.x, + y: labelStyle.y, + align: labelStyle.align, + verticalAlign: labelStyle.verticalAlign, + width: labelStyle.width, + height: labelStyle.height, + fontSize: labelStyle.fontSize + }, + cursor: label.cursor, + attachedPos: textConfig.position, + attachedRot: textConfig.rotation + } + }); + }; + LabelManager.prototype.addLabelsOfSeries = function (chartView) { + var _this = this; + this._chartViewList.push(chartView); + var seriesModel = chartView.__model; + var layoutOption = seriesModel.get('labelLayout'); + /** + * Ignore layouting if it's not specified anything. + */ + if (!(isFunction(layoutOption) || keys(layoutOption).length)) { + return; + } + chartView.group.traverse(function (child) { + if (child.ignore) { + return true; // Stop traverse descendants. + } + // Only support label being hosted on graphic elements. + var textEl = child.getTextContent(); + var ecData = getECData(child); + // Can only attach the text on the element with dataIndex + if (textEl && !textEl.disableLabelLayout) { + _this._addLabel(ecData.dataIndex, ecData.dataType, seriesModel, textEl, layoutOption); + } + }); + }; + LabelManager.prototype.updateLayoutConfig = function (api) { + var width = api.getWidth(); + var height = api.getHeight(); + function createDragHandler(el, labelLineModel) { + return function () { + updateLabelLinePoints(el, labelLineModel); + }; + } + for (var i = 0; i < this._labelList.length; i++) { + var labelItem = this._labelList[i]; + var label = labelItem.label; + var hostEl = label.__hostTarget; + var defaultLabelAttr = labelItem.defaultAttr; + var layoutOption = void 0; + // TODO A global layout option? + if (isFunction(labelItem.layoutOption)) { + layoutOption = labelItem.layoutOption(prepareLayoutCallbackParams(labelItem, hostEl)); + } else { + layoutOption = labelItem.layoutOption; + } + layoutOption = layoutOption || {}; + labelItem.computedLayoutOption = layoutOption; + var degreeToRadian = Math.PI / 180; + // TODO hostEl should always exists. + // Or label should not have parent because the x, y is all in global space. + if (hostEl) { + hostEl.setTextConfig({ + // Force to set local false. + local: false, + // Ignore position and rotation config on the host el if x or y is changed. + position: layoutOption.x != null || layoutOption.y != null ? null : defaultLabelAttr.attachedPos, + // Ignore rotation config on the host el if rotation is changed. + rotation: layoutOption.rotate != null ? layoutOption.rotate * degreeToRadian : defaultLabelAttr.attachedRot, + offset: [layoutOption.dx || 0, layoutOption.dy || 0] + }); + } + var needsUpdateLabelLine = false; + if (layoutOption.x != null) { + // TODO width of chart view. + label.x = parsePercent$1(layoutOption.x, width); + label.setStyle('x', 0); // Ignore movement in style. TODO: origin. + needsUpdateLabelLine = true; + } else { + label.x = defaultLabelAttr.x; + label.setStyle('x', defaultLabelAttr.style.x); + } + if (layoutOption.y != null) { + // TODO height of chart view. + label.y = parsePercent$1(layoutOption.y, height); + label.setStyle('y', 0); // Ignore movement in style. + needsUpdateLabelLine = true; + } else { + label.y = defaultLabelAttr.y; + label.setStyle('y', defaultLabelAttr.style.y); + } + if (layoutOption.labelLinePoints) { + var guideLine = hostEl.getTextGuideLine(); + if (guideLine) { + guideLine.setShape({ + points: layoutOption.labelLinePoints + }); + // Not update + needsUpdateLabelLine = false; + } + } + var labelLayoutStore = labelLayoutInnerStore(label); + labelLayoutStore.needsUpdateLabelLine = needsUpdateLabelLine; + label.rotation = layoutOption.rotate != null ? layoutOption.rotate * degreeToRadian : defaultLabelAttr.rotation; + label.scaleX = defaultLabelAttr.scaleX; + label.scaleY = defaultLabelAttr.scaleY; + for (var k = 0; k < LABEL_OPTION_TO_STYLE_KEYS.length; k++) { + var key = LABEL_OPTION_TO_STYLE_KEYS[k]; + label.setStyle(key, layoutOption[key] != null ? layoutOption[key] : defaultLabelAttr.style[key]); + } + if (layoutOption.draggable) { + label.draggable = true; + label.cursor = 'move'; + if (hostEl) { + var hostModel = labelItem.seriesModel; + if (labelItem.dataIndex != null) { + var data = labelItem.seriesModel.getData(labelItem.dataType); + hostModel = data.getItemModel(labelItem.dataIndex); + } + label.on('drag', createDragHandler(hostEl, hostModel.getModel('labelLine'))); + } + } else { + // TODO Other drag functions? + label.off('drag'); + label.cursor = defaultLabelAttr.cursor; + } + } + }; + LabelManager.prototype.layout = function (api) { + var width = api.getWidth(); + var height = api.getHeight(); + var labelList = prepareLayoutList(this._labelList); + var labelsNeedsAdjustOnX = filter(labelList, function (item) { + return item.layoutOption.moveOverlap === 'shiftX'; + }); + var labelsNeedsAdjustOnY = filter(labelList, function (item) { + return item.layoutOption.moveOverlap === 'shiftY'; + }); + shiftLayoutOnX(labelsNeedsAdjustOnX, 0, width); + shiftLayoutOnY(labelsNeedsAdjustOnY, 0, height); + var labelsNeedsHideOverlap = filter(labelList, function (item) { + return item.layoutOption.hideOverlap; + }); + hideOverlap(labelsNeedsHideOverlap); + }; + /** + * Process all labels. Not only labels with layoutOption. + */ + LabelManager.prototype.processLabelsOverall = function () { + var _this = this; + each(this._chartViewList, function (chartView) { + var seriesModel = chartView.__model; + var ignoreLabelLineUpdate = chartView.ignoreLabelLineUpdate; + var animationEnabled = seriesModel.isAnimationEnabled(); + chartView.group.traverse(function (child) { + if (child.ignore && !child.forceLabelAnimation) { + return true; // Stop traverse descendants. + } + + var needsUpdateLabelLine = !ignoreLabelLineUpdate; + var label = child.getTextContent(); + if (!needsUpdateLabelLine && label) { + needsUpdateLabelLine = labelLayoutInnerStore(label).needsUpdateLabelLine; + } + if (needsUpdateLabelLine) { + _this._updateLabelLine(child, seriesModel); + } + if (animationEnabled) { + _this._animateLabels(child, seriesModel); + } + }); + }); + }; + LabelManager.prototype._updateLabelLine = function (el, seriesModel) { + // Only support label being hosted on graphic elements. + var textEl = el.getTextContent(); + // Update label line style. + var ecData = getECData(el); + var dataIndex = ecData.dataIndex; + // Only support labelLine on the labels represent data. + if (textEl && dataIndex != null) { + var data = seriesModel.getData(ecData.dataType); + var itemModel = data.getItemModel(dataIndex); + var defaultStyle = {}; + var visualStyle = data.getItemVisual(dataIndex, 'style'); + if (visualStyle) { + var visualType = data.getVisual('drawType'); + // Default to be same with main color + defaultStyle.stroke = visualStyle[visualType]; + } + var labelLineModel = itemModel.getModel('labelLine'); + setLabelLineStyle(el, getLabelLineStatesModels(itemModel), defaultStyle); + updateLabelLinePoints(el, labelLineModel); + } + }; + LabelManager.prototype._animateLabels = function (el, seriesModel) { + var textEl = el.getTextContent(); + var guideLine = el.getTextGuideLine(); + // Animate + if (textEl + // `forceLabelAnimation` has the highest priority + && (el.forceLabelAnimation || !textEl.ignore && !textEl.invisible && !el.disableLabelAnimation && !isElementRemoved(el))) { + var layoutStore = labelLayoutInnerStore(textEl); + var oldLayout = layoutStore.oldLayout; + var ecData = getECData(el); + var dataIndex = ecData.dataIndex; + var newProps = { + x: textEl.x, + y: textEl.y, + rotation: textEl.rotation + }; + var data = seriesModel.getData(ecData.dataType); + if (!oldLayout) { + textEl.attr(newProps); + // Disable fade in animation if value animation is enabled. + if (!labelInner(textEl).valueAnimation) { + var oldOpacity = retrieve2(textEl.style.opacity, 1); + // Fade in animation + textEl.style.opacity = 0; + initProps(textEl, { + style: { + opacity: oldOpacity + } + }, seriesModel, dataIndex); + } + } else { + textEl.attr(oldLayout); + // Make sure the animation from is in the right status. + var prevStates = el.prevStates; + if (prevStates) { + if (indexOf(prevStates, 'select') >= 0) { + textEl.attr(layoutStore.oldLayoutSelect); + } + if (indexOf(prevStates, 'emphasis') >= 0) { + textEl.attr(layoutStore.oldLayoutEmphasis); + } + } + updateProps(textEl, newProps, seriesModel, dataIndex); + } + layoutStore.oldLayout = newProps; + if (textEl.states.select) { + var layoutSelect = layoutStore.oldLayoutSelect = {}; + extendWithKeys(layoutSelect, newProps, LABEL_LAYOUT_PROPS); + extendWithKeys(layoutSelect, textEl.states.select, LABEL_LAYOUT_PROPS); + } + if (textEl.states.emphasis) { + var layoutEmphasis = layoutStore.oldLayoutEmphasis = {}; + extendWithKeys(layoutEmphasis, newProps, LABEL_LAYOUT_PROPS); + extendWithKeys(layoutEmphasis, textEl.states.emphasis, LABEL_LAYOUT_PROPS); + } + animateLabelValue(textEl, dataIndex, data, seriesModel, seriesModel); + } + if (guideLine && !guideLine.ignore && !guideLine.invisible) { + var layoutStore = labelLineAnimationStore(guideLine); + var oldLayout = layoutStore.oldLayout; + var newLayout = { + points: guideLine.shape.points + }; + if (!oldLayout) { + guideLine.setShape(newLayout); + guideLine.style.strokePercent = 0; + initProps(guideLine, { + style: { + strokePercent: 1 + } + }, seriesModel); + } else { + guideLine.attr({ + shape: oldLayout + }); + updateProps(guideLine, { + shape: newLayout + }, seriesModel); + } + layoutStore.oldLayout = newLayout; + } + }; + return LabelManager; + }(); + + var getLabelManager = makeInner(); + function installLabelLayout(registers) { + registers.registerUpdateLifecycle('series:beforeupdate', function (ecModel, api, params) { + // TODO api provide an namespace that can save stuff per instance + var labelManager = getLabelManager(api).labelManager; + if (!labelManager) { + labelManager = getLabelManager(api).labelManager = new LabelManager(); + } + labelManager.clearLabels(); + }); + registers.registerUpdateLifecycle('series:layoutlabels', function (ecModel, api, params) { + var labelManager = getLabelManager(api).labelManager; + params.updatedSeries.forEach(function (series) { + labelManager.addLabelsOfSeries(api.getViewOfSeriesModel(series)); + }); + labelManager.updateLayoutConfig(api); + labelManager.layout(api); + labelManager.processLabelsOverall(); + }); + } + + var mathSin$4 = Math.sin; + var mathCos$4 = Math.cos; + var PI$4 = Math.PI; + var PI2$7 = Math.PI * 2; + var degree = 180 / PI$4; + var SVGPathRebuilder = (function () { + function SVGPathRebuilder() { + } + SVGPathRebuilder.prototype.reset = function (precision) { + this._start = true; + this._d = []; + this._str = ''; + this._p = Math.pow(10, precision || 4); + }; + SVGPathRebuilder.prototype.moveTo = function (x, y) { + this._add('M', x, y); + }; + SVGPathRebuilder.prototype.lineTo = function (x, y) { + this._add('L', x, y); + }; + SVGPathRebuilder.prototype.bezierCurveTo = function (x, y, x2, y2, x3, y3) { + this._add('C', x, y, x2, y2, x3, y3); + }; + SVGPathRebuilder.prototype.quadraticCurveTo = function (x, y, x2, y2) { + this._add('Q', x, y, x2, y2); + }; + SVGPathRebuilder.prototype.arc = function (cx, cy, r, startAngle, endAngle, anticlockwise) { + this.ellipse(cx, cy, r, r, 0, startAngle, endAngle, anticlockwise); + }; + SVGPathRebuilder.prototype.ellipse = function (cx, cy, rx, ry, psi, startAngle, endAngle, anticlockwise) { + var dTheta = endAngle - startAngle; + var clockwise = !anticlockwise; + var dThetaPositive = Math.abs(dTheta); + var isCircle = isAroundZero$1(dThetaPositive - PI2$7) + || (clockwise ? dTheta >= PI2$7 : -dTheta >= PI2$7); + var unifiedTheta = dTheta > 0 ? dTheta % PI2$7 : (dTheta % PI2$7 + PI2$7); + var large = false; + if (isCircle) { + large = true; + } + else if (isAroundZero$1(dThetaPositive)) { + large = false; + } + else { + large = (unifiedTheta >= PI$4) === !!clockwise; + } + var x0 = cx + rx * mathCos$4(startAngle); + var y0 = cy + ry * mathSin$4(startAngle); + if (this._start) { + this._add('M', x0, y0); + } + var xRot = Math.round(psi * degree); + if (isCircle) { + var p = 1 / this._p; + var dTheta_1 = (clockwise ? 1 : -1) * (PI2$7 - p); + this._add('A', rx, ry, xRot, 1, +clockwise, cx + rx * mathCos$4(startAngle + dTheta_1), cy + ry * mathSin$4(startAngle + dTheta_1)); + if (p > 1e-2) { + this._add('A', rx, ry, xRot, 0, +clockwise, x0, y0); + } + } + else { + var x = cx + rx * mathCos$4(endAngle); + var y = cy + ry * mathSin$4(endAngle); + this._add('A', rx, ry, xRot, +large, +clockwise, x, y); + } + }; + SVGPathRebuilder.prototype.rect = function (x, y, w, h) { + this._add('M', x, y); + this._add('l', w, 0); + this._add('l', 0, h); + this._add('l', -w, 0); + this._add('Z'); + }; + SVGPathRebuilder.prototype.closePath = function () { + if (this._d.length > 0) { + this._add('Z'); + } + }; + SVGPathRebuilder.prototype._add = function (cmd, a, b, c, d, e, f, g, h) { + var vals = []; + var p = this._p; + for (var i = 1; i < arguments.length; i++) { + var val = arguments[i]; + if (isNaN(val)) { + this._invalid = true; + return; + } + vals.push(Math.round(val * p) / p); + } + this._d.push(cmd + vals.join(' ')); + this._start = cmd === 'Z'; + }; + SVGPathRebuilder.prototype.generateStr = function () { + this._str = this._invalid ? '' : this._d.join(''); + this._d = []; + }; + SVGPathRebuilder.prototype.getStr = function () { + return this._str; + }; + return SVGPathRebuilder; + }()); + + var NONE = 'none'; + var mathRound$1 = Math.round; + function pathHasFill(style) { + var fill = style.fill; + return fill != null && fill !== NONE; + } + function pathHasStroke(style) { + var stroke = style.stroke; + return stroke != null && stroke !== NONE; + } + var strokeProps = ['lineCap', 'miterLimit', 'lineJoin']; + var svgStrokeProps = map(strokeProps, function (prop) { return "stroke-" + prop.toLowerCase(); }); + function mapStyleToAttrs(updateAttr, style, el, forceUpdate) { + var opacity = style.opacity == null ? 1 : style.opacity; + if (el instanceof ZRImage) { + updateAttr('opacity', opacity); + return; + } + if (pathHasFill(style)) { + var fill = normalizeColor(style.fill); + updateAttr('fill', fill.color); + var fillOpacity = style.fillOpacity != null + ? style.fillOpacity * fill.opacity * opacity + : fill.opacity * opacity; + if (forceUpdate || fillOpacity < 1) { + updateAttr('fill-opacity', fillOpacity); + } + } + else { + updateAttr('fill', NONE); + } + if (pathHasStroke(style)) { + var stroke = normalizeColor(style.stroke); + updateAttr('stroke', stroke.color); + var strokeScale = style.strokeNoScale + ? el.getLineScale() + : 1; + var strokeWidth = (strokeScale ? (style.lineWidth || 0) / strokeScale : 0); + var strokeOpacity = style.strokeOpacity != null + ? style.strokeOpacity * stroke.opacity * opacity + : stroke.opacity * opacity; + var strokeFirst = style.strokeFirst; + if (forceUpdate || strokeWidth !== 1) { + updateAttr('stroke-width', strokeWidth); + } + if (forceUpdate || strokeFirst) { + updateAttr('paint-order', strokeFirst ? 'stroke' : 'fill'); + } + if (forceUpdate || strokeOpacity < 1) { + updateAttr('stroke-opacity', strokeOpacity); + } + if (style.lineDash) { + var _a = getLineDash(el), lineDash = _a[0], lineDashOffset = _a[1]; + if (lineDash) { + lineDashOffset = mathRound$1(lineDashOffset || 0); + updateAttr('stroke-dasharray', lineDash.join(',')); + if (lineDashOffset || forceUpdate) { + updateAttr('stroke-dashoffset', lineDashOffset); + } + } + } + else if (forceUpdate) { + updateAttr('stroke-dasharray', NONE); + } + for (var i = 0; i < strokeProps.length; i++) { + var propName = strokeProps[i]; + if (forceUpdate || style[propName] !== DEFAULT_PATH_STYLE[propName]) { + var val = style[propName] || DEFAULT_PATH_STYLE[propName]; + val && updateAttr(svgStrokeProps[i], val); + } + } + } + else if (forceUpdate) { + updateAttr('stroke', NONE); + } + } + + var SVGNS = 'http://www.w3.org/2000/svg'; + var XLINKNS = 'http://www.w3.org/1999/xlink'; + var XMLNS = 'http://www.w3.org/2000/xmlns/'; + var XML_NAMESPACE = 'http://www.w3.org/XML/1998/namespace'; + var META_DATA_PREFIX = 'ecmeta_'; + function createElement(name) { + return document.createElementNS(SVGNS, name); + } + function createVNode(tag, key, attrs, children, text) { + return { + tag: tag, + attrs: attrs || {}, + children: children, + text: text, + key: key + }; + } + function createElementOpen(name, attrs) { + var attrsStr = []; + if (attrs) { + for (var key in attrs) { + var val = attrs[key]; + var part = key; + if (val === false) { + continue; + } + else if (val !== true && val != null) { + part += "=\"" + val + "\""; + } + attrsStr.push(part); + } + } + return "<" + name + " " + attrsStr.join(' ') + ">"; + } + function createElementClose(name) { + return "</" + name + ">"; + } + function vNodeToString(el, opts) { + opts = opts || {}; + var S = opts.newline ? '\n' : ''; + function convertElToString(el) { + var children = el.children, tag = el.tag, attrs = el.attrs, text = el.text; + return createElementOpen(tag, attrs) + + (tag !== 'style' ? encodeHTML(text) : text || '') + + (children ? "" + S + map(children, function (child) { return convertElToString(child); }).join(S) + S : '') + + createElementClose(tag); + } + return convertElToString(el); + } + function getCssString(selectorNodes, animationNodes, opts) { + opts = opts || {}; + var S = opts.newline ? '\n' : ''; + var bracketBegin = " {" + S; + var bracketEnd = S + "}"; + var selectors = map(keys(selectorNodes), function (className) { + return className + bracketBegin + map(keys(selectorNodes[className]), function (attrName) { + return attrName + ":" + selectorNodes[className][attrName] + ";"; + }).join(S) + bracketEnd; + }).join(S); + var animations = map(keys(animationNodes), function (animationName) { + return "@keyframes " + animationName + bracketBegin + map(keys(animationNodes[animationName]), function (percent) { + return percent + bracketBegin + map(keys(animationNodes[animationName][percent]), function (attrName) { + var val = animationNodes[animationName][percent][attrName]; + if (attrName === 'd') { + val = "path(\"" + val + "\")"; + } + return attrName + ":" + val + ";"; + }).join(S) + bracketEnd; + }).join(S) + bracketEnd; + }).join(S); + if (!selectors && !animations) { + return ''; + } + return ['<![CDATA[', selectors, animations, ']]>'].join(S); + } + function createBrushScope(zrId) { + return { + zrId: zrId, + shadowCache: {}, + patternCache: {}, + gradientCache: {}, + clipPathCache: {}, + defs: {}, + cssNodes: {}, + cssAnims: {}, + cssStyleCache: {}, + cssAnimIdx: 0, + shadowIdx: 0, + gradientIdx: 0, + patternIdx: 0, + clipPathIdx: 0 + }; + } + function createSVGVNode(width, height, children, useViewBox) { + return createVNode('svg', 'root', { + 'width': width, + 'height': height, + 'xmlns': SVGNS, + 'xmlns:xlink': XLINKNS, + 'version': '1.1', + 'baseProfile': 'full', + 'viewBox': useViewBox ? "0 0 " + width + " " + height : false + }, children); + } + + var cssClassIdx = 0; + function getClassId() { + return cssClassIdx++; + } + + var EASING_MAP = { + cubicIn: '0.32,0,0.67,0', + cubicOut: '0.33,1,0.68,1', + cubicInOut: '0.65,0,0.35,1', + quadraticIn: '0.11,0,0.5,0', + quadraticOut: '0.5,1,0.89,1', + quadraticInOut: '0.45,0,0.55,1', + quarticIn: '0.5,0,0.75,0', + quarticOut: '0.25,1,0.5,1', + quarticInOut: '0.76,0,0.24,1', + quinticIn: '0.64,0,0.78,0', + quinticOut: '0.22,1,0.36,1', + quinticInOut: '0.83,0,0.17,1', + sinusoidalIn: '0.12,0,0.39,0', + sinusoidalOut: '0.61,1,0.88,1', + sinusoidalInOut: '0.37,0,0.63,1', + exponentialIn: '0.7,0,0.84,0', + exponentialOut: '0.16,1,0.3,1', + exponentialInOut: '0.87,0,0.13,1', + circularIn: '0.55,0,1,0.45', + circularOut: '0,0.55,0.45,1', + circularInOut: '0.85,0,0.15,1' + }; + var transformOriginKey = 'transform-origin'; + function buildPathString(el, kfShape, path) { + var shape = extend({}, el.shape); + extend(shape, kfShape); + el.buildPath(path, shape); + var svgPathBuilder = new SVGPathRebuilder(); + svgPathBuilder.reset(getPathPrecision(el)); + path.rebuildPath(svgPathBuilder, 1); + svgPathBuilder.generateStr(); + return svgPathBuilder.getStr(); + } + function setTransformOrigin(target, transform) { + var originX = transform.originX, originY = transform.originY; + if (originX || originY) { + target[transformOriginKey] = originX + "px " + originY + "px"; + } + } + var ANIMATE_STYLE_MAP = { + fill: 'fill', + opacity: 'opacity', + lineWidth: 'stroke-width', + lineDashOffset: 'stroke-dashoffset' + }; + function addAnimation(cssAnim, scope) { + var animationName = scope.zrId + '-ani-' + scope.cssAnimIdx++; + scope.cssAnims[animationName] = cssAnim; + return animationName; + } + function createCompoundPathCSSAnimation(el, attrs, scope) { + var paths = el.shape.paths; + var composedAnim = {}; + var cssAnimationCfg; + var cssAnimationName; + each(paths, function (path) { + var subScope = createBrushScope(scope.zrId); + subScope.animation = true; + createCSSAnimation(path, {}, subScope, true); + var cssAnims = subScope.cssAnims; + var cssNodes = subScope.cssNodes; + var animNames = keys(cssAnims); + var len = animNames.length; + if (!len) { + return; + } + cssAnimationName = animNames[len - 1]; + var lastAnim = cssAnims[cssAnimationName]; + for (var percent in lastAnim) { + var kf = lastAnim[percent]; + composedAnim[percent] = composedAnim[percent] || { d: '' }; + composedAnim[percent].d += kf.d || ''; + } + for (var className in cssNodes) { + var val = cssNodes[className].animation; + if (val.indexOf(cssAnimationName) >= 0) { + cssAnimationCfg = val; + } + } + }); + if (!cssAnimationCfg) { + return; + } + attrs.d = false; + var animationName = addAnimation(composedAnim, scope); + return cssAnimationCfg.replace(cssAnimationName, animationName); + } + function getEasingFunc(easing) { + return isString(easing) + ? EASING_MAP[easing] + ? "cubic-bezier(" + EASING_MAP[easing] + ")" + : createCubicEasingFunc(easing) ? easing : '' + : ''; + } + function createCSSAnimation(el, attrs, scope, onlyShape) { + var animators = el.animators; + var len = animators.length; + var cssAnimations = []; + if (el instanceof CompoundPath) { + var animationCfg = createCompoundPathCSSAnimation(el, attrs, scope); + if (animationCfg) { + cssAnimations.push(animationCfg); + } + else if (!len) { + return; + } + } + else if (!len) { + return; + } + var groupAnimators = {}; + for (var i = 0; i < len; i++) { + var animator = animators[i]; + var cfgArr = [animator.getMaxTime() / 1000 + 's']; + var easing = getEasingFunc(animator.getClip().easing); + var delay = animator.getDelay(); + if (easing) { + cfgArr.push(easing); + } + else { + cfgArr.push('linear'); + } + if (delay) { + cfgArr.push(delay / 1000 + 's'); + } + if (animator.getLoop()) { + cfgArr.push('infinite'); + } + var cfg = cfgArr.join(' '); + groupAnimators[cfg] = groupAnimators[cfg] || [cfg, []]; + groupAnimators[cfg][1].push(animator); + } + function createSingleCSSAnimation(groupAnimator) { + var animators = groupAnimator[1]; + var len = animators.length; + var transformKfs = {}; + var shapeKfs = {}; + var finalKfs = {}; + var animationTimingFunctionAttrName = 'animation-timing-function'; + function saveAnimatorTrackToCssKfs(animator, cssKfs, toCssAttrName) { + var tracks = animator.getTracks(); + var maxTime = animator.getMaxTime(); + for (var k = 0; k < tracks.length; k++) { + var track = tracks[k]; + if (track.needsAnimate()) { + var kfs = track.keyframes; + var attrName = track.propName; + toCssAttrName && (attrName = toCssAttrName(attrName)); + if (attrName) { + for (var i = 0; i < kfs.length; i++) { + var kf = kfs[i]; + var percent = Math.round(kf.time / maxTime * 100) + '%'; + var kfEasing = getEasingFunc(kf.easing); + var rawValue = kf.rawValue; + if (isString(rawValue) || isNumber(rawValue)) { + cssKfs[percent] = cssKfs[percent] || {}; + cssKfs[percent][attrName] = kf.rawValue; + if (kfEasing) { + cssKfs[percent][animationTimingFunctionAttrName] = kfEasing; + } + } + } + } + } + } + } + for (var i = 0; i < len; i++) { + var animator = animators[i]; + var targetProp = animator.targetName; + if (!targetProp) { + !onlyShape && saveAnimatorTrackToCssKfs(animator, transformKfs); + } + else if (targetProp === 'shape') { + saveAnimatorTrackToCssKfs(animator, shapeKfs); + } + } + for (var percent in transformKfs) { + var transform = {}; + copyTransform(transform, el); + extend(transform, transformKfs[percent]); + var str = getSRTTransformString(transform); + var timingFunction = transformKfs[percent][animationTimingFunctionAttrName]; + finalKfs[percent] = str ? { + transform: str + } : {}; + setTransformOrigin(finalKfs[percent], transform); + if (timingFunction) { + finalKfs[percent][animationTimingFunctionAttrName] = timingFunction; + } + } + var path; + var canAnimateShape = true; + for (var percent in shapeKfs) { + finalKfs[percent] = finalKfs[percent] || {}; + var isFirst = !path; + var timingFunction = shapeKfs[percent][animationTimingFunctionAttrName]; + if (isFirst) { + path = new PathProxy(); + } + var len_1 = path.len(); + path.reset(); + finalKfs[percent].d = buildPathString(el, shapeKfs[percent], path); + var newLen = path.len(); + if (!isFirst && len_1 !== newLen) { + canAnimateShape = false; + break; + } + if (timingFunction) { + finalKfs[percent][animationTimingFunctionAttrName] = timingFunction; + } + } + if (!canAnimateShape) { + for (var percent in finalKfs) { + delete finalKfs[percent].d; + } + } + if (!onlyShape) { + for (var i = 0; i < len; i++) { + var animator = animators[i]; + var targetProp = animator.targetName; + if (targetProp === 'style') { + saveAnimatorTrackToCssKfs(animator, finalKfs, function (propName) { return ANIMATE_STYLE_MAP[propName]; }); + } + } + } + var percents = keys(finalKfs); + var allTransformOriginSame = true; + var transformOrigin; + for (var i = 1; i < percents.length; i++) { + var p0 = percents[i - 1]; + var p1 = percents[i]; + if (finalKfs[p0][transformOriginKey] !== finalKfs[p1][transformOriginKey]) { + allTransformOriginSame = false; + break; + } + transformOrigin = finalKfs[p0][transformOriginKey]; + } + if (allTransformOriginSame && transformOrigin) { + for (var percent in finalKfs) { + if (finalKfs[percent][transformOriginKey]) { + delete finalKfs[percent][transformOriginKey]; + } + } + attrs[transformOriginKey] = transformOrigin; + } + if (filter(percents, function (percent) { return keys(finalKfs[percent]).length > 0; }).length) { + var animationName = addAnimation(finalKfs, scope); + return animationName + " " + groupAnimator[0] + " both"; + } + } + for (var key in groupAnimators) { + var animationCfg = createSingleCSSAnimation(groupAnimators[key]); + if (animationCfg) { + cssAnimations.push(animationCfg); + } + } + if (cssAnimations.length) { + var className = scope.zrId + '-cls-' + getClassId(); + scope.cssNodes['.' + className] = { + animation: cssAnimations.join(',') + }; + attrs["class"] = className; + } + } + + function createCSSEmphasis(el, attrs, scope) { + if (!el.ignore) { + if (el.isSilent()) { + var style = { + 'pointer-events': 'none' + }; + setClassAttribute(style, attrs, scope, true); + } + else { + var emphasisStyle = el.states.emphasis && el.states.emphasis.style + ? el.states.emphasis.style + : {}; + var fill = emphasisStyle.fill; + if (!fill) { + var normalFill = el.style && el.style.fill; + var selectFill = el.states.select + && el.states.select.style + && el.states.select.style.fill; + var fromFill = el.currentStates.indexOf('select') >= 0 + ? (selectFill || normalFill) + : normalFill; + if (fromFill) { + fill = liftColor(fromFill); + } + } + var lineWidth = emphasisStyle.lineWidth; + if (lineWidth) { + var scaleX = (!emphasisStyle.strokeNoScale && el.transform) + ? el.transform[0] + : 1; + lineWidth = lineWidth / scaleX; + } + var style = { + cursor: 'pointer' + }; + if (fill) { + style.fill = fill; + } + if (emphasisStyle.stroke) { + style.stroke = emphasisStyle.stroke; + } + if (lineWidth) { + style['stroke-width'] = lineWidth; + } + setClassAttribute(style, attrs, scope, true); + } + } + } + function setClassAttribute(style, attrs, scope, withHover) { + var styleKey = JSON.stringify(style); + var className = scope.cssStyleCache[styleKey]; + if (!className) { + className = scope.zrId + '-cls-' + getClassId(); + scope.cssStyleCache[styleKey] = className; + scope.cssNodes['.' + className + (withHover ? ':hover' : '')] = style; + } + attrs["class"] = attrs["class"] ? (attrs["class"] + ' ' + className) : className; + } + + var round$2 = Math.round; + function isImageLike$1(val) { + return val && isString(val.src); + } + function isCanvasLike(val) { + return val && isFunction(val.toDataURL); + } + function setStyleAttrs(attrs, style, el, scope) { + mapStyleToAttrs(function (key, val) { + var isFillStroke = key === 'fill' || key === 'stroke'; + if (isFillStroke && isGradient(val)) { + setGradient(style, attrs, key, scope); + } + else if (isFillStroke && isPattern(val)) { + setPattern(el, attrs, key, scope); + } + else if (isFillStroke && val === 'none') { + attrs[key] = 'transparent'; + } + else { + attrs[key] = val; + } + }, style, el, false); + setShadow(el, attrs, scope); + } + function setMetaData(attrs, el) { + var metaData = getElementSSRData(el); + if (metaData) { + metaData.each(function (val, key) { + val != null && (attrs[(META_DATA_PREFIX + key).toLowerCase()] = val + ''); + }); + if (el.isSilent()) { + attrs[META_DATA_PREFIX + 'silent'] = 'true'; + } + } + } + function noRotateScale(m) { + return isAroundZero$1(m[0] - 1) + && isAroundZero$1(m[1]) + && isAroundZero$1(m[2]) + && isAroundZero$1(m[3] - 1); + } + function noTranslate(m) { + return isAroundZero$1(m[4]) && isAroundZero$1(m[5]); + } + function setTransform(attrs, m, compress) { + if (m && !(noTranslate(m) && noRotateScale(m))) { + var mul = compress ? 10 : 1e4; + attrs.transform = noRotateScale(m) + ? "translate(" + round$2(m[4] * mul) / mul + " " + round$2(m[5] * mul) / mul + ")" : getMatrixStr(m); + } + } + function convertPolyShape(shape, attrs, mul) { + var points = shape.points; + var strArr = []; + for (var i = 0; i < points.length; i++) { + strArr.push(round$2(points[i][0] * mul) / mul); + strArr.push(round$2(points[i][1] * mul) / mul); + } + attrs.points = strArr.join(' '); + } + function validatePolyShape(shape) { + return !shape.smooth; + } + function createAttrsConvert(desc) { + var normalizedDesc = map(desc, function (item) { + return (typeof item === 'string' ? [item, item] : item); + }); + return function (shape, attrs, mul) { + for (var i = 0; i < normalizedDesc.length; i++) { + var item = normalizedDesc[i]; + var val = shape[item[0]]; + if (val != null) { + attrs[item[1]] = round$2(val * mul) / mul; + } + } + }; + } + var builtinShapesDef = { + circle: [createAttrsConvert(['cx', 'cy', 'r'])], + polyline: [convertPolyShape, validatePolyShape], + polygon: [convertPolyShape, validatePolyShape] + }; + function hasShapeAnimation(el) { + var animators = el.animators; + for (var i = 0; i < animators.length; i++) { + if (animators[i].targetName === 'shape') { + return true; + } + } + return false; + } + function brushSVGPath(el, scope) { + var style = el.style; + var shape = el.shape; + var builtinShpDef = builtinShapesDef[el.type]; + var attrs = {}; + var needsAnimate = scope.animation; + var svgElType = 'path'; + var strokePercent = el.style.strokePercent; + var precision = (scope.compress && getPathPrecision(el)) || 4; + if (builtinShpDef + && !scope.willUpdate + && !(builtinShpDef[1] && !builtinShpDef[1](shape)) + && !(needsAnimate && hasShapeAnimation(el)) + && !(strokePercent < 1)) { + svgElType = el.type; + var mul = Math.pow(10, precision); + builtinShpDef[0](shape, attrs, mul); + } + else { + var needBuildPath = !el.path || el.shapeChanged(); + if (!el.path) { + el.createPathProxy(); + } + var path = el.path; + if (needBuildPath) { + path.beginPath(); + el.buildPath(path, el.shape); + el.pathUpdated(); + } + var pathVersion = path.getVersion(); + var elExt = el; + var svgPathBuilder = elExt.__svgPathBuilder; + if (elExt.__svgPathVersion !== pathVersion + || !svgPathBuilder + || strokePercent !== elExt.__svgPathStrokePercent) { + if (!svgPathBuilder) { + svgPathBuilder = elExt.__svgPathBuilder = new SVGPathRebuilder(); + } + svgPathBuilder.reset(precision); + path.rebuildPath(svgPathBuilder, strokePercent); + svgPathBuilder.generateStr(); + elExt.__svgPathVersion = pathVersion; + elExt.__svgPathStrokePercent = strokePercent; + } + attrs.d = svgPathBuilder.getStr(); + } + setTransform(attrs, el.transform); + setStyleAttrs(attrs, style, el, scope); + setMetaData(attrs, el); + scope.animation && createCSSAnimation(el, attrs, scope); + scope.emphasis && createCSSEmphasis(el, attrs, scope); + return createVNode(svgElType, el.id + '', attrs); + } + function brushSVGImage(el, scope) { + var style = el.style; + var image = style.image; + if (image && !isString(image)) { + if (isImageLike$1(image)) { + image = image.src; + } + else if (isCanvasLike(image)) { + image = image.toDataURL(); + } + } + if (!image) { + return; + } + var x = style.x || 0; + var y = style.y || 0; + var dw = style.width; + var dh = style.height; + var attrs = { + href: image, + width: dw, + height: dh + }; + if (x) { + attrs.x = x; + } + if (y) { + attrs.y = y; + } + setTransform(attrs, el.transform); + setStyleAttrs(attrs, style, el, scope); + setMetaData(attrs, el); + scope.animation && createCSSAnimation(el, attrs, scope); + return createVNode('image', el.id + '', attrs); + } + function brushSVGTSpan(el, scope) { + var style = el.style; + var text = style.text; + text != null && (text += ''); + if (!text || isNaN(style.x) || isNaN(style.y)) { + return; + } + var font = style.font || DEFAULT_FONT; + var x = style.x || 0; + var y = adjustTextY(style.y || 0, getLineHeight(font), style.textBaseline); + var textAlign = TEXT_ALIGN_TO_ANCHOR[style.textAlign] + || style.textAlign; + var attrs = { + 'dominant-baseline': 'central', + 'text-anchor': textAlign + }; + if (hasSeparateFont(style)) { + var separatedFontStr = ''; + var fontStyle = style.fontStyle; + var fontSize = parseFontSize(style.fontSize); + if (!parseFloat(fontSize)) { + return; + } + var fontFamily = style.fontFamily || DEFAULT_FONT_FAMILY; + var fontWeight = style.fontWeight; + separatedFontStr += "font-size:" + fontSize + ";font-family:" + fontFamily + ";"; + if (fontStyle && fontStyle !== 'normal') { + separatedFontStr += "font-style:" + fontStyle + ";"; + } + if (fontWeight && fontWeight !== 'normal') { + separatedFontStr += "font-weight:" + fontWeight + ";"; + } + attrs.style = separatedFontStr; + } + else { + attrs.style = "font: " + font; + } + if (text.match(/\s/)) { + attrs['xml:space'] = 'preserve'; + } + if (x) { + attrs.x = x; + } + if (y) { + attrs.y = y; + } + setTransform(attrs, el.transform); + setStyleAttrs(attrs, style, el, scope); + setMetaData(attrs, el); + scope.animation && createCSSAnimation(el, attrs, scope); + return createVNode('text', el.id + '', attrs, undefined, text); + } + function brush$1(el, scope) { + if (el instanceof Path) { + return brushSVGPath(el, scope); + } + else if (el instanceof ZRImage) { + return brushSVGImage(el, scope); + } + else if (el instanceof TSpan) { + return brushSVGTSpan(el, scope); + } + } + function setShadow(el, attrs, scope) { + var style = el.style; + if (hasShadow(style)) { + var shadowKey = getShadowKey(el); + var shadowCache = scope.shadowCache; + var shadowId = shadowCache[shadowKey]; + if (!shadowId) { + var globalScale = el.getGlobalScale(); + var scaleX = globalScale[0]; + var scaleY = globalScale[1]; + if (!scaleX || !scaleY) { + return; + } + var offsetX = style.shadowOffsetX || 0; + var offsetY = style.shadowOffsetY || 0; + var blur_1 = style.shadowBlur; + var _a = normalizeColor(style.shadowColor), opacity = _a.opacity, color = _a.color; + var stdDx = blur_1 / 2 / scaleX; + var stdDy = blur_1 / 2 / scaleY; + var stdDeviation = stdDx + ' ' + stdDy; + shadowId = scope.zrId + '-s' + scope.shadowIdx++; + scope.defs[shadowId] = createVNode('filter', shadowId, { + 'id': shadowId, + 'x': '-100%', + 'y': '-100%', + 'width': '300%', + 'height': '300%' + }, [ + createVNode('feDropShadow', '', { + 'dx': offsetX / scaleX, + 'dy': offsetY / scaleY, + 'stdDeviation': stdDeviation, + 'flood-color': color, + 'flood-opacity': opacity + }) + ]); + shadowCache[shadowKey] = shadowId; + } + attrs.filter = getIdURL(shadowId); + } + } + function setGradient(style, attrs, target, scope) { + var val = style[target]; + var gradientTag; + var gradientAttrs = { + 'gradientUnits': val.global + ? 'userSpaceOnUse' + : 'objectBoundingBox' + }; + if (isLinearGradient(val)) { + gradientTag = 'linearGradient'; + gradientAttrs.x1 = val.x; + gradientAttrs.y1 = val.y; + gradientAttrs.x2 = val.x2; + gradientAttrs.y2 = val.y2; + } + else if (isRadialGradient(val)) { + gradientTag = 'radialGradient'; + gradientAttrs.cx = retrieve2(val.x, 0.5); + gradientAttrs.cy = retrieve2(val.y, 0.5); + gradientAttrs.r = retrieve2(val.r, 0.5); + } + else { + if ("development" !== 'production') { + logError('Illegal gradient type.'); + } + return; + } + var colors = val.colorStops; + var colorStops = []; + for (var i = 0, len = colors.length; i < len; ++i) { + var offset = round4(colors[i].offset) * 100 + '%'; + var stopColor = colors[i].color; + var _a = normalizeColor(stopColor), color = _a.color, opacity = _a.opacity; + var stopsAttrs = { + 'offset': offset + }; + stopsAttrs['stop-color'] = color; + if (opacity < 1) { + stopsAttrs['stop-opacity'] = opacity; + } + colorStops.push(createVNode('stop', i + '', stopsAttrs)); + } + var gradientVNode = createVNode(gradientTag, '', gradientAttrs, colorStops); + var gradientKey = vNodeToString(gradientVNode); + var gradientCache = scope.gradientCache; + var gradientId = gradientCache[gradientKey]; + if (!gradientId) { + gradientId = scope.zrId + '-g' + scope.gradientIdx++; + gradientCache[gradientKey] = gradientId; + gradientAttrs.id = gradientId; + scope.defs[gradientId] = createVNode(gradientTag, gradientId, gradientAttrs, colorStops); + } + attrs[target] = getIdURL(gradientId); + } + function setPattern(el, attrs, target, scope) { + var val = el.style[target]; + var boundingRect = el.getBoundingRect(); + var patternAttrs = {}; + var repeat = val.repeat; + var noRepeat = repeat === 'no-repeat'; + var repeatX = repeat === 'repeat-x'; + var repeatY = repeat === 'repeat-y'; + var child; + if (isImagePattern(val)) { + var imageWidth_1 = val.imageWidth; + var imageHeight_1 = val.imageHeight; + var imageSrc = void 0; + var patternImage = val.image; + if (isString(patternImage)) { + imageSrc = patternImage; + } + else if (isImageLike$1(patternImage)) { + imageSrc = patternImage.src; + } + else if (isCanvasLike(patternImage)) { + imageSrc = patternImage.toDataURL(); + } + if (typeof Image === 'undefined') { + var errMsg = 'Image width/height must been given explictly in svg-ssr renderer.'; + assert(imageWidth_1, errMsg); + assert(imageHeight_1, errMsg); + } + else if (imageWidth_1 == null || imageHeight_1 == null) { + var setSizeToVNode_1 = function (vNode, img) { + if (vNode) { + var svgEl = vNode.elm; + var width = imageWidth_1 || img.width; + var height = imageHeight_1 || img.height; + if (vNode.tag === 'pattern') { + if (repeatX) { + height = 1; + width /= boundingRect.width; + } + else if (repeatY) { + width = 1; + height /= boundingRect.height; + } + } + vNode.attrs.width = width; + vNode.attrs.height = height; + if (svgEl) { + svgEl.setAttribute('width', width); + svgEl.setAttribute('height', height); + } + } + }; + var createdImage = createOrUpdateImage(imageSrc, null, el, function (img) { + noRepeat || setSizeToVNode_1(patternVNode, img); + setSizeToVNode_1(child, img); + }); + if (createdImage && createdImage.width && createdImage.height) { + imageWidth_1 = imageWidth_1 || createdImage.width; + imageHeight_1 = imageHeight_1 || createdImage.height; + } + } + child = createVNode('image', 'img', { + href: imageSrc, + width: imageWidth_1, + height: imageHeight_1 + }); + patternAttrs.width = imageWidth_1; + patternAttrs.height = imageHeight_1; + } + else if (val.svgElement) { + child = clone(val.svgElement); + patternAttrs.width = val.svgWidth; + patternAttrs.height = val.svgHeight; + } + if (!child) { + return; + } + var patternWidth; + var patternHeight; + if (noRepeat) { + patternWidth = patternHeight = 1; + } + else if (repeatX) { + patternHeight = 1; + patternWidth = patternAttrs.width / boundingRect.width; + } + else if (repeatY) { + patternWidth = 1; + patternHeight = patternAttrs.height / boundingRect.height; + } + else { + patternAttrs.patternUnits = 'userSpaceOnUse'; + } + if (patternWidth != null && !isNaN(patternWidth)) { + patternAttrs.width = patternWidth; + } + if (patternHeight != null && !isNaN(patternHeight)) { + patternAttrs.height = patternHeight; + } + var patternTransform = getSRTTransformString(val); + patternTransform && (patternAttrs.patternTransform = patternTransform); + var patternVNode = createVNode('pattern', '', patternAttrs, [child]); + var patternKey = vNodeToString(patternVNode); + var patternCache = scope.patternCache; + var patternId = patternCache[patternKey]; + if (!patternId) { + patternId = scope.zrId + '-p' + scope.patternIdx++; + patternCache[patternKey] = patternId; + patternAttrs.id = patternId; + patternVNode = scope.defs[patternId] = createVNode('pattern', patternId, patternAttrs, [child]); + } + attrs[target] = getIdURL(patternId); + } + function setClipPath(clipPath, attrs, scope) { + var clipPathCache = scope.clipPathCache, defs = scope.defs; + var clipPathId = clipPathCache[clipPath.id]; + if (!clipPathId) { + clipPathId = scope.zrId + '-c' + scope.clipPathIdx++; + var clipPathAttrs = { + id: clipPathId + }; + clipPathCache[clipPath.id] = clipPathId; + defs[clipPathId] = createVNode('clipPath', clipPathId, clipPathAttrs, [brushSVGPath(clipPath, scope)]); + } + attrs['clip-path'] = getIdURL(clipPathId); + } + + function createTextNode(text) { + return document.createTextNode(text); + } + function insertBefore(parentNode, newNode, referenceNode) { + parentNode.insertBefore(newNode, referenceNode); + } + function removeChild(node, child) { + node.removeChild(child); + } + function appendChild(node, child) { + node.appendChild(child); + } + function parentNode(node) { + return node.parentNode; + } + function nextSibling(node) { + return node.nextSibling; + } + function setTextContent(node, text) { + node.textContent = text; + } + + var colonChar = 58; + var xChar = 120; + var emptyNode = createVNode('', ''); + function isUndef(s) { + return s === undefined; + } + function isDef(s) { + return s !== undefined; + } + function createKeyToOldIdx(children, beginIdx, endIdx) { + var map = {}; + for (var i = beginIdx; i <= endIdx; ++i) { + var key = children[i].key; + if (key !== undefined) { + if ("development" !== 'production') { + if (map[key] != null) { + console.error("Duplicate key " + key); + } + } + map[key] = i; + } + } + return map; + } + function sameVnode(vnode1, vnode2) { + var isSameKey = vnode1.key === vnode2.key; + var isSameTag = vnode1.tag === vnode2.tag; + return isSameTag && isSameKey; + } + function createElm(vnode) { + var i; + var children = vnode.children; + var tag = vnode.tag; + if (isDef(tag)) { + var elm = (vnode.elm = createElement(tag)); + updateAttrs(emptyNode, vnode); + if (isArray(children)) { + for (i = 0; i < children.length; ++i) { + var ch = children[i]; + if (ch != null) { + appendChild(elm, createElm(ch)); + } + } + } + else if (isDef(vnode.text) && !isObject(vnode.text)) { + appendChild(elm, createTextNode(vnode.text)); + } + } + else { + vnode.elm = createTextNode(vnode.text); + } + return vnode.elm; + } + function addVnodes(parentElm, before, vnodes, startIdx, endIdx) { + for (; startIdx <= endIdx; ++startIdx) { + var ch = vnodes[startIdx]; + if (ch != null) { + insertBefore(parentElm, createElm(ch), before); + } + } + } + function removeVnodes(parentElm, vnodes, startIdx, endIdx) { + for (; startIdx <= endIdx; ++startIdx) { + var ch = vnodes[startIdx]; + if (ch != null) { + if (isDef(ch.tag)) { + var parent_1 = parentNode(ch.elm); + removeChild(parent_1, ch.elm); + } + else { + removeChild(parentElm, ch.elm); + } + } + } + } + function updateAttrs(oldVnode, vnode) { + var key; + var elm = vnode.elm; + var oldAttrs = oldVnode && oldVnode.attrs || {}; + var attrs = vnode.attrs || {}; + if (oldAttrs === attrs) { + return; + } + for (key in attrs) { + var cur = attrs[key]; + var old = oldAttrs[key]; + if (old !== cur) { + if (cur === true) { + elm.setAttribute(key, ''); + } + else if (cur === false) { + elm.removeAttribute(key); + } + else { + if (key === 'style') { + elm.style.cssText = cur; + } + else if (key.charCodeAt(0) !== xChar) { + elm.setAttribute(key, cur); + } + else if (key === 'xmlns:xlink' || key === 'xmlns') { + elm.setAttributeNS(XMLNS, key, cur); + } + else if (key.charCodeAt(3) === colonChar) { + elm.setAttributeNS(XML_NAMESPACE, key, cur); + } + else if (key.charCodeAt(5) === colonChar) { + elm.setAttributeNS(XLINKNS, key, cur); + } + else { + elm.setAttribute(key, cur); + } + } + } + } + for (key in oldAttrs) { + if (!(key in attrs)) { + elm.removeAttribute(key); + } + } + } + function updateChildren(parentElm, oldCh, newCh) { + var oldStartIdx = 0; + var newStartIdx = 0; + var oldEndIdx = oldCh.length - 1; + var oldStartVnode = oldCh[0]; + var oldEndVnode = oldCh[oldEndIdx]; + var newEndIdx = newCh.length - 1; + var newStartVnode = newCh[0]; + var newEndVnode = newCh[newEndIdx]; + var oldKeyToIdx; + var idxInOld; + var elmToMove; + var before; + while (oldStartIdx <= oldEndIdx && newStartIdx <= newEndIdx) { + if (oldStartVnode == null) { + oldStartVnode = oldCh[++oldStartIdx]; + } + else if (oldEndVnode == null) { + oldEndVnode = oldCh[--oldEndIdx]; + } + else if (newStartVnode == null) { + newStartVnode = newCh[++newStartIdx]; + } + else if (newEndVnode == null) { + newEndVnode = newCh[--newEndIdx]; + } + else if (sameVnode(oldStartVnode, newStartVnode)) { + patchVnode(oldStartVnode, newStartVnode); + oldStartVnode = oldCh[++oldStartIdx]; + newStartVnode = newCh[++newStartIdx]; + } + else if (sameVnode(oldEndVnode, newEndVnode)) { + patchVnode(oldEndVnode, newEndVnode); + oldEndVnode = oldCh[--oldEndIdx]; + newEndVnode = newCh[--newEndIdx]; + } + else if (sameVnode(oldStartVnode, newEndVnode)) { + patchVnode(oldStartVnode, newEndVnode); + insertBefore(parentElm, oldStartVnode.elm, nextSibling(oldEndVnode.elm)); + oldStartVnode = oldCh[++oldStartIdx]; + newEndVnode = newCh[--newEndIdx]; + } + else if (sameVnode(oldEndVnode, newStartVnode)) { + patchVnode(oldEndVnode, newStartVnode); + insertBefore(parentElm, oldEndVnode.elm, oldStartVnode.elm); + oldEndVnode = oldCh[--oldEndIdx]; + newStartVnode = newCh[++newStartIdx]; + } + else { + if (isUndef(oldKeyToIdx)) { + oldKeyToIdx = createKeyToOldIdx(oldCh, oldStartIdx, oldEndIdx); + } + idxInOld = oldKeyToIdx[newStartVnode.key]; + if (isUndef(idxInOld)) { + insertBefore(parentElm, createElm(newStartVnode), oldStartVnode.elm); + } + else { + elmToMove = oldCh[idxInOld]; + if (elmToMove.tag !== newStartVnode.tag) { + insertBefore(parentElm, createElm(newStartVnode), oldStartVnode.elm); + } + else { + patchVnode(elmToMove, newStartVnode); + oldCh[idxInOld] = undefined; + insertBefore(parentElm, elmToMove.elm, oldStartVnode.elm); + } + } + newStartVnode = newCh[++newStartIdx]; + } + } + if (oldStartIdx <= oldEndIdx || newStartIdx <= newEndIdx) { + if (oldStartIdx > oldEndIdx) { + before = newCh[newEndIdx + 1] == null ? null : newCh[newEndIdx + 1].elm; + addVnodes(parentElm, before, newCh, newStartIdx, newEndIdx); + } + else { + removeVnodes(parentElm, oldCh, oldStartIdx, oldEndIdx); + } + } + } + function patchVnode(oldVnode, vnode) { + var elm = (vnode.elm = oldVnode.elm); + var oldCh = oldVnode.children; + var ch = vnode.children; + if (oldVnode === vnode) { + return; + } + updateAttrs(oldVnode, vnode); + if (isUndef(vnode.text)) { + if (isDef(oldCh) && isDef(ch)) { + if (oldCh !== ch) { + updateChildren(elm, oldCh, ch); + } + } + else if (isDef(ch)) { + if (isDef(oldVnode.text)) { + setTextContent(elm, ''); + } + addVnodes(elm, null, ch, 0, ch.length - 1); + } + else if (isDef(oldCh)) { + removeVnodes(elm, oldCh, 0, oldCh.length - 1); + } + else if (isDef(oldVnode.text)) { + setTextContent(elm, ''); + } + } + else if (oldVnode.text !== vnode.text) { + if (isDef(oldCh)) { + removeVnodes(elm, oldCh, 0, oldCh.length - 1); + } + setTextContent(elm, vnode.text); + } + } + function patch(oldVnode, vnode) { + if (sameVnode(oldVnode, vnode)) { + patchVnode(oldVnode, vnode); + } + else { + var elm = oldVnode.elm; + var parent_2 = parentNode(elm); + createElm(vnode); + if (parent_2 !== null) { + insertBefore(parent_2, vnode.elm, nextSibling(elm)); + removeVnodes(parent_2, [oldVnode], 0, 0); + } + } + return vnode; + } + + var svgId = 0; + var SVGPainter = (function () { + function SVGPainter(root, storage, opts) { + this.type = 'svg'; + this.refreshHover = createMethodNotSupport('refreshHover'); + this.configLayer = createMethodNotSupport('configLayer'); + this.storage = storage; + this._opts = opts = extend({}, opts); + this.root = root; + this._id = 'zr' + svgId++; + this._oldVNode = createSVGVNode(opts.width, opts.height); + if (root && !opts.ssr) { + var viewport = this._viewport = document.createElement('div'); + viewport.style.cssText = 'position:relative;overflow:hidden'; + var svgDom = this._svgDom = this._oldVNode.elm = createElement('svg'); + updateAttrs(null, this._oldVNode); + viewport.appendChild(svgDom); + root.appendChild(viewport); + } + this.resize(opts.width, opts.height); + } + SVGPainter.prototype.getType = function () { + return this.type; + }; + SVGPainter.prototype.getViewportRoot = function () { + return this._viewport; + }; + SVGPainter.prototype.getViewportRootOffset = function () { + var viewportRoot = this.getViewportRoot(); + if (viewportRoot) { + return { + offsetLeft: viewportRoot.offsetLeft || 0, + offsetTop: viewportRoot.offsetTop || 0 + }; + } + }; + SVGPainter.prototype.getSvgDom = function () { + return this._svgDom; + }; + SVGPainter.prototype.refresh = function () { + if (this.root) { + var vnode = this.renderToVNode({ + willUpdate: true + }); + vnode.attrs.style = 'position:absolute;left:0;top:0;user-select:none'; + patch(this._oldVNode, vnode); + this._oldVNode = vnode; + } + }; + SVGPainter.prototype.renderOneToVNode = function (el) { + return brush$1(el, createBrushScope(this._id)); + }; + SVGPainter.prototype.renderToVNode = function (opts) { + opts = opts || {}; + var list = this.storage.getDisplayList(true); + var width = this._width; + var height = this._height; + var scope = createBrushScope(this._id); + scope.animation = opts.animation; + scope.willUpdate = opts.willUpdate; + scope.compress = opts.compress; + scope.emphasis = opts.emphasis; + var children = []; + var bgVNode = this._bgVNode = createBackgroundVNode(width, height, this._backgroundColor, scope); + bgVNode && children.push(bgVNode); + var mainVNode = !opts.compress + ? (this._mainVNode = createVNode('g', 'main', {}, [])) : null; + this._paintList(list, scope, mainVNode ? mainVNode.children : children); + mainVNode && children.push(mainVNode); + var defs = map(keys(scope.defs), function (id) { return scope.defs[id]; }); + if (defs.length) { + children.push(createVNode('defs', 'defs', {}, defs)); + } + if (opts.animation) { + var animationCssStr = getCssString(scope.cssNodes, scope.cssAnims, { newline: true }); + if (animationCssStr) { + var styleNode = createVNode('style', 'stl', {}, [], animationCssStr); + children.push(styleNode); + } + } + return createSVGVNode(width, height, children, opts.useViewBox); + }; + SVGPainter.prototype.renderToString = function (opts) { + opts = opts || {}; + return vNodeToString(this.renderToVNode({ + animation: retrieve2(opts.cssAnimation, true), + emphasis: retrieve2(opts.cssEmphasis, true), + willUpdate: false, + compress: true, + useViewBox: retrieve2(opts.useViewBox, true) + }), { newline: true }); + }; + SVGPainter.prototype.setBackgroundColor = function (backgroundColor) { + this._backgroundColor = backgroundColor; + }; + SVGPainter.prototype.getSvgRoot = function () { + return this._mainVNode && this._mainVNode.elm; + }; + SVGPainter.prototype._paintList = function (list, scope, out) { + var listLen = list.length; + var clipPathsGroupsStack = []; + var clipPathsGroupsStackDepth = 0; + var currentClipPathGroup; + var prevClipPaths; + var clipGroupNodeIdx = 0; + for (var i = 0; i < listLen; i++) { + var displayable = list[i]; + if (!displayable.invisible) { + var clipPaths = displayable.__clipPaths; + var len = clipPaths && clipPaths.length || 0; + var prevLen = prevClipPaths && prevClipPaths.length || 0; + var lca = void 0; + for (lca = Math.max(len - 1, prevLen - 1); lca >= 0; lca--) { + if (clipPaths && prevClipPaths + && clipPaths[lca] === prevClipPaths[lca]) { + break; + } + } + for (var i_1 = prevLen - 1; i_1 > lca; i_1--) { + clipPathsGroupsStackDepth--; + currentClipPathGroup = clipPathsGroupsStack[clipPathsGroupsStackDepth - 1]; + } + for (var i_2 = lca + 1; i_2 < len; i_2++) { + var groupAttrs = {}; + setClipPath(clipPaths[i_2], groupAttrs, scope); + var g = createVNode('g', 'clip-g-' + clipGroupNodeIdx++, groupAttrs, []); + (currentClipPathGroup ? currentClipPathGroup.children : out).push(g); + clipPathsGroupsStack[clipPathsGroupsStackDepth++] = g; + currentClipPathGroup = g; + } + prevClipPaths = clipPaths; + var ret = brush$1(displayable, scope); + if (ret) { + (currentClipPathGroup ? currentClipPathGroup.children : out).push(ret); + } + } + } + }; + SVGPainter.prototype.resize = function (width, height) { + var opts = this._opts; + var root = this.root; + var viewport = this._viewport; + width != null && (opts.width = width); + height != null && (opts.height = height); + if (root && viewport) { + viewport.style.display = 'none'; + width = getSize(root, 0, opts); + height = getSize(root, 1, opts); + viewport.style.display = ''; + } + if (this._width !== width || this._height !== height) { + this._width = width; + this._height = height; + if (viewport) { + var viewportStyle = viewport.style; + viewportStyle.width = width + 'px'; + viewportStyle.height = height + 'px'; + } + if (!isPattern(this._backgroundColor)) { + var svgDom = this._svgDom; + if (svgDom) { + svgDom.setAttribute('width', width); + svgDom.setAttribute('height', height); + } + var bgEl = this._bgVNode && this._bgVNode.elm; + if (bgEl) { + bgEl.setAttribute('width', width); + bgEl.setAttribute('height', height); + } + } + else { + this.refresh(); + } + } + }; + SVGPainter.prototype.getWidth = function () { + return this._width; + }; + SVGPainter.prototype.getHeight = function () { + return this._height; + }; + SVGPainter.prototype.dispose = function () { + if (this.root) { + this.root.innerHTML = ''; + } + this._svgDom = + this._viewport = + this.storage = + this._oldVNode = + this._bgVNode = + this._mainVNode = null; + }; + SVGPainter.prototype.clear = function () { + if (this._svgDom) { + this._svgDom.innerHTML = null; + } + this._oldVNode = null; + }; + SVGPainter.prototype.toDataURL = function (base64) { + var str = this.renderToString(); + var prefix = 'data:image/svg+xml;'; + if (base64) { + str = encodeBase64(str); + return str && prefix + 'base64,' + str; + } + return prefix + 'charset=UTF-8,' + encodeURIComponent(str); + }; + return SVGPainter; + }()); + function createMethodNotSupport(method) { + return function () { + if ("development" !== 'production') { + logError('In SVG mode painter not support method "' + method + '"'); + } + }; + } + function createBackgroundVNode(width, height, backgroundColor, scope) { + var bgVNode; + if (backgroundColor && backgroundColor !== 'none') { + bgVNode = createVNode('rect', 'bg', { + width: width, + height: height, + x: '0', + y: '0' + }); + if (isGradient(backgroundColor)) { + setGradient({ fill: backgroundColor }, bgVNode.attrs, 'fill', scope); + } + else if (isPattern(backgroundColor)) { + setPattern({ + style: { + fill: backgroundColor + }, + dirty: noop, + getBoundingRect: function () { return ({ width: width, height: height }); } + }, bgVNode.attrs, 'fill', scope); + } + else { + var _a = normalizeColor(backgroundColor), color = _a.color, opacity = _a.opacity; + bgVNode.attrs.fill = color; + opacity < 1 && (bgVNode.attrs['fill-opacity'] = opacity); + } + } + return bgVNode; + } + + function install(registers) { + registers.registerPainter('svg', SVGPainter); + } + + function createDom(id, painter, dpr) { + var newDom = platformApi.createCanvas(); + var width = painter.getWidth(); + var height = painter.getHeight(); + var newDomStyle = newDom.style; + if (newDomStyle) { + newDomStyle.position = 'absolute'; + newDomStyle.left = '0'; + newDomStyle.top = '0'; + newDomStyle.width = width + 'px'; + newDomStyle.height = height + 'px'; + newDom.setAttribute('data-zr-dom-id', id); + } + newDom.width = width * dpr; + newDom.height = height * dpr; + return newDom; + } + var Layer = (function (_super) { + __extends(Layer, _super); + function Layer(id, painter, dpr) { + var _this = _super.call(this) || this; + _this.motionBlur = false; + _this.lastFrameAlpha = 0.7; + _this.dpr = 1; + _this.virtual = false; + _this.config = {}; + _this.incremental = false; + _this.zlevel = 0; + _this.maxRepaintRectCount = 5; + _this.__dirty = true; + _this.__firstTimePaint = true; + _this.__used = false; + _this.__drawIndex = 0; + _this.__startIndex = 0; + _this.__endIndex = 0; + _this.__prevStartIndex = null; + _this.__prevEndIndex = null; + var dom; + dpr = dpr || devicePixelRatio; + if (typeof id === 'string') { + dom = createDom(id, painter, dpr); + } + else if (isObject(id)) { + dom = id; + id = dom.id; + } + _this.id = id; + _this.dom = dom; + var domStyle = dom.style; + if (domStyle) { + disableUserSelect(dom); + dom.onselectstart = function () { return false; }; + domStyle.padding = '0'; + domStyle.margin = '0'; + domStyle.borderWidth = '0'; + } + _this.painter = painter; + _this.dpr = dpr; + return _this; + } + Layer.prototype.getElementCount = function () { + return this.__endIndex - this.__startIndex; + }; + Layer.prototype.afterBrush = function () { + this.__prevStartIndex = this.__startIndex; + this.__prevEndIndex = this.__endIndex; + }; + Layer.prototype.initContext = function () { + this.ctx = this.dom.getContext('2d'); + this.ctx.dpr = this.dpr; + }; + Layer.prototype.setUnpainted = function () { + this.__firstTimePaint = true; + }; + Layer.prototype.createBackBuffer = function () { + var dpr = this.dpr; + this.domBack = createDom('back-' + this.id, this.painter, dpr); + this.ctxBack = this.domBack.getContext('2d'); + if (dpr !== 1) { + this.ctxBack.scale(dpr, dpr); + } + }; + Layer.prototype.createRepaintRects = function (displayList, prevList, viewWidth, viewHeight) { + if (this.__firstTimePaint) { + this.__firstTimePaint = false; + return null; + } + var mergedRepaintRects = []; + var maxRepaintRectCount = this.maxRepaintRectCount; + var full = false; + var pendingRect = new BoundingRect(0, 0, 0, 0); + function addRectToMergePool(rect) { + if (!rect.isFinite() || rect.isZero()) { + return; + } + if (mergedRepaintRects.length === 0) { + var boundingRect = new BoundingRect(0, 0, 0, 0); + boundingRect.copy(rect); + mergedRepaintRects.push(boundingRect); + } + else { + var isMerged = false; + var minDeltaArea = Infinity; + var bestRectToMergeIdx = 0; + for (var i = 0; i < mergedRepaintRects.length; ++i) { + var mergedRect = mergedRepaintRects[i]; + if (mergedRect.intersect(rect)) { + var pendingRect_1 = new BoundingRect(0, 0, 0, 0); + pendingRect_1.copy(mergedRect); + pendingRect_1.union(rect); + mergedRepaintRects[i] = pendingRect_1; + isMerged = true; + break; + } + else if (full) { + pendingRect.copy(rect); + pendingRect.union(mergedRect); + var aArea = rect.width * rect.height; + var bArea = mergedRect.width * mergedRect.height; + var pendingArea = pendingRect.width * pendingRect.height; + var deltaArea = pendingArea - aArea - bArea; + if (deltaArea < minDeltaArea) { + minDeltaArea = deltaArea; + bestRectToMergeIdx = i; + } + } + } + if (full) { + mergedRepaintRects[bestRectToMergeIdx].union(rect); + isMerged = true; + } + if (!isMerged) { + var boundingRect = new BoundingRect(0, 0, 0, 0); + boundingRect.copy(rect); + mergedRepaintRects.push(boundingRect); + } + if (!full) { + full = mergedRepaintRects.length >= maxRepaintRectCount; + } + } + } + for (var i = this.__startIndex; i < this.__endIndex; ++i) { + var el = displayList[i]; + if (el) { + var shouldPaint = el.shouldBePainted(viewWidth, viewHeight, true, true); + var prevRect = el.__isRendered && ((el.__dirty & REDRAW_BIT) || !shouldPaint) + ? el.getPrevPaintRect() + : null; + if (prevRect) { + addRectToMergePool(prevRect); + } + var curRect = shouldPaint && ((el.__dirty & REDRAW_BIT) || !el.__isRendered) + ? el.getPaintRect() + : null; + if (curRect) { + addRectToMergePool(curRect); + } + } + } + for (var i = this.__prevStartIndex; i < this.__prevEndIndex; ++i) { + var el = prevList[i]; + var shouldPaint = el && el.shouldBePainted(viewWidth, viewHeight, true, true); + if (el && (!shouldPaint || !el.__zr) && el.__isRendered) { + var prevRect = el.getPrevPaintRect(); + if (prevRect) { + addRectToMergePool(prevRect); + } + } + } + var hasIntersections; + do { + hasIntersections = false; + for (var i = 0; i < mergedRepaintRects.length;) { + if (mergedRepaintRects[i].isZero()) { + mergedRepaintRects.splice(i, 1); + continue; + } + for (var j = i + 1; j < mergedRepaintRects.length;) { + if (mergedRepaintRects[i].intersect(mergedRepaintRects[j])) { + hasIntersections = true; + mergedRepaintRects[i].union(mergedRepaintRects[j]); + mergedRepaintRects.splice(j, 1); + } + else { + j++; + } + } + i++; + } + } while (hasIntersections); + this._paintRects = mergedRepaintRects; + return mergedRepaintRects; + }; + Layer.prototype.debugGetPaintRects = function () { + return (this._paintRects || []).slice(); + }; + Layer.prototype.resize = function (width, height) { + var dpr = this.dpr; + var dom = this.dom; + var domStyle = dom.style; + var domBack = this.domBack; + if (domStyle) { + domStyle.width = width + 'px'; + domStyle.height = height + 'px'; + } + dom.width = width * dpr; + dom.height = height * dpr; + if (domBack) { + domBack.width = width * dpr; + domBack.height = height * dpr; + if (dpr !== 1) { + this.ctxBack.scale(dpr, dpr); + } + } + }; + Layer.prototype.clear = function (clearAll, clearColor, repaintRects) { + var dom = this.dom; + var ctx = this.ctx; + var width = dom.width; + var height = dom.height; + clearColor = clearColor || this.clearColor; + var haveMotionBLur = this.motionBlur && !clearAll; + var lastFrameAlpha = this.lastFrameAlpha; + var dpr = this.dpr; + var self = this; + if (haveMotionBLur) { + if (!this.domBack) { + this.createBackBuffer(); + } + this.ctxBack.globalCompositeOperation = 'copy'; + this.ctxBack.drawImage(dom, 0, 0, width / dpr, height / dpr); + } + var domBack = this.domBack; + function doClear(x, y, width, height) { + ctx.clearRect(x, y, width, height); + if (clearColor && clearColor !== 'transparent') { + var clearColorGradientOrPattern = void 0; + if (isGradientObject(clearColor)) { + var shouldCache = clearColor.global || (clearColor.__width === width + && clearColor.__height === height); + clearColorGradientOrPattern = shouldCache + && clearColor.__canvasGradient + || getCanvasGradient(ctx, clearColor, { + x: 0, + y: 0, + width: width, + height: height + }); + clearColor.__canvasGradient = clearColorGradientOrPattern; + clearColor.__width = width; + clearColor.__height = height; + } + else if (isImagePatternObject(clearColor)) { + clearColor.scaleX = clearColor.scaleX || dpr; + clearColor.scaleY = clearColor.scaleY || dpr; + clearColorGradientOrPattern = createCanvasPattern(ctx, clearColor, { + dirty: function () { + self.setUnpainted(); + self.painter.refresh(); + } + }); + } + ctx.save(); + ctx.fillStyle = clearColorGradientOrPattern || clearColor; + ctx.fillRect(x, y, width, height); + ctx.restore(); + } + if (haveMotionBLur) { + ctx.save(); + ctx.globalAlpha = lastFrameAlpha; + ctx.drawImage(domBack, x, y, width, height); + ctx.restore(); + } + } + if (!repaintRects || haveMotionBLur) { + doClear(0, 0, width, height); + } + else if (repaintRects.length) { + each(repaintRects, function (rect) { + doClear(rect.x * dpr, rect.y * dpr, rect.width * dpr, rect.height * dpr); + }); + } + }; + return Layer; + }(Eventful)); + + var HOVER_LAYER_ZLEVEL = 1e5; + var CANVAS_ZLEVEL = 314159; + var EL_AFTER_INCREMENTAL_INC = 0.01; + var INCREMENTAL_INC = 0.001; + function isLayerValid(layer) { + if (!layer) { + return false; + } + if (layer.__builtin__) { + return true; + } + if (typeof (layer.resize) !== 'function' + || typeof (layer.refresh) !== 'function') { + return false; + } + return true; + } + function createRoot(width, height) { + var domRoot = document.createElement('div'); + domRoot.style.cssText = [ + 'position:relative', + 'width:' + width + 'px', + 'height:' + height + 'px', + 'padding:0', + 'margin:0', + 'border-width:0' + ].join(';') + ';'; + return domRoot; + } + var CanvasPainter = (function () { + function CanvasPainter(root, storage, opts, id) { + this.type = 'canvas'; + this._zlevelList = []; + this._prevDisplayList = []; + this._layers = {}; + this._layerConfig = {}; + this._needsManuallyCompositing = false; + this.type = 'canvas'; + var singleCanvas = !root.nodeName + || root.nodeName.toUpperCase() === 'CANVAS'; + this._opts = opts = extend({}, opts || {}); + this.dpr = opts.devicePixelRatio || devicePixelRatio; + this._singleCanvas = singleCanvas; + this.root = root; + var rootStyle = root.style; + if (rootStyle) { + disableUserSelect(root); + root.innerHTML = ''; + } + this.storage = storage; + var zlevelList = this._zlevelList; + this._prevDisplayList = []; + var layers = this._layers; + if (!singleCanvas) { + this._width = getSize(root, 0, opts); + this._height = getSize(root, 1, opts); + var domRoot = this._domRoot = createRoot(this._width, this._height); + root.appendChild(domRoot); + } + else { + var rootCanvas = root; + var width = rootCanvas.width; + var height = rootCanvas.height; + if (opts.width != null) { + width = opts.width; + } + if (opts.height != null) { + height = opts.height; + } + this.dpr = opts.devicePixelRatio || 1; + rootCanvas.width = width * this.dpr; + rootCanvas.height = height * this.dpr; + this._width = width; + this._height = height; + var mainLayer = new Layer(rootCanvas, this, this.dpr); + mainLayer.__builtin__ = true; + mainLayer.initContext(); + layers[CANVAS_ZLEVEL] = mainLayer; + mainLayer.zlevel = CANVAS_ZLEVEL; + zlevelList.push(CANVAS_ZLEVEL); + this._domRoot = root; + } + } + CanvasPainter.prototype.getType = function () { + return 'canvas'; + }; + CanvasPainter.prototype.isSingleCanvas = function () { + return this._singleCanvas; + }; + CanvasPainter.prototype.getViewportRoot = function () { + return this._domRoot; + }; + CanvasPainter.prototype.getViewportRootOffset = function () { + var viewportRoot = this.getViewportRoot(); + if (viewportRoot) { + return { + offsetLeft: viewportRoot.offsetLeft || 0, + offsetTop: viewportRoot.offsetTop || 0 + }; + } + }; + CanvasPainter.prototype.refresh = function (paintAll) { + var list = this.storage.getDisplayList(true); + var prevList = this._prevDisplayList; + var zlevelList = this._zlevelList; + this._redrawId = Math.random(); + this._paintList(list, prevList, paintAll, this._redrawId); + for (var i = 0; i < zlevelList.length; i++) { + var z = zlevelList[i]; + var layer = this._layers[z]; + if (!layer.__builtin__ && layer.refresh) { + var clearColor = i === 0 ? this._backgroundColor : null; + layer.refresh(clearColor); + } + } + if (this._opts.useDirtyRect) { + this._prevDisplayList = list.slice(); + } + return this; + }; + CanvasPainter.prototype.refreshHover = function () { + this._paintHoverList(this.storage.getDisplayList(false)); + }; + CanvasPainter.prototype._paintHoverList = function (list) { + var len = list.length; + var hoverLayer = this._hoverlayer; + hoverLayer && hoverLayer.clear(); + if (!len) { + return; + } + var scope = { + inHover: true, + viewWidth: this._width, + viewHeight: this._height + }; + var ctx; + for (var i = 0; i < len; i++) { + var el = list[i]; + if (el.__inHover) { + if (!hoverLayer) { + hoverLayer = this._hoverlayer = this.getLayer(HOVER_LAYER_ZLEVEL); + } + if (!ctx) { + ctx = hoverLayer.ctx; + ctx.save(); + } + brush(ctx, el, scope, i === len - 1); + } + } + if (ctx) { + ctx.restore(); + } + }; + CanvasPainter.prototype.getHoverLayer = function () { + return this.getLayer(HOVER_LAYER_ZLEVEL); + }; + CanvasPainter.prototype.paintOne = function (ctx, el) { + brushSingle(ctx, el); + }; + CanvasPainter.prototype._paintList = function (list, prevList, paintAll, redrawId) { + if (this._redrawId !== redrawId) { + return; + } + paintAll = paintAll || false; + this._updateLayerStatus(list); + var _a = this._doPaintList(list, prevList, paintAll), finished = _a.finished, needsRefreshHover = _a.needsRefreshHover; + if (this._needsManuallyCompositing) { + this._compositeManually(); + } + if (needsRefreshHover) { + this._paintHoverList(list); + } + if (!finished) { + var self_1 = this; + requestAnimationFrame$1(function () { + self_1._paintList(list, prevList, paintAll, redrawId); + }); + } + else { + this.eachLayer(function (layer) { + layer.afterBrush && layer.afterBrush(); + }); + } + }; + CanvasPainter.prototype._compositeManually = function () { + var ctx = this.getLayer(CANVAS_ZLEVEL).ctx; + var width = this._domRoot.width; + var height = this._domRoot.height; + ctx.clearRect(0, 0, width, height); + this.eachBuiltinLayer(function (layer) { + if (layer.virtual) { + ctx.drawImage(layer.dom, 0, 0, width, height); + } + }); + }; + CanvasPainter.prototype._doPaintList = function (list, prevList, paintAll) { + var _this = this; + var layerList = []; + var useDirtyRect = this._opts.useDirtyRect; + for (var zi = 0; zi < this._zlevelList.length; zi++) { + var zlevel = this._zlevelList[zi]; + var layer = this._layers[zlevel]; + if (layer.__builtin__ + && layer !== this._hoverlayer + && (layer.__dirty || paintAll)) { + layerList.push(layer); + } + } + var finished = true; + var needsRefreshHover = false; + var _loop_1 = function (k) { + var layer = layerList[k]; + var ctx = layer.ctx; + var repaintRects = useDirtyRect + && layer.createRepaintRects(list, prevList, this_1._width, this_1._height); + var start = paintAll ? layer.__startIndex : layer.__drawIndex; + var useTimer = !paintAll && layer.incremental && Date.now; + var startTime = useTimer && Date.now(); + var clearColor = layer.zlevel === this_1._zlevelList[0] + ? this_1._backgroundColor : null; + if (layer.__startIndex === layer.__endIndex) { + layer.clear(false, clearColor, repaintRects); + } + else if (start === layer.__startIndex) { + var firstEl = list[start]; + if (!firstEl.incremental || !firstEl.notClear || paintAll) { + layer.clear(false, clearColor, repaintRects); + } + } + if (start === -1) { + console.error('For some unknown reason. drawIndex is -1'); + start = layer.__startIndex; + } + var i; + var repaint = function (repaintRect) { + var scope = { + inHover: false, + allClipped: false, + prevEl: null, + viewWidth: _this._width, + viewHeight: _this._height + }; + for (i = start; i < layer.__endIndex; i++) { + var el = list[i]; + if (el.__inHover) { + needsRefreshHover = true; + } + _this._doPaintEl(el, layer, useDirtyRect, repaintRect, scope, i === layer.__endIndex - 1); + if (useTimer) { + var dTime = Date.now() - startTime; + if (dTime > 15) { + break; + } + } + } + if (scope.prevElClipPaths) { + ctx.restore(); + } + }; + if (repaintRects) { + if (repaintRects.length === 0) { + i = layer.__endIndex; + } + else { + var dpr = this_1.dpr; + for (var r = 0; r < repaintRects.length; ++r) { + var rect = repaintRects[r]; + ctx.save(); + ctx.beginPath(); + ctx.rect(rect.x * dpr, rect.y * dpr, rect.width * dpr, rect.height * dpr); + ctx.clip(); + repaint(rect); + ctx.restore(); + } + } + } + else { + ctx.save(); + repaint(); + ctx.restore(); + } + layer.__drawIndex = i; + if (layer.__drawIndex < layer.__endIndex) { + finished = false; + } + }; + var this_1 = this; + for (var k = 0; k < layerList.length; k++) { + _loop_1(k); + } + if (env.wxa) { + each(this._layers, function (layer) { + if (layer && layer.ctx && layer.ctx.draw) { + layer.ctx.draw(); + } + }); + } + return { + finished: finished, + needsRefreshHover: needsRefreshHover + }; + }; + CanvasPainter.prototype._doPaintEl = function (el, currentLayer, useDirtyRect, repaintRect, scope, isLast) { + var ctx = currentLayer.ctx; + if (useDirtyRect) { + var paintRect = el.getPaintRect(); + if (!repaintRect || paintRect && paintRect.intersect(repaintRect)) { + brush(ctx, el, scope, isLast); + el.setPrevPaintRect(paintRect); + } + } + else { + brush(ctx, el, scope, isLast); + } + }; + CanvasPainter.prototype.getLayer = function (zlevel, virtual) { + if (this._singleCanvas && !this._needsManuallyCompositing) { + zlevel = CANVAS_ZLEVEL; + } + var layer = this._layers[zlevel]; + if (!layer) { + layer = new Layer('zr_' + zlevel, this, this.dpr); + layer.zlevel = zlevel; + layer.__builtin__ = true; + if (this._layerConfig[zlevel]) { + merge(layer, this._layerConfig[zlevel], true); + } + else if (this._layerConfig[zlevel - EL_AFTER_INCREMENTAL_INC]) { + merge(layer, this._layerConfig[zlevel - EL_AFTER_INCREMENTAL_INC], true); + } + if (virtual) { + layer.virtual = virtual; + } + this.insertLayer(zlevel, layer); + layer.initContext(); + } + return layer; + }; + CanvasPainter.prototype.insertLayer = function (zlevel, layer) { + var layersMap = this._layers; + var zlevelList = this._zlevelList; + var len = zlevelList.length; + var domRoot = this._domRoot; + var prevLayer = null; + var i = -1; + if (layersMap[zlevel]) { + if ("development" !== 'production') { + logError('ZLevel ' + zlevel + ' has been used already'); + } + return; + } + if (!isLayerValid(layer)) { + if ("development" !== 'production') { + logError('Layer of zlevel ' + zlevel + ' is not valid'); + } + return; + } + if (len > 0 && zlevel > zlevelList[0]) { + for (i = 0; i < len - 1; i++) { + if (zlevelList[i] < zlevel + && zlevelList[i + 1] > zlevel) { + break; + } + } + prevLayer = layersMap[zlevelList[i]]; + } + zlevelList.splice(i + 1, 0, zlevel); + layersMap[zlevel] = layer; + if (!layer.virtual) { + if (prevLayer) { + var prevDom = prevLayer.dom; + if (prevDom.nextSibling) { + domRoot.insertBefore(layer.dom, prevDom.nextSibling); + } + else { + domRoot.appendChild(layer.dom); + } + } + else { + if (domRoot.firstChild) { + domRoot.insertBefore(layer.dom, domRoot.firstChild); + } + else { + domRoot.appendChild(layer.dom); + } + } + } + layer.painter || (layer.painter = this); + }; + CanvasPainter.prototype.eachLayer = function (cb, context) { + var zlevelList = this._zlevelList; + for (var i = 0; i < zlevelList.length; i++) { + var z = zlevelList[i]; + cb.call(context, this._layers[z], z); + } + }; + CanvasPainter.prototype.eachBuiltinLayer = function (cb, context) { + var zlevelList = this._zlevelList; + for (var i = 0; i < zlevelList.length; i++) { + var z = zlevelList[i]; + var layer = this._layers[z]; + if (layer.__builtin__) { + cb.call(context, layer, z); + } + } + }; + CanvasPainter.prototype.eachOtherLayer = function (cb, context) { + var zlevelList = this._zlevelList; + for (var i = 0; i < zlevelList.length; i++) { + var z = zlevelList[i]; + var layer = this._layers[z]; + if (!layer.__builtin__) { + cb.call(context, layer, z); + } + } + }; + CanvasPainter.prototype.getLayers = function () { + return this._layers; + }; + CanvasPainter.prototype._updateLayerStatus = function (list) { + this.eachBuiltinLayer(function (layer, z) { + layer.__dirty = layer.__used = false; + }); + function updatePrevLayer(idx) { + if (prevLayer) { + if (prevLayer.__endIndex !== idx) { + prevLayer.__dirty = true; + } + prevLayer.__endIndex = idx; + } + } + if (this._singleCanvas) { + for (var i_1 = 1; i_1 < list.length; i_1++) { + var el = list[i_1]; + if (el.zlevel !== list[i_1 - 1].zlevel || el.incremental) { + this._needsManuallyCompositing = true; + break; + } + } + } + var prevLayer = null; + var incrementalLayerCount = 0; + var prevZlevel; + var i; + for (i = 0; i < list.length; i++) { + var el = list[i]; + var zlevel = el.zlevel; + var layer = void 0; + if (prevZlevel !== zlevel) { + prevZlevel = zlevel; + incrementalLayerCount = 0; + } + if (el.incremental) { + layer = this.getLayer(zlevel + INCREMENTAL_INC, this._needsManuallyCompositing); + layer.incremental = true; + incrementalLayerCount = 1; + } + else { + layer = this.getLayer(zlevel + (incrementalLayerCount > 0 ? EL_AFTER_INCREMENTAL_INC : 0), this._needsManuallyCompositing); + } + if (!layer.__builtin__) { + logError('ZLevel ' + zlevel + ' has been used by unkown layer ' + layer.id); + } + if (layer !== prevLayer) { + layer.__used = true; + if (layer.__startIndex !== i) { + layer.__dirty = true; + } + layer.__startIndex = i; + if (!layer.incremental) { + layer.__drawIndex = i; + } + else { + layer.__drawIndex = -1; + } + updatePrevLayer(i); + prevLayer = layer; + } + if ((el.__dirty & REDRAW_BIT) && !el.__inHover) { + layer.__dirty = true; + if (layer.incremental && layer.__drawIndex < 0) { + layer.__drawIndex = i; + } + } + } + updatePrevLayer(i); + this.eachBuiltinLayer(function (layer, z) { + if (!layer.__used && layer.getElementCount() > 0) { + layer.__dirty = true; + layer.__startIndex = layer.__endIndex = layer.__drawIndex = 0; + } + if (layer.__dirty && layer.__drawIndex < 0) { + layer.__drawIndex = layer.__startIndex; + } + }); + }; + CanvasPainter.prototype.clear = function () { + this.eachBuiltinLayer(this._clearLayer); + return this; + }; + CanvasPainter.prototype._clearLayer = function (layer) { + layer.clear(); + }; + CanvasPainter.prototype.setBackgroundColor = function (backgroundColor) { + this._backgroundColor = backgroundColor; + each(this._layers, function (layer) { + layer.setUnpainted(); + }); + }; + CanvasPainter.prototype.configLayer = function (zlevel, config) { + if (config) { + var layerConfig = this._layerConfig; + if (!layerConfig[zlevel]) { + layerConfig[zlevel] = config; + } + else { + merge(layerConfig[zlevel], config, true); + } + for (var i = 0; i < this._zlevelList.length; i++) { + var _zlevel = this._zlevelList[i]; + if (_zlevel === zlevel || _zlevel === zlevel + EL_AFTER_INCREMENTAL_INC) { + var layer = this._layers[_zlevel]; + merge(layer, layerConfig[zlevel], true); + } + } + } + }; + CanvasPainter.prototype.delLayer = function (zlevel) { + var layers = this._layers; + var zlevelList = this._zlevelList; + var layer = layers[zlevel]; + if (!layer) { + return; + } + layer.dom.parentNode.removeChild(layer.dom); + delete layers[zlevel]; + zlevelList.splice(indexOf(zlevelList, zlevel), 1); + }; + CanvasPainter.prototype.resize = function (width, height) { + if (!this._domRoot.style) { + if (width == null || height == null) { + return; + } + this._width = width; + this._height = height; + this.getLayer(CANVAS_ZLEVEL).resize(width, height); + } + else { + var domRoot = this._domRoot; + domRoot.style.display = 'none'; + var opts = this._opts; + var root = this.root; + width != null && (opts.width = width); + height != null && (opts.height = height); + width = getSize(root, 0, opts); + height = getSize(root, 1, opts); + domRoot.style.display = ''; + if (this._width !== width || height !== this._height) { + domRoot.style.width = width + 'px'; + domRoot.style.height = height + 'px'; + for (var id in this._layers) { + if (this._layers.hasOwnProperty(id)) { + this._layers[id].resize(width, height); + } + } + this.refresh(true); + } + this._width = width; + this._height = height; + } + return this; + }; + CanvasPainter.prototype.clearLayer = function (zlevel) { + var layer = this._layers[zlevel]; + if (layer) { + layer.clear(); + } + }; + CanvasPainter.prototype.dispose = function () { + this.root.innerHTML = ''; + this.root = + this.storage = + this._domRoot = + this._layers = null; + }; + CanvasPainter.prototype.getRenderedCanvas = function (opts) { + opts = opts || {}; + if (this._singleCanvas && !this._compositeManually) { + return this._layers[CANVAS_ZLEVEL].dom; + } + var imageLayer = new Layer('image', this, opts.pixelRatio || this.dpr); + imageLayer.initContext(); + imageLayer.clear(false, opts.backgroundColor || this._backgroundColor); + var ctx = imageLayer.ctx; + if (opts.pixelRatio <= this.dpr) { + this.refresh(); + var width_1 = imageLayer.dom.width; + var height_1 = imageLayer.dom.height; + this.eachLayer(function (layer) { + if (layer.__builtin__) { + ctx.drawImage(layer.dom, 0, 0, width_1, height_1); + } + else if (layer.renderToCanvas) { + ctx.save(); + layer.renderToCanvas(ctx); + ctx.restore(); + } + }); + } + else { + var scope = { + inHover: false, + viewWidth: this._width, + viewHeight: this._height + }; + var displayList = this.storage.getDisplayList(true); + for (var i = 0, len = displayList.length; i < len; i++) { + var el = displayList[i]; + brush(ctx, el, scope, i === len - 1); + } + } + return imageLayer.dom; + }; + CanvasPainter.prototype.getWidth = function () { + return this._width; + }; + CanvasPainter.prototype.getHeight = function () { + return this._height; + }; + return CanvasPainter; + }()); + + function install$1(registers) { + registers.registerPainter('canvas', CanvasPainter); + } + + var LineSeriesModel = /** @class */function (_super) { + __extends(LineSeriesModel, _super); + function LineSeriesModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = LineSeriesModel.type; + _this.hasSymbolVisual = true; + return _this; + } + LineSeriesModel.prototype.getInitialData = function (option) { + if ("development" !== 'production') { + var coordSys = option.coordinateSystem; + if (coordSys !== 'polar' && coordSys !== 'cartesian2d') { + throw new Error('Line not support coordinateSystem besides cartesian and polar'); + } + } + return createSeriesData(null, this, { + useEncodeDefaulter: true + }); + }; + LineSeriesModel.prototype.getLegendIcon = function (opt) { + var group = new Group(); + var line = createSymbol('line', 0, opt.itemHeight / 2, opt.itemWidth, 0, opt.lineStyle.stroke, false); + group.add(line); + line.setStyle(opt.lineStyle); + var visualType = this.getData().getVisual('symbol'); + var visualRotate = this.getData().getVisual('symbolRotate'); + var symbolType = visualType === 'none' ? 'circle' : visualType; + // Symbol size is 80% when there is a line + var size = opt.itemHeight * 0.8; + var symbol = createSymbol(symbolType, (opt.itemWidth - size) / 2, (opt.itemHeight - size) / 2, size, size, opt.itemStyle.fill); + group.add(symbol); + symbol.setStyle(opt.itemStyle); + var symbolRotate = opt.iconRotate === 'inherit' ? visualRotate : opt.iconRotate || 0; + symbol.rotation = symbolRotate * Math.PI / 180; + symbol.setOrigin([opt.itemWidth / 2, opt.itemHeight / 2]); + if (symbolType.indexOf('empty') > -1) { + symbol.style.stroke = symbol.style.fill; + symbol.style.fill = '#fff'; + symbol.style.lineWidth = 2; + } + return group; + }; + LineSeriesModel.type = 'series.line'; + LineSeriesModel.dependencies = ['grid', 'polar']; + LineSeriesModel.defaultOption = { + // zlevel: 0, + z: 3, + coordinateSystem: 'cartesian2d', + legendHoverLink: true, + clip: true, + label: { + position: 'top' + }, + // itemStyle: { + // }, + endLabel: { + show: false, + valueAnimation: true, + distance: 8 + }, + lineStyle: { + width: 2, + type: 'solid' + }, + emphasis: { + scale: true + }, + // areaStyle: { + // origin of areaStyle. Valid values: + // `'auto'/null/undefined`: from axisLine to data + // `'start'`: from min to data + // `'end'`: from data to max + // origin: 'auto' + // }, + // false, 'start', 'end', 'middle' + step: false, + // Disabled if step is true + smooth: false, + smoothMonotone: null, + symbol: 'emptyCircle', + symbolSize: 4, + symbolRotate: null, + showSymbol: true, + // `false`: follow the label interval strategy. + // `true`: show all symbols. + // `'auto'`: If possible, show all symbols, otherwise + // follow the label interval strategy. + showAllSymbol: 'auto', + // Whether to connect break point. + connectNulls: false, + // Sampling for large data. Can be: 'average', 'max', 'min', 'sum', 'lttb'. + sampling: 'none', + animationEasing: 'linear', + // Disable progressive + progressive: 0, + hoverLayerThreshold: Infinity, + universalTransition: { + divideShape: 'clone' + }, + triggerLineEvent: false + }; + return LineSeriesModel; + }(SeriesModel); + + /** + * @return label string. Not null/undefined + */ + function getDefaultLabel(data, dataIndex) { + var labelDims = data.mapDimensionsAll('defaultedLabel'); + var len = labelDims.length; + // Simple optimization (in lots of cases, label dims length is 1) + if (len === 1) { + var rawVal = retrieveRawValue(data, dataIndex, labelDims[0]); + return rawVal != null ? rawVal + '' : null; + } else if (len) { + var vals = []; + for (var i = 0; i < labelDims.length; i++) { + vals.push(retrieveRawValue(data, dataIndex, labelDims[i])); + } + return vals.join(' '); + } + } + function getDefaultInterpolatedLabel(data, interpolatedValue) { + var labelDims = data.mapDimensionsAll('defaultedLabel'); + if (!isArray(interpolatedValue)) { + return interpolatedValue + ''; + } + var vals = []; + for (var i = 0; i < labelDims.length; i++) { + var dimIndex = data.getDimensionIndex(labelDims[i]); + if (dimIndex >= 0) { + vals.push(interpolatedValue[dimIndex]); + } + } + return vals.join(' '); + } + + var Symbol = /** @class */function (_super) { + __extends(Symbol, _super); + function Symbol(data, idx, seriesScope, opts) { + var _this = _super.call(this) || this; + _this.updateData(data, idx, seriesScope, opts); + return _this; + } + Symbol.prototype._createSymbol = function (symbolType, data, idx, symbolSize, keepAspect) { + // Remove paths created before + this.removeAll(); + // let symbolPath = createSymbol( + // symbolType, -0.5, -0.5, 1, 1, color + // ); + // If width/height are set too small (e.g., set to 1) on ios10 + // and macOS Sierra, a circle stroke become a rect, no matter what + // the scale is set. So we set width/height as 2. See #4150. + var symbolPath = createSymbol(symbolType, -1, -1, 2, 2, null, keepAspect); + symbolPath.attr({ + z2: 100, + culling: true, + scaleX: symbolSize[0] / 2, + scaleY: symbolSize[1] / 2 + }); + // Rewrite drift method + symbolPath.drift = driftSymbol; + this._symbolType = symbolType; + this.add(symbolPath); + }; + /** + * Stop animation + * @param {boolean} toLastFrame + */ + Symbol.prototype.stopSymbolAnimation = function (toLastFrame) { + this.childAt(0).stopAnimation(null, toLastFrame); + }; + Symbol.prototype.getSymbolType = function () { + return this._symbolType; + }; + /** + * FIXME: + * Caution: This method breaks the encapsulation of this module, + * but it indeed brings convenience. So do not use the method + * unless you detailedly know all the implements of `Symbol`, + * especially animation. + * + * Get symbol path element. + */ + Symbol.prototype.getSymbolPath = function () { + return this.childAt(0); + }; + /** + * Highlight symbol + */ + Symbol.prototype.highlight = function () { + enterEmphasis(this.childAt(0)); + }; + /** + * Downplay symbol + */ + Symbol.prototype.downplay = function () { + leaveEmphasis(this.childAt(0)); + }; + /** + * @param {number} zlevel + * @param {number} z + */ + Symbol.prototype.setZ = function (zlevel, z) { + var symbolPath = this.childAt(0); + symbolPath.zlevel = zlevel; + symbolPath.z = z; + }; + Symbol.prototype.setDraggable = function (draggable, hasCursorOption) { + var symbolPath = this.childAt(0); + symbolPath.draggable = draggable; + symbolPath.cursor = !hasCursorOption && draggable ? 'move' : symbolPath.cursor; + }; + /** + * Update symbol properties + */ + Symbol.prototype.updateData = function (data, idx, seriesScope, opts) { + this.silent = false; + var symbolType = data.getItemVisual(idx, 'symbol') || 'circle'; + var seriesModel = data.hostModel; + var symbolSize = Symbol.getSymbolSize(data, idx); + var isInit = symbolType !== this._symbolType; + var disableAnimation = opts && opts.disableAnimation; + if (isInit) { + var keepAspect = data.getItemVisual(idx, 'symbolKeepAspect'); + this._createSymbol(symbolType, data, idx, symbolSize, keepAspect); + } else { + var symbolPath = this.childAt(0); + symbolPath.silent = false; + var target = { + scaleX: symbolSize[0] / 2, + scaleY: symbolSize[1] / 2 + }; + disableAnimation ? symbolPath.attr(target) : updateProps(symbolPath, target, seriesModel, idx); + saveOldStyle(symbolPath); + } + this._updateCommon(data, idx, symbolSize, seriesScope, opts); + if (isInit) { + var symbolPath = this.childAt(0); + if (!disableAnimation) { + var target = { + scaleX: this._sizeX, + scaleY: this._sizeY, + style: { + // Always fadeIn. Because it has fadeOut animation when symbol is removed.. + opacity: symbolPath.style.opacity + } + }; + symbolPath.scaleX = symbolPath.scaleY = 0; + symbolPath.style.opacity = 0; + initProps(symbolPath, target, seriesModel, idx); + } + } + if (disableAnimation) { + // Must stop leave transition manually if don't call initProps or updateProps. + this.childAt(0).stopAnimation('leave'); + } + }; + Symbol.prototype._updateCommon = function (data, idx, symbolSize, seriesScope, opts) { + var symbolPath = this.childAt(0); + var seriesModel = data.hostModel; + var emphasisItemStyle; + var blurItemStyle; + var selectItemStyle; + var focus; + var blurScope; + var emphasisDisabled; + var labelStatesModels; + var hoverScale; + var cursorStyle; + if (seriesScope) { + emphasisItemStyle = seriesScope.emphasisItemStyle; + blurItemStyle = seriesScope.blurItemStyle; + selectItemStyle = seriesScope.selectItemStyle; + focus = seriesScope.focus; + blurScope = seriesScope.blurScope; + labelStatesModels = seriesScope.labelStatesModels; + hoverScale = seriesScope.hoverScale; + cursorStyle = seriesScope.cursorStyle; + emphasisDisabled = seriesScope.emphasisDisabled; + } + if (!seriesScope || data.hasItemOption) { + var itemModel = seriesScope && seriesScope.itemModel ? seriesScope.itemModel : data.getItemModel(idx); + var emphasisModel = itemModel.getModel('emphasis'); + emphasisItemStyle = emphasisModel.getModel('itemStyle').getItemStyle(); + selectItemStyle = itemModel.getModel(['select', 'itemStyle']).getItemStyle(); + blurItemStyle = itemModel.getModel(['blur', 'itemStyle']).getItemStyle(); + focus = emphasisModel.get('focus'); + blurScope = emphasisModel.get('blurScope'); + emphasisDisabled = emphasisModel.get('disabled'); + labelStatesModels = getLabelStatesModels(itemModel); + hoverScale = emphasisModel.getShallow('scale'); + cursorStyle = itemModel.getShallow('cursor'); + } + var symbolRotate = data.getItemVisual(idx, 'symbolRotate'); + symbolPath.attr('rotation', (symbolRotate || 0) * Math.PI / 180 || 0); + var symbolOffset = normalizeSymbolOffset(data.getItemVisual(idx, 'symbolOffset'), symbolSize); + if (symbolOffset) { + symbolPath.x = symbolOffset[0]; + symbolPath.y = symbolOffset[1]; + } + cursorStyle && symbolPath.attr('cursor', cursorStyle); + var symbolStyle = data.getItemVisual(idx, 'style'); + var visualColor = symbolStyle.fill; + if (symbolPath instanceof ZRImage) { + var pathStyle = symbolPath.style; + symbolPath.useStyle(extend({ + // TODO other properties like x, y ? + image: pathStyle.image, + x: pathStyle.x, + y: pathStyle.y, + width: pathStyle.width, + height: pathStyle.height + }, symbolStyle)); + } else { + if (symbolPath.__isEmptyBrush) { + // fill and stroke will be swapped if it's empty. + // So we cloned a new style to avoid it affecting the original style in visual storage. + // TODO Better implementation. No empty logic! + symbolPath.useStyle(extend({}, symbolStyle)); + } else { + symbolPath.useStyle(symbolStyle); + } + // Disable decal because symbol scale will been applied on the decal. + symbolPath.style.decal = null; + symbolPath.setColor(visualColor, opts && opts.symbolInnerColor); + symbolPath.style.strokeNoScale = true; + } + var liftZ = data.getItemVisual(idx, 'liftZ'); + var z2Origin = this._z2; + if (liftZ != null) { + if (z2Origin == null) { + this._z2 = symbolPath.z2; + symbolPath.z2 += liftZ; + } + } else if (z2Origin != null) { + symbolPath.z2 = z2Origin; + this._z2 = null; + } + var useNameLabel = opts && opts.useNameLabel; + setLabelStyle(symbolPath, labelStatesModels, { + labelFetcher: seriesModel, + labelDataIndex: idx, + defaultText: getLabelDefaultText, + inheritColor: visualColor, + defaultOpacity: symbolStyle.opacity + }); + // Do not execute util needed. + function getLabelDefaultText(idx) { + return useNameLabel ? data.getName(idx) : getDefaultLabel(data, idx); + } + this._sizeX = symbolSize[0] / 2; + this._sizeY = symbolSize[1] / 2; + var emphasisState = symbolPath.ensureState('emphasis'); + emphasisState.style = emphasisItemStyle; + symbolPath.ensureState('select').style = selectItemStyle; + symbolPath.ensureState('blur').style = blurItemStyle; + // null / undefined / true means to use default strategy. + // 0 / false / negative number / NaN / Infinity means no scale. + var scaleRatio = hoverScale == null || hoverScale === true ? Math.max(1.1, 3 / this._sizeY) + // PENDING: restrict hoverScale > 1? It seems unreasonable to scale down + : isFinite(hoverScale) && hoverScale > 0 ? +hoverScale : 1; + // always set scale to allow resetting + emphasisState.scaleX = this._sizeX * scaleRatio; + emphasisState.scaleY = this._sizeY * scaleRatio; + this.setSymbolScale(1); + toggleHoverEmphasis(this, focus, blurScope, emphasisDisabled); + }; + Symbol.prototype.setSymbolScale = function (scale) { + this.scaleX = this.scaleY = scale; + }; + Symbol.prototype.fadeOut = function (cb, seriesModel, opt) { + var symbolPath = this.childAt(0); + var dataIndex = getECData(this).dataIndex; + var animationOpt = opt && opt.animation; + // Avoid mistaken hover when fading out + this.silent = symbolPath.silent = true; + // Not show text when animating + if (opt && opt.fadeLabel) { + var textContent = symbolPath.getTextContent(); + if (textContent) { + removeElement(textContent, { + style: { + opacity: 0 + } + }, seriesModel, { + dataIndex: dataIndex, + removeOpt: animationOpt, + cb: function () { + symbolPath.removeTextContent(); + } + }); + } + } else { + symbolPath.removeTextContent(); + } + removeElement(symbolPath, { + style: { + opacity: 0 + }, + scaleX: 0, + scaleY: 0 + }, seriesModel, { + dataIndex: dataIndex, + cb: cb, + removeOpt: animationOpt + }); + }; + Symbol.getSymbolSize = function (data, idx) { + return normalizeSymbolSize(data.getItemVisual(idx, 'symbolSize')); + }; + return Symbol; + }(Group); + function driftSymbol(dx, dy) { + this.parent.drift(dx, dy); + } + + function symbolNeedsDraw(data, point, idx, opt) { + return point && !isNaN(point[0]) && !isNaN(point[1]) && !(opt.isIgnore && opt.isIgnore(idx)) + // We do not set clipShape on group, because it will cut part of + // the symbol element shape. We use the same clip shape here as + // the line clip. + && !(opt.clipShape && !opt.clipShape.contain(point[0], point[1])) && data.getItemVisual(idx, 'symbol') !== 'none'; + } + function normalizeUpdateOpt(opt) { + if (opt != null && !isObject(opt)) { + opt = { + isIgnore: opt + }; + } + return opt || {}; + } + function makeSeriesScope(data) { + var seriesModel = data.hostModel; + var emphasisModel = seriesModel.getModel('emphasis'); + return { + emphasisItemStyle: emphasisModel.getModel('itemStyle').getItemStyle(), + blurItemStyle: seriesModel.getModel(['blur', 'itemStyle']).getItemStyle(), + selectItemStyle: seriesModel.getModel(['select', 'itemStyle']).getItemStyle(), + focus: emphasisModel.get('focus'), + blurScope: emphasisModel.get('blurScope'), + emphasisDisabled: emphasisModel.get('disabled'), + hoverScale: emphasisModel.get('scale'), + labelStatesModels: getLabelStatesModels(seriesModel), + cursorStyle: seriesModel.get('cursor') + }; + } + var SymbolDraw = /** @class */function () { + function SymbolDraw(SymbolCtor) { + this.group = new Group(); + this._SymbolCtor = SymbolCtor || Symbol; + } + /** + * Update symbols draw by new data + */ + SymbolDraw.prototype.updateData = function (data, opt) { + // Remove progressive els. + this._progressiveEls = null; + opt = normalizeUpdateOpt(opt); + var group = this.group; + var seriesModel = data.hostModel; + var oldData = this._data; + var SymbolCtor = this._SymbolCtor; + var disableAnimation = opt.disableAnimation; + var seriesScope = makeSeriesScope(data); + var symbolUpdateOpt = { + disableAnimation: disableAnimation + }; + var getSymbolPoint = opt.getSymbolPoint || function (idx) { + return data.getItemLayout(idx); + }; + // There is no oldLineData only when first rendering or switching from + // stream mode to normal mode, where previous elements should be removed. + if (!oldData) { + group.removeAll(); + } + data.diff(oldData).add(function (newIdx) { + var point = getSymbolPoint(newIdx); + if (symbolNeedsDraw(data, point, newIdx, opt)) { + var symbolEl = new SymbolCtor(data, newIdx, seriesScope, symbolUpdateOpt); + symbolEl.setPosition(point); + data.setItemGraphicEl(newIdx, symbolEl); + group.add(symbolEl); + } + }).update(function (newIdx, oldIdx) { + var symbolEl = oldData.getItemGraphicEl(oldIdx); + var point = getSymbolPoint(newIdx); + if (!symbolNeedsDraw(data, point, newIdx, opt)) { + group.remove(symbolEl); + return; + } + var newSymbolType = data.getItemVisual(newIdx, 'symbol') || 'circle'; + var oldSymbolType = symbolEl && symbolEl.getSymbolType && symbolEl.getSymbolType(); + if (!symbolEl + // Create a new if symbol type changed. + || oldSymbolType && oldSymbolType !== newSymbolType) { + group.remove(symbolEl); + symbolEl = new SymbolCtor(data, newIdx, seriesScope, symbolUpdateOpt); + symbolEl.setPosition(point); + } else { + symbolEl.updateData(data, newIdx, seriesScope, symbolUpdateOpt); + var target = { + x: point[0], + y: point[1] + }; + disableAnimation ? symbolEl.attr(target) : updateProps(symbolEl, target, seriesModel); + } + // Add back + group.add(symbolEl); + data.setItemGraphicEl(newIdx, symbolEl); + }).remove(function (oldIdx) { + var el = oldData.getItemGraphicEl(oldIdx); + el && el.fadeOut(function () { + group.remove(el); + }, seriesModel); + }).execute(); + this._getSymbolPoint = getSymbolPoint; + this._data = data; + }; + SymbolDraw.prototype.updateLayout = function () { + var _this = this; + var data = this._data; + if (data) { + // Not use animation + data.eachItemGraphicEl(function (el, idx) { + var point = _this._getSymbolPoint(idx); + el.setPosition(point); + el.markRedraw(); + }); + } + }; + SymbolDraw.prototype.incrementalPrepareUpdate = function (data) { + this._seriesScope = makeSeriesScope(data); + this._data = null; + this.group.removeAll(); + }; + /** + * Update symbols draw by new data + */ + SymbolDraw.prototype.incrementalUpdate = function (taskParams, data, opt) { + // Clear + this._progressiveEls = []; + opt = normalizeUpdateOpt(opt); + function updateIncrementalAndHover(el) { + if (!el.isGroup) { + el.incremental = true; + el.ensureState('emphasis').hoverLayer = true; + } + } + for (var idx = taskParams.start; idx < taskParams.end; idx++) { + var point = data.getItemLayout(idx); + if (symbolNeedsDraw(data, point, idx, opt)) { + var el = new this._SymbolCtor(data, idx, this._seriesScope); + el.traverse(updateIncrementalAndHover); + el.setPosition(point); + this.group.add(el); + data.setItemGraphicEl(idx, el); + this._progressiveEls.push(el); + } + } + }; + SymbolDraw.prototype.eachRendered = function (cb) { + traverseElements(this._progressiveEls || this.group, cb); + }; + SymbolDraw.prototype.remove = function (enableAnimation) { + var group = this.group; + var data = this._data; + // Incremental model do not have this._data. + if (data && enableAnimation) { + data.eachItemGraphicEl(function (el) { + el.fadeOut(function () { + group.remove(el); + }, data.hostModel); + }); + } else { + group.removeAll(); + } + }; + return SymbolDraw; + }(); + + function prepareDataCoordInfo(coordSys, data, valueOrigin) { + var baseAxis = coordSys.getBaseAxis(); + var valueAxis = coordSys.getOtherAxis(baseAxis); + var valueStart = getValueStart(valueAxis, valueOrigin); + var baseAxisDim = baseAxis.dim; + var valueAxisDim = valueAxis.dim; + var valueDim = data.mapDimension(valueAxisDim); + var baseDim = data.mapDimension(baseAxisDim); + var baseDataOffset = valueAxisDim === 'x' || valueAxisDim === 'radius' ? 1 : 0; + var dims = map(coordSys.dimensions, function (coordDim) { + return data.mapDimension(coordDim); + }); + var stacked = false; + var stackResultDim = data.getCalculationInfo('stackResultDimension'); + if (isDimensionStacked(data, dims[0] /* , dims[1] */)) { + // jshint ignore:line + stacked = true; + dims[0] = stackResultDim; + } + if (isDimensionStacked(data, dims[1] /* , dims[0] */)) { + // jshint ignore:line + stacked = true; + dims[1] = stackResultDim; + } + return { + dataDimsForPoint: dims, + valueStart: valueStart, + valueAxisDim: valueAxisDim, + baseAxisDim: baseAxisDim, + stacked: !!stacked, + valueDim: valueDim, + baseDim: baseDim, + baseDataOffset: baseDataOffset, + stackedOverDimension: data.getCalculationInfo('stackedOverDimension') + }; + } + function getValueStart(valueAxis, valueOrigin) { + var valueStart = 0; + var extent = valueAxis.scale.getExtent(); + if (valueOrigin === 'start') { + valueStart = extent[0]; + } else if (valueOrigin === 'end') { + valueStart = extent[1]; + } + // If origin is specified as a number, use it as + // valueStart directly + else if (isNumber(valueOrigin) && !isNaN(valueOrigin)) { + valueStart = valueOrigin; + } + // auto + else { + // Both positive + if (extent[0] > 0) { + valueStart = extent[0]; + } + // Both negative + else if (extent[1] < 0) { + valueStart = extent[1]; + } + // If is one positive, and one negative, onZero shall be true + } + + return valueStart; + } + function getStackedOnPoint(dataCoordInfo, coordSys, data, idx) { + var value = NaN; + if (dataCoordInfo.stacked) { + value = data.get(data.getCalculationInfo('stackedOverDimension'), idx); + } + if (isNaN(value)) { + value = dataCoordInfo.valueStart; + } + var baseDataOffset = dataCoordInfo.baseDataOffset; + var stackedData = []; + stackedData[baseDataOffset] = data.get(dataCoordInfo.baseDim, idx); + stackedData[1 - baseDataOffset] = value; + return coordSys.dataToPoint(stackedData); + } + + function diffData(oldData, newData) { + var diffResult = []; + newData.diff(oldData).add(function (idx) { + diffResult.push({ + cmd: '+', + idx: idx + }); + }).update(function (newIdx, oldIdx) { + diffResult.push({ + cmd: '=', + idx: oldIdx, + idx1: newIdx + }); + }).remove(function (idx) { + diffResult.push({ + cmd: '-', + idx: idx + }); + }).execute(); + return diffResult; + } + function lineAnimationDiff(oldData, newData, oldStackedOnPoints, newStackedOnPoints, oldCoordSys, newCoordSys, oldValueOrigin, newValueOrigin) { + var diff = diffData(oldData, newData); + // let newIdList = newData.mapArray(newData.getId); + // let oldIdList = oldData.mapArray(oldData.getId); + // convertToIntId(newIdList, oldIdList); + // // FIXME One data ? + // diff = arrayDiff(oldIdList, newIdList); + var currPoints = []; + var nextPoints = []; + // Points for stacking base line + var currStackedPoints = []; + var nextStackedPoints = []; + var status = []; + var sortedIndices = []; + var rawIndices = []; + var newDataOldCoordInfo = prepareDataCoordInfo(oldCoordSys, newData, oldValueOrigin); + // const oldDataNewCoordInfo = prepareDataCoordInfo(newCoordSys, oldData, newValueOrigin); + var oldPoints = oldData.getLayout('points') || []; + var newPoints = newData.getLayout('points') || []; + for (var i = 0; i < diff.length; i++) { + var diffItem = diff[i]; + var pointAdded = true; + var oldIdx2 = void 0; + var newIdx2 = void 0; + // FIXME, animation is not so perfect when dataZoom window moves fast + // Which is in case remvoing or add more than one data in the tail or head + switch (diffItem.cmd) { + case '=': + oldIdx2 = diffItem.idx * 2; + newIdx2 = diffItem.idx1 * 2; + var currentX = oldPoints[oldIdx2]; + var currentY = oldPoints[oldIdx2 + 1]; + var nextX = newPoints[newIdx2]; + var nextY = newPoints[newIdx2 + 1]; + // If previous data is NaN, use next point directly + if (isNaN(currentX) || isNaN(currentY)) { + currentX = nextX; + currentY = nextY; + } + currPoints.push(currentX, currentY); + nextPoints.push(nextX, nextY); + currStackedPoints.push(oldStackedOnPoints[oldIdx2], oldStackedOnPoints[oldIdx2 + 1]); + nextStackedPoints.push(newStackedOnPoints[newIdx2], newStackedOnPoints[newIdx2 + 1]); + rawIndices.push(newData.getRawIndex(diffItem.idx1)); + break; + case '+': + var newIdx = diffItem.idx; + var newDataDimsForPoint = newDataOldCoordInfo.dataDimsForPoint; + var oldPt = oldCoordSys.dataToPoint([newData.get(newDataDimsForPoint[0], newIdx), newData.get(newDataDimsForPoint[1], newIdx)]); + newIdx2 = newIdx * 2; + currPoints.push(oldPt[0], oldPt[1]); + nextPoints.push(newPoints[newIdx2], newPoints[newIdx2 + 1]); + var stackedOnPoint = getStackedOnPoint(newDataOldCoordInfo, oldCoordSys, newData, newIdx); + currStackedPoints.push(stackedOnPoint[0], stackedOnPoint[1]); + nextStackedPoints.push(newStackedOnPoints[newIdx2], newStackedOnPoints[newIdx2 + 1]); + rawIndices.push(newData.getRawIndex(newIdx)); + break; + case '-': + pointAdded = false; + } + // Original indices + if (pointAdded) { + status.push(diffItem); + sortedIndices.push(sortedIndices.length); + } + } + // Diff result may be crossed if all items are changed + // Sort by data index + sortedIndices.sort(function (a, b) { + return rawIndices[a] - rawIndices[b]; + }); + var len = currPoints.length; + var sortedCurrPoints = createFloat32Array(len); + var sortedNextPoints = createFloat32Array(len); + var sortedCurrStackedPoints = createFloat32Array(len); + var sortedNextStackedPoints = createFloat32Array(len); + var sortedStatus = []; + for (var i = 0; i < sortedIndices.length; i++) { + var idx = sortedIndices[i]; + var i2 = i * 2; + var idx2 = idx * 2; + sortedCurrPoints[i2] = currPoints[idx2]; + sortedCurrPoints[i2 + 1] = currPoints[idx2 + 1]; + sortedNextPoints[i2] = nextPoints[idx2]; + sortedNextPoints[i2 + 1] = nextPoints[idx2 + 1]; + sortedCurrStackedPoints[i2] = currStackedPoints[idx2]; + sortedCurrStackedPoints[i2 + 1] = currStackedPoints[idx2 + 1]; + sortedNextStackedPoints[i2] = nextStackedPoints[idx2]; + sortedNextStackedPoints[i2 + 1] = nextStackedPoints[idx2 + 1]; + sortedStatus[i] = status[idx]; + } + return { + current: sortedCurrPoints, + next: sortedNextPoints, + stackedOnCurrent: sortedCurrStackedPoints, + stackedOnNext: sortedNextStackedPoints, + status: sortedStatus + }; + } + + var mathMin$5 = Math.min; + var mathMax$5 = Math.max; + function isPointNull(x, y) { + return isNaN(x) || isNaN(y); + } + /** + * Draw smoothed line in non-monotone, in may cause undesired curve in extreme + * situations. This should be used when points are non-monotone neither in x or + * y dimension. + */ + function drawSegment(ctx, points, start, segLen, allLen, dir, smooth, smoothMonotone, connectNulls) { + var prevX; + var prevY; + var cpx0; + var cpy0; + var cpx1; + var cpy1; + var idx = start; + var k = 0; + for (; k < segLen; k++) { + var x = points[idx * 2]; + var y = points[idx * 2 + 1]; + if (idx >= allLen || idx < 0) { + break; + } + if (isPointNull(x, y)) { + if (connectNulls) { + idx += dir; + continue; + } + break; + } + if (idx === start) { + ctx[dir > 0 ? 'moveTo' : 'lineTo'](x, y); + cpx0 = x; + cpy0 = y; + } else { + var dx = x - prevX; + var dy = y - prevY; + // Ignore tiny segment. + if (dx * dx + dy * dy < 0.5) { + idx += dir; + continue; + } + if (smooth > 0) { + var nextIdx = idx + dir; + var nextX = points[nextIdx * 2]; + var nextY = points[nextIdx * 2 + 1]; + // Ignore duplicate point + while (nextX === x && nextY === y && k < segLen) { + k++; + nextIdx += dir; + idx += dir; + nextX = points[nextIdx * 2]; + nextY = points[nextIdx * 2 + 1]; + x = points[idx * 2]; + y = points[idx * 2 + 1]; + dx = x - prevX; + dy = y - prevY; + } + var tmpK = k + 1; + if (connectNulls) { + // Find next point not null + while (isPointNull(nextX, nextY) && tmpK < segLen) { + tmpK++; + nextIdx += dir; + nextX = points[nextIdx * 2]; + nextY = points[nextIdx * 2 + 1]; + } + } + var ratioNextSeg = 0.5; + var vx = 0; + var vy = 0; + var nextCpx0 = void 0; + var nextCpy0 = void 0; + // Is last point + if (tmpK >= segLen || isPointNull(nextX, nextY)) { + cpx1 = x; + cpy1 = y; + } else { + vx = nextX - prevX; + vy = nextY - prevY; + var dx0 = x - prevX; + var dx1 = nextX - x; + var dy0 = y - prevY; + var dy1 = nextY - y; + var lenPrevSeg = void 0; + var lenNextSeg = void 0; + if (smoothMonotone === 'x') { + lenPrevSeg = Math.abs(dx0); + lenNextSeg = Math.abs(dx1); + var dir_1 = vx > 0 ? 1 : -1; + cpx1 = x - dir_1 * lenPrevSeg * smooth; + cpy1 = y; + nextCpx0 = x + dir_1 * lenNextSeg * smooth; + nextCpy0 = y; + } else if (smoothMonotone === 'y') { + lenPrevSeg = Math.abs(dy0); + lenNextSeg = Math.abs(dy1); + var dir_2 = vy > 0 ? 1 : -1; + cpx1 = x; + cpy1 = y - dir_2 * lenPrevSeg * smooth; + nextCpx0 = x; + nextCpy0 = y + dir_2 * lenNextSeg * smooth; + } else { + lenPrevSeg = Math.sqrt(dx0 * dx0 + dy0 * dy0); + lenNextSeg = Math.sqrt(dx1 * dx1 + dy1 * dy1); + // Use ratio of seg length + ratioNextSeg = lenNextSeg / (lenNextSeg + lenPrevSeg); + cpx1 = x - vx * smooth * (1 - ratioNextSeg); + cpy1 = y - vy * smooth * (1 - ratioNextSeg); + // cp0 of next segment + nextCpx0 = x + vx * smooth * ratioNextSeg; + nextCpy0 = y + vy * smooth * ratioNextSeg; + // Smooth constraint between point and next point. + // Avoid exceeding extreme after smoothing. + nextCpx0 = mathMin$5(nextCpx0, mathMax$5(nextX, x)); + nextCpy0 = mathMin$5(nextCpy0, mathMax$5(nextY, y)); + nextCpx0 = mathMax$5(nextCpx0, mathMin$5(nextX, x)); + nextCpy0 = mathMax$5(nextCpy0, mathMin$5(nextY, y)); + // Reclaculate cp1 based on the adjusted cp0 of next seg. + vx = nextCpx0 - x; + vy = nextCpy0 - y; + cpx1 = x - vx * lenPrevSeg / lenNextSeg; + cpy1 = y - vy * lenPrevSeg / lenNextSeg; + // Smooth constraint between point and prev point. + // Avoid exceeding extreme after smoothing. + cpx1 = mathMin$5(cpx1, mathMax$5(prevX, x)); + cpy1 = mathMin$5(cpy1, mathMax$5(prevY, y)); + cpx1 = mathMax$5(cpx1, mathMin$5(prevX, x)); + cpy1 = mathMax$5(cpy1, mathMin$5(prevY, y)); + // Adjust next cp0 again. + vx = x - cpx1; + vy = y - cpy1; + nextCpx0 = x + vx * lenNextSeg / lenPrevSeg; + nextCpy0 = y + vy * lenNextSeg / lenPrevSeg; + } + } + ctx.bezierCurveTo(cpx0, cpy0, cpx1, cpy1, x, y); + cpx0 = nextCpx0; + cpy0 = nextCpy0; + } else { + ctx.lineTo(x, y); + } + } + prevX = x; + prevY = y; + idx += dir; + } + return k; + } + var ECPolylineShape = /** @class */function () { + function ECPolylineShape() { + this.smooth = 0; + this.smoothConstraint = true; + } + return ECPolylineShape; + }(); + var ECPolyline = /** @class */function (_super) { + __extends(ECPolyline, _super); + function ECPolyline(opts) { + var _this = _super.call(this, opts) || this; + _this.type = 'ec-polyline'; + return _this; + } + ECPolyline.prototype.getDefaultStyle = function () { + return { + stroke: '#000', + fill: null + }; + }; + ECPolyline.prototype.getDefaultShape = function () { + return new ECPolylineShape(); + }; + ECPolyline.prototype.buildPath = function (ctx, shape) { + var points = shape.points; + var i = 0; + var len = points.length / 2; + // const result = getBoundingBox(points, shape.smoothConstraint); + if (shape.connectNulls) { + // Must remove first and last null values avoid draw error in polygon + for (; len > 0; len--) { + if (!isPointNull(points[len * 2 - 2], points[len * 2 - 1])) { + break; + } + } + for (; i < len; i++) { + if (!isPointNull(points[i * 2], points[i * 2 + 1])) { + break; + } + } + } + while (i < len) { + i += drawSegment(ctx, points, i, len, len, 1, shape.smooth, shape.smoothMonotone, shape.connectNulls) + 1; + } + }; + ECPolyline.prototype.getPointOn = function (xOrY, dim) { + if (!this.path) { + this.createPathProxy(); + this.buildPath(this.path, this.shape); + } + var path = this.path; + var data = path.data; + var CMD = PathProxy.CMD; + var x0; + var y0; + var isDimX = dim === 'x'; + var roots = []; + for (var i = 0; i < data.length;) { + var cmd = data[i++]; + var x = void 0; + var y = void 0; + var x2 = void 0; + var y2 = void 0; + var x3 = void 0; + var y3 = void 0; + var t = void 0; + switch (cmd) { + case CMD.M: + x0 = data[i++]; + y0 = data[i++]; + break; + case CMD.L: + x = data[i++]; + y = data[i++]; + t = isDimX ? (xOrY - x0) / (x - x0) : (xOrY - y0) / (y - y0); + if (t <= 1 && t >= 0) { + var val = isDimX ? (y - y0) * t + y0 : (x - x0) * t + x0; + return isDimX ? [xOrY, val] : [val, xOrY]; + } + x0 = x; + y0 = y; + break; + case CMD.C: + x = data[i++]; + y = data[i++]; + x2 = data[i++]; + y2 = data[i++]; + x3 = data[i++]; + y3 = data[i++]; + var nRoot = isDimX ? cubicRootAt(x0, x, x2, x3, xOrY, roots) : cubicRootAt(y0, y, y2, y3, xOrY, roots); + if (nRoot > 0) { + for (var i_1 = 0; i_1 < nRoot; i_1++) { + var t_1 = roots[i_1]; + if (t_1 <= 1 && t_1 >= 0) { + var val = isDimX ? cubicAt(y0, y, y2, y3, t_1) : cubicAt(x0, x, x2, x3, t_1); + return isDimX ? [xOrY, val] : [val, xOrY]; + } + } + } + x0 = x3; + y0 = y3; + break; + } + } + }; + return ECPolyline; + }(Path); + var ECPolygonShape = /** @class */function (_super) { + __extends(ECPolygonShape, _super); + function ECPolygonShape() { + return _super !== null && _super.apply(this, arguments) || this; + } + return ECPolygonShape; + }(ECPolylineShape); + var ECPolygon = /** @class */function (_super) { + __extends(ECPolygon, _super); + function ECPolygon(opts) { + var _this = _super.call(this, opts) || this; + _this.type = 'ec-polygon'; + return _this; + } + ECPolygon.prototype.getDefaultShape = function () { + return new ECPolygonShape(); + }; + ECPolygon.prototype.buildPath = function (ctx, shape) { + var points = shape.points; + var stackedOnPoints = shape.stackedOnPoints; + var i = 0; + var len = points.length / 2; + var smoothMonotone = shape.smoothMonotone; + if (shape.connectNulls) { + // Must remove first and last null values avoid draw error in polygon + for (; len > 0; len--) { + if (!isPointNull(points[len * 2 - 2], points[len * 2 - 1])) { + break; + } + } + for (; i < len; i++) { + if (!isPointNull(points[i * 2], points[i * 2 + 1])) { + break; + } + } + } + while (i < len) { + var k = drawSegment(ctx, points, i, len, len, 1, shape.smooth, smoothMonotone, shape.connectNulls); + drawSegment(ctx, stackedOnPoints, i + k - 1, k, len, -1, shape.stackedOnSmooth, smoothMonotone, shape.connectNulls); + i += k + 1; + ctx.closePath(); + } + }; + return ECPolygon; + }(Path); + + function createGridClipPath(cartesian, hasAnimation, seriesModel, done, during) { + var rect = cartesian.getArea(); + var x = rect.x; + var y = rect.y; + var width = rect.width; + var height = rect.height; + var lineWidth = seriesModel.get(['lineStyle', 'width']) || 2; + // Expand the clip path a bit to avoid the border is clipped and looks thinner + x -= lineWidth / 2; + y -= lineWidth / 2; + width += lineWidth; + height += lineWidth; + // fix: https://github.com/apache/incubator-echarts/issues/11369 + width = Math.ceil(width); + if (x !== Math.floor(x)) { + x = Math.floor(x); + // if no extra 1px on `width`, it will still be clipped since `x` is floored + width++; + } + var clipPath = new Rect({ + shape: { + x: x, + y: y, + width: width, + height: height + } + }); + if (hasAnimation) { + var baseAxis = cartesian.getBaseAxis(); + var isHorizontal = baseAxis.isHorizontal(); + var isAxisInversed = baseAxis.inverse; + if (isHorizontal) { + if (isAxisInversed) { + clipPath.shape.x += width; + } + clipPath.shape.width = 0; + } else { + if (!isAxisInversed) { + clipPath.shape.y += height; + } + clipPath.shape.height = 0; + } + var duringCb = isFunction(during) ? function (percent) { + during(percent, clipPath); + } : null; + initProps(clipPath, { + shape: { + width: width, + height: height, + x: x, + y: y + } + }, seriesModel, null, done, duringCb); + } + return clipPath; + } + function createPolarClipPath(polar, hasAnimation, seriesModel) { + var sectorArea = polar.getArea(); + // Avoid float number rounding error for symbol on the edge of axis extent. + var r0 = round(sectorArea.r0, 1); + var r = round(sectorArea.r, 1); + var clipPath = new Sector({ + shape: { + cx: round(polar.cx, 1), + cy: round(polar.cy, 1), + r0: r0, + r: r, + startAngle: sectorArea.startAngle, + endAngle: sectorArea.endAngle, + clockwise: sectorArea.clockwise + } + }); + if (hasAnimation) { + var isRadial = polar.getBaseAxis().dim === 'angle'; + if (isRadial) { + clipPath.shape.endAngle = sectorArea.startAngle; + } else { + clipPath.shape.r = r0; + } + initProps(clipPath, { + shape: { + endAngle: sectorArea.endAngle, + r: r + } + }, seriesModel); + } + return clipPath; + } + function createClipPath(coordSys, hasAnimation, seriesModel, done, during) { + if (!coordSys) { + return null; + } else if (coordSys.type === 'polar') { + return createPolarClipPath(coordSys, hasAnimation, seriesModel); + } else if (coordSys.type === 'cartesian2d') { + return createGridClipPath(coordSys, hasAnimation, seriesModel, done, during); + } + return null; + } + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + + /** + * AUTO-GENERATED FILE. DO NOT MODIFY. + */ + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + function isCoordinateSystemType(coordSys, type) { + return coordSys.type === type; + } + + function isPointsSame(points1, points2) { + if (points1.length !== points2.length) { + return; + } + for (var i = 0; i < points1.length; i++) { + if (points1[i] !== points2[i]) { + return; + } + } + return true; + } + function bboxFromPoints(points) { + var minX = Infinity; + var minY = Infinity; + var maxX = -Infinity; + var maxY = -Infinity; + for (var i = 0; i < points.length;) { + var x = points[i++]; + var y = points[i++]; + if (!isNaN(x)) { + minX = Math.min(x, minX); + maxX = Math.max(x, maxX); + } + if (!isNaN(y)) { + minY = Math.min(y, minY); + maxY = Math.max(y, maxY); + } + } + return [[minX, minY], [maxX, maxY]]; + } + function getBoundingDiff(points1, points2) { + var _a = bboxFromPoints(points1), + min1 = _a[0], + max1 = _a[1]; + var _b = bboxFromPoints(points2), + min2 = _b[0], + max2 = _b[1]; + // Get a max value from each corner of two boundings. + return Math.max(Math.abs(min1[0] - min2[0]), Math.abs(min1[1] - min2[1]), Math.abs(max1[0] - max2[0]), Math.abs(max1[1] - max2[1])); + } + function getSmooth(smooth) { + return isNumber(smooth) ? smooth : smooth ? 0.5 : 0; + } + function getStackedOnPoints(coordSys, data, dataCoordInfo) { + if (!dataCoordInfo.valueDim) { + return []; + } + var len = data.count(); + var points = createFloat32Array(len * 2); + for (var idx = 0; idx < len; idx++) { + var pt = getStackedOnPoint(dataCoordInfo, coordSys, data, idx); + points[idx * 2] = pt[0]; + points[idx * 2 + 1] = pt[1]; + } + return points; + } + function turnPointsIntoStep(points, coordSys, stepTurnAt, connectNulls) { + var baseAxis = coordSys.getBaseAxis(); + var baseIndex = baseAxis.dim === 'x' || baseAxis.dim === 'radius' ? 0 : 1; + var stepPoints = []; + var i = 0; + var stepPt = []; + var pt = []; + var nextPt = []; + var filteredPoints = []; + if (connectNulls) { + for (i = 0; i < points.length; i += 2) { + if (!isNaN(points[i]) && !isNaN(points[i + 1])) { + filteredPoints.push(points[i], points[i + 1]); + } + } + points = filteredPoints; + } + for (i = 0; i < points.length - 2; i += 2) { + nextPt[0] = points[i + 2]; + nextPt[1] = points[i + 3]; + pt[0] = points[i]; + pt[1] = points[i + 1]; + stepPoints.push(pt[0], pt[1]); + switch (stepTurnAt) { + case 'end': + stepPt[baseIndex] = nextPt[baseIndex]; + stepPt[1 - baseIndex] = pt[1 - baseIndex]; + stepPoints.push(stepPt[0], stepPt[1]); + break; + case 'middle': + var middle = (pt[baseIndex] + nextPt[baseIndex]) / 2; + var stepPt2 = []; + stepPt[baseIndex] = stepPt2[baseIndex] = middle; + stepPt[1 - baseIndex] = pt[1 - baseIndex]; + stepPt2[1 - baseIndex] = nextPt[1 - baseIndex]; + stepPoints.push(stepPt[0], stepPt[1]); + stepPoints.push(stepPt2[0], stepPt2[1]); + break; + default: + // default is start + stepPt[baseIndex] = pt[baseIndex]; + stepPt[1 - baseIndex] = nextPt[1 - baseIndex]; + stepPoints.push(stepPt[0], stepPt[1]); + } + } + // Last points + stepPoints.push(points[i++], points[i++]); + return stepPoints; + } + /** + * Clip color stops to edge. Avoid creating too large gradients. + * Which may lead to blurry when GPU acceleration is enabled. See #15680 + * + * The stops has been sorted from small to large. + */ + function clipColorStops(colorStops, maxSize) { + var newColorStops = []; + var len = colorStops.length; + // coord will always < 0 in prevOutOfRangeColorStop. + var prevOutOfRangeColorStop; + var prevInRangeColorStop; + function lerpStop(stop0, stop1, clippedCoord) { + var coord0 = stop0.coord; + var p = (clippedCoord - coord0) / (stop1.coord - coord0); + var color = lerp$1(p, [stop0.color, stop1.color]); + return { + coord: clippedCoord, + color: color + }; + } + for (var i = 0; i < len; i++) { + var stop_1 = colorStops[i]; + var coord = stop_1.coord; + if (coord < 0) { + prevOutOfRangeColorStop = stop_1; + } else if (coord > maxSize) { + if (prevInRangeColorStop) { + newColorStops.push(lerpStop(prevInRangeColorStop, stop_1, maxSize)); + } else if (prevOutOfRangeColorStop) { + // If there are two stops and coord range is between these two stops + newColorStops.push(lerpStop(prevOutOfRangeColorStop, stop_1, 0), lerpStop(prevOutOfRangeColorStop, stop_1, maxSize)); + } + // All following stop will be out of range. So just ignore them. + break; + } else { + if (prevOutOfRangeColorStop) { + newColorStops.push(lerpStop(prevOutOfRangeColorStop, stop_1, 0)); + // Reset + prevOutOfRangeColorStop = null; + } + newColorStops.push(stop_1); + prevInRangeColorStop = stop_1; + } + } + return newColorStops; + } + function getVisualGradient(data, coordSys, api) { + var visualMetaList = data.getVisual('visualMeta'); + if (!visualMetaList || !visualMetaList.length || !data.count()) { + // When data.count() is 0, gradient range can not be calculated. + return; + } + if (coordSys.type !== 'cartesian2d') { + if ("development" !== 'production') { + console.warn('Visual map on line style is only supported on cartesian2d.'); + } + return; + } + var coordDim; + var visualMeta; + for (var i = visualMetaList.length - 1; i >= 0; i--) { + var dimInfo = data.getDimensionInfo(visualMetaList[i].dimension); + coordDim = dimInfo && dimInfo.coordDim; + // Can only be x or y + if (coordDim === 'x' || coordDim === 'y') { + visualMeta = visualMetaList[i]; + break; + } + } + if (!visualMeta) { + if ("development" !== 'production') { + console.warn('Visual map on line style only support x or y dimension.'); + } + return; + } + // If the area to be rendered is bigger than area defined by LinearGradient, + // the canvas spec prescribes that the color of the first stop and the last + // stop should be used. But if two stops are added at offset 0, in effect + // browsers use the color of the second stop to render area outside + // LinearGradient. So we can only infinitesimally extend area defined in + // LinearGradient to render `outerColors`. + var axis = coordSys.getAxis(coordDim); + // dataToCoord mapping may not be linear, but must be monotonic. + var colorStops = map(visualMeta.stops, function (stop) { + // offset will be calculated later. + return { + coord: axis.toGlobalCoord(axis.dataToCoord(stop.value)), + color: stop.color + }; + }); + var stopLen = colorStops.length; + var outerColors = visualMeta.outerColors.slice(); + if (stopLen && colorStops[0].coord > colorStops[stopLen - 1].coord) { + colorStops.reverse(); + outerColors.reverse(); + } + var colorStopsInRange = clipColorStops(colorStops, coordDim === 'x' ? api.getWidth() : api.getHeight()); + var inRangeStopLen = colorStopsInRange.length; + if (!inRangeStopLen && stopLen) { + // All stops are out of range. All will be the same color. + return colorStops[0].coord < 0 ? outerColors[1] ? outerColors[1] : colorStops[stopLen - 1].color : outerColors[0] ? outerColors[0] : colorStops[0].color; + } + var tinyExtent = 10; // Arbitrary value: 10px + var minCoord = colorStopsInRange[0].coord - tinyExtent; + var maxCoord = colorStopsInRange[inRangeStopLen - 1].coord + tinyExtent; + var coordSpan = maxCoord - minCoord; + if (coordSpan < 1e-3) { + return 'transparent'; + } + each(colorStopsInRange, function (stop) { + stop.offset = (stop.coord - minCoord) / coordSpan; + }); + colorStopsInRange.push({ + // NOTE: inRangeStopLen may still be 0 if stoplen is zero. + offset: inRangeStopLen ? colorStopsInRange[inRangeStopLen - 1].offset : 0.5, + color: outerColors[1] || 'transparent' + }); + colorStopsInRange.unshift({ + offset: inRangeStopLen ? colorStopsInRange[0].offset : 0.5, + color: outerColors[0] || 'transparent' + }); + var gradient = new LinearGradient(0, 0, 0, 0, colorStopsInRange, true); + gradient[coordDim] = minCoord; + gradient[coordDim + '2'] = maxCoord; + return gradient; + } + function getIsIgnoreFunc(seriesModel, data, coordSys) { + var showAllSymbol = seriesModel.get('showAllSymbol'); + var isAuto = showAllSymbol === 'auto'; + if (showAllSymbol && !isAuto) { + return; + } + var categoryAxis = coordSys.getAxesByScale('ordinal')[0]; + if (!categoryAxis) { + return; + } + // Note that category label interval strategy might bring some weird effect + // in some scenario: users may wonder why some of the symbols are not + // displayed. So we show all symbols as possible as we can. + if (isAuto + // Simplify the logic, do not determine label overlap here. + && canShowAllSymbolForCategory(categoryAxis, data)) { + return; + } + // Otherwise follow the label interval strategy on category axis. + var categoryDataDim = data.mapDimension(categoryAxis.dim); + var labelMap = {}; + each(categoryAxis.getViewLabels(), function (labelItem) { + var ordinalNumber = categoryAxis.scale.getRawOrdinalNumber(labelItem.tickValue); + labelMap[ordinalNumber] = 1; + }); + return function (dataIndex) { + return !labelMap.hasOwnProperty(data.get(categoryDataDim, dataIndex)); + }; + } + function canShowAllSymbolForCategory(categoryAxis, data) { + // In most cases, line is monotonous on category axis, and the label size + // is close with each other. So we check the symbol size and some of the + // label size alone with the category axis to estimate whether all symbol + // can be shown without overlap. + var axisExtent = categoryAxis.getExtent(); + var availSize = Math.abs(axisExtent[1] - axisExtent[0]) / categoryAxis.scale.count(); + isNaN(availSize) && (availSize = 0); // 0/0 is NaN. + // Sampling some points, max 5. + var dataLen = data.count(); + var step = Math.max(1, Math.round(dataLen / 5)); + for (var dataIndex = 0; dataIndex < dataLen; dataIndex += step) { + if (Symbol.getSymbolSize(data, dataIndex + // Only for cartesian, where `isHorizontal` exists. + )[categoryAxis.isHorizontal() ? 1 : 0] + // Empirical number + * 1.5 > availSize) { + return false; + } + } + return true; + } + function isPointNull$1(x, y) { + return isNaN(x) || isNaN(y); + } + function getLastIndexNotNull(points) { + var len = points.length / 2; + for (; len > 0; len--) { + if (!isPointNull$1(points[len * 2 - 2], points[len * 2 - 1])) { + break; + } + } + return len - 1; + } + function getPointAtIndex(points, idx) { + return [points[idx * 2], points[idx * 2 + 1]]; + } + function getIndexRange(points, xOrY, dim) { + var len = points.length / 2; + var dimIdx = dim === 'x' ? 0 : 1; + var a; + var b; + var prevIndex = 0; + var nextIndex = -1; + for (var i = 0; i < len; i++) { + b = points[i * 2 + dimIdx]; + if (isNaN(b) || isNaN(points[i * 2 + 1 - dimIdx])) { + continue; + } + if (i === 0) { + a = b; + continue; + } + if (a <= xOrY && b >= xOrY || a >= xOrY && b <= xOrY) { + nextIndex = i; + break; + } + prevIndex = i; + a = b; + } + return { + range: [prevIndex, nextIndex], + t: (xOrY - a) / (b - a) + }; + } + function anyStateShowEndLabel(seriesModel) { + if (seriesModel.get(['endLabel', 'show'])) { + return true; + } + for (var i = 0; i < SPECIAL_STATES.length; i++) { + if (seriesModel.get([SPECIAL_STATES[i], 'endLabel', 'show'])) { + return true; + } + } + return false; + } + function createLineClipPath(lineView, coordSys, hasAnimation, seriesModel) { + if (isCoordinateSystemType(coordSys, 'cartesian2d')) { + var endLabelModel_1 = seriesModel.getModel('endLabel'); + var valueAnimation_1 = endLabelModel_1.get('valueAnimation'); + var data_1 = seriesModel.getData(); + var labelAnimationRecord_1 = { + lastFrameIndex: 0 + }; + var during = anyStateShowEndLabel(seriesModel) ? function (percent, clipRect) { + lineView._endLabelOnDuring(percent, clipRect, data_1, labelAnimationRecord_1, valueAnimation_1, endLabelModel_1, coordSys); + } : null; + var isHorizontal = coordSys.getBaseAxis().isHorizontal(); + var clipPath = createGridClipPath(coordSys, hasAnimation, seriesModel, function () { + var endLabel = lineView._endLabel; + if (endLabel && hasAnimation) { + if (labelAnimationRecord_1.originalX != null) { + endLabel.attr({ + x: labelAnimationRecord_1.originalX, + y: labelAnimationRecord_1.originalY + }); + } + } + }, during); + // Expand clip shape to avoid clipping when line value exceeds axis + if (!seriesModel.get('clip', true)) { + var rectShape = clipPath.shape; + var expandSize = Math.max(rectShape.width, rectShape.height); + if (isHorizontal) { + rectShape.y -= expandSize; + rectShape.height += expandSize * 2; + } else { + rectShape.x -= expandSize; + rectShape.width += expandSize * 2; + } + } + // Set to the final frame. To make sure label layout is right. + if (during) { + during(1, clipPath); + } + return clipPath; + } else { + if ("development" !== 'production') { + if (seriesModel.get(['endLabel', 'show'])) { + console.warn('endLabel is not supported for lines in polar systems.'); + } + } + return createPolarClipPath(coordSys, hasAnimation, seriesModel); + } + } + function getEndLabelStateSpecified(endLabelModel, coordSys) { + var baseAxis = coordSys.getBaseAxis(); + var isHorizontal = baseAxis.isHorizontal(); + var isBaseInversed = baseAxis.inverse; + var align = isHorizontal ? isBaseInversed ? 'right' : 'left' : 'center'; + var verticalAlign = isHorizontal ? 'middle' : isBaseInversed ? 'top' : 'bottom'; + return { + normal: { + align: endLabelModel.get('align') || align, + verticalAlign: endLabelModel.get('verticalAlign') || verticalAlign + } + }; + } + var LineView = /** @class */function (_super) { + __extends(LineView, _super); + function LineView() { + return _super !== null && _super.apply(this, arguments) || this; + } + LineView.prototype.init = function () { + var lineGroup = new Group(); + var symbolDraw = new SymbolDraw(); + this.group.add(symbolDraw.group); + this._symbolDraw = symbolDraw; + this._lineGroup = lineGroup; + }; + LineView.prototype.render = function (seriesModel, ecModel, api) { + var _this = this; + var coordSys = seriesModel.coordinateSystem; + var group = this.group; + var data = seriesModel.getData(); + var lineStyleModel = seriesModel.getModel('lineStyle'); + var areaStyleModel = seriesModel.getModel('areaStyle'); + var points = data.getLayout('points') || []; + var isCoordSysPolar = coordSys.type === 'polar'; + var prevCoordSys = this._coordSys; + var symbolDraw = this._symbolDraw; + var polyline = this._polyline; + var polygon = this._polygon; + var lineGroup = this._lineGroup; + var hasAnimation = !ecModel.ssr && seriesModel.get('animation'); + var isAreaChart = !areaStyleModel.isEmpty(); + var valueOrigin = areaStyleModel.get('origin'); + var dataCoordInfo = prepareDataCoordInfo(coordSys, data, valueOrigin); + var stackedOnPoints = isAreaChart && getStackedOnPoints(coordSys, data, dataCoordInfo); + var showSymbol = seriesModel.get('showSymbol'); + var connectNulls = seriesModel.get('connectNulls'); + var isIgnoreFunc = showSymbol && !isCoordSysPolar && getIsIgnoreFunc(seriesModel, data, coordSys); + // Remove temporary symbols + var oldData = this._data; + oldData && oldData.eachItemGraphicEl(function (el, idx) { + if (el.__temp) { + group.remove(el); + oldData.setItemGraphicEl(idx, null); + } + }); + // Remove previous created symbols if showSymbol changed to false + if (!showSymbol) { + symbolDraw.remove(); + } + group.add(lineGroup); + // FIXME step not support polar + var step = !isCoordSysPolar ? seriesModel.get('step') : false; + var clipShapeForSymbol; + if (coordSys && coordSys.getArea && seriesModel.get('clip', true)) { + clipShapeForSymbol = coordSys.getArea(); + // Avoid float number rounding error for symbol on the edge of axis extent. + // See #7913 and `test/dataZoom-clip.html`. + if (clipShapeForSymbol.width != null) { + clipShapeForSymbol.x -= 0.1; + clipShapeForSymbol.y -= 0.1; + clipShapeForSymbol.width += 0.2; + clipShapeForSymbol.height += 0.2; + } else if (clipShapeForSymbol.r0) { + clipShapeForSymbol.r0 -= 0.5; + clipShapeForSymbol.r += 0.5; + } + } + this._clipShapeForSymbol = clipShapeForSymbol; + var visualColor = getVisualGradient(data, coordSys, api) || data.getVisual('style')[data.getVisual('drawType')]; + // Initialization animation or coordinate system changed + if (!(polyline && prevCoordSys.type === coordSys.type && step === this._step)) { + showSymbol && symbolDraw.updateData(data, { + isIgnore: isIgnoreFunc, + clipShape: clipShapeForSymbol, + disableAnimation: true, + getSymbolPoint: function (idx) { + return [points[idx * 2], points[idx * 2 + 1]]; + } + }); + hasAnimation && this._initSymbolLabelAnimation(data, coordSys, clipShapeForSymbol); + if (step) { + // TODO If stacked series is not step + points = turnPointsIntoStep(points, coordSys, step, connectNulls); + if (stackedOnPoints) { + stackedOnPoints = turnPointsIntoStep(stackedOnPoints, coordSys, step, connectNulls); + } + } + polyline = this._newPolyline(points); + if (isAreaChart) { + polygon = this._newPolygon(points, stackedOnPoints); + } // If areaStyle is removed + else if (polygon) { + lineGroup.remove(polygon); + polygon = this._polygon = null; + } + // NOTE: Must update _endLabel before setClipPath. + if (!isCoordSysPolar) { + this._initOrUpdateEndLabel(seriesModel, coordSys, convertToColorString(visualColor)); + } + lineGroup.setClipPath(createLineClipPath(this, coordSys, true, seriesModel)); + } else { + if (isAreaChart && !polygon) { + // If areaStyle is added + polygon = this._newPolygon(points, stackedOnPoints); + } else if (polygon && !isAreaChart) { + // If areaStyle is removed + lineGroup.remove(polygon); + polygon = this._polygon = null; + } + // NOTE: Must update _endLabel before setClipPath. + if (!isCoordSysPolar) { + this._initOrUpdateEndLabel(seriesModel, coordSys, convertToColorString(visualColor)); + } + // Update clipPath + var oldClipPath = lineGroup.getClipPath(); + if (oldClipPath) { + var newClipPath = createLineClipPath(this, coordSys, false, seriesModel); + initProps(oldClipPath, { + shape: newClipPath.shape + }, seriesModel); + } else { + lineGroup.setClipPath(createLineClipPath(this, coordSys, true, seriesModel)); + } + // Always update, or it is wrong in the case turning on legend + // because points are not changed. + showSymbol && symbolDraw.updateData(data, { + isIgnore: isIgnoreFunc, + clipShape: clipShapeForSymbol, + disableAnimation: true, + getSymbolPoint: function (idx) { + return [points[idx * 2], points[idx * 2 + 1]]; + } + }); + // In the case data zoom triggered refreshing frequently + // Data may not change if line has a category axis. So it should animate nothing. + if (!isPointsSame(this._stackedOnPoints, stackedOnPoints) || !isPointsSame(this._points, points)) { + if (hasAnimation) { + this._doUpdateAnimation(data, stackedOnPoints, coordSys, api, step, valueOrigin, connectNulls); + } else { + // Not do it in update with animation + if (step) { + // TODO If stacked series is not step + points = turnPointsIntoStep(points, coordSys, step, connectNulls); + if (stackedOnPoints) { + stackedOnPoints = turnPointsIntoStep(stackedOnPoints, coordSys, step, connectNulls); + } + } + polyline.setShape({ + points: points + }); + polygon && polygon.setShape({ + points: points, + stackedOnPoints: stackedOnPoints + }); + } + } + } + var emphasisModel = seriesModel.getModel('emphasis'); + var focus = emphasisModel.get('focus'); + var blurScope = emphasisModel.get('blurScope'); + var emphasisDisabled = emphasisModel.get('disabled'); + polyline.useStyle(defaults( + // Use color in lineStyle first + lineStyleModel.getLineStyle(), { + fill: 'none', + stroke: visualColor, + lineJoin: 'bevel' + })); + setStatesStylesFromModel(polyline, seriesModel, 'lineStyle'); + if (polyline.style.lineWidth > 0 && seriesModel.get(['emphasis', 'lineStyle', 'width']) === 'bolder') { + var emphasisLineStyle = polyline.getState('emphasis').style; + emphasisLineStyle.lineWidth = +polyline.style.lineWidth + 1; + } + // Needs seriesIndex for focus + getECData(polyline).seriesIndex = seriesModel.seriesIndex; + toggleHoverEmphasis(polyline, focus, blurScope, emphasisDisabled); + var smooth = getSmooth(seriesModel.get('smooth')); + var smoothMonotone = seriesModel.get('smoothMonotone'); + polyline.setShape({ + smooth: smooth, + smoothMonotone: smoothMonotone, + connectNulls: connectNulls + }); + if (polygon) { + var stackedOnSeries = data.getCalculationInfo('stackedOnSeries'); + var stackedOnSmooth = 0; + polygon.useStyle(defaults(areaStyleModel.getAreaStyle(), { + fill: visualColor, + opacity: 0.7, + lineJoin: 'bevel', + decal: data.getVisual('style').decal + })); + if (stackedOnSeries) { + stackedOnSmooth = getSmooth(stackedOnSeries.get('smooth')); + } + polygon.setShape({ + smooth: smooth, + stackedOnSmooth: stackedOnSmooth, + smoothMonotone: smoothMonotone, + connectNulls: connectNulls + }); + setStatesStylesFromModel(polygon, seriesModel, 'areaStyle'); + // Needs seriesIndex for focus + getECData(polygon).seriesIndex = seriesModel.seriesIndex; + toggleHoverEmphasis(polygon, focus, blurScope, emphasisDisabled); + } + var changePolyState = function (toState) { + _this._changePolyState(toState); + }; + data.eachItemGraphicEl(function (el) { + // Switch polyline / polygon state if element changed its state. + el && (el.onHoverStateChange = changePolyState); + }); + this._polyline.onHoverStateChange = changePolyState; + this._data = data; + // Save the coordinate system for transition animation when data changed + this._coordSys = coordSys; + this._stackedOnPoints = stackedOnPoints; + this._points = points; + this._step = step; + this._valueOrigin = valueOrigin; + if (seriesModel.get('triggerLineEvent')) { + this.packEventData(seriesModel, polyline); + polygon && this.packEventData(seriesModel, polygon); + } + }; + LineView.prototype.packEventData = function (seriesModel, el) { + getECData(el).eventData = { + componentType: 'series', + componentSubType: 'line', + componentIndex: seriesModel.componentIndex, + seriesIndex: seriesModel.seriesIndex, + seriesName: seriesModel.name, + seriesType: 'line' + }; + }; + LineView.prototype.highlight = function (seriesModel, ecModel, api, payload) { + var data = seriesModel.getData(); + var dataIndex = queryDataIndex(data, payload); + this._changePolyState('emphasis'); + if (!(dataIndex instanceof Array) && dataIndex != null && dataIndex >= 0) { + var points = data.getLayout('points'); + var symbol = data.getItemGraphicEl(dataIndex); + if (!symbol) { + // Create a temporary symbol if it is not exists + var x = points[dataIndex * 2]; + var y = points[dataIndex * 2 + 1]; + if (isNaN(x) || isNaN(y)) { + // Null data + return; + } + // fix #11360: shouldn't draw symbol outside clipShapeForSymbol + if (this._clipShapeForSymbol && !this._clipShapeForSymbol.contain(x, y)) { + return; + } + var zlevel = seriesModel.get('zlevel') || 0; + var z = seriesModel.get('z') || 0; + symbol = new Symbol(data, dataIndex); + symbol.x = x; + symbol.y = y; + symbol.setZ(zlevel, z); + // ensure label text of the temporary symbol is in front of line and area polygon + var symbolLabel = symbol.getSymbolPath().getTextContent(); + if (symbolLabel) { + symbolLabel.zlevel = zlevel; + symbolLabel.z = z; + symbolLabel.z2 = this._polyline.z2 + 1; + } + symbol.__temp = true; + data.setItemGraphicEl(dataIndex, symbol); + // Stop scale animation + symbol.stopSymbolAnimation(true); + this.group.add(symbol); + } + symbol.highlight(); + } else { + // Highlight whole series + ChartView.prototype.highlight.call(this, seriesModel, ecModel, api, payload); + } + }; + LineView.prototype.downplay = function (seriesModel, ecModel, api, payload) { + var data = seriesModel.getData(); + var dataIndex = queryDataIndex(data, payload); + this._changePolyState('normal'); + if (dataIndex != null && dataIndex >= 0) { + var symbol = data.getItemGraphicEl(dataIndex); + if (symbol) { + if (symbol.__temp) { + data.setItemGraphicEl(dataIndex, null); + this.group.remove(symbol); + } else { + symbol.downplay(); + } + } + } else { + // FIXME + // can not downplay completely. + // Downplay whole series + ChartView.prototype.downplay.call(this, seriesModel, ecModel, api, payload); + } + }; + LineView.prototype._changePolyState = function (toState) { + var polygon = this._polygon; + setStatesFlag(this._polyline, toState); + polygon && setStatesFlag(polygon, toState); + }; + LineView.prototype._newPolyline = function (points) { + var polyline = this._polyline; + // Remove previous created polyline + if (polyline) { + this._lineGroup.remove(polyline); + } + polyline = new ECPolyline({ + shape: { + points: points + }, + segmentIgnoreThreshold: 2, + z2: 10 + }); + this._lineGroup.add(polyline); + this._polyline = polyline; + return polyline; + }; + LineView.prototype._newPolygon = function (points, stackedOnPoints) { + var polygon = this._polygon; + // Remove previous created polygon + if (polygon) { + this._lineGroup.remove(polygon); + } + polygon = new ECPolygon({ + shape: { + points: points, + stackedOnPoints: stackedOnPoints + }, + segmentIgnoreThreshold: 2 + }); + this._lineGroup.add(polygon); + this._polygon = polygon; + return polygon; + }; + LineView.prototype._initSymbolLabelAnimation = function (data, coordSys, clipShape) { + var isHorizontalOrRadial; + var isCoordSysPolar; + var baseAxis = coordSys.getBaseAxis(); + var isAxisInverse = baseAxis.inverse; + if (coordSys.type === 'cartesian2d') { + isHorizontalOrRadial = baseAxis.isHorizontal(); + isCoordSysPolar = false; + } else if (coordSys.type === 'polar') { + isHorizontalOrRadial = baseAxis.dim === 'angle'; + isCoordSysPolar = true; + } + var seriesModel = data.hostModel; + var seriesDuration = seriesModel.get('animationDuration'); + if (isFunction(seriesDuration)) { + seriesDuration = seriesDuration(null); + } + var seriesDelay = seriesModel.get('animationDelay') || 0; + var seriesDelayValue = isFunction(seriesDelay) ? seriesDelay(null) : seriesDelay; + data.eachItemGraphicEl(function (symbol, idx) { + var el = symbol; + if (el) { + var point = [symbol.x, symbol.y]; + var start = void 0; + var end = void 0; + var current = void 0; + if (clipShape) { + if (isCoordSysPolar) { + var polarClip = clipShape; + var coord = coordSys.pointToCoord(point); + if (isHorizontalOrRadial) { + start = polarClip.startAngle; + end = polarClip.endAngle; + current = -coord[1] / 180 * Math.PI; + } else { + start = polarClip.r0; + end = polarClip.r; + current = coord[0]; + } + } else { + var gridClip = clipShape; + if (isHorizontalOrRadial) { + start = gridClip.x; + end = gridClip.x + gridClip.width; + current = symbol.x; + } else { + start = gridClip.y + gridClip.height; + end = gridClip.y; + current = symbol.y; + } + } + } + var ratio = end === start ? 0 : (current - start) / (end - start); + if (isAxisInverse) { + ratio = 1 - ratio; + } + var delay = isFunction(seriesDelay) ? seriesDelay(idx) : seriesDuration * ratio + seriesDelayValue; + var symbolPath = el.getSymbolPath(); + var text = symbolPath.getTextContent(); + el.attr({ + scaleX: 0, + scaleY: 0 + }); + el.animateTo({ + scaleX: 1, + scaleY: 1 + }, { + duration: 200, + setToFinal: true, + delay: delay + }); + if (text) { + text.animateFrom({ + style: { + opacity: 0 + } + }, { + duration: 300, + delay: delay + }); + } + symbolPath.disableLabelAnimation = true; + } + }); + }; + LineView.prototype._initOrUpdateEndLabel = function (seriesModel, coordSys, inheritColor) { + var endLabelModel = seriesModel.getModel('endLabel'); + if (anyStateShowEndLabel(seriesModel)) { + var data_2 = seriesModel.getData(); + var polyline = this._polyline; + // series may be filtered. + var points = data_2.getLayout('points'); + if (!points) { + polyline.removeTextContent(); + this._endLabel = null; + return; + } + var endLabel = this._endLabel; + if (!endLabel) { + endLabel = this._endLabel = new ZRText({ + z2: 200 // should be higher than item symbol + }); + + endLabel.ignoreClip = true; + polyline.setTextContent(this._endLabel); + polyline.disableLabelAnimation = true; + } + // Find last non-NaN data to display data + var dataIndex = getLastIndexNotNull(points); + if (dataIndex >= 0) { + setLabelStyle(polyline, getLabelStatesModels(seriesModel, 'endLabel'), { + inheritColor: inheritColor, + labelFetcher: seriesModel, + labelDataIndex: dataIndex, + defaultText: function (dataIndex, opt, interpolatedValue) { + return interpolatedValue != null ? getDefaultInterpolatedLabel(data_2, interpolatedValue) : getDefaultLabel(data_2, dataIndex); + }, + enableTextSetter: true + }, getEndLabelStateSpecified(endLabelModel, coordSys)); + polyline.textConfig.position = null; + } + } else if (this._endLabel) { + this._polyline.removeTextContent(); + this._endLabel = null; + } + }; + LineView.prototype._endLabelOnDuring = function (percent, clipRect, data, animationRecord, valueAnimation, endLabelModel, coordSys) { + var endLabel = this._endLabel; + var polyline = this._polyline; + if (endLabel) { + // NOTE: Don't remove percent < 1. percent === 1 means the first frame during render. + // The label is not prepared at this time. + if (percent < 1 && animationRecord.originalX == null) { + animationRecord.originalX = endLabel.x; + animationRecord.originalY = endLabel.y; + } + var points = data.getLayout('points'); + var seriesModel = data.hostModel; + var connectNulls = seriesModel.get('connectNulls'); + var precision = endLabelModel.get('precision'); + var distance = endLabelModel.get('distance') || 0; + var baseAxis = coordSys.getBaseAxis(); + var isHorizontal = baseAxis.isHorizontal(); + var isBaseInversed = baseAxis.inverse; + var clipShape = clipRect.shape; + var xOrY = isBaseInversed ? isHorizontal ? clipShape.x : clipShape.y + clipShape.height : isHorizontal ? clipShape.x + clipShape.width : clipShape.y; + var distanceX = (isHorizontal ? distance : 0) * (isBaseInversed ? -1 : 1); + var distanceY = (isHorizontal ? 0 : -distance) * (isBaseInversed ? -1 : 1); + var dim = isHorizontal ? 'x' : 'y'; + var dataIndexRange = getIndexRange(points, xOrY, dim); + var indices = dataIndexRange.range; + var diff = indices[1] - indices[0]; + var value = void 0; + if (diff >= 1) { + // diff > 1 && connectNulls, which is on the null data. + if (diff > 1 && !connectNulls) { + var pt = getPointAtIndex(points, indices[0]); + endLabel.attr({ + x: pt[0] + distanceX, + y: pt[1] + distanceY + }); + valueAnimation && (value = seriesModel.getRawValue(indices[0])); + } else { + var pt = polyline.getPointOn(xOrY, dim); + pt && endLabel.attr({ + x: pt[0] + distanceX, + y: pt[1] + distanceY + }); + var startValue = seriesModel.getRawValue(indices[0]); + var endValue = seriesModel.getRawValue(indices[1]); + valueAnimation && (value = interpolateRawValues(data, precision, startValue, endValue, dataIndexRange.t)); + } + animationRecord.lastFrameIndex = indices[0]; + } else { + // If diff <= 0, which is the range is not found(Include NaN) + // Choose the first point or last point. + var idx = percent === 1 || animationRecord.lastFrameIndex > 0 ? indices[0] : 0; + var pt = getPointAtIndex(points, idx); + valueAnimation && (value = seriesModel.getRawValue(idx)); + endLabel.attr({ + x: pt[0] + distanceX, + y: pt[1] + distanceY + }); + } + if (valueAnimation) { + var inner = labelInner(endLabel); + if (typeof inner.setLabelText === 'function') { + inner.setLabelText(value); + } + } + } + }; + /** + * @private + */ + // FIXME Two value axis + LineView.prototype._doUpdateAnimation = function (data, stackedOnPoints, coordSys, api, step, valueOrigin, connectNulls) { + var polyline = this._polyline; + var polygon = this._polygon; + var seriesModel = data.hostModel; + var diff = lineAnimationDiff(this._data, data, this._stackedOnPoints, stackedOnPoints, this._coordSys, coordSys, this._valueOrigin); + var current = diff.current; + var stackedOnCurrent = diff.stackedOnCurrent; + var next = diff.next; + var stackedOnNext = diff.stackedOnNext; + if (step) { + // TODO If stacked series is not step + current = turnPointsIntoStep(diff.current, coordSys, step, connectNulls); + stackedOnCurrent = turnPointsIntoStep(diff.stackedOnCurrent, coordSys, step, connectNulls); + next = turnPointsIntoStep(diff.next, coordSys, step, connectNulls); + stackedOnNext = turnPointsIntoStep(diff.stackedOnNext, coordSys, step, connectNulls); + } + // Don't apply animation if diff is large. + // For better result and avoid memory explosion problems like + // https://github.com/apache/incubator-echarts/issues/12229 + if (getBoundingDiff(current, next) > 3000 || polygon && getBoundingDiff(stackedOnCurrent, stackedOnNext) > 3000) { + polyline.stopAnimation(); + polyline.setShape({ + points: next + }); + if (polygon) { + polygon.stopAnimation(); + polygon.setShape({ + points: next, + stackedOnPoints: stackedOnNext + }); + } + return; + } + polyline.shape.__points = diff.current; + polyline.shape.points = current; + var target = { + shape: { + points: next + } + }; + // Also animate the original points. + // If points reference is changed when turning into step line. + if (diff.current !== current) { + target.shape.__points = diff.next; + } + // Stop previous animation. + polyline.stopAnimation(); + updateProps(polyline, target, seriesModel); + if (polygon) { + polygon.setShape({ + // Reuse the points with polyline. + points: current, + stackedOnPoints: stackedOnCurrent + }); + polygon.stopAnimation(); + updateProps(polygon, { + shape: { + stackedOnPoints: stackedOnNext + } + }, seriesModel); + // If use attr directly in updateProps. + if (polyline.shape.points !== polygon.shape.points) { + polygon.shape.points = polyline.shape.points; + } + } + var updatedDataInfo = []; + var diffStatus = diff.status; + for (var i = 0; i < diffStatus.length; i++) { + var cmd = diffStatus[i].cmd; + if (cmd === '=') { + var el = data.getItemGraphicEl(diffStatus[i].idx1); + if (el) { + updatedDataInfo.push({ + el: el, + ptIdx: i // Index of points + }); + } + } + } + + if (polyline.animators && polyline.animators.length) { + polyline.animators[0].during(function () { + polygon && polygon.dirtyShape(); + var points = polyline.shape.__points; + for (var i = 0; i < updatedDataInfo.length; i++) { + var el = updatedDataInfo[i].el; + var offset = updatedDataInfo[i].ptIdx * 2; + el.x = points[offset]; + el.y = points[offset + 1]; + el.markRedraw(); + } + }); + } + }; + LineView.prototype.remove = function (ecModel) { + var group = this.group; + var oldData = this._data; + this._lineGroup.removeAll(); + this._symbolDraw.remove(true); + // Remove temporary created elements when highlighting + oldData && oldData.eachItemGraphicEl(function (el, idx) { + if (el.__temp) { + group.remove(el); + oldData.setItemGraphicEl(idx, null); + } + }); + this._polyline = this._polygon = this._coordSys = this._points = this._stackedOnPoints = this._endLabel = this._data = null; + }; + LineView.type = 'line'; + return LineView; + }(ChartView); + + function pointsLayout(seriesType, forceStoreInTypedArray) { + return { + seriesType: seriesType, + plan: createRenderPlanner(), + reset: function (seriesModel) { + var data = seriesModel.getData(); + var coordSys = seriesModel.coordinateSystem; + var pipelineContext = seriesModel.pipelineContext; + var useTypedArray = forceStoreInTypedArray || pipelineContext.large; + if (!coordSys) { + return; + } + var dims = map(coordSys.dimensions, function (dim) { + return data.mapDimension(dim); + }).slice(0, 2); + var dimLen = dims.length; + var stackResultDim = data.getCalculationInfo('stackResultDimension'); + if (isDimensionStacked(data, dims[0])) { + dims[0] = stackResultDim; + } + if (isDimensionStacked(data, dims[1])) { + dims[1] = stackResultDim; + } + var store = data.getStore(); + var dimIdx0 = data.getDimensionIndex(dims[0]); + var dimIdx1 = data.getDimensionIndex(dims[1]); + return dimLen && { + progress: function (params, data) { + var segCount = params.end - params.start; + var points = useTypedArray && createFloat32Array(segCount * dimLen); + var tmpIn = []; + var tmpOut = []; + for (var i = params.start, offset = 0; i < params.end; i++) { + var point = void 0; + if (dimLen === 1) { + var x = store.get(dimIdx0, i); + // NOTE: Make sure the second parameter is null to use default strategy. + point = coordSys.dataToPoint(x, null, tmpOut); + } else { + tmpIn[0] = store.get(dimIdx0, i); + tmpIn[1] = store.get(dimIdx1, i); + // Let coordinate system to handle the NaN data. + point = coordSys.dataToPoint(tmpIn, null, tmpOut); + } + if (useTypedArray) { + points[offset++] = point[0]; + points[offset++] = point[1]; + } else { + data.setItemLayout(i, point.slice()); + } + } + useTypedArray && data.setLayout('points', points); + } + }; + } + }; + } + + var samplers = { + average: function (frame) { + var sum = 0; + var count = 0; + for (var i = 0; i < frame.length; i++) { + if (!isNaN(frame[i])) { + sum += frame[i]; + count++; + } + } + // Return NaN if count is 0 + return count === 0 ? NaN : sum / count; + }, + sum: function (frame) { + var sum = 0; + for (var i = 0; i < frame.length; i++) { + // Ignore NaN + sum += frame[i] || 0; + } + return sum; + }, + max: function (frame) { + var max = -Infinity; + for (var i = 0; i < frame.length; i++) { + frame[i] > max && (max = frame[i]); + } + // NaN will cause illegal axis extent. + return isFinite(max) ? max : NaN; + }, + min: function (frame) { + var min = Infinity; + for (var i = 0; i < frame.length; i++) { + frame[i] < min && (min = frame[i]); + } + // NaN will cause illegal axis extent. + return isFinite(min) ? min : NaN; + }, + minmax: function (frame) { + var turningPointAbsoluteValue = -Infinity; + var turningPointOriginalValue = -Infinity; + for (var i = 0; i < frame.length; i++) { + var originalValue = frame[i]; + var absoluteValue = Math.abs(originalValue); + if (absoluteValue > turningPointAbsoluteValue) { + turningPointAbsoluteValue = absoluteValue; + turningPointOriginalValue = originalValue; + } + } + return isFinite(turningPointOriginalValue) ? turningPointOriginalValue : NaN; + }, + // TODO + // Median + nearest: function (frame) { + return frame[0]; + } + }; + var indexSampler = function (frame) { + return Math.round(frame.length / 2); + }; + function dataSample(seriesType) { + return { + seriesType: seriesType, + // FIXME:TS never used, so comment it + // modifyOutputEnd: true, + reset: function (seriesModel, ecModel, api) { + var data = seriesModel.getData(); + var sampling = seriesModel.get('sampling'); + var coordSys = seriesModel.coordinateSystem; + var count = data.count(); + // Only cartesian2d support down sampling. Disable it when there is few data. + if (count > 10 && coordSys.type === 'cartesian2d' && sampling) { + var baseAxis = coordSys.getBaseAxis(); + var valueAxis = coordSys.getOtherAxis(baseAxis); + var extent = baseAxis.getExtent(); + var dpr = api.getDevicePixelRatio(); + // Coordinste system has been resized + var size = Math.abs(extent[1] - extent[0]) * (dpr || 1); + var rate = Math.round(count / size); + if (isFinite(rate) && rate > 1) { + if (sampling === 'lttb') { + seriesModel.setData(data.lttbDownSample(data.mapDimension(valueAxis.dim), 1 / rate)); + } + var sampler = void 0; + if (isString(sampling)) { + sampler = samplers[sampling]; + } else if (isFunction(sampling)) { + sampler = sampling; + } + if (sampler) { + // Only support sample the first dim mapped from value axis. + seriesModel.setData(data.downSample(data.mapDimension(valueAxis.dim), 1 / rate, sampler, indexSampler)); + } + } + } + } + }; + } + + function install$2(registers) { + registers.registerChartView(LineView); + registers.registerSeriesModel(LineSeriesModel); + registers.registerLayout(pointsLayout('line', true)); + registers.registerVisual({ + seriesType: 'line', + reset: function (seriesModel) { + var data = seriesModel.getData(); + // Visual coding for legend + var lineStyle = seriesModel.getModel('lineStyle').getLineStyle(); + if (lineStyle && !lineStyle.stroke) { + // Fill in visual should be palette color if + // has color callback + lineStyle.stroke = data.getVisual('style').fill; + } + data.setVisual('legendLineStyle', lineStyle); + } + }); + // Down sample after filter + registers.registerProcessor(registers.PRIORITY.PROCESSOR.STATISTIC, dataSample('line')); + } + + var BaseBarSeriesModel = /** @class */function (_super) { + __extends(BaseBarSeriesModel, _super); + function BaseBarSeriesModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = BaseBarSeriesModel.type; + return _this; + } + BaseBarSeriesModel.prototype.getInitialData = function (option, ecModel) { + return createSeriesData(null, this, { + useEncodeDefaulter: true + }); + }; + BaseBarSeriesModel.prototype.getMarkerPosition = function (value, dims, startingAtTick) { + var coordSys = this.coordinateSystem; + if (coordSys && coordSys.clampData) { + // PENDING if clamp ? + var clampData_1 = coordSys.clampData(value); + var pt_1 = coordSys.dataToPoint(clampData_1); + if (startingAtTick) { + each(coordSys.getAxes(), function (axis, idx) { + // If axis type is category, use tick coords instead + if (axis.type === 'category' && dims != null) { + var tickCoords = axis.getTicksCoords(); + var alignTicksWithLabel = axis.getTickModel().get('alignWithLabel'); + var targetTickId = clampData_1[idx]; + // The index of rightmost tick of markArea is 1 larger than x1/y1 index + var isEnd = dims[idx] === 'x1' || dims[idx] === 'y1'; + if (isEnd && !alignTicksWithLabel) { + targetTickId += 1; + } + // The only contains one tick, tickCoords is + // like [{coord: 0, tickValue: 0}, {coord: 0}] + // to the length should always be larger than 1 + if (tickCoords.length < 2) { + return; + } else if (tickCoords.length === 2) { + // The left value and right value of the axis are + // the same. coord is 0 in both items. Use the max + // value of the axis as the coord + pt_1[idx] = axis.toGlobalCoord(axis.getExtent()[isEnd ? 1 : 0]); + return; + } + var leftCoord = void 0; + var coord = void 0; + var stepTickValue = 1; + for (var i = 0; i < tickCoords.length; i++) { + var tickCoord = tickCoords[i].coord; + // The last item of tickCoords doesn't contain + // tickValue + var tickValue = i === tickCoords.length - 1 ? tickCoords[i - 1].tickValue + stepTickValue : tickCoords[i].tickValue; + if (tickValue === targetTickId) { + coord = tickCoord; + break; + } else if (tickValue < targetTickId) { + leftCoord = tickCoord; + } else if (leftCoord != null && tickValue > targetTickId) { + coord = (tickCoord + leftCoord) / 2; + break; + } + if (i === 1) { + // Here we assume the step of category axes is + // the same + stepTickValue = tickValue - tickCoords[0].tickValue; + } + } + if (coord == null) { + if (!leftCoord) { + // targetTickId is smaller than all tick ids in the + // visible area, use the leftmost tick coord + coord = tickCoords[0].coord; + } else if (leftCoord) { + // targetTickId is larger than all tick ids in the + // visible area, use the rightmost tick coord + coord = tickCoords[tickCoords.length - 1].coord; + } + } + pt_1[idx] = axis.toGlobalCoord(coord); + } + }); + } else { + var data = this.getData(); + var offset = data.getLayout('offset'); + var size = data.getLayout('size'); + var offsetIndex = coordSys.getBaseAxis().isHorizontal() ? 0 : 1; + pt_1[offsetIndex] += offset + size / 2; + } + return pt_1; + } + return [NaN, NaN]; + }; + BaseBarSeriesModel.type = 'series.__base_bar__'; + BaseBarSeriesModel.defaultOption = { + // zlevel: 0, + z: 2, + coordinateSystem: 'cartesian2d', + legendHoverLink: true, + // stack: null + // Cartesian coordinate system + // xAxisIndex: 0, + // yAxisIndex: 0, + barMinHeight: 0, + barMinAngle: 0, + // cursor: null, + large: false, + largeThreshold: 400, + progressive: 3e3, + progressiveChunkMode: 'mod' + }; + return BaseBarSeriesModel; + }(SeriesModel); + SeriesModel.registerClass(BaseBarSeriesModel); + + var BarSeriesModel = /** @class */function (_super) { + __extends(BarSeriesModel, _super); + function BarSeriesModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = BarSeriesModel.type; + return _this; + } + BarSeriesModel.prototype.getInitialData = function () { + return createSeriesData(null, this, { + useEncodeDefaulter: true, + createInvertedIndices: !!this.get('realtimeSort', true) || null + }); + }; + /** + * @override + */ + BarSeriesModel.prototype.getProgressive = function () { + // Do not support progressive in normal mode. + return this.get('large') ? this.get('progressive') : false; + }; + /** + * @override + */ + BarSeriesModel.prototype.getProgressiveThreshold = function () { + // Do not support progressive in normal mode. + var progressiveThreshold = this.get('progressiveThreshold'); + var largeThreshold = this.get('largeThreshold'); + if (largeThreshold > progressiveThreshold) { + progressiveThreshold = largeThreshold; + } + return progressiveThreshold; + }; + BarSeriesModel.prototype.brushSelector = function (dataIndex, data, selectors) { + return selectors.rect(data.getItemLayout(dataIndex)); + }; + BarSeriesModel.type = 'series.bar'; + BarSeriesModel.dependencies = ['grid', 'polar']; + BarSeriesModel.defaultOption = inheritDefaultOption(BaseBarSeriesModel.defaultOption, { + // If clipped + // Only available on cartesian2d + clip: true, + roundCap: false, + showBackground: false, + 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: false + }); + return BarSeriesModel; + }(BaseBarSeriesModel); + + /** + * Sausage: similar to sector, but have half circle on both sides + */ + var SausageShape = /** @class */function () { + function SausageShape() { + this.cx = 0; + this.cy = 0; + this.r0 = 0; + this.r = 0; + this.startAngle = 0; + this.endAngle = Math.PI * 2; + this.clockwise = true; + } + return SausageShape; + }(); + var SausagePath = /** @class */function (_super) { + __extends(SausagePath, _super); + function SausagePath(opts) { + var _this = _super.call(this, opts) || this; + _this.type = 'sausage'; + return _this; + } + SausagePath.prototype.getDefaultShape = function () { + return new SausageShape(); + }; + SausagePath.prototype.buildPath = function (ctx, shape) { + var cx = shape.cx; + var cy = shape.cy; + var r0 = Math.max(shape.r0 || 0, 0); + var r = Math.max(shape.r, 0); + var dr = (r - r0) * 0.5; + var rCenter = r0 + dr; + var startAngle = shape.startAngle; + var endAngle = shape.endAngle; + var clockwise = shape.clockwise; + var PI2 = Math.PI * 2; + var lessThanCircle = clockwise ? endAngle - startAngle < PI2 : startAngle - endAngle < PI2; + if (!lessThanCircle) { + // Normalize angles + startAngle = endAngle - (clockwise ? PI2 : -PI2); + } + var unitStartX = Math.cos(startAngle); + var unitStartY = Math.sin(startAngle); + var unitEndX = Math.cos(endAngle); + var unitEndY = Math.sin(endAngle); + if (lessThanCircle) { + ctx.moveTo(unitStartX * r0 + cx, unitStartY * r0 + cy); + ctx.arc(unitStartX * rCenter + cx, unitStartY * rCenter + cy, dr, -Math.PI + startAngle, startAngle, !clockwise); + } else { + ctx.moveTo(unitStartX * r + cx, unitStartY * r + cy); + } + ctx.arc(cx, cy, r, startAngle, endAngle, !clockwise); + ctx.arc(unitEndX * rCenter + cx, unitEndY * rCenter + cy, dr, endAngle - Math.PI * 2, endAngle - Math.PI, !clockwise); + if (r0 !== 0) { + ctx.arc(cx, cy, r0, endAngle, startAngle, clockwise); + } + // ctx.closePath(); + }; + + return SausagePath; + }(Path); + + function createSectorCalculateTextPosition(positionMapping, opts) { + opts = opts || {}; + var isRoundCap = opts.isRoundCap; + return function (out, opts, boundingRect) { + var textPosition = opts.position; + if (!textPosition || textPosition instanceof Array) { + return calculateTextPosition(out, opts, boundingRect); + } + var mappedSectorPosition = positionMapping(textPosition); + var distance = opts.distance != null ? opts.distance : 5; + var sector = this.shape; + var cx = sector.cx; + var cy = sector.cy; + var r = sector.r; + var r0 = sector.r0; + var middleR = (r + r0) / 2; + var startAngle = sector.startAngle; + var endAngle = sector.endAngle; + var middleAngle = (startAngle + endAngle) / 2; + var extraDist = isRoundCap ? Math.abs(r - r0) / 2 : 0; + var mathCos = Math.cos; + var mathSin = Math.sin; + // base position: top-left + var x = cx + r * mathCos(startAngle); + var y = cy + r * mathSin(startAngle); + var textAlign = 'left'; + var textVerticalAlign = 'top'; + switch (mappedSectorPosition) { + case 'startArc': + x = cx + (r0 - distance) * mathCos(middleAngle); + y = cy + (r0 - distance) * mathSin(middleAngle); + textAlign = 'center'; + textVerticalAlign = 'top'; + break; + case 'insideStartArc': + x = cx + (r0 + distance) * mathCos(middleAngle); + y = cy + (r0 + distance) * mathSin(middleAngle); + textAlign = 'center'; + textVerticalAlign = 'bottom'; + break; + case 'startAngle': + x = cx + middleR * mathCos(startAngle) + adjustAngleDistanceX(startAngle, distance + extraDist, false); + y = cy + middleR * mathSin(startAngle) + adjustAngleDistanceY(startAngle, distance + extraDist, false); + textAlign = 'right'; + textVerticalAlign = 'middle'; + break; + case 'insideStartAngle': + x = cx + middleR * mathCos(startAngle) + adjustAngleDistanceX(startAngle, -distance + extraDist, false); + y = cy + middleR * mathSin(startAngle) + adjustAngleDistanceY(startAngle, -distance + extraDist, false); + textAlign = 'left'; + textVerticalAlign = 'middle'; + break; + case 'middle': + x = cx + middleR * mathCos(middleAngle); + y = cy + middleR * mathSin(middleAngle); + textAlign = 'center'; + textVerticalAlign = 'middle'; + break; + case 'endArc': + x = cx + (r + distance) * mathCos(middleAngle); + y = cy + (r + distance) * mathSin(middleAngle); + textAlign = 'center'; + textVerticalAlign = 'bottom'; + break; + case 'insideEndArc': + x = cx + (r - distance) * mathCos(middleAngle); + y = cy + (r - distance) * mathSin(middleAngle); + textAlign = 'center'; + textVerticalAlign = 'top'; + break; + case 'endAngle': + x = cx + middleR * mathCos(endAngle) + adjustAngleDistanceX(endAngle, distance + extraDist, true); + y = cy + middleR * mathSin(endAngle) + adjustAngleDistanceY(endAngle, distance + extraDist, true); + textAlign = 'left'; + textVerticalAlign = 'middle'; + break; + case 'insideEndAngle': + x = cx + middleR * mathCos(endAngle) + adjustAngleDistanceX(endAngle, -distance + extraDist, true); + y = cy + middleR * mathSin(endAngle) + adjustAngleDistanceY(endAngle, -distance + extraDist, true); + textAlign = 'right'; + textVerticalAlign = 'middle'; + break; + default: + return calculateTextPosition(out, opts, boundingRect); + } + out = out || {}; + out.x = x; + out.y = y; + out.align = textAlign; + out.verticalAlign = textVerticalAlign; + return out; + }; + } + function setSectorTextRotation(sector, textPosition, positionMapping, rotateType) { + if (isNumber(rotateType)) { + // user-set rotation + sector.setTextConfig({ + rotation: rotateType + }); + return; + } else if (isArray(textPosition)) { + // user-set position, use 0 as auto rotation + sector.setTextConfig({ + rotation: 0 + }); + return; + } + var shape = sector.shape; + var startAngle = shape.clockwise ? shape.startAngle : shape.endAngle; + var endAngle = shape.clockwise ? shape.endAngle : shape.startAngle; + var middleAngle = (startAngle + endAngle) / 2; + var anchorAngle; + var mappedSectorPosition = positionMapping(textPosition); + switch (mappedSectorPosition) { + case 'startArc': + case 'insideStartArc': + case 'middle': + case 'insideEndArc': + case 'endArc': + anchorAngle = middleAngle; + break; + case 'startAngle': + case 'insideStartAngle': + anchorAngle = startAngle; + break; + case 'endAngle': + case 'insideEndAngle': + anchorAngle = endAngle; + break; + default: + sector.setTextConfig({ + rotation: 0 + }); + return; + } + var rotate = Math.PI * 1.5 - anchorAngle; + /** + * TODO: labels with rotate > Math.PI / 2 should be rotate another + * half round flipped to increase readability. However, only middle + * position supports this for now, because in other positions, the + * anchor point is not at the center of the text, so the positions + * after rotating is not as expected. + */ + if (mappedSectorPosition === 'middle' && rotate > Math.PI / 2 && rotate < Math.PI * 1.5) { + rotate -= Math.PI; + } + sector.setTextConfig({ + rotation: rotate + }); + } + function adjustAngleDistanceX(angle, distance, isEnd) { + return distance * Math.sin(angle) * (isEnd ? -1 : 1); + } + function adjustAngleDistanceY(angle, distance, isEnd) { + return distance * Math.cos(angle) * (isEnd ? 1 : -1); + } + + function getSectorCornerRadius(model, shape, zeroIfNull) { + var cornerRadius = model.get('borderRadius'); + if (cornerRadius == null) { + return zeroIfNull ? { + cornerRadius: 0 + } : null; + } + if (!isArray(cornerRadius)) { + cornerRadius = [cornerRadius, cornerRadius, cornerRadius, cornerRadius]; + } + var dr = Math.abs(shape.r || 0 - shape.r0 || 0); + return { + cornerRadius: map(cornerRadius, function (cr) { + return parsePercent(cr, dr); + }) + }; + } + + var mathMax$6 = Math.max; + var mathMin$6 = Math.min; + function getClipArea(coord, data) { + var coordSysClipArea = coord.getArea && coord.getArea(); + if (isCoordinateSystemType(coord, 'cartesian2d')) { + var baseAxis = coord.getBaseAxis(); + // When boundaryGap is false or using time axis. bar may exceed the grid. + // We should not clip this part. + // See test/bar2.html + if (baseAxis.type !== 'category' || !baseAxis.onBand) { + var expandWidth = data.getLayout('bandWidth'); + if (baseAxis.isHorizontal()) { + coordSysClipArea.x -= expandWidth; + coordSysClipArea.width += expandWidth * 2; + } else { + coordSysClipArea.y -= expandWidth; + coordSysClipArea.height += expandWidth * 2; + } + } + } + return coordSysClipArea; + } + var BarView = /** @class */function (_super) { + __extends(BarView, _super); + function BarView() { + var _this = _super.call(this) || this; + _this.type = BarView.type; + _this._isFirstFrame = true; + return _this; + } + BarView.prototype.render = function (seriesModel, ecModel, api, payload) { + this._model = seriesModel; + this._removeOnRenderedListener(api); + this._updateDrawMode(seriesModel); + var coordinateSystemType = seriesModel.get('coordinateSystem'); + if (coordinateSystemType === 'cartesian2d' || coordinateSystemType === 'polar') { + // Clear previously rendered progressive elements. + this._progressiveEls = null; + this._isLargeDraw ? this._renderLarge(seriesModel, ecModel, api) : this._renderNormal(seriesModel, ecModel, api, payload); + } else if ("development" !== 'production') { + warn('Only cartesian2d and polar supported for bar.'); + } + }; + BarView.prototype.incrementalPrepareRender = function (seriesModel) { + this._clear(); + this._updateDrawMode(seriesModel); + // incremental also need to clip, otherwise might be overlow. + // But must not set clip in each frame, otherwise all of the children will be marked redraw. + this._updateLargeClip(seriesModel); + }; + BarView.prototype.incrementalRender = function (params, seriesModel) { + // Reset + this._progressiveEls = []; + // Do not support progressive in normal mode. + this._incrementalRenderLarge(params, seriesModel); + }; + BarView.prototype.eachRendered = function (cb) { + traverseElements(this._progressiveEls || this.group, cb); + }; + BarView.prototype._updateDrawMode = function (seriesModel) { + var isLargeDraw = seriesModel.pipelineContext.large; + if (this._isLargeDraw == null || isLargeDraw !== this._isLargeDraw) { + this._isLargeDraw = isLargeDraw; + this._clear(); + } + }; + BarView.prototype._renderNormal = function (seriesModel, ecModel, api, payload) { + var group = this.group; + var data = seriesModel.getData(); + var oldData = this._data; + var coord = seriesModel.coordinateSystem; + var baseAxis = coord.getBaseAxis(); + var isHorizontalOrRadial; + if (coord.type === 'cartesian2d') { + isHorizontalOrRadial = baseAxis.isHorizontal(); + } else if (coord.type === 'polar') { + isHorizontalOrRadial = baseAxis.dim === 'angle'; + } + var animationModel = seriesModel.isAnimationEnabled() ? seriesModel : null; + var realtimeSortCfg = shouldRealtimeSort(seriesModel, coord); + if (realtimeSortCfg) { + this._enableRealtimeSort(realtimeSortCfg, data, api); + } + var needsClip = seriesModel.get('clip', true) || realtimeSortCfg; + var coordSysClipArea = getClipArea(coord, data); + // If there is clipPath created in large mode. Remove it. + group.removeClipPath(); + // We don't use clipPath in normal mode because we needs a perfect animation + // And don't want the label are clipped. + var roundCap = seriesModel.get('roundCap', true); + var drawBackground = seriesModel.get('showBackground', true); + var backgroundModel = seriesModel.getModel('backgroundStyle'); + var barBorderRadius = backgroundModel.get('borderRadius') || 0; + var bgEls = []; + var oldBgEls = this._backgroundEls; + var isInitSort = payload && payload.isInitSort; + var isChangeOrder = payload && payload.type === 'changeAxisOrder'; + function createBackground(dataIndex) { + var bgLayout = getLayout[coord.type](data, dataIndex); + var bgEl = createBackgroundEl(coord, isHorizontalOrRadial, bgLayout); + bgEl.useStyle(backgroundModel.getItemStyle()); + // Only cartesian2d support borderRadius. + if (coord.type === 'cartesian2d') { + bgEl.setShape('r', barBorderRadius); + } else { + bgEl.setShape('cornerRadius', barBorderRadius); + } + bgEls[dataIndex] = bgEl; + return bgEl; + } + data.diff(oldData).add(function (dataIndex) { + var itemModel = data.getItemModel(dataIndex); + var layout = getLayout[coord.type](data, dataIndex, itemModel); + if (drawBackground) { + createBackground(dataIndex); + } + // If dataZoom in filteMode: 'empty', the baseValue can be set as NaN in "axisProxy". + if (!data.hasValue(dataIndex) || !isValidLayout[coord.type](layout)) { + return; + } + var isClipped = false; + if (needsClip) { + // Clip will modify the layout params. + // And return a boolean to determine if the shape are fully clipped. + isClipped = clip[coord.type](coordSysClipArea, layout); + } + var el = elementCreator[coord.type](seriesModel, data, dataIndex, layout, isHorizontalOrRadial, animationModel, baseAxis.model, false, roundCap); + if (realtimeSortCfg) { + /** + * Force label animation because even if the element is + * ignored because it's clipped, it may not be clipped after + * changing order. Then, if not using forceLabelAnimation, + * the label animation was never started, in which case, + * the label will be the final value and doesn't have label + * animation. + */ + el.forceLabelAnimation = true; + } + updateStyle(el, data, dataIndex, itemModel, layout, seriesModel, isHorizontalOrRadial, coord.type === 'polar'); + if (isInitSort) { + el.attr({ + shape: layout + }); + } else if (realtimeSortCfg) { + updateRealtimeAnimation(realtimeSortCfg, animationModel, el, layout, dataIndex, isHorizontalOrRadial, false, false); + } else { + initProps(el, { + shape: layout + }, seriesModel, dataIndex); + } + data.setItemGraphicEl(dataIndex, el); + group.add(el); + el.ignore = isClipped; + }).update(function (newIndex, oldIndex) { + var itemModel = data.getItemModel(newIndex); + var layout = getLayout[coord.type](data, newIndex, itemModel); + if (drawBackground) { + var bgEl = void 0; + if (oldBgEls.length === 0) { + bgEl = createBackground(oldIndex); + } else { + bgEl = oldBgEls[oldIndex]; + bgEl.useStyle(backgroundModel.getItemStyle()); + // Only cartesian2d support borderRadius. + if (coord.type === 'cartesian2d') { + bgEl.setShape('r', barBorderRadius); + } else { + bgEl.setShape('cornerRadius', barBorderRadius); + } + bgEls[newIndex] = bgEl; + } + var bgLayout = getLayout[coord.type](data, newIndex); + var shape = createBackgroundShape(isHorizontalOrRadial, bgLayout, coord); + updateProps(bgEl, { + shape: shape + }, animationModel, newIndex); + } + var el = oldData.getItemGraphicEl(oldIndex); + if (!data.hasValue(newIndex) || !isValidLayout[coord.type](layout)) { + group.remove(el); + return; + } + var isClipped = false; + if (needsClip) { + isClipped = clip[coord.type](coordSysClipArea, layout); + if (isClipped) { + group.remove(el); + } + } + if (!el) { + el = elementCreator[coord.type](seriesModel, data, newIndex, layout, isHorizontalOrRadial, animationModel, baseAxis.model, !!el, roundCap); + } else { + saveOldStyle(el); + } + if (realtimeSortCfg) { + el.forceLabelAnimation = true; + } + if (isChangeOrder) { + var textEl = el.getTextContent(); + if (textEl) { + var labelInnerStore = labelInner(textEl); + if (labelInnerStore.prevValue != null) { + /** + * Set preValue to be value so that no new label + * should be started, otherwise, it will take a full + * `animationDurationUpdate` time to finish the + * animation, which is not expected. + */ + labelInnerStore.prevValue = labelInnerStore.value; + } + } + } + // Not change anything if only order changed. + // Especially not change label. + else { + updateStyle(el, data, newIndex, itemModel, layout, seriesModel, isHorizontalOrRadial, coord.type === 'polar'); + } + if (isInitSort) { + el.attr({ + shape: layout + }); + } else if (realtimeSortCfg) { + updateRealtimeAnimation(realtimeSortCfg, animationModel, el, layout, newIndex, isHorizontalOrRadial, true, isChangeOrder); + } else { + updateProps(el, { + shape: layout + }, seriesModel, newIndex, null); + } + data.setItemGraphicEl(newIndex, el); + el.ignore = isClipped; + group.add(el); + }).remove(function (dataIndex) { + var el = oldData.getItemGraphicEl(dataIndex); + el && removeElementWithFadeOut(el, seriesModel, dataIndex); + }).execute(); + var bgGroup = this._backgroundGroup || (this._backgroundGroup = new Group()); + bgGroup.removeAll(); + for (var i = 0; i < bgEls.length; ++i) { + bgGroup.add(bgEls[i]); + } + group.add(bgGroup); + this._backgroundEls = bgEls; + this._data = data; + }; + BarView.prototype._renderLarge = function (seriesModel, ecModel, api) { + this._clear(); + createLarge(seriesModel, this.group); + this._updateLargeClip(seriesModel); + }; + BarView.prototype._incrementalRenderLarge = function (params, seriesModel) { + this._removeBackground(); + createLarge(seriesModel, this.group, this._progressiveEls, true); + }; + BarView.prototype._updateLargeClip = function (seriesModel) { + // Use clipPath in large mode. + var clipPath = seriesModel.get('clip', true) && createClipPath(seriesModel.coordinateSystem, false, seriesModel); + var group = this.group; + if (clipPath) { + group.setClipPath(clipPath); + } else { + group.removeClipPath(); + } + }; + BarView.prototype._enableRealtimeSort = function (realtimeSortCfg, data, api) { + var _this = this; + // If no data in the first frame, wait for data to initSort + if (!data.count()) { + return; + } + var baseAxis = realtimeSortCfg.baseAxis; + if (this._isFirstFrame) { + this._dispatchInitSort(data, realtimeSortCfg, api); + this._isFirstFrame = false; + } else { + var orderMapping_1 = function (idx) { + var el = data.getItemGraphicEl(idx); + var shape = el && el.shape; + return shape && + // The result should be consistent with the initial sort by data value. + // Do not support the case that both positive and negative exist. + Math.abs(baseAxis.isHorizontal() ? shape.height : shape.width) + // If data is NaN, shape.xxx may be NaN, so use || 0 here in case + || 0; + }; + this._onRendered = function () { + _this._updateSortWithinSameData(data, orderMapping_1, baseAxis, api); + }; + api.getZr().on('rendered', this._onRendered); + } + }; + BarView.prototype._dataSort = function (data, baseAxis, orderMapping) { + var info = []; + data.each(data.mapDimension(baseAxis.dim), function (ordinalNumber, dataIdx) { + var mappedValue = orderMapping(dataIdx); + mappedValue = mappedValue == null ? NaN : mappedValue; + info.push({ + dataIndex: dataIdx, + mappedValue: mappedValue, + ordinalNumber: ordinalNumber + }); + }); + info.sort(function (a, b) { + // If NaN, it will be treated as min val. + return b.mappedValue - a.mappedValue; + }); + return { + ordinalNumbers: map(info, function (item) { + return item.ordinalNumber; + }) + }; + }; + BarView.prototype._isOrderChangedWithinSameData = function (data, orderMapping, baseAxis) { + var scale = baseAxis.scale; + var ordinalDataDim = data.mapDimension(baseAxis.dim); + var lastValue = Number.MAX_VALUE; + for (var tickNum = 0, len = scale.getOrdinalMeta().categories.length; tickNum < len; ++tickNum) { + var rawIdx = data.rawIndexOf(ordinalDataDim, scale.getRawOrdinalNumber(tickNum)); + var value = rawIdx < 0 + // If some tick have no bar, the tick will be treated as min. + ? Number.MIN_VALUE + // PENDING: if dataZoom on baseAxis exits, is it a performance issue? + : orderMapping(data.indexOfRawIndex(rawIdx)); + if (value > lastValue) { + return true; + } + lastValue = value; + } + return false; + }; + /* + * Consider the case when A and B changed order, whose representing + * bars are both out of sight, we don't wish to trigger reorder action + * as long as the order in the view doesn't change. + */ + BarView.prototype._isOrderDifferentInView = function (orderInfo, baseAxis) { + var scale = baseAxis.scale; + var extent = scale.getExtent(); + var tickNum = Math.max(0, extent[0]); + var tickMax = Math.min(extent[1], scale.getOrdinalMeta().categories.length - 1); + for (; tickNum <= tickMax; ++tickNum) { + if (orderInfo.ordinalNumbers[tickNum] !== scale.getRawOrdinalNumber(tickNum)) { + return true; + } + } + }; + BarView.prototype._updateSortWithinSameData = function (data, orderMapping, baseAxis, api) { + if (!this._isOrderChangedWithinSameData(data, orderMapping, baseAxis)) { + return; + } + var sortInfo = this._dataSort(data, baseAxis, orderMapping); + if (this._isOrderDifferentInView(sortInfo, baseAxis)) { + this._removeOnRenderedListener(api); + api.dispatchAction({ + type: 'changeAxisOrder', + componentType: baseAxis.dim + 'Axis', + axisId: baseAxis.index, + sortInfo: sortInfo + }); + } + }; + BarView.prototype._dispatchInitSort = function (data, realtimeSortCfg, api) { + var baseAxis = realtimeSortCfg.baseAxis; + var sortResult = this._dataSort(data, baseAxis, function (dataIdx) { + return data.get(data.mapDimension(realtimeSortCfg.otherAxis.dim), dataIdx); + }); + api.dispatchAction({ + type: 'changeAxisOrder', + componentType: baseAxis.dim + 'Axis', + isInitSort: true, + axisId: baseAxis.index, + sortInfo: sortResult + }); + }; + BarView.prototype.remove = function (ecModel, api) { + this._clear(this._model); + this._removeOnRenderedListener(api); + }; + BarView.prototype.dispose = function (ecModel, api) { + this._removeOnRenderedListener(api); + }; + BarView.prototype._removeOnRenderedListener = function (api) { + if (this._onRendered) { + api.getZr().off('rendered', this._onRendered); + this._onRendered = null; + } + }; + BarView.prototype._clear = function (model) { + var group = this.group; + var data = this._data; + if (model && model.isAnimationEnabled() && data && !this._isLargeDraw) { + this._removeBackground(); + this._backgroundEls = []; + data.eachItemGraphicEl(function (el) { + removeElementWithFadeOut(el, model, getECData(el).dataIndex); + }); + } else { + group.removeAll(); + } + this._data = null; + this._isFirstFrame = true; + }; + BarView.prototype._removeBackground = function () { + this.group.remove(this._backgroundGroup); + this._backgroundGroup = null; + }; + BarView.type = 'bar'; + return BarView; + }(ChartView); + var clip = { + cartesian2d: function (coordSysBoundingRect, layout) { + var signWidth = layout.width < 0 ? -1 : 1; + var signHeight = layout.height < 0 ? -1 : 1; + // Needs positive width and height + if (signWidth < 0) { + layout.x += layout.width; + layout.width = -layout.width; + } + if (signHeight < 0) { + layout.y += layout.height; + layout.height = -layout.height; + } + var coordSysX2 = coordSysBoundingRect.x + coordSysBoundingRect.width; + var coordSysY2 = coordSysBoundingRect.y + coordSysBoundingRect.height; + var x = mathMax$6(layout.x, coordSysBoundingRect.x); + var x2 = mathMin$6(layout.x + layout.width, coordSysX2); + var y = mathMax$6(layout.y, coordSysBoundingRect.y); + var y2 = mathMin$6(layout.y + layout.height, coordSysY2); + var xClipped = x2 < x; + var yClipped = y2 < y; + // When xClipped or yClipped, the element will be marked as `ignore`. + // But we should also place the element at the edge of the coord sys bounding rect. + // Because if data changed and the bar shows again, its transition animation + // will begin at this place. + layout.x = xClipped && x > coordSysX2 ? x2 : x; + layout.y = yClipped && y > coordSysY2 ? y2 : y; + layout.width = xClipped ? 0 : x2 - x; + layout.height = yClipped ? 0 : y2 - y; + // Reverse back + if (signWidth < 0) { + layout.x += layout.width; + layout.width = -layout.width; + } + if (signHeight < 0) { + layout.y += layout.height; + layout.height = -layout.height; + } + return xClipped || yClipped; + }, + polar: function (coordSysClipArea, layout) { + var signR = layout.r0 <= layout.r ? 1 : -1; + // Make sure r is larger than r0 + if (signR < 0) { + var tmp = layout.r; + layout.r = layout.r0; + layout.r0 = tmp; + } + var r = mathMin$6(layout.r, coordSysClipArea.r); + var r0 = mathMax$6(layout.r0, coordSysClipArea.r0); + layout.r = r; + layout.r0 = r0; + var clipped = r - r0 < 0; + // Reverse back + if (signR < 0) { + var tmp = layout.r; + layout.r = layout.r0; + layout.r0 = tmp; + } + return clipped; + } + }; + var elementCreator = { + cartesian2d: function (seriesModel, data, newIndex, layout, isHorizontal, animationModel, axisModel, isUpdate, roundCap) { + var rect = new Rect({ + shape: extend({}, layout), + z2: 1 + }); + rect.__dataIndex = newIndex; + rect.name = 'item'; + if (animationModel) { + var rectShape = rect.shape; + var animateProperty = isHorizontal ? 'height' : 'width'; + rectShape[animateProperty] = 0; + } + return rect; + }, + polar: function (seriesModel, data, newIndex, layout, isRadial, animationModel, axisModel, isUpdate, roundCap) { + var ShapeClass = !isRadial && roundCap ? SausagePath : Sector; + var sector = new ShapeClass({ + shape: layout, + z2: 1 + }); + sector.name = 'item'; + var positionMap = createPolarPositionMapping(isRadial); + sector.calculateTextPosition = createSectorCalculateTextPosition(positionMap, { + isRoundCap: ShapeClass === SausagePath + }); + // Animation + if (animationModel) { + var sectorShape = sector.shape; + var animateProperty = isRadial ? 'r' : 'endAngle'; + var animateTarget = {}; + sectorShape[animateProperty] = isRadial ? layout.r0 : layout.startAngle; + animateTarget[animateProperty] = layout[animateProperty]; + (isUpdate ? updateProps : initProps)(sector, { + shape: animateTarget + // __value: typeof dataValue === 'string' ? parseInt(dataValue, 10) : dataValue + }, animationModel); + } + return sector; + } + }; + function shouldRealtimeSort(seriesModel, coordSys) { + var realtimeSortOption = seriesModel.get('realtimeSort', true); + var baseAxis = coordSys.getBaseAxis(); + if ("development" !== 'production') { + if (realtimeSortOption) { + if (baseAxis.type !== 'category') { + warn('`realtimeSort` will not work because this bar series is not based on a category axis.'); + } + if (coordSys.type !== 'cartesian2d') { + warn('`realtimeSort` will not work because this bar series is not on cartesian2d.'); + } + } + } + if (realtimeSortOption && baseAxis.type === 'category' && coordSys.type === 'cartesian2d') { + return { + baseAxis: baseAxis, + otherAxis: coordSys.getOtherAxis(baseAxis) + }; + } + } + function updateRealtimeAnimation(realtimeSortCfg, seriesAnimationModel, el, layout, newIndex, isHorizontal, isUpdate, isChangeOrder) { + var seriesTarget; + var axisTarget; + if (isHorizontal) { + axisTarget = { + x: layout.x, + width: layout.width + }; + seriesTarget = { + y: layout.y, + height: layout.height + }; + } else { + axisTarget = { + y: layout.y, + height: layout.height + }; + seriesTarget = { + x: layout.x, + width: layout.width + }; + } + if (!isChangeOrder) { + // Keep the original growth animation if only axis order changed. + // Not start a new animation. + (isUpdate ? updateProps : initProps)(el, { + shape: seriesTarget + }, seriesAnimationModel, newIndex, null); + } + var axisAnimationModel = seriesAnimationModel ? realtimeSortCfg.baseAxis.model : null; + (isUpdate ? updateProps : initProps)(el, { + shape: axisTarget + }, axisAnimationModel, newIndex); + } + function checkPropertiesNotValid(obj, props) { + for (var i = 0; i < props.length; i++) { + if (!isFinite(obj[props[i]])) { + return true; + } + } + return false; + } + var rectPropties = ['x', 'y', 'width', 'height']; + var polarPropties = ['cx', 'cy', 'r', 'startAngle', 'endAngle']; + var isValidLayout = { + cartesian2d: function (layout) { + return !checkPropertiesNotValid(layout, rectPropties); + }, + polar: function (layout) { + return !checkPropertiesNotValid(layout, polarPropties); + } + }; + var getLayout = { + // itemModel is only used to get borderWidth, which is not needed + // when calculating bar background layout. + cartesian2d: function (data, dataIndex, itemModel) { + var layout = data.getItemLayout(dataIndex); + var fixedLineWidth = itemModel ? getLineWidth(itemModel, layout) : 0; + // fix layout with lineWidth + var signX = layout.width > 0 ? 1 : -1; + var signY = layout.height > 0 ? 1 : -1; + return { + x: layout.x + signX * fixedLineWidth / 2, + y: layout.y + signY * fixedLineWidth / 2, + width: layout.width - signX * fixedLineWidth, + height: layout.height - signY * fixedLineWidth + }; + }, + polar: function (data, dataIndex, itemModel) { + var layout = data.getItemLayout(dataIndex); + return { + cx: layout.cx, + cy: layout.cy, + r0: layout.r0, + r: layout.r, + startAngle: layout.startAngle, + endAngle: layout.endAngle, + clockwise: layout.clockwise + }; + } + }; + function isZeroOnPolar(layout) { + return layout.startAngle != null && layout.endAngle != null && layout.startAngle === layout.endAngle; + } + function createPolarPositionMapping(isRadial) { + return function (isRadial) { + var arcOrAngle = isRadial ? 'Arc' : 'Angle'; + return function (position) { + switch (position) { + case 'start': + case 'insideStart': + case 'end': + case 'insideEnd': + return position + arcOrAngle; + default: + return position; + } + }; + }(isRadial); + } + function updateStyle(el, data, dataIndex, itemModel, layout, seriesModel, isHorizontalOrRadial, isPolar) { + var style = data.getItemVisual(dataIndex, 'style'); + if (!isPolar) { + var borderRadius = itemModel.get(['itemStyle', 'borderRadius']) || 0; + el.setShape('r', borderRadius); + } else if (!seriesModel.get('roundCap')) { + var sectorShape = el.shape; + var cornerRadius = getSectorCornerRadius(itemModel.getModel('itemStyle'), sectorShape, true); + extend(sectorShape, cornerRadius); + el.setShape(sectorShape); + } + el.useStyle(style); + var cursorStyle = itemModel.getShallow('cursor'); + cursorStyle && el.attr('cursor', cursorStyle); + var labelPositionOutside = isPolar ? isHorizontalOrRadial ? layout.r >= layout.r0 ? 'endArc' : 'startArc' : layout.endAngle >= layout.startAngle ? 'endAngle' : 'startAngle' : isHorizontalOrRadial ? layout.height >= 0 ? 'bottom' : 'top' : layout.width >= 0 ? 'right' : 'left'; + var labelStatesModels = getLabelStatesModels(itemModel); + setLabelStyle(el, labelStatesModels, { + labelFetcher: seriesModel, + labelDataIndex: dataIndex, + defaultText: getDefaultLabel(seriesModel.getData(), dataIndex), + inheritColor: style.fill, + defaultOpacity: style.opacity, + defaultOutsidePosition: labelPositionOutside + }); + var label = el.getTextContent(); + if (isPolar && label) { + var position = itemModel.get(['label', 'position']); + el.textConfig.inside = position === 'middle' ? true : null; + setSectorTextRotation(el, position === 'outside' ? labelPositionOutside : position, createPolarPositionMapping(isHorizontalOrRadial), itemModel.get(['label', 'rotate'])); + } + setLabelValueAnimation(label, labelStatesModels, seriesModel.getRawValue(dataIndex), function (value) { + return getDefaultInterpolatedLabel(data, value); + }); + var emphasisModel = itemModel.getModel(['emphasis']); + toggleHoverEmphasis(el, emphasisModel.get('focus'), emphasisModel.get('blurScope'), emphasisModel.get('disabled')); + setStatesStylesFromModel(el, itemModel); + if (isZeroOnPolar(layout)) { + el.style.fill = 'none'; + el.style.stroke = 'none'; + each(el.states, function (state) { + if (state.style) { + state.style.fill = state.style.stroke = 'none'; + } + }); + } + } + // In case width or height are too small. + function getLineWidth(itemModel, rawLayout) { + // Has no border. + var borderColor = itemModel.get(['itemStyle', 'borderColor']); + if (!borderColor || borderColor === 'none') { + return 0; + } + var lineWidth = itemModel.get(['itemStyle', 'borderWidth']) || 0; + // width or height may be NaN for empty data + var width = isNaN(rawLayout.width) ? Number.MAX_VALUE : Math.abs(rawLayout.width); + var height = isNaN(rawLayout.height) ? Number.MAX_VALUE : Math.abs(rawLayout.height); + return Math.min(lineWidth, width, height); + } + var LagePathShape = /** @class */function () { + function LagePathShape() {} + return LagePathShape; + }(); + var LargePath = /** @class */function (_super) { + __extends(LargePath, _super); + function LargePath(opts) { + var _this = _super.call(this, opts) || this; + _this.type = 'largeBar'; + return _this; + } + LargePath.prototype.getDefaultShape = function () { + return new LagePathShape(); + }; + LargePath.prototype.buildPath = function (ctx, shape) { + // Drawing lines is more efficient than drawing + // a whole line or drawing rects. + var points = shape.points; + var baseDimIdx = this.baseDimIdx; + var valueDimIdx = 1 - this.baseDimIdx; + var startPoint = []; + var size = []; + var barWidth = this.barWidth; + for (var i = 0; i < points.length; i += 3) { + size[baseDimIdx] = barWidth; + size[valueDimIdx] = points[i + 2]; + startPoint[baseDimIdx] = points[i + baseDimIdx]; + startPoint[valueDimIdx] = points[i + valueDimIdx]; + ctx.rect(startPoint[0], startPoint[1], size[0], size[1]); + } + }; + return LargePath; + }(Path); + function createLarge(seriesModel, group, progressiveEls, incremental) { + // TODO support polar + var data = seriesModel.getData(); + var baseDimIdx = data.getLayout('valueAxisHorizontal') ? 1 : 0; + var largeDataIndices = data.getLayout('largeDataIndices'); + var barWidth = data.getLayout('size'); + var backgroundModel = seriesModel.getModel('backgroundStyle'); + var bgPoints = data.getLayout('largeBackgroundPoints'); + if (bgPoints) { + var bgEl = new LargePath({ + shape: { + points: bgPoints + }, + incremental: !!incremental, + silent: true, + z2: 0 + }); + bgEl.baseDimIdx = baseDimIdx; + bgEl.largeDataIndices = largeDataIndices; + bgEl.barWidth = barWidth; + bgEl.useStyle(backgroundModel.getItemStyle()); + group.add(bgEl); + progressiveEls && progressiveEls.push(bgEl); + } + var el = new LargePath({ + shape: { + points: data.getLayout('largePoints') + }, + incremental: !!incremental, + ignoreCoarsePointer: true, + z2: 1 + }); + el.baseDimIdx = baseDimIdx; + el.largeDataIndices = largeDataIndices; + el.barWidth = barWidth; + group.add(el); + el.useStyle(data.getVisual('style')); + // Enable tooltip and user mouse/touch event handlers. + getECData(el).seriesIndex = seriesModel.seriesIndex; + if (!seriesModel.get('silent')) { + el.on('mousedown', largePathUpdateDataIndex); + el.on('mousemove', largePathUpdateDataIndex); + } + progressiveEls && progressiveEls.push(el); + } + // Use throttle to avoid frequently traverse to find dataIndex. + var largePathUpdateDataIndex = throttle(function (event) { + var largePath = this; + var dataIndex = largePathFindDataIndex(largePath, event.offsetX, event.offsetY); + getECData(largePath).dataIndex = dataIndex >= 0 ? dataIndex : null; + }, 30, false); + function largePathFindDataIndex(largePath, x, y) { + var baseDimIdx = largePath.baseDimIdx; + var valueDimIdx = 1 - baseDimIdx; + var points = largePath.shape.points; + var largeDataIndices = largePath.largeDataIndices; + var startPoint = []; + var size = []; + var barWidth = largePath.barWidth; + for (var i = 0, len = points.length / 3; i < len; i++) { + var ii = i * 3; + size[baseDimIdx] = barWidth; + size[valueDimIdx] = points[ii + 2]; + startPoint[baseDimIdx] = points[ii + baseDimIdx]; + startPoint[valueDimIdx] = points[ii + valueDimIdx]; + if (size[valueDimIdx] < 0) { + startPoint[valueDimIdx] += size[valueDimIdx]; + size[valueDimIdx] = -size[valueDimIdx]; + } + if (x >= startPoint[0] && x <= startPoint[0] + size[0] && y >= startPoint[1] && y <= startPoint[1] + size[1]) { + return largeDataIndices[i]; + } + } + return -1; + } + function createBackgroundShape(isHorizontalOrRadial, layout, coord) { + if (isCoordinateSystemType(coord, 'cartesian2d')) { + var rectShape = layout; + var coordLayout = coord.getArea(); + return { + x: isHorizontalOrRadial ? rectShape.x : coordLayout.x, + y: isHorizontalOrRadial ? coordLayout.y : rectShape.y, + width: isHorizontalOrRadial ? rectShape.width : coordLayout.width, + height: isHorizontalOrRadial ? coordLayout.height : rectShape.height + }; + } else { + var coordLayout = coord.getArea(); + var sectorShape = layout; + return { + cx: coordLayout.cx, + cy: coordLayout.cy, + r0: isHorizontalOrRadial ? coordLayout.r0 : sectorShape.r0, + r: isHorizontalOrRadial ? coordLayout.r : sectorShape.r, + startAngle: isHorizontalOrRadial ? sectorShape.startAngle : 0, + endAngle: isHorizontalOrRadial ? sectorShape.endAngle : Math.PI * 2 + }; + } + } + function createBackgroundEl(coord, isHorizontalOrRadial, layout) { + var ElementClz = coord.type === 'polar' ? Sector : Rect; + return new ElementClz({ + shape: createBackgroundShape(isHorizontalOrRadial, layout, coord), + silent: true, + z2: 0 + }); + } + + function install$3(registers) { + registers.registerChartView(BarView); + registers.registerSeriesModel(BarSeriesModel); + registers.registerLayout(registers.PRIORITY.VISUAL.LAYOUT, curry(layout, 'bar')); + // Do layout after other overall layout, which can prepare some information. + registers.registerLayout(registers.PRIORITY.VISUAL.PROGRESSIVE_LAYOUT, createProgressiveLayout('bar')); + // Down sample after filter + registers.registerProcessor(registers.PRIORITY.PROCESSOR.STATISTIC, dataSample('bar')); + /** + * @payload + * @property {string} [componentType=series] + * @property {number} [dx] + * @property {number} [dy] + * @property {number} [zoom] + * @property {number} [originX] + * @property {number} [originY] + */ + registers.registerAction({ + type: 'changeAxisOrder', + event: 'changeAxisOrder', + update: 'update' + }, function (payload, ecModel) { + var componentType = payload.componentType || 'series'; + ecModel.eachComponent({ + mainType: componentType, + query: payload + }, function (componentModel) { + if (payload.sortInfo) { + componentModel.axis.setCategorySortInfo(payload.sortInfo); + } + }); + }); + } + + var PI2$8 = Math.PI * 2; + var RADIAN = Math.PI / 180; + function getViewRect(seriesModel, api) { + return getLayoutRect(seriesModel.getBoxLayoutParams(), { + width: api.getWidth(), + height: api.getHeight() + }); + } + function getBasicPieLayout(seriesModel, api) { + var viewRect = getViewRect(seriesModel, api); + // center can be string or number when coordinateSystem is specified + var center = seriesModel.get('center'); + var radius = seriesModel.get('radius'); + if (!isArray(radius)) { + radius = [0, radius]; + } + var width = parsePercent$1(viewRect.width, api.getWidth()); + var height = parsePercent$1(viewRect.height, api.getHeight()); + var size = Math.min(width, height); + var r0 = parsePercent$1(radius[0], size / 2); + var r = parsePercent$1(radius[1], size / 2); + var cx; + var cy; + var coordSys = seriesModel.coordinateSystem; + if (coordSys) { + // percentage is not allowed when coordinate system is specified + var point = coordSys.dataToPoint(center); + cx = point[0] || 0; + cy = point[1] || 0; + } else { + if (!isArray(center)) { + center = [center, center]; + } + cx = parsePercent$1(center[0], width) + viewRect.x; + cy = parsePercent$1(center[1], height) + viewRect.y; + } + return { + cx: cx, + cy: cy, + r0: r0, + r: r + }; + } + function pieLayout(seriesType, ecModel, api) { + ecModel.eachSeriesByType(seriesType, function (seriesModel) { + var data = seriesModel.getData(); + var valueDim = data.mapDimension('value'); + var viewRect = getViewRect(seriesModel, api); + var _a = getBasicPieLayout(seriesModel, api), + cx = _a.cx, + cy = _a.cy, + r = _a.r, + r0 = _a.r0; + var startAngle = -seriesModel.get('startAngle') * RADIAN; + var endAngle = seriesModel.get('endAngle'); + var padAngle = seriesModel.get('padAngle') * RADIAN; + endAngle = endAngle === 'auto' ? startAngle - PI2$8 : -endAngle * RADIAN; + var minAngle = seriesModel.get('minAngle') * RADIAN; + var minAndPadAngle = minAngle + padAngle; + var validDataCount = 0; + data.each(valueDim, function (value) { + !isNaN(value) && validDataCount++; + }); + var sum = data.getSum(valueDim); + // Sum may be 0 + var unitRadian = Math.PI / (sum || validDataCount) * 2; + var clockwise = seriesModel.get('clockwise'); + var roseType = seriesModel.get('roseType'); + var stillShowZeroSum = seriesModel.get('stillShowZeroSum'); + // [0...max] + var extent = data.getDataExtent(valueDim); + extent[0] = 0; + var dir = clockwise ? 1 : -1; + var angles = [startAngle, endAngle]; + var halfPadAngle = dir * padAngle / 2; + normalizeArcAngles(angles, !clockwise); + startAngle = angles[0], endAngle = angles[1]; + var angleRange = Math.abs(endAngle - startAngle); + // In the case some sector angle is smaller than minAngle + var restAngle = angleRange; + var valueSumLargerThanMinAngle = 0; + var currentAngle = startAngle; + data.setLayout({ + viewRect: viewRect, + r: r + }); + data.each(valueDim, function (value, idx) { + var angle; + if (isNaN(value)) { + data.setItemLayout(idx, { + angle: NaN, + startAngle: NaN, + endAngle: NaN, + clockwise: clockwise, + cx: cx, + cy: cy, + r0: r0, + r: roseType ? NaN : r + }); + return; + } + // FIXME 兼容 2.0 但是 roseType 是 area 的时候才是这样? + if (roseType !== 'area') { + angle = sum === 0 && stillShowZeroSum ? unitRadian : value * unitRadian; + } else { + angle = angleRange / validDataCount; + } + if (angle < minAndPadAngle) { + angle = minAndPadAngle; + restAngle -= minAndPadAngle; + } else { + valueSumLargerThanMinAngle += value; + } + var endAngle = currentAngle + dir * angle; + // calculate display angle + var actualStartAngle = 0; + var actualEndAngle = 0; + if (padAngle > angle) { + actualStartAngle = currentAngle + dir * angle / 2; + actualEndAngle = actualStartAngle; + } else { + actualStartAngle = currentAngle + halfPadAngle; + actualEndAngle = endAngle - halfPadAngle; + } + data.setItemLayout(idx, { + angle: angle, + startAngle: actualStartAngle, + endAngle: actualEndAngle, + clockwise: clockwise, + cx: cx, + cy: cy, + r0: r0, + r: roseType ? linearMap(value, extent, [r0, r]) : r + }); + currentAngle = endAngle; + }); + // Some sector is constrained by minAngle and padAngle + // Rest sectors needs recalculate angle + if (restAngle < PI2$8 && validDataCount) { + // Average the angle if rest angle is not enough after all angles is + // Constrained by minAngle and padAngle + if (restAngle <= 1e-3) { + var angle_1 = angleRange / validDataCount; + data.each(valueDim, function (value, idx) { + if (!isNaN(value)) { + var layout_1 = data.getItemLayout(idx); + layout_1.angle = angle_1; + var actualStartAngle = 0; + var actualEndAngle = 0; + if (angle_1 < padAngle) { + actualStartAngle = startAngle + dir * (idx + 1 / 2) * angle_1; + actualEndAngle = actualStartAngle; + } else { + actualStartAngle = startAngle + dir * idx * angle_1 + halfPadAngle; + actualEndAngle = startAngle + dir * (idx + 1) * angle_1 - halfPadAngle; + } + layout_1.startAngle = actualStartAngle; + layout_1.endAngle = actualEndAngle; + } + }); + } else { + unitRadian = restAngle / valueSumLargerThanMinAngle; + currentAngle = startAngle; + data.each(valueDim, function (value, idx) { + if (!isNaN(value)) { + var layout_2 = data.getItemLayout(idx); + var angle = layout_2.angle === minAndPadAngle ? minAndPadAngle : value * unitRadian; + var actualStartAngle = 0; + var actualEndAngle = 0; + if (angle < padAngle) { + actualStartAngle = currentAngle + dir * angle / 2; + actualEndAngle = actualStartAngle; + } else { + actualStartAngle = currentAngle + halfPadAngle; + actualEndAngle = currentAngle + dir * angle - halfPadAngle; + } + layout_2.startAngle = actualStartAngle; + layout_2.endAngle = actualEndAngle; + currentAngle += dir * angle; + } + }); + } + } + }); + } + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + + /** + * AUTO-GENERATED FILE. DO NOT MODIFY. + */ + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + function dataFilter(seriesType) { + return { + seriesType: seriesType, + reset: function (seriesModel, ecModel) { + var legendModels = ecModel.findComponents({ + mainType: 'legend' + }); + if (!legendModels || !legendModels.length) { + return; + } + var data = seriesModel.getData(); + data.filterSelf(function (idx) { + var name = data.getName(idx); + // If in any legend component the status is not selected. + for (var i = 0; i < legendModels.length; i++) { + // @ts-ignore FIXME: LegendModel + if (!legendModels[i].isSelected(name)) { + return false; + } + } + return true; + }); + } + }; + } + + var RADIAN$1 = Math.PI / 180; + function adjustSingleSide(list, cx, cy, r, dir, viewWidth, viewHeight, viewLeft, viewTop, farthestX) { + if (list.length < 2) { + return; + } + function recalculateXOnSemiToAlignOnEllipseCurve(semi) { + var rB = semi.rB; + var rB2 = rB * rB; + for (var i = 0; i < semi.list.length; i++) { + var item = semi.list[i]; + var dy = Math.abs(item.label.y - cy); + // horizontal r is always same with original r because x is not changed. + var rA = r + item.len; + var rA2 = rA * rA; + // Use ellipse implicit function to calculate x + var dx = Math.sqrt((1 - Math.abs(dy * dy / rB2)) * rA2); + var newX = cx + (dx + item.len2) * dir; + var deltaX = newX - item.label.x; + var newTargetWidth = item.targetTextWidth - deltaX * dir; + // text x is changed, so need to recalculate width. + constrainTextWidth(item, newTargetWidth, true); + item.label.x = newX; + } + } + // Adjust X based on the shifted y. Make tight labels aligned on an ellipse curve. + function recalculateX(items) { + // Extremes of + var topSemi = { + list: [], + maxY: 0 + }; + var bottomSemi = { + list: [], + maxY: 0 + }; + for (var i = 0; i < items.length; i++) { + if (items[i].labelAlignTo !== 'none') { + continue; + } + var item = items[i]; + var semi = item.label.y > cy ? bottomSemi : topSemi; + var dy = Math.abs(item.label.y - cy); + if (dy >= semi.maxY) { + var dx = item.label.x - cx - item.len2 * dir; + // horizontal r is always same with original r because x is not changed. + var rA = r + item.len; + // Canculate rB based on the topest / bottemest label. + var rB = Math.abs(dx) < rA ? Math.sqrt(dy * dy / (1 - dx * dx / rA / rA)) : rA; + semi.rB = rB; + semi.maxY = dy; + } + semi.list.push(item); + } + recalculateXOnSemiToAlignOnEllipseCurve(topSemi); + recalculateXOnSemiToAlignOnEllipseCurve(bottomSemi); + } + var len = list.length; + for (var i = 0; i < len; i++) { + if (list[i].position === 'outer' && list[i].labelAlignTo === 'labelLine') { + var dx = list[i].label.x - farthestX; + list[i].linePoints[1][0] += dx; + list[i].label.x = farthestX; + } + } + if (shiftLayoutOnY(list, viewTop, viewTop + viewHeight)) { + recalculateX(list); + } + } + function avoidOverlap(labelLayoutList, cx, cy, r, viewWidth, viewHeight, viewLeft, viewTop) { + var leftList = []; + var rightList = []; + var leftmostX = Number.MAX_VALUE; + var rightmostX = -Number.MAX_VALUE; + for (var i = 0; i < labelLayoutList.length; i++) { + var label = labelLayoutList[i].label; + if (isPositionCenter(labelLayoutList[i])) { + continue; + } + if (label.x < cx) { + leftmostX = Math.min(leftmostX, label.x); + leftList.push(labelLayoutList[i]); + } else { + rightmostX = Math.max(rightmostX, label.x); + rightList.push(labelLayoutList[i]); + } + } + for (var i = 0; i < labelLayoutList.length; i++) { + var layout = labelLayoutList[i]; + if (!isPositionCenter(layout) && layout.linePoints) { + if (layout.labelStyleWidth != null) { + continue; + } + var label = layout.label; + var linePoints = layout.linePoints; + var targetTextWidth = void 0; + if (layout.labelAlignTo === 'edge') { + if (label.x < cx) { + targetTextWidth = linePoints[2][0] - layout.labelDistance - viewLeft - layout.edgeDistance; + } else { + targetTextWidth = viewLeft + viewWidth - layout.edgeDistance - linePoints[2][0] - layout.labelDistance; + } + } else if (layout.labelAlignTo === 'labelLine') { + if (label.x < cx) { + targetTextWidth = leftmostX - viewLeft - layout.bleedMargin; + } else { + targetTextWidth = viewLeft + viewWidth - rightmostX - layout.bleedMargin; + } + } else { + if (label.x < cx) { + targetTextWidth = label.x - viewLeft - layout.bleedMargin; + } else { + targetTextWidth = viewLeft + viewWidth - label.x - layout.bleedMargin; + } + } + layout.targetTextWidth = targetTextWidth; + constrainTextWidth(layout, targetTextWidth); + } + } + adjustSingleSide(rightList, cx, cy, r, 1, viewWidth, viewHeight, viewLeft, viewTop, rightmostX); + adjustSingleSide(leftList, cx, cy, r, -1, viewWidth, viewHeight, viewLeft, viewTop, leftmostX); + for (var i = 0; i < labelLayoutList.length; i++) { + var layout = labelLayoutList[i]; + if (!isPositionCenter(layout) && layout.linePoints) { + var label = layout.label; + var linePoints = layout.linePoints; + var isAlignToEdge = layout.labelAlignTo === 'edge'; + var padding = label.style.padding; + var paddingH = padding ? padding[1] + padding[3] : 0; + // textRect.width already contains paddingH if bgColor is set + var extraPaddingH = label.style.backgroundColor ? 0 : paddingH; + var realTextWidth = layout.rect.width + extraPaddingH; + var dist = linePoints[1][0] - linePoints[2][0]; + if (isAlignToEdge) { + if (label.x < cx) { + linePoints[2][0] = viewLeft + layout.edgeDistance + realTextWidth + layout.labelDistance; + } else { + linePoints[2][0] = viewLeft + viewWidth - layout.edgeDistance - realTextWidth - layout.labelDistance; + } + } else { + if (label.x < cx) { + linePoints[2][0] = label.x + layout.labelDistance; + } else { + linePoints[2][0] = label.x - layout.labelDistance; + } + linePoints[1][0] = linePoints[2][0] + dist; + } + linePoints[1][1] = linePoints[2][1] = label.y; + } + } + } + /** + * Set max width of each label, and then wrap each label to the max width. + * + * @param layout label layout + * @param availableWidth max width for the label to display + * @param forceRecalculate recaculate the text layout even if the current width + * is smaller than `availableWidth`. This is useful when the text was previously + * wrapped by calling `constrainTextWidth` but now `availableWidth` changed, in + * which case, previous wrapping should be redo. + */ + function constrainTextWidth(layout, availableWidth, forceRecalculate) { + if (forceRecalculate === void 0) { + forceRecalculate = false; + } + if (layout.labelStyleWidth != null) { + // User-defined style.width has the highest priority. + return; + } + var label = layout.label; + var style = label.style; + var textRect = layout.rect; + var bgColor = style.backgroundColor; + var padding = style.padding; + var paddingH = padding ? padding[1] + padding[3] : 0; + var overflow = style.overflow; + // textRect.width already contains paddingH if bgColor is set + var oldOuterWidth = textRect.width + (bgColor ? 0 : paddingH); + if (availableWidth < oldOuterWidth || forceRecalculate) { + var oldHeight = textRect.height; + if (overflow && overflow.match('break')) { + // Temporarily set background to be null to calculate + // the bounding box without background. + label.setStyle('backgroundColor', null); + // Set constraining width + label.setStyle('width', availableWidth - paddingH); + // This is the real bounding box of the text without padding. + var innerRect = label.getBoundingRect(); + label.setStyle('width', Math.ceil(innerRect.width)); + label.setStyle('backgroundColor', bgColor); + } else { + var availableInnerWidth = availableWidth - paddingH; + var newWidth = availableWidth < oldOuterWidth + // Current text is too wide, use `availableWidth` as max width. + ? availableInnerWidth : + // Current available width is enough, but the text may have + // already been wrapped with a smaller available width. + forceRecalculate ? availableInnerWidth > layout.unconstrainedWidth + // Current available is larger than text width, + // so don't constrain width (otherwise it may have + // empty space in the background). + ? null + // Current available is smaller than text width, so + // use the current available width as constraining + // width. + : availableInnerWidth + // Current available width is enough, so no need to + // constrain. + : null; + label.setStyle('width', newWidth); + } + var newRect = label.getBoundingRect(); + textRect.width = newRect.width; + var margin = (label.style.margin || 0) + 2.1; + textRect.height = newRect.height + margin; + textRect.y -= (textRect.height - oldHeight) / 2; + } + } + function isPositionCenter(sectorShape) { + // Not change x for center label + return sectorShape.position === 'center'; + } + function pieLabelLayout(seriesModel) { + var data = seriesModel.getData(); + var labelLayoutList = []; + var cx; + var cy; + var hasLabelRotate = false; + var minShowLabelRadian = (seriesModel.get('minShowLabelAngle') || 0) * RADIAN$1; + var viewRect = data.getLayout('viewRect'); + var r = data.getLayout('r'); + var viewWidth = viewRect.width; + var viewLeft = viewRect.x; + var viewTop = viewRect.y; + var viewHeight = viewRect.height; + function setNotShow(el) { + el.ignore = true; + } + function isLabelShown(label) { + if (!label.ignore) { + return true; + } + for (var key in label.states) { + if (label.states[key].ignore === false) { + return true; + } + } + return false; + } + data.each(function (idx) { + var sector = data.getItemGraphicEl(idx); + var sectorShape = sector.shape; + var label = sector.getTextContent(); + var labelLine = sector.getTextGuideLine(); + var itemModel = data.getItemModel(idx); + var labelModel = itemModel.getModel('label'); + // Use position in normal or emphasis + var labelPosition = labelModel.get('position') || itemModel.get(['emphasis', 'label', 'position']); + var labelDistance = labelModel.get('distanceToLabelLine'); + var labelAlignTo = labelModel.get('alignTo'); + var edgeDistance = parsePercent$1(labelModel.get('edgeDistance'), viewWidth); + var bleedMargin = labelModel.get('bleedMargin'); + var labelLineModel = itemModel.getModel('labelLine'); + var labelLineLen = labelLineModel.get('length'); + labelLineLen = parsePercent$1(labelLineLen, viewWidth); + var labelLineLen2 = labelLineModel.get('length2'); + labelLineLen2 = parsePercent$1(labelLineLen2, viewWidth); + if (Math.abs(sectorShape.endAngle - sectorShape.startAngle) < minShowLabelRadian) { + each(label.states, setNotShow); + label.ignore = true; + if (labelLine) { + each(labelLine.states, setNotShow); + labelLine.ignore = true; + } + return; + } + if (!isLabelShown(label)) { + return; + } + var midAngle = (sectorShape.startAngle + sectorShape.endAngle) / 2; + var nx = Math.cos(midAngle); + var ny = Math.sin(midAngle); + var textX; + var textY; + var linePoints; + var textAlign; + cx = sectorShape.cx; + cy = sectorShape.cy; + var isLabelInside = labelPosition === 'inside' || labelPosition === 'inner'; + if (labelPosition === 'center') { + textX = sectorShape.cx; + textY = sectorShape.cy; + textAlign = 'center'; + } else { + var x1 = (isLabelInside ? (sectorShape.r + sectorShape.r0) / 2 * nx : sectorShape.r * nx) + cx; + var y1 = (isLabelInside ? (sectorShape.r + sectorShape.r0) / 2 * ny : sectorShape.r * ny) + cy; + textX = x1 + nx * 3; + textY = y1 + ny * 3; + if (!isLabelInside) { + // For roseType + var x2 = x1 + nx * (labelLineLen + r - sectorShape.r); + var y2 = y1 + ny * (labelLineLen + r - sectorShape.r); + var x3 = x2 + (nx < 0 ? -1 : 1) * labelLineLen2; + var y3 = y2; + if (labelAlignTo === 'edge') { + // Adjust textX because text align of edge is opposite + textX = nx < 0 ? viewLeft + edgeDistance : viewLeft + viewWidth - edgeDistance; + } else { + textX = x3 + (nx < 0 ? -labelDistance : labelDistance); + } + textY = y3; + linePoints = [[x1, y1], [x2, y2], [x3, y3]]; + } + textAlign = isLabelInside ? 'center' : labelAlignTo === 'edge' ? nx > 0 ? 'right' : 'left' : nx > 0 ? 'left' : 'right'; + } + var PI = Math.PI; + var labelRotate = 0; + var rotate = labelModel.get('rotate'); + if (isNumber(rotate)) { + labelRotate = rotate * (PI / 180); + } else if (labelPosition === 'center') { + labelRotate = 0; + } else if (rotate === 'radial' || rotate === true) { + var radialAngle = nx < 0 ? -midAngle + PI : -midAngle; + labelRotate = radialAngle; + } else if (rotate === 'tangential' && labelPosition !== 'outside' && labelPosition !== 'outer') { + var rad = Math.atan2(nx, ny); + if (rad < 0) { + rad = PI * 2 + rad; + } + var isDown = ny > 0; + if (isDown) { + rad = PI + rad; + } + labelRotate = rad - PI; + } + hasLabelRotate = !!labelRotate; + label.x = textX; + label.y = textY; + label.rotation = labelRotate; + label.setStyle({ + verticalAlign: 'middle' + }); + // Not sectorShape the inside label + if (!isLabelInside) { + var textRect = label.getBoundingRect().clone(); + textRect.applyTransform(label.getComputedTransform()); + // Text has a default 1px stroke. Exclude this. + var margin = (label.style.margin || 0) + 2.1; + textRect.y -= margin / 2; + textRect.height += margin; + labelLayoutList.push({ + label: label, + labelLine: labelLine, + position: labelPosition, + len: labelLineLen, + len2: labelLineLen2, + minTurnAngle: labelLineModel.get('minTurnAngle'), + maxSurfaceAngle: labelLineModel.get('maxSurfaceAngle'), + surfaceNormal: new Point(nx, ny), + linePoints: linePoints, + textAlign: textAlign, + labelDistance: labelDistance, + labelAlignTo: labelAlignTo, + edgeDistance: edgeDistance, + bleedMargin: bleedMargin, + rect: textRect, + unconstrainedWidth: textRect.width, + labelStyleWidth: label.style.width + }); + } else { + label.setStyle({ + align: textAlign + }); + var selectState = label.states.select; + if (selectState) { + selectState.x += label.x; + selectState.y += label.y; + } + } + sector.setTextConfig({ + inside: isLabelInside + }); + }); + if (!hasLabelRotate && seriesModel.get('avoidLabelOverlap')) { + avoidOverlap(labelLayoutList, cx, cy, r, viewWidth, viewHeight, viewLeft, viewTop); + } + for (var i = 0; i < labelLayoutList.length; i++) { + var layout = labelLayoutList[i]; + var label = layout.label; + var labelLine = layout.labelLine; + var notShowLabel = isNaN(label.x) || isNaN(label.y); + if (label) { + label.setStyle({ + align: layout.textAlign + }); + if (notShowLabel) { + each(label.states, setNotShow); + label.ignore = true; + } + var selectState = label.states.select; + if (selectState) { + selectState.x += label.x; + selectState.y += label.y; + } + } + if (labelLine) { + var linePoints = layout.linePoints; + if (notShowLabel || !linePoints) { + each(labelLine.states, setNotShow); + labelLine.ignore = true; + } else { + limitTurnAngle(linePoints, layout.minTurnAngle); + limitSurfaceAngle(linePoints, layout.surfaceNormal, layout.maxSurfaceAngle); + labelLine.setShape({ + points: linePoints + }); + // Set the anchor to the midpoint of sector + label.__hostTarget.textGuideLineConfig = { + anchor: new Point(linePoints[0][0], linePoints[0][1]) + }; + } + } + } + } + + /** + * Piece of pie including Sector, Label, LabelLine + */ + var PiePiece = /** @class */function (_super) { + __extends(PiePiece, _super); + function PiePiece(data, idx, startAngle) { + var _this = _super.call(this) || this; + _this.z2 = 2; + var text = new ZRText(); + _this.setTextContent(text); + _this.updateData(data, idx, startAngle, true); + return _this; + } + PiePiece.prototype.updateData = function (data, idx, startAngle, firstCreate) { + var sector = this; + var seriesModel = data.hostModel; + var itemModel = data.getItemModel(idx); + var emphasisModel = itemModel.getModel('emphasis'); + var layout = data.getItemLayout(idx); + // cornerRadius & innerCornerRadius doesn't exist in the item layout. Use `0` if null value is specified. + // see `setItemLayout` in `pieLayout.ts`. + var sectorShape = extend(getSectorCornerRadius(itemModel.getModel('itemStyle'), layout, true), layout); + // Ignore NaN data. + if (isNaN(sectorShape.startAngle)) { + // Use NaN shape to avoid drawing shape. + sector.setShape(sectorShape); + return; + } + if (firstCreate) { + sector.setShape(sectorShape); + var animationType = seriesModel.getShallow('animationType'); + if (seriesModel.ecModel.ssr) { + // Use scale animation in SSR mode(opacity?) + // Because CSS SVG animation doesn't support very customized shape animation. + initProps(sector, { + scaleX: 0, + scaleY: 0 + }, seriesModel, { + dataIndex: idx, + isFrom: true + }); + sector.originX = sectorShape.cx; + sector.originY = sectorShape.cy; + } else if (animationType === 'scale') { + sector.shape.r = layout.r0; + initProps(sector, { + shape: { + r: layout.r + } + }, seriesModel, idx); + } + // Expansion + else { + if (startAngle != null) { + sector.setShape({ + startAngle: startAngle, + endAngle: startAngle + }); + initProps(sector, { + shape: { + startAngle: layout.startAngle, + endAngle: layout.endAngle + } + }, seriesModel, idx); + } else { + sector.shape.endAngle = layout.startAngle; + updateProps(sector, { + shape: { + endAngle: layout.endAngle + } + }, seriesModel, idx); + } + } + } else { + saveOldStyle(sector); + // Transition animation from the old shape + updateProps(sector, { + shape: sectorShape + }, seriesModel, idx); + } + sector.useStyle(data.getItemVisual(idx, 'style')); + setStatesStylesFromModel(sector, itemModel); + var midAngle = (layout.startAngle + layout.endAngle) / 2; + var offset = seriesModel.get('selectedOffset'); + var dx = Math.cos(midAngle) * offset; + var dy = Math.sin(midAngle) * offset; + var cursorStyle = itemModel.getShallow('cursor'); + cursorStyle && sector.attr('cursor', cursorStyle); + this._updateLabel(seriesModel, data, idx); + sector.ensureState('emphasis').shape = extend({ + r: layout.r + (emphasisModel.get('scale') ? emphasisModel.get('scaleSize') || 0 : 0) + }, getSectorCornerRadius(emphasisModel.getModel('itemStyle'), layout)); + extend(sector.ensureState('select'), { + x: dx, + y: dy, + shape: getSectorCornerRadius(itemModel.getModel(['select', 'itemStyle']), layout) + }); + extend(sector.ensureState('blur'), { + shape: getSectorCornerRadius(itemModel.getModel(['blur', 'itemStyle']), layout) + }); + var labelLine = sector.getTextGuideLine(); + var labelText = sector.getTextContent(); + labelLine && extend(labelLine.ensureState('select'), { + x: dx, + y: dy + }); + // TODO: needs dx, dy in zrender? + extend(labelText.ensureState('select'), { + x: dx, + y: dy + }); + toggleHoverEmphasis(this, emphasisModel.get('focus'), emphasisModel.get('blurScope'), emphasisModel.get('disabled')); + }; + PiePiece.prototype._updateLabel = function (seriesModel, data, idx) { + var sector = this; + var itemModel = data.getItemModel(idx); + var labelLineModel = itemModel.getModel('labelLine'); + var style = data.getItemVisual(idx, 'style'); + var visualColor = style && style.fill; + var visualOpacity = style && style.opacity; + setLabelStyle(sector, getLabelStatesModels(itemModel), { + labelFetcher: data.hostModel, + labelDataIndex: idx, + inheritColor: visualColor, + defaultOpacity: visualOpacity, + defaultText: seriesModel.getFormattedLabel(idx, 'normal') || data.getName(idx) + }); + var labelText = sector.getTextContent(); + // Set textConfig on sector. + sector.setTextConfig({ + // reset position, rotation + position: null, + rotation: null + }); + // Make sure update style on labelText after setLabelStyle. + // Because setLabelStyle will replace a new style on it. + labelText.attr({ + z2: 10 + }); + var labelPosition = seriesModel.get(['label', 'position']); + if (labelPosition !== 'outside' && labelPosition !== 'outer') { + sector.removeTextGuideLine(); + } else { + var polyline = this.getTextGuideLine(); + if (!polyline) { + polyline = new Polyline(); + this.setTextGuideLine(polyline); + } + // Default use item visual color + setLabelLineStyle(this, getLabelLineStatesModels(itemModel), { + stroke: visualColor, + opacity: retrieve3(labelLineModel.get(['lineStyle', 'opacity']), visualOpacity, 1) + }); + } + }; + return PiePiece; + }(Sector); + // Pie view + var PieView = /** @class */function (_super) { + __extends(PieView, _super); + function PieView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.ignoreLabelLineUpdate = true; + return _this; + } + PieView.prototype.render = function (seriesModel, ecModel, api, payload) { + var data = seriesModel.getData(); + var oldData = this._data; + var group = this.group; + var startAngle; + // First render + if (!oldData && data.count() > 0) { + var shape = data.getItemLayout(0); + for (var s = 1; isNaN(shape && shape.startAngle) && s < data.count(); ++s) { + shape = data.getItemLayout(s); + } + if (shape) { + startAngle = shape.startAngle; + } + } + // remove empty-circle if it exists + if (this._emptyCircleSector) { + group.remove(this._emptyCircleSector); + } + // when all data are filtered, show lightgray empty circle + if (data.count() === 0 && seriesModel.get('showEmptyCircle')) { + var sector = new Sector({ + shape: getBasicPieLayout(seriesModel, api) + }); + sector.useStyle(seriesModel.getModel('emptyCircleStyle').getItemStyle()); + this._emptyCircleSector = sector; + group.add(sector); + } + data.diff(oldData).add(function (idx) { + var piePiece = new PiePiece(data, idx, startAngle); + data.setItemGraphicEl(idx, piePiece); + group.add(piePiece); + }).update(function (newIdx, oldIdx) { + var piePiece = oldData.getItemGraphicEl(oldIdx); + piePiece.updateData(data, newIdx, startAngle); + piePiece.off('click'); + group.add(piePiece); + data.setItemGraphicEl(newIdx, piePiece); + }).remove(function (idx) { + var piePiece = oldData.getItemGraphicEl(idx); + removeElementWithFadeOut(piePiece, seriesModel, idx); + }).execute(); + pieLabelLayout(seriesModel); + // Always use initial animation. + if (seriesModel.get('animationTypeUpdate') !== 'expansion') { + this._data = data; + } + }; + PieView.prototype.dispose = function () {}; + PieView.prototype.containPoint = function (point, seriesModel) { + var data = seriesModel.getData(); + var itemLayout = data.getItemLayout(0); + if (itemLayout) { + var dx = point[0] - itemLayout.cx; + var dy = point[1] - itemLayout.cy; + var radius = Math.sqrt(dx * dx + dy * dy); + return radius <= itemLayout.r && radius >= itemLayout.r0; + } + }; + PieView.type = 'pie'; + return PieView; + }(ChartView); + + /** + * [Usage]: + * (1) + * createListSimply(seriesModel, ['value']); + * (2) + * createListSimply(seriesModel, { + * coordDimensions: ['value'], + * dimensionsCount: 5 + * }); + */ + function createSeriesDataSimply(seriesModel, opt, nameList) { + opt = isArray(opt) && { + coordDimensions: opt + } || extend({ + encodeDefine: seriesModel.getEncode() + }, opt); + var source = seriesModel.getSource(); + var dimensions = prepareSeriesDataSchema(source, opt).dimensions; + var list = new SeriesData(dimensions, seriesModel); + list.initData(source, nameList); + return list; + } + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + + /** + * AUTO-GENERATED FILE. DO NOT MODIFY. + */ + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + /** + * LegendVisualProvider is an bridge that pick encoded color from data and + * provide to the legend component. + */ + var LegendVisualProvider = /** @class */function () { + function LegendVisualProvider( + // Function to get data after filtered. It stores all the encoding info + getDataWithEncodedVisual, + // Function to get raw data before filtered. + getRawData) { + this._getDataWithEncodedVisual = getDataWithEncodedVisual; + this._getRawData = getRawData; + } + LegendVisualProvider.prototype.getAllNames = function () { + var rawData = this._getRawData(); + // We find the name from the raw data. In case it's filtered by the legend component. + // Normally, the name can be found in rawData, but can't be found in filtered data will display as gray. + return rawData.mapArray(rawData.getName); + }; + LegendVisualProvider.prototype.containName = function (name) { + var rawData = this._getRawData(); + return rawData.indexOfName(name) >= 0; + }; + LegendVisualProvider.prototype.indexOfName = function (name) { + // Only get data when necessary. + // Because LegendVisualProvider constructor may be new in the stage that data is not prepared yet. + // Invoking Series#getData immediately will throw an error. + var dataWithEncodedVisual = this._getDataWithEncodedVisual(); + return dataWithEncodedVisual.indexOfName(name); + }; + LegendVisualProvider.prototype.getItemVisual = function (dataIndex, key) { + // Get encoded visual properties from final filtered data. + var dataWithEncodedVisual = this._getDataWithEncodedVisual(); + return dataWithEncodedVisual.getItemVisual(dataIndex, key); + }; + return LegendVisualProvider; + }(); + + var innerData = makeInner(); + var PieSeriesModel = /** @class */function (_super) { + __extends(PieSeriesModel, _super); + function PieSeriesModel() { + return _super !== null && _super.apply(this, arguments) || this; + } + /** + * @overwrite + */ + PieSeriesModel.prototype.init = function (option) { + _super.prototype.init.apply(this, arguments); + // Enable legend selection for each data item + // Use a function instead of direct access because data reference may changed + this.legendVisualProvider = new LegendVisualProvider(bind(this.getData, this), bind(this.getRawData, this)); + this._defaultLabelLine(option); + }; + /** + * @overwrite + */ + PieSeriesModel.prototype.mergeOption = function () { + _super.prototype.mergeOption.apply(this, arguments); + }; + /** + * @overwrite + */ + PieSeriesModel.prototype.getInitialData = function () { + return createSeriesDataSimply(this, { + coordDimensions: ['value'], + encodeDefaulter: curry(makeSeriesEncodeForNameBased, this) + }); + }; + /** + * @overwrite + */ + PieSeriesModel.prototype.getDataParams = function (dataIndex) { + var data = this.getData(); + // update seats when data is changed + var dataInner = innerData(data); + var seats = dataInner.seats; + if (!seats) { + var valueList_1 = []; + data.each(data.mapDimension('value'), function (value) { + valueList_1.push(value); + }); + seats = dataInner.seats = getPercentSeats(valueList_1, data.hostModel.get('percentPrecision')); + } + var params = _super.prototype.getDataParams.call(this, dataIndex); + // seats may be empty when sum is 0 + params.percent = seats[dataIndex] || 0; + params.$vars.push('percent'); + return params; + }; + PieSeriesModel.prototype._defaultLabelLine = function (option) { + // Extend labelLine emphasis + defaultEmphasis(option, 'labelLine', ['show']); + var labelLineNormalOpt = option.labelLine; + var labelLineEmphasisOpt = option.emphasis.labelLine; + // Not show label line if `label.normal.show = false` + labelLineNormalOpt.show = labelLineNormalOpt.show && option.label.show; + labelLineEmphasisOpt.show = labelLineEmphasisOpt.show && option.emphasis.label.show; + }; + PieSeriesModel.type = 'series.pie'; + PieSeriesModel.defaultOption = { + // zlevel: 0, + z: 2, + legendHoverLink: true, + colorBy: 'data', + // 默认全局居中 + center: ['50%', '50%'], + radius: [0, '75%'], + // 默认顺时针 + clockwise: true, + startAngle: 90, + endAngle: 'auto', + padAngle: 0, + // 最小角度改为0 + minAngle: 0, + // If the angle of a sector less than `minShowLabelAngle`, + // the label will not be displayed. + minShowLabelAngle: 0, + // 选中时扇区偏移量 + selectedOffset: 10, + // 选择模式,默认关闭,可选single,multiple + // selectedMode: false, + // 南丁格尔玫瑰图模式,'radius'(半径) | 'area'(面积) + // roseType: null, + percentPrecision: 2, + // If still show when all data zero. + stillShowZeroSum: true, + // cursor: null, + left: 0, + top: 0, + right: 0, + bottom: 0, + width: null, + height: null, + label: { + // color: 'inherit', + // If rotate around circle + rotate: 0, + show: true, + overflow: 'truncate', + // 'outer', 'inside', 'center' + position: 'outer', + // 'none', 'labelLine', 'edge'. Works only when position is 'outer' + alignTo: 'none', + // Closest distance between label and chart edge. + // Works only position is 'outer' and alignTo is 'edge'. + edgeDistance: '25%', + // Works only position is 'outer' and alignTo is not 'edge'. + bleedMargin: 10, + // Distance between text and label line. + distanceToLabelLine: 5 + // formatter: 标签文本格式器,同 tooltip.formatter,不支持异步回调 + // 默认使用全局文本样式,详见 textStyle + // distance: 当position为inner时有效,为label位置到圆心的距离与圆半径(环状图为内外半径和)的比例系数 + }, + + // Enabled when label.normal.position is 'outer' + labelLine: { + show: true, + // 引导线两段中的第一段长度 + length: 15, + // 引导线两段中的第二段长度 + length2: 15, + smooth: false, + minTurnAngle: 90, + maxSurfaceAngle: 90, + lineStyle: { + // color: 各异, + width: 1, + type: 'solid' + } + }, + itemStyle: { + borderWidth: 1, + borderJoin: 'round' + }, + showEmptyCircle: true, + emptyCircleStyle: { + color: 'lightgray', + opacity: 1 + }, + labelLayout: { + // Hide the overlapped label. + hideOverlap: true + }, + emphasis: { + scale: true, + scaleSize: 5 + }, + // If use strategy to avoid label overlapping + avoidLabelOverlap: true, + // Animation type. Valid values: expansion, scale + animationType: 'expansion', + animationDuration: 1000, + // Animation type when update. Valid values: transition, expansion + animationTypeUpdate: 'transition', + animationEasingUpdate: 'cubicInOut', + animationDurationUpdate: 500, + animationEasing: 'cubicInOut' + }; + return PieSeriesModel; + }(SeriesModel); + + function negativeDataFilter(seriesType) { + return { + seriesType: seriesType, + reset: function (seriesModel, ecModel) { + var data = seriesModel.getData(); + data.filterSelf(function (idx) { + // handle negative value condition + var valueDim = data.mapDimension('value'); + var curValue = data.get(valueDim, idx); + if (isNumber(curValue) && !isNaN(curValue) && curValue < 0) { + return false; + } + return true; + }); + } + }; + } + + function install$4(registers) { + registers.registerChartView(PieView); + registers.registerSeriesModel(PieSeriesModel); + createLegacyDataSelectAction('pie', registers.registerAction); + registers.registerLayout(curry(pieLayout, 'pie')); + registers.registerProcessor(dataFilter('pie')); + registers.registerProcessor(negativeDataFilter('pie')); + } + + var ScatterSeriesModel = /** @class */function (_super) { + __extends(ScatterSeriesModel, _super); + function ScatterSeriesModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = ScatterSeriesModel.type; + _this.hasSymbolVisual = true; + return _this; + } + ScatterSeriesModel.prototype.getInitialData = function (option, ecModel) { + return createSeriesData(null, this, { + useEncodeDefaulter: true + }); + }; + ScatterSeriesModel.prototype.getProgressive = function () { + var progressive = this.option.progressive; + if (progressive == null) { + // PENDING + return this.option.large ? 5e3 : this.get('progressive'); + } + return progressive; + }; + ScatterSeriesModel.prototype.getProgressiveThreshold = function () { + var progressiveThreshold = this.option.progressiveThreshold; + if (progressiveThreshold == null) { + // PENDING + return this.option.large ? 1e4 : this.get('progressiveThreshold'); + } + return progressiveThreshold; + }; + ScatterSeriesModel.prototype.brushSelector = function (dataIndex, data, selectors) { + return selectors.point(data.getItemLayout(dataIndex)); + }; + ScatterSeriesModel.prototype.getZLevelKey = function () { + // Each progressive series has individual key. + return this.getData().count() > this.getProgressiveThreshold() ? this.id : ''; + }; + ScatterSeriesModel.type = 'series.scatter'; + ScatterSeriesModel.dependencies = ['grid', 'polar', 'geo', 'singleAxis', 'calendar']; + ScatterSeriesModel.defaultOption = { + coordinateSystem: 'cartesian2d', + // zlevel: 0, + z: 2, + legendHoverLink: true, + symbolSize: 10, + // symbolRotate: null, // 图形旋转控制 + large: false, + // Available when large is true + largeThreshold: 2000, + // cursor: null, + itemStyle: { + opacity: 0.8 + // color: 各异 + }, + + emphasis: { + scale: true + }, + // If clip the overflow graphics + // Works on cartesian / polar series + clip: true, + select: { + itemStyle: { + borderColor: '#212121' + } + }, + universalTransition: { + divideShape: 'clone' + } + // progressive: null + }; + + return ScatterSeriesModel; + }(SeriesModel); + + var BOOST_SIZE_THRESHOLD = 4; + var LargeSymbolPathShape = /** @class */function () { + function LargeSymbolPathShape() {} + return LargeSymbolPathShape; + }(); + var LargeSymbolPath = /** @class */function (_super) { + __extends(LargeSymbolPath, _super); + function LargeSymbolPath(opts) { + var _this = _super.call(this, opts) || this; + _this._off = 0; + _this.hoverDataIdx = -1; + return _this; + } + LargeSymbolPath.prototype.getDefaultShape = function () { + return new LargeSymbolPathShape(); + }; + LargeSymbolPath.prototype.reset = function () { + this.notClear = false; + this._off = 0; + }; + LargeSymbolPath.prototype.buildPath = function (path, shape) { + var points = shape.points; + var size = shape.size; + var symbolProxy = this.symbolProxy; + var symbolProxyShape = symbolProxy.shape; + var ctx = path.getContext ? path.getContext() : path; + var canBoost = ctx && size[0] < BOOST_SIZE_THRESHOLD; + var softClipShape = this.softClipShape; + var i; + // Do draw in afterBrush. + if (canBoost) { + this._ctx = ctx; + return; + } + this._ctx = null; + for (i = this._off; i < points.length;) { + var x = points[i++]; + var y = points[i++]; + if (isNaN(x) || isNaN(y)) { + continue; + } + if (softClipShape && !softClipShape.contain(x, y)) { + continue; + } + symbolProxyShape.x = x - size[0] / 2; + symbolProxyShape.y = y - size[1] / 2; + symbolProxyShape.width = size[0]; + symbolProxyShape.height = size[1]; + symbolProxy.buildPath(path, symbolProxyShape, true); + } + if (this.incremental) { + this._off = i; + this.notClear = true; + } + }; + LargeSymbolPath.prototype.afterBrush = function () { + var shape = this.shape; + var points = shape.points; + var size = shape.size; + var ctx = this._ctx; + var softClipShape = this.softClipShape; + var i; + if (!ctx) { + return; + } + // PENDING If style or other canvas status changed? + for (i = this._off; i < points.length;) { + var x = points[i++]; + var y = points[i++]; + if (isNaN(x) || isNaN(y)) { + continue; + } + if (softClipShape && !softClipShape.contain(x, y)) { + continue; + } + // fillRect is faster than building a rect path and draw. + // And it support light globalCompositeOperation. + ctx.fillRect(x - size[0] / 2, y - size[1] / 2, size[0], size[1]); + } + if (this.incremental) { + this._off = i; + this.notClear = true; + } + }; + LargeSymbolPath.prototype.findDataIndex = function (x, y) { + // TODO ??? + // Consider transform + var shape = this.shape; + var points = shape.points; + var size = shape.size; + var w = Math.max(size[0], 4); + var h = Math.max(size[1], 4); + // Not consider transform + // Treat each element as a rect + // top down traverse + for (var idx = points.length / 2 - 1; idx >= 0; idx--) { + var i = idx * 2; + var x0 = points[i] - w / 2; + var y0 = points[i + 1] - h / 2; + if (x >= x0 && y >= y0 && x <= x0 + w && y <= y0 + h) { + return idx; + } + } + return -1; + }; + LargeSymbolPath.prototype.contain = function (x, y) { + var localPos = this.transformCoordToLocal(x, y); + var rect = this.getBoundingRect(); + x = localPos[0]; + y = localPos[1]; + if (rect.contain(x, y)) { + // Cache found data index. + var dataIdx = this.hoverDataIdx = this.findDataIndex(x, y); + return dataIdx >= 0; + } + this.hoverDataIdx = -1; + return false; + }; + LargeSymbolPath.prototype.getBoundingRect = function () { + // Ignore stroke for large symbol draw. + var rect = this._rect; + if (!rect) { + var shape = this.shape; + var points = shape.points; + var size = shape.size; + var w = size[0]; + var h = size[1]; + var minX = Infinity; + var minY = Infinity; + var maxX = -Infinity; + var maxY = -Infinity; + for (var i = 0; i < points.length;) { + var x = points[i++]; + var y = points[i++]; + minX = Math.min(x, minX); + maxX = Math.max(x, maxX); + minY = Math.min(y, minY); + maxY = Math.max(y, maxY); + } + rect = this._rect = new BoundingRect(minX - w / 2, minY - h / 2, maxX - minX + w, maxY - minY + h); + } + return rect; + }; + return LargeSymbolPath; + }(Path); + var LargeSymbolDraw = /** @class */function () { + function LargeSymbolDraw() { + this.group = new Group(); + } + /** + * Update symbols draw by new data + */ + LargeSymbolDraw.prototype.updateData = function (data, opt) { + this._clear(); + var symbolEl = this._create(); + symbolEl.setShape({ + points: data.getLayout('points') + }); + this._setCommon(symbolEl, data, opt); + }; + LargeSymbolDraw.prototype.updateLayout = function (data) { + var points = data.getLayout('points'); + this.group.eachChild(function (child) { + if (child.startIndex != null) { + var len = (child.endIndex - child.startIndex) * 2; + var byteOffset = child.startIndex * 4 * 2; + points = new Float32Array(points.buffer, byteOffset, len); + } + child.setShape('points', points); + // Reset draw cursor. + child.reset(); + }); + }; + LargeSymbolDraw.prototype.incrementalPrepareUpdate = function (data) { + this._clear(); + }; + LargeSymbolDraw.prototype.incrementalUpdate = function (taskParams, data, opt) { + var lastAdded = this._newAdded[0]; + var points = data.getLayout('points'); + var oldPoints = lastAdded && lastAdded.shape.points; + // Merging the exists. Each element has 1e4 points. + // Consider the performance balance between too much elements and too much points in one shape(may affect hover optimization) + if (oldPoints && oldPoints.length < 2e4) { + var oldLen = oldPoints.length; + var newPoints = new Float32Array(oldLen + points.length); + // Concat two array + newPoints.set(oldPoints); + newPoints.set(points, oldLen); + // Update endIndex + lastAdded.endIndex = taskParams.end; + lastAdded.setShape({ + points: newPoints + }); + } else { + // Clear + this._newAdded = []; + var symbolEl = this._create(); + symbolEl.startIndex = taskParams.start; + symbolEl.endIndex = taskParams.end; + symbolEl.incremental = true; + symbolEl.setShape({ + points: points + }); + this._setCommon(symbolEl, data, opt); + } + }; + LargeSymbolDraw.prototype.eachRendered = function (cb) { + this._newAdded[0] && cb(this._newAdded[0]); + }; + LargeSymbolDraw.prototype._create = function () { + var symbolEl = new LargeSymbolPath({ + cursor: 'default' + }); + symbolEl.ignoreCoarsePointer = true; + this.group.add(symbolEl); + this._newAdded.push(symbolEl); + return symbolEl; + }; + LargeSymbolDraw.prototype._setCommon = function (symbolEl, data, opt) { + var hostModel = data.hostModel; + opt = opt || {}; + var size = data.getVisual('symbolSize'); + symbolEl.setShape('size', size instanceof Array ? size : [size, size]); + symbolEl.softClipShape = opt.clipShape || null; + // Create symbolProxy to build path for each data + symbolEl.symbolProxy = createSymbol(data.getVisual('symbol'), 0, 0, 0, 0); + // Use symbolProxy setColor method + symbolEl.setColor = symbolEl.symbolProxy.setColor; + var extrudeShadow = symbolEl.shape.size[0] < BOOST_SIZE_THRESHOLD; + symbolEl.useStyle( + // Draw shadow when doing fillRect is extremely slow. + hostModel.getModel('itemStyle').getItemStyle(extrudeShadow ? ['color', 'shadowBlur', 'shadowColor'] : ['color'])); + var globalStyle = data.getVisual('style'); + var visualColor = globalStyle && globalStyle.fill; + if (visualColor) { + symbolEl.setColor(visualColor); + } + var ecData = getECData(symbolEl); + // Enable tooltip + // PENDING May have performance issue when path is extremely large + ecData.seriesIndex = hostModel.seriesIndex; + symbolEl.on('mousemove', function (e) { + ecData.dataIndex = null; + var dataIndex = symbolEl.hoverDataIdx; + if (dataIndex >= 0) { + // Provide dataIndex for tooltip + ecData.dataIndex = dataIndex + (symbolEl.startIndex || 0); + } + }); + }; + LargeSymbolDraw.prototype.remove = function () { + this._clear(); + }; + LargeSymbolDraw.prototype._clear = function () { + this._newAdded = []; + this.group.removeAll(); + }; + return LargeSymbolDraw; + }(); + + var ScatterView = /** @class */function (_super) { + __extends(ScatterView, _super); + function ScatterView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = ScatterView.type; + return _this; + } + ScatterView.prototype.render = function (seriesModel, ecModel, api) { + var data = seriesModel.getData(); + var symbolDraw = this._updateSymbolDraw(data, seriesModel); + symbolDraw.updateData(data, { + // TODO + // If this parameter should be a shape or a bounding volume + // shape will be more general. + // But bounding volume like bounding rect will be much faster in the contain calculation + clipShape: this._getClipShape(seriesModel) + }); + this._finished = true; + }; + ScatterView.prototype.incrementalPrepareRender = function (seriesModel, ecModel, api) { + var data = seriesModel.getData(); + var symbolDraw = this._updateSymbolDraw(data, seriesModel); + symbolDraw.incrementalPrepareUpdate(data); + this._finished = false; + }; + ScatterView.prototype.incrementalRender = function (taskParams, seriesModel, ecModel) { + this._symbolDraw.incrementalUpdate(taskParams, seriesModel.getData(), { + clipShape: this._getClipShape(seriesModel) + }); + this._finished = taskParams.end === seriesModel.getData().count(); + }; + ScatterView.prototype.updateTransform = function (seriesModel, ecModel, api) { + var data = seriesModel.getData(); + // Must mark group dirty and make sure the incremental layer will be cleared + // PENDING + this.group.dirty(); + if (!this._finished || data.count() > 1e4) { + return { + update: true + }; + } else { + var res = pointsLayout('').reset(seriesModel, ecModel, api); + if (res.progress) { + res.progress({ + start: 0, + end: data.count(), + count: data.count() + }, data); + } + this._symbolDraw.updateLayout(data); + } + }; + ScatterView.prototype.eachRendered = function (cb) { + this._symbolDraw && this._symbolDraw.eachRendered(cb); + }; + ScatterView.prototype._getClipShape = function (seriesModel) { + if (!seriesModel.get('clip', true)) { + return; + } + var coordSys = seriesModel.coordinateSystem; + // PENDING make `0.1` configurable, for example, `clipTolerance`? + return coordSys && coordSys.getArea && coordSys.getArea(.1); + }; + ScatterView.prototype._updateSymbolDraw = function (data, seriesModel) { + var symbolDraw = this._symbolDraw; + var pipelineContext = seriesModel.pipelineContext; + var isLargeDraw = pipelineContext.large; + if (!symbolDraw || isLargeDraw !== this._isLargeDraw) { + symbolDraw && symbolDraw.remove(); + symbolDraw = this._symbolDraw = isLargeDraw ? new LargeSymbolDraw() : new SymbolDraw(); + this._isLargeDraw = isLargeDraw; + this.group.removeAll(); + } + this.group.add(symbolDraw.group); + return symbolDraw; + }; + ScatterView.prototype.remove = function (ecModel, api) { + this._symbolDraw && this._symbolDraw.remove(true); + this._symbolDraw = null; + }; + ScatterView.prototype.dispose = function () {}; + ScatterView.type = 'scatter'; + return ScatterView; + }(ChartView); + + var GridModel = /** @class */function (_super) { + __extends(GridModel, _super); + function GridModel() { + return _super !== null && _super.apply(this, arguments) || this; + } + GridModel.type = 'grid'; + GridModel.dependencies = ['xAxis', 'yAxis']; + GridModel.layoutMode = 'box'; + GridModel.defaultOption = { + show: false, + // zlevel: 0, + z: 0, + left: '10%', + top: 60, + right: '10%', + bottom: 70, + // If grid size contain label + containLabel: false, + // width: {totalWidth} - left - right, + // height: {totalHeight} - top - bottom, + backgroundColor: 'rgba(0,0,0,0)', + borderWidth: 1, + borderColor: '#ccc' + }; + return GridModel; + }(ComponentModel); + + var CartesianAxisModel = /** @class */function (_super) { + __extends(CartesianAxisModel, _super); + function CartesianAxisModel() { + return _super !== null && _super.apply(this, arguments) || this; + } + CartesianAxisModel.prototype.getCoordSysModel = function () { + return this.getReferringComponents('grid', SINGLE_REFERRING).models[0]; + }; + CartesianAxisModel.type = 'cartesian2dAxis'; + return CartesianAxisModel; + }(ComponentModel); + mixin(CartesianAxisModel, AxisModelCommonMixin); + + var defaultOption = { + show: true, + // zlevel: 0, + z: 0, + // Inverse the axis. + inverse: false, + // Axis name displayed. + name: '', + // 'start' | 'middle' | 'end' + nameLocation: 'end', + // By degree. By default auto rotate by nameLocation. + nameRotate: null, + nameTruncate: { + maxWidth: null, + ellipsis: '...', + placeholder: '.' + }, + // Use global text style by default. + nameTextStyle: {}, + // The gap between axisName and axisLine. + nameGap: 15, + // Default `false` to support tooltip. + silent: false, + // Default `false` to avoid legacy user event listener fail. + triggerEvent: false, + tooltip: { + show: false + }, + axisPointer: {}, + axisLine: { + show: true, + onZero: true, + onZeroAxisIndex: null, + lineStyle: { + color: '#6E7079', + width: 1, + type: 'solid' + }, + // The arrow at both ends the the axis. + symbol: ['none', 'none'], + symbolSize: [10, 15] + }, + axisTick: { + show: true, + // Whether axisTick is inside the grid or outside the grid. + inside: false, + // The length of axisTick. + length: 5, + lineStyle: { + width: 1 + } + }, + axisLabel: { + show: true, + // Whether axisLabel is inside the grid or outside the grid. + inside: false, + rotate: 0, + // true | false | null/undefined (auto) + showMinLabel: null, + // true | false | null/undefined (auto) + showMaxLabel: null, + margin: 8, + // formatter: null, + fontSize: 12 + }, + splitLine: { + show: true, + lineStyle: { + color: ['#E0E6F1'], + width: 1, + type: 'solid' + } + }, + splitArea: { + show: false, + areaStyle: { + color: ['rgba(250,250,250,0.2)', 'rgba(210,219,238,0.2)'] + } + } + }; + var categoryAxis = merge({ + // The gap at both ends of the axis. For categoryAxis, boolean. + boundaryGap: true, + // Set false to faster category collection. + deduplication: null, + // splitArea: { + // show: false + // }, + splitLine: { + show: false + }, + axisTick: { + // If tick is align with label when boundaryGap is true + alignWithLabel: false, + interval: 'auto' + }, + axisLabel: { + interval: 'auto' + } + }, defaultOption); + var valueAxis = merge({ + boundaryGap: [0, 0], + axisLine: { + // Not shown when other axis is categoryAxis in cartesian + show: 'auto' + }, + axisTick: { + // Not shown when other axis is categoryAxis in cartesian + show: 'auto' + }, + // TODO + // min/max: [30, datamin, 60] or [20, datamin] or [datamin, 60] + splitNumber: 5, + minorTick: { + // Minor tick, not available for cateogry axis. + show: false, + // Split number of minor ticks. The value should be in range of (0, 100) + splitNumber: 5, + // Length of minor tick + length: 3, + // Line style + lineStyle: { + // Default to be same with axisTick + } + }, + minorSplitLine: { + show: false, + lineStyle: { + color: '#F4F7FD', + width: 1 + } + } + }, defaultOption); + var timeAxis = merge({ + splitNumber: 6, + axisLabel: { + // To eliminate labels that are not nice + showMinLabel: false, + showMaxLabel: false, + rich: { + primary: { + fontWeight: 'bold' + } + } + }, + splitLine: { + show: false + } + }, valueAxis); + var logAxis = defaults({ + logBase: 10 + }, valueAxis); + var axisDefault = { + category: categoryAxis, + value: valueAxis, + time: timeAxis, + log: logAxis + }; + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + + /** + * AUTO-GENERATED FILE. DO NOT MODIFY. + */ + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + var AXIS_TYPES = { + value: 1, + category: 1, + time: 1, + log: 1 + }; + + /** + * Generate sub axis model class + * @param axisName 'x' 'y' 'radius' 'angle' 'parallel' ... + */ + function axisModelCreator(registers, axisName, BaseAxisModelClass, extraDefaultOption) { + each(AXIS_TYPES, function (v, axisType) { + var defaultOption = merge(merge({}, axisDefault[axisType], true), extraDefaultOption, true); + var AxisModel = /** @class */function (_super) { + __extends(AxisModel, _super); + function AxisModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = axisName + 'Axis.' + axisType; + return _this; + } + AxisModel.prototype.mergeDefaultAndTheme = function (option, ecModel) { + var layoutMode = fetchLayoutMode(this); + var inputPositionParams = layoutMode ? getLayoutParams(option) : {}; + var themeModel = ecModel.getTheme(); + merge(option, themeModel.get(axisType + 'Axis')); + merge(option, this.getDefaultOption()); + option.type = getAxisType(option); + if (layoutMode) { + mergeLayoutParam(option, inputPositionParams, layoutMode); + } + }; + AxisModel.prototype.optionUpdated = function () { + var thisOption = this.option; + if (thisOption.type === 'category') { + this.__ordinalMeta = OrdinalMeta.createByAxisModel(this); + } + }; + /** + * Should not be called before all of 'getInitailData' finished. + * Because categories are collected during initializing data. + */ + AxisModel.prototype.getCategories = function (rawData) { + var option = this.option; + // FIXME + // warning if called before all of 'getInitailData' finished. + if (option.type === 'category') { + if (rawData) { + return option.data; + } + return this.__ordinalMeta.categories; + } + }; + AxisModel.prototype.getOrdinalMeta = function () { + return this.__ordinalMeta; + }; + AxisModel.type = axisName + 'Axis.' + axisType; + AxisModel.defaultOption = defaultOption; + return AxisModel; + }(BaseAxisModelClass); + registers.registerComponentModel(AxisModel); + }); + registers.registerSubTypeDefaulter(axisName + 'Axis', getAxisType); + } + function getAxisType(option) { + // Default axis with data is category axis + return option.type || (option.data ? 'category' : 'value'); + } + + var Cartesian = /** @class */function () { + function Cartesian(name) { + this.type = 'cartesian'; + this._dimList = []; + this._axes = {}; + this.name = name || ''; + } + Cartesian.prototype.getAxis = function (dim) { + return this._axes[dim]; + }; + Cartesian.prototype.getAxes = function () { + return map(this._dimList, function (dim) { + return this._axes[dim]; + }, this); + }; + Cartesian.prototype.getAxesByScale = function (scaleType) { + scaleType = scaleType.toLowerCase(); + return filter(this.getAxes(), function (axis) { + return axis.scale.type === scaleType; + }); + }; + Cartesian.prototype.addAxis = function (axis) { + var dim = axis.dim; + this._axes[dim] = axis; + this._dimList.push(dim); + }; + return Cartesian; + }(); + + var cartesian2DDimensions = ['x', 'y']; + function canCalculateAffineTransform(scale) { + return scale.type === 'interval' || scale.type === 'time'; + } + var Cartesian2D = /** @class */function (_super) { + __extends(Cartesian2D, _super); + function Cartesian2D() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = 'cartesian2d'; + _this.dimensions = cartesian2DDimensions; + return _this; + } + /** + * Calculate an affine transform matrix if two axes are time or value. + * It's mainly for accelartion on the large time series data. + */ + Cartesian2D.prototype.calcAffineTransform = function () { + this._transform = this._invTransform = null; + var xAxisScale = this.getAxis('x').scale; + var yAxisScale = this.getAxis('y').scale; + if (!canCalculateAffineTransform(xAxisScale) || !canCalculateAffineTransform(yAxisScale)) { + return; + } + var xScaleExtent = xAxisScale.getExtent(); + var yScaleExtent = yAxisScale.getExtent(); + var start = this.dataToPoint([xScaleExtent[0], yScaleExtent[0]]); + var end = this.dataToPoint([xScaleExtent[1], yScaleExtent[1]]); + var xScaleSpan = xScaleExtent[1] - xScaleExtent[0]; + var yScaleSpan = yScaleExtent[1] - yScaleExtent[0]; + if (!xScaleSpan || !yScaleSpan) { + return; + } + // Accelerate data to point calculation on the special large time series data. + var scaleX = (end[0] - start[0]) / xScaleSpan; + var scaleY = (end[1] - start[1]) / yScaleSpan; + var translateX = start[0] - xScaleExtent[0] * scaleX; + var translateY = start[1] - yScaleExtent[0] * scaleY; + var m = this._transform = [scaleX, 0, 0, scaleY, translateX, translateY]; + this._invTransform = invert([], m); + }; + /** + * Base axis will be used on stacking. + */ + Cartesian2D.prototype.getBaseAxis = function () { + return this.getAxesByScale('ordinal')[0] || this.getAxesByScale('time')[0] || this.getAxis('x'); + }; + Cartesian2D.prototype.containPoint = function (point) { + var axisX = this.getAxis('x'); + var axisY = this.getAxis('y'); + return axisX.contain(axisX.toLocalCoord(point[0])) && axisY.contain(axisY.toLocalCoord(point[1])); + }; + Cartesian2D.prototype.containData = function (data) { + return this.getAxis('x').containData(data[0]) && this.getAxis('y').containData(data[1]); + }; + Cartesian2D.prototype.containZone = function (data1, data2) { + var zoneDiag1 = this.dataToPoint(data1); + var zoneDiag2 = this.dataToPoint(data2); + var area = this.getArea(); + var zone = new BoundingRect(zoneDiag1[0], zoneDiag1[1], zoneDiag2[0] - zoneDiag1[0], zoneDiag2[1] - zoneDiag1[1]); + return area.intersect(zone); + }; + Cartesian2D.prototype.dataToPoint = function (data, clamp, out) { + out = out || []; + var xVal = data[0]; + var yVal = data[1]; + // Fast path + if (this._transform + // It's supported that if data is like `[Inifity, 123]`, where only Y pixel calculated. + && xVal != null && isFinite(xVal) && yVal != null && isFinite(yVal)) { + return applyTransform(out, data, this._transform); + } + var xAxis = this.getAxis('x'); + var yAxis = this.getAxis('y'); + out[0] = xAxis.toGlobalCoord(xAxis.dataToCoord(xVal, clamp)); + out[1] = yAxis.toGlobalCoord(yAxis.dataToCoord(yVal, clamp)); + return out; + }; + Cartesian2D.prototype.clampData = function (data, out) { + var xScale = this.getAxis('x').scale; + var yScale = this.getAxis('y').scale; + var xAxisExtent = xScale.getExtent(); + var yAxisExtent = yScale.getExtent(); + var x = xScale.parse(data[0]); + var y = yScale.parse(data[1]); + out = out || []; + out[0] = Math.min(Math.max(Math.min(xAxisExtent[0], xAxisExtent[1]), x), Math.max(xAxisExtent[0], xAxisExtent[1])); + out[1] = Math.min(Math.max(Math.min(yAxisExtent[0], yAxisExtent[1]), y), Math.max(yAxisExtent[0], yAxisExtent[1])); + return out; + }; + Cartesian2D.prototype.pointToData = function (point, clamp) { + var out = []; + if (this._invTransform) { + return applyTransform(out, point, this._invTransform); + } + var xAxis = this.getAxis('x'); + var yAxis = this.getAxis('y'); + out[0] = xAxis.coordToData(xAxis.toLocalCoord(point[0]), clamp); + out[1] = yAxis.coordToData(yAxis.toLocalCoord(point[1]), clamp); + return out; + }; + Cartesian2D.prototype.getOtherAxis = function (axis) { + return this.getAxis(axis.dim === 'x' ? 'y' : 'x'); + }; + /** + * Get rect area of cartesian. + * Area will have a contain function to determine if a point is in the coordinate system. + */ + Cartesian2D.prototype.getArea = function (tolerance) { + tolerance = tolerance || 0; + var xExtent = this.getAxis('x').getGlobalExtent(); + var yExtent = this.getAxis('y').getGlobalExtent(); + var x = Math.min(xExtent[0], xExtent[1]) - tolerance; + var y = Math.min(yExtent[0], yExtent[1]) - tolerance; + var width = Math.max(xExtent[0], xExtent[1]) - x + tolerance; + var height = Math.max(yExtent[0], yExtent[1]) - y + tolerance; + return new BoundingRect(x, y, width, height); + }; + return Cartesian2D; + }(Cartesian); + + var Axis2D = /** @class */function (_super) { + __extends(Axis2D, _super); + function Axis2D(dim, scale, coordExtent, axisType, position) { + var _this = _super.call(this, dim, scale, coordExtent) || this; + /** + * Index of axis, can be used as key + * Injected outside. + */ + _this.index = 0; + _this.type = axisType || 'value'; + _this.position = position || 'bottom'; + return _this; + } + Axis2D.prototype.isHorizontal = function () { + var position = this.position; + return position === 'top' || position === 'bottom'; + }; + /** + * Each item cooresponds to this.getExtent(), which + * means globalExtent[0] may greater than globalExtent[1], + * unless `asc` is input. + * + * @param {boolean} [asc] + * @return {Array.<number>} + */ + Axis2D.prototype.getGlobalExtent = function (asc) { + var ret = this.getExtent(); + ret[0] = this.toGlobalCoord(ret[0]); + ret[1] = this.toGlobalCoord(ret[1]); + asc && ret[0] > ret[1] && ret.reverse(); + return ret; + }; + Axis2D.prototype.pointToData = function (point, clamp) { + return this.coordToData(this.toLocalCoord(point[this.dim === 'x' ? 0 : 1]), clamp); + }; + /** + * Set ordinalSortInfo + * @param info new OrdinalSortInfo + */ + Axis2D.prototype.setCategorySortInfo = function (info) { + if (this.type !== 'category') { + return false; + } + this.model.option.categorySortInfo = info; + this.scale.setSortInfo(info); + }; + return Axis2D; + }(Axis); + + /** + * Can only be called after coordinate system creation stage. + * (Can be called before coordinate system update stage). + */ + function layout$1(gridModel, axisModel, opt) { + opt = opt || {}; + var grid = gridModel.coordinateSystem; + var axis = axisModel.axis; + var layout = {}; + var otherAxisOnZeroOf = axis.getAxesOnZeroOf()[0]; + var rawAxisPosition = axis.position; + var axisPosition = otherAxisOnZeroOf ? 'onZero' : rawAxisPosition; + var axisDim = axis.dim; + var rect = grid.getRect(); + var rectBound = [rect.x, rect.x + rect.width, rect.y, rect.y + rect.height]; + var idx = { + left: 0, + right: 1, + top: 0, + bottom: 1, + onZero: 2 + }; + var axisOffset = axisModel.get('offset') || 0; + var posBound = axisDim === 'x' ? [rectBound[2] - axisOffset, rectBound[3] + axisOffset] : [rectBound[0] - axisOffset, rectBound[1] + axisOffset]; + if (otherAxisOnZeroOf) { + var onZeroCoord = otherAxisOnZeroOf.toGlobalCoord(otherAxisOnZeroOf.dataToCoord(0)); + posBound[idx.onZero] = Math.max(Math.min(onZeroCoord, posBound[1]), posBound[0]); + } + // Axis position + layout.position = [axisDim === 'y' ? posBound[idx[axisPosition]] : rectBound[0], axisDim === 'x' ? posBound[idx[axisPosition]] : rectBound[3]]; + // Axis rotation + layout.rotation = Math.PI / 2 * (axisDim === 'x' ? 0 : 1); + // Tick and label direction, x y is axisDim + var dirMap = { + top: -1, + bottom: 1, + left: -1, + right: 1 + }; + layout.labelDirection = layout.tickDirection = layout.nameDirection = dirMap[rawAxisPosition]; + layout.labelOffset = otherAxisOnZeroOf ? posBound[idx[rawAxisPosition]] - posBound[idx.onZero] : 0; + if (axisModel.get(['axisTick', 'inside'])) { + layout.tickDirection = -layout.tickDirection; + } + if (retrieve(opt.labelInside, axisModel.get(['axisLabel', 'inside']))) { + layout.labelDirection = -layout.labelDirection; + } + // Special label rotation + var labelRotate = axisModel.get(['axisLabel', 'rotate']); + layout.labelRotate = axisPosition === 'top' ? -labelRotate : labelRotate; + // Over splitLine and splitArea + layout.z2 = 1; + return layout; + } + function isCartesian2DSeries(seriesModel) { + return seriesModel.get('coordinateSystem') === 'cartesian2d'; + } + function findAxisModels(seriesModel) { + var axisModelMap = { + xAxisModel: null, + yAxisModel: null + }; + each(axisModelMap, function (v, key) { + var axisType = key.replace(/Model$/, ''); + var axisModel = seriesModel.getReferringComponents(axisType, SINGLE_REFERRING).models[0]; + if ("development" !== 'production') { + if (!axisModel) { + throw new Error(axisType + ' "' + retrieve3(seriesModel.get(axisType + 'Index'), seriesModel.get(axisType + 'Id'), 0) + '" not found'); + } + } + axisModelMap[key] = axisModel; + }); + return axisModelMap; + } + + var mathLog$1 = Math.log; + function alignScaleTicks(scale, axisModel, alignToScale) { + var intervalScaleProto = IntervalScale.prototype; + // NOTE: There is a precondition for log scale here: + // In log scale we store _interval and _extent of exponent value. + // So if we use the method of InternalScale to set/get these data. + // It process the exponent value, which is linear and what we want here. + var alignToTicks = intervalScaleProto.getTicks.call(alignToScale); + var alignToNicedTicks = intervalScaleProto.getTicks.call(alignToScale, true); + var alignToSplitNumber = alignToTicks.length - 1; + var alignToInterval = intervalScaleProto.getInterval.call(alignToScale); + var scaleExtent = getScaleExtent(scale, axisModel); + var rawExtent = scaleExtent.extent; + var isMinFixed = scaleExtent.fixMin; + var isMaxFixed = scaleExtent.fixMax; + if (scale.type === 'log') { + var logBase = mathLog$1(scale.base); + rawExtent = [mathLog$1(rawExtent[0]) / logBase, mathLog$1(rawExtent[1]) / logBase]; + } + scale.setExtent(rawExtent[0], rawExtent[1]); + scale.calcNiceExtent({ + splitNumber: alignToSplitNumber, + fixMin: isMinFixed, + fixMax: isMaxFixed + }); + var extent = intervalScaleProto.getExtent.call(scale); + // Need to update the rawExtent. + // Because value in rawExtent may be not parsed. e.g. 'dataMin', 'dataMax' + if (isMinFixed) { + rawExtent[0] = extent[0]; + } + if (isMaxFixed) { + rawExtent[1] = extent[1]; + } + var interval = intervalScaleProto.getInterval.call(scale); + var min = rawExtent[0]; + var max = rawExtent[1]; + if (isMinFixed && isMaxFixed) { + // User set min, max, divide to get new interval + interval = (max - min) / alignToSplitNumber; + } else if (isMinFixed) { + max = rawExtent[0] + interval * alignToSplitNumber; + // User set min, expand extent on the other side + while (max < rawExtent[1] && isFinite(max) && isFinite(rawExtent[1])) { + interval = increaseInterval(interval); + max = rawExtent[0] + interval * alignToSplitNumber; + } + } else if (isMaxFixed) { + // User set max, expand extent on the other side + min = rawExtent[1] - interval * alignToSplitNumber; + while (min > rawExtent[0] && isFinite(min) && isFinite(rawExtent[0])) { + interval = increaseInterval(interval); + min = rawExtent[1] - interval * alignToSplitNumber; + } + } else { + var nicedSplitNumber = scale.getTicks().length - 1; + if (nicedSplitNumber > alignToSplitNumber) { + interval = increaseInterval(interval); + } + var range = interval * alignToSplitNumber; + max = Math.ceil(rawExtent[1] / interval) * interval; + min = round(max - range); + // Not change the result that crossing zero. + if (min < 0 && rawExtent[0] >= 0) { + min = 0; + max = round(range); + } else if (max > 0 && rawExtent[1] <= 0) { + max = 0; + min = -round(range); + } + } + // Adjust min, max based on the extent of alignTo. When min or max is set in alignTo scale + var t0 = (alignToTicks[0].value - alignToNicedTicks[0].value) / alignToInterval; + var t1 = (alignToTicks[alignToSplitNumber].value - alignToNicedTicks[alignToSplitNumber].value) / alignToInterval; + // NOTE: Must in setExtent -> setInterval -> setNiceExtent order. + intervalScaleProto.setExtent.call(scale, min + interval * t0, max + interval * t1); + intervalScaleProto.setInterval.call(scale, interval); + if (t0 || t1) { + intervalScaleProto.setNiceExtent.call(scale, min + interval, max - interval); + } + if ("development" !== 'production') { + var ticks = intervalScaleProto.getTicks.call(scale); + if (ticks[1] && (!isValueNice(interval) || getPrecisionSafe(ticks[1].value) > getPrecisionSafe(interval))) { + warn( + // eslint-disable-next-line + "The ticks may be not readable when set min: " + axisModel.get('min') + ", max: " + axisModel.get('max') + " and alignTicks: true"); + } + } + } + + var Grid = /** @class */function () { + function Grid(gridModel, ecModel, api) { + // FIXME:TS where used (different from registered type 'cartesian2d')? + this.type = 'grid'; + this._coordsMap = {}; + this._coordsList = []; + this._axesMap = {}; + this._axesList = []; + this.axisPointerEnabled = true; + this.dimensions = cartesian2DDimensions; + this._initCartesian(gridModel, ecModel, api); + this.model = gridModel; + } + Grid.prototype.getRect = function () { + return this._rect; + }; + Grid.prototype.update = function (ecModel, api) { + var axesMap = this._axesMap; + this._updateScale(ecModel, this.model); + function updateAxisTicks(axes) { + var alignTo; + // Axis is added in order of axisIndex. + var axesIndices = keys(axes); + var len = axesIndices.length; + if (!len) { + return; + } + var axisNeedsAlign = []; + // Process once and calculate the ticks for those don't use alignTicks. + for (var i = len - 1; i >= 0; i--) { + var idx = +axesIndices[i]; // Convert to number. + var axis = axes[idx]; + var model = axis.model; + var scale = axis.scale; + if ( + // Only value and log axis without interval support alignTicks. + isIntervalOrLogScale(scale) && model.get('alignTicks') && model.get('interval') == null) { + axisNeedsAlign.push(axis); + } else { + niceScaleExtent(scale, model); + if (isIntervalOrLogScale(scale)) { + // Can only align to interval or log axis. + alignTo = axis; + } + } + } + // All axes has set alignTicks. Pick the first one. + // PENDING. Should we find the axis that both set interval, min, max and align to this one? + if (axisNeedsAlign.length) { + if (!alignTo) { + alignTo = axisNeedsAlign.pop(); + niceScaleExtent(alignTo.scale, alignTo.model); + } + each(axisNeedsAlign, function (axis) { + alignScaleTicks(axis.scale, axis.model, alignTo.scale); + }); + } + } + updateAxisTicks(axesMap.x); + updateAxisTicks(axesMap.y); + // Key: axisDim_axisIndex, value: boolean, whether onZero target. + var onZeroRecords = {}; + each(axesMap.x, function (xAxis) { + fixAxisOnZero(axesMap, 'y', xAxis, onZeroRecords); + }); + each(axesMap.y, function (yAxis) { + fixAxisOnZero(axesMap, 'x', yAxis, onZeroRecords); + }); + // Resize again if containLabel is enabled + // FIXME It may cause getting wrong grid size in data processing stage + this.resize(this.model, api); + }; + /** + * Resize the grid + */ + Grid.prototype.resize = function (gridModel, api, ignoreContainLabel) { + var boxLayoutParams = gridModel.getBoxLayoutParams(); + var isContainLabel = !ignoreContainLabel && gridModel.get('containLabel'); + var gridRect = getLayoutRect(boxLayoutParams, { + width: api.getWidth(), + height: api.getHeight() + }); + this._rect = gridRect; + var axesList = this._axesList; + adjustAxes(); + // Minus label size + if (isContainLabel) { + each(axesList, function (axis) { + if (!axis.model.get(['axisLabel', 'inside'])) { + var labelUnionRect = estimateLabelUnionRect(axis); + if (labelUnionRect) { + var dim = axis.isHorizontal() ? 'height' : 'width'; + var margin = axis.model.get(['axisLabel', 'margin']); + gridRect[dim] -= labelUnionRect[dim] + margin; + if (axis.position === 'top') { + gridRect.y += labelUnionRect.height + margin; + } else if (axis.position === 'left') { + gridRect.x += labelUnionRect.width + margin; + } + } + } + }); + adjustAxes(); + } + each(this._coordsList, function (coord) { + // Calculate affine matrix to accelerate the data to point transform. + // If all the axes scales are time or value. + coord.calcAffineTransform(); + }); + function adjustAxes() { + each(axesList, function (axis) { + var isHorizontal = axis.isHorizontal(); + var extent = isHorizontal ? [0, gridRect.width] : [0, gridRect.height]; + var idx = axis.inverse ? 1 : 0; + axis.setExtent(extent[idx], extent[1 - idx]); + updateAxisTransform(axis, isHorizontal ? gridRect.x : gridRect.y); + }); + } + }; + Grid.prototype.getAxis = function (dim, axisIndex) { + var axesMapOnDim = this._axesMap[dim]; + if (axesMapOnDim != null) { + return axesMapOnDim[axisIndex || 0]; + } + }; + Grid.prototype.getAxes = function () { + return this._axesList.slice(); + }; + Grid.prototype.getCartesian = function (xAxisIndex, yAxisIndex) { + if (xAxisIndex != null && yAxisIndex != null) { + var key = 'x' + xAxisIndex + 'y' + yAxisIndex; + return this._coordsMap[key]; + } + if (isObject(xAxisIndex)) { + yAxisIndex = xAxisIndex.yAxisIndex; + xAxisIndex = xAxisIndex.xAxisIndex; + } + for (var i = 0, coordList = this._coordsList; i < coordList.length; i++) { + if (coordList[i].getAxis('x').index === xAxisIndex || coordList[i].getAxis('y').index === yAxisIndex) { + return coordList[i]; + } + } + }; + Grid.prototype.getCartesians = function () { + return this._coordsList.slice(); + }; + /** + * @implements + */ + Grid.prototype.convertToPixel = function (ecModel, finder, value) { + var target = this._findConvertTarget(finder); + return target.cartesian ? target.cartesian.dataToPoint(value) : target.axis ? target.axis.toGlobalCoord(target.axis.dataToCoord(value)) : null; + }; + /** + * @implements + */ + Grid.prototype.convertFromPixel = function (ecModel, finder, value) { + var target = this._findConvertTarget(finder); + return target.cartesian ? target.cartesian.pointToData(value) : target.axis ? target.axis.coordToData(target.axis.toLocalCoord(value)) : null; + }; + Grid.prototype._findConvertTarget = function (finder) { + var seriesModel = finder.seriesModel; + var xAxisModel = finder.xAxisModel || seriesModel && seriesModel.getReferringComponents('xAxis', SINGLE_REFERRING).models[0]; + var yAxisModel = finder.yAxisModel || seriesModel && seriesModel.getReferringComponents('yAxis', SINGLE_REFERRING).models[0]; + var gridModel = finder.gridModel; + var coordsList = this._coordsList; + var cartesian; + var axis; + if (seriesModel) { + cartesian = seriesModel.coordinateSystem; + indexOf(coordsList, cartesian) < 0 && (cartesian = null); + } else if (xAxisModel && yAxisModel) { + cartesian = this.getCartesian(xAxisModel.componentIndex, yAxisModel.componentIndex); + } else if (xAxisModel) { + axis = this.getAxis('x', xAxisModel.componentIndex); + } else if (yAxisModel) { + axis = this.getAxis('y', yAxisModel.componentIndex); + } + // Lowest priority. + else if (gridModel) { + var grid = gridModel.coordinateSystem; + if (grid === this) { + cartesian = this._coordsList[0]; + } + } + return { + cartesian: cartesian, + axis: axis + }; + }; + /** + * @implements + */ + Grid.prototype.containPoint = function (point) { + var coord = this._coordsList[0]; + if (coord) { + return coord.containPoint(point); + } + }; + /** + * Initialize cartesian coordinate systems + */ + Grid.prototype._initCartesian = function (gridModel, ecModel, api) { + var _this = this; + var grid = this; + var axisPositionUsed = { + left: false, + right: false, + top: false, + bottom: false + }; + var axesMap = { + x: {}, + y: {} + }; + var axesCount = { + x: 0, + y: 0 + }; + // Create axis + ecModel.eachComponent('xAxis', createAxisCreator('x'), this); + ecModel.eachComponent('yAxis', createAxisCreator('y'), this); + if (!axesCount.x || !axesCount.y) { + // Roll back when there no either x or y axis + this._axesMap = {}; + this._axesList = []; + return; + } + this._axesMap = axesMap; + // Create cartesian2d + each(axesMap.x, function (xAxis, xAxisIndex) { + each(axesMap.y, function (yAxis, yAxisIndex) { + var key = 'x' + xAxisIndex + 'y' + yAxisIndex; + var cartesian = new Cartesian2D(key); + cartesian.master = _this; + cartesian.model = gridModel; + _this._coordsMap[key] = cartesian; + _this._coordsList.push(cartesian); + cartesian.addAxis(xAxis); + cartesian.addAxis(yAxis); + }); + }); + function createAxisCreator(dimName) { + return function (axisModel, idx) { + if (!isAxisUsedInTheGrid(axisModel, gridModel)) { + return; + } + var axisPosition = axisModel.get('position'); + if (dimName === 'x') { + // Fix position + if (axisPosition !== 'top' && axisPosition !== 'bottom') { + // Default bottom of X + axisPosition = axisPositionUsed.bottom ? 'top' : 'bottom'; + } + } else { + // Fix position + if (axisPosition !== 'left' && axisPosition !== 'right') { + // Default left of Y + axisPosition = axisPositionUsed.left ? 'right' : 'left'; + } + } + axisPositionUsed[axisPosition] = true; + var axis = new Axis2D(dimName, createScaleByModel(axisModel), [0, 0], axisModel.get('type'), axisPosition); + var isCategory = axis.type === 'category'; + axis.onBand = isCategory && axisModel.get('boundaryGap'); + axis.inverse = axisModel.get('inverse'); + // Inject axis into axisModel + axisModel.axis = axis; + // Inject axisModel into axis + axis.model = axisModel; + // Inject grid info axis + axis.grid = grid; + // Index of axis, can be used as key + axis.index = idx; + grid._axesList.push(axis); + axesMap[dimName][idx] = axis; + axesCount[dimName]++; + }; + } + }; + /** + * Update cartesian properties from series. + */ + Grid.prototype._updateScale = function (ecModel, gridModel) { + // Reset scale + each(this._axesList, function (axis) { + axis.scale.setExtent(Infinity, -Infinity); + if (axis.type === 'category') { + var categorySortInfo = axis.model.get('categorySortInfo'); + axis.scale.setSortInfo(categorySortInfo); + } + }); + ecModel.eachSeries(function (seriesModel) { + if (isCartesian2DSeries(seriesModel)) { + var axesModelMap = findAxisModels(seriesModel); + var xAxisModel = axesModelMap.xAxisModel; + var yAxisModel = axesModelMap.yAxisModel; + if (!isAxisUsedInTheGrid(xAxisModel, gridModel) || !isAxisUsedInTheGrid(yAxisModel, gridModel)) { + return; + } + var cartesian = this.getCartesian(xAxisModel.componentIndex, yAxisModel.componentIndex); + var data = seriesModel.getData(); + var xAxis = cartesian.getAxis('x'); + var yAxis = cartesian.getAxis('y'); + unionExtent(data, xAxis); + unionExtent(data, yAxis); + } + }, this); + function unionExtent(data, axis) { + each(getDataDimensionsOnAxis(data, axis.dim), function (dim) { + axis.scale.unionExtentFromData(data, dim); + }); + } + }; + /** + * @param dim 'x' or 'y' or 'auto' or null/undefined + */ + Grid.prototype.getTooltipAxes = function (dim) { + var baseAxes = []; + var otherAxes = []; + each(this.getCartesians(), function (cartesian) { + var baseAxis = dim != null && dim !== 'auto' ? cartesian.getAxis(dim) : cartesian.getBaseAxis(); + var otherAxis = cartesian.getOtherAxis(baseAxis); + indexOf(baseAxes, baseAxis) < 0 && baseAxes.push(baseAxis); + indexOf(otherAxes, otherAxis) < 0 && otherAxes.push(otherAxis); + }); + return { + baseAxes: baseAxes, + otherAxes: otherAxes + }; + }; + Grid.create = function (ecModel, api) { + var grids = []; + ecModel.eachComponent('grid', function (gridModel, idx) { + var grid = new Grid(gridModel, ecModel, api); + grid.name = 'grid_' + idx; + // dataSampling requires axis extent, so resize + // should be performed in create stage. + grid.resize(gridModel, api, true); + gridModel.coordinateSystem = grid; + grids.push(grid); + }); + // Inject the coordinateSystems into seriesModel + ecModel.eachSeries(function (seriesModel) { + if (!isCartesian2DSeries(seriesModel)) { + return; + } + var axesModelMap = findAxisModels(seriesModel); + var xAxisModel = axesModelMap.xAxisModel; + var yAxisModel = axesModelMap.yAxisModel; + var gridModel = xAxisModel.getCoordSysModel(); + if ("development" !== 'production') { + if (!gridModel) { + throw new Error('Grid "' + retrieve3(xAxisModel.get('gridIndex'), xAxisModel.get('gridId'), 0) + '" not found'); + } + if (xAxisModel.getCoordSysModel() !== yAxisModel.getCoordSysModel()) { + throw new Error('xAxis and yAxis must use the same grid'); + } + } + var grid = gridModel.coordinateSystem; + seriesModel.coordinateSystem = grid.getCartesian(xAxisModel.componentIndex, yAxisModel.componentIndex); + }); + return grids; + }; + // For deciding which dimensions to use when creating list data + Grid.dimensions = cartesian2DDimensions; + return Grid; + }(); + /** + * Check if the axis is used in the specified grid. + */ + function isAxisUsedInTheGrid(axisModel, gridModel) { + return axisModel.getCoordSysModel() === gridModel; + } + function fixAxisOnZero(axesMap, otherAxisDim, axis, + // Key: see `getOnZeroRecordKey` + onZeroRecords) { + axis.getAxesOnZeroOf = function () { + // TODO: onZero of multiple axes. + return otherAxisOnZeroOf ? [otherAxisOnZeroOf] : []; + }; + // onZero can not be enabled in these two situations: + // 1. When any other axis is a category axis. + // 2. When no axis is cross 0 point. + var otherAxes = axesMap[otherAxisDim]; + var otherAxisOnZeroOf; + var axisModel = axis.model; + var onZero = axisModel.get(['axisLine', 'onZero']); + var onZeroAxisIndex = axisModel.get(['axisLine', 'onZeroAxisIndex']); + if (!onZero) { + return; + } + // If target axis is specified. + if (onZeroAxisIndex != null) { + if (canOnZeroToAxis(otherAxes[onZeroAxisIndex])) { + otherAxisOnZeroOf = otherAxes[onZeroAxisIndex]; + } + } else { + // Find the first available other axis. + for (var idx in otherAxes) { + if (otherAxes.hasOwnProperty(idx) && canOnZeroToAxis(otherAxes[idx]) + // Consider that two Y axes on one value axis, + // if both onZero, the two Y axes overlap. + && !onZeroRecords[getOnZeroRecordKey(otherAxes[idx])]) { + otherAxisOnZeroOf = otherAxes[idx]; + break; + } + } + } + if (otherAxisOnZeroOf) { + onZeroRecords[getOnZeroRecordKey(otherAxisOnZeroOf)] = true; + } + function getOnZeroRecordKey(axis) { + return axis.dim + '_' + axis.index; + } + } + function canOnZeroToAxis(axis) { + return axis && axis.type !== 'category' && axis.type !== 'time' && ifAxisCrossZero(axis); + } + function updateAxisTransform(axis, coordBase) { + var axisExtent = axis.getExtent(); + var axisExtentSum = axisExtent[0] + axisExtent[1]; + // Fast transform + axis.toGlobalCoord = axis.dim === 'x' ? function (coord) { + return coord + coordBase; + } : function (coord) { + return axisExtentSum - coord + coordBase; + }; + axis.toLocalCoord = axis.dim === 'x' ? function (coord) { + return coord - coordBase; + } : function (coord) { + return axisExtentSum - coord + coordBase; + }; + } + + var PI$5 = Math.PI; + /** + * A final axis is translated and rotated from a "standard axis". + * So opt.position and opt.rotation is required. + * + * A standard axis is and axis from [0, 0] to [0, axisExtent[1]], + * for example: (0, 0) ------------> (0, 50) + * + * nameDirection or tickDirection or labelDirection is 1 means tick + * or label is below the standard axis, whereas is -1 means above + * the standard axis. labelOffset means offset between label and axis, + * which is useful when 'onZero', where axisLabel is in the grid and + * label in outside grid. + * + * Tips: like always, + * positive rotation represents anticlockwise, and negative rotation + * represents clockwise. + * The direction of position coordinate is the same as the direction + * of screen coordinate. + * + * Do not need to consider axis 'inverse', which is auto processed by + * axis extent. + */ + var AxisBuilder = /** @class */function () { + function AxisBuilder(axisModel, opt) { + this.group = new Group(); + this.opt = opt; + this.axisModel = axisModel; + // Default value + defaults(opt, { + labelOffset: 0, + nameDirection: 1, + tickDirection: 1, + labelDirection: 1, + silent: true, + handleAutoShown: function () { + return true; + } + }); + // FIXME Not use a separate text group? + var transformGroup = new Group({ + x: opt.position[0], + y: opt.position[1], + rotation: opt.rotation + }); + // this.group.add(transformGroup); + // this._transformGroup = transformGroup; + transformGroup.updateTransform(); + this._transformGroup = transformGroup; + } + AxisBuilder.prototype.hasBuilder = function (name) { + return !!builders[name]; + }; + AxisBuilder.prototype.add = function (name) { + builders[name](this.opt, this.axisModel, this.group, this._transformGroup); + }; + AxisBuilder.prototype.getGroup = function () { + return this.group; + }; + AxisBuilder.innerTextLayout = function (axisRotation, textRotation, direction) { + var rotationDiff = remRadian(textRotation - axisRotation); + var textAlign; + var textVerticalAlign; + if (isRadianAroundZero(rotationDiff)) { + // Label is parallel with axis line. + textVerticalAlign = direction > 0 ? 'top' : 'bottom'; + textAlign = 'center'; + } else if (isRadianAroundZero(rotationDiff - PI$5)) { + // Label is inverse parallel with axis line. + textVerticalAlign = direction > 0 ? 'bottom' : 'top'; + textAlign = 'center'; + } else { + textVerticalAlign = 'middle'; + if (rotationDiff > 0 && rotationDiff < PI$5) { + textAlign = direction > 0 ? 'right' : 'left'; + } else { + textAlign = direction > 0 ? 'left' : 'right'; + } + } + return { + rotation: rotationDiff, + textAlign: textAlign, + textVerticalAlign: textVerticalAlign + }; + }; + AxisBuilder.makeAxisEventDataBase = function (axisModel) { + var eventData = { + componentType: axisModel.mainType, + componentIndex: axisModel.componentIndex + }; + eventData[axisModel.mainType + 'Index'] = axisModel.componentIndex; + return eventData; + }; + AxisBuilder.isLabelSilent = function (axisModel) { + var tooltipOpt = axisModel.get('tooltip'); + return axisModel.get('silent') + // Consider mouse cursor, add these restrictions. + || !(axisModel.get('triggerEvent') || tooltipOpt && tooltipOpt.show); + }; + return AxisBuilder; + }(); + var builders = { + axisLine: function (opt, axisModel, group, transformGroup) { + var shown = axisModel.get(['axisLine', 'show']); + if (shown === 'auto' && opt.handleAutoShown) { + shown = opt.handleAutoShown('axisLine'); + } + if (!shown) { + return; + } + var extent = axisModel.axis.getExtent(); + var matrix = transformGroup.transform; + var pt1 = [extent[0], 0]; + var pt2 = [extent[1], 0]; + var inverse = pt1[0] > pt2[0]; + if (matrix) { + applyTransform(pt1, pt1, matrix); + applyTransform(pt2, pt2, matrix); + } + var lineStyle = extend({ + lineCap: 'round' + }, axisModel.getModel(['axisLine', 'lineStyle']).getLineStyle()); + var line = new Line({ + shape: { + x1: pt1[0], + y1: pt1[1], + x2: pt2[0], + y2: pt2[1] + }, + style: lineStyle, + strokeContainThreshold: opt.strokeContainThreshold || 5, + silent: true, + z2: 1 + }); + subPixelOptimizeLine$1(line.shape, line.style.lineWidth); + line.anid = 'line'; + group.add(line); + var arrows = axisModel.get(['axisLine', 'symbol']); + if (arrows != null) { + var arrowSize = axisModel.get(['axisLine', 'symbolSize']); + if (isString(arrows)) { + // Use the same arrow for start and end point + arrows = [arrows, arrows]; + } + if (isString(arrowSize) || isNumber(arrowSize)) { + // Use the same size for width and height + arrowSize = [arrowSize, arrowSize]; + } + var arrowOffset = normalizeSymbolOffset(axisModel.get(['axisLine', 'symbolOffset']) || 0, arrowSize); + var symbolWidth_1 = arrowSize[0]; + var symbolHeight_1 = arrowSize[1]; + each([{ + rotate: opt.rotation + Math.PI / 2, + offset: arrowOffset[0], + r: 0 + }, { + rotate: opt.rotation - Math.PI / 2, + offset: arrowOffset[1], + r: Math.sqrt((pt1[0] - pt2[0]) * (pt1[0] - pt2[0]) + (pt1[1] - pt2[1]) * (pt1[1] - pt2[1])) + }], function (point, index) { + if (arrows[index] !== 'none' && arrows[index] != null) { + var symbol = createSymbol(arrows[index], -symbolWidth_1 / 2, -symbolHeight_1 / 2, symbolWidth_1, symbolHeight_1, lineStyle.stroke, true); + // Calculate arrow position with offset + var r = point.r + point.offset; + var pt = inverse ? pt2 : pt1; + symbol.attr({ + rotation: point.rotate, + x: pt[0] + r * Math.cos(opt.rotation), + y: pt[1] - r * Math.sin(opt.rotation), + silent: true, + z2: 11 + }); + group.add(symbol); + } + }); + } + }, + axisTickLabel: function (opt, axisModel, group, transformGroup) { + var ticksEls = buildAxisMajorTicks(group, transformGroup, axisModel, opt); + var labelEls = buildAxisLabel(group, transformGroup, axisModel, opt); + fixMinMaxLabelShow(axisModel, labelEls, ticksEls); + buildAxisMinorTicks(group, transformGroup, axisModel, opt.tickDirection); + // This bit fixes the label overlap issue for the time chart. + // See https://github.com/apache/echarts/issues/14266 for more. + if (axisModel.get(['axisLabel', 'hideOverlap'])) { + var labelList = prepareLayoutList(map(labelEls, function (label) { + return { + label: label, + priority: label.z2, + defaultAttr: { + ignore: label.ignore + } + }; + })); + hideOverlap(labelList); + } + }, + axisName: function (opt, axisModel, group, transformGroup) { + var name = retrieve(opt.axisName, axisModel.get('name')); + if (!name) { + return; + } + var nameLocation = axisModel.get('nameLocation'); + var nameDirection = opt.nameDirection; + var textStyleModel = axisModel.getModel('nameTextStyle'); + var gap = axisModel.get('nameGap') || 0; + var extent = axisModel.axis.getExtent(); + var gapSignal = extent[0] > extent[1] ? -1 : 1; + var pos = [nameLocation === 'start' ? extent[0] - gapSignal * gap : nameLocation === 'end' ? extent[1] + gapSignal * gap : (extent[0] + extent[1]) / 2, + // Reuse labelOffset. + isNameLocationCenter(nameLocation) ? opt.labelOffset + nameDirection * gap : 0]; + var labelLayout; + var nameRotation = axisModel.get('nameRotate'); + if (nameRotation != null) { + nameRotation = nameRotation * PI$5 / 180; // To radian. + } + + var axisNameAvailableWidth; + if (isNameLocationCenter(nameLocation)) { + labelLayout = AxisBuilder.innerTextLayout(opt.rotation, nameRotation != null ? nameRotation : opt.rotation, + // Adapt to axis. + nameDirection); + } else { + labelLayout = endTextLayout(opt.rotation, nameLocation, nameRotation || 0, extent); + axisNameAvailableWidth = opt.axisNameAvailableWidth; + if (axisNameAvailableWidth != null) { + axisNameAvailableWidth = Math.abs(axisNameAvailableWidth / Math.sin(labelLayout.rotation)); + !isFinite(axisNameAvailableWidth) && (axisNameAvailableWidth = null); + } + } + var textFont = textStyleModel.getFont(); + var truncateOpt = axisModel.get('nameTruncate', true) || {}; + var ellipsis = truncateOpt.ellipsis; + var maxWidth = retrieve(opt.nameTruncateMaxWidth, truncateOpt.maxWidth, axisNameAvailableWidth); + var textEl = new ZRText({ + x: pos[0], + y: pos[1], + rotation: labelLayout.rotation, + silent: AxisBuilder.isLabelSilent(axisModel), + style: createTextStyle(textStyleModel, { + text: name, + font: textFont, + overflow: 'truncate', + width: maxWidth, + ellipsis: ellipsis, + fill: textStyleModel.getTextColor() || axisModel.get(['axisLine', 'lineStyle', 'color']), + align: textStyleModel.get('align') || labelLayout.textAlign, + verticalAlign: textStyleModel.get('verticalAlign') || labelLayout.textVerticalAlign + }), + z2: 1 + }); + setTooltipConfig({ + el: textEl, + componentModel: axisModel, + itemName: name + }); + textEl.__fullText = name; + // Id for animation + textEl.anid = 'name'; + if (axisModel.get('triggerEvent')) { + var eventData = AxisBuilder.makeAxisEventDataBase(axisModel); + eventData.targetType = 'axisName'; + eventData.name = name; + getECData(textEl).eventData = eventData; + } + // FIXME + transformGroup.add(textEl); + textEl.updateTransform(); + group.add(textEl); + textEl.decomposeTransform(); + } + }; + function endTextLayout(rotation, textPosition, textRotate, extent) { + var rotationDiff = remRadian(textRotate - rotation); + var textAlign; + var textVerticalAlign; + var inverse = extent[0] > extent[1]; + var onLeft = textPosition === 'start' && !inverse || textPosition !== 'start' && inverse; + if (isRadianAroundZero(rotationDiff - PI$5 / 2)) { + textVerticalAlign = onLeft ? 'bottom' : 'top'; + textAlign = 'center'; + } else if (isRadianAroundZero(rotationDiff - PI$5 * 1.5)) { + textVerticalAlign = onLeft ? 'top' : 'bottom'; + textAlign = 'center'; + } else { + textVerticalAlign = 'middle'; + if (rotationDiff < PI$5 * 1.5 && rotationDiff > PI$5 / 2) { + textAlign = onLeft ? 'left' : 'right'; + } else { + textAlign = onLeft ? 'right' : 'left'; + } + } + return { + rotation: rotationDiff, + textAlign: textAlign, + textVerticalAlign: textVerticalAlign + }; + } + function fixMinMaxLabelShow(axisModel, labelEls, tickEls) { + if (shouldShowAllLabels(axisModel.axis)) { + return; + } + // If min or max are user set, we need to check + // If the tick on min(max) are overlap on their neighbour tick + // If they are overlapped, we need to hide the min(max) tick label + var showMinLabel = axisModel.get(['axisLabel', 'showMinLabel']); + var showMaxLabel = axisModel.get(['axisLabel', 'showMaxLabel']); + // FIXME + // Have not consider onBand yet, where tick els is more than label els. + labelEls = labelEls || []; + tickEls = tickEls || []; + var firstLabel = labelEls[0]; + var nextLabel = labelEls[1]; + var lastLabel = labelEls[labelEls.length - 1]; + var prevLabel = labelEls[labelEls.length - 2]; + var firstTick = tickEls[0]; + var nextTick = tickEls[1]; + var lastTick = tickEls[tickEls.length - 1]; + var prevTick = tickEls[tickEls.length - 2]; + if (showMinLabel === false) { + ignoreEl(firstLabel); + ignoreEl(firstTick); + } else if (isTwoLabelOverlapped(firstLabel, nextLabel)) { + if (showMinLabel) { + ignoreEl(nextLabel); + ignoreEl(nextTick); + } else { + ignoreEl(firstLabel); + ignoreEl(firstTick); + } + } + if (showMaxLabel === false) { + ignoreEl(lastLabel); + ignoreEl(lastTick); + } else if (isTwoLabelOverlapped(prevLabel, lastLabel)) { + if (showMaxLabel) { + ignoreEl(prevLabel); + ignoreEl(prevTick); + } else { + ignoreEl(lastLabel); + ignoreEl(lastTick); + } + } + } + function ignoreEl(el) { + el && (el.ignore = true); + } + function isTwoLabelOverlapped(current, next) { + // current and next has the same rotation. + var firstRect = current && current.getBoundingRect().clone(); + var nextRect = next && next.getBoundingRect().clone(); + if (!firstRect || !nextRect) { + return; + } + // When checking intersect of two rotated labels, we use mRotationBack + // to avoid that boundingRect is enlarge when using `boundingRect.applyTransform`. + var mRotationBack = identity([]); + rotate(mRotationBack, mRotationBack, -current.rotation); + firstRect.applyTransform(mul$1([], mRotationBack, current.getLocalTransform())); + nextRect.applyTransform(mul$1([], mRotationBack, next.getLocalTransform())); + return firstRect.intersect(nextRect); + } + function isNameLocationCenter(nameLocation) { + return nameLocation === 'middle' || nameLocation === 'center'; + } + function createTicks(ticksCoords, tickTransform, tickEndCoord, tickLineStyle, anidPrefix) { + var tickEls = []; + var pt1 = []; + var pt2 = []; + for (var i = 0; i < ticksCoords.length; i++) { + var tickCoord = ticksCoords[i].coord; + pt1[0] = tickCoord; + pt1[1] = 0; + pt2[0] = tickCoord; + pt2[1] = tickEndCoord; + if (tickTransform) { + applyTransform(pt1, pt1, tickTransform); + applyTransform(pt2, pt2, tickTransform); + } + // Tick line, Not use group transform to have better line draw + var tickEl = new Line({ + shape: { + x1: pt1[0], + y1: pt1[1], + x2: pt2[0], + y2: pt2[1] + }, + style: tickLineStyle, + z2: 2, + autoBatch: true, + silent: true + }); + subPixelOptimizeLine$1(tickEl.shape, tickEl.style.lineWidth); + tickEl.anid = anidPrefix + '_' + ticksCoords[i].tickValue; + tickEls.push(tickEl); + } + return tickEls; + } + function buildAxisMajorTicks(group, transformGroup, axisModel, opt) { + var axis = axisModel.axis; + var tickModel = axisModel.getModel('axisTick'); + var shown = tickModel.get('show'); + if (shown === 'auto' && opt.handleAutoShown) { + shown = opt.handleAutoShown('axisTick'); + } + if (!shown || axis.scale.isBlank()) { + return; + } + var lineStyleModel = tickModel.getModel('lineStyle'); + var tickEndCoord = opt.tickDirection * tickModel.get('length'); + var ticksCoords = axis.getTicksCoords(); + var ticksEls = createTicks(ticksCoords, transformGroup.transform, tickEndCoord, defaults(lineStyleModel.getLineStyle(), { + stroke: axisModel.get(['axisLine', 'lineStyle', 'color']) + }), 'ticks'); + for (var i = 0; i < ticksEls.length; i++) { + group.add(ticksEls[i]); + } + return ticksEls; + } + function buildAxisMinorTicks(group, transformGroup, axisModel, tickDirection) { + var axis = axisModel.axis; + var minorTickModel = axisModel.getModel('minorTick'); + if (!minorTickModel.get('show') || axis.scale.isBlank()) { + return; + } + var minorTicksCoords = axis.getMinorTicksCoords(); + if (!minorTicksCoords.length) { + return; + } + var lineStyleModel = minorTickModel.getModel('lineStyle'); + var tickEndCoord = tickDirection * minorTickModel.get('length'); + var minorTickLineStyle = defaults(lineStyleModel.getLineStyle(), defaults(axisModel.getModel('axisTick').getLineStyle(), { + stroke: axisModel.get(['axisLine', 'lineStyle', 'color']) + })); + for (var i = 0; i < minorTicksCoords.length; i++) { + var minorTicksEls = createTicks(minorTicksCoords[i], transformGroup.transform, tickEndCoord, minorTickLineStyle, 'minorticks_' + i); + for (var k = 0; k < minorTicksEls.length; k++) { + group.add(minorTicksEls[k]); + } + } + } + function buildAxisLabel(group, transformGroup, axisModel, opt) { + var axis = axisModel.axis; + var show = retrieve(opt.axisLabelShow, axisModel.get(['axisLabel', 'show'])); + if (!show || axis.scale.isBlank()) { + return; + } + var labelModel = axisModel.getModel('axisLabel'); + var labelMargin = labelModel.get('margin'); + var labels = axis.getViewLabels(); + // Special label rotate. + var labelRotation = (retrieve(opt.labelRotate, labelModel.get('rotate')) || 0) * PI$5 / 180; + var labelLayout = AxisBuilder.innerTextLayout(opt.rotation, labelRotation, opt.labelDirection); + var rawCategoryData = axisModel.getCategories && axisModel.getCategories(true); + var labelEls = []; + var silent = AxisBuilder.isLabelSilent(axisModel); + var triggerEvent = axisModel.get('triggerEvent'); + each(labels, function (labelItem, index) { + var tickValue = axis.scale.type === 'ordinal' ? axis.scale.getRawOrdinalNumber(labelItem.tickValue) : labelItem.tickValue; + var formattedLabel = labelItem.formattedLabel; + var rawLabel = labelItem.rawLabel; + var itemLabelModel = labelModel; + if (rawCategoryData && rawCategoryData[tickValue]) { + var rawCategoryItem = rawCategoryData[tickValue]; + if (isObject(rawCategoryItem) && rawCategoryItem.textStyle) { + itemLabelModel = new Model(rawCategoryItem.textStyle, labelModel, axisModel.ecModel); + } + } + var textColor = itemLabelModel.getTextColor() || axisModel.get(['axisLine', 'lineStyle', 'color']); + var tickCoord = axis.dataToCoord(tickValue); + var align = itemLabelModel.getShallow('align', true) || labelLayout.textAlign; + var alignMin = retrieve2(itemLabelModel.getShallow('alignMinLabel', true), align); + var alignMax = retrieve2(itemLabelModel.getShallow('alignMaxLabel', true), align); + var verticalAlign = itemLabelModel.getShallow('verticalAlign', true) || itemLabelModel.getShallow('baseline', true) || labelLayout.textVerticalAlign; + var verticalAlignMin = retrieve2(itemLabelModel.getShallow('verticalAlignMinLabel', true), verticalAlign); + var verticalAlignMax = retrieve2(itemLabelModel.getShallow('verticalAlignMaxLabel', true), verticalAlign); + var textEl = new ZRText({ + x: tickCoord, + y: opt.labelOffset + opt.labelDirection * labelMargin, + rotation: labelLayout.rotation, + silent: silent, + z2: 10 + (labelItem.level || 0), + style: createTextStyle(itemLabelModel, { + text: formattedLabel, + align: index === 0 ? alignMin : index === labels.length - 1 ? alignMax : align, + verticalAlign: index === 0 ? verticalAlignMin : index === labels.length - 1 ? verticalAlignMax : verticalAlign, + fill: isFunction(textColor) ? textColor( + // (1) In category axis with data zoom, tick is not the original + // index of axis.data. So tick should not be exposed to user + // in category axis. + // (2) Compatible with previous version, which always use formatted label as + // input. But in interval scale the formatted label is like '223,445', which + // maked user replace ','. So we modify it to return original val but remain + // it as 'string' to avoid error in replacing. + axis.type === 'category' ? rawLabel : axis.type === 'value' ? tickValue + '' : tickValue, index) : textColor + }) + }); + textEl.anid = 'label_' + tickValue; + // Pack data for mouse event + if (triggerEvent) { + var eventData = AxisBuilder.makeAxisEventDataBase(axisModel); + eventData.targetType = 'axisLabel'; + eventData.value = rawLabel; + eventData.tickIndex = index; + if (axis.type === 'category') { + eventData.dataIndex = tickValue; + } + getECData(textEl).eventData = eventData; + } + // FIXME + transformGroup.add(textEl); + textEl.updateTransform(); + labelEls.push(textEl); + group.add(textEl); + textEl.decomposeTransform(); + }); + return labelEls; + } + + // Build axisPointerModel, mergin tooltip.axisPointer model for each axis. + // allAxesInfo should be updated when setOption performed. + function collect(ecModel, api) { + var result = { + /** + * key: makeKey(axis.model) + * value: { + * axis, + * coordSys, + * axisPointerModel, + * triggerTooltip, + * triggerEmphasis, + * involveSeries, + * snap, + * seriesModels, + * seriesDataCount + * } + */ + axesInfo: {}, + seriesInvolved: false, + /** + * key: makeKey(coordSys.model) + * value: Object: key makeKey(axis.model), value: axisInfo + */ + coordSysAxesInfo: {}, + coordSysMap: {} + }; + collectAxesInfo(result, ecModel, api); + // Check seriesInvolved for performance, in case too many series in some chart. + result.seriesInvolved && collectSeriesInfo(result, ecModel); + return result; + } + function collectAxesInfo(result, ecModel, api) { + var globalTooltipModel = ecModel.getComponent('tooltip'); + var globalAxisPointerModel = ecModel.getComponent('axisPointer'); + // links can only be set on global. + var linksOption = globalAxisPointerModel.get('link', true) || []; + var linkGroups = []; + // Collect axes info. + each(api.getCoordinateSystems(), function (coordSys) { + // Some coordinate system do not support axes, like geo. + if (!coordSys.axisPointerEnabled) { + return; + } + var coordSysKey = makeKey(coordSys.model); + var axesInfoInCoordSys = result.coordSysAxesInfo[coordSysKey] = {}; + result.coordSysMap[coordSysKey] = coordSys; + // Set tooltip (like 'cross') is a convenient way to show axisPointer + // for user. So we enable setting tooltip on coordSys model. + var coordSysModel = coordSys.model; + var baseTooltipModel = coordSysModel.getModel('tooltip', globalTooltipModel); + each(coordSys.getAxes(), curry(saveTooltipAxisInfo, false, null)); + // If axis tooltip used, choose tooltip axis for each coordSys. + // Notice this case: coordSys is `grid` but not `cartesian2D` here. + if (coordSys.getTooltipAxes && globalTooltipModel + // If tooltip.showContent is set as false, tooltip will not + // show but axisPointer will show as normal. + && baseTooltipModel.get('show')) { + // Compatible with previous logic. But series.tooltip.trigger: 'axis' + // or series.data[n].tooltip.trigger: 'axis' are not support any more. + var triggerAxis = baseTooltipModel.get('trigger') === 'axis'; + var cross = baseTooltipModel.get(['axisPointer', 'type']) === 'cross'; + var tooltipAxes = coordSys.getTooltipAxes(baseTooltipModel.get(['axisPointer', 'axis'])); + if (triggerAxis || cross) { + each(tooltipAxes.baseAxes, curry(saveTooltipAxisInfo, cross ? 'cross' : true, triggerAxis)); + } + if (cross) { + each(tooltipAxes.otherAxes, curry(saveTooltipAxisInfo, 'cross', false)); + } + } + // fromTooltip: true | false | 'cross' + // triggerTooltip: true | false | null + function saveTooltipAxisInfo(fromTooltip, triggerTooltip, axis) { + var axisPointerModel = axis.model.getModel('axisPointer', globalAxisPointerModel); + var axisPointerShow = axisPointerModel.get('show'); + if (!axisPointerShow || axisPointerShow === 'auto' && !fromTooltip && !isHandleTrigger(axisPointerModel)) { + return; + } + if (triggerTooltip == null) { + triggerTooltip = axisPointerModel.get('triggerTooltip'); + } + axisPointerModel = fromTooltip ? makeAxisPointerModel(axis, baseTooltipModel, globalAxisPointerModel, ecModel, fromTooltip, triggerTooltip) : axisPointerModel; + var snap = axisPointerModel.get('snap'); + var triggerEmphasis = axisPointerModel.get('triggerEmphasis'); + var axisKey = makeKey(axis.model); + var involveSeries = triggerTooltip || snap || axis.type === 'category'; + // If result.axesInfo[key] exist, override it (tooltip has higher priority). + var axisInfo = result.axesInfo[axisKey] = { + key: axisKey, + axis: axis, + coordSys: coordSys, + axisPointerModel: axisPointerModel, + triggerTooltip: triggerTooltip, + triggerEmphasis: triggerEmphasis, + involveSeries: involveSeries, + snap: snap, + useHandle: isHandleTrigger(axisPointerModel), + seriesModels: [], + linkGroup: null + }; + axesInfoInCoordSys[axisKey] = axisInfo; + result.seriesInvolved = result.seriesInvolved || involveSeries; + var groupIndex = getLinkGroupIndex(linksOption, axis); + if (groupIndex != null) { + var linkGroup = linkGroups[groupIndex] || (linkGroups[groupIndex] = { + axesInfo: {} + }); + linkGroup.axesInfo[axisKey] = axisInfo; + linkGroup.mapper = linksOption[groupIndex].mapper; + axisInfo.linkGroup = linkGroup; + } + } + }); + } + function makeAxisPointerModel(axis, baseTooltipModel, globalAxisPointerModel, ecModel, fromTooltip, triggerTooltip) { + var tooltipAxisPointerModel = baseTooltipModel.getModel('axisPointer'); + var fields = ['type', 'snap', 'lineStyle', 'shadowStyle', 'label', 'animation', 'animationDurationUpdate', 'animationEasingUpdate', 'z']; + var volatileOption = {}; + each(fields, function (field) { + volatileOption[field] = clone(tooltipAxisPointerModel.get(field)); + }); + // category axis do not auto snap, otherwise some tick that do not + // has value can not be hovered. value/time/log axis default snap if + // triggered from tooltip and trigger tooltip. + volatileOption.snap = axis.type !== 'category' && !!triggerTooltip; + // Compatible with previous behavior, tooltip axis does not show label by default. + // Only these properties can be overridden from tooltip to axisPointer. + if (tooltipAxisPointerModel.get('type') === 'cross') { + volatileOption.type = 'line'; + } + var labelOption = volatileOption.label || (volatileOption.label = {}); + // Follow the convention, do not show label when triggered by tooltip by default. + labelOption.show == null && (labelOption.show = false); + if (fromTooltip === 'cross') { + // When 'cross', both axes show labels. + var tooltipAxisPointerLabelShow = tooltipAxisPointerModel.get(['label', 'show']); + labelOption.show = tooltipAxisPointerLabelShow != null ? tooltipAxisPointerLabelShow : true; + // If triggerTooltip, this is a base axis, which should better not use cross style + // (cross style is dashed by default) + if (!triggerTooltip) { + var crossStyle = volatileOption.lineStyle = tooltipAxisPointerModel.get('crossStyle'); + crossStyle && defaults(labelOption, crossStyle.textStyle); + } + } + return axis.model.getModel('axisPointer', new Model(volatileOption, globalAxisPointerModel, ecModel)); + } + function collectSeriesInfo(result, ecModel) { + // Prepare data for axis trigger + ecModel.eachSeries(function (seriesModel) { + // Notice this case: this coordSys is `cartesian2D` but not `grid`. + var coordSys = seriesModel.coordinateSystem; + var seriesTooltipTrigger = seriesModel.get(['tooltip', 'trigger'], true); + var seriesTooltipShow = seriesModel.get(['tooltip', 'show'], true); + if (!coordSys || seriesTooltipTrigger === 'none' || seriesTooltipTrigger === false || seriesTooltipTrigger === 'item' || seriesTooltipShow === false || seriesModel.get(['axisPointer', 'show'], true) === false) { + return; + } + each(result.coordSysAxesInfo[makeKey(coordSys.model)], function (axisInfo) { + var axis = axisInfo.axis; + if (coordSys.getAxis(axis.dim) === axis) { + axisInfo.seriesModels.push(seriesModel); + axisInfo.seriesDataCount == null && (axisInfo.seriesDataCount = 0); + axisInfo.seriesDataCount += seriesModel.getData().count(); + } + }); + }); + } + /** + * For example: + * { + * axisPointer: { + * links: [{ + * xAxisIndex: [2, 4], + * yAxisIndex: 'all' + * }, { + * xAxisId: ['a5', 'a7'], + * xAxisName: 'xxx' + * }] + * } + * } + */ + function getLinkGroupIndex(linksOption, axis) { + var axisModel = axis.model; + var dim = axis.dim; + for (var i = 0; i < linksOption.length; i++) { + var linkOption = linksOption[i] || {}; + if (checkPropInLink(linkOption[dim + 'AxisId'], axisModel.id) || checkPropInLink(linkOption[dim + 'AxisIndex'], axisModel.componentIndex) || checkPropInLink(linkOption[dim + 'AxisName'], axisModel.name)) { + return i; + } + } + } + function checkPropInLink(linkPropValue, axisPropValue) { + return linkPropValue === 'all' || isArray(linkPropValue) && indexOf(linkPropValue, axisPropValue) >= 0 || linkPropValue === axisPropValue; + } + function fixValue(axisModel) { + var axisInfo = getAxisInfo(axisModel); + if (!axisInfo) { + return; + } + var axisPointerModel = axisInfo.axisPointerModel; + var scale = axisInfo.axis.scale; + var option = axisPointerModel.option; + var status = axisPointerModel.get('status'); + var value = axisPointerModel.get('value'); + // Parse init value for category and time axis. + if (value != null) { + value = scale.parse(value); + } + var useHandle = isHandleTrigger(axisPointerModel); + // If `handle` used, `axisPointer` will always be displayed, so value + // and status should be initialized. + if (status == null) { + option.status = useHandle ? 'show' : 'hide'; + } + var extent = scale.getExtent().slice(); + extent[0] > extent[1] && extent.reverse(); + if ( + // Pick a value on axis when initializing. + value == null + // If both `handle` and `dataZoom` are used, value may be out of axis extent, + // where we should re-pick a value to keep `handle` displaying normally. + || value > extent[1]) { + // Make handle displayed on the end of the axis when init, which looks better. + value = extent[1]; + } + if (value < extent[0]) { + value = extent[0]; + } + option.value = value; + if (useHandle) { + option.status = axisInfo.axis.scale.isBlank() ? 'hide' : 'show'; + } + } + function getAxisInfo(axisModel) { + var coordSysAxesInfo = (axisModel.ecModel.getComponent('axisPointer') || {}).coordSysAxesInfo; + return coordSysAxesInfo && coordSysAxesInfo.axesInfo[makeKey(axisModel)]; + } + function getAxisPointerModel(axisModel) { + var axisInfo = getAxisInfo(axisModel); + return axisInfo && axisInfo.axisPointerModel; + } + function isHandleTrigger(axisPointerModel) { + return !!axisPointerModel.get(['handle', 'show']); + } + /** + * @param {module:echarts/model/Model} model + * @return {string} unique key + */ + function makeKey(model) { + return model.type + '||' + model.id; + } + + var axisPointerClazz = {}; + /** + * Base class of AxisView. + */ + var AxisView = /** @class */function (_super) { + __extends(AxisView, _super); + function AxisView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = AxisView.type; + return _this; + } + /** + * @override + */ + AxisView.prototype.render = function (axisModel, ecModel, api, payload) { + // FIXME + // This process should proformed after coordinate systems updated + // (axis scale updated), and should be performed each time update. + // So put it here temporarily, although it is not appropriate to + // put a model-writing procedure in `view`. + this.axisPointerClass && fixValue(axisModel); + _super.prototype.render.apply(this, arguments); + this._doUpdateAxisPointerClass(axisModel, api, true); + }; + /** + * Action handler. + */ + AxisView.prototype.updateAxisPointer = function (axisModel, ecModel, api, payload) { + this._doUpdateAxisPointerClass(axisModel, api, false); + }; + /** + * @override + */ + AxisView.prototype.remove = function (ecModel, api) { + var axisPointer = this._axisPointer; + axisPointer && axisPointer.remove(api); + }; + /** + * @override + */ + AxisView.prototype.dispose = function (ecModel, api) { + this._disposeAxisPointer(api); + _super.prototype.dispose.apply(this, arguments); + }; + AxisView.prototype._doUpdateAxisPointerClass = function (axisModel, api, forceRender) { + var Clazz = AxisView.getAxisPointerClass(this.axisPointerClass); + if (!Clazz) { + return; + } + var axisPointerModel = getAxisPointerModel(axisModel); + axisPointerModel ? (this._axisPointer || (this._axisPointer = new Clazz())).render(axisModel, axisPointerModel, api, forceRender) : this._disposeAxisPointer(api); + }; + AxisView.prototype._disposeAxisPointer = function (api) { + this._axisPointer && this._axisPointer.dispose(api); + this._axisPointer = null; + }; + AxisView.registerAxisPointerClass = function (type, clazz) { + if ("development" !== 'production') { + if (axisPointerClazz[type]) { + throw new Error('axisPointer ' + type + ' exists'); + } + } + axisPointerClazz[type] = clazz; + }; + AxisView.getAxisPointerClass = function (type) { + return type && axisPointerClazz[type]; + }; + AxisView.type = 'axis'; + return AxisView; + }(ComponentView); + + var inner$6 = makeInner(); + function rectCoordAxisBuildSplitArea(axisView, axisGroup, axisModel, gridModel) { + var axis = axisModel.axis; + if (axis.scale.isBlank()) { + return; + } + // TODO: TYPE + var splitAreaModel = axisModel.getModel('splitArea'); + var areaStyleModel = splitAreaModel.getModel('areaStyle'); + var areaColors = areaStyleModel.get('color'); + var gridRect = gridModel.coordinateSystem.getRect(); + var ticksCoords = axis.getTicksCoords({ + tickModel: splitAreaModel, + clamp: true + }); + if (!ticksCoords.length) { + return; + } + // For Making appropriate splitArea animation, the color and anid + // should be corresponding to previous one if possible. + var areaColorsLen = areaColors.length; + var lastSplitAreaColors = inner$6(axisView).splitAreaColors; + var newSplitAreaColors = createHashMap(); + var colorIndex = 0; + if (lastSplitAreaColors) { + for (var i = 0; i < ticksCoords.length; i++) { + var cIndex = lastSplitAreaColors.get(ticksCoords[i].tickValue); + if (cIndex != null) { + colorIndex = (cIndex + (areaColorsLen - 1) * i) % areaColorsLen; + break; + } + } + } + var prev = axis.toGlobalCoord(ticksCoords[0].coord); + var areaStyle = areaStyleModel.getAreaStyle(); + areaColors = isArray(areaColors) ? areaColors : [areaColors]; + for (var i = 1; i < ticksCoords.length; i++) { + var tickCoord = axis.toGlobalCoord(ticksCoords[i].coord); + var x = void 0; + var y = void 0; + var width = void 0; + var height = void 0; + if (axis.isHorizontal()) { + x = prev; + y = gridRect.y; + width = tickCoord - x; + height = gridRect.height; + prev = x + width; + } else { + x = gridRect.x; + y = prev; + width = gridRect.width; + height = tickCoord - y; + prev = y + height; + } + var tickValue = ticksCoords[i - 1].tickValue; + tickValue != null && newSplitAreaColors.set(tickValue, colorIndex); + axisGroup.add(new Rect({ + anid: tickValue != null ? 'area_' + tickValue : null, + shape: { + x: x, + y: y, + width: width, + height: height + }, + style: defaults({ + fill: areaColors[colorIndex] + }, areaStyle), + autoBatch: true, + silent: true + })); + colorIndex = (colorIndex + 1) % areaColorsLen; + } + inner$6(axisView).splitAreaColors = newSplitAreaColors; + } + function rectCoordAxisHandleRemove(axisView) { + inner$6(axisView).splitAreaColors = null; + } + + var axisBuilderAttrs = ['axisLine', 'axisTickLabel', 'axisName']; + var selfBuilderAttrs = ['splitArea', 'splitLine', 'minorSplitLine']; + var CartesianAxisView = /** @class */function (_super) { + __extends(CartesianAxisView, _super); + function CartesianAxisView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = CartesianAxisView.type; + _this.axisPointerClass = 'CartesianAxisPointer'; + return _this; + } + /** + * @override + */ + CartesianAxisView.prototype.render = function (axisModel, ecModel, api, payload) { + this.group.removeAll(); + var oldAxisGroup = this._axisGroup; + this._axisGroup = new Group(); + this.group.add(this._axisGroup); + if (!axisModel.get('show')) { + return; + } + var gridModel = axisModel.getCoordSysModel(); + var layout = layout$1(gridModel, axisModel); + var axisBuilder = new AxisBuilder(axisModel, extend({ + handleAutoShown: function (elementType) { + var cartesians = gridModel.coordinateSystem.getCartesians(); + for (var i = 0; i < cartesians.length; i++) { + if (isIntervalOrLogScale(cartesians[i].getOtherAxis(axisModel.axis).scale)) { + // Still show axis tick or axisLine if other axis is value / log + return true; + } + } + // Not show axisTick or axisLine if other axis is category / time + return false; + } + }, layout)); + each(axisBuilderAttrs, axisBuilder.add, axisBuilder); + this._axisGroup.add(axisBuilder.getGroup()); + each(selfBuilderAttrs, function (name) { + if (axisModel.get([name, 'show'])) { + axisElementBuilders[name](this, this._axisGroup, axisModel, gridModel); + } + }, this); + // THIS is a special case for bar racing chart. + // Update the axis label from the natural initial layout to + // sorted layout should has no animation. + var isInitialSortFromBarRacing = payload && payload.type === 'changeAxisOrder' && payload.isInitSort; + if (!isInitialSortFromBarRacing) { + groupTransition(oldAxisGroup, this._axisGroup, axisModel); + } + _super.prototype.render.call(this, axisModel, ecModel, api, payload); + }; + CartesianAxisView.prototype.remove = function () { + rectCoordAxisHandleRemove(this); + }; + CartesianAxisView.type = 'cartesianAxis'; + return CartesianAxisView; + }(AxisView); + var axisElementBuilders = { + splitLine: function (axisView, axisGroup, axisModel, gridModel) { + var axis = axisModel.axis; + if (axis.scale.isBlank()) { + return; + } + var splitLineModel = axisModel.getModel('splitLine'); + var lineStyleModel = splitLineModel.getModel('lineStyle'); + var lineColors = lineStyleModel.get('color'); + lineColors = isArray(lineColors) ? lineColors : [lineColors]; + var gridRect = gridModel.coordinateSystem.getRect(); + var isHorizontal = axis.isHorizontal(); + var lineCount = 0; + var ticksCoords = axis.getTicksCoords({ + tickModel: splitLineModel + }); + var p1 = []; + var p2 = []; + var lineStyle = lineStyleModel.getLineStyle(); + for (var i = 0; i < ticksCoords.length; i++) { + var tickCoord = axis.toGlobalCoord(ticksCoords[i].coord); + if (isHorizontal) { + p1[0] = tickCoord; + p1[1] = gridRect.y; + p2[0] = tickCoord; + p2[1] = gridRect.y + gridRect.height; + } else { + p1[0] = gridRect.x; + p1[1] = tickCoord; + p2[0] = gridRect.x + gridRect.width; + p2[1] = tickCoord; + } + var colorIndex = lineCount++ % lineColors.length; + var tickValue = ticksCoords[i].tickValue; + var line = new Line({ + anid: tickValue != null ? 'line_' + ticksCoords[i].tickValue : null, + autoBatch: true, + shape: { + x1: p1[0], + y1: p1[1], + x2: p2[0], + y2: p2[1] + }, + style: defaults({ + stroke: lineColors[colorIndex] + }, lineStyle), + silent: true + }); + subPixelOptimizeLine$1(line.shape, lineStyle.lineWidth); + axisGroup.add(line); + } + }, + minorSplitLine: function (axisView, axisGroup, axisModel, gridModel) { + var axis = axisModel.axis; + var minorSplitLineModel = axisModel.getModel('minorSplitLine'); + var lineStyleModel = minorSplitLineModel.getModel('lineStyle'); + var gridRect = gridModel.coordinateSystem.getRect(); + var isHorizontal = axis.isHorizontal(); + var minorTicksCoords = axis.getMinorTicksCoords(); + if (!minorTicksCoords.length) { + return; + } + var p1 = []; + var p2 = []; + var lineStyle = lineStyleModel.getLineStyle(); + for (var i = 0; i < minorTicksCoords.length; i++) { + for (var k = 0; k < minorTicksCoords[i].length; k++) { + var tickCoord = axis.toGlobalCoord(minorTicksCoords[i][k].coord); + if (isHorizontal) { + p1[0] = tickCoord; + p1[1] = gridRect.y; + p2[0] = tickCoord; + p2[1] = gridRect.y + gridRect.height; + } else { + p1[0] = gridRect.x; + p1[1] = tickCoord; + p2[0] = gridRect.x + gridRect.width; + p2[1] = tickCoord; + } + var line = new Line({ + anid: 'minor_line_' + minorTicksCoords[i][k].tickValue, + autoBatch: true, + shape: { + x1: p1[0], + y1: p1[1], + x2: p2[0], + y2: p2[1] + }, + style: lineStyle, + silent: true + }); + subPixelOptimizeLine$1(line.shape, lineStyle.lineWidth); + axisGroup.add(line); + } + } + }, + splitArea: function (axisView, axisGroup, axisModel, gridModel) { + rectCoordAxisBuildSplitArea(axisView, axisGroup, axisModel, gridModel); + } + }; + var CartesianXAxisView = /** @class */function (_super) { + __extends(CartesianXAxisView, _super); + function CartesianXAxisView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = CartesianXAxisView.type; + return _this; + } + CartesianXAxisView.type = 'xAxis'; + return CartesianXAxisView; + }(CartesianAxisView); + var CartesianYAxisView = /** @class */function (_super) { + __extends(CartesianYAxisView, _super); + function CartesianYAxisView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = CartesianXAxisView.type; + return _this; + } + CartesianYAxisView.type = 'yAxis'; + return CartesianYAxisView; + }(CartesianAxisView); + + // Grid view + var GridView = /** @class */function (_super) { + __extends(GridView, _super); + function GridView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = 'grid'; + return _this; + } + GridView.prototype.render = function (gridModel, ecModel) { + this.group.removeAll(); + if (gridModel.get('show')) { + this.group.add(new Rect({ + shape: gridModel.coordinateSystem.getRect(), + style: defaults({ + fill: gridModel.get('backgroundColor') + }, gridModel.getItemStyle()), + silent: true, + z2: -1 + })); + } + }; + GridView.type = 'grid'; + return GridView; + }(ComponentView); + var extraOption = { + // gridIndex: 0, + // gridId: '', + offset: 0 + }; + function install$5(registers) { + registers.registerComponentView(GridView); + registers.registerComponentModel(GridModel); + registers.registerCoordinateSystem('cartesian2d', Grid); + axisModelCreator(registers, 'x', CartesianAxisModel, extraOption); + axisModelCreator(registers, 'y', CartesianAxisModel, extraOption); + registers.registerComponentView(CartesianXAxisView); + registers.registerComponentView(CartesianYAxisView); + registers.registerPreprocessor(function (option) { + // Only create grid when need + if (option.xAxis && option.yAxis && !option.grid) { + option.grid = {}; + } + }); + } + + function install$6(registers) { + // In case developer forget to include grid component + use(install$5); + registers.registerSeriesModel(ScatterSeriesModel); + registers.registerChartView(ScatterView); + registers.registerLayout(pointsLayout('scatter')); + } + + function radarLayout(ecModel) { + ecModel.eachSeriesByType('radar', function (seriesModel) { + var data = seriesModel.getData(); + var points = []; + var coordSys = seriesModel.coordinateSystem; + if (!coordSys) { + return; + } + var axes = coordSys.getIndicatorAxes(); + each(axes, function (axis, axisIndex) { + data.each(data.mapDimension(axes[axisIndex].dim), function (val, dataIndex) { + points[dataIndex] = points[dataIndex] || []; + var point = coordSys.dataToPoint(val, axisIndex); + points[dataIndex][axisIndex] = isValidPoint(point) ? point : getValueMissingPoint(coordSys); + }); + }); + // Close polygon + data.each(function (idx) { + // TODO + // Is it appropriate to connect to the next data when some data is missing? + // Or, should trade it like `connectNull` in line chart? + var firstPoint = find(points[idx], function (point) { + return isValidPoint(point); + }) || getValueMissingPoint(coordSys); + // Copy the first actual point to the end of the array + points[idx].push(firstPoint.slice()); + data.setItemLayout(idx, points[idx]); + }); + }); + } + function isValidPoint(point) { + return !isNaN(point[0]) && !isNaN(point[1]); + } + function getValueMissingPoint(coordSys) { + // It is error-prone to input [NaN, NaN] into polygon, polygon. + // (probably cause problem when refreshing or animating) + return [coordSys.cx, coordSys.cy]; + } + + function radarBackwardCompat(option) { + var polarOptArr = option.polar; + if (polarOptArr) { + if (!isArray(polarOptArr)) { + polarOptArr = [polarOptArr]; + } + var polarNotRadar_1 = []; + each(polarOptArr, function (polarOpt, idx) { + if (polarOpt.indicator) { + if (polarOpt.type && !polarOpt.shape) { + polarOpt.shape = polarOpt.type; + } + option.radar = option.radar || []; + if (!isArray(option.radar)) { + option.radar = [option.radar]; + } + option.radar.push(polarOpt); + } else { + polarNotRadar_1.push(polarOpt); + } + }); + option.polar = polarNotRadar_1; + } + each(option.series, function (seriesOpt) { + if (seriesOpt && seriesOpt.type === 'radar' && seriesOpt.polarIndex) { + seriesOpt.radarIndex = seriesOpt.polarIndex; + } + }); + } + + var RadarView = /** @class */function (_super) { + __extends(RadarView, _super); + function RadarView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = RadarView.type; + return _this; + } + RadarView.prototype.render = function (seriesModel, ecModel, api) { + var polar = seriesModel.coordinateSystem; + var group = this.group; + var data = seriesModel.getData(); + var oldData = this._data; + function createSymbol$1(data, idx) { + var symbolType = data.getItemVisual(idx, 'symbol') || 'circle'; + if (symbolType === 'none') { + return; + } + var symbolSize = normalizeSymbolSize(data.getItemVisual(idx, 'symbolSize')); + var symbolPath = createSymbol(symbolType, -1, -1, 2, 2); + var symbolRotate = data.getItemVisual(idx, 'symbolRotate') || 0; + symbolPath.attr({ + style: { + strokeNoScale: true + }, + z2: 100, + scaleX: symbolSize[0] / 2, + scaleY: symbolSize[1] / 2, + rotation: symbolRotate * Math.PI / 180 || 0 + }); + return symbolPath; + } + function updateSymbols(oldPoints, newPoints, symbolGroup, data, idx, isInit) { + // Simply rerender all + symbolGroup.removeAll(); + for (var i = 0; i < newPoints.length - 1; i++) { + var symbolPath = createSymbol$1(data, idx); + if (symbolPath) { + symbolPath.__dimIdx = i; + if (oldPoints[i]) { + symbolPath.setPosition(oldPoints[i]); + graphic[isInit ? 'initProps' : 'updateProps'](symbolPath, { + x: newPoints[i][0], + y: newPoints[i][1] + }, seriesModel, idx); + } else { + symbolPath.setPosition(newPoints[i]); + } + symbolGroup.add(symbolPath); + } + } + } + function getInitialPoints(points) { + return map(points, function (pt) { + return [polar.cx, polar.cy]; + }); + } + data.diff(oldData).add(function (idx) { + var points = data.getItemLayout(idx); + if (!points) { + return; + } + var polygon = new Polygon(); + var polyline = new Polyline(); + var target = { + shape: { + points: points + } + }; + polygon.shape.points = getInitialPoints(points); + polyline.shape.points = getInitialPoints(points); + initProps(polygon, target, seriesModel, idx); + initProps(polyline, target, seriesModel, idx); + var itemGroup = new Group(); + var symbolGroup = new Group(); + itemGroup.add(polyline); + itemGroup.add(polygon); + itemGroup.add(symbolGroup); + updateSymbols(polyline.shape.points, points, symbolGroup, data, idx, true); + data.setItemGraphicEl(idx, itemGroup); + }).update(function (newIdx, oldIdx) { + var itemGroup = oldData.getItemGraphicEl(oldIdx); + var polyline = itemGroup.childAt(0); + var polygon = itemGroup.childAt(1); + var symbolGroup = itemGroup.childAt(2); + var target = { + shape: { + points: data.getItemLayout(newIdx) + } + }; + if (!target.shape.points) { + return; + } + updateSymbols(polyline.shape.points, target.shape.points, symbolGroup, data, newIdx, false); + saveOldStyle(polygon); + saveOldStyle(polyline); + updateProps(polyline, target, seriesModel); + updateProps(polygon, target, seriesModel); + data.setItemGraphicEl(newIdx, itemGroup); + }).remove(function (idx) { + group.remove(oldData.getItemGraphicEl(idx)); + }).execute(); + data.eachItemGraphicEl(function (itemGroup, idx) { + var itemModel = data.getItemModel(idx); + var polyline = itemGroup.childAt(0); + var polygon = itemGroup.childAt(1); + var symbolGroup = itemGroup.childAt(2); + // Radar uses the visual encoded from itemStyle. + var itemStyle = data.getItemVisual(idx, 'style'); + var color = itemStyle.fill; + group.add(itemGroup); + polyline.useStyle(defaults(itemModel.getModel('lineStyle').getLineStyle(), { + fill: 'none', + stroke: color + })); + setStatesStylesFromModel(polyline, itemModel, 'lineStyle'); + setStatesStylesFromModel(polygon, itemModel, 'areaStyle'); + var areaStyleModel = itemModel.getModel('areaStyle'); + var polygonIgnore = areaStyleModel.isEmpty() && areaStyleModel.parentModel.isEmpty(); + polygon.ignore = polygonIgnore; + each(['emphasis', 'select', 'blur'], function (stateName) { + var stateModel = itemModel.getModel([stateName, 'areaStyle']); + var stateIgnore = stateModel.isEmpty() && stateModel.parentModel.isEmpty(); + // Won't be ignore if normal state is not ignore. + polygon.ensureState(stateName).ignore = stateIgnore && polygonIgnore; + }); + polygon.useStyle(defaults(areaStyleModel.getAreaStyle(), { + fill: color, + opacity: 0.7, + decal: itemStyle.decal + })); + var emphasisModel = itemModel.getModel('emphasis'); + var itemHoverStyle = emphasisModel.getModel('itemStyle').getItemStyle(); + symbolGroup.eachChild(function (symbolPath) { + if (symbolPath instanceof ZRImage) { + var pathStyle = symbolPath.style; + symbolPath.useStyle(extend({ + // TODO other properties like x, y ? + image: pathStyle.image, + x: pathStyle.x, + y: pathStyle.y, + width: pathStyle.width, + height: pathStyle.height + }, itemStyle)); + } else { + symbolPath.useStyle(itemStyle); + symbolPath.setColor(color); + symbolPath.style.strokeNoScale = true; + } + var pathEmphasisState = symbolPath.ensureState('emphasis'); + pathEmphasisState.style = clone(itemHoverStyle); + var defaultText = data.getStore().get(data.getDimensionIndex(symbolPath.__dimIdx), idx); + (defaultText == null || isNaN(defaultText)) && (defaultText = ''); + setLabelStyle(symbolPath, getLabelStatesModels(itemModel), { + labelFetcher: data.hostModel, + labelDataIndex: idx, + labelDimIndex: symbolPath.__dimIdx, + defaultText: defaultText, + inheritColor: color, + defaultOpacity: itemStyle.opacity + }); + }); + toggleHoverEmphasis(itemGroup, emphasisModel.get('focus'), emphasisModel.get('blurScope'), emphasisModel.get('disabled')); + }); + this._data = data; + }; + RadarView.prototype.remove = function () { + this.group.removeAll(); + this._data = null; + }; + RadarView.type = 'radar'; + return RadarView; + }(ChartView); + + var RadarSeriesModel = /** @class */function (_super) { + __extends(RadarSeriesModel, _super); + function RadarSeriesModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = RadarSeriesModel.type; + _this.hasSymbolVisual = true; + return _this; + } + // Overwrite + RadarSeriesModel.prototype.init = function (option) { + _super.prototype.init.apply(this, arguments); + // Enable legend selection for each data item + // Use a function instead of direct access because data reference may changed + this.legendVisualProvider = new LegendVisualProvider(bind(this.getData, this), bind(this.getRawData, this)); + }; + RadarSeriesModel.prototype.getInitialData = function (option, ecModel) { + return createSeriesDataSimply(this, { + generateCoord: 'indicator_', + generateCoordCount: Infinity + }); + }; + RadarSeriesModel.prototype.formatTooltip = function (dataIndex, multipleSeries, dataType) { + var data = this.getData(); + var coordSys = this.coordinateSystem; + var indicatorAxes = coordSys.getIndicatorAxes(); + var name = this.getData().getName(dataIndex); + var nameToDisplay = name === '' ? this.name : name; + var markerColor = retrieveVisualColorForTooltipMarker(this, dataIndex); + return createTooltipMarkup('section', { + header: nameToDisplay, + sortBlocks: true, + blocks: map(indicatorAxes, function (axis) { + var val = data.get(data.mapDimension(axis.dim), dataIndex); + return createTooltipMarkup('nameValue', { + markerType: 'subItem', + markerColor: markerColor, + name: axis.name, + value: val, + sortParam: val + }); + }) + }); + }; + RadarSeriesModel.prototype.getTooltipPosition = function (dataIndex) { + if (dataIndex != null) { + var data_1 = this.getData(); + var coordSys = this.coordinateSystem; + var values = data_1.getValues(map(coordSys.dimensions, function (dim) { + return data_1.mapDimension(dim); + }), dataIndex); + for (var i = 0, len = values.length; i < len; i++) { + if (!isNaN(values[i])) { + var indicatorAxes = coordSys.getIndicatorAxes(); + return coordSys.coordToPoint(indicatorAxes[i].dataToCoord(values[i]), i); + } + } + } + }; + RadarSeriesModel.type = 'series.radar'; + RadarSeriesModel.dependencies = ['radar']; + RadarSeriesModel.defaultOption = { + // zlevel: 0, + z: 2, + colorBy: 'data', + coordinateSystem: 'radar', + legendHoverLink: true, + radarIndex: 0, + lineStyle: { + width: 2, + type: 'solid', + join: 'round' + }, + label: { + position: 'top' + }, + // areaStyle: { + // }, + // itemStyle: {} + symbolSize: 8 + // symbolRotate: null + }; + + return RadarSeriesModel; + }(SeriesModel); + + var valueAxisDefault = axisDefault.value; + function defaultsShow(opt, show) { + return defaults({ + show: show + }, opt); + } + var RadarModel = /** @class */function (_super) { + __extends(RadarModel, _super); + function RadarModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = RadarModel.type; + return _this; + } + RadarModel.prototype.optionUpdated = function () { + var boundaryGap = this.get('boundaryGap'); + var splitNumber = this.get('splitNumber'); + var scale = this.get('scale'); + var axisLine = this.get('axisLine'); + var axisTick = this.get('axisTick'); + // let axisType = this.get('axisType'); + var axisLabel = this.get('axisLabel'); + var nameTextStyle = this.get('axisName'); + var showName = this.get(['axisName', 'show']); + var nameFormatter = this.get(['axisName', 'formatter']); + var nameGap = this.get('axisNameGap'); + var triggerEvent = this.get('triggerEvent'); + var indicatorModels = map(this.get('indicator') || [], function (indicatorOpt) { + // PENDING + if (indicatorOpt.max != null && indicatorOpt.max > 0 && !indicatorOpt.min) { + indicatorOpt.min = 0; + } else if (indicatorOpt.min != null && indicatorOpt.min < 0 && !indicatorOpt.max) { + indicatorOpt.max = 0; + } + var iNameTextStyle = nameTextStyle; + if (indicatorOpt.color != null) { + iNameTextStyle = defaults({ + color: indicatorOpt.color + }, nameTextStyle); + } + // Use same configuration + var innerIndicatorOpt = merge(clone(indicatorOpt), { + boundaryGap: boundaryGap, + splitNumber: splitNumber, + scale: scale, + axisLine: axisLine, + axisTick: axisTick, + // axisType: axisType, + axisLabel: axisLabel, + // Compatible with 2 and use text + name: indicatorOpt.text, + showName: showName, + nameLocation: 'end', + nameGap: nameGap, + // min: 0, + nameTextStyle: iNameTextStyle, + triggerEvent: triggerEvent + }, false); + if (isString(nameFormatter)) { + var indName = innerIndicatorOpt.name; + innerIndicatorOpt.name = nameFormatter.replace('{value}', indName != null ? indName : ''); + } else if (isFunction(nameFormatter)) { + innerIndicatorOpt.name = nameFormatter(innerIndicatorOpt.name, innerIndicatorOpt); + } + var model = new Model(innerIndicatorOpt, null, this.ecModel); + mixin(model, AxisModelCommonMixin.prototype); + // For triggerEvent. + model.mainType = 'radar'; + model.componentIndex = this.componentIndex; + return model; + }, this); + this._indicatorModels = indicatorModels; + }; + RadarModel.prototype.getIndicatorModels = function () { + return this._indicatorModels; + }; + RadarModel.type = 'radar'; + RadarModel.defaultOption = { + // zlevel: 0, + z: 0, + center: ['50%', '50%'], + radius: '75%', + startAngle: 90, + axisName: { + show: true + // formatter: null + // textStyle: {} + }, + + boundaryGap: [0, 0], + splitNumber: 5, + axisNameGap: 15, + scale: false, + // Polygon or circle + shape: 'polygon', + axisLine: merge({ + lineStyle: { + color: '#bbb' + } + }, valueAxisDefault.axisLine), + axisLabel: defaultsShow(valueAxisDefault.axisLabel, false), + axisTick: defaultsShow(valueAxisDefault.axisTick, false), + // axisType: 'value', + splitLine: defaultsShow(valueAxisDefault.splitLine, true), + splitArea: defaultsShow(valueAxisDefault.splitArea, true), + // {text, min, max} + indicator: [] + }; + return RadarModel; + }(ComponentModel); + + var axisBuilderAttrs$1 = ['axisLine', 'axisTickLabel', 'axisName']; + var RadarView$1 = /** @class */function (_super) { + __extends(RadarView, _super); + function RadarView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = RadarView.type; + return _this; + } + RadarView.prototype.render = function (radarModel, ecModel, api) { + var group = this.group; + group.removeAll(); + this._buildAxes(radarModel); + this._buildSplitLineAndArea(radarModel); + }; + RadarView.prototype._buildAxes = function (radarModel) { + var radar = radarModel.coordinateSystem; + var indicatorAxes = radar.getIndicatorAxes(); + var axisBuilders = map(indicatorAxes, function (indicatorAxis) { + var axisName = indicatorAxis.model.get('showName') ? indicatorAxis.name : ''; // hide name + var axisBuilder = new AxisBuilder(indicatorAxis.model, { + axisName: axisName, + position: [radar.cx, radar.cy], + rotation: indicatorAxis.angle, + labelDirection: -1, + tickDirection: -1, + nameDirection: 1 + }); + return axisBuilder; + }); + each(axisBuilders, function (axisBuilder) { + each(axisBuilderAttrs$1, axisBuilder.add, axisBuilder); + this.group.add(axisBuilder.getGroup()); + }, this); + }; + RadarView.prototype._buildSplitLineAndArea = function (radarModel) { + var radar = radarModel.coordinateSystem; + var indicatorAxes = radar.getIndicatorAxes(); + if (!indicatorAxes.length) { + return; + } + var shape = radarModel.get('shape'); + var splitLineModel = radarModel.getModel('splitLine'); + var splitAreaModel = radarModel.getModel('splitArea'); + var lineStyleModel = splitLineModel.getModel('lineStyle'); + var areaStyleModel = splitAreaModel.getModel('areaStyle'); + var showSplitLine = splitLineModel.get('show'); + var showSplitArea = splitAreaModel.get('show'); + var splitLineColors = lineStyleModel.get('color'); + var splitAreaColors = areaStyleModel.get('color'); + var splitLineColorsArr = isArray(splitLineColors) ? splitLineColors : [splitLineColors]; + var splitAreaColorsArr = isArray(splitAreaColors) ? splitAreaColors : [splitAreaColors]; + var splitLines = []; + var splitAreas = []; + function getColorIndex(areaOrLine, areaOrLineColorList, idx) { + var colorIndex = idx % areaOrLineColorList.length; + areaOrLine[colorIndex] = areaOrLine[colorIndex] || []; + return colorIndex; + } + if (shape === 'circle') { + var ticksRadius = indicatorAxes[0].getTicksCoords(); + var cx = radar.cx; + var cy = radar.cy; + for (var i = 0; i < ticksRadius.length; i++) { + if (showSplitLine) { + var colorIndex = getColorIndex(splitLines, splitLineColorsArr, i); + splitLines[colorIndex].push(new Circle({ + shape: { + cx: cx, + cy: cy, + r: ticksRadius[i].coord + } + })); + } + if (showSplitArea && i < ticksRadius.length - 1) { + var colorIndex = getColorIndex(splitAreas, splitAreaColorsArr, i); + splitAreas[colorIndex].push(new Ring({ + shape: { + cx: cx, + cy: cy, + r0: ticksRadius[i].coord, + r: ticksRadius[i + 1].coord + } + })); + } + } + } + // Polyyon + else { + var realSplitNumber_1; + var axesTicksPoints = map(indicatorAxes, function (indicatorAxis, idx) { + var ticksCoords = indicatorAxis.getTicksCoords(); + realSplitNumber_1 = realSplitNumber_1 == null ? ticksCoords.length - 1 : Math.min(ticksCoords.length - 1, realSplitNumber_1); + return map(ticksCoords, function (tickCoord) { + return radar.coordToPoint(tickCoord.coord, idx); + }); + }); + var prevPoints = []; + for (var i = 0; i <= realSplitNumber_1; i++) { + var points = []; + for (var j = 0; j < indicatorAxes.length; j++) { + points.push(axesTicksPoints[j][i]); + } + // Close + if (points[0]) { + points.push(points[0].slice()); + } else { + if ("development" !== 'production') { + console.error('Can\'t draw value axis ' + i); + } + } + if (showSplitLine) { + var colorIndex = getColorIndex(splitLines, splitLineColorsArr, i); + splitLines[colorIndex].push(new Polyline({ + shape: { + points: points + } + })); + } + if (showSplitArea && prevPoints) { + var colorIndex = getColorIndex(splitAreas, splitAreaColorsArr, i - 1); + splitAreas[colorIndex].push(new Polygon({ + shape: { + points: points.concat(prevPoints) + } + })); + } + prevPoints = points.slice().reverse(); + } + } + var lineStyle = lineStyleModel.getLineStyle(); + var areaStyle = areaStyleModel.getAreaStyle(); + // Add splitArea before splitLine + each(splitAreas, function (splitAreas, idx) { + this.group.add(mergePath$1(splitAreas, { + style: defaults({ + stroke: 'none', + fill: splitAreaColorsArr[idx % splitAreaColorsArr.length] + }, areaStyle), + silent: true + })); + }, this); + each(splitLines, function (splitLines, idx) { + this.group.add(mergePath$1(splitLines, { + style: defaults({ + fill: 'none', + stroke: splitLineColorsArr[idx % splitLineColorsArr.length] + }, lineStyle), + silent: true + })); + }, this); + }; + RadarView.type = 'radar'; + return RadarView; + }(ComponentView); + + var IndicatorAxis = /** @class */function (_super) { + __extends(IndicatorAxis, _super); + function IndicatorAxis(dim, scale, radiusExtent) { + var _this = _super.call(this, dim, scale, radiusExtent) || this; + _this.type = 'value'; + _this.angle = 0; + _this.name = ''; + return _this; + } + return IndicatorAxis; + }(Axis); + + var Radar = /** @class */function () { + function Radar(radarModel, ecModel, api) { + /** + * + * Radar dimensions + */ + this.dimensions = []; + this._model = radarModel; + this._indicatorAxes = map(radarModel.getIndicatorModels(), function (indicatorModel, idx) { + var dim = 'indicator_' + idx; + var indicatorAxis = new IndicatorAxis(dim, new IntervalScale() + // (indicatorModel.get('axisType') === 'log') ? new LogScale() : new IntervalScale() + ); + + indicatorAxis.name = indicatorModel.get('name'); + // Inject model and axis + indicatorAxis.model = indicatorModel; + indicatorModel.axis = indicatorAxis; + this.dimensions.push(dim); + return indicatorAxis; + }, this); + this.resize(radarModel, api); + } + Radar.prototype.getIndicatorAxes = function () { + return this._indicatorAxes; + }; + Radar.prototype.dataToPoint = function (value, indicatorIndex) { + var indicatorAxis = this._indicatorAxes[indicatorIndex]; + return this.coordToPoint(indicatorAxis.dataToCoord(value), indicatorIndex); + }; + // TODO: API should be coordToPoint([coord, indicatorIndex]) + Radar.prototype.coordToPoint = function (coord, indicatorIndex) { + var indicatorAxis = this._indicatorAxes[indicatorIndex]; + var angle = indicatorAxis.angle; + var x = this.cx + coord * Math.cos(angle); + var y = this.cy - coord * Math.sin(angle); + return [x, y]; + }; + Radar.prototype.pointToData = function (pt) { + var dx = pt[0] - this.cx; + var dy = pt[1] - this.cy; + var radius = Math.sqrt(dx * dx + dy * dy); + dx /= radius; + dy /= radius; + var radian = Math.atan2(-dy, dx); + // Find the closest angle + // FIXME index can calculated directly + var minRadianDiff = Infinity; + var closestAxis; + var closestAxisIdx = -1; + for (var i = 0; i < this._indicatorAxes.length; i++) { + var indicatorAxis = this._indicatorAxes[i]; + var diff = Math.abs(radian - indicatorAxis.angle); + if (diff < minRadianDiff) { + closestAxis = indicatorAxis; + closestAxisIdx = i; + minRadianDiff = diff; + } + } + return [closestAxisIdx, +(closestAxis && closestAxis.coordToData(radius))]; + }; + Radar.prototype.resize = function (radarModel, api) { + var center = radarModel.get('center'); + var viewWidth = api.getWidth(); + var viewHeight = api.getHeight(); + var viewSize = Math.min(viewWidth, viewHeight) / 2; + this.cx = parsePercent$1(center[0], viewWidth); + this.cy = parsePercent$1(center[1], viewHeight); + this.startAngle = radarModel.get('startAngle') * Math.PI / 180; + // radius may be single value like `20`, `'80%'`, or array like `[10, '80%']` + var radius = radarModel.get('radius'); + if (isString(radius) || isNumber(radius)) { + radius = [0, radius]; + } + this.r0 = parsePercent$1(radius[0], viewSize); + this.r = parsePercent$1(radius[1], viewSize); + each(this._indicatorAxes, function (indicatorAxis, idx) { + indicatorAxis.setExtent(this.r0, this.r); + var angle = this.startAngle + idx * Math.PI * 2 / this._indicatorAxes.length; + // Normalize to [-PI, PI] + angle = Math.atan2(Math.sin(angle), Math.cos(angle)); + indicatorAxis.angle = angle; + }, this); + }; + Radar.prototype.update = function (ecModel, api) { + var indicatorAxes = this._indicatorAxes; + var radarModel = this._model; + each(indicatorAxes, function (indicatorAxis) { + indicatorAxis.scale.setExtent(Infinity, -Infinity); + }); + ecModel.eachSeriesByType('radar', function (radarSeries, idx) { + if (radarSeries.get('coordinateSystem') !== 'radar' + // @ts-ignore + || ecModel.getComponent('radar', radarSeries.get('radarIndex')) !== radarModel) { + return; + } + var data = radarSeries.getData(); + each(indicatorAxes, function (indicatorAxis) { + indicatorAxis.scale.unionExtentFromData(data, data.mapDimension(indicatorAxis.dim)); + }); + }, this); + var splitNumber = radarModel.get('splitNumber'); + var dummyScale = new IntervalScale(); + dummyScale.setExtent(0, splitNumber); + dummyScale.setInterval(1); + // Force all the axis fixing the maxSplitNumber. + each(indicatorAxes, function (indicatorAxis, idx) { + alignScaleTicks(indicatorAxis.scale, indicatorAxis.model, dummyScale); + }); + }; + Radar.prototype.convertToPixel = function (ecModel, finder, value) { + console.warn('Not implemented.'); + return null; + }; + Radar.prototype.convertFromPixel = function (ecModel, finder, pixel) { + console.warn('Not implemented.'); + return null; + }; + Radar.prototype.containPoint = function (point) { + console.warn('Not implemented.'); + return false; + }; + Radar.create = function (ecModel, api) { + var radarList = []; + ecModel.eachComponent('radar', function (radarModel) { + var radar = new Radar(radarModel, ecModel, api); + radarList.push(radar); + radarModel.coordinateSystem = radar; + }); + ecModel.eachSeriesByType('radar', function (radarSeries) { + if (radarSeries.get('coordinateSystem') === 'radar') { + // Inject coordinate system + // @ts-ignore + radarSeries.coordinateSystem = radarList[radarSeries.get('radarIndex') || 0]; + } + }); + return radarList; + }; + /** + * Radar dimensions is based on the data + */ + Radar.dimensions = []; + return Radar; + }(); + + function install$7(registers) { + registers.registerCoordinateSystem('radar', Radar); + registers.registerComponentModel(RadarModel); + registers.registerComponentView(RadarView$1); + registers.registerVisual({ + seriesType: 'radar', + reset: function (seriesModel) { + var data = seriesModel.getData(); + // itemVisual symbol is for selected data + data.each(function (idx) { + data.setItemVisual(idx, 'legendIcon', 'roundRect'); + }); + // visual is for unselected data + data.setVisual('legendIcon', 'roundRect'); + } + }); + } + + function install$8(registers) { + use(install$7); + registers.registerChartView(RadarView); + registers.registerSeriesModel(RadarSeriesModel); + registers.registerLayout(radarLayout); + registers.registerProcessor(dataFilter('radar')); + registers.registerPreprocessor(radarBackwardCompat); + } + + var ATTR = '\0_ec_interaction_mutex'; + function take(zr, resourceKey, userKey) { + var store = getStore(zr); + store[resourceKey] = userKey; + } + function release(zr, resourceKey, userKey) { + var store = getStore(zr); + var uKey = store[resourceKey]; + if (uKey === userKey) { + store[resourceKey] = null; + } + } + function isTaken(zr, resourceKey) { + return !!getStore(zr)[resourceKey]; + } + function getStore(zr) { + return zr[ATTR] || (zr[ATTR] = {}); + } + /** + * payload: { + * type: 'takeGlobalCursor', + * key: 'dataZoomSelect', or 'brush', or ..., + * If no userKey, release global cursor. + * } + */ + // TODO: SELF REGISTERED. + registerAction({ + type: 'takeGlobalCursor', + event: 'globalCursorTaken', + update: 'update' + }, noop); + + var RoamController = /** @class */function (_super) { + __extends(RoamController, _super); + function RoamController(zr) { + var _this = _super.call(this) || this; + _this._zr = zr; + // Avoid two roamController bind the same handler + var mousedownHandler = bind(_this._mousedownHandler, _this); + var mousemoveHandler = bind(_this._mousemoveHandler, _this); + var mouseupHandler = bind(_this._mouseupHandler, _this); + var mousewheelHandler = bind(_this._mousewheelHandler, _this); + var pinchHandler = bind(_this._pinchHandler, _this); + /** + * Notice: only enable needed types. For example, if 'zoom' + * is not needed, 'zoom' should not be enabled, otherwise + * default mousewheel behaviour (scroll page) will be disabled. + */ + _this.enable = function (controlType, opt) { + // Disable previous first + this.disable(); + this._opt = defaults(clone(opt) || {}, { + zoomOnMouseWheel: true, + moveOnMouseMove: true, + // By default, wheel do not trigger move. + moveOnMouseWheel: false, + preventDefaultMouseMove: true + }); + if (controlType == null) { + controlType = true; + } + if (controlType === true || controlType === 'move' || controlType === 'pan') { + zr.on('mousedown', mousedownHandler); + zr.on('mousemove', mousemoveHandler); + zr.on('mouseup', mouseupHandler); + } + if (controlType === true || controlType === 'scale' || controlType === 'zoom') { + zr.on('mousewheel', mousewheelHandler); + zr.on('pinch', pinchHandler); + } + }; + _this.disable = function () { + zr.off('mousedown', mousedownHandler); + zr.off('mousemove', mousemoveHandler); + zr.off('mouseup', mouseupHandler); + zr.off('mousewheel', mousewheelHandler); + zr.off('pinch', pinchHandler); + }; + return _this; + } + RoamController.prototype.isDragging = function () { + return this._dragging; + }; + RoamController.prototype.isPinching = function () { + return this._pinching; + }; + RoamController.prototype.setPointerChecker = function (pointerChecker) { + this.pointerChecker = pointerChecker; + }; + RoamController.prototype.dispose = function () { + this.disable(); + }; + RoamController.prototype._mousedownHandler = function (e) { + if (isMiddleOrRightButtonOnMouseUpDown(e)) { + return; + } + var el = e.target; + while (el) { + if (el.draggable) { + return; + } + // check if host is draggable + el = el.__hostTarget || el.parent; + } + var x = e.offsetX; + var y = e.offsetY; + // Only check on mosedown, but not mousemove. + // Mouse can be out of target when mouse moving. + if (this.pointerChecker && this.pointerChecker(e, x, y)) { + this._x = x; + this._y = y; + this._dragging = true; + } + }; + RoamController.prototype._mousemoveHandler = function (e) { + if (!this._dragging || !isAvailableBehavior('moveOnMouseMove', e, this._opt) || e.gestureEvent === 'pinch' || isTaken(this._zr, 'globalPan')) { + return; + } + var x = e.offsetX; + var y = e.offsetY; + var oldX = this._x; + var oldY = this._y; + var dx = x - oldX; + var dy = y - oldY; + this._x = x; + this._y = y; + this._opt.preventDefaultMouseMove && stop(e.event); + trigger(this, 'pan', 'moveOnMouseMove', e, { + dx: dx, + dy: dy, + oldX: oldX, + oldY: oldY, + newX: x, + newY: y, + isAvailableBehavior: null + }); + }; + RoamController.prototype._mouseupHandler = function (e) { + if (!isMiddleOrRightButtonOnMouseUpDown(e)) { + this._dragging = false; + } + }; + RoamController.prototype._mousewheelHandler = function (e) { + var shouldZoom = isAvailableBehavior('zoomOnMouseWheel', e, this._opt); + var shouldMove = isAvailableBehavior('moveOnMouseWheel', e, this._opt); + var wheelDelta = e.wheelDelta; + var absWheelDeltaDelta = Math.abs(wheelDelta); + var originX = e.offsetX; + var originY = e.offsetY; + // wheelDelta maybe -0 in chrome mac. + if (wheelDelta === 0 || !shouldZoom && !shouldMove) { + return; + } + // If both `shouldZoom` and `shouldMove` is true, trigger + // their event both, and the final behavior is determined + // by event listener themselves. + if (shouldZoom) { + // Convenience: + // Mac and VM Windows on Mac: scroll up: zoom out. + // Windows: scroll up: zoom in. + // FIXME: Should do more test in different environment. + // wheelDelta is too complicated in difference nvironment + // (https://developer.mozilla.org/en-US/docs/Web/Events/mousewheel), + // although it has been normallized by zrender. + // wheelDelta of mouse wheel is bigger than touch pad. + var factor = absWheelDeltaDelta > 3 ? 1.4 : absWheelDeltaDelta > 1 ? 1.2 : 1.1; + var scale = wheelDelta > 0 ? factor : 1 / factor; + checkPointerAndTrigger(this, 'zoom', 'zoomOnMouseWheel', e, { + scale: scale, + originX: originX, + originY: originY, + isAvailableBehavior: null + }); + } + if (shouldMove) { + // FIXME: Should do more test in different environment. + var absDelta = Math.abs(wheelDelta); + // wheelDelta of mouse wheel is bigger than touch pad. + var scrollDelta = (wheelDelta > 0 ? 1 : -1) * (absDelta > 3 ? 0.4 : absDelta > 1 ? 0.15 : 0.05); + checkPointerAndTrigger(this, 'scrollMove', 'moveOnMouseWheel', e, { + scrollDelta: scrollDelta, + originX: originX, + originY: originY, + isAvailableBehavior: null + }); + } + }; + RoamController.prototype._pinchHandler = function (e) { + if (isTaken(this._zr, 'globalPan')) { + return; + } + var scale = e.pinchScale > 1 ? 1.1 : 1 / 1.1; + checkPointerAndTrigger(this, 'zoom', null, e, { + scale: scale, + originX: e.pinchX, + originY: e.pinchY, + isAvailableBehavior: null + }); + }; + return RoamController; + }(Eventful); + function checkPointerAndTrigger(controller, eventName, behaviorToCheck, e, contollerEvent) { + if (controller.pointerChecker && controller.pointerChecker(e, contollerEvent.originX, contollerEvent.originY)) { + // When mouse is out of roamController rect, + // default befavoius should not be be disabled, otherwise + // page sliding is disabled, contrary to expectation. + stop(e.event); + trigger(controller, eventName, behaviorToCheck, e, contollerEvent); + } + } + function trigger(controller, eventName, behaviorToCheck, e, contollerEvent) { + // Also provide behavior checker for event listener, for some case that + // multiple components share one listener. + contollerEvent.isAvailableBehavior = bind(isAvailableBehavior, null, behaviorToCheck, e); + // TODO should not have type issue. + controller.trigger(eventName, contollerEvent); + } + // settings: { + // zoomOnMouseWheel + // moveOnMouseMove + // moveOnMouseWheel + // } + // The value can be: true / false / 'shift' / 'ctrl' / 'alt'. + function isAvailableBehavior(behaviorToCheck, e, settings) { + var setting = settings[behaviorToCheck]; + return !behaviorToCheck || setting && (!isString(setting) || e.event[setting + 'Key']); + } + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + + /** + * AUTO-GENERATED FILE. DO NOT MODIFY. + */ + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + /** + * For geo and graph. + */ + function updateViewOnPan(controllerHost, dx, dy) { + var target = controllerHost.target; + target.x += dx; + target.y += dy; + target.dirty(); + } + /** + * For geo and graph. + */ + function updateViewOnZoom(controllerHost, zoomDelta, zoomX, zoomY) { + var target = controllerHost.target; + var zoomLimit = controllerHost.zoomLimit; + var newZoom = controllerHost.zoom = controllerHost.zoom || 1; + newZoom *= zoomDelta; + if (zoomLimit) { + var zoomMin = zoomLimit.min || 0; + var zoomMax = zoomLimit.max || Infinity; + newZoom = Math.max(Math.min(zoomMax, newZoom), zoomMin); + } + var zoomScale = newZoom / controllerHost.zoom; + controllerHost.zoom = newZoom; + // Keep the mouse center when scaling + target.x -= (zoomX - target.x) * (zoomScale - 1); + target.y -= (zoomY - target.y) * (zoomScale - 1); + target.scaleX *= zoomScale; + target.scaleY *= zoomScale; + target.dirty(); + } + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + + /** + * AUTO-GENERATED FILE. DO NOT MODIFY. + */ + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + var IRRELEVANT_EXCLUDES = { + 'axisPointer': 1, + 'tooltip': 1, + 'brush': 1 + }; + /** + * Avoid that: mouse click on a elements that is over geo or graph, + * but roam is triggered. + */ + function onIrrelevantElement(e, api, targetCoordSysModel) { + var model = api.getComponentByElement(e.topTarget); + // If model is axisModel, it works only if it is injected with coordinateSystem. + var coordSys = model && model.coordinateSystem; + return model && model !== targetCoordSysModel && !IRRELEVANT_EXCLUDES.hasOwnProperty(model.mainType) && coordSys && coordSys.model !== targetCoordSysModel; + } + + function parseXML(svg) { + if (isString(svg)) { + var parser = new DOMParser(); + svg = parser.parseFromString(svg, 'text/xml'); + } + var svgNode = svg; + if (svgNode.nodeType === 9) { + svgNode = svgNode.firstChild; + } + while (svgNode.nodeName.toLowerCase() !== 'svg' || svgNode.nodeType !== 1) { + svgNode = svgNode.nextSibling; + } + return svgNode; + } + + var nodeParsers; + var INHERITABLE_STYLE_ATTRIBUTES_MAP = { + 'fill': 'fill', + 'stroke': 'stroke', + 'stroke-width': 'lineWidth', + 'opacity': 'opacity', + 'fill-opacity': 'fillOpacity', + 'stroke-opacity': 'strokeOpacity', + 'stroke-dasharray': 'lineDash', + 'stroke-dashoffset': 'lineDashOffset', + 'stroke-linecap': 'lineCap', + 'stroke-linejoin': 'lineJoin', + 'stroke-miterlimit': 'miterLimit', + 'font-family': 'fontFamily', + 'font-size': 'fontSize', + 'font-style': 'fontStyle', + 'font-weight': 'fontWeight', + 'text-anchor': 'textAlign', + 'visibility': 'visibility', + 'display': 'display' + }; + var INHERITABLE_STYLE_ATTRIBUTES_MAP_KEYS = keys(INHERITABLE_STYLE_ATTRIBUTES_MAP); + var SELF_STYLE_ATTRIBUTES_MAP = { + 'alignment-baseline': 'textBaseline', + 'stop-color': 'stopColor' + }; + var SELF_STYLE_ATTRIBUTES_MAP_KEYS = keys(SELF_STYLE_ATTRIBUTES_MAP); + var SVGParser = (function () { + function SVGParser() { + this._defs = {}; + this._root = null; + } + SVGParser.prototype.parse = function (xml, opt) { + opt = opt || {}; + var svg = parseXML(xml); + if ("development" !== 'production') { + if (!svg) { + throw new Error('Illegal svg'); + } + } + this._defsUsePending = []; + var root = new Group(); + this._root = root; + var named = []; + var viewBox = svg.getAttribute('viewBox') || ''; + var width = parseFloat((svg.getAttribute('width') || opt.width)); + var height = parseFloat((svg.getAttribute('height') || opt.height)); + isNaN(width) && (width = null); + isNaN(height) && (height = null); + parseAttributes(svg, root, null, true, false); + var child = svg.firstChild; + while (child) { + this._parseNode(child, root, named, null, false, false); + child = child.nextSibling; + } + applyDefs(this._defs, this._defsUsePending); + this._defsUsePending = []; + var viewBoxRect; + var viewBoxTransform; + if (viewBox) { + var viewBoxArr = splitNumberSequence(viewBox); + if (viewBoxArr.length >= 4) { + viewBoxRect = { + x: parseFloat((viewBoxArr[0] || 0)), + y: parseFloat((viewBoxArr[1] || 0)), + width: parseFloat(viewBoxArr[2]), + height: parseFloat(viewBoxArr[3]) + }; + } + } + if (viewBoxRect && width != null && height != null) { + viewBoxTransform = makeViewBoxTransform(viewBoxRect, { x: 0, y: 0, width: width, height: height }); + if (!opt.ignoreViewBox) { + var elRoot = root; + root = new Group(); + root.add(elRoot); + elRoot.scaleX = elRoot.scaleY = viewBoxTransform.scale; + elRoot.x = viewBoxTransform.x; + elRoot.y = viewBoxTransform.y; + } + } + if (!opt.ignoreRootClip && width != null && height != null) { + root.setClipPath(new Rect({ + shape: { x: 0, y: 0, width: width, height: height } + })); + } + return { + root: root, + width: width, + height: height, + viewBoxRect: viewBoxRect, + viewBoxTransform: viewBoxTransform, + named: named + }; + }; + SVGParser.prototype._parseNode = function (xmlNode, parentGroup, named, namedFrom, isInDefs, isInText) { + var nodeName = xmlNode.nodeName.toLowerCase(); + var el; + var namedFromForSub = namedFrom; + if (nodeName === 'defs') { + isInDefs = true; + } + if (nodeName === 'text') { + isInText = true; + } + if (nodeName === 'defs' || nodeName === 'switch') { + el = parentGroup; + } + else { + if (!isInDefs) { + var parser_1 = nodeParsers[nodeName]; + if (parser_1 && hasOwn(nodeParsers, nodeName)) { + el = parser_1.call(this, xmlNode, parentGroup); + var nameAttr = xmlNode.getAttribute('name'); + if (nameAttr) { + var newNamed = { + name: nameAttr, + namedFrom: null, + svgNodeTagLower: nodeName, + el: el + }; + named.push(newNamed); + if (nodeName === 'g') { + namedFromForSub = newNamed; + } + } + else if (namedFrom) { + named.push({ + name: namedFrom.name, + namedFrom: namedFrom, + svgNodeTagLower: nodeName, + el: el + }); + } + parentGroup.add(el); + } + } + var parser = paintServerParsers[nodeName]; + if (parser && hasOwn(paintServerParsers, nodeName)) { + var def = parser.call(this, xmlNode); + var id = xmlNode.getAttribute('id'); + if (id) { + this._defs[id] = def; + } + } + } + if (el && el.isGroup) { + var child = xmlNode.firstChild; + while (child) { + if (child.nodeType === 1) { + this._parseNode(child, el, named, namedFromForSub, isInDefs, isInText); + } + else if (child.nodeType === 3 && isInText) { + this._parseText(child, el); + } + child = child.nextSibling; + } + } + }; + SVGParser.prototype._parseText = function (xmlNode, parentGroup) { + var text = new TSpan({ + style: { + text: xmlNode.textContent + }, + silent: true, + x: this._textX || 0, + y: this._textY || 0 + }); + inheritStyle(parentGroup, text); + parseAttributes(xmlNode, text, this._defsUsePending, false, false); + applyTextAlignment(text, parentGroup); + var textStyle = text.style; + var fontSize = textStyle.fontSize; + if (fontSize && fontSize < 9) { + textStyle.fontSize = 9; + text.scaleX *= fontSize / 9; + text.scaleY *= fontSize / 9; + } + var font = (textStyle.fontSize || textStyle.fontFamily) && [ + textStyle.fontStyle, + textStyle.fontWeight, + (textStyle.fontSize || 12) + 'px', + textStyle.fontFamily || 'sans-serif' + ].join(' '); + textStyle.font = font; + var rect = text.getBoundingRect(); + this._textX += rect.width; + parentGroup.add(text); + return text; + }; + SVGParser.internalField = (function () { + nodeParsers = { + 'g': function (xmlNode, parentGroup) { + var g = new Group(); + inheritStyle(parentGroup, g); + parseAttributes(xmlNode, g, this._defsUsePending, false, false); + return g; + }, + 'rect': function (xmlNode, parentGroup) { + var rect = new Rect(); + inheritStyle(parentGroup, rect); + parseAttributes(xmlNode, rect, this._defsUsePending, false, false); + rect.setShape({ + x: parseFloat(xmlNode.getAttribute('x') || '0'), + y: parseFloat(xmlNode.getAttribute('y') || '0'), + width: parseFloat(xmlNode.getAttribute('width') || '0'), + height: parseFloat(xmlNode.getAttribute('height') || '0') + }); + rect.silent = true; + return rect; + }, + 'circle': function (xmlNode, parentGroup) { + var circle = new Circle(); + inheritStyle(parentGroup, circle); + parseAttributes(xmlNode, circle, this._defsUsePending, false, false); + circle.setShape({ + cx: parseFloat(xmlNode.getAttribute('cx') || '0'), + cy: parseFloat(xmlNode.getAttribute('cy') || '0'), + r: parseFloat(xmlNode.getAttribute('r') || '0') + }); + circle.silent = true; + return circle; + }, + 'line': function (xmlNode, parentGroup) { + var line = new Line(); + inheritStyle(parentGroup, line); + parseAttributes(xmlNode, line, this._defsUsePending, false, false); + line.setShape({ + x1: parseFloat(xmlNode.getAttribute('x1') || '0'), + y1: parseFloat(xmlNode.getAttribute('y1') || '0'), + x2: parseFloat(xmlNode.getAttribute('x2') || '0'), + y2: parseFloat(xmlNode.getAttribute('y2') || '0') + }); + line.silent = true; + return line; + }, + 'ellipse': function (xmlNode, parentGroup) { + var ellipse = new Ellipse(); + inheritStyle(parentGroup, ellipse); + parseAttributes(xmlNode, ellipse, this._defsUsePending, false, false); + ellipse.setShape({ + cx: parseFloat(xmlNode.getAttribute('cx') || '0'), + cy: parseFloat(xmlNode.getAttribute('cy') || '0'), + rx: parseFloat(xmlNode.getAttribute('rx') || '0'), + ry: parseFloat(xmlNode.getAttribute('ry') || '0') + }); + ellipse.silent = true; + return ellipse; + }, + 'polygon': function (xmlNode, parentGroup) { + var pointsStr = xmlNode.getAttribute('points'); + var pointsArr; + if (pointsStr) { + pointsArr = parsePoints(pointsStr); + } + var polygon = new Polygon({ + shape: { + points: pointsArr || [] + }, + silent: true + }); + inheritStyle(parentGroup, polygon); + parseAttributes(xmlNode, polygon, this._defsUsePending, false, false); + return polygon; + }, + 'polyline': function (xmlNode, parentGroup) { + var pointsStr = xmlNode.getAttribute('points'); + var pointsArr; + if (pointsStr) { + pointsArr = parsePoints(pointsStr); + } + var polyline = new Polyline({ + shape: { + points: pointsArr || [] + }, + silent: true + }); + inheritStyle(parentGroup, polyline); + parseAttributes(xmlNode, polyline, this._defsUsePending, false, false); + return polyline; + }, + 'image': function (xmlNode, parentGroup) { + var img = new ZRImage(); + inheritStyle(parentGroup, img); + parseAttributes(xmlNode, img, this._defsUsePending, false, false); + img.setStyle({ + image: xmlNode.getAttribute('xlink:href') || xmlNode.getAttribute('href'), + x: +xmlNode.getAttribute('x'), + y: +xmlNode.getAttribute('y'), + width: +xmlNode.getAttribute('width'), + height: +xmlNode.getAttribute('height') + }); + img.silent = true; + return img; + }, + 'text': function (xmlNode, parentGroup) { + var x = xmlNode.getAttribute('x') || '0'; + var y = xmlNode.getAttribute('y') || '0'; + var dx = xmlNode.getAttribute('dx') || '0'; + var dy = xmlNode.getAttribute('dy') || '0'; + this._textX = parseFloat(x) + parseFloat(dx); + this._textY = parseFloat(y) + parseFloat(dy); + var g = new Group(); + inheritStyle(parentGroup, g); + parseAttributes(xmlNode, g, this._defsUsePending, false, true); + return g; + }, + 'tspan': function (xmlNode, parentGroup) { + var x = xmlNode.getAttribute('x'); + var y = xmlNode.getAttribute('y'); + if (x != null) { + this._textX = parseFloat(x); + } + if (y != null) { + this._textY = parseFloat(y); + } + var dx = xmlNode.getAttribute('dx') || '0'; + var dy = xmlNode.getAttribute('dy') || '0'; + var g = new Group(); + inheritStyle(parentGroup, g); + parseAttributes(xmlNode, g, this._defsUsePending, false, true); + this._textX += parseFloat(dx); + this._textY += parseFloat(dy); + return g; + }, + 'path': function (xmlNode, parentGroup) { + var d = xmlNode.getAttribute('d') || ''; + var path = createFromString(d); + inheritStyle(parentGroup, path); + parseAttributes(xmlNode, path, this._defsUsePending, false, false); + path.silent = true; + return path; + } + }; + })(); + return SVGParser; + }()); + var paintServerParsers = { + 'lineargradient': function (xmlNode) { + var x1 = parseInt(xmlNode.getAttribute('x1') || '0', 10); + var y1 = parseInt(xmlNode.getAttribute('y1') || '0', 10); + var x2 = parseInt(xmlNode.getAttribute('x2') || '10', 10); + var y2 = parseInt(xmlNode.getAttribute('y2') || '0', 10); + var gradient = new LinearGradient(x1, y1, x2, y2); + parsePaintServerUnit(xmlNode, gradient); + parseGradientColorStops(xmlNode, gradient); + return gradient; + }, + 'radialgradient': function (xmlNode) { + var cx = parseInt(xmlNode.getAttribute('cx') || '0', 10); + var cy = parseInt(xmlNode.getAttribute('cy') || '0', 10); + var r = parseInt(xmlNode.getAttribute('r') || '0', 10); + var gradient = new RadialGradient(cx, cy, r); + parsePaintServerUnit(xmlNode, gradient); + parseGradientColorStops(xmlNode, gradient); + return gradient; + } + }; + function parsePaintServerUnit(xmlNode, gradient) { + var gradientUnits = xmlNode.getAttribute('gradientUnits'); + if (gradientUnits === 'userSpaceOnUse') { + gradient.global = true; + } + } + function parseGradientColorStops(xmlNode, gradient) { + var stop = xmlNode.firstChild; + while (stop) { + if (stop.nodeType === 1 + && stop.nodeName.toLocaleLowerCase() === 'stop') { + var offsetStr = stop.getAttribute('offset'); + var offset = void 0; + if (offsetStr && offsetStr.indexOf('%') > 0) { + offset = parseInt(offsetStr, 10) / 100; + } + else if (offsetStr) { + offset = parseFloat(offsetStr); + } + else { + offset = 0; + } + var styleVals = {}; + parseInlineStyle(stop, styleVals, styleVals); + var stopColor = styleVals.stopColor + || stop.getAttribute('stop-color') + || '#000000'; + gradient.colorStops.push({ + offset: offset, + color: stopColor + }); + } + stop = stop.nextSibling; + } + } + function inheritStyle(parent, child) { + if (parent && parent.__inheritedStyle) { + if (!child.__inheritedStyle) { + child.__inheritedStyle = {}; + } + defaults(child.__inheritedStyle, parent.__inheritedStyle); + } + } + function parsePoints(pointsString) { + var list = splitNumberSequence(pointsString); + var points = []; + for (var i = 0; i < list.length; i += 2) { + var x = parseFloat(list[i]); + var y = parseFloat(list[i + 1]); + points.push([x, y]); + } + return points; + } + function parseAttributes(xmlNode, el, defsUsePending, onlyInlineStyle, isTextGroup) { + var disp = el; + var inheritedStyle = disp.__inheritedStyle = disp.__inheritedStyle || {}; + var selfStyle = {}; + if (xmlNode.nodeType === 1) { + parseTransformAttribute(xmlNode, el); + parseInlineStyle(xmlNode, inheritedStyle, selfStyle); + if (!onlyInlineStyle) { + parseAttributeStyle(xmlNode, inheritedStyle, selfStyle); + } + } + disp.style = disp.style || {}; + if (inheritedStyle.fill != null) { + disp.style.fill = getFillStrokeStyle(disp, 'fill', inheritedStyle.fill, defsUsePending); + } + if (inheritedStyle.stroke != null) { + disp.style.stroke = getFillStrokeStyle(disp, 'stroke', inheritedStyle.stroke, defsUsePending); + } + each([ + 'lineWidth', 'opacity', 'fillOpacity', 'strokeOpacity', 'miterLimit', 'fontSize' + ], function (propName) { + if (inheritedStyle[propName] != null) { + disp.style[propName] = parseFloat(inheritedStyle[propName]); + } + }); + each([ + 'lineDashOffset', 'lineCap', 'lineJoin', 'fontWeight', 'fontFamily', 'fontStyle', 'textAlign' + ], function (propName) { + if (inheritedStyle[propName] != null) { + disp.style[propName] = inheritedStyle[propName]; + } + }); + if (isTextGroup) { + disp.__selfStyle = selfStyle; + } + if (inheritedStyle.lineDash) { + disp.style.lineDash = map(splitNumberSequence(inheritedStyle.lineDash), function (str) { + return parseFloat(str); + }); + } + if (inheritedStyle.visibility === 'hidden' || inheritedStyle.visibility === 'collapse') { + disp.invisible = true; + } + if (inheritedStyle.display === 'none') { + disp.ignore = true; + } + } + function applyTextAlignment(text, parentGroup) { + var parentSelfStyle = parentGroup.__selfStyle; + if (parentSelfStyle) { + var textBaseline = parentSelfStyle.textBaseline; + var zrTextBaseline = textBaseline; + if (!textBaseline || textBaseline === 'auto') { + zrTextBaseline = 'alphabetic'; + } + else if (textBaseline === 'baseline') { + zrTextBaseline = 'alphabetic'; + } + else if (textBaseline === 'before-edge' || textBaseline === 'text-before-edge') { + zrTextBaseline = 'top'; + } + else if (textBaseline === 'after-edge' || textBaseline === 'text-after-edge') { + zrTextBaseline = 'bottom'; + } + else if (textBaseline === 'central' || textBaseline === 'mathematical') { + zrTextBaseline = 'middle'; + } + text.style.textBaseline = zrTextBaseline; + } + var parentInheritedStyle = parentGroup.__inheritedStyle; + if (parentInheritedStyle) { + var textAlign = parentInheritedStyle.textAlign; + var zrTextAlign = textAlign; + if (textAlign) { + if (textAlign === 'middle') { + zrTextAlign = 'center'; + } + text.style.textAlign = zrTextAlign; + } + } + } + var urlRegex = /^url\(\s*#(.*?)\)/; + function getFillStrokeStyle(el, method, str, defsUsePending) { + var urlMatch = str && str.match(urlRegex); + if (urlMatch) { + var url = trim(urlMatch[1]); + defsUsePending.push([el, method, url]); + return; + } + if (str === 'none') { + str = null; + } + return str; + } + function applyDefs(defs, defsUsePending) { + for (var i = 0; i < defsUsePending.length; i++) { + var item = defsUsePending[i]; + item[0].style[item[1]] = defs[item[2]]; + } + } + var numberReg$1 = /-?([0-9]*\.)?[0-9]+([eE]-?[0-9]+)?/g; + function splitNumberSequence(rawStr) { + return rawStr.match(numberReg$1) || []; + } + var transformRegex = /(translate|scale|rotate|skewX|skewY|matrix)\(([\-\s0-9\.eE,]*)\)/g; + var DEGREE_TO_ANGLE = Math.PI / 180; + function parseTransformAttribute(xmlNode, node) { + var transform = xmlNode.getAttribute('transform'); + if (transform) { + transform = transform.replace(/,/g, ' '); + var transformOps_1 = []; + var mt = null; + transform.replace(transformRegex, function (str, type, value) { + transformOps_1.push(type, value); + return ''; + }); + for (var i = transformOps_1.length - 1; i > 0; i -= 2) { + var value = transformOps_1[i]; + var type = transformOps_1[i - 1]; + var valueArr = splitNumberSequence(value); + mt = mt || create$1(); + switch (type) { + case 'translate': + translate(mt, mt, [parseFloat(valueArr[0]), parseFloat(valueArr[1] || '0')]); + break; + case 'scale': + scale$1(mt, mt, [parseFloat(valueArr[0]), parseFloat(valueArr[1] || valueArr[0])]); + break; + case 'rotate': + rotate(mt, mt, -parseFloat(valueArr[0]) * DEGREE_TO_ANGLE, [ + parseFloat(valueArr[1] || '0'), + parseFloat(valueArr[2] || '0') + ]); + break; + case 'skewX': + var sx = Math.tan(parseFloat(valueArr[0]) * DEGREE_TO_ANGLE); + mul$1(mt, [1, 0, sx, 1, 0, 0], mt); + break; + case 'skewY': + var sy = Math.tan(parseFloat(valueArr[0]) * DEGREE_TO_ANGLE); + mul$1(mt, [1, sy, 0, 1, 0, 0], mt); + break; + case 'matrix': + mt[0] = parseFloat(valueArr[0]); + mt[1] = parseFloat(valueArr[1]); + mt[2] = parseFloat(valueArr[2]); + mt[3] = parseFloat(valueArr[3]); + mt[4] = parseFloat(valueArr[4]); + mt[5] = parseFloat(valueArr[5]); + break; + } + } + node.setLocalTransform(mt); + } + } + var styleRegex = /([^\s:;]+)\s*:\s*([^:;]+)/g; + function parseInlineStyle(xmlNode, inheritableStyleResult, selfStyleResult) { + var style = xmlNode.getAttribute('style'); + if (!style) { + return; + } + styleRegex.lastIndex = 0; + var styleRegResult; + while ((styleRegResult = styleRegex.exec(style)) != null) { + var svgStlAttr = styleRegResult[1]; + var zrInheritableStlAttr = hasOwn(INHERITABLE_STYLE_ATTRIBUTES_MAP, svgStlAttr) + ? INHERITABLE_STYLE_ATTRIBUTES_MAP[svgStlAttr] + : null; + if (zrInheritableStlAttr) { + inheritableStyleResult[zrInheritableStlAttr] = styleRegResult[2]; + } + var zrSelfStlAttr = hasOwn(SELF_STYLE_ATTRIBUTES_MAP, svgStlAttr) + ? SELF_STYLE_ATTRIBUTES_MAP[svgStlAttr] + : null; + if (zrSelfStlAttr) { + selfStyleResult[zrSelfStlAttr] = styleRegResult[2]; + } + } + } + function parseAttributeStyle(xmlNode, inheritableStyleResult, selfStyleResult) { + for (var i = 0; i < INHERITABLE_STYLE_ATTRIBUTES_MAP_KEYS.length; i++) { + var svgAttrName = INHERITABLE_STYLE_ATTRIBUTES_MAP_KEYS[i]; + var attrValue = xmlNode.getAttribute(svgAttrName); + if (attrValue != null) { + inheritableStyleResult[INHERITABLE_STYLE_ATTRIBUTES_MAP[svgAttrName]] = attrValue; + } + } + for (var i = 0; i < SELF_STYLE_ATTRIBUTES_MAP_KEYS.length; i++) { + var svgAttrName = SELF_STYLE_ATTRIBUTES_MAP_KEYS[i]; + var attrValue = xmlNode.getAttribute(svgAttrName); + if (attrValue != null) { + selfStyleResult[SELF_STYLE_ATTRIBUTES_MAP[svgAttrName]] = attrValue; + } + } + } + function makeViewBoxTransform(viewBoxRect, boundingRect) { + var scaleX = boundingRect.width / viewBoxRect.width; + var scaleY = boundingRect.height / viewBoxRect.height; + var scale = Math.min(scaleX, scaleY); + return { + scale: scale, + x: -(viewBoxRect.x + viewBoxRect.width / 2) * scale + (boundingRect.x + boundingRect.width / 2), + y: -(viewBoxRect.y + viewBoxRect.height / 2) * scale + (boundingRect.y + boundingRect.height / 2) + }; + } + function parseSVG(xml, opt) { + var parser = new SVGParser(); + return parser.parse(xml, opt); + } + + /** + * "region available" means that: enable users to set attribute `name="xxx"` on those tags + * to make it be a region. + * 1. region styles and its label styles can be defined in echarts opton: + * ```js + * geo: { + * regions: [{ + * name: 'xxx', + * itemStyle: { ... }, + * label: { ... } + * }, { + * ... + * }, + * ...] + * }; + * ``` + * 2. name can be duplicated in different SVG tag. All of the tags with the same name share + * a region option. For exampel if there are two <path> representing two lung lobes. They have + * no common parents but both of them need to display label "lung" inside. + */ + var REGION_AVAILABLE_SVG_TAG_MAP = createHashMap(['rect', 'circle', 'line', 'ellipse', 'polygon', 'polyline', 'path', + // <text> <tspan> are also enabled because some SVG might paint text itself, + // but still need to trigger events or tooltip. + 'text', 'tspan', + // <g> is also enabled because this case: if multiple tags share one name + // and need label displayed, every tags will display the name, which is not + // expected. So we can put them into a <g name="xxx">. Thereby only one label + // displayed and located based on the bounding rect of the <g>. + 'g']); + var GeoSVGResource = /** @class */function () { + function GeoSVGResource(mapName, svg) { + this.type = 'geoSVG'; + // All used graphics. key: hostKey, value: root + this._usedGraphicMap = createHashMap(); + // All unused graphics. + this._freedGraphics = []; + this._mapName = mapName; + // Only perform parse to XML object here, which might be time + // consiming for large SVG. + // Although convert XML to zrender element is also time consiming, + // if we do it here, the clone of zrender elements has to be + // required. So we do it once for each geo instance, util real + // performance issues call for optimizing it. + this._parsedXML = parseXML(svg); + } + GeoSVGResource.prototype.load = function /* nameMap: NameMap */ + () { + // In the "load" stage, graphic need to be built to + // get boundingRect for geo coordinate system. + var firstGraphic = this._firstGraphic; + // Create the return data structure only when first graphic created. + // Because they will be used in geo coordinate system update stage, + // and `regions` will be mounted at `geo` coordinate system, + // in which there is no "view" info, so that it should better not to + // make references to graphic elements. + if (!firstGraphic) { + firstGraphic = this._firstGraphic = this._buildGraphic(this._parsedXML); + this._freedGraphics.push(firstGraphic); + this._boundingRect = this._firstGraphic.boundingRect.clone(); + // PENDING: `nameMap` will not be supported until some real requirement come. + // if (nameMap) { + // named = applyNameMap(named, nameMap); + // } + var _a = createRegions(firstGraphic.named), + regions = _a.regions, + regionsMap = _a.regionsMap; + this._regions = regions; + this._regionsMap = regionsMap; + } + return { + boundingRect: this._boundingRect, + regions: this._regions, + regionsMap: this._regionsMap + }; + }; + GeoSVGResource.prototype._buildGraphic = function (svgXML) { + var result; + var rootFromParse; + try { + result = svgXML && parseSVG(svgXML, { + ignoreViewBox: true, + ignoreRootClip: true + }) || {}; + rootFromParse = result.root; + assert(rootFromParse != null); + } catch (e) { + throw new Error('Invalid svg format\n' + e.message); + } + // Note: we keep the covenant that the root has no transform. So always add an extra root. + var root = new Group(); + root.add(rootFromParse); + root.isGeoSVGGraphicRoot = true; + // [THE_RULE_OF_VIEWPORT_AND_VIEWBOX] + // + // Consider: `<svg width="..." height="..." viewBox="...">` + // - the `width/height` we call it `svgWidth/svgHeight` for short. + // - `(0, 0, svgWidth, svgHeight)` defines the viewport of the SVG, or say, + // "viewport boundingRect", or `boundingRect` for short. + // - `viewBox` defines the transform from the real content ot the viewport. + // `viewBox` has the same unit as the content of SVG. + // If `viewBox` exists, a transform is defined, so the unit of `svgWidth/svgHeight` become + // different from the content of SVG. Otherwise, they are the same. + // + // If both `svgWidth/svgHeight/viewBox` are specified in a SVG file, the transform rule will be: + // 0. `boundingRect` is `(0, 0, svgWidth, svgHeight)`. Set it to Geo['_rect'] (View['_rect']). + // 1. Make a transform from `viewBox` to `boundingRect`. + // Note: only support `preserveAspectRatio 'xMidYMid'` here. That is, this transform will preserve + // the aspect ratio. + // 2. Make a transform from boundingRect to Geo['_viewRect'] (View['_viewRect']) + // (`Geo`/`View` will do this job). + // Note: this transform might not preserve aspect radio, which depending on how users specify + // viewRect in echarts option (e.g., `geo.left/top/width/height` will not preserve aspect ratio, + // but `geo.layoutCenter/layoutSize` will preserve aspect ratio). + // + // If `svgWidth/svgHeight` not specified, we use `viewBox` as the `boundingRect` to make the SVG + // layout look good. + // + // If neither `svgWidth/svgHeight` nor `viewBox` are not specified, we calculate the boundingRect + // of the SVG content and use them to make SVG layout look good. + var svgWidth = result.width; + var svgHeight = result.height; + var viewBoxRect = result.viewBoxRect; + var boundingRect = this._boundingRect; + if (!boundingRect) { + var bRectX = void 0; + var bRectY = void 0; + var bRectWidth = void 0; + var bRectHeight = void 0; + if (svgWidth != null) { + bRectX = 0; + bRectWidth = svgWidth; + } else if (viewBoxRect) { + bRectX = viewBoxRect.x; + bRectWidth = viewBoxRect.width; + } + if (svgHeight != null) { + bRectY = 0; + bRectHeight = svgHeight; + } else if (viewBoxRect) { + bRectY = viewBoxRect.y; + bRectHeight = viewBoxRect.height; + } + // If both viewBox and svgWidth/svgHeight not specified, + // we have to determine how to layout those element to make them look good. + if (bRectX == null || bRectY == null) { + var calculatedBoundingRect = rootFromParse.getBoundingRect(); + if (bRectX == null) { + bRectX = calculatedBoundingRect.x; + bRectWidth = calculatedBoundingRect.width; + } + if (bRectY == null) { + bRectY = calculatedBoundingRect.y; + bRectHeight = calculatedBoundingRect.height; + } + } + boundingRect = this._boundingRect = new BoundingRect(bRectX, bRectY, bRectWidth, bRectHeight); + } + if (viewBoxRect) { + var viewBoxTransform = makeViewBoxTransform(viewBoxRect, boundingRect); + // Only support `preserveAspectRatio 'xMidYMid'` + rootFromParse.scaleX = rootFromParse.scaleY = viewBoxTransform.scale; + rootFromParse.x = viewBoxTransform.x; + rootFromParse.y = viewBoxTransform.y; + } + // SVG needs to clip based on `viewBox`. And some SVG files really rely on this feature. + // They do not strictly confine all of the content inside a display rect, but deliberately + // use a `viewBox` to define a displayable rect. + // PENDING: + // The drawback of the `setClipPath` here is: the region label (genereted by echarts) near the + // edge might also be clipped, because region labels are put as `textContent` of the SVG path. + root.setClipPath(new Rect({ + shape: boundingRect.plain() + })); + var named = []; + each(result.named, function (namedItem) { + if (REGION_AVAILABLE_SVG_TAG_MAP.get(namedItem.svgNodeTagLower) != null) { + named.push(namedItem); + setSilent(namedItem.el); + } + }); + return { + root: root, + boundingRect: boundingRect, + named: named + }; + }; + /** + * Consider: + * (1) One graphic element can not be shared by different `geoView` running simultaneously. + * Notice, also need to consider multiple echarts instances share a `mapRecord`. + * (2) Converting SVG to graphic elements is time consuming. + * (3) In the current architecture, `load` should be called frequently to get boundingRect, + * and it is called without view info. + * So we maintain graphic elements in this module, and enables `view` to use/return these + * graphics from/to the pool with it's uid. + */ + GeoSVGResource.prototype.useGraphic = function (hostKey /* , nameMap: NameMap */) { + var usedRootMap = this._usedGraphicMap; + var svgGraphic = usedRootMap.get(hostKey); + if (svgGraphic) { + return svgGraphic; + } + svgGraphic = this._freedGraphics.pop() + // use the first boundingRect to avoid duplicated boundingRect calculation. + || this._buildGraphic(this._parsedXML); + usedRootMap.set(hostKey, svgGraphic); + // PENDING: `nameMap` will not be supported until some real requirement come. + // `nameMap` can only be obtained from echarts option. + // The original `named` must not be modified. + // if (nameMap) { + // svgGraphic = extend({}, svgGraphic); + // svgGraphic.named = applyNameMap(svgGraphic.named, nameMap); + // } + return svgGraphic; + }; + GeoSVGResource.prototype.freeGraphic = function (hostKey) { + var usedRootMap = this._usedGraphicMap; + var svgGraphic = usedRootMap.get(hostKey); + if (svgGraphic) { + usedRootMap.removeKey(hostKey); + this._freedGraphics.push(svgGraphic); + } + }; + return GeoSVGResource; + }(); + function setSilent(el) { + // Only named element has silent: false, other elements should + // act as background and has no user interaction. + el.silent = false; + // text|tspan will be converted to group. + if (el.isGroup) { + el.traverse(function (child) { + child.silent = false; + }); + } + } + function createRegions(named) { + var regions = []; + var regionsMap = createHashMap(); + // Create resions only for the first graphic. + each(named, function (namedItem) { + // Region has feature to calculate center for tooltip or other features. + // If there is a <g name="xxx">, the center should be the center of the + // bounding rect of the g. + if (namedItem.namedFrom != null) { + return; + } + var region = new GeoSVGRegion(namedItem.name, namedItem.el); + // PENDING: if `nameMap` supported, this region can not be mounted on + // `this`, but can only be created each time `load()` called. + regions.push(region); + // PENDING: if multiple tag named with the same name, only one will be + // found by `_regionsMap`. `_regionsMap` is used to find a coordinate + // by name. We use `region.getCenter()` as the coordinate. + regionsMap.set(namedItem.name, region); + }); + return { + regions: regions, + regionsMap: regionsMap + }; + } + // PENDING: `nameMap` will not be supported until some real requirement come. + // /** + // * Use the alias in geoNameMap. + // * The input `named` must not be modified. + // */ + // function applyNameMap( + // named: GeoSVGGraphicRecord['named'], + // nameMap: NameMap + // ): GeoSVGGraphicRecord['named'] { + // const result = [] as GeoSVGGraphicRecord['named']; + // for (let i = 0; i < named.length; i++) { + // let regionGraphic = named[i]; + // const name = regionGraphic.name; + // if (nameMap && nameMap.hasOwnProperty(name)) { + // regionGraphic = extend({}, regionGraphic); + // regionGraphic.name = name; + // } + // result.push(regionGraphic); + // } + // return result; + // } + + var geoCoord = [126, 25]; + var nanhaiName = '南海诸岛'; + var points$1 = [[[0, 3.5], [7, 11.2], [15, 11.9], [30, 7], [42, 0.7], [52, 0.7], [56, 7.7], [59, 0.7], [64, 0.7], [64, 0], [5, 0], [0, 3.5]], [[13, 16.1], [19, 14.7], [16, 21.7], [11, 23.1], [13, 16.1]], [[12, 32.2], [14, 38.5], [15, 38.5], [13, 32.2], [12, 32.2]], [[16, 47.6], [12, 53.2], [13, 53.2], [18, 47.6], [16, 47.6]], [[6, 64.4], [8, 70], [9, 70], [8, 64.4], [6, 64.4]], [[23, 82.6], [29, 79.8], [30, 79.8], [25, 82.6], [23, 82.6]], [[37, 70.7], [43, 62.3], [44, 62.3], [39, 70.7], [37, 70.7]], [[48, 51.1], [51, 45.5], [53, 45.5], [50, 51.1], [48, 51.1]], [[51, 35], [51, 28.7], [53, 28.7], [53, 35], [51, 35]], [[52, 22.4], [55, 17.5], [56, 17.5], [53, 22.4], [52, 22.4]], [[58, 12.6], [62, 7], [63, 7], [60, 12.6], [58, 12.6]], [[0, 3.5], [0, 93.1], [64, 93.1], [64, 0], [63, 0], [63, 92.4], [1, 92.4], [1, 3.5], [0, 3.5]]]; + for (var i = 0; i < points$1.length; i++) { + for (var k = 0; k < points$1[i].length; k++) { + points$1[i][k][0] /= 10.5; + points$1[i][k][1] /= -10.5 / 0.75; + points$1[i][k][0] += geoCoord[0]; + points$1[i][k][1] += geoCoord[1]; + } + } + function fixNanhai(mapType, regions) { + if (mapType === 'china') { + for (var i = 0; i < regions.length; i++) { + // Already exists. + if (regions[i].name === nanhaiName) { + return; + } + } + regions.push(new GeoJSONRegion(nanhaiName, map(points$1, function (exterior) { + return { + type: 'polygon', + exterior: exterior + }; + }), geoCoord)); + } + } + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + + /** + * AUTO-GENERATED FILE. DO NOT MODIFY. + */ + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + var coordsOffsetMap = { + '南海诸岛': [32, 80], + // 全国 + '广东': [0, -10], + '香港': [10, 5], + '澳门': [-10, 10], + // '北京': [-10, 0], + '天津': [5, 5] + }; + function fixTextCoords(mapType, region) { + if (mapType === 'china') { + var coordFix = coordsOffsetMap[region.name]; + if (coordFix) { + var cp = region.getCenter(); + cp[0] += coordFix[0] / 10.5; + cp[1] += -coordFix[1] / (10.5 / 0.75); + region.setCenter(cp); + } + } + } + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + + /** + * AUTO-GENERATED FILE. DO NOT MODIFY. + */ + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + // Fix for 钓鱼岛 + // let Region = require('../Region'); + // let zrUtil = require('zrender/lib/core/util'); + // let geoCoord = [126, 25]; + var points$2 = [[[123.45165252685547, 25.73527164402261], [123.49731445312499, 25.73527164402261], [123.49731445312499, 25.750734064600884], [123.45165252685547, 25.750734064600884], [123.45165252685547, 25.73527164402261]]]; + function fixDiaoyuIsland(mapType, region) { + if (mapType === 'china' && region.name === '台湾') { + region.geometries.push({ + type: 'polygon', + exterior: points$2[0] + }); + } + } + + var DEFAULT_NAME_PROPERTY = 'name'; + var GeoJSONResource = /** @class */function () { + function GeoJSONResource(mapName, geoJSON, specialAreas) { + this.type = 'geoJSON'; + this._parsedMap = createHashMap(); + this._mapName = mapName; + this._specialAreas = specialAreas; + // PENDING: delay the parse to the first usage to rapid up the FMP? + this._geoJSON = parseInput(geoJSON); + } + /** + * @param nameMap can be null/undefined + * @param nameProperty can be null/undefined + */ + GeoJSONResource.prototype.load = function (nameMap, nameProperty) { + nameProperty = nameProperty || DEFAULT_NAME_PROPERTY; + var parsed = this._parsedMap.get(nameProperty); + if (!parsed) { + var rawRegions = this._parseToRegions(nameProperty); + parsed = this._parsedMap.set(nameProperty, { + regions: rawRegions, + boundingRect: calculateBoundingRect(rawRegions) + }); + } + var regionsMap = createHashMap(); + var finalRegions = []; + each(parsed.regions, function (region) { + var regionName = region.name; + // Try use the alias in geoNameMap + if (nameMap && hasOwn(nameMap, regionName)) { + region = region.cloneShallow(regionName = nameMap[regionName]); + } + finalRegions.push(region); + regionsMap.set(regionName, region); + }); + return { + regions: finalRegions, + boundingRect: parsed.boundingRect || new BoundingRect(0, 0, 0, 0), + regionsMap: regionsMap + }; + }; + GeoJSONResource.prototype._parseToRegions = function (nameProperty) { + var mapName = this._mapName; + var geoJSON = this._geoJSON; + var rawRegions; + // https://jsperf.com/try-catch-performance-overhead + try { + rawRegions = geoJSON ? parseGeoJSON(geoJSON, nameProperty) : []; + } catch (e) { + throw new Error('Invalid geoJson format\n' + e.message); + } + fixNanhai(mapName, rawRegions); + each(rawRegions, function (region) { + var regionName = region.name; + fixTextCoords(mapName, region); + fixDiaoyuIsland(mapName, region); + // Some area like Alaska in USA map needs to be tansformed + // to look better + var specialArea = this._specialAreas && this._specialAreas[regionName]; + if (specialArea) { + region.transformTo(specialArea.left, specialArea.top, specialArea.width, specialArea.height); + } + }, this); + return rawRegions; + }; + /** + * Only for exporting to users. + * **MUST NOT** used internally. + */ + GeoJSONResource.prototype.getMapForUser = function () { + return { + // For backward compatibility, use geoJson + // PENDING: it has been returning them without clone. + // do we need to avoid outsite modification? + geoJson: this._geoJSON, + geoJSON: this._geoJSON, + specialAreas: this._specialAreas + }; + }; + return GeoJSONResource; + }(); + function calculateBoundingRect(regions) { + var rect; + for (var i = 0; i < regions.length; i++) { + var regionRect = regions[i].getBoundingRect(); + rect = rect || regionRect.clone(); + rect.union(regionRect); + } + return rect; + } + function parseInput(source) { + return !isString(source) ? source : typeof JSON !== 'undefined' && JSON.parse ? JSON.parse(source) : new Function('return (' + source + ');')(); + } + + var storage = createHashMap(); + var geoSourceManager = { + /** + * Compatible with previous `echarts.registerMap`. + * + * @usage + * ```js + * + * echarts.registerMap('USA', geoJson, specialAreas); + * + * echarts.registerMap('USA', { + * geoJson: geoJson, + * specialAreas: {...} + * }); + * echarts.registerMap('USA', { + * geoJSON: geoJson, + * specialAreas: {...} + * }); + * + * echarts.registerMap('airport', { + * svg: svg + * } + * ``` + * + * Note: + * Do not support that register multiple geoJSON or SVG + * one map name. Because different geoJSON and SVG have + * different unit. It's not easy to make sure how those + * units are mapping/normalize. + * If intending to use multiple geoJSON or SVG, we can + * use multiple geo coordinate system. + */ + registerMap: function (mapName, rawDef, rawSpecialAreas) { + if (rawDef.svg) { + var resource = new GeoSVGResource(mapName, rawDef.svg); + storage.set(mapName, resource); + } else { + // Recommend: + // echarts.registerMap('eu', { geoJSON: xxx, specialAreas: xxx }); + // Backward compatibility: + // echarts.registerMap('eu', geoJSON, specialAreas); + // echarts.registerMap('eu', { geoJson: xxx, specialAreas: xxx }); + var geoJSON = rawDef.geoJson || rawDef.geoJSON; + if (geoJSON && !rawDef.features) { + rawSpecialAreas = rawDef.specialAreas; + } else { + geoJSON = rawDef; + } + var resource = new GeoJSONResource(mapName, geoJSON, rawSpecialAreas); + storage.set(mapName, resource); + } + }, + getGeoResource: function (mapName) { + return storage.get(mapName); + }, + /** + * Only for exporting to users. + * **MUST NOT** used internally. + */ + getMapForUser: function (mapName) { + var resource = storage.get(mapName); + // Do not support return SVG until some real requirement come. + return resource && resource.type === 'geoJSON' && resource.getMapForUser(); + }, + load: function (mapName, nameMap, nameProperty) { + var resource = storage.get(mapName); + if (!resource) { + if ("development" !== 'production') { + console.error('Map ' + mapName + ' not exists. The GeoJSON of the map must be provided.'); + } + return; + } + return resource.load(nameMap, nameProperty); + } + }; + + /** + * Only these tags enable use `itemStyle` if they are named in SVG. + * Other tags like <text> <tspan> <image> might not suitable for `itemStyle`. + * They will not be considered to be styled until some requirements come. + */ + var OPTION_STYLE_ENABLED_TAGS = ['rect', 'circle', 'line', 'ellipse', 'polygon', 'polyline', 'path']; + var OPTION_STYLE_ENABLED_TAG_MAP = createHashMap(OPTION_STYLE_ENABLED_TAGS); + var STATE_TRIGGER_TAG_MAP = createHashMap(OPTION_STYLE_ENABLED_TAGS.concat(['g'])); + var LABEL_HOST_MAP = createHashMap(OPTION_STYLE_ENABLED_TAGS.concat(['g'])); + var mapLabelRaw = makeInner(); + function getFixedItemStyle(model) { + var itemStyle = model.getItemStyle(); + var areaColor = model.get('areaColor'); + // If user want the color not to be changed when hover, + // they should both set areaColor and color to be null. + if (areaColor != null) { + itemStyle.fill = areaColor; + } + return itemStyle; + } + // Only stroke can be used for line. + // Using fill in style if stroke not exits. + // TODO Not sure yet. Perhaps a separate `lineStyle`? + function fixLineStyle(styleHost) { + var style = styleHost.style; + if (style) { + style.stroke = style.stroke || style.fill; + style.fill = null; + } + } + var MapDraw = /** @class */function () { + function MapDraw(api) { + var group = new Group(); + this.uid = getUID('ec_map_draw'); + this._controller = new RoamController(api.getZr()); + this._controllerHost = { + target: group + }; + this.group = group; + group.add(this._regionsGroup = new Group()); + group.add(this._svgGroup = new Group()); + } + MapDraw.prototype.draw = function (mapOrGeoModel, ecModel, api, fromView, payload) { + var isGeo = mapOrGeoModel.mainType === 'geo'; + // Map series has data. GEO model that controlled by map series + // will be assigned with map data. Other GEO model has no data. + var data = mapOrGeoModel.getData && mapOrGeoModel.getData(); + isGeo && ecModel.eachComponent({ + mainType: 'series', + subType: 'map' + }, function (mapSeries) { + if (!data && mapSeries.getHostGeoModel() === mapOrGeoModel) { + data = mapSeries.getData(); + } + }); + var geo = mapOrGeoModel.coordinateSystem; + var regionsGroup = this._regionsGroup; + var group = this.group; + var transformInfo = geo.getTransformInfo(); + var transformInfoRaw = transformInfo.raw; + var transformInfoRoam = transformInfo.roam; + // No animation when first draw or in action + var isFirstDraw = !regionsGroup.childAt(0) || payload; + if (isFirstDraw) { + group.x = transformInfoRoam.x; + group.y = transformInfoRoam.y; + group.scaleX = transformInfoRoam.scaleX; + group.scaleY = transformInfoRoam.scaleY; + group.dirty(); + } else { + updateProps(group, transformInfoRoam, mapOrGeoModel); + } + var isVisualEncodedByVisualMap = data && data.getVisual('visualMeta') && data.getVisual('visualMeta').length > 0; + var viewBuildCtx = { + api: api, + geo: geo, + mapOrGeoModel: mapOrGeoModel, + data: data, + isVisualEncodedByVisualMap: isVisualEncodedByVisualMap, + isGeo: isGeo, + transformInfoRaw: transformInfoRaw + }; + if (geo.resourceType === 'geoJSON') { + this._buildGeoJSON(viewBuildCtx); + } else if (geo.resourceType === 'geoSVG') { + this._buildSVG(viewBuildCtx); + } + this._updateController(mapOrGeoModel, ecModel, api); + this._updateMapSelectHandler(mapOrGeoModel, regionsGroup, api, fromView); + }; + MapDraw.prototype._buildGeoJSON = function (viewBuildCtx) { + var regionsGroupByName = this._regionsGroupByName = createHashMap(); + var regionsInfoByName = createHashMap(); + var regionsGroup = this._regionsGroup; + var transformInfoRaw = viewBuildCtx.transformInfoRaw; + var mapOrGeoModel = viewBuildCtx.mapOrGeoModel; + var data = viewBuildCtx.data; + var projection = viewBuildCtx.geo.projection; + var projectionStream = projection && projection.stream; + function transformPoint(point, project) { + if (project) { + // projection may return null point. + point = project(point); + } + return point && [point[0] * transformInfoRaw.scaleX + transformInfoRaw.x, point[1] * transformInfoRaw.scaleY + transformInfoRaw.y]; + } + function transformPolygonPoints(inPoints) { + var outPoints = []; + // If projectionStream is provided. Use it instead of single point project. + var project = !projectionStream && projection && projection.project; + for (var i = 0; i < inPoints.length; ++i) { + var newPt = transformPoint(inPoints[i], project); + newPt && outPoints.push(newPt); + } + return outPoints; + } + function getPolyShape(points) { + return { + shape: { + points: transformPolygonPoints(points) + } + }; + } + regionsGroup.removeAll(); + // Only when the resource is GeoJSON, there is `geo.regions`. + each(viewBuildCtx.geo.regions, function (region) { + var regionName = region.name; + // Consider in GeoJson properties.name may be duplicated, for example, + // there is multiple region named "United Kindom" or "France" (so many + // colonies). And it is not appropriate to merge them in geo, which + // will make them share the same label and bring trouble in label + // location calculation. + var regionGroup = regionsGroupByName.get(regionName); + var _a = regionsInfoByName.get(regionName) || {}, + dataIdx = _a.dataIdx, + regionModel = _a.regionModel; + if (!regionGroup) { + regionGroup = regionsGroupByName.set(regionName, new Group()); + regionsGroup.add(regionGroup); + dataIdx = data ? data.indexOfName(regionName) : null; + regionModel = viewBuildCtx.isGeo ? mapOrGeoModel.getRegionModel(regionName) : data ? data.getItemModel(dataIdx) : null; + regionsInfoByName.set(regionName, { + dataIdx: dataIdx, + regionModel: regionModel + }); + } + var polygonSubpaths = []; + var polylineSubpaths = []; + each(region.geometries, function (geometry) { + // Polygon and MultiPolygon + if (geometry.type === 'polygon') { + var polys = [geometry.exterior].concat(geometry.interiors || []); + if (projectionStream) { + polys = projectPolys(polys, projectionStream); + } + each(polys, function (poly) { + polygonSubpaths.push(new Polygon(getPolyShape(poly))); + }); + } + // LineString and MultiLineString + else { + var points = geometry.points; + if (projectionStream) { + points = projectPolys(points, projectionStream, true); + } + each(points, function (points) { + polylineSubpaths.push(new Polyline(getPolyShape(points))); + }); + } + }); + var centerPt = transformPoint(region.getCenter(), projection && projection.project); + function createCompoundPath(subpaths, isLine) { + if (!subpaths.length) { + return; + } + var compoundPath = new CompoundPath({ + culling: true, + segmentIgnoreThreshold: 1, + shape: { + paths: subpaths + } + }); + regionGroup.add(compoundPath); + applyOptionStyleForRegion(viewBuildCtx, compoundPath, dataIdx, regionModel); + resetLabelForRegion(viewBuildCtx, compoundPath, regionName, regionModel, mapOrGeoModel, dataIdx, centerPt); + if (isLine) { + fixLineStyle(compoundPath); + each(compoundPath.states, fixLineStyle); + } + } + createCompoundPath(polygonSubpaths); + createCompoundPath(polylineSubpaths, true); + }); + // Ensure children have been added to `regionGroup` before calling them. + regionsGroupByName.each(function (regionGroup, regionName) { + var _a = regionsInfoByName.get(regionName), + dataIdx = _a.dataIdx, + regionModel = _a.regionModel; + resetEventTriggerForRegion(viewBuildCtx, regionGroup, regionName, regionModel, mapOrGeoModel, dataIdx); + resetTooltipForRegion(viewBuildCtx, regionGroup, regionName, regionModel, mapOrGeoModel); + resetStateTriggerForRegion(viewBuildCtx, regionGroup, regionName, regionModel, mapOrGeoModel); + }, this); + }; + MapDraw.prototype._buildSVG = function (viewBuildCtx) { + var mapName = viewBuildCtx.geo.map; + var transformInfoRaw = viewBuildCtx.transformInfoRaw; + this._svgGroup.x = transformInfoRaw.x; + this._svgGroup.y = transformInfoRaw.y; + this._svgGroup.scaleX = transformInfoRaw.scaleX; + this._svgGroup.scaleY = transformInfoRaw.scaleY; + if (this._svgResourceChanged(mapName)) { + this._freeSVG(); + this._useSVG(mapName); + } + var svgDispatcherMap = this._svgDispatcherMap = createHashMap(); + var focusSelf = false; + each(this._svgGraphicRecord.named, function (namedItem) { + // Note that we also allow different elements have the same name. + // For example, a glyph of a city and the label of the city have + // the same name and their tooltip info can be defined in a single + // region option. + var regionName = namedItem.name; + var mapOrGeoModel = viewBuildCtx.mapOrGeoModel; + var data = viewBuildCtx.data; + var svgNodeTagLower = namedItem.svgNodeTagLower; + var el = namedItem.el; + var dataIdx = data ? data.indexOfName(regionName) : null; + var regionModel = mapOrGeoModel.getRegionModel(regionName); + if (OPTION_STYLE_ENABLED_TAG_MAP.get(svgNodeTagLower) != null && el instanceof Displayable) { + applyOptionStyleForRegion(viewBuildCtx, el, dataIdx, regionModel); + } + if (el instanceof Displayable) { + el.culling = true; + } + // We do not know how the SVG like so we'd better not to change z2. + // Otherwise it might bring some unexpected result. For example, + // an area hovered that make some inner city can not be clicked. + el.z2EmphasisLift = 0; + // If self named: + if (!namedItem.namedFrom) { + // label should batter to be displayed based on the center of <g> + // if it is named rather than displayed on each child. + if (LABEL_HOST_MAP.get(svgNodeTagLower) != null) { + resetLabelForRegion(viewBuildCtx, el, regionName, regionModel, mapOrGeoModel, dataIdx, null); + } + resetEventTriggerForRegion(viewBuildCtx, el, regionName, regionModel, mapOrGeoModel, dataIdx); + resetTooltipForRegion(viewBuildCtx, el, regionName, regionModel, mapOrGeoModel); + if (STATE_TRIGGER_TAG_MAP.get(svgNodeTagLower) != null) { + var focus_1 = resetStateTriggerForRegion(viewBuildCtx, el, regionName, regionModel, mapOrGeoModel); + if (focus_1 === 'self') { + focusSelf = true; + } + var els = svgDispatcherMap.get(regionName) || svgDispatcherMap.set(regionName, []); + els.push(el); + } + } + }, this); + this._enableBlurEntireSVG(focusSelf, viewBuildCtx); + }; + MapDraw.prototype._enableBlurEntireSVG = function (focusSelf, viewBuildCtx) { + // It's a little complicated to support blurring the entire geoSVG in series-map. + // So do not support it until some requirements come. + // At present, in series-map, only regions can be blurred. + if (focusSelf && viewBuildCtx.isGeo) { + var blurStyle = viewBuildCtx.mapOrGeoModel.getModel(['blur', 'itemStyle']).getItemStyle(); + // Only support `opacity` here. Because not sure that other props are suitable for + // all of the elements generated by SVG (especially for Text/TSpan/Image/... ). + var opacity_1 = blurStyle.opacity; + this._svgGraphicRecord.root.traverse(function (el) { + if (!el.isGroup) { + // PENDING: clear those settings to SVG elements when `_freeSVG`. + // (Currently it happen not to be needed.) + setDefaultStateProxy(el); + var style = el.ensureState('blur').style || {}; + // Do not overwrite the region style that already set from region option. + if (style.opacity == null && opacity_1 != null) { + style.opacity = opacity_1; + } + // If `ensureState('blur').style = {}`, there will be default opacity. + // Enable `stateTransition` (animation). + el.ensureState('emphasis'); + } + }); + } + }; + MapDraw.prototype.remove = function () { + this._regionsGroup.removeAll(); + this._regionsGroupByName = null; + this._svgGroup.removeAll(); + this._freeSVG(); + this._controller.dispose(); + this._controllerHost = null; + }; + MapDraw.prototype.findHighDownDispatchers = function (name, geoModel) { + if (name == null) { + return []; + } + var geo = geoModel.coordinateSystem; + if (geo.resourceType === 'geoJSON') { + var regionsGroupByName = this._regionsGroupByName; + if (regionsGroupByName) { + var regionGroup = regionsGroupByName.get(name); + return regionGroup ? [regionGroup] : []; + } + } else if (geo.resourceType === 'geoSVG') { + return this._svgDispatcherMap && this._svgDispatcherMap.get(name) || []; + } + }; + MapDraw.prototype._svgResourceChanged = function (mapName) { + return this._svgMapName !== mapName; + }; + MapDraw.prototype._useSVG = function (mapName) { + var resource = geoSourceManager.getGeoResource(mapName); + if (resource && resource.type === 'geoSVG') { + var svgGraphic = resource.useGraphic(this.uid); + this._svgGroup.add(svgGraphic.root); + this._svgGraphicRecord = svgGraphic; + this._svgMapName = mapName; + } + }; + MapDraw.prototype._freeSVG = function () { + var mapName = this._svgMapName; + if (mapName == null) { + return; + } + var resource = geoSourceManager.getGeoResource(mapName); + if (resource && resource.type === 'geoSVG') { + resource.freeGraphic(this.uid); + } + this._svgGraphicRecord = null; + this._svgDispatcherMap = null; + this._svgGroup.removeAll(); + this._svgMapName = null; + }; + MapDraw.prototype._updateController = function (mapOrGeoModel, ecModel, api) { + var geo = mapOrGeoModel.coordinateSystem; + var controller = this._controller; + var controllerHost = this._controllerHost; + // @ts-ignore FIXME:TS + controllerHost.zoomLimit = mapOrGeoModel.get('scaleLimit'); + controllerHost.zoom = geo.getZoom(); + // roamType is will be set default true if it is null + // @ts-ignore FIXME:TS + controller.enable(mapOrGeoModel.get('roam') || false); + var mainType = mapOrGeoModel.mainType; + function makeActionBase() { + var action = { + type: 'geoRoam', + componentType: mainType + }; + action[mainType + 'Id'] = mapOrGeoModel.id; + return action; + } + controller.off('pan').on('pan', function (e) { + this._mouseDownFlag = false; + updateViewOnPan(controllerHost, e.dx, e.dy); + api.dispatchAction(extend(makeActionBase(), { + dx: e.dx, + dy: e.dy, + animation: { + duration: 0 + } + })); + }, this); + controller.off('zoom').on('zoom', function (e) { + this._mouseDownFlag = false; + updateViewOnZoom(controllerHost, e.scale, e.originX, e.originY); + api.dispatchAction(extend(makeActionBase(), { + zoom: e.scale, + originX: e.originX, + originY: e.originY, + animation: { + duration: 0 + } + })); + }, this); + controller.setPointerChecker(function (e, x, y) { + return geo.containPoint([x, y]) && !onIrrelevantElement(e, api, mapOrGeoModel); + }); + }; + /** + * FIXME: this is a temporarily workaround. + * When `geoRoam` the elements need to be reset in `MapView['render']`, because the props like + * `ignore` might have been modified by `LabelManager`, and `LabelManager#addLabelsOfSeries` + * will subsequently cache `defaultAttr` like `ignore`. If do not do this reset, the modified + * props will have no chance to be restored. + * Note: This reset should be after `clearStates` in `renderSeries` because `useStates` in + * `renderSeries` will cache the modified `ignore` to `el._normalState`. + * TODO: + * Use clone/immutable in `LabelManager`? + */ + MapDraw.prototype.resetForLabelLayout = function () { + this.group.traverse(function (el) { + var label = el.getTextContent(); + if (label) { + label.ignore = mapLabelRaw(label).ignore; + } + }); + }; + MapDraw.prototype._updateMapSelectHandler = function (mapOrGeoModel, regionsGroup, api, fromView) { + var mapDraw = this; + regionsGroup.off('mousedown'); + regionsGroup.off('click'); + // @ts-ignore FIXME:TS resolve type conflict + if (mapOrGeoModel.get('selectedMode')) { + regionsGroup.on('mousedown', function () { + mapDraw._mouseDownFlag = true; + }); + regionsGroup.on('click', function (e) { + if (!mapDraw._mouseDownFlag) { + return; + } + mapDraw._mouseDownFlag = false; + }); + } + }; + return MapDraw; + }(); + function applyOptionStyleForRegion(viewBuildCtx, el, dataIndex, regionModel) { + // All of the path are using `itemStyle`, because + // (1) Some SVG also use fill on polyline (The different between + // polyline and polygon is "open" or "close" but not fill or not). + // (2) For the common props like opacity, if some use itemStyle + // and some use `lineStyle`, it might confuse users. + // (3) Most SVG use <path>, where can not detect whether to draw a "line" + // or a filled shape, so use `itemStyle` for <path>. + var normalStyleModel = regionModel.getModel('itemStyle'); + var emphasisStyleModel = regionModel.getModel(['emphasis', 'itemStyle']); + var blurStyleModel = regionModel.getModel(['blur', 'itemStyle']); + var selectStyleModel = regionModel.getModel(['select', 'itemStyle']); + // NOTE: DON'T use 'style' in visual when drawing map. + // This component is used for drawing underlying map for both geo component and map series. + var normalStyle = getFixedItemStyle(normalStyleModel); + var emphasisStyle = getFixedItemStyle(emphasisStyleModel); + var selectStyle = getFixedItemStyle(selectStyleModel); + var blurStyle = getFixedItemStyle(blurStyleModel); + // Update the itemStyle if has data visual + var data = viewBuildCtx.data; + if (data) { + // Only visual color of each item will be used. It can be encoded by visualMap + // But visual color of series is used in symbol drawing + // Visual color for each series is for the symbol draw + var style = data.getItemVisual(dataIndex, 'style'); + var decal = data.getItemVisual(dataIndex, 'decal'); + if (viewBuildCtx.isVisualEncodedByVisualMap && style.fill) { + normalStyle.fill = style.fill; + } + if (decal) { + normalStyle.decal = createOrUpdatePatternFromDecal(decal, viewBuildCtx.api); + } + } + // SVG text, tspan and image can be named but not supporeted + // to be styled by region option yet. + el.setStyle(normalStyle); + el.style.strokeNoScale = true; + el.ensureState('emphasis').style = emphasisStyle; + el.ensureState('select').style = selectStyle; + el.ensureState('blur').style = blurStyle; + // Enable blur + setDefaultStateProxy(el); + } + function resetLabelForRegion(viewBuildCtx, el, regionName, regionModel, mapOrGeoModel, + // Exist only if `viewBuildCtx.data` exists. + dataIdx, + // If labelXY not provided, use `textConfig.position: 'inside'` + labelXY) { + var data = viewBuildCtx.data; + var isGeo = viewBuildCtx.isGeo; + var isDataNaN = data && isNaN(data.get(data.mapDimension('value'), dataIdx)); + var itemLayout = data && data.getItemLayout(dataIdx); + // In the following cases label will be drawn + // 1. In map series and data value is NaN + // 2. In geo component + // 3. Region has no series legendIcon, which will be add a showLabel flag in mapSymbolLayout + if (isGeo || isDataNaN || itemLayout && itemLayout.showLabel) { + var query = !isGeo ? dataIdx : regionName; + var labelFetcher = void 0; + // Consider dataIdx not found. + if (!data || dataIdx >= 0) { + labelFetcher = mapOrGeoModel; + } + var specifiedTextOpt = labelXY ? { + normal: { + align: 'center', + verticalAlign: 'middle' + } + } : null; + // Caveat: must be called after `setDefaultStateProxy(el);` called. + // because textContent will be assign with `el.stateProxy` inside. + setLabelStyle(el, getLabelStatesModels(regionModel), { + labelFetcher: labelFetcher, + labelDataIndex: query, + defaultText: regionName + }, specifiedTextOpt); + var textEl = el.getTextContent(); + if (textEl) { + mapLabelRaw(textEl).ignore = textEl.ignore; + if (el.textConfig && labelXY) { + // Compute a relative offset based on the el bounding rect. + var rect = el.getBoundingRect().clone(); + // Need to make sure the percent position base on the same rect in normal and + // emphasis state. Otherwise if using boundingRect of el, but the emphasis state + // has borderWidth (even 0.5px), the text position will be changed obviously + // if the position is very big like ['1234%', '1345%']. + el.textConfig.layoutRect = rect; + el.textConfig.position = [(labelXY[0] - rect.x) / rect.width * 100 + '%', (labelXY[1] - rect.y) / rect.height * 100 + '%']; + } + } + // PENDING: + // If labelLayout is enabled (test/label-layout.html), el.dataIndex should be specified. + // But el.dataIndex is also used to determine whether user event should be triggered, + // where el.seriesIndex or el.dataModel must be specified. At present for a single el + // there is not case that "only label layout enabled but user event disabled", so here + // we depends `resetEventTriggerForRegion` to do the job of setting `el.dataIndex`. + el.disableLabelAnimation = true; + } else { + el.removeTextContent(); + el.removeTextConfig(); + el.disableLabelAnimation = null; + } + } + function resetEventTriggerForRegion(viewBuildCtx, eventTrigger, regionName, regionModel, mapOrGeoModel, + // Exist only if `viewBuildCtx.data` exists. + dataIdx) { + // setItemGraphicEl, setHoverStyle after all polygons and labels + // are added to the regionGroup + if (viewBuildCtx.data) { + // FIXME: when series-map use a SVG map, and there are duplicated name specified + // on different SVG elements, after `data.setItemGraphicEl(...)`: + // (1) all of them will be mounted with `dataIndex`, `seriesIndex`, so that tooltip + // can be triggered only mouse hover. That's correct. + // (2) only the last element will be kept in `data`, so that if trigger tooltip + // by `dispatchAction`, only the last one can be found and triggered. That might be + // not correct. We will fix it in future if anyone demanding that. + viewBuildCtx.data.setItemGraphicEl(dataIdx, eventTrigger); + } + // series-map will not trigger "geoselectchange" no matter it is + // based on a declared geo component. Because series-map will + // trigger "selectchange". If it trigger both the two events, + // If users call `chart.dispatchAction({type: 'toggleSelect'})`, + // it not easy to also fire event "geoselectchanged". + else { + // Package custom mouse event for geo component + getECData(eventTrigger).eventData = { + componentType: 'geo', + componentIndex: mapOrGeoModel.componentIndex, + geoIndex: mapOrGeoModel.componentIndex, + name: regionName, + region: regionModel && regionModel.option || {} + }; + } + } + function resetTooltipForRegion(viewBuildCtx, el, regionName, regionModel, mapOrGeoModel) { + if (!viewBuildCtx.data) { + setTooltipConfig({ + el: el, + componentModel: mapOrGeoModel, + itemName: regionName, + // @ts-ignore FIXME:TS fix the "compatible with each other"? + itemTooltipOption: regionModel.get('tooltip') + }); + } + } + function resetStateTriggerForRegion(viewBuildCtx, el, regionName, regionModel, mapOrGeoModel) { + // @ts-ignore FIXME:TS fix the "compatible with each other"? + el.highDownSilentOnTouch = !!mapOrGeoModel.get('selectedMode'); + // @ts-ignore FIXME:TS fix the "compatible with each other"? + var emphasisModel = regionModel.getModel('emphasis'); + var focus = emphasisModel.get('focus'); + toggleHoverEmphasis(el, focus, emphasisModel.get('blurScope'), emphasisModel.get('disabled')); + if (viewBuildCtx.isGeo) { + enableComponentHighDownFeatures(el, mapOrGeoModel, regionName); + } + return focus; + } + function projectPolys(rings, + // Polygons include exterior and interiors. Or polylines. + createStream, isLine) { + var polygons = []; + var curPoly; + function startPolygon() { + curPoly = []; + } + function endPolygon() { + if (curPoly.length) { + polygons.push(curPoly); + curPoly = []; + } + } + var stream = createStream({ + polygonStart: startPolygon, + polygonEnd: endPolygon, + lineStart: startPolygon, + lineEnd: endPolygon, + point: function (x, y) { + // May have NaN values from stream. + if (isFinite(x) && isFinite(y)) { + curPoly.push([x, y]); + } + }, + sphere: function () {} + }); + !isLine && stream.polygonStart(); + each(rings, function (ring) { + stream.lineStart(); + for (var i = 0; i < ring.length; i++) { + stream.point(ring[i][0], ring[i][1]); + } + stream.lineEnd(); + }); + !isLine && stream.polygonEnd(); + return polygons; + } + // @ts-ignore FIXME:TS fix the "compatible with each other"? + + var MapView = /** @class */function (_super) { + __extends(MapView, _super); + function MapView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = MapView.type; + return _this; + } + MapView.prototype.render = function (mapModel, ecModel, api, payload) { + // Not render if it is an toggleSelect action from self + if (payload && payload.type === 'mapToggleSelect' && payload.from === this.uid) { + return; + } + var group = this.group; + group.removeAll(); + if (mapModel.getHostGeoModel()) { + return; + } + if (this._mapDraw && payload && payload.type === 'geoRoam') { + this._mapDraw.resetForLabelLayout(); + } + // Not update map if it is an roam action from self + if (!(payload && payload.type === 'geoRoam' && payload.componentType === 'series' && payload.seriesId === mapModel.id)) { + if (mapModel.needsDrawMap) { + var mapDraw = this._mapDraw || new MapDraw(api); + group.add(mapDraw.group); + mapDraw.draw(mapModel, ecModel, api, this, payload); + this._mapDraw = mapDraw; + } else { + // Remove drawn map + this._mapDraw && this._mapDraw.remove(); + this._mapDraw = null; + } + } else { + var mapDraw = this._mapDraw; + mapDraw && group.add(mapDraw.group); + } + mapModel.get('showLegendSymbol') && ecModel.getComponent('legend') && this._renderSymbols(mapModel, ecModel, api); + }; + MapView.prototype.remove = function () { + this._mapDraw && this._mapDraw.remove(); + this._mapDraw = null; + this.group.removeAll(); + }; + MapView.prototype.dispose = function () { + this._mapDraw && this._mapDraw.remove(); + this._mapDraw = null; + }; + MapView.prototype._renderSymbols = function (mapModel, ecModel, api) { + var originalData = mapModel.originalData; + var group = this.group; + originalData.each(originalData.mapDimension('value'), function (value, originalDataIndex) { + if (isNaN(value)) { + return; + } + var layout = originalData.getItemLayout(originalDataIndex); + if (!layout || !layout.point) { + // Not exists in map + return; + } + var point = layout.point; + var offset = layout.offset; + var circle = new Circle({ + style: { + // Because the special of map draw. + // Which needs statistic of multiple series and draw on one map. + // And each series also need a symbol with legend color + // + // Layout and visual are put one the different data + // TODO + fill: mapModel.getData().getVisual('style').fill + }, + shape: { + cx: point[0] + offset * 9, + cy: point[1], + r: 3 + }, + silent: true, + // Do not overlap the first series, on which labels are displayed. + z2: 8 + (!offset ? Z2_EMPHASIS_LIFT + 1 : 0) + }); + // Only the series that has the first value on the same region is in charge of rendering the label. + // But consider the case: + // series: [ + // {id: 'X', type: 'map', map: 'm', {data: [{name: 'A', value: 11}, {name: 'B', {value: 22}]}, + // {id: 'Y', type: 'map', map: 'm', {data: [{name: 'A', value: 21}, {name: 'C', {value: 33}]} + // ] + // The offset `0` of item `A` is at series `X`, but of item `C` is at series `Y`. + // For backward compatibility, we follow the rule that render label `A` by the + // settings on series `X` but render label `C` by the settings on series `Y`. + if (!offset) { + var fullData = mapModel.mainSeries.getData(); + var name_1 = originalData.getName(originalDataIndex); + var fullIndex_1 = fullData.indexOfName(name_1); + var itemModel = originalData.getItemModel(originalDataIndex); + var labelModel = itemModel.getModel('label'); + var regionGroup = fullData.getItemGraphicEl(fullIndex_1); + // `getFormattedLabel` needs to use `getData` inside. Here + // `mapModel.getData()` is shallow cloned from `mainSeries.getData()`. + // FIXME + // If this is not the `mainSeries`, the item model (like label formatter) + // set on original data item will never get. But it has been working + // like that from the beginning, and this scenario is rarely encountered. + // So it won't be fixed until we have to. + setLabelStyle(circle, getLabelStatesModels(itemModel), { + labelFetcher: { + getFormattedLabel: function (idx, state) { + return mapModel.getFormattedLabel(fullIndex_1, state); + } + }, + defaultText: name_1 + }); + circle.disableLabelAnimation = true; + if (!labelModel.get('position')) { + circle.setTextConfig({ + position: 'bottom' + }); + } + regionGroup.onHoverStateChange = function (toState) { + setStatesFlag(circle, toState); + }; + } + group.add(circle); + }); + }; + MapView.type = 'map'; + return MapView; + }(ChartView); + + var MapSeries = /** @class */function (_super) { + __extends(MapSeries, _super); + function MapSeries() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = MapSeries.type; + // Only first map series of same mapType will drawMap. + _this.needsDrawMap = false; + // Group of all map series with same mapType + _this.seriesGroup = []; + _this.getTooltipPosition = function (dataIndex) { + if (dataIndex != null) { + var name_1 = this.getData().getName(dataIndex); + var geo = this.coordinateSystem; + var region = geo.getRegion(name_1); + return region && geo.dataToPoint(region.getCenter()); + } + }; + return _this; + } + MapSeries.prototype.getInitialData = function (option) { + var data = createSeriesDataSimply(this, { + coordDimensions: ['value'], + encodeDefaulter: curry(makeSeriesEncodeForNameBased, this) + }); + var dataNameMap = createHashMap(); + var toAppendNames = []; + for (var i = 0, len = data.count(); i < len; i++) { + var name_2 = data.getName(i); + dataNameMap.set(name_2, true); + } + var geoSource = geoSourceManager.load(this.getMapType(), this.option.nameMap, this.option.nameProperty); + each(geoSource.regions, function (region) { + var name = region.name; + if (!dataNameMap.get(name)) { + toAppendNames.push(name); + } + }); + // Complete data with missing regions. The consequent processes (like visual + // map and render) can not be performed without a "full data". For example, + // find `dataIndex` by name. + data.appendValues([], toAppendNames); + return data; + }; + /** + * If no host geo model, return null, which means using a + * inner exclusive geo model. + */ + MapSeries.prototype.getHostGeoModel = function () { + var geoIndex = this.option.geoIndex; + return geoIndex != null ? this.ecModel.getComponent('geo', geoIndex) : null; + }; + MapSeries.prototype.getMapType = function () { + return (this.getHostGeoModel() || this).option.map; + }; + // _fillOption(option, mapName) { + // Shallow clone + // option = zrUtil.extend({}, option); + // option.data = geoCreator.getFilledRegions(option.data, mapName, option.nameMap); + // return option; + // } + MapSeries.prototype.getRawValue = function (dataIndex) { + // Use value stored in data instead because it is calculated from multiple series + // FIXME Provide all value of multiple series ? + var data = this.getData(); + return data.get(data.mapDimension('value'), dataIndex); + }; + /** + * Get model of region + */ + MapSeries.prototype.getRegionModel = function (regionName) { + var data = this.getData(); + return data.getItemModel(data.indexOfName(regionName)); + }; + /** + * Map tooltip formatter + */ + MapSeries.prototype.formatTooltip = function (dataIndex, multipleSeries, dataType) { + // FIXME orignalData and data is a bit confusing + var data = this.getData(); + var value = this.getRawValue(dataIndex); + var name = data.getName(dataIndex); + var seriesGroup = this.seriesGroup; + var seriesNames = []; + for (var i = 0; i < seriesGroup.length; i++) { + var otherIndex = seriesGroup[i].originalData.indexOfName(name); + var valueDim = data.mapDimension('value'); + if (!isNaN(seriesGroup[i].originalData.get(valueDim, otherIndex))) { + seriesNames.push(seriesGroup[i].name); + } + } + return createTooltipMarkup('section', { + header: seriesNames.join(', '), + noHeader: !seriesNames.length, + blocks: [createTooltipMarkup('nameValue', { + name: name, + value: value + })] + }); + }; + MapSeries.prototype.setZoom = function (zoom) { + this.option.zoom = zoom; + }; + MapSeries.prototype.setCenter = function (center) { + this.option.center = center; + }; + MapSeries.prototype.getLegendIcon = function (opt) { + var iconType = opt.icon || 'roundRect'; + var icon = createSymbol(iconType, 0, 0, opt.itemWidth, opt.itemHeight, opt.itemStyle.fill); + icon.setStyle(opt.itemStyle); + // Map do not use itemStyle.borderWidth as border width + icon.style.stroke = 'none'; + // No rotation because no series visual symbol for map + if (iconType.indexOf('empty') > -1) { + icon.style.stroke = icon.style.fill; + icon.style.fill = '#fff'; + icon.style.lineWidth = 2; + } + return icon; + }; + MapSeries.type = 'series.map'; + MapSeries.dependencies = ['geo']; + MapSeries.layoutMode = 'box'; + MapSeries.defaultOption = { + // 一级层叠 + // zlevel: 0, + // 二级层叠 + z: 2, + coordinateSystem: 'geo', + // map should be explicitly specified since ec3. + map: '', + // If `geoIndex` is not specified, a exclusive geo will be + // created. Otherwise use the specified geo component, and + // `map` and `mapType` are ignored. + // geoIndex: 0, + // 'center' | 'left' | 'right' | 'x%' | {number} + left: 'center', + // 'center' | 'top' | 'bottom' | 'x%' | {number} + top: 'center', + // right + // bottom + // width: + // height + // Aspect is width / height. Inited to be geoJson bbox aspect + // This parameter is used for scale this aspect + // Default value: + // for geoSVG source: 1, + // for geoJSON source: 0.75. + aspectScale: null, + // Layout with center and size + // If you want to put map in a fixed size box with right aspect ratio + // This two properties may be more convenient. + // layoutCenter: [50%, 50%] + // layoutSize: 100 + showLegendSymbol: true, + // Define left-top, right-bottom coords to control view + // For example, [ [180, 90], [-180, -90] ], + // higher priority than center and zoom + boundingCoords: null, + // Default on center of map + center: null, + zoom: 1, + scaleLimit: null, + selectedMode: true, + label: { + show: false, + color: '#000' + }, + // scaleLimit: null, + itemStyle: { + borderWidth: 0.5, + borderColor: '#444', + areaColor: '#eee' + }, + emphasis: { + label: { + show: true, + color: 'rgb(100,0,0)' + }, + itemStyle: { + areaColor: 'rgba(255,215,0,0.8)' + } + }, + select: { + label: { + show: true, + color: 'rgb(100,0,0)' + }, + itemStyle: { + color: 'rgba(255,215,0,0.8)' + } + }, + nameProperty: 'name' + }; + return MapSeries; + }(SeriesModel); + + // FIXME 公用? + function dataStatistics(datas, statisticType) { + var dataNameMap = {}; + each(datas, function (data) { + data.each(data.mapDimension('value'), function (value, idx) { + // Add prefix to avoid conflict with Object.prototype. + var mapKey = 'ec-' + data.getName(idx); + dataNameMap[mapKey] = dataNameMap[mapKey] || []; + if (!isNaN(value)) { + dataNameMap[mapKey].push(value); + } + }); + }); + return datas[0].map(datas[0].mapDimension('value'), function (value, idx) { + var mapKey = 'ec-' + datas[0].getName(idx); + var sum = 0; + var min = Infinity; + var max = -Infinity; + var len = dataNameMap[mapKey].length; + for (var i = 0; i < len; i++) { + min = Math.min(min, dataNameMap[mapKey][i]); + max = Math.max(max, dataNameMap[mapKey][i]); + sum += dataNameMap[mapKey][i]; + } + var result; + if (statisticType === 'min') { + result = min; + } else if (statisticType === 'max') { + result = max; + } else if (statisticType === 'average') { + result = sum / len; + } else { + result = sum; + } + return len === 0 ? NaN : result; + }); + } + function mapDataStatistic(ecModel) { + var seriesGroups = {}; + ecModel.eachSeriesByType('map', function (seriesModel) { + var hostGeoModel = seriesModel.getHostGeoModel(); + var key = hostGeoModel ? 'o' + hostGeoModel.id : 'i' + seriesModel.getMapType(); + (seriesGroups[key] = seriesGroups[key] || []).push(seriesModel); + }); + each(seriesGroups, function (seriesList, key) { + var data = dataStatistics(map(seriesList, function (seriesModel) { + return seriesModel.getData(); + }), seriesList[0].get('mapValueCalculation')); + for (var i = 0; i < seriesList.length; i++) { + seriesList[i].originalData = seriesList[i].getData(); + } + // FIXME Put where? + for (var i = 0; i < seriesList.length; i++) { + seriesList[i].seriesGroup = seriesList; + seriesList[i].needsDrawMap = i === 0 && !seriesList[i].getHostGeoModel(); + seriesList[i].setData(data.cloneShallow()); + seriesList[i].mainSeries = seriesList[0]; + } + }); + } + + function mapSymbolLayout(ecModel) { + var processedMapType = {}; + ecModel.eachSeriesByType('map', function (mapSeries) { + var mapType = mapSeries.getMapType(); + if (mapSeries.getHostGeoModel() || processedMapType[mapType]) { + return; + } + var mapSymbolOffsets = {}; + each(mapSeries.seriesGroup, function (subMapSeries) { + var geo = subMapSeries.coordinateSystem; + var data = subMapSeries.originalData; + if (subMapSeries.get('showLegendSymbol') && ecModel.getComponent('legend')) { + data.each(data.mapDimension('value'), function (value, idx) { + var name = data.getName(idx); + var region = geo.getRegion(name); + // If input series.data is [11, 22, '-'/null/undefined, 44], + // it will be filled with NaN: [11, 22, NaN, 44] and NaN will + // not be drawn. So here must validate if value is NaN. + if (!region || isNaN(value)) { + return; + } + var offset = mapSymbolOffsets[name] || 0; + var point = geo.dataToPoint(region.getCenter()); + mapSymbolOffsets[name] = offset + 1; + data.setItemLayout(idx, { + point: point, + offset: offset + }); + }); + } + }); + // Show label of those region not has legendIcon (which is offset 0) + var data = mapSeries.getData(); + data.each(function (idx) { + var name = data.getName(idx); + var layout = data.getItemLayout(idx) || {}; + layout.showLabel = !mapSymbolOffsets[name]; + data.setItemLayout(idx, layout); + }); + processedMapType[mapType] = true; + }); + } + + var v2ApplyTransform = applyTransform; + var View = /** @class */function (_super) { + __extends(View, _super); + function View(name) { + var _this = _super.call(this) || this; + _this.type = 'view'; + _this.dimensions = ['x', 'y']; + /** + * Represents the transform brought by roam/zoom. + * If `View['_viewRect']` applies roam transform, + * we can get the final displayed rect. + */ + _this._roamTransformable = new Transformable(); + /** + * Represents the transform from `View['_rect']` to `View['_viewRect']`. + */ + _this._rawTransformable = new Transformable(); + _this.name = name; + return _this; + } + View.prototype.setBoundingRect = function (x, y, width, height) { + this._rect = new BoundingRect(x, y, width, height); + return this._rect; + }; + /** + * @return {module:zrender/core/BoundingRect} + */ + View.prototype.getBoundingRect = function () { + return this._rect; + }; + View.prototype.setViewRect = function (x, y, width, height) { + this._transformTo(x, y, width, height); + this._viewRect = new BoundingRect(x, y, width, height); + }; + /** + * Transformed to particular position and size + */ + View.prototype._transformTo = function (x, y, width, height) { + var rect = this.getBoundingRect(); + var rawTransform = this._rawTransformable; + rawTransform.transform = rect.calculateTransform(new BoundingRect(x, y, width, height)); + var rawParent = rawTransform.parent; + rawTransform.parent = null; + rawTransform.decomposeTransform(); + rawTransform.parent = rawParent; + this._updateTransform(); + }; + /** + * Set center of view + */ + View.prototype.setCenter = function (centerCoord, api) { + if (!centerCoord) { + return; + } + this._center = [parsePercent$1(centerCoord[0], api.getWidth()), parsePercent$1(centerCoord[1], api.getHeight())]; + this._updateCenterAndZoom(); + }; + View.prototype.setZoom = function (zoom) { + zoom = zoom || 1; + var zoomLimit = this.zoomLimit; + if (zoomLimit) { + if (zoomLimit.max != null) { + zoom = Math.min(zoomLimit.max, zoom); + } + if (zoomLimit.min != null) { + zoom = Math.max(zoomLimit.min, zoom); + } + } + this._zoom = zoom; + this._updateCenterAndZoom(); + }; + /** + * Get default center without roam + */ + View.prototype.getDefaultCenter = function () { + // Rect before any transform + var rawRect = this.getBoundingRect(); + var cx = rawRect.x + rawRect.width / 2; + var cy = rawRect.y + rawRect.height / 2; + return [cx, cy]; + }; + View.prototype.getCenter = function () { + return this._center || this.getDefaultCenter(); + }; + View.prototype.getZoom = function () { + return this._zoom || 1; + }; + View.prototype.getRoamTransform = function () { + return this._roamTransformable.getLocalTransform(); + }; + /** + * Remove roam + */ + View.prototype._updateCenterAndZoom = function () { + // Must update after view transform updated + var rawTransformMatrix = this._rawTransformable.getLocalTransform(); + var roamTransform = this._roamTransformable; + var defaultCenter = this.getDefaultCenter(); + var center = this.getCenter(); + var zoom = this.getZoom(); + center = applyTransform([], center, rawTransformMatrix); + defaultCenter = applyTransform([], defaultCenter, rawTransformMatrix); + roamTransform.originX = center[0]; + roamTransform.originY = center[1]; + roamTransform.x = defaultCenter[0] - center[0]; + roamTransform.y = defaultCenter[1] - center[1]; + roamTransform.scaleX = roamTransform.scaleY = zoom; + this._updateTransform(); + }; + /** + * Update transform props on `this` based on the current + * `this._roamTransformable` and `this._rawTransformable`. + */ + View.prototype._updateTransform = function () { + var roamTransformable = this._roamTransformable; + var rawTransformable = this._rawTransformable; + rawTransformable.parent = roamTransformable; + roamTransformable.updateTransform(); + rawTransformable.updateTransform(); + copy$1(this.transform || (this.transform = []), rawTransformable.transform || create$1()); + this._rawTransform = rawTransformable.getLocalTransform(); + this.invTransform = this.invTransform || []; + invert(this.invTransform, this.transform); + this.decomposeTransform(); + }; + View.prototype.getTransformInfo = function () { + var rawTransformable = this._rawTransformable; + var roamTransformable = this._roamTransformable; + // Because roamTransformabel has `originX/originY` modified, + // but the caller of `getTransformInfo` can not handle `originX/originY`, + // so need to recalculate them. + var dummyTransformable = new Transformable(); + dummyTransformable.transform = roamTransformable.transform; + dummyTransformable.decomposeTransform(); + return { + roam: { + x: dummyTransformable.x, + y: dummyTransformable.y, + scaleX: dummyTransformable.scaleX, + scaleY: dummyTransformable.scaleY + }, + raw: { + x: rawTransformable.x, + y: rawTransformable.y, + scaleX: rawTransformable.scaleX, + scaleY: rawTransformable.scaleY + } + }; + }; + View.prototype.getViewRect = function () { + return this._viewRect; + }; + /** + * Get view rect after roam transform + */ + View.prototype.getViewRectAfterRoam = function () { + var rect = this.getBoundingRect().clone(); + rect.applyTransform(this.transform); + return rect; + }; + /** + * Convert a single (lon, lat) data item to (x, y) point. + */ + View.prototype.dataToPoint = function (data, noRoam, out) { + var transform = noRoam ? this._rawTransform : this.transform; + out = out || []; + return transform ? v2ApplyTransform(out, data, transform) : copy(out, data); + }; + /** + * Convert a (x, y) point to (lon, lat) data + */ + View.prototype.pointToData = function (point) { + var invTransform = this.invTransform; + return invTransform ? v2ApplyTransform([], point, invTransform) : [point[0], point[1]]; + }; + View.prototype.convertToPixel = function (ecModel, finder, value) { + var coordSys = getCoordSys(finder); + return coordSys === this ? coordSys.dataToPoint(value) : null; + }; + View.prototype.convertFromPixel = function (ecModel, finder, pixel) { + var coordSys = getCoordSys(finder); + return coordSys === this ? coordSys.pointToData(pixel) : null; + }; + /** + * @implements + */ + View.prototype.containPoint = function (point) { + return this.getViewRectAfterRoam().contain(point[0], point[1]); + }; + View.dimensions = ['x', 'y']; + return View; + }(Transformable); + function getCoordSys(finder) { + var seriesModel = finder.seriesModel; + return seriesModel ? seriesModel.coordinateSystem : null; // e.g., graph. + } + + var GEO_DEFAULT_PARAMS = { + 'geoJSON': { + aspectScale: 0.75, + invertLongitute: true + }, + 'geoSVG': { + aspectScale: 1, + invertLongitute: false + } + }; + var geo2DDimensions = ['lng', 'lat']; + var Geo = /** @class */function (_super) { + __extends(Geo, _super); + function Geo(name, map, opt) { + var _this = _super.call(this, name) || this; + _this.dimensions = geo2DDimensions; + _this.type = 'geo'; + // Only store specified name coord via `addGeoCoord`. + _this._nameCoordMap = createHashMap(); + _this.map = map; + var projection = opt.projection; + var source = geoSourceManager.load(map, opt.nameMap, opt.nameProperty); + var resource = geoSourceManager.getGeoResource(map); + var resourceType = _this.resourceType = resource ? resource.type : null; + var regions = _this.regions = source.regions; + var defaultParams = GEO_DEFAULT_PARAMS[resource.type]; + _this._regionsMap = source.regionsMap; + _this.regions = source.regions; + if ("development" !== 'production' && projection) { + // Do some check + if (resourceType === 'geoSVG') { + if ("development" !== 'production') { + warn("Map " + map + " with SVG source can't use projection. Only GeoJSON source supports projection."); + } + projection = null; + } + if (!(projection.project && projection.unproject)) { + if ("development" !== 'production') { + warn('project and unproject must be both provided in the projeciton.'); + } + projection = null; + } + } + _this.projection = projection; + var boundingRect; + if (projection) { + // Can't reuse the raw bounding rect + for (var i = 0; i < regions.length; i++) { + var regionRect = regions[i].getBoundingRect(projection); + boundingRect = boundingRect || regionRect.clone(); + boundingRect.union(regionRect); + } + } else { + boundingRect = source.boundingRect; + } + _this.setBoundingRect(boundingRect.x, boundingRect.y, boundingRect.width, boundingRect.height); + // aspectScale and invertLongitute actually is the parameters default raw projection. + // So we ignore them if projection is given. + // Ignore default aspect scale if projection exits. + _this.aspectScale = projection ? 1 : retrieve2(opt.aspectScale, defaultParams.aspectScale); + // Not invert longitude if projection exits. + _this._invertLongitute = projection ? false : defaultParams.invertLongitute; + return _this; + } + Geo.prototype._transformTo = function (x, y, width, height) { + var rect = this.getBoundingRect(); + var invertLongitute = this._invertLongitute; + rect = rect.clone(); + if (invertLongitute) { + // Longitude is inverted. + rect.y = -rect.y - rect.height; + } + var rawTransformable = this._rawTransformable; + rawTransformable.transform = rect.calculateTransform(new BoundingRect(x, y, width, height)); + var rawParent = rawTransformable.parent; + rawTransformable.parent = null; + rawTransformable.decomposeTransform(); + rawTransformable.parent = rawParent; + if (invertLongitute) { + rawTransformable.scaleY = -rawTransformable.scaleY; + } + this._updateTransform(); + }; + Geo.prototype.getRegion = function (name) { + return this._regionsMap.get(name); + }; + Geo.prototype.getRegionByCoord = function (coord) { + var regions = this.regions; + for (var i = 0; i < regions.length; i++) { + var region = regions[i]; + if (region.type === 'geoJSON' && region.contain(coord)) { + return regions[i]; + } + } + }; + /** + * Add geoCoord for indexing by name + */ + Geo.prototype.addGeoCoord = function (name, geoCoord) { + this._nameCoordMap.set(name, geoCoord); + }; + /** + * Get geoCoord by name + */ + Geo.prototype.getGeoCoord = function (name) { + var region = this._regionsMap.get(name); + // Calculate center only on demand. + return this._nameCoordMap.get(name) || region && region.getCenter(); + }; + Geo.prototype.dataToPoint = function (data, noRoam, out) { + if (isString(data)) { + // Map area name to geoCoord + data = this.getGeoCoord(data); + } + if (data) { + var projection = this.projection; + if (projection) { + // projection may return null point. + data = projection.project(data); + } + return data && this.projectedToPoint(data, noRoam, out); + } + }; + Geo.prototype.pointToData = function (point) { + var projection = this.projection; + if (projection) { + // projection may return null point. + point = projection.unproject(point); + } + return point && this.pointToProjected(point); + }; + /** + * Point to projected data. Same with pointToData when projection is used. + */ + Geo.prototype.pointToProjected = function (point) { + return _super.prototype.pointToData.call(this, point); + }; + Geo.prototype.projectedToPoint = function (projected, noRoam, out) { + return _super.prototype.dataToPoint.call(this, projected, noRoam, out); + }; + Geo.prototype.convertToPixel = function (ecModel, finder, value) { + var coordSys = getCoordSys$1(finder); + return coordSys === this ? coordSys.dataToPoint(value) : null; + }; + Geo.prototype.convertFromPixel = function (ecModel, finder, pixel) { + var coordSys = getCoordSys$1(finder); + return coordSys === this ? coordSys.pointToData(pixel) : null; + }; + return Geo; + }(View); + mixin(Geo, View); + function getCoordSys$1(finder) { + var geoModel = finder.geoModel; + var seriesModel = finder.seriesModel; + return geoModel ? geoModel.coordinateSystem : seriesModel ? seriesModel.coordinateSystem // For map series. + || (seriesModel.getReferringComponents('geo', SINGLE_REFERRING).models[0] || {}).coordinateSystem : null; + } + + /** + * Resize method bound to the geo + */ + function resizeGeo(geoModel, api) { + var boundingCoords = geoModel.get('boundingCoords'); + if (boundingCoords != null) { + var leftTop_1 = boundingCoords[0]; + var rightBottom_1 = boundingCoords[1]; + if (!(isFinite(leftTop_1[0]) && isFinite(leftTop_1[1]) && isFinite(rightBottom_1[0]) && isFinite(rightBottom_1[1]))) { + if ("development" !== 'production') { + console.error('Invalid boundingCoords'); + } + } else { + // Sample around the lng/lat rect and use projection to calculate actual bounding rect. + var projection_1 = this.projection; + if (projection_1) { + var xMin = leftTop_1[0]; + var yMin = leftTop_1[1]; + var xMax = rightBottom_1[0]; + var yMax = rightBottom_1[1]; + leftTop_1 = [Infinity, Infinity]; + rightBottom_1 = [-Infinity, -Infinity]; + // TODO better way? + var sampleLine = function (x0, y0, x1, y1) { + var dx = x1 - x0; + var dy = y1 - y0; + for (var i = 0; i <= 100; i++) { + var p = i / 100; + var pt = projection_1.project([x0 + dx * p, y0 + dy * p]); + min(leftTop_1, leftTop_1, pt); + max(rightBottom_1, rightBottom_1, pt); + } + }; + // Top + sampleLine(xMin, yMin, xMax, yMin); + // Right + sampleLine(xMax, yMin, xMax, yMax); + // Bottom + sampleLine(xMax, yMax, xMin, yMax); + // Left + sampleLine(xMin, yMax, xMax, yMin); + } + this.setBoundingRect(leftTop_1[0], leftTop_1[1], rightBottom_1[0] - leftTop_1[0], rightBottom_1[1] - leftTop_1[1]); + } + } + var rect = this.getBoundingRect(); + var centerOption = geoModel.get('layoutCenter'); + var sizeOption = geoModel.get('layoutSize'); + var viewWidth = api.getWidth(); + var viewHeight = api.getHeight(); + var aspect = rect.width / rect.height * this.aspectScale; + var useCenterAndSize = false; + var center; + var size; + if (centerOption && sizeOption) { + center = [parsePercent$1(centerOption[0], viewWidth), parsePercent$1(centerOption[1], viewHeight)]; + size = parsePercent$1(sizeOption, Math.min(viewWidth, viewHeight)); + if (!isNaN(center[0]) && !isNaN(center[1]) && !isNaN(size)) { + useCenterAndSize = true; + } else { + if ("development" !== 'production') { + console.warn('Given layoutCenter or layoutSize data are invalid. Use left/top/width/height instead.'); + } + } + } + var viewRect; + if (useCenterAndSize) { + viewRect = {}; + if (aspect > 1) { + // Width is same with size + viewRect.width = size; + viewRect.height = size / aspect; + } else { + viewRect.height = size; + viewRect.width = size * aspect; + } + viewRect.y = center[1] - viewRect.height / 2; + viewRect.x = center[0] - viewRect.width / 2; + } else { + // Use left/top/width/height + var boxLayoutOption = geoModel.getBoxLayoutParams(); + boxLayoutOption.aspect = aspect; + viewRect = getLayoutRect(boxLayoutOption, { + width: viewWidth, + height: viewHeight + }); + } + this.setViewRect(viewRect.x, viewRect.y, viewRect.width, viewRect.height); + this.setCenter(geoModel.get('center'), api); + this.setZoom(geoModel.get('zoom')); + } + // Back compat for ECharts2, where the coord map is set on map series: + // {type: 'map', geoCoord: {'cityA': [116.46,39.92], 'cityA': [119.12,24.61]}}, + function setGeoCoords(geo, model) { + each(model.get('geoCoord'), function (geoCoord, name) { + geo.addGeoCoord(name, geoCoord); + }); + } + var GeoCreator = /** @class */function () { + function GeoCreator() { + // For deciding which dimensions to use when creating list data + this.dimensions = geo2DDimensions; + } + GeoCreator.prototype.create = function (ecModel, api) { + var geoList = []; + function getCommonGeoProperties(model) { + return { + nameProperty: model.get('nameProperty'), + aspectScale: model.get('aspectScale'), + projection: model.get('projection') + }; + } + // FIXME Create each time may be slow + ecModel.eachComponent('geo', function (geoModel, idx) { + var mapName = geoModel.get('map'); + var geo = new Geo(mapName + idx, mapName, extend({ + nameMap: geoModel.get('nameMap') + }, getCommonGeoProperties(geoModel))); + geo.zoomLimit = geoModel.get('scaleLimit'); + geoList.push(geo); + // setGeoCoords(geo, geoModel); + geoModel.coordinateSystem = geo; + geo.model = geoModel; + // Inject resize method + geo.resize = resizeGeo; + geo.resize(geoModel, api); + }); + ecModel.eachSeries(function (seriesModel) { + var coordSys = seriesModel.get('coordinateSystem'); + if (coordSys === 'geo') { + var geoIndex = seriesModel.get('geoIndex') || 0; + seriesModel.coordinateSystem = geoList[geoIndex]; + } + }); + // If has map series + var mapModelGroupBySeries = {}; + ecModel.eachSeriesByType('map', function (seriesModel) { + if (!seriesModel.getHostGeoModel()) { + var mapType = seriesModel.getMapType(); + mapModelGroupBySeries[mapType] = mapModelGroupBySeries[mapType] || []; + mapModelGroupBySeries[mapType].push(seriesModel); + } + }); + each(mapModelGroupBySeries, function (mapSeries, mapType) { + var nameMapList = map(mapSeries, function (singleMapSeries) { + return singleMapSeries.get('nameMap'); + }); + var geo = new Geo(mapType, mapType, extend({ + nameMap: mergeAll(nameMapList) + }, getCommonGeoProperties(mapSeries[0]))); + geo.zoomLimit = retrieve.apply(null, map(mapSeries, function (singleMapSeries) { + return singleMapSeries.get('scaleLimit'); + })); + geoList.push(geo); + // Inject resize method + geo.resize = resizeGeo; + geo.resize(mapSeries[0], api); + each(mapSeries, function (singleMapSeries) { + singleMapSeries.coordinateSystem = geo; + setGeoCoords(geo, singleMapSeries); + }); + }); + return geoList; + }; + /** + * Fill given regions array + */ + GeoCreator.prototype.getFilledRegions = function (originRegionArr, mapName, nameMap, nameProperty) { + // Not use the original + var regionsArr = (originRegionArr || []).slice(); + var dataNameMap = createHashMap(); + for (var i = 0; i < regionsArr.length; i++) { + dataNameMap.set(regionsArr[i].name, regionsArr[i]); + } + var source = geoSourceManager.load(mapName, nameMap, nameProperty); + each(source.regions, function (region) { + var name = region.name; + !dataNameMap.get(name) && regionsArr.push({ + name: name + }); + }); + return regionsArr; + }; + return GeoCreator; + }(); + var geoCreator = new GeoCreator(); + + var GeoModel = /** @class */function (_super) { + __extends(GeoModel, _super); + function GeoModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = GeoModel.type; + return _this; + } + GeoModel.prototype.init = function (option, parentModel, ecModel) { + var source = geoSourceManager.getGeoResource(option.map); + if (source && source.type === 'geoJSON') { + var itemStyle = option.itemStyle = option.itemStyle || {}; + if (!('color' in itemStyle)) { + itemStyle.color = '#eee'; + } + } + this.mergeDefaultAndTheme(option, ecModel); + // Default label emphasis `show` + defaultEmphasis(option, 'label', ['show']); + }; + GeoModel.prototype.optionUpdated = function () { + var _this = this; + var option = this.option; + option.regions = geoCreator.getFilledRegions(option.regions, option.map, option.nameMap, option.nameProperty); + var selectedMap = {}; + this._optionModelMap = reduce(option.regions || [], function (optionModelMap, regionOpt) { + var regionName = regionOpt.name; + if (regionName) { + optionModelMap.set(regionName, new Model(regionOpt, _this, _this.ecModel)); + if (regionOpt.selected) { + selectedMap[regionName] = true; + } + } + return optionModelMap; + }, createHashMap()); + if (!option.selectedMap) { + option.selectedMap = selectedMap; + } + }; + /** + * Get model of region. + */ + GeoModel.prototype.getRegionModel = function (name) { + return this._optionModelMap.get(name) || new Model(null, this, this.ecModel); + }; + /** + * Format label + * @param name Region name + */ + GeoModel.prototype.getFormattedLabel = function (name, status) { + var regionModel = this.getRegionModel(name); + var formatter = status === 'normal' ? regionModel.get(['label', 'formatter']) : regionModel.get(['emphasis', 'label', 'formatter']); + var params = { + name: name + }; + if (isFunction(formatter)) { + params.status = status; + return formatter(params); + } else if (isString(formatter)) { + return formatter.replace('{a}', name != null ? name : ''); + } + }; + GeoModel.prototype.setZoom = function (zoom) { + this.option.zoom = zoom; + }; + GeoModel.prototype.setCenter = function (center) { + this.option.center = center; + }; + // PENGING If selectedMode is null ? + GeoModel.prototype.select = function (name) { + var option = this.option; + var selectedMode = option.selectedMode; + if (!selectedMode) { + return; + } + if (selectedMode !== 'multiple') { + option.selectedMap = null; + } + var selectedMap = option.selectedMap || (option.selectedMap = {}); + selectedMap[name] = true; + }; + GeoModel.prototype.unSelect = function (name) { + var selectedMap = this.option.selectedMap; + if (selectedMap) { + selectedMap[name] = false; + } + }; + GeoModel.prototype.toggleSelected = function (name) { + this[this.isSelected(name) ? 'unSelect' : 'select'](name); + }; + GeoModel.prototype.isSelected = function (name) { + var selectedMap = this.option.selectedMap; + return !!(selectedMap && selectedMap[name]); + }; + GeoModel.type = 'geo'; + GeoModel.layoutMode = 'box'; + GeoModel.defaultOption = { + // zlevel: 0, + z: 0, + show: true, + left: 'center', + top: 'center', + // Default value: + // for geoSVG source: 1, + // for geoJSON source: 0.75. + aspectScale: null, + // /// Layout with center and size + // If you want to put map in a fixed size box with right aspect ratio + // This two properties may be more convenient + // layoutCenter: [50%, 50%] + // layoutSize: 100 + silent: false, + // Map type + map: '', + // Define left-top, right-bottom coords to control view + // For example, [ [180, 90], [-180, -90] ] + boundingCoords: null, + // Default on center of map + center: null, + zoom: 1, + scaleLimit: null, + // selectedMode: false + label: { + show: false, + color: '#000' + }, + itemStyle: { + borderWidth: 0.5, + borderColor: '#444' + // Default color: + // + geoJSON: #eee + // + geoSVG: null (use SVG original `fill`) + // color: '#eee' + }, + + emphasis: { + label: { + show: true, + color: 'rgb(100,0,0)' + }, + itemStyle: { + color: 'rgba(255,215,0,0.8)' + } + }, + select: { + label: { + show: true, + color: 'rgb(100,0,0)' + }, + itemStyle: { + color: 'rgba(255,215,0,0.8)' + } + }, + regions: [] + // tooltip: { + // show: false + // } + }; + + return GeoModel; + }(ComponentModel); + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + + /** + * AUTO-GENERATED FILE. DO NOT MODIFY. + */ + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + function getCenterCoord(view, point) { + // Use projected coord as center because it's linear. + return view.pointToProjected ? view.pointToProjected(point) : view.pointToData(point); + } + function updateCenterAndZoom(view, payload, zoomLimit, api) { + var previousZoom = view.getZoom(); + var center = view.getCenter(); + var zoom = payload.zoom; + var point = view.projectedToPoint ? view.projectedToPoint(center) : view.dataToPoint(center); + if (payload.dx != null && payload.dy != null) { + point[0] -= payload.dx; + point[1] -= payload.dy; + view.setCenter(getCenterCoord(view, point), api); + } + if (zoom != null) { + if (zoomLimit) { + var zoomMin = zoomLimit.min || 0; + var zoomMax = zoomLimit.max || Infinity; + zoom = Math.max(Math.min(previousZoom * zoom, zoomMax), zoomMin) / previousZoom; + } + // Zoom on given point(originX, originY) + view.scaleX *= zoom; + view.scaleY *= zoom; + var fixX = (payload.originX - view.x) * (zoom - 1); + var fixY = (payload.originY - view.y) * (zoom - 1); + view.x -= fixX; + view.y -= fixY; + view.updateTransform(); + // Get the new center + view.setCenter(getCenterCoord(view, point), api); + view.setZoom(zoom * previousZoom); + } + return { + center: view.getCenter(), + zoom: view.getZoom() + }; + } + + var GeoView = /** @class */function (_super) { + __extends(GeoView, _super); + function GeoView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = GeoView.type; + _this.focusBlurEnabled = true; + return _this; + } + GeoView.prototype.init = function (ecModel, api) { + this._api = api; + }; + GeoView.prototype.render = function (geoModel, ecModel, api, payload) { + this._model = geoModel; + if (!geoModel.get('show')) { + this._mapDraw && this._mapDraw.remove(); + this._mapDraw = null; + return; + } + if (!this._mapDraw) { + this._mapDraw = new MapDraw(api); + } + var mapDraw = this._mapDraw; + mapDraw.draw(geoModel, ecModel, api, this, payload); + mapDraw.group.on('click', this._handleRegionClick, this); + mapDraw.group.silent = geoModel.get('silent'); + this.group.add(mapDraw.group); + this.updateSelectStatus(geoModel, ecModel, api); + }; + GeoView.prototype._handleRegionClick = function (e) { + var eventData; + findEventDispatcher(e.target, function (current) { + return (eventData = getECData(current).eventData) != null; + }, true); + if (eventData) { + this._api.dispatchAction({ + type: 'geoToggleSelect', + geoId: this._model.id, + name: eventData.name + }); + } + }; + GeoView.prototype.updateSelectStatus = function (model, ecModel, api) { + var _this = this; + this._mapDraw.group.traverse(function (node) { + var eventData = getECData(node).eventData; + if (eventData) { + _this._model.isSelected(eventData.name) ? api.enterSelect(node) : api.leaveSelect(node); + // No need to traverse children. + return true; + } + }); + }; + GeoView.prototype.findHighDownDispatchers = function (name) { + return this._mapDraw && this._mapDraw.findHighDownDispatchers(name, this._model); + }; + GeoView.prototype.dispose = function () { + this._mapDraw && this._mapDraw.remove(); + }; + GeoView.type = 'geo'; + return GeoView; + }(ComponentView); + + function registerMap$1(mapName, geoJson, specialAreas) { + geoSourceManager.registerMap(mapName, geoJson, specialAreas); + } + function install$9(registers) { + registers.registerCoordinateSystem('geo', geoCreator); + registers.registerComponentModel(GeoModel); + registers.registerComponentView(GeoView); + registers.registerImpl('registerMap', registerMap$1); + registers.registerImpl('getMap', function (mapName) { + return geoSourceManager.getMapForUser(mapName); + }); + function makeAction(method, actionInfo) { + actionInfo.update = 'geo:updateSelectStatus'; + registers.registerAction(actionInfo, function (payload, ecModel) { + var selected = {}; + var allSelected = []; + ecModel.eachComponent({ + mainType: 'geo', + query: payload + }, function (geoModel) { + geoModel[method](payload.name); + var geo = geoModel.coordinateSystem; + each(geo.regions, function (region) { + selected[region.name] = geoModel.isSelected(region.name) || false; + }); + // Notice: there might be duplicated name in different regions. + var names = []; + each(selected, function (v, name) { + selected[name] && names.push(name); + }); + allSelected.push({ + geoIndex: geoModel.componentIndex, + // Use singular, the same naming convention as the event `selectchanged`. + name: names + }); + }); + return { + selected: selected, + allSelected: allSelected, + name: payload.name + }; + }); + } + makeAction('toggleSelected', { + type: 'geoToggleSelect', + event: 'geoselectchanged' + }); + makeAction('select', { + type: 'geoSelect', + event: 'geoselected' + }); + makeAction('unSelect', { + type: 'geoUnSelect', + event: 'geounselected' + }); + /** + * @payload + * @property {string} [componentType=series] + * @property {number} [dx] + * @property {number} [dy] + * @property {number} [zoom] + * @property {number} [originX] + * @property {number} [originY] + */ + registers.registerAction({ + type: 'geoRoam', + event: 'geoRoam', + update: 'updateTransform' + }, function (payload, ecModel, api) { + var componentType = payload.componentType || 'series'; + ecModel.eachComponent({ + mainType: componentType, + query: payload + }, function (componentModel) { + var geo = componentModel.coordinateSystem; + if (geo.type !== 'geo') { + return; + } + var res = updateCenterAndZoom(geo, payload, componentModel.get('scaleLimit'), api); + componentModel.setCenter && componentModel.setCenter(res.center); + componentModel.setZoom && componentModel.setZoom(res.zoom); + // All map series with same `map` use the same geo coordinate system + // So the center and zoom must be in sync. Include the series not selected by legend + if (componentType === 'series') { + each(componentModel.seriesGroup, function (seriesModel) { + seriesModel.setCenter(res.center); + seriesModel.setZoom(res.zoom); + }); + } + }); + }); + } + + function install$a(registers) { + use(install$9); + registers.registerChartView(MapView); + registers.registerSeriesModel(MapSeries); + registers.registerLayout(mapSymbolLayout); + registers.registerProcessor(registers.PRIORITY.PROCESSOR.STATISTIC, mapDataStatistic); + createLegacyDataSelectAction('map', registers.registerAction); + } + + /** + * Initialize all computational message for following algorithm. + */ + function init$2(inRoot) { + var root = inRoot; + root.hierNode = { + defaultAncestor: null, + ancestor: root, + prelim: 0, + modifier: 0, + change: 0, + shift: 0, + i: 0, + thread: null + }; + var nodes = [root]; + var node; + var children; + while (node = nodes.pop()) { + // jshint ignore:line + children = node.children; + if (node.isExpand && children.length) { + var n = children.length; + for (var i = n - 1; i >= 0; i--) { + var child = children[i]; + child.hierNode = { + defaultAncestor: null, + ancestor: child, + prelim: 0, + modifier: 0, + change: 0, + shift: 0, + i: i, + thread: null + }; + nodes.push(child); + } + } + } + } + /** + * The implementation of this function was originally copied from "d3.js" + * <https://github.com/d3/d3-hierarchy/blob/4c1f038f2725d6eae2e49b61d01456400694bac4/src/tree.js> + * with some modifications made for this program. + * See the license statement at the head of this file. + * + * Computes a preliminary x coordinate for node. Before that, this function is + * applied recursively to the children of node, as well as the function + * apportion(). After spacing out the children by calling executeShifts(), the + * node is placed to the midpoint of its outermost children. + */ + function firstWalk(node, separation) { + var children = node.isExpand ? node.children : []; + var siblings = node.parentNode.children; + var subtreeW = node.hierNode.i ? siblings[node.hierNode.i - 1] : null; + if (children.length) { + executeShifts(node); + var midPoint = (children[0].hierNode.prelim + children[children.length - 1].hierNode.prelim) / 2; + if (subtreeW) { + node.hierNode.prelim = subtreeW.hierNode.prelim + separation(node, subtreeW); + node.hierNode.modifier = node.hierNode.prelim - midPoint; + } else { + node.hierNode.prelim = midPoint; + } + } else if (subtreeW) { + node.hierNode.prelim = subtreeW.hierNode.prelim + separation(node, subtreeW); + } + node.parentNode.hierNode.defaultAncestor = apportion(node, subtreeW, node.parentNode.hierNode.defaultAncestor || siblings[0], separation); + } + /** + * The implementation of this function was originally copied from "d3.js" + * <https://github.com/d3/d3-hierarchy/blob/4c1f038f2725d6eae2e49b61d01456400694bac4/src/tree.js> + * with some modifications made for this program. + * See the license statement at the head of this file. + * + * Computes all real x-coordinates by summing up the modifiers recursively. + */ + function secondWalk(node) { + var nodeX = node.hierNode.prelim + node.parentNode.hierNode.modifier; + node.setLayout({ + x: nodeX + }, true); + node.hierNode.modifier += node.parentNode.hierNode.modifier; + } + function separation(cb) { + return arguments.length ? cb : defaultSeparation; + } + /** + * Transform the common coordinate to radial coordinate. + */ + function radialCoordinate(rad, r) { + rad -= Math.PI / 2; + return { + x: r * Math.cos(rad), + y: r * Math.sin(rad) + }; + } + /** + * Get the layout position of the whole view. + */ + function getViewRect$1(seriesModel, api) { + return getLayoutRect(seriesModel.getBoxLayoutParams(), { + width: api.getWidth(), + height: api.getHeight() + }); + } + /** + * All other shifts, applied to the smaller subtrees between w- and w+, are + * performed by this function. + * + * The implementation of this function was originally copied from "d3.js" + * <https://github.com/d3/d3-hierarchy/blob/4c1f038f2725d6eae2e49b61d01456400694bac4/src/tree.js> + * with some modifications made for this program. + * See the license statement at the head of this file. + */ + function executeShifts(node) { + var children = node.children; + var n = children.length; + var shift = 0; + var change = 0; + while (--n >= 0) { + var child = children[n]; + child.hierNode.prelim += shift; + child.hierNode.modifier += shift; + change += child.hierNode.change; + shift += child.hierNode.shift + change; + } + } + /** + * The implementation of this function was originally copied from "d3.js" + * <https://github.com/d3/d3-hierarchy/blob/4c1f038f2725d6eae2e49b61d01456400694bac4/src/tree.js> + * with some modifications made for this program. + * See the license statement at the head of this file. + * + * The core of the algorithm. Here, a new subtree is combined with the + * previous subtrees. Threads are used to traverse the inside and outside + * contours of the left and right subtree up to the highest common level. + * Whenever two nodes of the inside contours conflict, we compute the left + * one of the greatest uncommon ancestors using the function nextAncestor() + * and call moveSubtree() to shift the subtree and prepare the shifts of + * smaller subtrees. Finally, we add a new thread (if necessary). + */ + function apportion(subtreeV, subtreeW, ancestor, separation) { + if (subtreeW) { + var nodeOutRight = subtreeV; + var nodeInRight = subtreeV; + var nodeOutLeft = nodeInRight.parentNode.children[0]; + var nodeInLeft = subtreeW; + var sumOutRight = nodeOutRight.hierNode.modifier; + var sumInRight = nodeInRight.hierNode.modifier; + var sumOutLeft = nodeOutLeft.hierNode.modifier; + var sumInLeft = nodeInLeft.hierNode.modifier; + while (nodeInLeft = nextRight(nodeInLeft), nodeInRight = nextLeft(nodeInRight), nodeInLeft && nodeInRight) { + nodeOutRight = nextRight(nodeOutRight); + nodeOutLeft = nextLeft(nodeOutLeft); + nodeOutRight.hierNode.ancestor = subtreeV; + var shift = nodeInLeft.hierNode.prelim + sumInLeft - nodeInRight.hierNode.prelim - sumInRight + separation(nodeInLeft, nodeInRight); + if (shift > 0) { + moveSubtree(nextAncestor(nodeInLeft, subtreeV, ancestor), subtreeV, shift); + sumInRight += shift; + sumOutRight += shift; + } + sumInLeft += nodeInLeft.hierNode.modifier; + sumInRight += nodeInRight.hierNode.modifier; + sumOutRight += nodeOutRight.hierNode.modifier; + sumOutLeft += nodeOutLeft.hierNode.modifier; + } + if (nodeInLeft && !nextRight(nodeOutRight)) { + nodeOutRight.hierNode.thread = nodeInLeft; + nodeOutRight.hierNode.modifier += sumInLeft - sumOutRight; + } + if (nodeInRight && !nextLeft(nodeOutLeft)) { + nodeOutLeft.hierNode.thread = nodeInRight; + nodeOutLeft.hierNode.modifier += sumInRight - sumOutLeft; + ancestor = subtreeV; + } + } + return ancestor; + } + /** + * This function is used to traverse the right contour of a subtree. + * It returns the rightmost child of node or the thread of node. The function + * returns null if and only if node is on the highest depth of its subtree. + */ + function nextRight(node) { + var children = node.children; + return children.length && node.isExpand ? children[children.length - 1] : node.hierNode.thread; + } + /** + * This function is used to traverse the left contour of a subtree (or a subforest). + * It returns the leftmost child of node or the thread of node. The function + * returns null if and only if node is on the highest depth of its subtree. + */ + function nextLeft(node) { + var children = node.children; + return children.length && node.isExpand ? children[0] : node.hierNode.thread; + } + /** + * If nodeInLeft’s ancestor is a sibling of node, returns nodeInLeft’s ancestor. + * Otherwise, returns the specified ancestor. + */ + function nextAncestor(nodeInLeft, node, ancestor) { + return nodeInLeft.hierNode.ancestor.parentNode === node.parentNode ? nodeInLeft.hierNode.ancestor : ancestor; + } + /** + * The implementation of this function was originally copied from "d3.js" + * <https://github.com/d3/d3-hierarchy/blob/4c1f038f2725d6eae2e49b61d01456400694bac4/src/tree.js> + * with some modifications made for this program. + * See the license statement at the head of this file. + * + * Shifts the current subtree rooted at wr. + * This is done by increasing prelim(w+) and modifier(w+) by shift. + */ + function moveSubtree(wl, wr, shift) { + var change = shift / (wr.hierNode.i - wl.hierNode.i); + wr.hierNode.change -= change; + wr.hierNode.shift += shift; + wr.hierNode.modifier += shift; + wr.hierNode.prelim += shift; + wl.hierNode.change += change; + } + /** + * The implementation of this function was originally copied from "d3.js" + * <https://github.com/d3/d3-hierarchy/blob/4c1f038f2725d6eae2e49b61d01456400694bac4/src/tree.js> + * with some modifications made for this program. + * See the license statement at the head of this file. + */ + function defaultSeparation(node1, node2) { + return node1.parentNode === node2.parentNode ? 1 : 2; + } + + var TreeEdgeShape = /** @class */function () { + function TreeEdgeShape() { + this.parentPoint = []; + this.childPoints = []; + } + return TreeEdgeShape; + }(); + var TreePath = /** @class */function (_super) { + __extends(TreePath, _super); + function TreePath(opts) { + return _super.call(this, opts) || this; + } + TreePath.prototype.getDefaultStyle = function () { + return { + stroke: '#000', + fill: null + }; + }; + TreePath.prototype.getDefaultShape = function () { + return new TreeEdgeShape(); + }; + TreePath.prototype.buildPath = function (ctx, shape) { + var childPoints = shape.childPoints; + var childLen = childPoints.length; + var parentPoint = shape.parentPoint; + var firstChildPos = childPoints[0]; + var lastChildPos = childPoints[childLen - 1]; + if (childLen === 1) { + ctx.moveTo(parentPoint[0], parentPoint[1]); + ctx.lineTo(firstChildPos[0], firstChildPos[1]); + return; + } + var orient = shape.orient; + var forkDim = orient === 'TB' || orient === 'BT' ? 0 : 1; + var otherDim = 1 - forkDim; + var forkPosition = parsePercent$1(shape.forkPosition, 1); + var tmpPoint = []; + tmpPoint[forkDim] = parentPoint[forkDim]; + tmpPoint[otherDim] = parentPoint[otherDim] + (lastChildPos[otherDim] - parentPoint[otherDim]) * forkPosition; + ctx.moveTo(parentPoint[0], parentPoint[1]); + ctx.lineTo(tmpPoint[0], tmpPoint[1]); + ctx.moveTo(firstChildPos[0], firstChildPos[1]); + tmpPoint[forkDim] = firstChildPos[forkDim]; + ctx.lineTo(tmpPoint[0], tmpPoint[1]); + tmpPoint[forkDim] = lastChildPos[forkDim]; + ctx.lineTo(tmpPoint[0], tmpPoint[1]); + ctx.lineTo(lastChildPos[0], lastChildPos[1]); + for (var i = 1; i < childLen - 1; i++) { + var point = childPoints[i]; + ctx.moveTo(point[0], point[1]); + tmpPoint[forkDim] = point[forkDim]; + ctx.lineTo(tmpPoint[0], tmpPoint[1]); + } + }; + return TreePath; + }(Path); + var TreeView = /** @class */function (_super) { + __extends(TreeView, _super); + function TreeView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = TreeView.type; + _this._mainGroup = new Group(); + return _this; + } + TreeView.prototype.init = function (ecModel, api) { + this._controller = new RoamController(api.getZr()); + this._controllerHost = { + target: this.group + }; + this.group.add(this._mainGroup); + }; + TreeView.prototype.render = function (seriesModel, ecModel, api) { + var data = seriesModel.getData(); + var layoutInfo = seriesModel.layoutInfo; + var group = this._mainGroup; + var layout = seriesModel.get('layout'); + if (layout === 'radial') { + group.x = layoutInfo.x + layoutInfo.width / 2; + group.y = layoutInfo.y + layoutInfo.height / 2; + } else { + group.x = layoutInfo.x; + group.y = layoutInfo.y; + } + this._updateViewCoordSys(seriesModel, api); + this._updateController(seriesModel, ecModel, api); + var oldData = this._data; + data.diff(oldData).add(function (newIdx) { + if (symbolNeedsDraw$1(data, newIdx)) { + // Create node and edge + updateNode(data, newIdx, null, group, seriesModel); + } + }).update(function (newIdx, oldIdx) { + var symbolEl = oldData.getItemGraphicEl(oldIdx); + if (!symbolNeedsDraw$1(data, newIdx)) { + symbolEl && removeNode(oldData, oldIdx, symbolEl, group, seriesModel); + return; + } + // Update node and edge + updateNode(data, newIdx, symbolEl, group, seriesModel); + }).remove(function (oldIdx) { + var symbolEl = oldData.getItemGraphicEl(oldIdx); + // When remove a collapsed node of subtree, since the collapsed + // node haven't been initialized with a symbol element, + // you can't found it's symbol element through index. + // so if we want to remove the symbol element we should insure + // that the symbol element is not null. + if (symbolEl) { + removeNode(oldData, oldIdx, symbolEl, group, seriesModel); + } + }).execute(); + this._nodeScaleRatio = seriesModel.get('nodeScaleRatio'); + this._updateNodeAndLinkScale(seriesModel); + if (seriesModel.get('expandAndCollapse') === true) { + data.eachItemGraphicEl(function (el, dataIndex) { + el.off('click').on('click', function () { + api.dispatchAction({ + type: 'treeExpandAndCollapse', + seriesId: seriesModel.id, + dataIndex: dataIndex + }); + }); + }); + } + this._data = data; + }; + TreeView.prototype._updateViewCoordSys = function (seriesModel, api) { + var data = seriesModel.getData(); + var points = []; + data.each(function (idx) { + var layout = data.getItemLayout(idx); + if (layout && !isNaN(layout.x) && !isNaN(layout.y)) { + points.push([+layout.x, +layout.y]); + } + }); + var min = []; + var max = []; + fromPoints(points, min, max); + // If don't Store min max when collapse the root node after roam, + // the root node will disappear. + var oldMin = this._min; + var oldMax = this._max; + // If width or height is 0 + if (max[0] - min[0] === 0) { + min[0] = oldMin ? oldMin[0] : min[0] - 1; + max[0] = oldMax ? oldMax[0] : max[0] + 1; + } + if (max[1] - min[1] === 0) { + min[1] = oldMin ? oldMin[1] : min[1] - 1; + max[1] = oldMax ? oldMax[1] : max[1] + 1; + } + var viewCoordSys = seriesModel.coordinateSystem = new View(); + viewCoordSys.zoomLimit = seriesModel.get('scaleLimit'); + viewCoordSys.setBoundingRect(min[0], min[1], max[0] - min[0], max[1] - min[1]); + viewCoordSys.setCenter(seriesModel.get('center'), api); + viewCoordSys.setZoom(seriesModel.get('zoom')); + // Here we use viewCoordSys just for computing the 'position' and 'scale' of the group + this.group.attr({ + x: viewCoordSys.x, + y: viewCoordSys.y, + scaleX: viewCoordSys.scaleX, + scaleY: viewCoordSys.scaleY + }); + this._min = min; + this._max = max; + }; + TreeView.prototype._updateController = function (seriesModel, ecModel, api) { + var _this = this; + var controller = this._controller; + var controllerHost = this._controllerHost; + var group = this.group; + controller.setPointerChecker(function (e, x, y) { + var rect = group.getBoundingRect(); + rect.applyTransform(group.transform); + return rect.contain(x, y) && !onIrrelevantElement(e, api, seriesModel); + }); + controller.enable(seriesModel.get('roam')); + controllerHost.zoomLimit = seriesModel.get('scaleLimit'); + controllerHost.zoom = seriesModel.coordinateSystem.getZoom(); + controller.off('pan').off('zoom').on('pan', function (e) { + updateViewOnPan(controllerHost, e.dx, e.dy); + api.dispatchAction({ + seriesId: seriesModel.id, + type: 'treeRoam', + dx: e.dx, + dy: e.dy + }); + }).on('zoom', function (e) { + updateViewOnZoom(controllerHost, e.scale, e.originX, e.originY); + api.dispatchAction({ + seriesId: seriesModel.id, + type: 'treeRoam', + zoom: e.scale, + originX: e.originX, + originY: e.originY + }); + _this._updateNodeAndLinkScale(seriesModel); + // Only update label layout on zoom + api.updateLabelLayout(); + }); + }; + TreeView.prototype._updateNodeAndLinkScale = function (seriesModel) { + var data = seriesModel.getData(); + var nodeScale = this._getNodeGlobalScale(seriesModel); + data.eachItemGraphicEl(function (el, idx) { + el.setSymbolScale(nodeScale); + }); + }; + TreeView.prototype._getNodeGlobalScale = function (seriesModel) { + var coordSys = seriesModel.coordinateSystem; + if (coordSys.type !== 'view') { + return 1; + } + var nodeScaleRatio = this._nodeScaleRatio; + var groupZoom = coordSys.scaleX || 1; + // Scale node when zoom changes + var roamZoom = coordSys.getZoom(); + var nodeScale = (roamZoom - 1) * nodeScaleRatio + 1; + return nodeScale / groupZoom; + }; + TreeView.prototype.dispose = function () { + this._controller && this._controller.dispose(); + this._controllerHost = null; + }; + TreeView.prototype.remove = function () { + this._mainGroup.removeAll(); + this._data = null; + }; + TreeView.type = 'tree'; + return TreeView; + }(ChartView); + function symbolNeedsDraw$1(data, dataIndex) { + var layout = data.getItemLayout(dataIndex); + return layout && !isNaN(layout.x) && !isNaN(layout.y); + } + function updateNode(data, dataIndex, symbolEl, group, seriesModel) { + var isInit = !symbolEl; + var node = data.tree.getNodeByDataIndex(dataIndex); + var itemModel = node.getModel(); + var visualColor = node.getVisual('style').fill; + var symbolInnerColor = node.isExpand === false && node.children.length !== 0 ? visualColor : '#fff'; + var virtualRoot = data.tree.root; + var source = node.parentNode === virtualRoot ? node : node.parentNode || node; + var sourceSymbolEl = data.getItemGraphicEl(source.dataIndex); + var sourceLayout = source.getLayout(); + var sourceOldLayout = sourceSymbolEl ? { + x: sourceSymbolEl.__oldX, + y: sourceSymbolEl.__oldY, + rawX: sourceSymbolEl.__radialOldRawX, + rawY: sourceSymbolEl.__radialOldRawY + } : sourceLayout; + var targetLayout = node.getLayout(); + if (isInit) { + symbolEl = new Symbol(data, dataIndex, null, { + symbolInnerColor: symbolInnerColor, + useNameLabel: true + }); + symbolEl.x = sourceOldLayout.x; + symbolEl.y = sourceOldLayout.y; + } else { + symbolEl.updateData(data, dataIndex, null, { + symbolInnerColor: symbolInnerColor, + useNameLabel: true + }); + } + symbolEl.__radialOldRawX = symbolEl.__radialRawX; + symbolEl.__radialOldRawY = symbolEl.__radialRawY; + symbolEl.__radialRawX = targetLayout.rawX; + symbolEl.__radialRawY = targetLayout.rawY; + group.add(symbolEl); + data.setItemGraphicEl(dataIndex, symbolEl); + symbolEl.__oldX = symbolEl.x; + symbolEl.__oldY = symbolEl.y; + updateProps(symbolEl, { + x: targetLayout.x, + y: targetLayout.y + }, seriesModel); + var symbolPath = symbolEl.getSymbolPath(); + if (seriesModel.get('layout') === 'radial') { + var realRoot = virtualRoot.children[0]; + var rootLayout = realRoot.getLayout(); + var length_1 = realRoot.children.length; + var rad = void 0; + var isLeft = void 0; + if (targetLayout.x === rootLayout.x && node.isExpand === true && realRoot.children.length) { + var center = { + x: (realRoot.children[0].getLayout().x + realRoot.children[length_1 - 1].getLayout().x) / 2, + y: (realRoot.children[0].getLayout().y + realRoot.children[length_1 - 1].getLayout().y) / 2 + }; + rad = Math.atan2(center.y - rootLayout.y, center.x - rootLayout.x); + if (rad < 0) { + rad = Math.PI * 2 + rad; + } + isLeft = center.x < rootLayout.x; + if (isLeft) { + rad = rad - Math.PI; + } + } else { + rad = Math.atan2(targetLayout.y - rootLayout.y, targetLayout.x - rootLayout.x); + if (rad < 0) { + rad = Math.PI * 2 + rad; + } + if (node.children.length === 0 || node.children.length !== 0 && node.isExpand === false) { + isLeft = targetLayout.x < rootLayout.x; + if (isLeft) { + rad = rad - Math.PI; + } + } else { + isLeft = targetLayout.x > rootLayout.x; + if (!isLeft) { + rad = rad - Math.PI; + } + } + } + var textPosition = isLeft ? 'left' : 'right'; + var normalLabelModel = itemModel.getModel('label'); + var rotate = normalLabelModel.get('rotate'); + var labelRotateRadian = rotate * (Math.PI / 180); + var textContent = symbolPath.getTextContent(); + if (textContent) { + symbolPath.setTextConfig({ + position: normalLabelModel.get('position') || textPosition, + rotation: rotate == null ? -rad : labelRotateRadian, + origin: 'center' + }); + textContent.setStyle('verticalAlign', 'middle'); + } + } + // Handle status + var focus = itemModel.get(['emphasis', 'focus']); + var focusDataIndices = focus === 'relative' ? concatArray(node.getAncestorsIndices(), node.getDescendantIndices()) : focus === 'ancestor' ? node.getAncestorsIndices() : focus === 'descendant' ? node.getDescendantIndices() : null; + if (focusDataIndices) { + // Modify the focus to data indices. + getECData(symbolEl).focus = focusDataIndices; + } + drawEdge(seriesModel, node, virtualRoot, symbolEl, sourceOldLayout, sourceLayout, targetLayout, group); + if (symbolEl.__edge) { + symbolEl.onHoverStateChange = function (toState) { + if (toState !== 'blur') { + // NOTE: Ensure the parent elements will been blurred firstly. + // According to the return of getAncestorsIndices and getDescendantIndices + // TODO: A bit tricky. + var parentEl = node.parentNode && data.getItemGraphicEl(node.parentNode.dataIndex); + if (!(parentEl && parentEl.hoverState === HOVER_STATE_BLUR)) { + setStatesFlag(symbolEl.__edge, toState); + } + } + }; + } + } + function drawEdge(seriesModel, node, virtualRoot, symbolEl, sourceOldLayout, sourceLayout, targetLayout, group) { + var itemModel = node.getModel(); + var edgeShape = seriesModel.get('edgeShape'); + var layout = seriesModel.get('layout'); + var orient = seriesModel.getOrient(); + var curvature = seriesModel.get(['lineStyle', 'curveness']); + var edgeForkPosition = seriesModel.get('edgeForkPosition'); + var lineStyle = itemModel.getModel('lineStyle').getLineStyle(); + var edge = symbolEl.__edge; + // curve edge from node -> parent + // polyline edge from node -> children + if (edgeShape === 'curve') { + if (node.parentNode && node.parentNode !== virtualRoot) { + if (!edge) { + edge = symbolEl.__edge = new BezierCurve({ + shape: getEdgeShape(layout, orient, curvature, sourceOldLayout, sourceOldLayout) + }); + } + updateProps(edge, { + shape: getEdgeShape(layout, orient, curvature, sourceLayout, targetLayout) + }, seriesModel); + } + } else if (edgeShape === 'polyline') { + if (layout === 'orthogonal') { + if (node !== virtualRoot && node.children && node.children.length !== 0 && node.isExpand === true) { + var children = node.children; + var childPoints = []; + for (var i = 0; i < children.length; i++) { + var childLayout = children[i].getLayout(); + childPoints.push([childLayout.x, childLayout.y]); + } + if (!edge) { + edge = symbolEl.__edge = new TreePath({ + shape: { + parentPoint: [targetLayout.x, targetLayout.y], + childPoints: [[targetLayout.x, targetLayout.y]], + orient: orient, + forkPosition: edgeForkPosition + } + }); + } + updateProps(edge, { + shape: { + parentPoint: [targetLayout.x, targetLayout.y], + childPoints: childPoints + } + }, seriesModel); + } + } else { + if ("development" !== 'production') { + throw new Error('The polyline edgeShape can only be used in orthogonal layout'); + } + } + } + // show all edge when edgeShape is 'curve', filter node `isExpand` is false when edgeShape is 'polyline' + if (edge && !(edgeShape === 'polyline' && !node.isExpand)) { + edge.useStyle(defaults({ + strokeNoScale: true, + fill: null + }, lineStyle)); + setStatesStylesFromModel(edge, itemModel, 'lineStyle'); + setDefaultStateProxy(edge); + group.add(edge); + } + } + function removeNodeEdge(node, data, group, seriesModel, removeAnimationOpt) { + var virtualRoot = data.tree.root; + var _a = getSourceNode(virtualRoot, node), + source = _a.source, + sourceLayout = _a.sourceLayout; + var symbolEl = data.getItemGraphicEl(node.dataIndex); + if (!symbolEl) { + return; + } + var sourceSymbolEl = data.getItemGraphicEl(source.dataIndex); + var sourceEdge = sourceSymbolEl.__edge; + // 1. when expand the sub tree, delete the children node should delete the edge of + // the source at the same time. because the polyline edge shape is only owned by the source. + // 2.when the node is the only children of the source, delete the node should delete the edge of + // the source at the same time. the same reason as above. + var edge = symbolEl.__edge || (source.isExpand === false || source.children.length === 1 ? sourceEdge : undefined); + var edgeShape = seriesModel.get('edgeShape'); + var layoutOpt = seriesModel.get('layout'); + var orient = seriesModel.get('orient'); + var curvature = seriesModel.get(['lineStyle', 'curveness']); + if (edge) { + if (edgeShape === 'curve') { + removeElement(edge, { + shape: getEdgeShape(layoutOpt, orient, curvature, sourceLayout, sourceLayout), + style: { + opacity: 0 + } + }, seriesModel, { + cb: function () { + group.remove(edge); + }, + removeOpt: removeAnimationOpt + }); + } else if (edgeShape === 'polyline' && seriesModel.get('layout') === 'orthogonal') { + removeElement(edge, { + shape: { + parentPoint: [sourceLayout.x, sourceLayout.y], + childPoints: [[sourceLayout.x, sourceLayout.y]] + }, + style: { + opacity: 0 + } + }, seriesModel, { + cb: function () { + group.remove(edge); + }, + removeOpt: removeAnimationOpt + }); + } + } + } + function getSourceNode(virtualRoot, node) { + var source = node.parentNode === virtualRoot ? node : node.parentNode || node; + var sourceLayout; + while (sourceLayout = source.getLayout(), sourceLayout == null) { + source = source.parentNode === virtualRoot ? source : source.parentNode || source; + } + return { + source: source, + sourceLayout: sourceLayout + }; + } + function removeNode(data, dataIndex, symbolEl, group, seriesModel) { + var node = data.tree.getNodeByDataIndex(dataIndex); + var virtualRoot = data.tree.root; + var sourceLayout = getSourceNode(virtualRoot, node).sourceLayout; + // Use same duration and easing with update to have more consistent animation. + var removeAnimationOpt = { + duration: seriesModel.get('animationDurationUpdate'), + easing: seriesModel.get('animationEasingUpdate') + }; + removeElement(symbolEl, { + x: sourceLayout.x + 1, + y: sourceLayout.y + 1 + }, seriesModel, { + cb: function () { + group.remove(symbolEl); + data.setItemGraphicEl(dataIndex, null); + }, + removeOpt: removeAnimationOpt + }); + symbolEl.fadeOut(null, data.hostModel, { + fadeLabel: true, + animation: removeAnimationOpt + }); + // remove edge as parent node + node.children.forEach(function (childNode) { + removeNodeEdge(childNode, data, group, seriesModel, removeAnimationOpt); + }); + // remove edge as child node + removeNodeEdge(node, data, group, seriesModel, removeAnimationOpt); + } + function getEdgeShape(layoutOpt, orient, curvature, sourceLayout, targetLayout) { + var cpx1; + var cpy1; + var cpx2; + var cpy2; + var x1; + var x2; + var y1; + var y2; + if (layoutOpt === 'radial') { + x1 = sourceLayout.rawX; + y1 = sourceLayout.rawY; + x2 = targetLayout.rawX; + y2 = targetLayout.rawY; + var radialCoor1 = radialCoordinate(x1, y1); + var radialCoor2 = radialCoordinate(x1, y1 + (y2 - y1) * curvature); + var radialCoor3 = radialCoordinate(x2, y2 + (y1 - y2) * curvature); + var radialCoor4 = radialCoordinate(x2, y2); + return { + x1: radialCoor1.x || 0, + y1: radialCoor1.y || 0, + x2: radialCoor4.x || 0, + y2: radialCoor4.y || 0, + cpx1: radialCoor2.x || 0, + cpy1: radialCoor2.y || 0, + cpx2: radialCoor3.x || 0, + cpy2: radialCoor3.y || 0 + }; + } else { + x1 = sourceLayout.x; + y1 = sourceLayout.y; + x2 = targetLayout.x; + y2 = targetLayout.y; + if (orient === 'LR' || orient === 'RL') { + cpx1 = x1 + (x2 - x1) * curvature; + cpy1 = y1; + cpx2 = x2 + (x1 - x2) * curvature; + cpy2 = y2; + } + if (orient === 'TB' || orient === 'BT') { + cpx1 = x1; + cpy1 = y1 + (y2 - y1) * curvature; + cpx2 = x2; + cpy2 = y2 + (y1 - y2) * curvature; + } + } + return { + x1: x1, + y1: y1, + x2: x2, + y2: y2, + cpx1: cpx1, + cpy1: cpy1, + cpx2: cpx2, + cpy2: cpy2 + }; + } + + var inner$7 = makeInner(); + function linkSeriesData(opt) { + var mainData = opt.mainData; + var datas = opt.datas; + if (!datas) { + datas = { + main: mainData + }; + opt.datasAttr = { + main: 'data' + }; + } + opt.datas = opt.mainData = null; + linkAll(mainData, datas, opt); + // Porxy data original methods. + each(datas, function (data) { + each(mainData.TRANSFERABLE_METHODS, function (methodName) { + data.wrapMethod(methodName, curry(transferInjection, opt)); + }); + }); + // Beyond transfer, additional features should be added to `cloneShallow`. + mainData.wrapMethod('cloneShallow', curry(cloneShallowInjection, opt)); + // Only mainData trigger change, because struct.update may trigger + // another changable methods, which may bring about dead lock. + each(mainData.CHANGABLE_METHODS, function (methodName) { + mainData.wrapMethod(methodName, curry(changeInjection, opt)); + }); + // Make sure datas contains mainData. + assert(datas[mainData.dataType] === mainData); + } + function transferInjection(opt, res) { + if (isMainData(this)) { + // Transfer datas to new main data. + var datas = extend({}, inner$7(this).datas); + datas[this.dataType] = res; + linkAll(res, datas, opt); + } else { + // Modify the reference in main data to point newData. + linkSingle(res, this.dataType, inner$7(this).mainData, opt); + } + return res; + } + function changeInjection(opt, res) { + opt.struct && opt.struct.update(); + return res; + } + function cloneShallowInjection(opt, res) { + // cloneShallow, which brings about some fragilities, may be inappropriate + // to be exposed as an API. So for implementation simplicity we can make + // the restriction that cloneShallow of not-mainData should not be invoked + // outside, but only be invoked here. + each(inner$7(res).datas, function (data, dataType) { + data !== res && linkSingle(data.cloneShallow(), dataType, res, opt); + }); + return res; + } + /** + * Supplement method to List. + * + * @public + * @param [dataType] If not specified, return mainData. + */ + function getLinkedData(dataType) { + var mainData = inner$7(this).mainData; + return dataType == null || mainData == null ? mainData : inner$7(mainData).datas[dataType]; + } + /** + * Get list of all linked data + */ + function getLinkedDataAll() { + var mainData = inner$7(this).mainData; + return mainData == null ? [{ + data: mainData + }] : map(keys(inner$7(mainData).datas), function (type) { + return { + type: type, + data: inner$7(mainData).datas[type] + }; + }); + } + function isMainData(data) { + return inner$7(data).mainData === data; + } + function linkAll(mainData, datas, opt) { + inner$7(mainData).datas = {}; + each(datas, function (data, dataType) { + linkSingle(data, dataType, mainData, opt); + }); + } + function linkSingle(data, dataType, mainData, opt) { + inner$7(mainData).datas[dataType] = data; + inner$7(data).mainData = mainData; + data.dataType = dataType; + if (opt.struct) { + data[opt.structAttr] = opt.struct; + opt.struct[opt.datasAttr[dataType]] = data; + } + // Supplement method. + data.getLinkedData = getLinkedData; + data.getLinkedDataAll = getLinkedDataAll; + } + + var TreeNode = /** @class */function () { + function TreeNode(name, hostTree) { + this.depth = 0; + this.height = 0; + /** + * Reference to list item. + * Do not persistent dataIndex outside, + * besause it may be changed by list. + * If dataIndex -1, + * this node is logical deleted (filtered) in list. + */ + this.dataIndex = -1; + this.children = []; + this.viewChildren = []; + this.isExpand = false; + this.name = name || ''; + this.hostTree = hostTree; + } + /** + * The node is removed. + */ + TreeNode.prototype.isRemoved = function () { + return this.dataIndex < 0; + }; + TreeNode.prototype.eachNode = function (options, cb, context) { + if (isFunction(options)) { + context = cb; + cb = options; + options = null; + } + options = options || {}; + if (isString(options)) { + options = { + order: options + }; + } + var order = options.order || 'preorder'; + var children = this[options.attr || 'children']; + var suppressVisitSub; + order === 'preorder' && (suppressVisitSub = cb.call(context, this)); + for (var i = 0; !suppressVisitSub && i < children.length; i++) { + children[i].eachNode(options, cb, context); + } + order === 'postorder' && cb.call(context, this); + }; + /** + * Update depth and height of this subtree. + */ + TreeNode.prototype.updateDepthAndHeight = function (depth) { + var height = 0; + this.depth = depth; + for (var i = 0; i < this.children.length; i++) { + var child = this.children[i]; + child.updateDepthAndHeight(depth + 1); + if (child.height > height) { + height = child.height; + } + } + this.height = height + 1; + }; + TreeNode.prototype.getNodeById = function (id) { + if (this.getId() === id) { + return this; + } + for (var i = 0, children = this.children, len = children.length; i < len; i++) { + var res = children[i].getNodeById(id); + if (res) { + return res; + } + } + }; + TreeNode.prototype.contains = function (node) { + if (node === this) { + return true; + } + for (var i = 0, children = this.children, len = children.length; i < len; i++) { + var res = children[i].contains(node); + if (res) { + return res; + } + } + }; + /** + * @param includeSelf Default false. + * @return order: [root, child, grandchild, ...] + */ + TreeNode.prototype.getAncestors = function (includeSelf) { + var ancestors = []; + var node = includeSelf ? this : this.parentNode; + while (node) { + ancestors.push(node); + node = node.parentNode; + } + ancestors.reverse(); + return ancestors; + }; + TreeNode.prototype.getAncestorsIndices = function () { + var indices = []; + var currNode = this; + while (currNode) { + indices.push(currNode.dataIndex); + currNode = currNode.parentNode; + } + indices.reverse(); + return indices; + }; + TreeNode.prototype.getDescendantIndices = function () { + var indices = []; + this.eachNode(function (childNode) { + indices.push(childNode.dataIndex); + }); + return indices; + }; + TreeNode.prototype.getValue = function (dimension) { + var data = this.hostTree.data; + return data.getStore().get(data.getDimensionIndex(dimension || 'value'), this.dataIndex); + }; + TreeNode.prototype.setLayout = function (layout, merge) { + this.dataIndex >= 0 && this.hostTree.data.setItemLayout(this.dataIndex, layout, merge); + }; + /** + * @return {Object} layout + */ + TreeNode.prototype.getLayout = function () { + return this.hostTree.data.getItemLayout(this.dataIndex); + }; + // @depcrecated + // getModel<T = unknown, S extends keyof T = keyof T>(path: S): Model<T[S]> + // eslint-disable-next-line @typescript-eslint/no-unused-vars + TreeNode.prototype.getModel = function (path) { + if (this.dataIndex < 0) { + return; + } + var hostTree = this.hostTree; + var itemModel = hostTree.data.getItemModel(this.dataIndex); + return itemModel.getModel(path); + }; + // TODO: TYPE More specific model + TreeNode.prototype.getLevelModel = function () { + return (this.hostTree.levelModels || [])[this.depth]; + }; + TreeNode.prototype.setVisual = function (key, value) { + this.dataIndex >= 0 && this.hostTree.data.setItemVisual(this.dataIndex, key, value); + }; + /** + * Get item visual + * FIXME: make return type better + */ + TreeNode.prototype.getVisual = function (key) { + return this.hostTree.data.getItemVisual(this.dataIndex, key); + }; + TreeNode.prototype.getRawIndex = function () { + return this.hostTree.data.getRawIndex(this.dataIndex); + }; + TreeNode.prototype.getId = function () { + return this.hostTree.data.getId(this.dataIndex); + }; + /** + * index in parent's children + */ + TreeNode.prototype.getChildIndex = function () { + if (this.parentNode) { + var children = this.parentNode.children; + for (var i = 0; i < children.length; ++i) { + if (children[i] === this) { + return i; + } + } + return -1; + } + return -1; + }; + /** + * if this is an ancestor of another node + * + * @param node another node + * @return if is ancestor + */ + TreeNode.prototype.isAncestorOf = function (node) { + var parent = node.parentNode; + while (parent) { + if (parent === this) { + return true; + } + parent = parent.parentNode; + } + return false; + }; + /** + * if this is an descendant of another node + * + * @param node another node + * @return if is descendant + */ + TreeNode.prototype.isDescendantOf = function (node) { + return node !== this && node.isAncestorOf(this); + }; + return TreeNode; + }(); + var Tree = /** @class */function () { + function Tree(hostModel) { + this.type = 'tree'; + this._nodes = []; + this.hostModel = hostModel; + } + Tree.prototype.eachNode = function (options, cb, context) { + this.root.eachNode(options, cb, context); + }; + Tree.prototype.getNodeByDataIndex = function (dataIndex) { + var rawIndex = this.data.getRawIndex(dataIndex); + return this._nodes[rawIndex]; + }; + Tree.prototype.getNodeById = function (name) { + return this.root.getNodeById(name); + }; + /** + * Update item available by list, + * when list has been performed options like 'filterSelf' or 'map'. + */ + Tree.prototype.update = function () { + var data = this.data; + var nodes = this._nodes; + for (var i = 0, len = nodes.length; i < len; i++) { + nodes[i].dataIndex = -1; + } + for (var i = 0, len = data.count(); i < len; i++) { + nodes[data.getRawIndex(i)].dataIndex = i; + } + }; + /** + * Clear all layouts + */ + Tree.prototype.clearLayouts = function () { + this.data.clearItemLayouts(); + }; + /** + * data node format: + * { + * name: ... + * value: ... + * children: [ + * { + * name: ... + * value: ... + * children: ... + * }, + * ... + * ] + * } + */ + Tree.createTree = function (dataRoot, hostModel, beforeLink) { + var tree = new Tree(hostModel); + var listData = []; + var dimMax = 1; + buildHierarchy(dataRoot); + function buildHierarchy(dataNode, parentNode) { + var value = dataNode.value; + dimMax = Math.max(dimMax, isArray(value) ? value.length : 1); + listData.push(dataNode); + var node = new TreeNode(convertOptionIdName(dataNode.name, ''), tree); + parentNode ? addChild(node, parentNode) : tree.root = node; + tree._nodes.push(node); + var children = dataNode.children; + if (children) { + for (var i = 0; i < children.length; i++) { + buildHierarchy(children[i], node); + } + } + } + tree.root.updateDepthAndHeight(0); + var dimensions = prepareSeriesDataSchema(listData, { + coordDimensions: ['value'], + dimensionsCount: dimMax + }).dimensions; + var list = new SeriesData(dimensions, hostModel); + list.initData(listData); + beforeLink && beforeLink(list); + linkSeriesData({ + mainData: list, + struct: tree, + structAttr: 'tree' + }); + tree.update(); + return tree; + }; + return Tree; + }(); + /** + * It is needed to consider the mess of 'list', 'hostModel' when creating a TreeNote, + * so this function is not ready and not necessary to be public. + */ + function addChild(child, node) { + var children = node.children; + if (child.parentNode === node) { + return; + } + children.push(child); + child.parentNode = node; + } + + function retrieveTargetInfo(payload, validPayloadTypes, seriesModel) { + if (payload && indexOf(validPayloadTypes, payload.type) >= 0) { + var root = seriesModel.getData().tree.root; + var targetNode = payload.targetNode; + if (isString(targetNode)) { + targetNode = root.getNodeById(targetNode); + } + if (targetNode && root.contains(targetNode)) { + return { + node: targetNode + }; + } + var targetNodeId = payload.targetNodeId; + if (targetNodeId != null && (targetNode = root.getNodeById(targetNodeId))) { + return { + node: targetNode + }; + } + } + } + // Not includes the given node at the last item. + function getPathToRoot(node) { + var path = []; + while (node) { + node = node.parentNode; + node && path.push(node); + } + return path.reverse(); + } + function aboveViewRoot(viewRoot, node) { + var viewPath = getPathToRoot(viewRoot); + return indexOf(viewPath, node) >= 0; + } + // From root to the input node (the input node will be included). + function wrapTreePathInfo(node, seriesModel) { + var treePathInfo = []; + while (node) { + var nodeDataIndex = node.dataIndex; + treePathInfo.push({ + name: node.name, + dataIndex: nodeDataIndex, + value: seriesModel.getRawValue(nodeDataIndex) + }); + node = node.parentNode; + } + treePathInfo.reverse(); + return treePathInfo; + } + + var TreeSeriesModel = /** @class */function (_super) { + __extends(TreeSeriesModel, _super); + function TreeSeriesModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.hasSymbolVisual = true; + // Do it self. + _this.ignoreStyleOnData = true; + return _this; + } + /** + * Init a tree data structure from data in option series + */ + TreeSeriesModel.prototype.getInitialData = function (option) { + // create a virtual root + var root = { + name: option.name, + children: option.data + }; + var leaves = option.leaves || {}; + var leavesModel = new Model(leaves, this, this.ecModel); + var tree = Tree.createTree(root, this, beforeLink); + function beforeLink(nodeData) { + nodeData.wrapMethod('getItemModel', function (model, idx) { + var node = tree.getNodeByDataIndex(idx); + if (!(node && node.children.length && node.isExpand)) { + model.parentModel = leavesModel; + } + return model; + }); + } + var treeDepth = 0; + tree.eachNode('preorder', function (node) { + if (node.depth > treeDepth) { + treeDepth = node.depth; + } + }); + var expandAndCollapse = option.expandAndCollapse; + var expandTreeDepth = expandAndCollapse && option.initialTreeDepth >= 0 ? option.initialTreeDepth : treeDepth; + tree.root.eachNode('preorder', function (node) { + var item = node.hostTree.data.getRawDataItem(node.dataIndex); + // Add item.collapsed != null, because users can collapse node original in the series.data. + node.isExpand = item && item.collapsed != null ? !item.collapsed : node.depth <= expandTreeDepth; + }); + return tree.data; + }; + /** + * Make the configuration 'orient' backward compatibly, with 'horizontal = LR', 'vertical = TB'. + * @returns {string} orient + */ + TreeSeriesModel.prototype.getOrient = function () { + var orient = this.get('orient'); + if (orient === 'horizontal') { + orient = 'LR'; + } else if (orient === 'vertical') { + orient = 'TB'; + } + return orient; + }; + TreeSeriesModel.prototype.setZoom = function (zoom) { + this.option.zoom = zoom; + }; + TreeSeriesModel.prototype.setCenter = function (center) { + this.option.center = center; + }; + TreeSeriesModel.prototype.formatTooltip = function (dataIndex, multipleSeries, dataType) { + var tree = this.getData().tree; + var realRoot = tree.root.children[0]; + var node = tree.getNodeByDataIndex(dataIndex); + var value = node.getValue(); + var name = node.name; + while (node && node !== realRoot) { + name = node.parentNode.name + '.' + name; + node = node.parentNode; + } + return createTooltipMarkup('nameValue', { + name: name, + value: value, + noValue: isNaN(value) || value == null + }); + }; + // Add tree path to tooltip param + TreeSeriesModel.prototype.getDataParams = function (dataIndex) { + var params = _super.prototype.getDataParams.apply(this, arguments); + var node = this.getData().tree.getNodeByDataIndex(dataIndex); + params.treeAncestors = wrapTreePathInfo(node, this); + params.collapsed = !node.isExpand; + return params; + }; + TreeSeriesModel.type = 'series.tree'; + // can support the position parameters 'left', 'top','right','bottom', 'width', + // 'height' in the setOption() with 'merge' mode normal. + TreeSeriesModel.layoutMode = 'box'; + TreeSeriesModel.defaultOption = { + // zlevel: 0, + z: 2, + coordinateSystem: 'view', + // the position of the whole view + left: '12%', + top: '12%', + right: '12%', + bottom: '12%', + // the layout of the tree, two value can be selected, 'orthogonal' or 'radial' + layout: 'orthogonal', + // value can be 'polyline' + edgeShape: 'curve', + edgeForkPosition: '50%', + // true | false | 'move' | 'scale', see module:component/helper/RoamController. + roam: false, + // Symbol size scale ratio in roam + nodeScaleRatio: 0.4, + // Default on center of graph + center: null, + zoom: 1, + orient: 'LR', + symbol: 'emptyCircle', + symbolSize: 7, + expandAndCollapse: true, + initialTreeDepth: 2, + lineStyle: { + color: '#ccc', + width: 1.5, + curveness: 0.5 + }, + itemStyle: { + color: 'lightsteelblue', + // borderColor: '#c23531', + borderWidth: 1.5 + }, + label: { + show: true + }, + animationEasing: 'linear', + animationDuration: 700, + animationDurationUpdate: 500 + }; + return TreeSeriesModel; + }(SeriesModel); + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + + /** + * AUTO-GENERATED FILE. DO NOT MODIFY. + */ + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + /** + * Traverse the tree from bottom to top and do something + */ + function eachAfter(root, callback, separation) { + var nodes = [root]; + var next = []; + var node; + while (node = nodes.pop()) { + // jshint ignore:line + next.push(node); + if (node.isExpand) { + var children = node.children; + if (children.length) { + for (var i = 0; i < children.length; i++) { + nodes.push(children[i]); + } + } + } + } + while (node = next.pop()) { + // jshint ignore:line + callback(node, separation); + } + } + /** + * Traverse the tree from top to bottom and do something + */ + function eachBefore(root, callback) { + var nodes = [root]; + var node; + while (node = nodes.pop()) { + // jshint ignore:line + callback(node); + if (node.isExpand) { + var children = node.children; + if (children.length) { + for (var i = children.length - 1; i >= 0; i--) { + nodes.push(children[i]); + } + } + } + } + } + + function treeLayout(ecModel, api) { + ecModel.eachSeriesByType('tree', function (seriesModel) { + commonLayout(seriesModel, api); + }); + } + function commonLayout(seriesModel, api) { + var layoutInfo = getViewRect$1(seriesModel, api); + seriesModel.layoutInfo = layoutInfo; + var layout = seriesModel.get('layout'); + var width = 0; + var height = 0; + var separation$1 = null; + if (layout === 'radial') { + width = 2 * Math.PI; + height = Math.min(layoutInfo.height, layoutInfo.width) / 2; + separation$1 = separation(function (node1, node2) { + return (node1.parentNode === node2.parentNode ? 1 : 2) / node1.depth; + }); + } else { + width = layoutInfo.width; + height = layoutInfo.height; + separation$1 = separation(); + } + var virtualRoot = seriesModel.getData().tree.root; + var realRoot = virtualRoot.children[0]; + if (realRoot) { + init$2(virtualRoot); + eachAfter(realRoot, firstWalk, separation$1); + virtualRoot.hierNode.modifier = -realRoot.hierNode.prelim; + eachBefore(realRoot, secondWalk); + var left_1 = realRoot; + var right_1 = realRoot; + var bottom_1 = realRoot; + eachBefore(realRoot, function (node) { + var x = node.getLayout().x; + if (x < left_1.getLayout().x) { + left_1 = node; + } + if (x > right_1.getLayout().x) { + right_1 = node; + } + if (node.depth > bottom_1.depth) { + bottom_1 = node; + } + }); + var delta = left_1 === right_1 ? 1 : separation$1(left_1, right_1) / 2; + var tx_1 = delta - left_1.getLayout().x; + var kx_1 = 0; + var ky_1 = 0; + var coorX_1 = 0; + var coorY_1 = 0; + if (layout === 'radial') { + kx_1 = width / (right_1.getLayout().x + delta + tx_1); + // here we use (node.depth - 1), bucause the real root's depth is 1 + ky_1 = height / (bottom_1.depth - 1 || 1); + eachBefore(realRoot, function (node) { + coorX_1 = (node.getLayout().x + tx_1) * kx_1; + coorY_1 = (node.depth - 1) * ky_1; + var finalCoor = radialCoordinate(coorX_1, coorY_1); + node.setLayout({ + x: finalCoor.x, + y: finalCoor.y, + rawX: coorX_1, + rawY: coorY_1 + }, true); + }); + } else { + var orient_1 = seriesModel.getOrient(); + if (orient_1 === 'RL' || orient_1 === 'LR') { + ky_1 = height / (right_1.getLayout().x + delta + tx_1); + kx_1 = width / (bottom_1.depth - 1 || 1); + eachBefore(realRoot, function (node) { + coorY_1 = (node.getLayout().x + tx_1) * ky_1; + coorX_1 = orient_1 === 'LR' ? (node.depth - 1) * kx_1 : width - (node.depth - 1) * kx_1; + node.setLayout({ + x: coorX_1, + y: coorY_1 + }, true); + }); + } else if (orient_1 === 'TB' || orient_1 === 'BT') { + kx_1 = width / (right_1.getLayout().x + delta + tx_1); + ky_1 = height / (bottom_1.depth - 1 || 1); + eachBefore(realRoot, function (node) { + coorX_1 = (node.getLayout().x + tx_1) * kx_1; + coorY_1 = orient_1 === 'TB' ? (node.depth - 1) * ky_1 : height - (node.depth - 1) * ky_1; + node.setLayout({ + x: coorX_1, + y: coorY_1 + }, true); + }); + } + } + } + } + + function treeVisual(ecModel) { + ecModel.eachSeriesByType('tree', function (seriesModel) { + var data = seriesModel.getData(); + var tree = data.tree; + tree.eachNode(function (node) { + var model = node.getModel(); + // TODO Optimize + var style = model.getModel('itemStyle').getItemStyle(); + var existsStyle = data.ensureUniqueItemVisual(node.dataIndex, 'style'); + extend(existsStyle, style); + }); + }); + } + + function installTreeAction(registers) { + registers.registerAction({ + type: 'treeExpandAndCollapse', + event: 'treeExpandAndCollapse', + update: 'update' + }, function (payload, ecModel) { + ecModel.eachComponent({ + mainType: 'series', + subType: 'tree', + query: payload + }, function (seriesModel) { + var dataIndex = payload.dataIndex; + var tree = seriesModel.getData().tree; + var node = tree.getNodeByDataIndex(dataIndex); + node.isExpand = !node.isExpand; + }); + }); + registers.registerAction({ + type: 'treeRoam', + event: 'treeRoam', + // Here we set 'none' instead of 'update', because roam action + // just need to update the transform matrix without having to recalculate + // the layout. So don't need to go through the whole update process, such + // as 'dataPrcocess', 'coordSystemUpdate', 'layout' and so on. + update: 'none' + }, function (payload, ecModel, api) { + ecModel.eachComponent({ + mainType: 'series', + subType: 'tree', + query: payload + }, function (seriesModel) { + var coordSys = seriesModel.coordinateSystem; + var res = updateCenterAndZoom(coordSys, payload, undefined, api); + seriesModel.setCenter && seriesModel.setCenter(res.center); + seriesModel.setZoom && seriesModel.setZoom(res.zoom); + }); + }); + } + + function install$b(registers) { + registers.registerChartView(TreeView); + registers.registerSeriesModel(TreeSeriesModel); + registers.registerLayout(treeLayout); + registers.registerVisual(treeVisual); + installTreeAction(registers); + } + + var actionTypes = ['treemapZoomToNode', 'treemapRender', 'treemapMove']; + function installTreemapAction(registers) { + for (var i = 0; i < actionTypes.length; i++) { + registers.registerAction({ + type: actionTypes[i], + update: 'updateView' + }, noop); + } + registers.registerAction({ + type: 'treemapRootToNode', + update: 'updateView' + }, function (payload, ecModel) { + ecModel.eachComponent({ + mainType: 'series', + subType: 'treemap', + query: payload + }, handleRootToNode); + function handleRootToNode(model, index) { + var types = ['treemapZoomToNode', 'treemapRootToNode']; + var targetInfo = retrieveTargetInfo(payload, types, model); + if (targetInfo) { + var originViewRoot = model.getViewRoot(); + if (originViewRoot) { + payload.direction = aboveViewRoot(originViewRoot, targetInfo.node) ? 'rollUp' : 'drillDown'; + } + model.resetViewRoot(targetInfo.node); + } + } + }); + } + + function enableAriaDecalForTree(seriesModel) { + var data = seriesModel.getData(); + var tree = data.tree; + var decalPaletteScope = {}; + tree.eachNode(function (node) { + // Use decal of level 1 node + var current = node; + while (current && current.depth > 1) { + current = current.parentNode; + } + var decal = getDecalFromPalette(seriesModel.ecModel, current.name || current.dataIndex + '', decalPaletteScope); + node.setVisual('decal', decal); + }); + } + + var TreemapSeriesModel = /** @class */function (_super) { + __extends(TreemapSeriesModel, _super); + function TreemapSeriesModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = TreemapSeriesModel.type; + _this.preventUsingHoverLayer = true; + return _this; + } + /** + * @override + */ + TreemapSeriesModel.prototype.getInitialData = function (option, ecModel) { + // Create a virtual root. + var root = { + name: option.name, + children: option.data + }; + completeTreeValue(root); + var levels = option.levels || []; + // Used in "visual priority" in `treemapVisual.js`. + // This way is a little tricky, must satisfy the precondition: + // 1. There is no `treeNode.getModel('itemStyle.xxx')` used. + // 2. The `Model.prototype.getModel()` will not use any clone-like way. + var designatedVisualItemStyle = this.designatedVisualItemStyle = {}; + var designatedVisualModel = new Model({ + itemStyle: designatedVisualItemStyle + }, this, ecModel); + levels = option.levels = setDefault(levels, ecModel); + var levelModels = map(levels || [], function (levelDefine) { + return new Model(levelDefine, designatedVisualModel, ecModel); + }, this); + // Make sure always a new tree is created when setOption, + // in TreemapView, we check whether oldTree === newTree + // to choose mappings approach among old shapes and new shapes. + var tree = Tree.createTree(root, this, beforeLink); + function beforeLink(nodeData) { + nodeData.wrapMethod('getItemModel', function (model, idx) { + var node = tree.getNodeByDataIndex(idx); + var levelModel = node ? levelModels[node.depth] : null; + // If no levelModel, we also need `designatedVisualModel`. + model.parentModel = levelModel || designatedVisualModel; + return model; + }); + } + return tree.data; + }; + TreemapSeriesModel.prototype.optionUpdated = function () { + this.resetViewRoot(); + }; + /** + * @override + * @param {number} dataIndex + * @param {boolean} [mutipleSeries=false] + */ + TreemapSeriesModel.prototype.formatTooltip = function (dataIndex, multipleSeries, dataType) { + var data = this.getData(); + var value = this.getRawValue(dataIndex); + var name = data.getName(dataIndex); + return createTooltipMarkup('nameValue', { + name: name, + value: value + }); + }; + /** + * Add tree path to tooltip param + * + * @override + * @param {number} dataIndex + * @return {Object} + */ + TreemapSeriesModel.prototype.getDataParams = function (dataIndex) { + var params = _super.prototype.getDataParams.apply(this, arguments); + var node = this.getData().tree.getNodeByDataIndex(dataIndex); + params.treeAncestors = wrapTreePathInfo(node, this); + // compatitable the previous code. + params.treePathInfo = params.treeAncestors; + return params; + }; + /** + * @public + * @param {Object} layoutInfo { + * x: containerGroup x + * y: containerGroup y + * width: containerGroup width + * height: containerGroup height + * } + */ + TreemapSeriesModel.prototype.setLayoutInfo = function (layoutInfo) { + /** + * @readOnly + * @type {Object} + */ + this.layoutInfo = this.layoutInfo || {}; + extend(this.layoutInfo, layoutInfo); + }; + /** + * @param {string} id + * @return {number} index + */ + TreemapSeriesModel.prototype.mapIdToIndex = function (id) { + // A feature is implemented: + // index is monotone increasing with the sequence of + // input id at the first time. + // This feature can make sure that each data item and its + // mapped color have the same index between data list and + // color list at the beginning, which is useful for user + // to adjust data-color mapping. + /** + * @private + * @type {Object} + */ + var idIndexMap = this._idIndexMap; + if (!idIndexMap) { + idIndexMap = this._idIndexMap = createHashMap(); + /** + * @private + * @type {number} + */ + this._idIndexMapCount = 0; + } + var index = idIndexMap.get(id); + if (index == null) { + idIndexMap.set(id, index = this._idIndexMapCount++); + } + return index; + }; + TreemapSeriesModel.prototype.getViewRoot = function () { + return this._viewRoot; + }; + TreemapSeriesModel.prototype.resetViewRoot = function (viewRoot) { + viewRoot ? this._viewRoot = viewRoot : viewRoot = this._viewRoot; + var root = this.getRawData().tree.root; + if (!viewRoot || viewRoot !== root && !root.contains(viewRoot)) { + this._viewRoot = root; + } + }; + TreemapSeriesModel.prototype.enableAriaDecal = function () { + enableAriaDecalForTree(this); + }; + TreemapSeriesModel.type = 'series.treemap'; + TreemapSeriesModel.layoutMode = 'box'; + TreemapSeriesModel.defaultOption = { + // Disable progressive rendering + progressive: 0, + // size: ['80%', '80%'], // deprecated, compatible with ec2. + left: 'center', + top: 'middle', + width: '80%', + height: '80%', + sort: true, + clipWindow: 'origin', + squareRatio: 0.5 * (1 + Math.sqrt(5)), + leafDepth: null, + drillDownIcon: '▶', + // to align specialized icon. ▷▶❒❐▼✚ + zoomToNodeRatio: 0.32 * 0.32, + roam: true, + nodeClick: 'zoomToNode', + animation: true, + animationDurationUpdate: 900, + animationEasing: 'quinticInOut', + breadcrumb: { + show: true, + height: 22, + left: 'center', + top: 'bottom', + // right + // bottom + emptyItemWidth: 25, + itemStyle: { + color: 'rgba(0,0,0,0.7)', + textStyle: { + color: '#fff' + } + }, + emphasis: { + itemStyle: { + color: 'rgba(0,0,0,0.9)' // '#5793f3', + } + } + }, + + label: { + show: true, + // Do not use textDistance, for ellipsis rect just the same as treemap node rect. + distance: 0, + padding: 5, + position: 'inside', + // formatter: null, + color: '#fff', + overflow: 'truncate' + // align + // verticalAlign + }, + + upperLabel: { + show: false, + position: [0, '50%'], + height: 20, + // formatter: null, + // color: '#fff', + overflow: 'truncate', + // align: null, + verticalAlign: 'middle' + }, + itemStyle: { + color: null, + colorAlpha: null, + colorSaturation: null, + borderWidth: 0, + gapWidth: 0, + borderColor: '#fff', + borderColorSaturation: null // If specified, borderColor will be ineffective, and the + // border color is evaluated by color of current node and + // borderColorSaturation. + }, + + emphasis: { + upperLabel: { + show: true, + position: [0, '50%'], + overflow: 'truncate', + verticalAlign: 'middle' + } + }, + visualDimension: 0, + visualMin: null, + visualMax: null, + color: [], + // level[n].color (if necessary). + // + Specify color list of each level. level[0].color would be global + // color list if not specified. (see method `setDefault`). + // + But set as a empty array to forbid fetch color from global palette + // when using nodeModel.get('color'), otherwise nodes on deep level + // will always has color palette set and are not able to inherit color + // from parent node. + // + TreemapSeries.color can not be set as 'none', otherwise effect + // legend color fetching (see seriesColor.js). + colorAlpha: null, + colorSaturation: null, + colorMappingBy: 'index', + visibleMin: 10, + // be rendered. Only works when sort is 'asc' or 'desc'. + childrenVisibleMin: null, + // grandchildren will not show. + // Why grandchildren? If not grandchildren but children, + // some siblings show children and some not, + // the appearance may be mess and not consistent, + levels: [] // Each item: { + // visibleMin, itemStyle, visualDimension, label + // } + }; + + return TreemapSeriesModel; + }(SeriesModel); + /** + * @param {Object} dataNode + */ + function completeTreeValue(dataNode) { + // Postorder travel tree. + // If value of none-leaf node is not set, + // calculate it by suming up the value of all children. + var sum = 0; + each(dataNode.children, function (child) { + completeTreeValue(child); + var childValue = child.value; + isArray(childValue) && (childValue = childValue[0]); + sum += childValue; + }); + var thisValue = dataNode.value; + if (isArray(thisValue)) { + thisValue = thisValue[0]; + } + if (thisValue == null || isNaN(thisValue)) { + thisValue = sum; + } + // Value should not less than 0. + if (thisValue < 0) { + thisValue = 0; + } + isArray(dataNode.value) ? dataNode.value[0] = thisValue : dataNode.value = thisValue; + } + /** + * set default to level configuration + */ + function setDefault(levels, ecModel) { + var globalColorList = normalizeToArray(ecModel.get('color')); + var globalDecalList = normalizeToArray(ecModel.get(['aria', 'decal', 'decals'])); + if (!globalColorList) { + return; + } + levels = levels || []; + var hasColorDefine; + var hasDecalDefine; + each(levels, function (levelDefine) { + var model = new Model(levelDefine); + var modelColor = model.get('color'); + var modelDecal = model.get('decal'); + if (model.get(['itemStyle', 'color']) || modelColor && modelColor !== 'none') { + hasColorDefine = true; + } + if (model.get(['itemStyle', 'decal']) || modelDecal && modelDecal !== 'none') { + hasDecalDefine = true; + } + }); + var level0 = levels[0] || (levels[0] = {}); + if (!hasColorDefine) { + level0.color = globalColorList.slice(); + } + if (!hasDecalDefine && globalDecalList) { + level0.decal = globalDecalList.slice(); + } + return levels; + } + + var TEXT_PADDING = 8; + var ITEM_GAP = 8; + var ARRAY_LENGTH = 5; + var Breadcrumb = /** @class */function () { + function Breadcrumb(containerGroup) { + this.group = new Group(); + containerGroup.add(this.group); + } + Breadcrumb.prototype.render = function (seriesModel, api, targetNode, onSelect) { + var model = seriesModel.getModel('breadcrumb'); + var thisGroup = this.group; + thisGroup.removeAll(); + if (!model.get('show') || !targetNode) { + return; + } + var normalStyleModel = model.getModel('itemStyle'); + var emphasisModel = model.getModel('emphasis'); + var textStyleModel = normalStyleModel.getModel('textStyle'); + var emphasisTextStyleModel = emphasisModel.getModel(['itemStyle', 'textStyle']); + var layoutParam = { + pos: { + left: model.get('left'), + right: model.get('right'), + top: model.get('top'), + bottom: model.get('bottom') + }, + box: { + width: api.getWidth(), + height: api.getHeight() + }, + emptyItemWidth: model.get('emptyItemWidth'), + totalWidth: 0, + renderList: [] + }; + this._prepare(targetNode, layoutParam, textStyleModel); + this._renderContent(seriesModel, layoutParam, normalStyleModel, emphasisModel, textStyleModel, emphasisTextStyleModel, onSelect); + positionElement(thisGroup, layoutParam.pos, layoutParam.box); + }; + /** + * Prepare render list and total width + * @private + */ + Breadcrumb.prototype._prepare = function (targetNode, layoutParam, textStyleModel) { + for (var node = targetNode; node; node = node.parentNode) { + var text = convertOptionIdName(node.getModel().get('name'), ''); + var textRect = textStyleModel.getTextRect(text); + var itemWidth = Math.max(textRect.width + TEXT_PADDING * 2, layoutParam.emptyItemWidth); + layoutParam.totalWidth += itemWidth + ITEM_GAP; + layoutParam.renderList.push({ + node: node, + text: text, + width: itemWidth + }); + } + }; + /** + * @private + */ + Breadcrumb.prototype._renderContent = function (seriesModel, layoutParam, normalStyleModel, emphasisModel, textStyleModel, emphasisTextStyleModel, onSelect) { + // Start rendering. + var lastX = 0; + var emptyItemWidth = layoutParam.emptyItemWidth; + var height = seriesModel.get(['breadcrumb', 'height']); + var availableSize = getAvailableSize(layoutParam.pos, layoutParam.box); + var totalWidth = layoutParam.totalWidth; + var renderList = layoutParam.renderList; + var emphasisItemStyle = emphasisModel.getModel('itemStyle').getItemStyle(); + for (var i = renderList.length - 1; i >= 0; i--) { + var item = renderList[i]; + var itemNode = item.node; + var itemWidth = item.width; + var text = item.text; + // Hdie text and shorten width if necessary. + if (totalWidth > availableSize.width) { + totalWidth -= itemWidth - emptyItemWidth; + itemWidth = emptyItemWidth; + text = null; + } + var el = new Polygon({ + shape: { + points: makeItemPoints(lastX, 0, itemWidth, height, i === renderList.length - 1, i === 0) + }, + style: defaults(normalStyleModel.getItemStyle(), { + lineJoin: 'bevel' + }), + textContent: new ZRText({ + style: createTextStyle(textStyleModel, { + text: text + }) + }), + textConfig: { + position: 'inside' + }, + z2: Z2_EMPHASIS_LIFT * 1e4, + onclick: curry(onSelect, itemNode) + }); + el.disableLabelAnimation = true; + el.getTextContent().ensureState('emphasis').style = createTextStyle(emphasisTextStyleModel, { + text: text + }); + el.ensureState('emphasis').style = emphasisItemStyle; + toggleHoverEmphasis(el, emphasisModel.get('focus'), emphasisModel.get('blurScope'), emphasisModel.get('disabled')); + this.group.add(el); + packEventData(el, seriesModel, itemNode); + lastX += itemWidth + ITEM_GAP; + } + }; + Breadcrumb.prototype.remove = function () { + this.group.removeAll(); + }; + return Breadcrumb; + }(); + function makeItemPoints(x, y, itemWidth, itemHeight, head, tail) { + var points = [[head ? x : x - ARRAY_LENGTH, y], [x + itemWidth, y], [x + itemWidth, y + itemHeight], [head ? x : x - ARRAY_LENGTH, y + itemHeight]]; + !tail && points.splice(2, 0, [x + itemWidth + ARRAY_LENGTH, y + itemHeight / 2]); + !head && points.push([x, y + itemHeight / 2]); + return points; + } + // Package custom mouse event. + function packEventData(el, seriesModel, itemNode) { + getECData(el).eventData = { + componentType: 'series', + componentSubType: 'treemap', + componentIndex: seriesModel.componentIndex, + seriesIndex: seriesModel.seriesIndex, + seriesName: seriesModel.name, + seriesType: 'treemap', + selfType: 'breadcrumb', + nodeData: { + dataIndex: itemNode && itemNode.dataIndex, + name: itemNode && itemNode.name + }, + treePathInfo: itemNode && wrapTreePathInfo(itemNode, seriesModel) + }; + } + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + + /** + * AUTO-GENERATED FILE. DO NOT MODIFY. + */ + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + /** + * Animate multiple elements with a single done-callback. + * + * @example + * animation + * .createWrap() + * .add(el1, {x: 10, y: 10}) + * .add(el2, {shape: {width: 500}, style: {fill: 'red'}}, 400) + * .done(function () { // done }) + * .start('cubicOut'); + */ + var AnimationWrap = /** @class */function () { + function AnimationWrap() { + this._storage = []; + this._elExistsMap = {}; + } + /** + * Caution: a el can only be added once, otherwise 'done' + * might not be called. This method checks this (by el.id), + * suppresses adding and returns false when existing el found. + * + * @return Whether adding succeeded. + */ + AnimationWrap.prototype.add = function (el, target, duration, delay, easing) { + if (this._elExistsMap[el.id]) { + return false; + } + this._elExistsMap[el.id] = true; + this._storage.push({ + el: el, + target: target, + duration: duration, + delay: delay, + easing: easing + }); + return true; + }; + /** + * Only execute when animation done/aborted. + */ + AnimationWrap.prototype.finished = function (callback) { + this._finishedCallback = callback; + return this; + }; + /** + * Will stop exist animation firstly. + */ + AnimationWrap.prototype.start = function () { + var _this = this; + var count = this._storage.length; + var checkTerminate = function () { + count--; + if (count <= 0) { + // Guard. + _this._storage.length = 0; + _this._elExistsMap = {}; + _this._finishedCallback && _this._finishedCallback(); + } + }; + for (var i = 0, len = this._storage.length; i < len; i++) { + var item = this._storage[i]; + item.el.animateTo(item.target, { + duration: item.duration, + delay: item.delay, + easing: item.easing, + setToFinal: true, + done: checkTerminate, + aborted: checkTerminate + }); + } + return this; + }; + return AnimationWrap; + }(); + function createWrap() { + return new AnimationWrap(); + } + + var Group$1 = Group; + var Rect$1 = Rect; + var DRAG_THRESHOLD = 3; + var PATH_LABEL_NOAMAL = 'label'; + var PATH_UPPERLABEL_NORMAL = 'upperLabel'; + // Should larger than emphasis states lift z + var Z2_BASE = Z2_EMPHASIS_LIFT * 10; // Should bigger than every z2. + var Z2_BG = Z2_EMPHASIS_LIFT * 2; + var Z2_CONTENT = Z2_EMPHASIS_LIFT * 3; + var getStateItemStyle = makeStyleMapper([['fill', 'color'], + // `borderColor` and `borderWidth` has been occupied, + // so use `stroke` to indicate the stroke of the rect. + ['stroke', 'strokeColor'], ['lineWidth', 'strokeWidth'], ['shadowBlur'], ['shadowOffsetX'], ['shadowOffsetY'], ['shadowColor'] + // Option decal is in `DecalObject` but style.decal is in `PatternObject`. + // So do not transfer decal directly. + ]); + + var getItemStyleNormal = function (model) { + // Normal style props should include emphasis style props. + var itemStyle = getStateItemStyle(model); + // Clear styles set by emphasis. + itemStyle.stroke = itemStyle.fill = itemStyle.lineWidth = null; + return itemStyle; + }; + var inner$8 = makeInner(); + var TreemapView = /** @class */function (_super) { + __extends(TreemapView, _super); + function TreemapView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = TreemapView.type; + _this._state = 'ready'; + _this._storage = createStorage(); + return _this; + } + /** + * @override + */ + TreemapView.prototype.render = function (seriesModel, ecModel, api, payload) { + var models = ecModel.findComponents({ + mainType: 'series', + subType: 'treemap', + query: payload + }); + if (indexOf(models, seriesModel) < 0) { + return; + } + this.seriesModel = seriesModel; + this.api = api; + this.ecModel = ecModel; + var types = ['treemapZoomToNode', 'treemapRootToNode']; + var targetInfo = retrieveTargetInfo(payload, types, seriesModel); + var payloadType = payload && payload.type; + var layoutInfo = seriesModel.layoutInfo; + var isInit = !this._oldTree; + var thisStorage = this._storage; + // Mark new root when action is treemapRootToNode. + var reRoot = payloadType === 'treemapRootToNode' && targetInfo && thisStorage ? { + rootNodeGroup: thisStorage.nodeGroup[targetInfo.node.getRawIndex()], + direction: payload.direction + } : null; + var containerGroup = this._giveContainerGroup(layoutInfo); + var hasAnimation = seriesModel.get('animation'); + var renderResult = this._doRender(containerGroup, seriesModel, reRoot); + hasAnimation && !isInit && (!payloadType || payloadType === 'treemapZoomToNode' || payloadType === 'treemapRootToNode') ? this._doAnimation(containerGroup, renderResult, seriesModel, reRoot) : renderResult.renderFinally(); + this._resetController(api); + this._renderBreadcrumb(seriesModel, api, targetInfo); + }; + TreemapView.prototype._giveContainerGroup = function (layoutInfo) { + var containerGroup = this._containerGroup; + if (!containerGroup) { + // FIXME + // 加一层containerGroup是为了clip,但是现在clip功能并没有实现。 + containerGroup = this._containerGroup = new Group$1(); + this._initEvents(containerGroup); + this.group.add(containerGroup); + } + containerGroup.x = layoutInfo.x; + containerGroup.y = layoutInfo.y; + return containerGroup; + }; + TreemapView.prototype._doRender = function (containerGroup, seriesModel, reRoot) { + var thisTree = seriesModel.getData().tree; + var oldTree = this._oldTree; + // Clear last shape records. + var lastsForAnimation = createStorage(); + var thisStorage = createStorage(); + var oldStorage = this._storage; + var willInvisibleEls = []; + function doRenderNode(thisNode, oldNode, parentGroup, depth) { + return renderNode(seriesModel, thisStorage, oldStorage, reRoot, lastsForAnimation, willInvisibleEls, thisNode, oldNode, parentGroup, depth); + } + // Notice: When thisTree and oldTree are the same tree (see list.cloneShallow), + // the oldTree is actually losted, so we cannot find all of the old graphic + // elements from tree. So we use this strategy: make element storage, move + // from old storage to new storage, clear old storage. + dualTravel(thisTree.root ? [thisTree.root] : [], oldTree && oldTree.root ? [oldTree.root] : [], containerGroup, thisTree === oldTree || !oldTree, 0); + // Process all removing. + var willDeleteEls = clearStorage(oldStorage); + this._oldTree = thisTree; + this._storage = thisStorage; + return { + lastsForAnimation: lastsForAnimation, + willDeleteEls: willDeleteEls, + renderFinally: renderFinally + }; + function dualTravel(thisViewChildren, oldViewChildren, parentGroup, sameTree, depth) { + // When 'render' is triggered by action, + // 'this' and 'old' may be the same tree, + // we use rawIndex in that case. + if (sameTree) { + oldViewChildren = thisViewChildren; + each(thisViewChildren, function (child, index) { + !child.isRemoved() && processNode(index, index); + }); + } + // Diff hierarchically (diff only in each subtree, but not whole). + // because, consistency of view is important. + else { + new DataDiffer(oldViewChildren, thisViewChildren, getKey, getKey).add(processNode).update(processNode).remove(curry(processNode, null)).execute(); + } + function getKey(node) { + // Identify by name or raw index. + return node.getId(); + } + function processNode(newIndex, oldIndex) { + var thisNode = newIndex != null ? thisViewChildren[newIndex] : null; + var oldNode = oldIndex != null ? oldViewChildren[oldIndex] : null; + var group = doRenderNode(thisNode, oldNode, parentGroup, depth); + group && dualTravel(thisNode && thisNode.viewChildren || [], oldNode && oldNode.viewChildren || [], group, sameTree, depth + 1); + } + } + function clearStorage(storage) { + var willDeleteEls = createStorage(); + storage && each(storage, function (store, storageName) { + var delEls = willDeleteEls[storageName]; + each(store, function (el) { + el && (delEls.push(el), inner$8(el).willDelete = true); + }); + }); + return willDeleteEls; + } + function renderFinally() { + each(willDeleteEls, function (els) { + each(els, function (el) { + el.parent && el.parent.remove(el); + }); + }); + each(willInvisibleEls, function (el) { + el.invisible = true; + // Setting invisible is for optimizing, so no need to set dirty, + // just mark as invisible. + el.dirty(); + }); + } + }; + TreemapView.prototype._doAnimation = function (containerGroup, renderResult, seriesModel, reRoot) { + var durationOption = seriesModel.get('animationDurationUpdate'); + var easingOption = seriesModel.get('animationEasing'); + // TODO: do not support function until necessary. + var duration = (isFunction(durationOption) ? 0 : durationOption) || 0; + var easing = (isFunction(easingOption) ? null : easingOption) || 'cubicOut'; + var animationWrap = createWrap(); + // Make delete animations. + each(renderResult.willDeleteEls, function (store, storageName) { + each(store, function (el, rawIndex) { + if (el.invisible) { + return; + } + var parent = el.parent; // Always has parent, and parent is nodeGroup. + var target; + var innerStore = inner$8(parent); + if (reRoot && reRoot.direction === 'drillDown') { + target = parent === reRoot.rootNodeGroup + // This is the content element of view root. + // Only `content` will enter this branch, because + // `background` and `nodeGroup` will not be deleted. + ? { + shape: { + x: 0, + y: 0, + width: innerStore.nodeWidth, + height: innerStore.nodeHeight + }, + style: { + opacity: 0 + } + } + // Others. + : { + style: { + opacity: 0 + } + }; + } else { + var targetX = 0; + var targetY = 0; + if (!innerStore.willDelete) { + // Let node animate to right-bottom corner, cooperating with fadeout, + // which is appropriate for user understanding. + // Divided by 2 for reRoot rolling up effect. + targetX = innerStore.nodeWidth / 2; + targetY = innerStore.nodeHeight / 2; + } + target = storageName === 'nodeGroup' ? { + x: targetX, + y: targetY, + style: { + opacity: 0 + } + } : { + shape: { + x: targetX, + y: targetY, + width: 0, + height: 0 + }, + style: { + opacity: 0 + } + }; + } + // TODO: do not support delay until necessary. + target && animationWrap.add(el, target, duration, 0, easing); + }); + }); + // Make other animations + each(this._storage, function (store, storageName) { + each(store, function (el, rawIndex) { + var last = renderResult.lastsForAnimation[storageName][rawIndex]; + var target = {}; + if (!last) { + return; + } + if (el instanceof Group) { + if (last.oldX != null) { + target.x = el.x; + target.y = el.y; + el.x = last.oldX; + el.y = last.oldY; + } + } else { + if (last.oldShape) { + target.shape = extend({}, el.shape); + el.setShape(last.oldShape); + } + if (last.fadein) { + el.setStyle('opacity', 0); + target.style = { + opacity: 1 + }; + } + // When animation is stopped for succedent animation starting, + // el.style.opacity might not be 1 + else if (el.style.opacity !== 1) { + target.style = { + opacity: 1 + }; + } + } + animationWrap.add(el, target, duration, 0, easing); + }); + }, this); + this._state = 'animating'; + animationWrap.finished(bind(function () { + this._state = 'ready'; + renderResult.renderFinally(); + }, this)).start(); + }; + TreemapView.prototype._resetController = function (api) { + var controller = this._controller; + // Init controller. + if (!controller) { + controller = this._controller = new RoamController(api.getZr()); + controller.enable(this.seriesModel.get('roam')); + controller.on('pan', bind(this._onPan, this)); + controller.on('zoom', bind(this._onZoom, this)); + } + var rect = new BoundingRect(0, 0, api.getWidth(), api.getHeight()); + controller.setPointerChecker(function (e, x, y) { + return rect.contain(x, y); + }); + }; + TreemapView.prototype._clearController = function () { + var controller = this._controller; + if (controller) { + controller.dispose(); + controller = null; + } + }; + TreemapView.prototype._onPan = function (e) { + if (this._state !== 'animating' && (Math.abs(e.dx) > DRAG_THRESHOLD || Math.abs(e.dy) > DRAG_THRESHOLD)) { + // These param must not be cached. + var root = this.seriesModel.getData().tree.root; + if (!root) { + return; + } + var rootLayout = root.getLayout(); + if (!rootLayout) { + return; + } + this.api.dispatchAction({ + type: 'treemapMove', + from: this.uid, + seriesId: this.seriesModel.id, + rootRect: { + x: rootLayout.x + e.dx, + y: rootLayout.y + e.dy, + width: rootLayout.width, + height: rootLayout.height + } + }); + } + }; + TreemapView.prototype._onZoom = function (e) { + var mouseX = e.originX; + var mouseY = e.originY; + if (this._state !== 'animating') { + // These param must not be cached. + var root = this.seriesModel.getData().tree.root; + if (!root) { + return; + } + var rootLayout = root.getLayout(); + if (!rootLayout) { + return; + } + var rect = new BoundingRect(rootLayout.x, rootLayout.y, rootLayout.width, rootLayout.height); + var layoutInfo = this.seriesModel.layoutInfo; + // Transform mouse coord from global to containerGroup. + mouseX -= layoutInfo.x; + mouseY -= layoutInfo.y; + // Scale root bounding rect. + var m = create$1(); + translate(m, m, [-mouseX, -mouseY]); + scale$1(m, m, [e.scale, e.scale]); + translate(m, m, [mouseX, mouseY]); + rect.applyTransform(m); + this.api.dispatchAction({ + type: 'treemapRender', + from: this.uid, + seriesId: this.seriesModel.id, + rootRect: { + x: rect.x, + y: rect.y, + width: rect.width, + height: rect.height + } + }); + } + }; + TreemapView.prototype._initEvents = function (containerGroup) { + var _this = this; + containerGroup.on('click', function (e) { + if (_this._state !== 'ready') { + return; + } + var nodeClick = _this.seriesModel.get('nodeClick', true); + if (!nodeClick) { + return; + } + var targetInfo = _this.findTarget(e.offsetX, e.offsetY); + if (!targetInfo) { + return; + } + var node = targetInfo.node; + if (node.getLayout().isLeafRoot) { + _this._rootToNode(targetInfo); + } else { + if (nodeClick === 'zoomToNode') { + _this._zoomToNode(targetInfo); + } else if (nodeClick === 'link') { + var itemModel = node.hostTree.data.getItemModel(node.dataIndex); + var link = itemModel.get('link', true); + var linkTarget = itemModel.get('target', true) || 'blank'; + link && windowOpen(link, linkTarget); + } + } + }, this); + }; + TreemapView.prototype._renderBreadcrumb = function (seriesModel, api, targetInfo) { + var _this = this; + if (!targetInfo) { + targetInfo = seriesModel.get('leafDepth', true) != null ? { + node: seriesModel.getViewRoot() + } + // FIXME + // better way? + // Find breadcrumb tail on center of containerGroup. + : this.findTarget(api.getWidth() / 2, api.getHeight() / 2); + if (!targetInfo) { + targetInfo = { + node: seriesModel.getData().tree.root + }; + } + } + (this._breadcrumb || (this._breadcrumb = new Breadcrumb(this.group))).render(seriesModel, api, targetInfo.node, function (node) { + if (_this._state !== 'animating') { + aboveViewRoot(seriesModel.getViewRoot(), node) ? _this._rootToNode({ + node: node + }) : _this._zoomToNode({ + node: node + }); + } + }); + }; + /** + * @override + */ + TreemapView.prototype.remove = function () { + this._clearController(); + this._containerGroup && this._containerGroup.removeAll(); + this._storage = createStorage(); + this._state = 'ready'; + this._breadcrumb && this._breadcrumb.remove(); + }; + TreemapView.prototype.dispose = function () { + this._clearController(); + }; + TreemapView.prototype._zoomToNode = function (targetInfo) { + this.api.dispatchAction({ + type: 'treemapZoomToNode', + from: this.uid, + seriesId: this.seriesModel.id, + targetNode: targetInfo.node + }); + }; + TreemapView.prototype._rootToNode = function (targetInfo) { + this.api.dispatchAction({ + type: 'treemapRootToNode', + from: this.uid, + seriesId: this.seriesModel.id, + targetNode: targetInfo.node + }); + }; + /** + * @public + * @param {number} x Global coord x. + * @param {number} y Global coord y. + * @return {Object} info If not found, return undefined; + * @return {number} info.node Target node. + * @return {number} info.offsetX x refer to target node. + * @return {number} info.offsetY y refer to target node. + */ + TreemapView.prototype.findTarget = function (x, y) { + var targetInfo; + var viewRoot = this.seriesModel.getViewRoot(); + viewRoot.eachNode({ + attr: 'viewChildren', + order: 'preorder' + }, function (node) { + var bgEl = this._storage.background[node.getRawIndex()]; + // If invisible, there might be no element. + if (bgEl) { + var point = bgEl.transformCoordToLocal(x, y); + var shape = bgEl.shape; + // For performance consideration, don't use 'getBoundingRect'. + if (shape.x <= point[0] && point[0] <= shape.x + shape.width && shape.y <= point[1] && point[1] <= shape.y + shape.height) { + targetInfo = { + node: node, + offsetX: point[0], + offsetY: point[1] + }; + } else { + return false; // Suppress visit subtree. + } + } + }, this); + return targetInfo; + }; + TreemapView.type = 'treemap'; + return TreemapView; + }(ChartView); + /** + * @inner + */ + function createStorage() { + return { + nodeGroup: [], + background: [], + content: [] + }; + } + /** + * @inner + * @return Return undefined means do not travel further. + */ + function renderNode(seriesModel, thisStorage, oldStorage, reRoot, lastsForAnimation, willInvisibleEls, thisNode, oldNode, parentGroup, depth) { + // Whether under viewRoot. + if (!thisNode) { + // Deleting nodes will be performed finally. This method just find + // element from old storage, or create new element, set them to new + // storage, and set styles. + return; + } + // ------------------------------------------------------------------- + // Start of closure variables available in "Procedures in renderNode". + var thisLayout = thisNode.getLayout(); + var data = seriesModel.getData(); + var nodeModel = thisNode.getModel(); + // Only for enabling highlight/downplay. Clear firstly. + // Because some node will not be rendered. + data.setItemGraphicEl(thisNode.dataIndex, null); + if (!thisLayout || !thisLayout.isInView) { + return; + } + var thisWidth = thisLayout.width; + var thisHeight = thisLayout.height; + var borderWidth = thisLayout.borderWidth; + var thisInvisible = thisLayout.invisible; + var thisRawIndex = thisNode.getRawIndex(); + var oldRawIndex = oldNode && oldNode.getRawIndex(); + var thisViewChildren = thisNode.viewChildren; + var upperHeight = thisLayout.upperHeight; + var isParent = thisViewChildren && thisViewChildren.length; + var itemStyleNormalModel = nodeModel.getModel('itemStyle'); + var itemStyleEmphasisModel = nodeModel.getModel(['emphasis', 'itemStyle']); + var itemStyleBlurModel = nodeModel.getModel(['blur', 'itemStyle']); + var itemStyleSelectModel = nodeModel.getModel(['select', 'itemStyle']); + var borderRadius = itemStyleNormalModel.get('borderRadius') || 0; + // End of closure ariables available in "Procedures in renderNode". + // ----------------------------------------------------------------- + // Node group + var group = giveGraphic('nodeGroup', Group$1); + if (!group) { + return; + } + parentGroup.add(group); + // x,y are not set when el is above view root. + group.x = thisLayout.x || 0; + group.y = thisLayout.y || 0; + group.markRedraw(); + inner$8(group).nodeWidth = thisWidth; + inner$8(group).nodeHeight = thisHeight; + if (thisLayout.isAboveViewRoot) { + return group; + } + // Background + var bg = giveGraphic('background', Rect$1, depth, Z2_BG); + bg && renderBackground(group, bg, isParent && thisLayout.upperLabelHeight); + var emphasisModel = nodeModel.getModel('emphasis'); + var focus = emphasisModel.get('focus'); + var blurScope = emphasisModel.get('blurScope'); + var isDisabled = emphasisModel.get('disabled'); + var focusOrIndices = focus === 'ancestor' ? thisNode.getAncestorsIndices() : focus === 'descendant' ? thisNode.getDescendantIndices() : focus; + // No children, render content. + if (isParent) { + // Because of the implementation about "traverse" in graphic hover style, we + // can not set hover listener on the "group" of non-leaf node. Otherwise the + // hover event from the descendents will be listenered. + if (isHighDownDispatcher(group)) { + setAsHighDownDispatcher(group, false); + } + if (bg) { + setAsHighDownDispatcher(bg, !isDisabled); + // Only for enabling highlight/downplay. + data.setItemGraphicEl(thisNode.dataIndex, bg); + enableHoverFocus(bg, focusOrIndices, blurScope); + } + } else { + var content = giveGraphic('content', Rect$1, depth, Z2_CONTENT); + content && renderContent(group, content); + bg.disableMorphing = true; + if (bg && isHighDownDispatcher(bg)) { + setAsHighDownDispatcher(bg, false); + } + setAsHighDownDispatcher(group, !isDisabled); + // Only for enabling highlight/downplay. + data.setItemGraphicEl(thisNode.dataIndex, group); + enableHoverFocus(group, focusOrIndices, blurScope); + } + return group; + // ---------------------------- + // | Procedures in renderNode | + // ---------------------------- + function renderBackground(group, bg, useUpperLabel) { + var ecData = getECData(bg); + // For tooltip. + ecData.dataIndex = thisNode.dataIndex; + ecData.seriesIndex = seriesModel.seriesIndex; + bg.setShape({ + x: 0, + y: 0, + width: thisWidth, + height: thisHeight, + r: borderRadius + }); + if (thisInvisible) { + // If invisible, do not set visual, otherwise the element will + // change immediately before animation. We think it is OK to + // remain its origin color when moving out of the view window. + processInvisible(bg); + } else { + bg.invisible = false; + var style = thisNode.getVisual('style'); + var visualBorderColor = style.stroke; + var normalStyle = getItemStyleNormal(itemStyleNormalModel); + normalStyle.fill = visualBorderColor; + var emphasisStyle = getStateItemStyle(itemStyleEmphasisModel); + emphasisStyle.fill = itemStyleEmphasisModel.get('borderColor'); + var blurStyle = getStateItemStyle(itemStyleBlurModel); + blurStyle.fill = itemStyleBlurModel.get('borderColor'); + var selectStyle = getStateItemStyle(itemStyleSelectModel); + selectStyle.fill = itemStyleSelectModel.get('borderColor'); + if (useUpperLabel) { + var upperLabelWidth = thisWidth - 2 * borderWidth; + prepareText( + // PENDING: convert ZRColor to ColorString for text. + bg, visualBorderColor, style.opacity, { + x: borderWidth, + y: 0, + width: upperLabelWidth, + height: upperHeight + }); + } + // For old bg. + else { + bg.removeTextContent(); + } + bg.setStyle(normalStyle); + bg.ensureState('emphasis').style = emphasisStyle; + bg.ensureState('blur').style = blurStyle; + bg.ensureState('select').style = selectStyle; + setDefaultStateProxy(bg); + } + group.add(bg); + } + function renderContent(group, content) { + var ecData = getECData(content); + // For tooltip. + ecData.dataIndex = thisNode.dataIndex; + ecData.seriesIndex = seriesModel.seriesIndex; + var contentWidth = Math.max(thisWidth - 2 * borderWidth, 0); + var contentHeight = Math.max(thisHeight - 2 * borderWidth, 0); + content.culling = true; + content.setShape({ + x: borderWidth, + y: borderWidth, + width: contentWidth, + height: contentHeight, + r: borderRadius + }); + if (thisInvisible) { + // If invisible, do not set visual, otherwise the element will + // change immediately before animation. We think it is OK to + // remain its origin color when moving out of the view window. + processInvisible(content); + } else { + content.invisible = false; + var nodeStyle = thisNode.getVisual('style'); + var visualColor = nodeStyle.fill; + var normalStyle = getItemStyleNormal(itemStyleNormalModel); + normalStyle.fill = visualColor; + normalStyle.decal = nodeStyle.decal; + var emphasisStyle = getStateItemStyle(itemStyleEmphasisModel); + var blurStyle = getStateItemStyle(itemStyleBlurModel); + var selectStyle = getStateItemStyle(itemStyleSelectModel); + // PENDING: convert ZRColor to ColorString for text. + prepareText(content, visualColor, nodeStyle.opacity, null); + content.setStyle(normalStyle); + content.ensureState('emphasis').style = emphasisStyle; + content.ensureState('blur').style = blurStyle; + content.ensureState('select').style = selectStyle; + setDefaultStateProxy(content); + } + group.add(content); + } + function processInvisible(element) { + // Delay invisible setting utill animation finished, + // avoid element vanish suddenly before animation. + !element.invisible && willInvisibleEls.push(element); + } + function prepareText(rectEl, visualColor, visualOpacity, + // Can be null/undefined + upperLabelRect) { + var normalLabelModel = nodeModel.getModel(upperLabelRect ? PATH_UPPERLABEL_NORMAL : PATH_LABEL_NOAMAL); + var defaultText = convertOptionIdName(nodeModel.get('name'), null); + var isShow = normalLabelModel.getShallow('show'); + setLabelStyle(rectEl, getLabelStatesModels(nodeModel, upperLabelRect ? PATH_UPPERLABEL_NORMAL : PATH_LABEL_NOAMAL), { + defaultText: isShow ? defaultText : null, + inheritColor: visualColor, + defaultOpacity: visualOpacity, + labelFetcher: seriesModel, + labelDataIndex: thisNode.dataIndex + }); + var textEl = rectEl.getTextContent(); + if (!textEl) { + return; + } + var textStyle = textEl.style; + var textPadding = normalizeCssArray(textStyle.padding || 0); + if (upperLabelRect) { + rectEl.setTextConfig({ + layoutRect: upperLabelRect + }); + textEl.disableLabelLayout = true; + } + textEl.beforeUpdate = function () { + var width = Math.max((upperLabelRect ? upperLabelRect.width : rectEl.shape.width) - textPadding[1] - textPadding[3], 0); + var height = Math.max((upperLabelRect ? upperLabelRect.height : rectEl.shape.height) - textPadding[0] - textPadding[2], 0); + if (textStyle.width !== width || textStyle.height !== height) { + textEl.setStyle({ + width: width, + height: height + }); + } + }; + textStyle.truncateMinChar = 2; + textStyle.lineOverflow = 'truncate'; + addDrillDownIcon(textStyle, upperLabelRect, thisLayout); + var textEmphasisState = textEl.getState('emphasis'); + addDrillDownIcon(textEmphasisState ? textEmphasisState.style : null, upperLabelRect, thisLayout); + } + function addDrillDownIcon(style, upperLabelRect, thisLayout) { + var text = style ? style.text : null; + if (!upperLabelRect && thisLayout.isLeafRoot && text != null) { + var iconChar = seriesModel.get('drillDownIcon', true); + style.text = iconChar ? iconChar + ' ' + text : text; + } + } + function giveGraphic(storageName, Ctor, depth, z) { + var element = oldRawIndex != null && oldStorage[storageName][oldRawIndex]; + var lasts = lastsForAnimation[storageName]; + if (element) { + // Remove from oldStorage + oldStorage[storageName][oldRawIndex] = null; + prepareAnimationWhenHasOld(lasts, element); + } + // If invisible and no old element, do not create new element (for optimizing). + else if (!thisInvisible) { + element = new Ctor(); + if (element instanceof Displayable) { + element.z2 = calculateZ2(depth, z); + } + prepareAnimationWhenNoOld(lasts, element); + } + // Set to thisStorage + return thisStorage[storageName][thisRawIndex] = element; + } + function prepareAnimationWhenHasOld(lasts, element) { + var lastCfg = lasts[thisRawIndex] = {}; + if (element instanceof Group$1) { + lastCfg.oldX = element.x; + lastCfg.oldY = element.y; + } else { + lastCfg.oldShape = extend({}, element.shape); + } + } + // If a element is new, we need to find the animation start point carefully, + // otherwise it will looks strange when 'zoomToNode'. + function prepareAnimationWhenNoOld(lasts, element) { + var lastCfg = lasts[thisRawIndex] = {}; + var parentNode = thisNode.parentNode; + var isGroup = element instanceof Group; + if (parentNode && (!reRoot || reRoot.direction === 'drillDown')) { + var parentOldX = 0; + var parentOldY = 0; + // New nodes appear from right-bottom corner in 'zoomToNode' animation. + // For convenience, get old bounding rect from background. + var parentOldBg = lastsForAnimation.background[parentNode.getRawIndex()]; + if (!reRoot && parentOldBg && parentOldBg.oldShape) { + parentOldX = parentOldBg.oldShape.width; + parentOldY = parentOldBg.oldShape.height; + } + // When no parent old shape found, its parent is new too, + // so we can just use {x:0, y:0}. + if (isGroup) { + lastCfg.oldX = 0; + lastCfg.oldY = parentOldY; + } else { + lastCfg.oldShape = { + x: parentOldX, + y: parentOldY, + width: 0, + height: 0 + }; + } + } + // Fade in, user can be aware that these nodes are new. + lastCfg.fadein = !isGroup; + } + } + // We cannot set all background with the same z, because the behaviour of + // drill down and roll up differ background creation sequence from tree + // hierarchy sequence, which cause lower background elements to overlap + // upper ones. So we calculate z based on depth. + // Moreover, we try to shrink down z interval to [0, 1] to avoid that + // treemap with large z overlaps other components. + function calculateZ2(depth, z2InLevel) { + return depth * Z2_BASE + z2InLevel; + } + + var each$3 = each; + var isObject$3 = isObject; + var CATEGORY_DEFAULT_VISUAL_INDEX = -1; + var VisualMapping = /** @class */function () { + function VisualMapping(option) { + var mappingMethod = option.mappingMethod; + var visualType = option.type; + var thisOption = this.option = clone(option); + this.type = visualType; + this.mappingMethod = mappingMethod; + this._normalizeData = normalizers[mappingMethod]; + var visualHandler = VisualMapping.visualHandlers[visualType]; + this.applyVisual = visualHandler.applyVisual; + this.getColorMapper = visualHandler.getColorMapper; + this._normalizedToVisual = visualHandler._normalizedToVisual[mappingMethod]; + if (mappingMethod === 'piecewise') { + normalizeVisualRange(thisOption); + preprocessForPiecewise(thisOption); + } else if (mappingMethod === 'category') { + thisOption.categories ? preprocessForSpecifiedCategory(thisOption) + // categories is ordinal when thisOption.categories not specified, + // which need no more preprocess except normalize visual. + : normalizeVisualRange(thisOption, true); + } else { + // mappingMethod === 'linear' or 'fixed' + assert(mappingMethod !== 'linear' || thisOption.dataExtent); + normalizeVisualRange(thisOption); + } + } + VisualMapping.prototype.mapValueToVisual = function (value) { + var normalized = this._normalizeData(value); + return this._normalizedToVisual(normalized, value); + }; + VisualMapping.prototype.getNormalizer = function () { + return bind(this._normalizeData, this); + }; + /** + * List available visual types. + * + * @public + * @return {Array.<string>} + */ + VisualMapping.listVisualTypes = function () { + return keys(VisualMapping.visualHandlers); + }; + // /** + // * @public + // */ + // static addVisualHandler(name, handler) { + // visualHandlers[name] = handler; + // } + /** + * @public + */ + VisualMapping.isValidType = function (visualType) { + return VisualMapping.visualHandlers.hasOwnProperty(visualType); + }; + /** + * Convenient method. + * Visual can be Object or Array or primary type. + */ + VisualMapping.eachVisual = function (visual, callback, context) { + if (isObject(visual)) { + each(visual, callback, context); + } else { + callback.call(context, visual); + } + }; + VisualMapping.mapVisual = function (visual, callback, context) { + var isPrimary; + var newVisual = isArray(visual) ? [] : isObject(visual) ? {} : (isPrimary = true, null); + VisualMapping.eachVisual(visual, function (v, key) { + var newVal = callback.call(context, v, key); + isPrimary ? newVisual = newVal : newVisual[key] = newVal; + }); + return newVisual; + }; + /** + * Retrieve visual properties from given object. + */ + VisualMapping.retrieveVisuals = function (obj) { + var ret = {}; + var hasVisual; + obj && each$3(VisualMapping.visualHandlers, function (h, visualType) { + if (obj.hasOwnProperty(visualType)) { + ret[visualType] = obj[visualType]; + hasVisual = true; + } + }); + return hasVisual ? ret : null; + }; + /** + * Give order to visual types, considering colorSaturation, colorAlpha depends on color. + * + * @public + * @param {(Object|Array)} visualTypes If Object, like: {color: ..., colorSaturation: ...} + * IF Array, like: ['color', 'symbol', 'colorSaturation'] + * @return {Array.<string>} Sorted visual types. + */ + VisualMapping.prepareVisualTypes = function (visualTypes) { + if (isArray(visualTypes)) { + visualTypes = visualTypes.slice(); + } else if (isObject$3(visualTypes)) { + var types_1 = []; + each$3(visualTypes, function (item, type) { + types_1.push(type); + }); + visualTypes = types_1; + } else { + return []; + } + visualTypes.sort(function (type1, type2) { + // color should be front of colorSaturation, colorAlpha, ... + // symbol and symbolSize do not matter. + return type2 === 'color' && type1 !== 'color' && type1.indexOf('color') === 0 ? 1 : -1; + }); + return visualTypes; + }; + /** + * 'color', 'colorSaturation', 'colorAlpha', ... are depends on 'color'. + * Other visuals are only depends on themself. + */ + VisualMapping.dependsOn = function (visualType1, visualType2) { + return visualType2 === 'color' ? !!(visualType1 && visualType1.indexOf(visualType2) === 0) : visualType1 === visualType2; + }; + /** + * @param value + * @param pieceList [{value: ..., interval: [min, max]}, ...] + * Always from small to big. + * @param findClosestWhenOutside Default to be false + * @return index + */ + VisualMapping.findPieceIndex = function (value, pieceList, findClosestWhenOutside) { + var possibleI; + var abs = Infinity; + // value has the higher priority. + for (var i = 0, len = pieceList.length; i < len; i++) { + var pieceValue = pieceList[i].value; + if (pieceValue != null) { + if (pieceValue === value + // FIXME + // It is supposed to compare value according to value type of dimension, + // but currently value type can exactly be string or number. + // Compromise for numeric-like string (like '12'), especially + // in the case that visualMap.categories is ['22', '33']. + || isString(pieceValue) && pieceValue === value + '') { + return i; + } + findClosestWhenOutside && updatePossible(pieceValue, i); + } + } + for (var i = 0, len = pieceList.length; i < len; i++) { + var piece = pieceList[i]; + var interval = piece.interval; + var close_1 = piece.close; + if (interval) { + if (interval[0] === -Infinity) { + if (littleThan(close_1[1], value, interval[1])) { + return i; + } + } else if (interval[1] === Infinity) { + if (littleThan(close_1[0], interval[0], value)) { + return i; + } + } else if (littleThan(close_1[0], interval[0], value) && littleThan(close_1[1], value, interval[1])) { + return i; + } + findClosestWhenOutside && updatePossible(interval[0], i); + findClosestWhenOutside && updatePossible(interval[1], i); + } + } + if (findClosestWhenOutside) { + return value === Infinity ? pieceList.length - 1 : value === -Infinity ? 0 : possibleI; + } + function updatePossible(val, index) { + var newAbs = Math.abs(val - value); + if (newAbs < abs) { + abs = newAbs; + possibleI = index; + } + } + }; + VisualMapping.visualHandlers = { + color: { + applyVisual: makeApplyVisual('color'), + getColorMapper: function () { + var thisOption = this.option; + return bind(thisOption.mappingMethod === 'category' ? function (value, isNormalized) { + !isNormalized && (value = this._normalizeData(value)); + return doMapCategory.call(this, value); + } : function (value, isNormalized, out) { + // If output rgb array + // which will be much faster and useful in pixel manipulation + var returnRGBArray = !!out; + !isNormalized && (value = this._normalizeData(value)); + out = fastLerp(value, thisOption.parsedVisual, out); + return returnRGBArray ? out : stringify(out, 'rgba'); + }, this); + }, + _normalizedToVisual: { + linear: function (normalized) { + return stringify(fastLerp(normalized, this.option.parsedVisual), 'rgba'); + }, + category: doMapCategory, + piecewise: function (normalized, value) { + var result = getSpecifiedVisual.call(this, value); + if (result == null) { + result = stringify(fastLerp(normalized, this.option.parsedVisual), 'rgba'); + } + return result; + }, + fixed: doMapFixed + } + }, + colorHue: makePartialColorVisualHandler(function (color$1, value) { + return modifyHSL(color$1, value); + }), + colorSaturation: makePartialColorVisualHandler(function (color$1, value) { + return modifyHSL(color$1, null, value); + }), + colorLightness: makePartialColorVisualHandler(function (color$1, value) { + return modifyHSL(color$1, null, null, value); + }), + colorAlpha: makePartialColorVisualHandler(function (color$1, value) { + return modifyAlpha(color$1, value); + }), + decal: { + applyVisual: makeApplyVisual('decal'), + _normalizedToVisual: { + linear: null, + category: doMapCategory, + piecewise: null, + fixed: null + } + }, + opacity: { + applyVisual: makeApplyVisual('opacity'), + _normalizedToVisual: createNormalizedToNumericVisual([0, 1]) + }, + liftZ: { + applyVisual: makeApplyVisual('liftZ'), + _normalizedToVisual: { + linear: doMapFixed, + category: doMapFixed, + piecewise: doMapFixed, + fixed: doMapFixed + } + }, + symbol: { + applyVisual: function (value, getter, setter) { + var symbolCfg = this.mapValueToVisual(value); + setter('symbol', symbolCfg); + }, + _normalizedToVisual: { + linear: doMapToArray, + category: doMapCategory, + piecewise: function (normalized, value) { + var result = getSpecifiedVisual.call(this, value); + if (result == null) { + result = doMapToArray.call(this, normalized); + } + return result; + }, + fixed: doMapFixed + } + }, + symbolSize: { + applyVisual: makeApplyVisual('symbolSize'), + _normalizedToVisual: createNormalizedToNumericVisual([0, 1]) + } + }; + return VisualMapping; + }(); + function preprocessForPiecewise(thisOption) { + var pieceList = thisOption.pieceList; + thisOption.hasSpecialVisual = false; + each(pieceList, function (piece, index) { + piece.originIndex = index; + // piece.visual is "result visual value" but not + // a visual range, so it does not need to be normalized. + if (piece.visual != null) { + thisOption.hasSpecialVisual = true; + } + }); + } + function preprocessForSpecifiedCategory(thisOption) { + // Hash categories. + var categories = thisOption.categories; + var categoryMap = thisOption.categoryMap = {}; + var visual = thisOption.visual; + each$3(categories, function (cate, index) { + categoryMap[cate] = index; + }); + // Process visual map input. + if (!isArray(visual)) { + var visualArr_1 = []; + if (isObject(visual)) { + each$3(visual, function (v, cate) { + var index = categoryMap[cate]; + visualArr_1[index != null ? index : CATEGORY_DEFAULT_VISUAL_INDEX] = v; + }); + } else { + // Is primary type, represents default visual. + visualArr_1[CATEGORY_DEFAULT_VISUAL_INDEX] = visual; + } + visual = setVisualToOption(thisOption, visualArr_1); + } + // Remove categories that has no visual, + // then we can mapping them to CATEGORY_DEFAULT_VISUAL_INDEX. + for (var i = categories.length - 1; i >= 0; i--) { + if (visual[i] == null) { + delete categoryMap[categories[i]]; + categories.pop(); + } + } + } + function normalizeVisualRange(thisOption, isCategory) { + var visual = thisOption.visual; + var visualArr = []; + if (isObject(visual)) { + each$3(visual, function (v) { + visualArr.push(v); + }); + } else if (visual != null) { + visualArr.push(visual); + } + var doNotNeedPair = { + color: 1, + symbol: 1 + }; + if (!isCategory && visualArr.length === 1 && !doNotNeedPair.hasOwnProperty(thisOption.type)) { + // Do not care visualArr.length === 0, which is illegal. + visualArr[1] = visualArr[0]; + } + setVisualToOption(thisOption, visualArr); + } + function makePartialColorVisualHandler(applyValue) { + return { + applyVisual: function (value, getter, setter) { + // Only used in HSL + var colorChannel = this.mapValueToVisual(value); + // Must not be array value + setter('color', applyValue(getter('color'), colorChannel)); + }, + _normalizedToVisual: createNormalizedToNumericVisual([0, 1]) + }; + } + function doMapToArray(normalized) { + var visual = this.option.visual; + return visual[Math.round(linearMap(normalized, [0, 1], [0, visual.length - 1], true))] || {}; // TODO {}? + } + + function makeApplyVisual(visualType) { + return function (value, getter, setter) { + setter(visualType, this.mapValueToVisual(value)); + }; + } + function doMapCategory(normalized) { + var visual = this.option.visual; + return visual[this.option.loop && normalized !== CATEGORY_DEFAULT_VISUAL_INDEX ? normalized % visual.length : normalized]; + } + function doMapFixed() { + // visual will be convert to array. + return this.option.visual[0]; + } + /** + * Create mapped to numeric visual + */ + function createNormalizedToNumericVisual(sourceExtent) { + return { + linear: function (normalized) { + return linearMap(normalized, sourceExtent, this.option.visual, true); + }, + category: doMapCategory, + piecewise: function (normalized, value) { + var result = getSpecifiedVisual.call(this, value); + if (result == null) { + result = linearMap(normalized, sourceExtent, this.option.visual, true); + } + return result; + }, + fixed: doMapFixed + }; + } + function getSpecifiedVisual(value) { + var thisOption = this.option; + var pieceList = thisOption.pieceList; + if (thisOption.hasSpecialVisual) { + var pieceIndex = VisualMapping.findPieceIndex(value, pieceList); + var piece = pieceList[pieceIndex]; + if (piece && piece.visual) { + return piece.visual[this.type]; + } + } + } + function setVisualToOption(thisOption, visualArr) { + thisOption.visual = visualArr; + if (thisOption.type === 'color') { + thisOption.parsedVisual = map(visualArr, function (item) { + var color$1 = parse(item); + if (!color$1 && "development" !== 'production') { + warn("'" + item + "' is an illegal color, fallback to '#000000'", true); + } + return color$1 || [0, 0, 0, 1]; + }); + } + return visualArr; + } + /** + * Normalizers by mapping methods. + */ + var normalizers = { + linear: function (value) { + return linearMap(value, this.option.dataExtent, [0, 1], true); + }, + piecewise: function (value) { + var pieceList = this.option.pieceList; + var pieceIndex = VisualMapping.findPieceIndex(value, pieceList, true); + if (pieceIndex != null) { + return linearMap(pieceIndex, [0, pieceList.length - 1], [0, 1], true); + } + }, + category: function (value) { + var index = this.option.categories ? this.option.categoryMap[value] : value; // ordinal value + return index == null ? CATEGORY_DEFAULT_VISUAL_INDEX : index; + }, + fixed: noop + }; + function littleThan(close, a, b) { + return close ? a <= b : a < b; + } + + var ITEM_STYLE_NORMAL = 'itemStyle'; + var inner$9 = makeInner(); + var treemapVisual = { + seriesType: 'treemap', + reset: function (seriesModel) { + var tree = seriesModel.getData().tree; + var root = tree.root; + if (root.isRemoved()) { + return; + } + travelTree(root, + // Visual should calculate from tree root but not view root. + {}, seriesModel.getViewRoot().getAncestors(), seriesModel); + } + }; + function travelTree(node, designatedVisual, viewRootAncestors, seriesModel) { + var nodeModel = node.getModel(); + var nodeLayout = node.getLayout(); + var data = node.hostTree.data; + // Optimize + if (!nodeLayout || nodeLayout.invisible || !nodeLayout.isInView) { + return; + } + var nodeItemStyleModel = nodeModel.getModel(ITEM_STYLE_NORMAL); + var visuals = buildVisuals(nodeItemStyleModel, designatedVisual, seriesModel); + var existsStyle = data.ensureUniqueItemVisual(node.dataIndex, 'style'); + // calculate border color + var borderColor = nodeItemStyleModel.get('borderColor'); + var borderColorSaturation = nodeItemStyleModel.get('borderColorSaturation'); + var thisNodeColor; + if (borderColorSaturation != null) { + // For performance, do not always execute 'calculateColor'. + thisNodeColor = calculateColor(visuals); + borderColor = calculateBorderColor(borderColorSaturation, thisNodeColor); + } + existsStyle.stroke = borderColor; + var viewChildren = node.viewChildren; + if (!viewChildren || !viewChildren.length) { + thisNodeColor = calculateColor(visuals); + // Apply visual to this node. + existsStyle.fill = thisNodeColor; + } else { + var mapping_1 = buildVisualMapping(node, nodeModel, nodeLayout, nodeItemStyleModel, visuals, viewChildren); + // Designate visual to children. + each(viewChildren, function (child, index) { + // If higher than viewRoot, only ancestors of viewRoot is needed to visit. + if (child.depth >= viewRootAncestors.length || child === viewRootAncestors[child.depth]) { + var childVisual = mapVisual(nodeModel, visuals, child, index, mapping_1, seriesModel); + travelTree(child, childVisual, viewRootAncestors, seriesModel); + } + }); + } + } + function buildVisuals(nodeItemStyleModel, designatedVisual, seriesModel) { + var visuals = extend({}, designatedVisual); + var designatedVisualItemStyle = seriesModel.designatedVisualItemStyle; + each(['color', 'colorAlpha', 'colorSaturation'], function (visualName) { + // Priority: thisNode > thisLevel > parentNodeDesignated > seriesModel + designatedVisualItemStyle[visualName] = designatedVisual[visualName]; + var val = nodeItemStyleModel.get(visualName); + designatedVisualItemStyle[visualName] = null; + val != null && (visuals[visualName] = val); + }); + return visuals; + } + function calculateColor(visuals) { + var color = getValueVisualDefine(visuals, 'color'); + if (color) { + var colorAlpha = getValueVisualDefine(visuals, 'colorAlpha'); + var colorSaturation = getValueVisualDefine(visuals, 'colorSaturation'); + if (colorSaturation) { + color = modifyHSL(color, null, null, colorSaturation); + } + if (colorAlpha) { + color = modifyAlpha(color, colorAlpha); + } + return color; + } + } + function calculateBorderColor(borderColorSaturation, thisNodeColor) { + return thisNodeColor != null + // Can only be string + ? modifyHSL(thisNodeColor, null, null, borderColorSaturation) : null; + } + function getValueVisualDefine(visuals, name) { + var value = visuals[name]; + if (value != null && value !== 'none') { + return value; + } + } + function buildVisualMapping(node, nodeModel, nodeLayout, nodeItemStyleModel, visuals, viewChildren) { + if (!viewChildren || !viewChildren.length) { + return; + } + var rangeVisual = getRangeVisual(nodeModel, 'color') || visuals.color != null && visuals.color !== 'none' && (getRangeVisual(nodeModel, 'colorAlpha') || getRangeVisual(nodeModel, 'colorSaturation')); + if (!rangeVisual) { + return; + } + var visualMin = nodeModel.get('visualMin'); + var visualMax = nodeModel.get('visualMax'); + var dataExtent = nodeLayout.dataExtent.slice(); + visualMin != null && visualMin < dataExtent[0] && (dataExtent[0] = visualMin); + visualMax != null && visualMax > dataExtent[1] && (dataExtent[1] = visualMax); + var colorMappingBy = nodeModel.get('colorMappingBy'); + var opt = { + type: rangeVisual.name, + dataExtent: dataExtent, + visual: rangeVisual.range + }; + if (opt.type === 'color' && (colorMappingBy === 'index' || colorMappingBy === 'id')) { + opt.mappingMethod = 'category'; + opt.loop = true; + // categories is ordinal, so do not set opt.categories. + } else { + opt.mappingMethod = 'linear'; + } + var mapping = new VisualMapping(opt); + inner$9(mapping).drColorMappingBy = colorMappingBy; + return mapping; + } + // Notice: If we don't have the attribute 'colorRange', but only use + // attribute 'color' to represent both concepts of 'colorRange' and 'color', + // (It means 'colorRange' when 'color' is Array, means 'color' when not array), + // this problem will be encountered: + // If a level-1 node doesn't have children, and its siblings have children, + // and colorRange is set on level-1, then the node cannot be colored. + // So we separate 'colorRange' and 'color' to different attributes. + function getRangeVisual(nodeModel, name) { + // 'colorRange', 'colorARange', 'colorSRange'. + // If not exists on this node, fetch from levels and series. + var range = nodeModel.get(name); + return isArray(range) && range.length ? { + name: name, + range: range + } : null; + } + function mapVisual(nodeModel, visuals, child, index, mapping, seriesModel) { + var childVisuals = extend({}, visuals); + if (mapping) { + // Only support color, colorAlpha, colorSaturation. + var mappingType = mapping.type; + var colorMappingBy = mappingType === 'color' && inner$9(mapping).drColorMappingBy; + var value = colorMappingBy === 'index' ? index : colorMappingBy === 'id' ? seriesModel.mapIdToIndex(child.getId()) : child.getValue(nodeModel.get('visualDimension')); + childVisuals[mappingType] = mapping.mapValueToVisual(value); + } + return childVisuals; + } + + var mathMax$7 = Math.max; + var mathMin$7 = Math.min; + var retrieveValue = retrieve; + var each$4 = each; + var PATH_BORDER_WIDTH = ['itemStyle', 'borderWidth']; + var PATH_GAP_WIDTH = ['itemStyle', 'gapWidth']; + var PATH_UPPER_LABEL_SHOW = ['upperLabel', 'show']; + var PATH_UPPER_LABEL_HEIGHT = ['upperLabel', 'height']; + /** + * @public + */ + var treemapLayout = { + seriesType: 'treemap', + reset: function (seriesModel, ecModel, api, payload) { + // Layout result in each node: + // {x, y, width, height, area, borderWidth} + var ecWidth = api.getWidth(); + var ecHeight = api.getHeight(); + var seriesOption = seriesModel.option; + var layoutInfo = getLayoutRect(seriesModel.getBoxLayoutParams(), { + width: api.getWidth(), + height: api.getHeight() + }); + var size = seriesOption.size || []; // Compatible with ec2. + var containerWidth = parsePercent$1(retrieveValue(layoutInfo.width, size[0]), ecWidth); + var containerHeight = parsePercent$1(retrieveValue(layoutInfo.height, size[1]), ecHeight); + // Fetch payload info. + var payloadType = payload && payload.type; + var types = ['treemapZoomToNode', 'treemapRootToNode']; + var targetInfo = retrieveTargetInfo(payload, types, seriesModel); + var rootRect = payloadType === 'treemapRender' || payloadType === 'treemapMove' ? payload.rootRect : null; + var viewRoot = seriesModel.getViewRoot(); + var viewAbovePath = getPathToRoot(viewRoot); + if (payloadType !== 'treemapMove') { + var rootSize = payloadType === 'treemapZoomToNode' ? estimateRootSize(seriesModel, targetInfo, viewRoot, containerWidth, containerHeight) : rootRect ? [rootRect.width, rootRect.height] : [containerWidth, containerHeight]; + var sort_1 = seriesOption.sort; + if (sort_1 && sort_1 !== 'asc' && sort_1 !== 'desc') { + // Default to be desc order. + sort_1 = 'desc'; + } + var options = { + squareRatio: seriesOption.squareRatio, + sort: sort_1, + leafDepth: seriesOption.leafDepth + }; + // layout should be cleared because using updateView but not update. + viewRoot.hostTree.clearLayouts(); + // TODO + // optimize: if out of view clip, do not layout. + // But take care that if do not render node out of view clip, + // how to calculate start po + var viewRootLayout_1 = { + x: 0, + y: 0, + width: rootSize[0], + height: rootSize[1], + area: rootSize[0] * rootSize[1] + }; + viewRoot.setLayout(viewRootLayout_1); + squarify(viewRoot, options, false, 0); + // Supplement layout. + viewRootLayout_1 = viewRoot.getLayout(); + each$4(viewAbovePath, function (node, index) { + var childValue = (viewAbovePath[index + 1] || viewRoot).getValue(); + node.setLayout(extend({ + dataExtent: [childValue, childValue], + borderWidth: 0, + upperHeight: 0 + }, viewRootLayout_1)); + }); + } + var treeRoot = seriesModel.getData().tree.root; + treeRoot.setLayout(calculateRootPosition(layoutInfo, rootRect, targetInfo), true); + seriesModel.setLayoutInfo(layoutInfo); + // FIXME + // 现在没有clip功能,暂时取ec高宽。 + prunning(treeRoot, + // Transform to base element coordinate system. + new BoundingRect(-layoutInfo.x, -layoutInfo.y, ecWidth, ecHeight), viewAbovePath, viewRoot, 0); + } + }; + /** + * Layout treemap with squarify algorithm. + * The original presentation of this algorithm + * was made by Mark Bruls, Kees Huizing, and Jarke J. van Wijk + * <https://graphics.ethz.ch/teaching/scivis_common/Literature/squarifiedTreeMaps.pdf>. + * The implementation of this algorithm was originally copied from "d3.js" + * <https://github.com/d3/d3/blob/9cc9a875e636a1dcf36cc1e07bdf77e1ad6e2c74/src/layout/treemap.js> + * with some modifications made for this program. + * See the license statement at the head of this file. + * + * @protected + * @param {module:echarts/data/Tree~TreeNode} node + * @param {Object} options + * @param {string} options.sort 'asc' or 'desc' + * @param {number} options.squareRatio + * @param {boolean} hideChildren + * @param {number} depth + */ + function squarify(node, options, hideChildren, depth) { + var width; + var height; + if (node.isRemoved()) { + return; + } + var thisLayout = node.getLayout(); + width = thisLayout.width; + height = thisLayout.height; + // Considering border and gap + var nodeModel = node.getModel(); + var borderWidth = nodeModel.get(PATH_BORDER_WIDTH); + var halfGapWidth = nodeModel.get(PATH_GAP_WIDTH) / 2; + var upperLabelHeight = getUpperLabelHeight(nodeModel); + var upperHeight = Math.max(borderWidth, upperLabelHeight); + var layoutOffset = borderWidth - halfGapWidth; + var layoutOffsetUpper = upperHeight - halfGapWidth; + node.setLayout({ + borderWidth: borderWidth, + upperHeight: upperHeight, + upperLabelHeight: upperLabelHeight + }, true); + width = mathMax$7(width - 2 * layoutOffset, 0); + height = mathMax$7(height - layoutOffset - layoutOffsetUpper, 0); + var totalArea = width * height; + var viewChildren = initChildren(node, nodeModel, totalArea, options, hideChildren, depth); + if (!viewChildren.length) { + return; + } + var rect = { + x: layoutOffset, + y: layoutOffsetUpper, + width: width, + height: height + }; + var rowFixedLength = mathMin$7(width, height); + var best = Infinity; // the best row score so far + var row = []; + row.area = 0; + for (var i = 0, len = viewChildren.length; i < len;) { + var child = viewChildren[i]; + row.push(child); + row.area += child.getLayout().area; + var score = worst(row, rowFixedLength, options.squareRatio); + // continue with this orientation + if (score <= best) { + i++; + best = score; + } + // abort, and try a different orientation + else { + row.area -= row.pop().getLayout().area; + position(row, rowFixedLength, rect, halfGapWidth, false); + rowFixedLength = mathMin$7(rect.width, rect.height); + row.length = row.area = 0; + best = Infinity; + } + } + if (row.length) { + position(row, rowFixedLength, rect, halfGapWidth, true); + } + if (!hideChildren) { + var childrenVisibleMin = nodeModel.get('childrenVisibleMin'); + if (childrenVisibleMin != null && totalArea < childrenVisibleMin) { + hideChildren = true; + } + } + for (var i = 0, len = viewChildren.length; i < len; i++) { + squarify(viewChildren[i], options, hideChildren, depth + 1); + } + } + /** + * Set area to each child, and calculate data extent for visual coding. + */ + function initChildren(node, nodeModel, totalArea, options, hideChildren, depth) { + var viewChildren = node.children || []; + var orderBy = options.sort; + orderBy !== 'asc' && orderBy !== 'desc' && (orderBy = null); + var overLeafDepth = options.leafDepth != null && options.leafDepth <= depth; + // leafDepth has higher priority. + if (hideChildren && !overLeafDepth) { + return node.viewChildren = []; + } + // Sort children, order by desc. + viewChildren = filter(viewChildren, function (child) { + return !child.isRemoved(); + }); + sort$1(viewChildren, orderBy); + var info = statistic(nodeModel, viewChildren, orderBy); + if (info.sum === 0) { + return node.viewChildren = []; + } + info.sum = filterByThreshold(nodeModel, totalArea, info.sum, orderBy, viewChildren); + if (info.sum === 0) { + return node.viewChildren = []; + } + // Set area to each child. + for (var i = 0, len = viewChildren.length; i < len; i++) { + var area = viewChildren[i].getValue() / info.sum * totalArea; + // Do not use setLayout({...}, true), because it is needed to clear last layout. + viewChildren[i].setLayout({ + area: area + }); + } + if (overLeafDepth) { + viewChildren.length && node.setLayout({ + isLeafRoot: true + }, true); + viewChildren.length = 0; + } + node.viewChildren = viewChildren; + node.setLayout({ + dataExtent: info.dataExtent + }, true); + return viewChildren; + } + /** + * Consider 'visibleMin'. Modify viewChildren and get new sum. + */ + function filterByThreshold(nodeModel, totalArea, sum, orderBy, orderedChildren) { + // visibleMin is not supported yet when no option.sort. + if (!orderBy) { + return sum; + } + var visibleMin = nodeModel.get('visibleMin'); + var len = orderedChildren.length; + var deletePoint = len; + // Always travel from little value to big value. + for (var i = len - 1; i >= 0; i--) { + var value = orderedChildren[orderBy === 'asc' ? len - i - 1 : i].getValue(); + if (value / sum * totalArea < visibleMin) { + deletePoint = i; + sum -= value; + } + } + orderBy === 'asc' ? orderedChildren.splice(0, len - deletePoint) : orderedChildren.splice(deletePoint, len - deletePoint); + return sum; + } + /** + * Sort + */ + function sort$1(viewChildren, orderBy) { + if (orderBy) { + viewChildren.sort(function (a, b) { + var diff = orderBy === 'asc' ? a.getValue() - b.getValue() : b.getValue() - a.getValue(); + return diff === 0 ? orderBy === 'asc' ? a.dataIndex - b.dataIndex : b.dataIndex - a.dataIndex : diff; + }); + } + return viewChildren; + } + /** + * Statistic + */ + function statistic(nodeModel, children, orderBy) { + // Calculate sum. + var sum = 0; + for (var i = 0, len = children.length; i < len; i++) { + sum += children[i].getValue(); + } + // Statistic data extent for latter visual coding. + // Notice: data extent should be calculate based on raw children + // but not filtered view children, otherwise visual mapping will not + // be stable when zoom (where children is filtered by visibleMin). + var dimension = nodeModel.get('visualDimension'); + var dataExtent; + // The same as area dimension. + if (!children || !children.length) { + dataExtent = [NaN, NaN]; + } else if (dimension === 'value' && orderBy) { + dataExtent = [children[children.length - 1].getValue(), children[0].getValue()]; + orderBy === 'asc' && dataExtent.reverse(); + } + // Other dimension. + else { + dataExtent = [Infinity, -Infinity]; + each$4(children, function (child) { + var value = child.getValue(dimension); + value < dataExtent[0] && (dataExtent[0] = value); + value > dataExtent[1] && (dataExtent[1] = value); + }); + } + return { + sum: sum, + dataExtent: dataExtent + }; + } + /** + * Computes the score for the specified row, + * as the worst aspect ratio. + */ + function worst(row, rowFixedLength, ratio) { + var areaMax = 0; + var areaMin = Infinity; + for (var i = 0, area = void 0, len = row.length; i < len; i++) { + area = row[i].getLayout().area; + if (area) { + area < areaMin && (areaMin = area); + area > areaMax && (areaMax = area); + } + } + var squareArea = row.area * row.area; + var f = rowFixedLength * rowFixedLength * ratio; + return squareArea ? mathMax$7(f * areaMax / squareArea, squareArea / (f * areaMin)) : Infinity; + } + /** + * Positions the specified row of nodes. Modifies `rect`. + */ + function position(row, rowFixedLength, rect, halfGapWidth, flush) { + // When rowFixedLength === rect.width, + // it is horizontal subdivision, + // rowFixedLength is the width of the subdivision, + // rowOtherLength is the height of the subdivision, + // and nodes will be positioned from left to right. + // wh[idx0WhenH] means: when horizontal, + // wh[idx0WhenH] => wh[0] => 'width'. + // xy[idx1WhenH] => xy[1] => 'y'. + var idx0WhenH = rowFixedLength === rect.width ? 0 : 1; + var idx1WhenH = 1 - idx0WhenH; + var xy = ['x', 'y']; + var wh = ['width', 'height']; + var last = rect[xy[idx0WhenH]]; + var rowOtherLength = rowFixedLength ? row.area / rowFixedLength : 0; + if (flush || rowOtherLength > rect[wh[idx1WhenH]]) { + rowOtherLength = rect[wh[idx1WhenH]]; // over+underflow + } + + for (var i = 0, rowLen = row.length; i < rowLen; i++) { + var node = row[i]; + var nodeLayout = {}; + var step = rowOtherLength ? node.getLayout().area / rowOtherLength : 0; + var wh1 = nodeLayout[wh[idx1WhenH]] = mathMax$7(rowOtherLength - 2 * halfGapWidth, 0); + // We use Math.max/min to avoid negative width/height when considering gap width. + var remain = rect[xy[idx0WhenH]] + rect[wh[idx0WhenH]] - last; + var modWH = i === rowLen - 1 || remain < step ? remain : step; + var wh0 = nodeLayout[wh[idx0WhenH]] = mathMax$7(modWH - 2 * halfGapWidth, 0); + nodeLayout[xy[idx1WhenH]] = rect[xy[idx1WhenH]] + mathMin$7(halfGapWidth, wh1 / 2); + nodeLayout[xy[idx0WhenH]] = last + mathMin$7(halfGapWidth, wh0 / 2); + last += modWH; + node.setLayout(nodeLayout, true); + } + rect[xy[idx1WhenH]] += rowOtherLength; + rect[wh[idx1WhenH]] -= rowOtherLength; + } + // Return [containerWidth, containerHeight] as default. + function estimateRootSize(seriesModel, targetInfo, viewRoot, containerWidth, containerHeight) { + // If targetInfo.node exists, we zoom to the node, + // so estimate whole width and height by target node. + var currNode = (targetInfo || {}).node; + var defaultSize = [containerWidth, containerHeight]; + if (!currNode || currNode === viewRoot) { + return defaultSize; + } + var parent; + var viewArea = containerWidth * containerHeight; + var area = viewArea * seriesModel.option.zoomToNodeRatio; + while (parent = currNode.parentNode) { + // jshint ignore:line + var sum = 0; + var siblings = parent.children; + for (var i = 0, len = siblings.length; i < len; i++) { + sum += siblings[i].getValue(); + } + var currNodeValue = currNode.getValue(); + if (currNodeValue === 0) { + return defaultSize; + } + area *= sum / currNodeValue; + // Considering border, suppose aspect ratio is 1. + var parentModel = parent.getModel(); + var borderWidth = parentModel.get(PATH_BORDER_WIDTH); + var upperHeight = Math.max(borderWidth, getUpperLabelHeight(parentModel)); + area += 4 * borderWidth * borderWidth + (3 * borderWidth + upperHeight) * Math.pow(area, 0.5); + area > MAX_SAFE_INTEGER && (area = MAX_SAFE_INTEGER); + currNode = parent; + } + area < viewArea && (area = viewArea); + var scale = Math.pow(area / viewArea, 0.5); + return [containerWidth * scale, containerHeight * scale]; + } + // Root position based on coord of containerGroup + function calculateRootPosition(layoutInfo, rootRect, targetInfo) { + if (rootRect) { + return { + x: rootRect.x, + y: rootRect.y + }; + } + var defaultPosition = { + x: 0, + y: 0 + }; + if (!targetInfo) { + return defaultPosition; + } + // If targetInfo is fetched by 'retrieveTargetInfo', + // old tree and new tree are the same tree, + // so the node still exists and we can visit it. + var targetNode = targetInfo.node; + var layout = targetNode.getLayout(); + if (!layout) { + return defaultPosition; + } + // Transform coord from local to container. + var targetCenter = [layout.width / 2, layout.height / 2]; + var node = targetNode; + while (node) { + var nodeLayout = node.getLayout(); + targetCenter[0] += nodeLayout.x; + targetCenter[1] += nodeLayout.y; + node = node.parentNode; + } + return { + x: layoutInfo.width / 2 - targetCenter[0], + y: layoutInfo.height / 2 - targetCenter[1] + }; + } + // Mark nodes visible for prunning when visual coding and rendering. + // Prunning depends on layout and root position, so we have to do it after layout. + function prunning(node, clipRect, viewAbovePath, viewRoot, depth) { + var nodeLayout = node.getLayout(); + var nodeInViewAbovePath = viewAbovePath[depth]; + var isAboveViewRoot = nodeInViewAbovePath && nodeInViewAbovePath === node; + if (nodeInViewAbovePath && !isAboveViewRoot || depth === viewAbovePath.length && node !== viewRoot) { + return; + } + node.setLayout({ + // isInView means: viewRoot sub tree + viewAbovePath + isInView: true, + // invisible only means: outside view clip so that the node can not + // see but still layout for animation preparation but not render. + invisible: !isAboveViewRoot && !clipRect.intersect(nodeLayout), + isAboveViewRoot: isAboveViewRoot + }, true); + // Transform to child coordinate. + var childClipRect = new BoundingRect(clipRect.x - nodeLayout.x, clipRect.y - nodeLayout.y, clipRect.width, clipRect.height); + each$4(node.viewChildren || [], function (child) { + prunning(child, childClipRect, viewAbovePath, viewRoot, depth + 1); + }); + } + function getUpperLabelHeight(model) { + return model.get(PATH_UPPER_LABEL_SHOW) ? model.get(PATH_UPPER_LABEL_HEIGHT) : 0; + } + + function install$c(registers) { + registers.registerSeriesModel(TreemapSeriesModel); + registers.registerChartView(TreemapView); + registers.registerVisual(treemapVisual); + registers.registerLayout(treemapLayout); + installTreemapAction(registers); + } + + function categoryFilter(ecModel) { + var legendModels = ecModel.findComponents({ + mainType: 'legend' + }); + if (!legendModels || !legendModels.length) { + return; + } + ecModel.eachSeriesByType('graph', function (graphSeries) { + var categoriesData = graphSeries.getCategoriesData(); + var graph = graphSeries.getGraph(); + var data = graph.data; + var categoryNames = categoriesData.mapArray(categoriesData.getName); + data.filterSelf(function (idx) { + var model = data.getItemModel(idx); + var category = model.getShallow('category'); + if (category != null) { + if (isNumber(category)) { + category = categoryNames[category]; + } + // If in any legend component the status is not selected. + for (var i = 0; i < legendModels.length; i++) { + if (!legendModels[i].isSelected(category)) { + return false; + } + } + } + return true; + }); + }); + } + + function categoryVisual(ecModel) { + var paletteScope = {}; + ecModel.eachSeriesByType('graph', function (seriesModel) { + var categoriesData = seriesModel.getCategoriesData(); + var data = seriesModel.getData(); + var categoryNameIdxMap = {}; + categoriesData.each(function (idx) { + var name = categoriesData.getName(idx); + // Add prefix to avoid conflict with Object.prototype. + categoryNameIdxMap['ec-' + name] = idx; + var itemModel = categoriesData.getItemModel(idx); + var style = itemModel.getModel('itemStyle').getItemStyle(); + if (!style.fill) { + // Get color from palette. + style.fill = seriesModel.getColorFromPalette(name, paletteScope); + } + categoriesData.setItemVisual(idx, 'style', style); + var symbolVisualList = ['symbol', 'symbolSize', 'symbolKeepAspect']; + for (var i = 0; i < symbolVisualList.length; i++) { + var symbolVisual = itemModel.getShallow(symbolVisualList[i], true); + if (symbolVisual != null) { + categoriesData.setItemVisual(idx, symbolVisualList[i], symbolVisual); + } + } + }); + // Assign category color to visual + if (categoriesData.count()) { + data.each(function (idx) { + var model = data.getItemModel(idx); + var categoryIdx = model.getShallow('category'); + if (categoryIdx != null) { + if (isString(categoryIdx)) { + categoryIdx = categoryNameIdxMap['ec-' + categoryIdx]; + } + var categoryStyle = categoriesData.getItemVisual(categoryIdx, 'style'); + var style = data.ensureUniqueItemVisual(idx, 'style'); + extend(style, categoryStyle); + var visualList = ['symbol', 'symbolSize', 'symbolKeepAspect']; + for (var i = 0; i < visualList.length; i++) { + data.setItemVisual(idx, visualList[i], categoriesData.getItemVisual(categoryIdx, visualList[i])); + } + } + }); + } + }); + } + + function normalize$2(a) { + if (!(a instanceof Array)) { + a = [a, a]; + } + return a; + } + function graphEdgeVisual(ecModel) { + ecModel.eachSeriesByType('graph', function (seriesModel) { + var graph = seriesModel.getGraph(); + var edgeData = seriesModel.getEdgeData(); + var symbolType = normalize$2(seriesModel.get('edgeSymbol')); + var symbolSize = normalize$2(seriesModel.get('edgeSymbolSize')); + // const colorQuery = ['lineStyle', 'color'] as const; + // const opacityQuery = ['lineStyle', 'opacity'] as const; + edgeData.setVisual('fromSymbol', symbolType && symbolType[0]); + edgeData.setVisual('toSymbol', symbolType && symbolType[1]); + edgeData.setVisual('fromSymbolSize', symbolSize && symbolSize[0]); + edgeData.setVisual('toSymbolSize', symbolSize && symbolSize[1]); + edgeData.setVisual('style', seriesModel.getModel('lineStyle').getLineStyle()); + edgeData.each(function (idx) { + var itemModel = edgeData.getItemModel(idx); + var edge = graph.getEdgeByIndex(idx); + var symbolType = normalize$2(itemModel.getShallow('symbol', true)); + var symbolSize = normalize$2(itemModel.getShallow('symbolSize', true)); + // Edge visual must after node visual + var style = itemModel.getModel('lineStyle').getLineStyle(); + var existsStyle = edgeData.ensureUniqueItemVisual(idx, 'style'); + extend(existsStyle, style); + switch (existsStyle.stroke) { + case 'source': + { + var nodeStyle = edge.node1.getVisual('style'); + existsStyle.stroke = nodeStyle && nodeStyle.fill; + break; + } + case 'target': + { + var nodeStyle = edge.node2.getVisual('style'); + existsStyle.stroke = nodeStyle && nodeStyle.fill; + break; + } + } + symbolType[0] && edge.setVisual('fromSymbol', symbolType[0]); + symbolType[1] && edge.setVisual('toSymbol', symbolType[1]); + symbolSize[0] && edge.setVisual('fromSymbolSize', symbolSize[0]); + symbolSize[1] && edge.setVisual('toSymbolSize', symbolSize[1]); + }); + }); + } + + var KEY_DELIMITER = '-->'; + /** + * params handler + * @param {module:echarts/model/SeriesModel} seriesModel + * @returns {*} + */ + var getAutoCurvenessParams = function (seriesModel) { + return seriesModel.get('autoCurveness') || null; + }; + /** + * Generate a list of edge curvatures, 20 is the default + * @param {module:echarts/model/SeriesModel} seriesModel + * @param {number} appendLength + * @return 20 => [0, -0.2, 0.2, -0.4, 0.4, -0.6, 0.6, -0.8, 0.8, -1, 1, -1.2, 1.2, -1.4, 1.4, -1.6, 1.6, -1.8, 1.8, -2] + */ + var createCurveness = function (seriesModel, appendLength) { + var autoCurvenessParmas = getAutoCurvenessParams(seriesModel); + var length = 20; + var curvenessList = []; + // handler the function set + if (isNumber(autoCurvenessParmas)) { + length = autoCurvenessParmas; + } else if (isArray(autoCurvenessParmas)) { + seriesModel.__curvenessList = autoCurvenessParmas; + return; + } + // append length + if (appendLength > length) { + length = appendLength; + } + // make sure the length is even + var len = length % 2 ? length + 2 : length + 3; + curvenessList = []; + for (var i = 0; i < len; i++) { + curvenessList.push((i % 2 ? i + 1 : i) / 10 * (i % 2 ? -1 : 1)); + } + seriesModel.__curvenessList = curvenessList; + }; + /** + * Create different cache key data in the positive and negative directions, in order to set the curvature later + * @param {number|string|module:echarts/data/Graph.Node} n1 + * @param {number|string|module:echarts/data/Graph.Node} n2 + * @param {module:echarts/model/SeriesModel} seriesModel + * @returns {string} key + */ + var getKeyOfEdges = function (n1, n2, seriesModel) { + var source = [n1.id, n1.dataIndex].join('.'); + var target = [n2.id, n2.dataIndex].join('.'); + return [seriesModel.uid, source, target].join(KEY_DELIMITER); + }; + /** + * get opposite key + * @param {string} key + * @returns {string} + */ + var getOppositeKey = function (key) { + var keys = key.split(KEY_DELIMITER); + return [keys[0], keys[2], keys[1]].join(KEY_DELIMITER); + }; + /** + * get edgeMap with key + * @param edge + * @param {module:echarts/model/SeriesModel} seriesModel + */ + var getEdgeFromMap = function (edge, seriesModel) { + var key = getKeyOfEdges(edge.node1, edge.node2, seriesModel); + return seriesModel.__edgeMap[key]; + }; + /** + * calculate all cases total length + * @param edge + * @param seriesModel + * @returns {number} + */ + var getTotalLengthBetweenNodes = function (edge, seriesModel) { + var len = getEdgeMapLengthWithKey(getKeyOfEdges(edge.node1, edge.node2, seriesModel), seriesModel); + var lenV = getEdgeMapLengthWithKey(getKeyOfEdges(edge.node2, edge.node1, seriesModel), seriesModel); + return len + lenV; + }; + /** + * + * @param key + */ + var getEdgeMapLengthWithKey = function (key, seriesModel) { + var edgeMap = seriesModel.__edgeMap; + return edgeMap[key] ? edgeMap[key].length : 0; + }; + /** + * Count the number of edges between the same two points, used to obtain the curvature table and the parity of the edge + * @see /graph/GraphSeries.js@getInitialData + * @param {module:echarts/model/SeriesModel} seriesModel + */ + function initCurvenessList(seriesModel) { + if (!getAutoCurvenessParams(seriesModel)) { + return; + } + seriesModel.__curvenessList = []; + seriesModel.__edgeMap = {}; + // calc the array of curveness List + createCurveness(seriesModel); + } + /** + * set edgeMap with key + * @param {number|string|module:echarts/data/Graph.Node} n1 + * @param {number|string|module:echarts/data/Graph.Node} n2 + * @param {module:echarts/model/SeriesModel} seriesModel + * @param {number} index + */ + function createEdgeMapForCurveness(n1, n2, seriesModel, index) { + if (!getAutoCurvenessParams(seriesModel)) { + return; + } + var key = getKeyOfEdges(n1, n2, seriesModel); + var edgeMap = seriesModel.__edgeMap; + var oppositeEdges = edgeMap[getOppositeKey(key)]; + // set direction + if (edgeMap[key] && !oppositeEdges) { + edgeMap[key].isForward = true; + } else if (oppositeEdges && edgeMap[key]) { + oppositeEdges.isForward = true; + edgeMap[key].isForward = false; + } + edgeMap[key] = edgeMap[key] || []; + edgeMap[key].push(index); + } + /** + * get curvature for edge + * @param edge + * @param {module:echarts/model/SeriesModel} seriesModel + * @param index + */ + function getCurvenessForEdge(edge, seriesModel, index, needReverse) { + var autoCurvenessParams = getAutoCurvenessParams(seriesModel); + var isArrayParam = isArray(autoCurvenessParams); + if (!autoCurvenessParams) { + return null; + } + var edgeArray = getEdgeFromMap(edge, seriesModel); + if (!edgeArray) { + return null; + } + var edgeIndex = -1; + for (var i = 0; i < edgeArray.length; i++) { + if (edgeArray[i] === index) { + edgeIndex = i; + break; + } + } + // if totalLen is Longer createCurveness + var totalLen = getTotalLengthBetweenNodes(edge, seriesModel); + createCurveness(seriesModel, totalLen); + edge.lineStyle = edge.lineStyle || {}; + // if is opposite edge, must set curvenss to opposite number + var curKey = getKeyOfEdges(edge.node1, edge.node2, seriesModel); + var curvenessList = seriesModel.__curvenessList; + // if pass array no need parity + var parityCorrection = isArrayParam ? 0 : totalLen % 2 ? 0 : 1; + if (!edgeArray.isForward) { + // the opposite edge show outside + var oppositeKey = getOppositeKey(curKey); + var len = getEdgeMapLengthWithKey(oppositeKey, seriesModel); + var resValue = curvenessList[edgeIndex + len + parityCorrection]; + // isNeedReverse, simple, force type need reverse the curveness in the junction of the forword and the opposite + if (needReverse) { + // set as array may make the parity handle with the len of opposite + if (isArrayParam) { + if (autoCurvenessParams && autoCurvenessParams[0] === 0) { + return (len + parityCorrection) % 2 ? resValue : -resValue; + } else { + return ((len % 2 ? 0 : 1) + parityCorrection) % 2 ? resValue : -resValue; + } + } else { + return (len + parityCorrection) % 2 ? resValue : -resValue; + } + } else { + return curvenessList[edgeIndex + len + parityCorrection]; + } + } else { + return curvenessList[parityCorrection + edgeIndex]; + } + } + + function simpleLayout(seriesModel) { + var coordSys = seriesModel.coordinateSystem; + if (coordSys && coordSys.type !== 'view') { + return; + } + var graph = seriesModel.getGraph(); + graph.eachNode(function (node) { + var model = node.getModel(); + node.setLayout([+model.get('x'), +model.get('y')]); + }); + simpleLayoutEdge(graph, seriesModel); + } + function simpleLayoutEdge(graph, seriesModel) { + graph.eachEdge(function (edge, index) { + var curveness = retrieve3(edge.getModel().get(['lineStyle', 'curveness']), -getCurvenessForEdge(edge, seriesModel, index, true), 0); + var p1 = clone$1(edge.node1.getLayout()); + var p2 = clone$1(edge.node2.getLayout()); + var points = [p1, p2]; + if (+curveness) { + points.push([(p1[0] + p2[0]) / 2 - (p1[1] - p2[1]) * curveness, (p1[1] + p2[1]) / 2 - (p2[0] - p1[0]) * curveness]); + } + edge.setLayout(points); + }); + } + + function graphSimpleLayout(ecModel, api) { + ecModel.eachSeriesByType('graph', function (seriesModel) { + var layout = seriesModel.get('layout'); + var coordSys = seriesModel.coordinateSystem; + if (coordSys && coordSys.type !== 'view') { + var data_1 = seriesModel.getData(); + var dimensions_1 = []; + each(coordSys.dimensions, function (coordDim) { + dimensions_1 = dimensions_1.concat(data_1.mapDimensionsAll(coordDim)); + }); + for (var dataIndex = 0; dataIndex < data_1.count(); dataIndex++) { + var value = []; + var hasValue = false; + for (var i = 0; i < dimensions_1.length; i++) { + var val = data_1.get(dimensions_1[i], dataIndex); + if (!isNaN(val)) { + hasValue = true; + } + value.push(val); + } + if (hasValue) { + data_1.setItemLayout(dataIndex, coordSys.dataToPoint(value)); + } else { + // Also {Array.<number>}, not undefined to avoid if...else... statement + data_1.setItemLayout(dataIndex, [NaN, NaN]); + } + } + simpleLayoutEdge(data_1.graph, seriesModel); + } else if (!layout || layout === 'none') { + simpleLayout(seriesModel); + } + }); + } + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + + /** + * AUTO-GENERATED FILE. DO NOT MODIFY. + */ + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + function getNodeGlobalScale(seriesModel) { + var coordSys = seriesModel.coordinateSystem; + if (coordSys.type !== 'view') { + return 1; + } + var nodeScaleRatio = seriesModel.option.nodeScaleRatio; + var groupZoom = coordSys.scaleX; + // Scale node when zoom changes + var roamZoom = coordSys.getZoom(); + var nodeScale = (roamZoom - 1) * nodeScaleRatio + 1; + return nodeScale / groupZoom; + } + function getSymbolSize(node) { + var symbolSize = node.getVisual('symbolSize'); + if (symbolSize instanceof Array) { + symbolSize = (symbolSize[0] + symbolSize[1]) / 2; + } + return +symbolSize; + } + + var PI$6 = Math.PI; + var _symbolRadiansHalf = []; + /** + * `basedOn` can be: + * 'value': + * This layout is not accurate and have same bad case. For example, + * if the min value is very smaller than the max value, the nodes + * with the min value probably overlap even though there is enough + * space to layout them. So we only use this approach in the as the + * init layout of the force layout. + * FIXME + * Probably we do not need this method any more but use + * `basedOn: 'symbolSize'` in force layout if + * delay its init operations to GraphView. + * 'symbolSize': + * This approach work only if all of the symbol size calculated. + * That is, the progressive rendering is not applied to graph. + * FIXME + * If progressive rendering is applied to graph some day, + * probably we have to use `basedOn: 'value'`. + */ + function circularLayout(seriesModel, basedOn, draggingNode, pointer) { + var coordSys = seriesModel.coordinateSystem; + if (coordSys && coordSys.type !== 'view') { + return; + } + var rect = coordSys.getBoundingRect(); + var nodeData = seriesModel.getData(); + var graph = nodeData.graph; + var cx = rect.width / 2 + rect.x; + var cy = rect.height / 2 + rect.y; + var r = Math.min(rect.width, rect.height) / 2; + var count = nodeData.count(); + nodeData.setLayout({ + cx: cx, + cy: cy + }); + if (!count) { + return; + } + if (draggingNode) { + var _a = coordSys.pointToData(pointer), + tempX = _a[0], + tempY = _a[1]; + var v = [tempX - cx, tempY - cy]; + normalize(v, v); + scale(v, v, r); + draggingNode.setLayout([cx + v[0], cy + v[1]], true); + var circularRotateLabel = seriesModel.get(['circular', 'rotateLabel']); + rotateNodeLabel(draggingNode, circularRotateLabel, cx, cy); + } + _layoutNodesBasedOn[basedOn](seriesModel, graph, nodeData, r, cx, cy, count); + graph.eachEdge(function (edge, index) { + var curveness = retrieve3(edge.getModel().get(['lineStyle', 'curveness']), getCurvenessForEdge(edge, seriesModel, index), 0); + var p1 = clone$1(edge.node1.getLayout()); + var p2 = clone$1(edge.node2.getLayout()); + var cp1; + var x12 = (p1[0] + p2[0]) / 2; + var y12 = (p1[1] + p2[1]) / 2; + if (+curveness) { + curveness *= 3; + cp1 = [cx * curveness + x12 * (1 - curveness), cy * curveness + y12 * (1 - curveness)]; + } + edge.setLayout([p1, p2, cp1]); + }); + } + var _layoutNodesBasedOn = { + value: function (seriesModel, graph, nodeData, r, cx, cy, count) { + var angle = 0; + var sum = nodeData.getSum('value'); + var unitAngle = Math.PI * 2 / (sum || count); + graph.eachNode(function (node) { + var value = node.getValue('value'); + var radianHalf = unitAngle * (sum ? value : 1) / 2; + angle += radianHalf; + node.setLayout([r * Math.cos(angle) + cx, r * Math.sin(angle) + cy]); + angle += radianHalf; + }); + }, + symbolSize: function (seriesModel, graph, nodeData, r, cx, cy, count) { + var sumRadian = 0; + _symbolRadiansHalf.length = count; + var nodeScale = getNodeGlobalScale(seriesModel); + graph.eachNode(function (node) { + var symbolSize = getSymbolSize(node); + // Normally this case will not happen, but we still add + // some the defensive code (2px is an arbitrary value). + isNaN(symbolSize) && (symbolSize = 2); + symbolSize < 0 && (symbolSize = 0); + symbolSize *= nodeScale; + var symbolRadianHalf = Math.asin(symbolSize / 2 / r); + // when `symbolSize / 2` is bigger than `r`. + isNaN(symbolRadianHalf) && (symbolRadianHalf = PI$6 / 2); + _symbolRadiansHalf[node.dataIndex] = symbolRadianHalf; + sumRadian += symbolRadianHalf * 2; + }); + var halfRemainRadian = (2 * PI$6 - sumRadian) / count / 2; + var angle = 0; + graph.eachNode(function (node) { + var radianHalf = halfRemainRadian + _symbolRadiansHalf[node.dataIndex]; + angle += radianHalf; + // init circular layout for + // 1. layout undefined node + // 2. not fixed node + (!node.getLayout() || !node.getLayout().fixed) && node.setLayout([r * Math.cos(angle) + cx, r * Math.sin(angle) + cy]); + angle += radianHalf; + }); + } + }; + function rotateNodeLabel(node, circularRotateLabel, cx, cy) { + var el = node.getGraphicEl(); + // need to check if el exists. '-' value may not create node element. + if (!el) { + return; + } + var nodeModel = node.getModel(); + var labelRotate = nodeModel.get(['label', 'rotate']) || 0; + var symbolPath = el.getSymbolPath(); + if (circularRotateLabel) { + var pos = node.getLayout(); + var rad = Math.atan2(pos[1] - cy, pos[0] - cx); + if (rad < 0) { + rad = Math.PI * 2 + rad; + } + var isLeft = pos[0] < cx; + if (isLeft) { + rad = rad - Math.PI; + } + var textPosition = isLeft ? 'left' : 'right'; + symbolPath.setTextConfig({ + rotation: -rad, + position: textPosition, + origin: 'center' + }); + var emphasisState = symbolPath.ensureState('emphasis'); + extend(emphasisState.textConfig || (emphasisState.textConfig = {}), { + position: textPosition + }); + } else { + symbolPath.setTextConfig({ + rotation: labelRotate *= Math.PI / 180 + }); + } + } + + function graphCircularLayout(ecModel) { + ecModel.eachSeriesByType('graph', function (seriesModel) { + if (seriesModel.get('layout') === 'circular') { + circularLayout(seriesModel, 'symbolSize'); + } + }); + } + + var scaleAndAdd$1 = scaleAndAdd; + // function adjacentNode(n, e) { + // return e.n1 === n ? e.n2 : e.n1; + // } + function forceLayout(inNodes, inEdges, opts) { + var nodes = inNodes; + var edges = inEdges; + var rect = opts.rect; + var width = rect.width; + var height = rect.height; + var center = [rect.x + width / 2, rect.y + height / 2]; + // let scale = opts.scale || 1; + var gravity = opts.gravity == null ? 0.1 : opts.gravity; + // for (let i = 0; i < edges.length; i++) { + // let e = edges[i]; + // let n1 = e.n1; + // let n2 = e.n2; + // n1.edges = n1.edges || []; + // n2.edges = n2.edges || []; + // n1.edges.push(e); + // n2.edges.push(e); + // } + // Init position + for (var i = 0; i < nodes.length; i++) { + var n = nodes[i]; + if (!n.p) { + n.p = create(width * (Math.random() - 0.5) + center[0], height * (Math.random() - 0.5) + center[1]); + } + n.pp = clone$1(n.p); + n.edges = null; + } + // Formula in 'Graph Drawing by Force-directed Placement' + // let k = scale * Math.sqrt(width * height / nodes.length); + // let k2 = k * k; + var initialFriction = opts.friction == null ? 0.6 : opts.friction; + var friction = initialFriction; + var beforeStepCallback; + var afterStepCallback; + return { + warmUp: function () { + friction = initialFriction * 0.8; + }, + setFixed: function (idx) { + nodes[idx].fixed = true; + }, + setUnfixed: function (idx) { + nodes[idx].fixed = false; + }, + /** + * Before step hook + */ + beforeStep: function (cb) { + beforeStepCallback = cb; + }, + /** + * After step hook + */ + afterStep: function (cb) { + afterStepCallback = cb; + }, + /** + * Some formulas were originally copied from "d3.js" + * https://github.com/d3/d3/blob/b516d77fb8566b576088e73410437494717ada26/src/layout/force.js + * with some modifications made for this project. + * See the license statement at the head of this file. + */ + step: function (cb) { + beforeStepCallback && beforeStepCallback(nodes, edges); + var v12 = []; + var nLen = nodes.length; + for (var i = 0; i < edges.length; i++) { + var e = edges[i]; + if (e.ignoreForceLayout) { + continue; + } + var n1 = e.n1; + var n2 = e.n2; + sub(v12, n2.p, n1.p); + var d = len(v12) - e.d; + var w = n2.w / (n1.w + n2.w); + if (isNaN(w)) { + w = 0; + } + normalize(v12, v12); + !n1.fixed && scaleAndAdd$1(n1.p, n1.p, v12, w * d * friction); + !n2.fixed && scaleAndAdd$1(n2.p, n2.p, v12, -(1 - w) * d * friction); + } + // Gravity + for (var i = 0; i < nLen; i++) { + var n = nodes[i]; + if (!n.fixed) { + sub(v12, center, n.p); + // let d = vec2.len(v12); + // vec2.scale(v12, v12, 1 / d); + // let gravityFactor = gravity; + scaleAndAdd$1(n.p, n.p, v12, gravity * friction); + } + } + // Repulsive + // PENDING + for (var i = 0; i < nLen; i++) { + var n1 = nodes[i]; + for (var j = i + 1; j < nLen; j++) { + var n2 = nodes[j]; + sub(v12, n2.p, n1.p); + var d = len(v12); + if (d === 0) { + // Random repulse + set(v12, Math.random() - 0.5, Math.random() - 0.5); + d = 1; + } + var repFact = (n1.rep + n2.rep) / d / d; + !n1.fixed && scaleAndAdd$1(n1.pp, n1.pp, v12, repFact); + !n2.fixed && scaleAndAdd$1(n2.pp, n2.pp, v12, -repFact); + } + } + var v = []; + for (var i = 0; i < nLen; i++) { + var n = nodes[i]; + if (!n.fixed) { + sub(v, n.p, n.pp); + scaleAndAdd$1(n.p, n.p, v, friction); + copy(n.pp, n.p); + } + } + friction = friction * 0.992; + var finished = friction < 0.01; + afterStepCallback && afterStepCallback(nodes, edges, finished); + cb && cb(finished); + } + }; + } + + function graphForceLayout(ecModel) { + ecModel.eachSeriesByType('graph', function (graphSeries) { + var coordSys = graphSeries.coordinateSystem; + if (coordSys && coordSys.type !== 'view') { + return; + } + if (graphSeries.get('layout') === 'force') { + var preservedPoints_1 = graphSeries.preservedPoints || {}; + var graph_1 = graphSeries.getGraph(); + var nodeData_1 = graph_1.data; + var edgeData = graph_1.edgeData; + var forceModel = graphSeries.getModel('force'); + var initLayout = forceModel.get('initLayout'); + if (graphSeries.preservedPoints) { + nodeData_1.each(function (idx) { + var id = nodeData_1.getId(idx); + nodeData_1.setItemLayout(idx, preservedPoints_1[id] || [NaN, NaN]); + }); + } else if (!initLayout || initLayout === 'none') { + simpleLayout(graphSeries); + } else if (initLayout === 'circular') { + circularLayout(graphSeries, 'value'); + } + var nodeDataExtent_1 = nodeData_1.getDataExtent('value'); + var edgeDataExtent_1 = edgeData.getDataExtent('value'); + // let edgeDataExtent = edgeData.getDataExtent('value'); + var repulsion = forceModel.get('repulsion'); + var edgeLength = forceModel.get('edgeLength'); + var repulsionArr_1 = isArray(repulsion) ? repulsion : [repulsion, repulsion]; + var edgeLengthArr_1 = isArray(edgeLength) ? edgeLength : [edgeLength, edgeLength]; + // Larger value has smaller length + edgeLengthArr_1 = [edgeLengthArr_1[1], edgeLengthArr_1[0]]; + var nodes_1 = nodeData_1.mapArray('value', function (value, idx) { + var point = nodeData_1.getItemLayout(idx); + var rep = linearMap(value, nodeDataExtent_1, repulsionArr_1); + if (isNaN(rep)) { + rep = (repulsionArr_1[0] + repulsionArr_1[1]) / 2; + } + return { + w: rep, + rep: rep, + fixed: nodeData_1.getItemModel(idx).get('fixed'), + p: !point || isNaN(point[0]) || isNaN(point[1]) ? null : point + }; + }); + var edges = edgeData.mapArray('value', function (value, idx) { + var edge = graph_1.getEdgeByIndex(idx); + var d = linearMap(value, edgeDataExtent_1, edgeLengthArr_1); + if (isNaN(d)) { + d = (edgeLengthArr_1[0] + edgeLengthArr_1[1]) / 2; + } + var edgeModel = edge.getModel(); + var curveness = retrieve3(edge.getModel().get(['lineStyle', 'curveness']), -getCurvenessForEdge(edge, graphSeries, idx, true), 0); + return { + n1: nodes_1[edge.node1.dataIndex], + n2: nodes_1[edge.node2.dataIndex], + d: d, + curveness: curveness, + ignoreForceLayout: edgeModel.get('ignoreForceLayout') + }; + }); + // let coordSys = graphSeries.coordinateSystem; + var rect = coordSys.getBoundingRect(); + var forceInstance = forceLayout(nodes_1, edges, { + rect: rect, + gravity: forceModel.get('gravity'), + friction: forceModel.get('friction') + }); + forceInstance.beforeStep(function (nodes, edges) { + for (var i = 0, l = nodes.length; i < l; i++) { + if (nodes[i].fixed) { + // Write back to layout instance + copy(nodes[i].p, graph_1.getNodeByIndex(i).getLayout()); + } + } + }); + forceInstance.afterStep(function (nodes, edges, stopped) { + for (var i = 0, l = nodes.length; i < l; i++) { + if (!nodes[i].fixed) { + graph_1.getNodeByIndex(i).setLayout(nodes[i].p); + } + preservedPoints_1[nodeData_1.getId(i)] = nodes[i].p; + } + for (var i = 0, l = edges.length; i < l; i++) { + var e = edges[i]; + var edge = graph_1.getEdgeByIndex(i); + var p1 = e.n1.p; + var p2 = e.n2.p; + var points = edge.getLayout(); + points = points ? points.slice() : []; + points[0] = points[0] || []; + points[1] = points[1] || []; + copy(points[0], p1); + copy(points[1], p2); + if (+e.curveness) { + points[2] = [(p1[0] + p2[0]) / 2 - (p1[1] - p2[1]) * e.curveness, (p1[1] + p2[1]) / 2 - (p2[0] - p1[0]) * e.curveness]; + } + edge.setLayout(points); + } + }); + graphSeries.forceLayout = forceInstance; + graphSeries.preservedPoints = preservedPoints_1; + // Step to get the layout + forceInstance.step(); + } else { + // Remove prev injected forceLayout instance + graphSeries.forceLayout = null; + } + }); + } + + function getViewRect$2(seriesModel, api, aspect) { + var option = extend(seriesModel.getBoxLayoutParams(), { + aspect: aspect + }); + return getLayoutRect(option, { + width: api.getWidth(), + height: api.getHeight() + }); + } + function createViewCoordSys(ecModel, api) { + var viewList = []; + ecModel.eachSeriesByType('graph', function (seriesModel) { + var coordSysType = seriesModel.get('coordinateSystem'); + if (!coordSysType || coordSysType === 'view') { + var data_1 = seriesModel.getData(); + var positions = data_1.mapArray(function (idx) { + var itemModel = data_1.getItemModel(idx); + return [+itemModel.get('x'), +itemModel.get('y')]; + }); + var min = []; + var max = []; + fromPoints(positions, min, max); + // If width or height is 0 + if (max[0] - min[0] === 0) { + max[0] += 1; + min[0] -= 1; + } + if (max[1] - min[1] === 0) { + max[1] += 1; + min[1] -= 1; + } + var aspect = (max[0] - min[0]) / (max[1] - min[1]); + // FIXME If get view rect after data processed? + var viewRect = getViewRect$2(seriesModel, api, aspect); + // Position may be NaN, use view rect instead + if (isNaN(aspect)) { + min = [viewRect.x, viewRect.y]; + max = [viewRect.x + viewRect.width, viewRect.y + viewRect.height]; + } + var bbWidth = max[0] - min[0]; + var bbHeight = max[1] - min[1]; + var viewWidth = viewRect.width; + var viewHeight = viewRect.height; + var viewCoordSys = seriesModel.coordinateSystem = new View(); + viewCoordSys.zoomLimit = seriesModel.get('scaleLimit'); + viewCoordSys.setBoundingRect(min[0], min[1], bbWidth, bbHeight); + viewCoordSys.setViewRect(viewRect.x, viewRect.y, viewWidth, viewHeight); + // Update roam info + viewCoordSys.setCenter(seriesModel.get('center'), api); + viewCoordSys.setZoom(seriesModel.get('zoom')); + viewList.push(viewCoordSys); + } + }); + return viewList; + } + + var straightLineProto = Line.prototype; + var bezierCurveProto = BezierCurve.prototype; + var StraightLineShape = /** @class */function () { + function StraightLineShape() { + // Start point + this.x1 = 0; + this.y1 = 0; + // End point + this.x2 = 0; + this.y2 = 0; + this.percent = 1; + } + return StraightLineShape; + }(); + var CurveShape = /** @class */function (_super) { + __extends(CurveShape, _super); + function CurveShape() { + return _super !== null && _super.apply(this, arguments) || this; + } + return CurveShape; + }(StraightLineShape); + function isStraightLine(shape) { + return isNaN(+shape.cpx1) || isNaN(+shape.cpy1); + } + var ECLinePath = /** @class */function (_super) { + __extends(ECLinePath, _super); + function ECLinePath(opts) { + var _this = _super.call(this, opts) || this; + _this.type = 'ec-line'; + return _this; + } + ECLinePath.prototype.getDefaultStyle = function () { + return { + stroke: '#000', + fill: null + }; + }; + ECLinePath.prototype.getDefaultShape = function () { + return new StraightLineShape(); + }; + ECLinePath.prototype.buildPath = function (ctx, shape) { + if (isStraightLine(shape)) { + straightLineProto.buildPath.call(this, ctx, shape); + } else { + bezierCurveProto.buildPath.call(this, ctx, shape); + } + }; + ECLinePath.prototype.pointAt = function (t) { + if (isStraightLine(this.shape)) { + return straightLineProto.pointAt.call(this, t); + } else { + return bezierCurveProto.pointAt.call(this, t); + } + }; + ECLinePath.prototype.tangentAt = function (t) { + var shape = this.shape; + var p = isStraightLine(shape) ? [shape.x2 - shape.x1, shape.y2 - shape.y1] : bezierCurveProto.tangentAt.call(this, t); + return normalize(p, p); + }; + return ECLinePath; + }(Path); + + var SYMBOL_CATEGORIES = ['fromSymbol', 'toSymbol']; + function makeSymbolTypeKey(symbolCategory) { + return '_' + symbolCategory + 'Type'; + } + function makeSymbolTypeValue(name, lineData, idx) { + var symbolType = lineData.getItemVisual(idx, name); + if (!symbolType || symbolType === 'none') { + return symbolType; + } + var symbolSize = lineData.getItemVisual(idx, name + 'Size'); + var symbolRotate = lineData.getItemVisual(idx, name + 'Rotate'); + var symbolOffset = lineData.getItemVisual(idx, name + 'Offset'); + var symbolKeepAspect = lineData.getItemVisual(idx, name + 'KeepAspect'); + var symbolSizeArr = normalizeSymbolSize(symbolSize); + var symbolOffsetArr = normalizeSymbolOffset(symbolOffset || 0, symbolSizeArr); + return symbolType + symbolSizeArr + symbolOffsetArr + (symbolRotate || '') + (symbolKeepAspect || ''); + } + /** + * @inner + */ + function createSymbol$1(name, lineData, idx) { + var symbolType = lineData.getItemVisual(idx, name); + if (!symbolType || symbolType === 'none') { + return; + } + var symbolSize = lineData.getItemVisual(idx, name + 'Size'); + var symbolRotate = lineData.getItemVisual(idx, name + 'Rotate'); + var symbolOffset = lineData.getItemVisual(idx, name + 'Offset'); + var symbolKeepAspect = lineData.getItemVisual(idx, name + 'KeepAspect'); + var symbolSizeArr = normalizeSymbolSize(symbolSize); + var symbolOffsetArr = normalizeSymbolOffset(symbolOffset || 0, symbolSizeArr); + var symbolPath = createSymbol(symbolType, -symbolSizeArr[0] / 2 + symbolOffsetArr[0], -symbolSizeArr[1] / 2 + symbolOffsetArr[1], symbolSizeArr[0], symbolSizeArr[1], null, symbolKeepAspect); + symbolPath.__specifiedRotation = symbolRotate == null || isNaN(symbolRotate) ? void 0 : +symbolRotate * Math.PI / 180 || 0; + symbolPath.name = name; + return symbolPath; + } + function createLine(points) { + var line = new ECLinePath({ + name: 'line', + subPixelOptimize: true + }); + setLinePoints(line.shape, points); + return line; + } + function setLinePoints(targetShape, points) { + targetShape.x1 = points[0][0]; + targetShape.y1 = points[0][1]; + targetShape.x2 = points[1][0]; + targetShape.y2 = points[1][1]; + targetShape.percent = 1; + var cp1 = points[2]; + if (cp1) { + targetShape.cpx1 = cp1[0]; + targetShape.cpy1 = cp1[1]; + } else { + targetShape.cpx1 = NaN; + targetShape.cpy1 = NaN; + } + } + var Line$1 = /** @class */function (_super) { + __extends(Line, _super); + function Line(lineData, idx, seriesScope) { + var _this = _super.call(this) || this; + _this._createLine(lineData, idx, seriesScope); + return _this; + } + Line.prototype._createLine = function (lineData, idx, seriesScope) { + var seriesModel = lineData.hostModel; + var linePoints = lineData.getItemLayout(idx); + var line = createLine(linePoints); + line.shape.percent = 0; + initProps(line, { + shape: { + percent: 1 + } + }, seriesModel, idx); + this.add(line); + each(SYMBOL_CATEGORIES, function (symbolCategory) { + var symbol = createSymbol$1(symbolCategory, lineData, idx); + // symbols must added after line to make sure + // it will be updated after line#update. + // Or symbol position and rotation update in line#beforeUpdate will be one frame slow + this.add(symbol); + this[makeSymbolTypeKey(symbolCategory)] = makeSymbolTypeValue(symbolCategory, lineData, idx); + }, this); + this._updateCommonStl(lineData, idx, seriesScope); + }; + // TODO More strict on the List type in parameters? + Line.prototype.updateData = function (lineData, idx, seriesScope) { + var seriesModel = lineData.hostModel; + var line = this.childOfName('line'); + var linePoints = lineData.getItemLayout(idx); + var target = { + shape: {} + }; + setLinePoints(target.shape, linePoints); + updateProps(line, target, seriesModel, idx); + each(SYMBOL_CATEGORIES, function (symbolCategory) { + var symbolType = makeSymbolTypeValue(symbolCategory, lineData, idx); + var key = makeSymbolTypeKey(symbolCategory); + // Symbol changed + if (this[key] !== symbolType) { + this.remove(this.childOfName(symbolCategory)); + var symbol = createSymbol$1(symbolCategory, lineData, idx); + this.add(symbol); + } + this[key] = symbolType; + }, this); + this._updateCommonStl(lineData, idx, seriesScope); + }; + Line.prototype.getLinePath = function () { + return this.childAt(0); + }; + Line.prototype._updateCommonStl = function (lineData, idx, seriesScope) { + var seriesModel = lineData.hostModel; + var line = this.childOfName('line'); + var emphasisLineStyle = seriesScope && seriesScope.emphasisLineStyle; + var blurLineStyle = seriesScope && seriesScope.blurLineStyle; + var selectLineStyle = seriesScope && seriesScope.selectLineStyle; + var labelStatesModels = seriesScope && seriesScope.labelStatesModels; + var emphasisDisabled = seriesScope && seriesScope.emphasisDisabled; + var focus = seriesScope && seriesScope.focus; + var blurScope = seriesScope && seriesScope.blurScope; + // Optimization for large dataset + if (!seriesScope || lineData.hasItemOption) { + var itemModel = lineData.getItemModel(idx); + var emphasisModel = itemModel.getModel('emphasis'); + emphasisLineStyle = emphasisModel.getModel('lineStyle').getLineStyle(); + blurLineStyle = itemModel.getModel(['blur', 'lineStyle']).getLineStyle(); + selectLineStyle = itemModel.getModel(['select', 'lineStyle']).getLineStyle(); + emphasisDisabled = emphasisModel.get('disabled'); + focus = emphasisModel.get('focus'); + blurScope = emphasisModel.get('blurScope'); + labelStatesModels = getLabelStatesModels(itemModel); + } + var lineStyle = lineData.getItemVisual(idx, 'style'); + var visualColor = lineStyle.stroke; + line.useStyle(lineStyle); + line.style.fill = null; + line.style.strokeNoScale = true; + line.ensureState('emphasis').style = emphasisLineStyle; + line.ensureState('blur').style = blurLineStyle; + line.ensureState('select').style = selectLineStyle; + // Update symbol + each(SYMBOL_CATEGORIES, function (symbolCategory) { + var symbol = this.childOfName(symbolCategory); + if (symbol) { + // Share opacity and color with line. + symbol.setColor(visualColor); + symbol.style.opacity = lineStyle.opacity; + for (var i = 0; i < SPECIAL_STATES.length; i++) { + var stateName = SPECIAL_STATES[i]; + var lineState = line.getState(stateName); + if (lineState) { + var lineStateStyle = lineState.style || {}; + var state = symbol.ensureState(stateName); + var stateStyle = state.style || (state.style = {}); + if (lineStateStyle.stroke != null) { + stateStyle[symbol.__isEmptyBrush ? 'stroke' : 'fill'] = lineStateStyle.stroke; + } + if (lineStateStyle.opacity != null) { + stateStyle.opacity = lineStateStyle.opacity; + } + } + } + symbol.markRedraw(); + } + }, this); + var rawVal = seriesModel.getRawValue(idx); + setLabelStyle(this, labelStatesModels, { + labelDataIndex: idx, + labelFetcher: { + getFormattedLabel: function (dataIndex, stateName) { + return seriesModel.getFormattedLabel(dataIndex, stateName, lineData.dataType); + } + }, + inheritColor: visualColor || '#000', + defaultOpacity: lineStyle.opacity, + defaultText: (rawVal == null ? lineData.getName(idx) : isFinite(rawVal) ? round(rawVal) : rawVal) + '' + }); + var label = this.getTextContent(); + // Always set `textStyle` even if `normalStyle.text` is null, because default + // values have to be set on `normalStyle`. + if (label) { + var labelNormalModel = labelStatesModels.normal; + label.__align = label.style.align; + label.__verticalAlign = label.style.verticalAlign; + // 'start', 'middle', 'end' + label.__position = labelNormalModel.get('position') || 'middle'; + var distance = labelNormalModel.get('distance'); + if (!isArray(distance)) { + distance = [distance, distance]; + } + label.__labelDistance = distance; + } + this.setTextConfig({ + position: null, + local: true, + inside: false // Can't be inside for stroke element. + }); + + toggleHoverEmphasis(this, focus, blurScope, emphasisDisabled); + }; + Line.prototype.highlight = function () { + enterEmphasis(this); + }; + Line.prototype.downplay = function () { + leaveEmphasis(this); + }; + Line.prototype.updateLayout = function (lineData, idx) { + this.setLinePoints(lineData.getItemLayout(idx)); + }; + Line.prototype.setLinePoints = function (points) { + var linePath = this.childOfName('line'); + setLinePoints(linePath.shape, points); + linePath.dirty(); + }; + Line.prototype.beforeUpdate = function () { + var lineGroup = this; + var symbolFrom = lineGroup.childOfName('fromSymbol'); + var symbolTo = lineGroup.childOfName('toSymbol'); + var label = lineGroup.getTextContent(); + // Quick reject + if (!symbolFrom && !symbolTo && (!label || label.ignore)) { + return; + } + var invScale = 1; + var parentNode = this.parent; + while (parentNode) { + if (parentNode.scaleX) { + invScale /= parentNode.scaleX; + } + parentNode = parentNode.parent; + } + var line = lineGroup.childOfName('line'); + // If line not changed + // FIXME Parent scale changed + if (!this.__dirty && !line.__dirty) { + return; + } + var percent = line.shape.percent; + var fromPos = line.pointAt(0); + var toPos = line.pointAt(percent); + var d = sub([], toPos, fromPos); + normalize(d, d); + function setSymbolRotation(symbol, percent) { + // Fix #12388 + // when symbol is set to be 'arrow' in markLine, + // symbolRotate value will be ignored, and compulsively use tangent angle. + // rotate by default if symbol rotation is not specified + var specifiedRotation = symbol.__specifiedRotation; + if (specifiedRotation == null) { + var tangent = line.tangentAt(percent); + symbol.attr('rotation', (percent === 1 ? -1 : 1) * Math.PI / 2 - Math.atan2(tangent[1], tangent[0])); + } else { + symbol.attr('rotation', specifiedRotation); + } + } + if (symbolFrom) { + symbolFrom.setPosition(fromPos); + setSymbolRotation(symbolFrom, 0); + symbolFrom.scaleX = symbolFrom.scaleY = invScale * percent; + symbolFrom.markRedraw(); + } + if (symbolTo) { + symbolTo.setPosition(toPos); + setSymbolRotation(symbolTo, 1); + symbolTo.scaleX = symbolTo.scaleY = invScale * percent; + symbolTo.markRedraw(); + } + if (label && !label.ignore) { + label.x = label.y = 0; + label.originX = label.originY = 0; + var textAlign = void 0; + var textVerticalAlign = void 0; + var distance = label.__labelDistance; + var distanceX = distance[0] * invScale; + var distanceY = distance[1] * invScale; + var halfPercent = percent / 2; + var tangent = line.tangentAt(halfPercent); + var n = [tangent[1], -tangent[0]]; + var cp = line.pointAt(halfPercent); + if (n[1] > 0) { + n[0] = -n[0]; + n[1] = -n[1]; + } + var dir = tangent[0] < 0 ? -1 : 1; + if (label.__position !== 'start' && label.__position !== 'end') { + var rotation = -Math.atan2(tangent[1], tangent[0]); + if (toPos[0] < fromPos[0]) { + rotation = Math.PI + rotation; + } + label.rotation = rotation; + } + var dy = void 0; + switch (label.__position) { + case 'insideStartTop': + case 'insideMiddleTop': + case 'insideEndTop': + case 'middle': + dy = -distanceY; + textVerticalAlign = 'bottom'; + break; + case 'insideStartBottom': + case 'insideMiddleBottom': + case 'insideEndBottom': + dy = distanceY; + textVerticalAlign = 'top'; + break; + default: + dy = 0; + textVerticalAlign = 'middle'; + } + switch (label.__position) { + case 'end': + label.x = d[0] * distanceX + toPos[0]; + label.y = d[1] * distanceY + toPos[1]; + textAlign = d[0] > 0.8 ? 'left' : d[0] < -0.8 ? 'right' : 'center'; + textVerticalAlign = d[1] > 0.8 ? 'top' : d[1] < -0.8 ? 'bottom' : 'middle'; + break; + case 'start': + label.x = -d[0] * distanceX + fromPos[0]; + label.y = -d[1] * distanceY + fromPos[1]; + textAlign = d[0] > 0.8 ? 'right' : d[0] < -0.8 ? 'left' : 'center'; + textVerticalAlign = d[1] > 0.8 ? 'bottom' : d[1] < -0.8 ? 'top' : 'middle'; + break; + case 'insideStartTop': + case 'insideStart': + case 'insideStartBottom': + label.x = distanceX * dir + fromPos[0]; + label.y = fromPos[1] + dy; + textAlign = tangent[0] < 0 ? 'right' : 'left'; + label.originX = -distanceX * dir; + label.originY = -dy; + break; + case 'insideMiddleTop': + case 'insideMiddle': + case 'insideMiddleBottom': + case 'middle': + label.x = cp[0]; + label.y = cp[1] + dy; + textAlign = 'center'; + label.originY = -dy; + break; + case 'insideEndTop': + case 'insideEnd': + case 'insideEndBottom': + label.x = -distanceX * dir + toPos[0]; + label.y = toPos[1] + dy; + textAlign = tangent[0] >= 0 ? 'right' : 'left'; + label.originX = distanceX * dir; + label.originY = -dy; + break; + } + label.scaleX = label.scaleY = invScale; + label.setStyle({ + // Use the user specified text align and baseline first + verticalAlign: label.__verticalAlign || textVerticalAlign, + align: label.__align || textAlign + }); + } + }; + return Line; + }(Group); + + var LineDraw = /** @class */function () { + function LineDraw(LineCtor) { + this.group = new Group(); + this._LineCtor = LineCtor || Line$1; + } + LineDraw.prototype.updateData = function (lineData) { + var _this = this; + // Remove progressive els. + this._progressiveEls = null; + var lineDraw = this; + var group = lineDraw.group; + var oldLineData = lineDraw._lineData; + lineDraw._lineData = lineData; + // There is no oldLineData only when first rendering or switching from + // stream mode to normal mode, where previous elements should be removed. + if (!oldLineData) { + group.removeAll(); + } + var seriesScope = makeSeriesScope$1(lineData); + lineData.diff(oldLineData).add(function (idx) { + _this._doAdd(lineData, idx, seriesScope); + }).update(function (newIdx, oldIdx) { + _this._doUpdate(oldLineData, lineData, oldIdx, newIdx, seriesScope); + }).remove(function (idx) { + group.remove(oldLineData.getItemGraphicEl(idx)); + }).execute(); + }; + LineDraw.prototype.updateLayout = function () { + var lineData = this._lineData; + // Do not support update layout in incremental mode. + if (!lineData) { + return; + } + lineData.eachItemGraphicEl(function (el, idx) { + el.updateLayout(lineData, idx); + }, this); + }; + LineDraw.prototype.incrementalPrepareUpdate = function (lineData) { + this._seriesScope = makeSeriesScope$1(lineData); + this._lineData = null; + this.group.removeAll(); + }; + LineDraw.prototype.incrementalUpdate = function (taskParams, lineData) { + this._progressiveEls = []; + function updateIncrementalAndHover(el) { + if (!el.isGroup && !isEffectObject(el)) { + el.incremental = true; + el.ensureState('emphasis').hoverLayer = true; + } + } + for (var idx = taskParams.start; idx < taskParams.end; idx++) { + var itemLayout = lineData.getItemLayout(idx); + if (lineNeedsDraw(itemLayout)) { + var el = new this._LineCtor(lineData, idx, this._seriesScope); + el.traverse(updateIncrementalAndHover); + this.group.add(el); + lineData.setItemGraphicEl(idx, el); + this._progressiveEls.push(el); + } + } + }; + LineDraw.prototype.remove = function () { + this.group.removeAll(); + }; + LineDraw.prototype.eachRendered = function (cb) { + traverseElements(this._progressiveEls || this.group, cb); + }; + LineDraw.prototype._doAdd = function (lineData, idx, seriesScope) { + var itemLayout = lineData.getItemLayout(idx); + if (!lineNeedsDraw(itemLayout)) { + return; + } + var el = new this._LineCtor(lineData, idx, seriesScope); + lineData.setItemGraphicEl(idx, el); + this.group.add(el); + }; + LineDraw.prototype._doUpdate = function (oldLineData, newLineData, oldIdx, newIdx, seriesScope) { + var itemEl = oldLineData.getItemGraphicEl(oldIdx); + if (!lineNeedsDraw(newLineData.getItemLayout(newIdx))) { + this.group.remove(itemEl); + return; + } + if (!itemEl) { + itemEl = new this._LineCtor(newLineData, newIdx, seriesScope); + } else { + itemEl.updateData(newLineData, newIdx, seriesScope); + } + newLineData.setItemGraphicEl(newIdx, itemEl); + this.group.add(itemEl); + }; + return LineDraw; + }(); + function isEffectObject(el) { + return el.animators && el.animators.length > 0; + } + function makeSeriesScope$1(lineData) { + var hostModel = lineData.hostModel; + var emphasisModel = hostModel.getModel('emphasis'); + return { + lineStyle: hostModel.getModel('lineStyle').getLineStyle(), + emphasisLineStyle: emphasisModel.getModel(['lineStyle']).getLineStyle(), + blurLineStyle: hostModel.getModel(['blur', 'lineStyle']).getLineStyle(), + selectLineStyle: hostModel.getModel(['select', 'lineStyle']).getLineStyle(), + emphasisDisabled: emphasisModel.get('disabled'), + blurScope: emphasisModel.get('blurScope'), + focus: emphasisModel.get('focus'), + labelStatesModels: getLabelStatesModels(hostModel) + }; + } + function isPointNaN(pt) { + return isNaN(pt[0]) || isNaN(pt[1]); + } + function lineNeedsDraw(pts) { + return pts && !isPointNaN(pts[0]) && !isPointNaN(pts[1]); + } + + var v1 = []; + var v2 = []; + var v3 = []; + var quadraticAt$1 = quadraticAt; + var v2DistSquare = distSquare; + var mathAbs$2 = Math.abs; + function intersectCurveCircle(curvePoints, center, radius) { + var p0 = curvePoints[0]; + var p1 = curvePoints[1]; + var p2 = curvePoints[2]; + var d = Infinity; + var t; + var radiusSquare = radius * radius; + var interval = 0.1; + for (var _t = 0.1; _t <= 0.9; _t += 0.1) { + v1[0] = quadraticAt$1(p0[0], p1[0], p2[0], _t); + v1[1] = quadraticAt$1(p0[1], p1[1], p2[1], _t); + var diff = mathAbs$2(v2DistSquare(v1, center) - radiusSquare); + if (diff < d) { + d = diff; + t = _t; + } + } + // Assume the segment is monotone,Find root through Bisection method + // At most 32 iteration + for (var i = 0; i < 32; i++) { + // let prev = t - interval; + var next = t + interval; + // v1[0] = quadraticAt(p0[0], p1[0], p2[0], prev); + // v1[1] = quadraticAt(p0[1], p1[1], p2[1], prev); + v2[0] = quadraticAt$1(p0[0], p1[0], p2[0], t); + v2[1] = quadraticAt$1(p0[1], p1[1], p2[1], t); + v3[0] = quadraticAt$1(p0[0], p1[0], p2[0], next); + v3[1] = quadraticAt$1(p0[1], p1[1], p2[1], next); + var diff = v2DistSquare(v2, center) - radiusSquare; + if (mathAbs$2(diff) < 1e-2) { + break; + } + // let prevDiff = v2DistSquare(v1, center) - radiusSquare; + var nextDiff = v2DistSquare(v3, center) - radiusSquare; + interval /= 2; + if (diff < 0) { + if (nextDiff >= 0) { + t = t + interval; + } else { + t = t - interval; + } + } else { + if (nextDiff >= 0) { + t = t - interval; + } else { + t = t + interval; + } + } + } + return t; + } + // Adjust edge to avoid + function adjustEdge(graph, scale) { + var tmp0 = []; + var quadraticSubdivide$1 = quadraticSubdivide; + var pts = [[], [], []]; + var pts2 = [[], []]; + var v = []; + scale /= 2; + graph.eachEdge(function (edge, idx) { + var linePoints = edge.getLayout(); + var fromSymbol = edge.getVisual('fromSymbol'); + var toSymbol = edge.getVisual('toSymbol'); + if (!linePoints.__original) { + linePoints.__original = [clone$1(linePoints[0]), clone$1(linePoints[1])]; + if (linePoints[2]) { + linePoints.__original.push(clone$1(linePoints[2])); + } + } + var originalPoints = linePoints.__original; + // Quadratic curve + if (linePoints[2] != null) { + copy(pts[0], originalPoints[0]); + copy(pts[1], originalPoints[2]); + copy(pts[2], originalPoints[1]); + if (fromSymbol && fromSymbol !== 'none') { + var symbolSize = getSymbolSize(edge.node1); + var t = intersectCurveCircle(pts, originalPoints[0], symbolSize * scale); + // Subdivide and get the second + quadraticSubdivide$1(pts[0][0], pts[1][0], pts[2][0], t, tmp0); + pts[0][0] = tmp0[3]; + pts[1][0] = tmp0[4]; + quadraticSubdivide$1(pts[0][1], pts[1][1], pts[2][1], t, tmp0); + pts[0][1] = tmp0[3]; + pts[1][1] = tmp0[4]; + } + if (toSymbol && toSymbol !== 'none') { + var symbolSize = getSymbolSize(edge.node2); + var t = intersectCurveCircle(pts, originalPoints[1], symbolSize * scale); + // Subdivide and get the first + quadraticSubdivide$1(pts[0][0], pts[1][0], pts[2][0], t, tmp0); + pts[1][0] = tmp0[1]; + pts[2][0] = tmp0[2]; + quadraticSubdivide$1(pts[0][1], pts[1][1], pts[2][1], t, tmp0); + pts[1][1] = tmp0[1]; + pts[2][1] = tmp0[2]; + } + // Copy back to layout + copy(linePoints[0], pts[0]); + copy(linePoints[1], pts[2]); + copy(linePoints[2], pts[1]); + } + // Line + else { + copy(pts2[0], originalPoints[0]); + copy(pts2[1], originalPoints[1]); + sub(v, pts2[1], pts2[0]); + normalize(v, v); + if (fromSymbol && fromSymbol !== 'none') { + var symbolSize = getSymbolSize(edge.node1); + scaleAndAdd(pts2[0], pts2[0], v, symbolSize * scale); + } + if (toSymbol && toSymbol !== 'none') { + var symbolSize = getSymbolSize(edge.node2); + scaleAndAdd(pts2[1], pts2[1], v, -symbolSize * scale); + } + copy(linePoints[0], pts2[0]); + copy(linePoints[1], pts2[1]); + } + }); + } + + function isViewCoordSys(coordSys) { + return coordSys.type === 'view'; + } + var GraphView = /** @class */function (_super) { + __extends(GraphView, _super); + function GraphView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = GraphView.type; + return _this; + } + GraphView.prototype.init = function (ecModel, api) { + var symbolDraw = new SymbolDraw(); + var lineDraw = new LineDraw(); + var group = this.group; + this._controller = new RoamController(api.getZr()); + this._controllerHost = { + target: group + }; + group.add(symbolDraw.group); + group.add(lineDraw.group); + this._symbolDraw = symbolDraw; + this._lineDraw = lineDraw; + this._firstRender = true; + }; + GraphView.prototype.render = function (seriesModel, ecModel, api) { + var _this = this; + var coordSys = seriesModel.coordinateSystem; + this._model = seriesModel; + var symbolDraw = this._symbolDraw; + var lineDraw = this._lineDraw; + var group = this.group; + if (isViewCoordSys(coordSys)) { + var groupNewProp = { + x: coordSys.x, + y: coordSys.y, + scaleX: coordSys.scaleX, + scaleY: coordSys.scaleY + }; + if (this._firstRender) { + group.attr(groupNewProp); + } else { + updateProps(group, groupNewProp, seriesModel); + } + } + // Fix edge contact point with node + adjustEdge(seriesModel.getGraph(), getNodeGlobalScale(seriesModel)); + var data = seriesModel.getData(); + symbolDraw.updateData(data); + var edgeData = seriesModel.getEdgeData(); + // TODO: TYPE + lineDraw.updateData(edgeData); + this._updateNodeAndLinkScale(); + this._updateController(seriesModel, ecModel, api); + clearTimeout(this._layoutTimeout); + var forceLayout = seriesModel.forceLayout; + var layoutAnimation = seriesModel.get(['force', 'layoutAnimation']); + if (forceLayout) { + this._startForceLayoutIteration(forceLayout, layoutAnimation); + } + var layout = seriesModel.get('layout'); + data.graph.eachNode(function (node) { + var idx = node.dataIndex; + var el = node.getGraphicEl(); + var itemModel = node.getModel(); + if (!el) { + return; + } + // Update draggable + el.off('drag').off('dragend'); + var draggable = itemModel.get('draggable'); + if (draggable) { + el.on('drag', function (e) { + switch (layout) { + case 'force': + forceLayout.warmUp(); + !_this._layouting && _this._startForceLayoutIteration(forceLayout, layoutAnimation); + forceLayout.setFixed(idx); + // Write position back to layout + data.setItemLayout(idx, [el.x, el.y]); + break; + case 'circular': + data.setItemLayout(idx, [el.x, el.y]); + // mark node fixed + node.setLayout({ + fixed: true + }, true); + // recalculate circular layout + circularLayout(seriesModel, 'symbolSize', node, [e.offsetX, e.offsetY]); + _this.updateLayout(seriesModel); + break; + case 'none': + default: + data.setItemLayout(idx, [el.x, el.y]); + // update edge + simpleLayoutEdge(seriesModel.getGraph(), seriesModel); + _this.updateLayout(seriesModel); + break; + } + }).on('dragend', function () { + if (forceLayout) { + forceLayout.setUnfixed(idx); + } + }); + } + el.setDraggable(draggable, !!itemModel.get('cursor')); + var focus = itemModel.get(['emphasis', 'focus']); + if (focus === 'adjacency') { + getECData(el).focus = node.getAdjacentDataIndices(); + } + }); + data.graph.eachEdge(function (edge) { + var el = edge.getGraphicEl(); + var focus = edge.getModel().get(['emphasis', 'focus']); + if (!el) { + return; + } + if (focus === 'adjacency') { + getECData(el).focus = { + edge: [edge.dataIndex], + node: [edge.node1.dataIndex, edge.node2.dataIndex] + }; + } + }); + var circularRotateLabel = seriesModel.get('layout') === 'circular' && seriesModel.get(['circular', 'rotateLabel']); + var cx = data.getLayout('cx'); + var cy = data.getLayout('cy'); + data.graph.eachNode(function (node) { + rotateNodeLabel(node, circularRotateLabel, cx, cy); + }); + this._firstRender = false; + }; + GraphView.prototype.dispose = function () { + this.remove(); + this._controller && this._controller.dispose(); + this._controllerHost = null; + }; + GraphView.prototype._startForceLayoutIteration = function (forceLayout, layoutAnimation) { + var self = this; + (function step() { + forceLayout.step(function (stopped) { + self.updateLayout(self._model); + (self._layouting = !stopped) && (layoutAnimation ? self._layoutTimeout = setTimeout(step, 16) : step()); + }); + })(); + }; + GraphView.prototype._updateController = function (seriesModel, ecModel, api) { + var _this = this; + var controller = this._controller; + var controllerHost = this._controllerHost; + var group = this.group; + controller.setPointerChecker(function (e, x, y) { + var rect = group.getBoundingRect(); + rect.applyTransform(group.transform); + return rect.contain(x, y) && !onIrrelevantElement(e, api, seriesModel); + }); + if (!isViewCoordSys(seriesModel.coordinateSystem)) { + controller.disable(); + return; + } + controller.enable(seriesModel.get('roam')); + controllerHost.zoomLimit = seriesModel.get('scaleLimit'); + controllerHost.zoom = seriesModel.coordinateSystem.getZoom(); + controller.off('pan').off('zoom').on('pan', function (e) { + updateViewOnPan(controllerHost, e.dx, e.dy); + api.dispatchAction({ + seriesId: seriesModel.id, + type: 'graphRoam', + dx: e.dx, + dy: e.dy + }); + }).on('zoom', function (e) { + updateViewOnZoom(controllerHost, e.scale, e.originX, e.originY); + api.dispatchAction({ + seriesId: seriesModel.id, + type: 'graphRoam', + zoom: e.scale, + originX: e.originX, + originY: e.originY + }); + _this._updateNodeAndLinkScale(); + adjustEdge(seriesModel.getGraph(), getNodeGlobalScale(seriesModel)); + _this._lineDraw.updateLayout(); + // Only update label layout on zoom + api.updateLabelLayout(); + }); + }; + GraphView.prototype._updateNodeAndLinkScale = function () { + var seriesModel = this._model; + var data = seriesModel.getData(); + var nodeScale = getNodeGlobalScale(seriesModel); + data.eachItemGraphicEl(function (el, idx) { + el && el.setSymbolScale(nodeScale); + }); + }; + GraphView.prototype.updateLayout = function (seriesModel) { + adjustEdge(seriesModel.getGraph(), getNodeGlobalScale(seriesModel)); + this._symbolDraw.updateLayout(); + this._lineDraw.updateLayout(); + }; + GraphView.prototype.remove = function () { + clearTimeout(this._layoutTimeout); + this._layouting = false; + this._layoutTimeout = null; + this._symbolDraw && this._symbolDraw.remove(); + this._lineDraw && this._lineDraw.remove(); + }; + GraphView.type = 'graph'; + return GraphView; + }(ChartView); + + // id may be function name of Object, add a prefix to avoid this problem. + function generateNodeKey(id) { + return '_EC_' + id; + } + var Graph = /** @class */function () { + function Graph(directed) { + this.type = 'graph'; + this.nodes = []; + this.edges = []; + this._nodesMap = {}; + /** + * @type {Object.<string, module:echarts/data/Graph.Edge>} + * @private + */ + this._edgesMap = {}; + this._directed = directed || false; + } + /** + * If is directed graph + */ + Graph.prototype.isDirected = function () { + return this._directed; + }; + /** + * Add a new node + */ + Graph.prototype.addNode = function (id, dataIndex) { + id = id == null ? '' + dataIndex : '' + id; + var nodesMap = this._nodesMap; + if (nodesMap[generateNodeKey(id)]) { + if ("development" !== 'production') { + console.error('Graph nodes have duplicate name or id'); + } + return; + } + var node = new GraphNode(id, dataIndex); + node.hostGraph = this; + this.nodes.push(node); + nodesMap[generateNodeKey(id)] = node; + return node; + }; + /** + * Get node by data index + */ + Graph.prototype.getNodeByIndex = function (dataIndex) { + var rawIdx = this.data.getRawIndex(dataIndex); + return this.nodes[rawIdx]; + }; + /** + * Get node by id + */ + Graph.prototype.getNodeById = function (id) { + return this._nodesMap[generateNodeKey(id)]; + }; + /** + * Add a new edge + */ + Graph.prototype.addEdge = function (n1, n2, dataIndex) { + var nodesMap = this._nodesMap; + var edgesMap = this._edgesMap; + // PENDING + if (isNumber(n1)) { + n1 = this.nodes[n1]; + } + if (isNumber(n2)) { + n2 = this.nodes[n2]; + } + if (!(n1 instanceof GraphNode)) { + n1 = nodesMap[generateNodeKey(n1)]; + } + if (!(n2 instanceof GraphNode)) { + n2 = nodesMap[generateNodeKey(n2)]; + } + if (!n1 || !n2) { + return; + } + var key = n1.id + '-' + n2.id; + var edge = new GraphEdge(n1, n2, dataIndex); + edge.hostGraph = this; + if (this._directed) { + n1.outEdges.push(edge); + n2.inEdges.push(edge); + } + n1.edges.push(edge); + if (n1 !== n2) { + n2.edges.push(edge); + } + this.edges.push(edge); + edgesMap[key] = edge; + return edge; + }; + /** + * Get edge by data index + */ + Graph.prototype.getEdgeByIndex = function (dataIndex) { + var rawIdx = this.edgeData.getRawIndex(dataIndex); + return this.edges[rawIdx]; + }; + /** + * Get edge by two linked nodes + */ + Graph.prototype.getEdge = function (n1, n2) { + if (n1 instanceof GraphNode) { + n1 = n1.id; + } + if (n2 instanceof GraphNode) { + n2 = n2.id; + } + var edgesMap = this._edgesMap; + if (this._directed) { + return edgesMap[n1 + '-' + n2]; + } else { + return edgesMap[n1 + '-' + n2] || edgesMap[n2 + '-' + n1]; + } + }; + /** + * Iterate all nodes + */ + Graph.prototype.eachNode = function (cb, context) { + var nodes = this.nodes; + var len = nodes.length; + for (var i = 0; i < len; i++) { + if (nodes[i].dataIndex >= 0) { + cb.call(context, nodes[i], i); + } + } + }; + /** + * Iterate all edges + */ + Graph.prototype.eachEdge = function (cb, context) { + var edges = this.edges; + var len = edges.length; + for (var i = 0; i < len; i++) { + if (edges[i].dataIndex >= 0 && edges[i].node1.dataIndex >= 0 && edges[i].node2.dataIndex >= 0) { + cb.call(context, edges[i], i); + } + } + }; + /** + * Breadth first traverse + * Return true to stop traversing + */ + Graph.prototype.breadthFirstTraverse = function (cb, startNode, direction, context) { + if (!(startNode instanceof GraphNode)) { + startNode = this._nodesMap[generateNodeKey(startNode)]; + } + if (!startNode) { + return; + } + var edgeType = direction === 'out' ? 'outEdges' : direction === 'in' ? 'inEdges' : 'edges'; + for (var i = 0; i < this.nodes.length; i++) { + this.nodes[i].__visited = false; + } + if (cb.call(context, startNode, null)) { + return; + } + var queue = [startNode]; + while (queue.length) { + var currentNode = queue.shift(); + var edges = currentNode[edgeType]; + for (var i = 0; i < edges.length; i++) { + var e = edges[i]; + var otherNode = e.node1 === currentNode ? e.node2 : e.node1; + if (!otherNode.__visited) { + if (cb.call(context, otherNode, currentNode)) { + // Stop traversing + return; + } + queue.push(otherNode); + otherNode.__visited = true; + } + } + } + }; + // TODO + // depthFirstTraverse( + // cb, startNode, direction, context + // ) { + // }; + // Filter update + Graph.prototype.update = function () { + var data = this.data; + var edgeData = this.edgeData; + var nodes = this.nodes; + var edges = this.edges; + for (var i = 0, len = nodes.length; i < len; i++) { + nodes[i].dataIndex = -1; + } + for (var i = 0, len = data.count(); i < len; i++) { + nodes[data.getRawIndex(i)].dataIndex = i; + } + edgeData.filterSelf(function (idx) { + var edge = edges[edgeData.getRawIndex(idx)]; + return edge.node1.dataIndex >= 0 && edge.node2.dataIndex >= 0; + }); + // Update edge + for (var i = 0, len = edges.length; i < len; i++) { + edges[i].dataIndex = -1; + } + for (var i = 0, len = edgeData.count(); i < len; i++) { + edges[edgeData.getRawIndex(i)].dataIndex = i; + } + }; + /** + * @return {module:echarts/data/Graph} + */ + Graph.prototype.clone = function () { + var graph = new Graph(this._directed); + var nodes = this.nodes; + var edges = this.edges; + for (var i = 0; i < nodes.length; i++) { + graph.addNode(nodes[i].id, nodes[i].dataIndex); + } + for (var i = 0; i < edges.length; i++) { + var e = edges[i]; + graph.addEdge(e.node1.id, e.node2.id, e.dataIndex); + } + return graph; + }; + return Graph; + }(); + var GraphNode = /** @class */function () { + function GraphNode(id, dataIndex) { + this.inEdges = []; + this.outEdges = []; + this.edges = []; + this.dataIndex = -1; + this.id = id == null ? '' : id; + this.dataIndex = dataIndex == null ? -1 : dataIndex; + } + /** + * @return {number} + */ + GraphNode.prototype.degree = function () { + return this.edges.length; + }; + /** + * @return {number} + */ + GraphNode.prototype.inDegree = function () { + return this.inEdges.length; + }; + /** + * @return {number} + */ + GraphNode.prototype.outDegree = function () { + return this.outEdges.length; + }; + GraphNode.prototype.getModel = function (path) { + if (this.dataIndex < 0) { + return; + } + var graph = this.hostGraph; + var itemModel = graph.data.getItemModel(this.dataIndex); + return itemModel.getModel(path); + }; + GraphNode.prototype.getAdjacentDataIndices = function () { + var dataIndices = { + edge: [], + node: [] + }; + for (var i = 0; i < this.edges.length; i++) { + var adjacentEdge = this.edges[i]; + if (adjacentEdge.dataIndex < 0) { + continue; + } + dataIndices.edge.push(adjacentEdge.dataIndex); + dataIndices.node.push(adjacentEdge.node1.dataIndex, adjacentEdge.node2.dataIndex); + } + return dataIndices; + }; + GraphNode.prototype.getTrajectoryDataIndices = function () { + var connectedEdgesMap = createHashMap(); + var connectedNodesMap = createHashMap(); + for (var i = 0; i < this.edges.length; i++) { + var adjacentEdge = this.edges[i]; + if (adjacentEdge.dataIndex < 0) { + continue; + } + connectedEdgesMap.set(adjacentEdge.dataIndex, true); + var sourceNodesQueue = [adjacentEdge.node1]; + var targetNodesQueue = [adjacentEdge.node2]; + var nodeIteratorIndex = 0; + while (nodeIteratorIndex < sourceNodesQueue.length) { + var sourceNode = sourceNodesQueue[nodeIteratorIndex]; + nodeIteratorIndex++; + connectedNodesMap.set(sourceNode.dataIndex, true); + for (var j = 0; j < sourceNode.inEdges.length; j++) { + connectedEdgesMap.set(sourceNode.inEdges[j].dataIndex, true); + sourceNodesQueue.push(sourceNode.inEdges[j].node1); + } + } + nodeIteratorIndex = 0; + while (nodeIteratorIndex < targetNodesQueue.length) { + var targetNode = targetNodesQueue[nodeIteratorIndex]; + nodeIteratorIndex++; + connectedNodesMap.set(targetNode.dataIndex, true); + for (var j = 0; j < targetNode.outEdges.length; j++) { + connectedEdgesMap.set(targetNode.outEdges[j].dataIndex, true); + targetNodesQueue.push(targetNode.outEdges[j].node2); + } + } + } + return { + edge: connectedEdgesMap.keys(), + node: connectedNodesMap.keys() + }; + }; + return GraphNode; + }(); + var GraphEdge = /** @class */function () { + function GraphEdge(n1, n2, dataIndex) { + this.dataIndex = -1; + this.node1 = n1; + this.node2 = n2; + this.dataIndex = dataIndex == null ? -1 : dataIndex; + } + // eslint-disable-next-line @typescript-eslint/no-unused-vars + GraphEdge.prototype.getModel = function (path) { + if (this.dataIndex < 0) { + return; + } + var graph = this.hostGraph; + var itemModel = graph.edgeData.getItemModel(this.dataIndex); + return itemModel.getModel(path); + }; + GraphEdge.prototype.getAdjacentDataIndices = function () { + return { + edge: [this.dataIndex], + node: [this.node1.dataIndex, this.node2.dataIndex] + }; + }; + GraphEdge.prototype.getTrajectoryDataIndices = function () { + var connectedEdgesMap = createHashMap(); + var connectedNodesMap = createHashMap(); + connectedEdgesMap.set(this.dataIndex, true); + var sourceNodes = [this.node1]; + var targetNodes = [this.node2]; + var nodeIteratorIndex = 0; + while (nodeIteratorIndex < sourceNodes.length) { + var sourceNode = sourceNodes[nodeIteratorIndex]; + nodeIteratorIndex++; + connectedNodesMap.set(sourceNode.dataIndex, true); + for (var j = 0; j < sourceNode.inEdges.length; j++) { + connectedEdgesMap.set(sourceNode.inEdges[j].dataIndex, true); + sourceNodes.push(sourceNode.inEdges[j].node1); + } + } + nodeIteratorIndex = 0; + while (nodeIteratorIndex < targetNodes.length) { + var targetNode = targetNodes[nodeIteratorIndex]; + nodeIteratorIndex++; + connectedNodesMap.set(targetNode.dataIndex, true); + for (var j = 0; j < targetNode.outEdges.length; j++) { + connectedEdgesMap.set(targetNode.outEdges[j].dataIndex, true); + targetNodes.push(targetNode.outEdges[j].node2); + } + } + return { + edge: connectedEdgesMap.keys(), + node: connectedNodesMap.keys() + }; + }; + return GraphEdge; + }(); + function createGraphDataProxyMixin(hostName, dataName) { + return { + /** + * @param Default 'value'. can be 'a', 'b', 'c', 'd', 'e'. + */ + getValue: function (dimension) { + var data = this[hostName][dataName]; + return data.getStore().get(data.getDimensionIndex(dimension || 'value'), this.dataIndex); + }, + // TODO: TYPE stricter type. + setVisual: function (key, value) { + this.dataIndex >= 0 && this[hostName][dataName].setItemVisual(this.dataIndex, key, value); + }, + getVisual: function (key) { + return this[hostName][dataName].getItemVisual(this.dataIndex, key); + }, + setLayout: function (layout, merge) { + this.dataIndex >= 0 && this[hostName][dataName].setItemLayout(this.dataIndex, layout, merge); + }, + getLayout: function () { + return this[hostName][dataName].getItemLayout(this.dataIndex); + }, + getGraphicEl: function () { + return this[hostName][dataName].getItemGraphicEl(this.dataIndex); + }, + getRawIndex: function () { + return this[hostName][dataName].getRawIndex(this.dataIndex); + } + }; + } + mixin(GraphNode, createGraphDataProxyMixin('hostGraph', 'data')); + mixin(GraphEdge, createGraphDataProxyMixin('hostGraph', 'edgeData')); + + function createGraphFromNodeEdge(nodes, edges, seriesModel, directed, beforeLink) { + // ??? TODO + // support dataset? + var graph = new Graph(directed); + for (var i = 0; i < nodes.length; i++) { + graph.addNode(retrieve( + // Id, name, dataIndex + nodes[i].id, nodes[i].name, i), i); + } + var linkNameList = []; + var validEdges = []; + var linkCount = 0; + for (var i = 0; i < edges.length; i++) { + var link = edges[i]; + var source = link.source; + var target = link.target; + // addEdge may fail when source or target not exists + if (graph.addEdge(source, target, linkCount)) { + validEdges.push(link); + linkNameList.push(retrieve(convertOptionIdName(link.id, null), source + ' > ' + target)); + linkCount++; + } + } + var coordSys = seriesModel.get('coordinateSystem'); + var nodeData; + if (coordSys === 'cartesian2d' || coordSys === 'polar') { + nodeData = createSeriesData(nodes, seriesModel); + } else { + var coordSysCtor = CoordinateSystemManager.get(coordSys); + var coordDimensions = coordSysCtor ? coordSysCtor.dimensions || [] : []; + // FIXME: Some geo do not need `value` dimenson, whereas `calendar` needs + // `value` dimension, but graph need `value` dimension. It's better to + // uniform this behavior. + if (indexOf(coordDimensions, 'value') < 0) { + coordDimensions.concat(['value']); + } + var dimensions = prepareSeriesDataSchema(nodes, { + coordDimensions: coordDimensions, + encodeDefine: seriesModel.getEncode() + }).dimensions; + nodeData = new SeriesData(dimensions, seriesModel); + nodeData.initData(nodes); + } + var edgeData = new SeriesData(['value'], seriesModel); + edgeData.initData(validEdges, linkNameList); + beforeLink && beforeLink(nodeData, edgeData); + linkSeriesData({ + mainData: nodeData, + struct: graph, + structAttr: 'graph', + datas: { + node: nodeData, + edge: edgeData + }, + datasAttr: { + node: 'data', + edge: 'edgeData' + } + }); + // Update dataIndex of nodes and edges because invalid edge may be removed + graph.update(); + return graph; + } + + var GraphSeriesModel = /** @class */function (_super) { + __extends(GraphSeriesModel, _super); + function GraphSeriesModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = GraphSeriesModel.type; + _this.hasSymbolVisual = true; + return _this; + } + GraphSeriesModel.prototype.init = function (option) { + _super.prototype.init.apply(this, arguments); + var self = this; + function getCategoriesData() { + return self._categoriesData; + } + // Provide data for legend select + this.legendVisualProvider = new LegendVisualProvider(getCategoriesData, getCategoriesData); + this.fillDataTextStyle(option.edges || option.links); + this._updateCategoriesData(); + }; + GraphSeriesModel.prototype.mergeOption = function (option) { + _super.prototype.mergeOption.apply(this, arguments); + this.fillDataTextStyle(option.edges || option.links); + this._updateCategoriesData(); + }; + GraphSeriesModel.prototype.mergeDefaultAndTheme = function (option) { + _super.prototype.mergeDefaultAndTheme.apply(this, arguments); + defaultEmphasis(option, 'edgeLabel', ['show']); + }; + GraphSeriesModel.prototype.getInitialData = function (option, ecModel) { + var edges = option.edges || option.links || []; + var nodes = option.data || option.nodes || []; + var self = this; + if (nodes && edges) { + // auto curveness + initCurvenessList(this); + var graph = createGraphFromNodeEdge(nodes, edges, this, true, beforeLink); + each(graph.edges, function (edge) { + createEdgeMapForCurveness(edge.node1, edge.node2, this, edge.dataIndex); + }, this); + return graph.data; + } + function beforeLink(nodeData, edgeData) { + // Overwrite nodeData.getItemModel to + nodeData.wrapMethod('getItemModel', function (model) { + var categoriesModels = self._categoriesModels; + var categoryIdx = model.getShallow('category'); + var categoryModel = categoriesModels[categoryIdx]; + if (categoryModel) { + categoryModel.parentModel = model.parentModel; + model.parentModel = categoryModel; + } + return model; + }); + // TODO Inherit resolveParentPath by default in Model#getModel? + var oldGetModel = Model.prototype.getModel; + function newGetModel(path, parentModel) { + var model = oldGetModel.call(this, path, parentModel); + model.resolveParentPath = resolveParentPath; + return model; + } + edgeData.wrapMethod('getItemModel', function (model) { + model.resolveParentPath = resolveParentPath; + model.getModel = newGetModel; + return model; + }); + function resolveParentPath(pathArr) { + if (pathArr && (pathArr[0] === 'label' || pathArr[1] === 'label')) { + var newPathArr = pathArr.slice(); + if (pathArr[0] === 'label') { + newPathArr[0] = 'edgeLabel'; + } else if (pathArr[1] === 'label') { + newPathArr[1] = 'edgeLabel'; + } + return newPathArr; + } + return pathArr; + } + } + }; + GraphSeriesModel.prototype.getGraph = function () { + return this.getData().graph; + }; + GraphSeriesModel.prototype.getEdgeData = function () { + return this.getGraph().edgeData; + }; + GraphSeriesModel.prototype.getCategoriesData = function () { + return this._categoriesData; + }; + GraphSeriesModel.prototype.formatTooltip = function (dataIndex, multipleSeries, dataType) { + if (dataType === 'edge') { + var nodeData = this.getData(); + var params = this.getDataParams(dataIndex, dataType); + var edge = nodeData.graph.getEdgeByIndex(dataIndex); + var sourceName = nodeData.getName(edge.node1.dataIndex); + var targetName = nodeData.getName(edge.node2.dataIndex); + var nameArr = []; + sourceName != null && nameArr.push(sourceName); + targetName != null && nameArr.push(targetName); + return createTooltipMarkup('nameValue', { + name: nameArr.join(' > '), + value: params.value, + noValue: params.value == null + }); + } + // dataType === 'node' or empty + var nodeMarkup = defaultSeriesFormatTooltip({ + series: this, + dataIndex: dataIndex, + multipleSeries: multipleSeries + }); + return nodeMarkup; + }; + GraphSeriesModel.prototype._updateCategoriesData = function () { + var categories = map(this.option.categories || [], function (category) { + // Data must has value + return category.value != null ? category : extend({ + value: 0 + }, category); + }); + var categoriesData = new SeriesData(['value'], this); + categoriesData.initData(categories); + this._categoriesData = categoriesData; + this._categoriesModels = categoriesData.mapArray(function (idx) { + return categoriesData.getItemModel(idx); + }); + }; + GraphSeriesModel.prototype.setZoom = function (zoom) { + this.option.zoom = zoom; + }; + GraphSeriesModel.prototype.setCenter = function (center) { + this.option.center = center; + }; + GraphSeriesModel.prototype.isAnimationEnabled = function () { + return _super.prototype.isAnimationEnabled.call(this) + // Not enable animation when do force layout + && !(this.get('layout') === 'force' && this.get(['force', 'layoutAnimation'])); + }; + GraphSeriesModel.type = 'series.graph'; + GraphSeriesModel.dependencies = ['grid', 'polar', 'geo', 'singleAxis', 'calendar']; + GraphSeriesModel.defaultOption = { + // zlevel: 0, + z: 2, + coordinateSystem: 'view', + // Default option for all coordinate systems + // xAxisIndex: 0, + // yAxisIndex: 0, + // polarIndex: 0, + // geoIndex: 0, + legendHoverLink: true, + layout: null, + // Configuration of circular layout + circular: { + rotateLabel: false + }, + // Configuration of force directed layout + force: { + initLayout: null, + // Node repulsion. Can be an array to represent range. + repulsion: [0, 50], + gravity: 0.1, + // Initial friction + friction: 0.6, + // Edge length. Can be an array to represent range. + edgeLength: 30, + layoutAnimation: true + }, + left: 'center', + top: 'center', + // right: null, + // bottom: null, + // width: '80%', + // height: '80%', + symbol: 'circle', + symbolSize: 10, + edgeSymbol: ['none', 'none'], + edgeSymbolSize: 10, + edgeLabel: { + position: 'middle', + distance: 5 + }, + draggable: false, + roam: false, + // Default on center of graph + center: null, + zoom: 1, + // Symbol size scale ratio in roam + nodeScaleRatio: 0.6, + // cursor: null, + // categories: [], + // data: [] + // Or + // nodes: [] + // + // links: [] + // Or + // edges: [] + label: { + show: false, + formatter: '{b}' + }, + itemStyle: {}, + lineStyle: { + color: '#aaa', + width: 1, + opacity: 0.5 + }, + emphasis: { + scale: true, + label: { + show: true + } + }, + select: { + itemStyle: { + borderColor: '#212121' + } + } + }; + return GraphSeriesModel; + }(SeriesModel); + + var actionInfo = { + type: 'graphRoam', + event: 'graphRoam', + update: 'none' + }; + function install$d(registers) { + registers.registerChartView(GraphView); + registers.registerSeriesModel(GraphSeriesModel); + registers.registerProcessor(categoryFilter); + registers.registerVisual(categoryVisual); + registers.registerVisual(graphEdgeVisual); + registers.registerLayout(graphSimpleLayout); + registers.registerLayout(registers.PRIORITY.VISUAL.POST_CHART_LAYOUT, graphCircularLayout); + registers.registerLayout(graphForceLayout); + registers.registerCoordinateSystem('graphView', { + dimensions: View.dimensions, + create: createViewCoordSys + }); + // Register legacy focus actions + registers.registerAction({ + type: 'focusNodeAdjacency', + event: 'focusNodeAdjacency', + update: 'series:focusNodeAdjacency' + }, noop); + registers.registerAction({ + type: 'unfocusNodeAdjacency', + event: 'unfocusNodeAdjacency', + update: 'series:unfocusNodeAdjacency' + }, noop); + // Register roam action. + registers.registerAction(actionInfo, function (payload, ecModel, api) { + ecModel.eachComponent({ + mainType: 'series', + query: payload + }, function (seriesModel) { + var coordSys = seriesModel.coordinateSystem; + var res = updateCenterAndZoom(coordSys, payload, undefined, api); + seriesModel.setCenter && seriesModel.setCenter(res.center); + seriesModel.setZoom && seriesModel.setZoom(res.zoom); + }); + }); + } + + var PointerShape = /** @class */function () { + function PointerShape() { + this.angle = 0; + this.width = 10; + this.r = 10; + this.x = 0; + this.y = 0; + } + return PointerShape; + }(); + var PointerPath = /** @class */function (_super) { + __extends(PointerPath, _super); + function PointerPath(opts) { + var _this = _super.call(this, opts) || this; + _this.type = 'pointer'; + return _this; + } + PointerPath.prototype.getDefaultShape = function () { + return new PointerShape(); + }; + PointerPath.prototype.buildPath = function (ctx, shape) { + var mathCos = Math.cos; + var mathSin = Math.sin; + var r = shape.r; + var width = shape.width; + var angle = shape.angle; + var x = shape.x - mathCos(angle) * width * (width >= r / 3 ? 1 : 2); + var y = shape.y - mathSin(angle) * width * (width >= r / 3 ? 1 : 2); + angle = shape.angle - Math.PI / 2; + ctx.moveTo(x, y); + ctx.lineTo(shape.x + mathCos(angle) * width, shape.y + mathSin(angle) * width); + ctx.lineTo(shape.x + mathCos(shape.angle) * r, shape.y + mathSin(shape.angle) * r); + ctx.lineTo(shape.x - mathCos(angle) * width, shape.y - mathSin(angle) * width); + ctx.lineTo(x, y); + }; + return PointerPath; + }(Path); + + function parsePosition(seriesModel, api) { + var center = seriesModel.get('center'); + var width = api.getWidth(); + var height = api.getHeight(); + var size = Math.min(width, height); + var cx = parsePercent$1(center[0], api.getWidth()); + var cy = parsePercent$1(center[1], api.getHeight()); + var r = parsePercent$1(seriesModel.get('radius'), size / 2); + return { + cx: cx, + cy: cy, + r: r + }; + } + function formatLabel(value, labelFormatter) { + var label = value == null ? '' : value + ''; + if (labelFormatter) { + if (isString(labelFormatter)) { + label = labelFormatter.replace('{value}', label); + } else if (isFunction(labelFormatter)) { + label = labelFormatter(value); + } + } + return label; + } + var GaugeView = /** @class */function (_super) { + __extends(GaugeView, _super); + function GaugeView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = GaugeView.type; + return _this; + } + GaugeView.prototype.render = function (seriesModel, ecModel, api) { + this.group.removeAll(); + var colorList = seriesModel.get(['axisLine', 'lineStyle', 'color']); + var posInfo = parsePosition(seriesModel, api); + this._renderMain(seriesModel, ecModel, api, colorList, posInfo); + this._data = seriesModel.getData(); + }; + GaugeView.prototype.dispose = function () {}; + GaugeView.prototype._renderMain = function (seriesModel, ecModel, api, colorList, posInfo) { + var group = this.group; + var clockwise = seriesModel.get('clockwise'); + var startAngle = -seriesModel.get('startAngle') / 180 * Math.PI; + var endAngle = -seriesModel.get('endAngle') / 180 * Math.PI; + var axisLineModel = seriesModel.getModel('axisLine'); + var roundCap = axisLineModel.get('roundCap'); + var MainPath = roundCap ? SausagePath : Sector; + var showAxis = axisLineModel.get('show'); + var lineStyleModel = axisLineModel.getModel('lineStyle'); + var axisLineWidth = lineStyleModel.get('width'); + var angles = [startAngle, endAngle]; + normalizeArcAngles(angles, !clockwise); + startAngle = angles[0]; + endAngle = angles[1]; + var angleRangeSpan = endAngle - startAngle; + var prevEndAngle = startAngle; + var sectors = []; + for (var i = 0; showAxis && i < colorList.length; i++) { + // Clamp + var percent = Math.min(Math.max(colorList[i][0], 0), 1); + endAngle = startAngle + angleRangeSpan * percent; + var sector = new MainPath({ + shape: { + startAngle: prevEndAngle, + endAngle: endAngle, + cx: posInfo.cx, + cy: posInfo.cy, + clockwise: clockwise, + r0: posInfo.r - axisLineWidth, + r: posInfo.r + }, + silent: true + }); + sector.setStyle({ + fill: colorList[i][1] + }); + sector.setStyle(lineStyleModel.getLineStyle( + // Because we use sector to simulate arc + // so the properties for stroking are useless + ['color', 'width'])); + sectors.push(sector); + prevEndAngle = endAngle; + } + sectors.reverse(); + each(sectors, function (sector) { + return group.add(sector); + }); + var getColor = function (percent) { + // Less than 0 + if (percent <= 0) { + return colorList[0][1]; + } + var i; + for (i = 0; i < colorList.length; i++) { + if (colorList[i][0] >= percent && (i === 0 ? 0 : colorList[i - 1][0]) < percent) { + return colorList[i][1]; + } + } + // More than 1 + return colorList[i - 1][1]; + }; + this._renderTicks(seriesModel, ecModel, api, getColor, posInfo, startAngle, endAngle, clockwise, axisLineWidth); + this._renderTitleAndDetail(seriesModel, ecModel, api, getColor, posInfo); + this._renderAnchor(seriesModel, posInfo); + this._renderPointer(seriesModel, ecModel, api, getColor, posInfo, startAngle, endAngle, clockwise, axisLineWidth); + }; + GaugeView.prototype._renderTicks = function (seriesModel, ecModel, api, getColor, posInfo, startAngle, endAngle, clockwise, axisLineWidth) { + var group = this.group; + var cx = posInfo.cx; + var cy = posInfo.cy; + var r = posInfo.r; + var minVal = +seriesModel.get('min'); + var maxVal = +seriesModel.get('max'); + var splitLineModel = seriesModel.getModel('splitLine'); + var tickModel = seriesModel.getModel('axisTick'); + var labelModel = seriesModel.getModel('axisLabel'); + var splitNumber = seriesModel.get('splitNumber'); + var subSplitNumber = tickModel.get('splitNumber'); + var splitLineLen = parsePercent$1(splitLineModel.get('length'), r); + var tickLen = parsePercent$1(tickModel.get('length'), r); + var angle = startAngle; + var step = (endAngle - startAngle) / splitNumber; + var subStep = step / subSplitNumber; + var splitLineStyle = splitLineModel.getModel('lineStyle').getLineStyle(); + var tickLineStyle = tickModel.getModel('lineStyle').getLineStyle(); + var splitLineDistance = splitLineModel.get('distance'); + var unitX; + var unitY; + for (var i = 0; i <= splitNumber; i++) { + unitX = Math.cos(angle); + unitY = Math.sin(angle); + // Split line + if (splitLineModel.get('show')) { + var distance = splitLineDistance ? splitLineDistance + axisLineWidth : axisLineWidth; + var splitLine = new Line({ + shape: { + x1: unitX * (r - distance) + cx, + y1: unitY * (r - distance) + cy, + x2: unitX * (r - splitLineLen - distance) + cx, + y2: unitY * (r - splitLineLen - distance) + cy + }, + style: splitLineStyle, + silent: true + }); + if (splitLineStyle.stroke === 'auto') { + splitLine.setStyle({ + stroke: getColor(i / splitNumber) + }); + } + group.add(splitLine); + } + // Label + if (labelModel.get('show')) { + var distance = labelModel.get('distance') + splitLineDistance; + var label = formatLabel(round(i / splitNumber * (maxVal - minVal) + minVal), labelModel.get('formatter')); + var autoColor = getColor(i / splitNumber); + var textStyleX = unitX * (r - splitLineLen - distance) + cx; + var textStyleY = unitY * (r - splitLineLen - distance) + cy; + var rotateType = labelModel.get('rotate'); + var rotate = 0; + if (rotateType === 'radial') { + rotate = -angle + 2 * Math.PI; + if (rotate > Math.PI / 2) { + rotate += Math.PI; + } + } else if (rotateType === 'tangential') { + rotate = -angle - Math.PI / 2; + } else if (isNumber(rotateType)) { + rotate = rotateType * Math.PI / 180; + } + if (rotate === 0) { + group.add(new ZRText({ + style: createTextStyle(labelModel, { + text: label, + x: textStyleX, + y: textStyleY, + verticalAlign: unitY < -0.8 ? 'top' : unitY > 0.8 ? 'bottom' : 'middle', + align: unitX < -0.4 ? 'left' : unitX > 0.4 ? 'right' : 'center' + }, { + inheritColor: autoColor + }), + silent: true + })); + } else { + group.add(new ZRText({ + style: createTextStyle(labelModel, { + text: label, + x: textStyleX, + y: textStyleY, + verticalAlign: 'middle', + align: 'center' + }, { + inheritColor: autoColor + }), + silent: true, + originX: textStyleX, + originY: textStyleY, + rotation: rotate + })); + } + } + // Axis tick + if (tickModel.get('show') && i !== splitNumber) { + var distance = tickModel.get('distance'); + distance = distance ? distance + axisLineWidth : axisLineWidth; + for (var j = 0; j <= subSplitNumber; j++) { + unitX = Math.cos(angle); + unitY = Math.sin(angle); + var tickLine = new Line({ + shape: { + x1: unitX * (r - distance) + cx, + y1: unitY * (r - distance) + cy, + x2: unitX * (r - tickLen - distance) + cx, + y2: unitY * (r - tickLen - distance) + cy + }, + silent: true, + style: tickLineStyle + }); + if (tickLineStyle.stroke === 'auto') { + tickLine.setStyle({ + stroke: getColor((i + j / subSplitNumber) / splitNumber) + }); + } + group.add(tickLine); + angle += subStep; + } + angle -= subStep; + } else { + angle += step; + } + } + }; + GaugeView.prototype._renderPointer = function (seriesModel, ecModel, api, getColor, posInfo, startAngle, endAngle, clockwise, axisLineWidth) { + var group = this.group; + var oldData = this._data; + var oldProgressData = this._progressEls; + var progressList = []; + var showPointer = seriesModel.get(['pointer', 'show']); + var progressModel = seriesModel.getModel('progress'); + var showProgress = progressModel.get('show'); + var data = seriesModel.getData(); + var valueDim = data.mapDimension('value'); + var minVal = +seriesModel.get('min'); + var maxVal = +seriesModel.get('max'); + var valueExtent = [minVal, maxVal]; + var angleExtent = [startAngle, endAngle]; + function createPointer(idx, angle) { + var itemModel = data.getItemModel(idx); + var pointerModel = itemModel.getModel('pointer'); + var pointerWidth = parsePercent$1(pointerModel.get('width'), posInfo.r); + var pointerLength = parsePercent$1(pointerModel.get('length'), posInfo.r); + var pointerStr = seriesModel.get(['pointer', 'icon']); + var pointerOffset = pointerModel.get('offsetCenter'); + var pointerOffsetX = parsePercent$1(pointerOffset[0], posInfo.r); + var pointerOffsetY = parsePercent$1(pointerOffset[1], posInfo.r); + var pointerKeepAspect = pointerModel.get('keepAspect'); + var pointer; + // not exist icon type will be set 'rect' + if (pointerStr) { + pointer = createSymbol(pointerStr, pointerOffsetX - pointerWidth / 2, pointerOffsetY - pointerLength, pointerWidth, pointerLength, null, pointerKeepAspect); + } else { + pointer = new PointerPath({ + shape: { + angle: -Math.PI / 2, + width: pointerWidth, + r: pointerLength, + x: pointerOffsetX, + y: pointerOffsetY + } + }); + } + pointer.rotation = -(angle + Math.PI / 2); + pointer.x = posInfo.cx; + pointer.y = posInfo.cy; + return pointer; + } + function createProgress(idx, endAngle) { + var roundCap = progressModel.get('roundCap'); + var ProgressPath = roundCap ? SausagePath : Sector; + var isOverlap = progressModel.get('overlap'); + var progressWidth = isOverlap ? progressModel.get('width') : axisLineWidth / data.count(); + var r0 = isOverlap ? posInfo.r - progressWidth : posInfo.r - (idx + 1) * progressWidth; + var r = isOverlap ? posInfo.r : posInfo.r - idx * progressWidth; + var progress = new ProgressPath({ + shape: { + startAngle: startAngle, + endAngle: endAngle, + cx: posInfo.cx, + cy: posInfo.cy, + clockwise: clockwise, + r0: r0, + r: r + } + }); + isOverlap && (progress.z2 = maxVal - data.get(valueDim, idx) % maxVal); + return progress; + } + if (showProgress || showPointer) { + data.diff(oldData).add(function (idx) { + var val = data.get(valueDim, idx); + if (showPointer) { + var pointer = createPointer(idx, startAngle); + // TODO hide pointer on NaN value? + initProps(pointer, { + rotation: -((isNaN(+val) ? angleExtent[0] : linearMap(val, valueExtent, angleExtent, true)) + Math.PI / 2) + }, seriesModel); + group.add(pointer); + data.setItemGraphicEl(idx, pointer); + } + if (showProgress) { + var progress = createProgress(idx, startAngle); + var isClip = progressModel.get('clip'); + initProps(progress, { + shape: { + endAngle: linearMap(val, valueExtent, angleExtent, isClip) + } + }, seriesModel); + group.add(progress); + // Add data index and series index for indexing the data by element + // Useful in tooltip + setCommonECData(seriesModel.seriesIndex, data.dataType, idx, progress); + progressList[idx] = progress; + } + }).update(function (newIdx, oldIdx) { + var val = data.get(valueDim, newIdx); + if (showPointer) { + var previousPointer = oldData.getItemGraphicEl(oldIdx); + var previousRotate = previousPointer ? previousPointer.rotation : startAngle; + var pointer = createPointer(newIdx, previousRotate); + pointer.rotation = previousRotate; + updateProps(pointer, { + rotation: -((isNaN(+val) ? angleExtent[0] : linearMap(val, valueExtent, angleExtent, true)) + Math.PI / 2) + }, seriesModel); + group.add(pointer); + data.setItemGraphicEl(newIdx, pointer); + } + if (showProgress) { + var previousProgress = oldProgressData[oldIdx]; + var previousEndAngle = previousProgress ? previousProgress.shape.endAngle : startAngle; + var progress = createProgress(newIdx, previousEndAngle); + var isClip = progressModel.get('clip'); + updateProps(progress, { + shape: { + endAngle: linearMap(val, valueExtent, angleExtent, isClip) + } + }, seriesModel); + group.add(progress); + // Add data index and series index for indexing the data by element + // Useful in tooltip + setCommonECData(seriesModel.seriesIndex, data.dataType, newIdx, progress); + progressList[newIdx] = progress; + } + }).execute(); + data.each(function (idx) { + var itemModel = data.getItemModel(idx); + var emphasisModel = itemModel.getModel('emphasis'); + var focus = emphasisModel.get('focus'); + var blurScope = emphasisModel.get('blurScope'); + var emphasisDisabled = emphasisModel.get('disabled'); + if (showPointer) { + var pointer = data.getItemGraphicEl(idx); + var symbolStyle = data.getItemVisual(idx, 'style'); + var visualColor = symbolStyle.fill; + if (pointer instanceof ZRImage) { + var pathStyle = pointer.style; + pointer.useStyle(extend({ + image: pathStyle.image, + x: pathStyle.x, + y: pathStyle.y, + width: pathStyle.width, + height: pathStyle.height + }, symbolStyle)); + } else { + pointer.useStyle(symbolStyle); + pointer.type !== 'pointer' && pointer.setColor(visualColor); + } + pointer.setStyle(itemModel.getModel(['pointer', 'itemStyle']).getItemStyle()); + if (pointer.style.fill === 'auto') { + pointer.setStyle('fill', getColor(linearMap(data.get(valueDim, idx), valueExtent, [0, 1], true))); + } + pointer.z2EmphasisLift = 0; + setStatesStylesFromModel(pointer, itemModel); + toggleHoverEmphasis(pointer, focus, blurScope, emphasisDisabled); + } + if (showProgress) { + var progress = progressList[idx]; + progress.useStyle(data.getItemVisual(idx, 'style')); + progress.setStyle(itemModel.getModel(['progress', 'itemStyle']).getItemStyle()); + progress.z2EmphasisLift = 0; + setStatesStylesFromModel(progress, itemModel); + toggleHoverEmphasis(progress, focus, blurScope, emphasisDisabled); + } + }); + this._progressEls = progressList; + } + }; + GaugeView.prototype._renderAnchor = function (seriesModel, posInfo) { + var anchorModel = seriesModel.getModel('anchor'); + var showAnchor = anchorModel.get('show'); + if (showAnchor) { + var anchorSize = anchorModel.get('size'); + var anchorType = anchorModel.get('icon'); + var offsetCenter = anchorModel.get('offsetCenter'); + var anchorKeepAspect = anchorModel.get('keepAspect'); + var anchor = createSymbol(anchorType, posInfo.cx - anchorSize / 2 + parsePercent$1(offsetCenter[0], posInfo.r), posInfo.cy - anchorSize / 2 + parsePercent$1(offsetCenter[1], posInfo.r), anchorSize, anchorSize, null, anchorKeepAspect); + anchor.z2 = anchorModel.get('showAbove') ? 1 : 0; + anchor.setStyle(anchorModel.getModel('itemStyle').getItemStyle()); + this.group.add(anchor); + } + }; + GaugeView.prototype._renderTitleAndDetail = function (seriesModel, ecModel, api, getColor, posInfo) { + var _this = this; + var data = seriesModel.getData(); + var valueDim = data.mapDimension('value'); + var minVal = +seriesModel.get('min'); + var maxVal = +seriesModel.get('max'); + var contentGroup = new Group(); + var newTitleEls = []; + var newDetailEls = []; + var hasAnimation = seriesModel.isAnimationEnabled(); + var showPointerAbove = seriesModel.get(['pointer', 'showAbove']); + data.diff(this._data).add(function (idx) { + newTitleEls[idx] = new ZRText({ + silent: true + }); + newDetailEls[idx] = new ZRText({ + silent: true + }); + }).update(function (idx, oldIdx) { + newTitleEls[idx] = _this._titleEls[oldIdx]; + newDetailEls[idx] = _this._detailEls[oldIdx]; + }).execute(); + data.each(function (idx) { + var itemModel = data.getItemModel(idx); + var value = data.get(valueDim, idx); + var itemGroup = new Group(); + var autoColor = getColor(linearMap(value, [minVal, maxVal], [0, 1], true)); + var itemTitleModel = itemModel.getModel('title'); + if (itemTitleModel.get('show')) { + var titleOffsetCenter = itemTitleModel.get('offsetCenter'); + var titleX = posInfo.cx + parsePercent$1(titleOffsetCenter[0], posInfo.r); + var titleY = posInfo.cy + parsePercent$1(titleOffsetCenter[1], posInfo.r); + var labelEl = newTitleEls[idx]; + labelEl.attr({ + z2: showPointerAbove ? 0 : 2, + style: createTextStyle(itemTitleModel, { + x: titleX, + y: titleY, + text: data.getName(idx), + align: 'center', + verticalAlign: 'middle' + }, { + inheritColor: autoColor + }) + }); + itemGroup.add(labelEl); + } + var itemDetailModel = itemModel.getModel('detail'); + if (itemDetailModel.get('show')) { + var detailOffsetCenter = itemDetailModel.get('offsetCenter'); + var detailX = posInfo.cx + parsePercent$1(detailOffsetCenter[0], posInfo.r); + var detailY = posInfo.cy + parsePercent$1(detailOffsetCenter[1], posInfo.r); + var width = parsePercent$1(itemDetailModel.get('width'), posInfo.r); + var height = parsePercent$1(itemDetailModel.get('height'), posInfo.r); + var detailColor = seriesModel.get(['progress', 'show']) ? data.getItemVisual(idx, 'style').fill : autoColor; + var labelEl = newDetailEls[idx]; + var formatter_1 = itemDetailModel.get('formatter'); + labelEl.attr({ + z2: showPointerAbove ? 0 : 2, + style: createTextStyle(itemDetailModel, { + x: detailX, + y: detailY, + text: formatLabel(value, formatter_1), + width: isNaN(width) ? null : width, + height: isNaN(height) ? null : height, + align: 'center', + verticalAlign: 'middle' + }, { + inheritColor: detailColor + }) + }); + setLabelValueAnimation(labelEl, { + normal: itemDetailModel + }, value, function (value) { + return formatLabel(value, formatter_1); + }); + hasAnimation && animateLabelValue(labelEl, idx, data, seriesModel, { + getFormattedLabel: function (labelDataIndex, status, dataType, labelDimIndex, fmt, extendParams) { + return formatLabel(extendParams ? extendParams.interpolatedValue : value, formatter_1); + } + }); + itemGroup.add(labelEl); + } + contentGroup.add(itemGroup); + }); + this.group.add(contentGroup); + this._titleEls = newTitleEls; + this._detailEls = newDetailEls; + }; + GaugeView.type = 'gauge'; + return GaugeView; + }(ChartView); + + var GaugeSeriesModel = /** @class */function (_super) { + __extends(GaugeSeriesModel, _super); + function GaugeSeriesModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = GaugeSeriesModel.type; + _this.visualStyleAccessPath = 'itemStyle'; + return _this; + } + GaugeSeriesModel.prototype.getInitialData = function (option, ecModel) { + return createSeriesDataSimply(this, ['value']); + }; + GaugeSeriesModel.type = 'series.gauge'; + GaugeSeriesModel.defaultOption = { + // zlevel: 0, + z: 2, + colorBy: 'data', + // 默认全局居中 + center: ['50%', '50%'], + legendHoverLink: true, + radius: '75%', + startAngle: 225, + endAngle: -45, + clockwise: true, + // 最小值 + min: 0, + // 最大值 + max: 100, + // 分割段数,默认为10 + splitNumber: 10, + // 坐标轴线 + axisLine: { + // 默认显示,属性show控制显示与否 + show: true, + roundCap: false, + lineStyle: { + color: [[1, '#E6EBF8']], + width: 10 + } + }, + // 坐标轴线 + progress: { + // 默认显示,属性show控制显示与否 + show: false, + overlap: true, + width: 10, + roundCap: false, + clip: true + }, + // 分隔线 + splitLine: { + // 默认显示,属性show控制显示与否 + show: true, + // 属性length控制线长 + length: 10, + distance: 10, + // 属性lineStyle(详见lineStyle)控制线条样式 + lineStyle: { + color: '#63677A', + width: 3, + type: 'solid' + } + }, + // 坐标轴小标记 + axisTick: { + // 属性show控制显示与否,默认不显示 + show: true, + // 每份split细分多少段 + splitNumber: 5, + // 属性length控制线长 + length: 6, + distance: 10, + // 属性lineStyle控制线条样式 + lineStyle: { + color: '#63677A', + width: 1, + type: 'solid' + } + }, + axisLabel: { + show: true, + distance: 15, + // formatter: null, + color: '#464646', + fontSize: 12, + rotate: 0 + }, + pointer: { + icon: null, + offsetCenter: [0, 0], + show: true, + showAbove: true, + length: '60%', + width: 6, + keepAspect: false + }, + anchor: { + show: false, + showAbove: false, + size: 6, + icon: 'circle', + offsetCenter: [0, 0], + keepAspect: false, + itemStyle: { + color: '#fff', + borderWidth: 0, + borderColor: '#5470c6' + } + }, + title: { + show: true, + // x, y,单位px + offsetCenter: [0, '20%'], + // 其余属性默认使用全局文本样式,详见TEXTSTYLE + color: '#464646', + fontSize: 16, + valueAnimation: false + }, + detail: { + show: true, + backgroundColor: 'rgba(0,0,0,0)', + borderWidth: 0, + borderColor: '#ccc', + width: 100, + height: null, + padding: [5, 10], + // x, y,单位px + offsetCenter: [0, '40%'], + // formatter: null, + // 其余属性默认使用全局文本样式,详见TEXTSTYLE + color: '#464646', + fontSize: 30, + fontWeight: 'bold', + lineHeight: 30, + valueAnimation: false + } + }; + return GaugeSeriesModel; + }(SeriesModel); + + function install$e(registers) { + registers.registerChartView(GaugeView); + registers.registerSeriesModel(GaugeSeriesModel); + } + + var opacityAccessPath = ['itemStyle', 'opacity']; + /** + * Piece of pie including Sector, Label, LabelLine + */ + var FunnelPiece = /** @class */function (_super) { + __extends(FunnelPiece, _super); + function FunnelPiece(data, idx) { + var _this = _super.call(this) || this; + var polygon = _this; + var labelLine = new Polyline(); + var text = new ZRText(); + polygon.setTextContent(text); + _this.setTextGuideLine(labelLine); + _this.updateData(data, idx, true); + return _this; + } + FunnelPiece.prototype.updateData = function (data, idx, firstCreate) { + var polygon = this; + var seriesModel = data.hostModel; + var itemModel = data.getItemModel(idx); + var layout = data.getItemLayout(idx); + var emphasisModel = itemModel.getModel('emphasis'); + var opacity = itemModel.get(opacityAccessPath); + opacity = opacity == null ? 1 : opacity; + if (!firstCreate) { + saveOldStyle(polygon); + } + // Update common style + polygon.useStyle(data.getItemVisual(idx, 'style')); + polygon.style.lineJoin = 'round'; + if (firstCreate) { + polygon.setShape({ + points: layout.points + }); + polygon.style.opacity = 0; + initProps(polygon, { + style: { + opacity: opacity + } + }, seriesModel, idx); + } else { + updateProps(polygon, { + style: { + opacity: opacity + }, + shape: { + points: layout.points + } + }, seriesModel, idx); + } + setStatesStylesFromModel(polygon, itemModel); + this._updateLabel(data, idx); + toggleHoverEmphasis(this, emphasisModel.get('focus'), emphasisModel.get('blurScope'), emphasisModel.get('disabled')); + }; + FunnelPiece.prototype._updateLabel = function (data, idx) { + var polygon = this; + var labelLine = this.getTextGuideLine(); + var labelText = polygon.getTextContent(); + var seriesModel = data.hostModel; + var itemModel = data.getItemModel(idx); + var layout = data.getItemLayout(idx); + var labelLayout = layout.label; + var style = data.getItemVisual(idx, 'style'); + var visualColor = style.fill; + setLabelStyle( + // position will not be used in setLabelStyle + labelText, getLabelStatesModels(itemModel), { + labelFetcher: data.hostModel, + labelDataIndex: idx, + defaultOpacity: style.opacity, + defaultText: data.getName(idx) + }, { + normal: { + align: labelLayout.textAlign, + verticalAlign: labelLayout.verticalAlign + } + }); + polygon.setTextConfig({ + local: true, + inside: !!labelLayout.inside, + insideStroke: visualColor, + // insideFill: 'auto', + outsideFill: visualColor + }); + var linePoints = labelLayout.linePoints; + labelLine.setShape({ + points: linePoints + }); + polygon.textGuideLineConfig = { + anchor: linePoints ? new Point(linePoints[0][0], linePoints[0][1]) : null + }; + // Make sure update style on labelText after setLabelStyle. + // Because setLabelStyle will replace a new style on it. + updateProps(labelText, { + style: { + x: labelLayout.x, + y: labelLayout.y + } + }, seriesModel, idx); + labelText.attr({ + rotation: labelLayout.rotation, + originX: labelLayout.x, + originY: labelLayout.y, + z2: 10 + }); + setLabelLineStyle(polygon, getLabelLineStatesModels(itemModel), { + // Default use item visual color + stroke: visualColor + }); + }; + return FunnelPiece; + }(Polygon); + var FunnelView = /** @class */function (_super) { + __extends(FunnelView, _super); + function FunnelView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = FunnelView.type; + _this.ignoreLabelLineUpdate = true; + return _this; + } + FunnelView.prototype.render = function (seriesModel, ecModel, api) { + var data = seriesModel.getData(); + var oldData = this._data; + var group = this.group; + data.diff(oldData).add(function (idx) { + var funnelPiece = new FunnelPiece(data, idx); + data.setItemGraphicEl(idx, funnelPiece); + group.add(funnelPiece); + }).update(function (newIdx, oldIdx) { + var piece = oldData.getItemGraphicEl(oldIdx); + piece.updateData(data, newIdx); + group.add(piece); + data.setItemGraphicEl(newIdx, piece); + }).remove(function (idx) { + var piece = oldData.getItemGraphicEl(idx); + removeElementWithFadeOut(piece, seriesModel, idx); + }).execute(); + this._data = data; + }; + FunnelView.prototype.remove = function () { + this.group.removeAll(); + this._data = null; + }; + FunnelView.prototype.dispose = function () {}; + FunnelView.type = 'funnel'; + return FunnelView; + }(ChartView); + + var FunnelSeriesModel = /** @class */function (_super) { + __extends(FunnelSeriesModel, _super); + function FunnelSeriesModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = FunnelSeriesModel.type; + return _this; + } + FunnelSeriesModel.prototype.init = function (option) { + _super.prototype.init.apply(this, arguments); + // Enable legend selection for each data item + // Use a function instead of direct access because data reference may changed + this.legendVisualProvider = new LegendVisualProvider(bind(this.getData, this), bind(this.getRawData, this)); + // Extend labelLine emphasis + this._defaultLabelLine(option); + }; + FunnelSeriesModel.prototype.getInitialData = function (option, ecModel) { + return createSeriesDataSimply(this, { + coordDimensions: ['value'], + encodeDefaulter: curry(makeSeriesEncodeForNameBased, this) + }); + }; + FunnelSeriesModel.prototype._defaultLabelLine = function (option) { + // Extend labelLine emphasis + defaultEmphasis(option, 'labelLine', ['show']); + var labelLineNormalOpt = option.labelLine; + var labelLineEmphasisOpt = option.emphasis.labelLine; + // Not show label line if `label.normal.show = false` + labelLineNormalOpt.show = labelLineNormalOpt.show && option.label.show; + labelLineEmphasisOpt.show = labelLineEmphasisOpt.show && option.emphasis.label.show; + }; + // Overwrite + FunnelSeriesModel.prototype.getDataParams = function (dataIndex) { + var data = this.getData(); + var params = _super.prototype.getDataParams.call(this, dataIndex); + var valueDim = data.mapDimension('value'); + var sum = data.getSum(valueDim); + // Percent is 0 if sum is 0 + params.percent = !sum ? 0 : +(data.get(valueDim, dataIndex) / sum * 100).toFixed(2); + params.$vars.push('percent'); + return params; + }; + FunnelSeriesModel.type = 'series.funnel'; + FunnelSeriesModel.defaultOption = { + // zlevel: 0, // 一级层叠 + z: 2, + legendHoverLink: true, + colorBy: 'data', + left: 80, + top: 60, + right: 80, + bottom: 60, + // width: {totalWidth} - left - right, + // height: {totalHeight} - top - bottom, + // 默认取数据最小最大值 + // min: 0, + // max: 100, + minSize: '0%', + maxSize: '100%', + sort: 'descending', + orient: 'vertical', + gap: 0, + funnelAlign: 'center', + label: { + show: true, + position: 'outer' + // formatter: 标签文本格式器,同Tooltip.formatter,不支持异步回调 + }, + + labelLine: { + show: true, + length: 20, + lineStyle: { + // color: 各异, + width: 1 + } + }, + itemStyle: { + // color: 各异, + borderColor: '#fff', + borderWidth: 1 + }, + emphasis: { + label: { + show: true + } + }, + select: { + itemStyle: { + borderColor: '#212121' + } + } + }; + return FunnelSeriesModel; + }(SeriesModel); + + function getViewRect$3(seriesModel, api) { + return getLayoutRect(seriesModel.getBoxLayoutParams(), { + width: api.getWidth(), + height: api.getHeight() + }); + } + function getSortedIndices(data, sort) { + var valueDim = data.mapDimension('value'); + var valueArr = data.mapArray(valueDim, function (val) { + return val; + }); + var indices = []; + var isAscending = sort === 'ascending'; + for (var i = 0, len = data.count(); i < len; i++) { + indices[i] = i; + } + // Add custom sortable function & none sortable opetion by "options.sort" + if (isFunction(sort)) { + indices.sort(sort); + } else if (sort !== 'none') { + indices.sort(function (a, b) { + return isAscending ? valueArr[a] - valueArr[b] : valueArr[b] - valueArr[a]; + }); + } + return indices; + } + function labelLayout(data) { + var seriesModel = data.hostModel; + var orient = seriesModel.get('orient'); + data.each(function (idx) { + var itemModel = data.getItemModel(idx); + var labelModel = itemModel.getModel('label'); + var labelPosition = labelModel.get('position'); + var labelLineModel = itemModel.getModel('labelLine'); + var layout = data.getItemLayout(idx); + var points = layout.points; + var isLabelInside = labelPosition === 'inner' || labelPosition === 'inside' || labelPosition === 'center' || labelPosition === 'insideLeft' || labelPosition === 'insideRight'; + var textAlign; + var textX; + var textY; + var linePoints; + if (isLabelInside) { + if (labelPosition === 'insideLeft') { + textX = (points[0][0] + points[3][0]) / 2 + 5; + textY = (points[0][1] + points[3][1]) / 2; + textAlign = 'left'; + } else if (labelPosition === 'insideRight') { + textX = (points[1][0] + points[2][0]) / 2 - 5; + textY = (points[1][1] + points[2][1]) / 2; + textAlign = 'right'; + } else { + textX = (points[0][0] + points[1][0] + points[2][0] + points[3][0]) / 4; + textY = (points[0][1] + points[1][1] + points[2][1] + points[3][1]) / 4; + textAlign = 'center'; + } + linePoints = [[textX, textY], [textX, textY]]; + } else { + var x1 = void 0; + var y1 = void 0; + var x2 = void 0; + var y2 = void 0; + var labelLineLen = labelLineModel.get('length'); + if ("development" !== 'production') { + if (orient === 'vertical' && ['top', 'bottom'].indexOf(labelPosition) > -1) { + labelPosition = 'left'; + console.warn('Position error: Funnel chart on vertical orient dose not support top and bottom.'); + } + if (orient === 'horizontal' && ['left', 'right'].indexOf(labelPosition) > -1) { + labelPosition = 'bottom'; + console.warn('Position error: Funnel chart on horizontal orient dose not support left and right.'); + } + } + if (labelPosition === 'left') { + // Left side + x1 = (points[3][0] + points[0][0]) / 2; + y1 = (points[3][1] + points[0][1]) / 2; + x2 = x1 - labelLineLen; + textX = x2 - 5; + textAlign = 'right'; + } else if (labelPosition === 'right') { + // Right side + x1 = (points[1][0] + points[2][0]) / 2; + y1 = (points[1][1] + points[2][1]) / 2; + x2 = x1 + labelLineLen; + textX = x2 + 5; + textAlign = 'left'; + } else if (labelPosition === 'top') { + // Top side + x1 = (points[3][0] + points[0][0]) / 2; + y1 = (points[3][1] + points[0][1]) / 2; + y2 = y1 - labelLineLen; + textY = y2 - 5; + textAlign = 'center'; + } else if (labelPosition === 'bottom') { + // Bottom side + x1 = (points[1][0] + points[2][0]) / 2; + y1 = (points[1][1] + points[2][1]) / 2; + y2 = y1 + labelLineLen; + textY = y2 + 5; + textAlign = 'center'; + } else if (labelPosition === 'rightTop') { + // RightTop side + x1 = orient === 'horizontal' ? points[3][0] : points[1][0]; + y1 = orient === 'horizontal' ? points[3][1] : points[1][1]; + if (orient === 'horizontal') { + y2 = y1 - labelLineLen; + textY = y2 - 5; + textAlign = 'center'; + } else { + x2 = x1 + labelLineLen; + textX = x2 + 5; + textAlign = 'top'; + } + } else if (labelPosition === 'rightBottom') { + // RightBottom side + x1 = points[2][0]; + y1 = points[2][1]; + if (orient === 'horizontal') { + y2 = y1 + labelLineLen; + textY = y2 + 5; + textAlign = 'center'; + } else { + x2 = x1 + labelLineLen; + textX = x2 + 5; + textAlign = 'bottom'; + } + } else if (labelPosition === 'leftTop') { + // LeftTop side + x1 = points[0][0]; + y1 = orient === 'horizontal' ? points[0][1] : points[1][1]; + if (orient === 'horizontal') { + y2 = y1 - labelLineLen; + textY = y2 - 5; + textAlign = 'center'; + } else { + x2 = x1 - labelLineLen; + textX = x2 - 5; + textAlign = 'right'; + } + } else if (labelPosition === 'leftBottom') { + // LeftBottom side + x1 = orient === 'horizontal' ? points[1][0] : points[3][0]; + y1 = orient === 'horizontal' ? points[1][1] : points[2][1]; + if (orient === 'horizontal') { + y2 = y1 + labelLineLen; + textY = y2 + 5; + textAlign = 'center'; + } else { + x2 = x1 - labelLineLen; + textX = x2 - 5; + textAlign = 'right'; + } + } else { + // Right side or Bottom side + x1 = (points[1][0] + points[2][0]) / 2; + y1 = (points[1][1] + points[2][1]) / 2; + if (orient === 'horizontal') { + y2 = y1 + labelLineLen; + textY = y2 + 5; + textAlign = 'center'; + } else { + x2 = x1 + labelLineLen; + textX = x2 + 5; + textAlign = 'left'; + } + } + if (orient === 'horizontal') { + x2 = x1; + textX = x2; + } else { + y2 = y1; + textY = y2; + } + linePoints = [[x1, y1], [x2, y2]]; + } + layout.label = { + linePoints: linePoints, + x: textX, + y: textY, + verticalAlign: 'middle', + textAlign: textAlign, + inside: isLabelInside + }; + }); + } + function funnelLayout(ecModel, api) { + ecModel.eachSeriesByType('funnel', function (seriesModel) { + var data = seriesModel.getData(); + var valueDim = data.mapDimension('value'); + var sort = seriesModel.get('sort'); + var viewRect = getViewRect$3(seriesModel, api); + var orient = seriesModel.get('orient'); + var viewWidth = viewRect.width; + var viewHeight = viewRect.height; + var indices = getSortedIndices(data, sort); + var x = viewRect.x; + var y = viewRect.y; + var sizeExtent = orient === 'horizontal' ? [parsePercent$1(seriesModel.get('minSize'), viewHeight), parsePercent$1(seriesModel.get('maxSize'), viewHeight)] : [parsePercent$1(seriesModel.get('minSize'), viewWidth), parsePercent$1(seriesModel.get('maxSize'), viewWidth)]; + var dataExtent = data.getDataExtent(valueDim); + var min = seriesModel.get('min'); + var max = seriesModel.get('max'); + if (min == null) { + min = Math.min(dataExtent[0], 0); + } + if (max == null) { + max = dataExtent[1]; + } + var funnelAlign = seriesModel.get('funnelAlign'); + var gap = seriesModel.get('gap'); + var viewSize = orient === 'horizontal' ? viewWidth : viewHeight; + var itemSize = (viewSize - gap * (data.count() - 1)) / data.count(); + var getLinePoints = function (idx, offset) { + // End point index is data.count() and we assign it 0 + if (orient === 'horizontal') { + var val_1 = data.get(valueDim, idx) || 0; + var itemHeight = linearMap(val_1, [min, max], sizeExtent, true); + var y0 = void 0; + switch (funnelAlign) { + case 'top': + y0 = y; + break; + case 'center': + y0 = y + (viewHeight - itemHeight) / 2; + break; + case 'bottom': + y0 = y + (viewHeight - itemHeight); + break; + } + return [[offset, y0], [offset, y0 + itemHeight]]; + } + var val = data.get(valueDim, idx) || 0; + var itemWidth = linearMap(val, [min, max], sizeExtent, true); + var x0; + switch (funnelAlign) { + case 'left': + x0 = x; + break; + case 'center': + x0 = x + (viewWidth - itemWidth) / 2; + break; + case 'right': + x0 = x + viewWidth - itemWidth; + break; + } + return [[x0, offset], [x0 + itemWidth, offset]]; + }; + if (sort === 'ascending') { + // From bottom to top + itemSize = -itemSize; + gap = -gap; + if (orient === 'horizontal') { + x += viewWidth; + } else { + y += viewHeight; + } + indices = indices.reverse(); + } + for (var i = 0; i < indices.length; i++) { + var idx = indices[i]; + var nextIdx = indices[i + 1]; + var itemModel = data.getItemModel(idx); + if (orient === 'horizontal') { + var width = itemModel.get(['itemStyle', 'width']); + if (width == null) { + width = itemSize; + } else { + width = parsePercent$1(width, viewWidth); + if (sort === 'ascending') { + width = -width; + } + } + var start = getLinePoints(idx, x); + var end = getLinePoints(nextIdx, x + width); + x += width + gap; + data.setItemLayout(idx, { + points: start.concat(end.slice().reverse()) + }); + } else { + var height = itemModel.get(['itemStyle', 'height']); + if (height == null) { + height = itemSize; + } else { + height = parsePercent$1(height, viewHeight); + if (sort === 'ascending') { + height = -height; + } + } + var start = getLinePoints(idx, y); + var end = getLinePoints(nextIdx, y + height); + y += height + gap; + data.setItemLayout(idx, { + points: start.concat(end.slice().reverse()) + }); + } + } + labelLayout(data); + }); + } + + function install$f(registers) { + registers.registerChartView(FunnelView); + registers.registerSeriesModel(FunnelSeriesModel); + registers.registerLayout(funnelLayout); + registers.registerProcessor(dataFilter('funnel')); + } + + var DEFAULT_SMOOTH = 0.3; + var ParallelView = /** @class */function (_super) { + __extends(ParallelView, _super); + function ParallelView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = ParallelView.type; + _this._dataGroup = new Group(); + _this._initialized = false; + return _this; + } + ParallelView.prototype.init = function () { + this.group.add(this._dataGroup); + }; + /** + * @override + */ + ParallelView.prototype.render = function (seriesModel, ecModel, api, payload) { + // Clear previously rendered progressive elements. + this._progressiveEls = null; + var dataGroup = this._dataGroup; + var data = seriesModel.getData(); + var oldData = this._data; + var coordSys = seriesModel.coordinateSystem; + var dimensions = coordSys.dimensions; + var seriesScope = makeSeriesScope$2(seriesModel); + data.diff(oldData).add(add).update(update).remove(remove).execute(); + function add(newDataIndex) { + var line = addEl(data, dataGroup, newDataIndex, dimensions, coordSys); + updateElCommon(line, data, newDataIndex, seriesScope); + } + function update(newDataIndex, oldDataIndex) { + var line = oldData.getItemGraphicEl(oldDataIndex); + var points = createLinePoints(data, newDataIndex, dimensions, coordSys); + data.setItemGraphicEl(newDataIndex, line); + updateProps(line, { + shape: { + points: points + } + }, seriesModel, newDataIndex); + saveOldStyle(line); + updateElCommon(line, data, newDataIndex, seriesScope); + } + function remove(oldDataIndex) { + var line = oldData.getItemGraphicEl(oldDataIndex); + dataGroup.remove(line); + } + // First create + if (!this._initialized) { + this._initialized = true; + var clipPath = createGridClipShape(coordSys, seriesModel, function () { + // Callback will be invoked immediately if there is no animation + setTimeout(function () { + dataGroup.removeClipPath(); + }); + }); + dataGroup.setClipPath(clipPath); + } + this._data = data; + }; + ParallelView.prototype.incrementalPrepareRender = function (seriesModel, ecModel, api) { + this._initialized = true; + this._data = null; + this._dataGroup.removeAll(); + }; + ParallelView.prototype.incrementalRender = function (taskParams, seriesModel, ecModel) { + var data = seriesModel.getData(); + var coordSys = seriesModel.coordinateSystem; + var dimensions = coordSys.dimensions; + var seriesScope = makeSeriesScope$2(seriesModel); + var progressiveEls = this._progressiveEls = []; + for (var dataIndex = taskParams.start; dataIndex < taskParams.end; dataIndex++) { + var line = addEl(data, this._dataGroup, dataIndex, dimensions, coordSys); + line.incremental = true; + updateElCommon(line, data, dataIndex, seriesScope); + progressiveEls.push(line); + } + }; + ParallelView.prototype.remove = function () { + this._dataGroup && this._dataGroup.removeAll(); + this._data = null; + }; + ParallelView.type = 'parallel'; + return ParallelView; + }(ChartView); + function createGridClipShape(coordSys, seriesModel, cb) { + var parallelModel = coordSys.model; + var rect = coordSys.getRect(); + var rectEl = new Rect({ + shape: { + x: rect.x, + y: rect.y, + width: rect.width, + height: rect.height + } + }); + var dim = parallelModel.get('layout') === 'horizontal' ? 'width' : 'height'; + rectEl.setShape(dim, 0); + initProps(rectEl, { + shape: { + width: rect.width, + height: rect.height + } + }, seriesModel, cb); + return rectEl; + } + function createLinePoints(data, dataIndex, dimensions, coordSys) { + var points = []; + for (var i = 0; i < dimensions.length; i++) { + var dimName = dimensions[i]; + var value = data.get(data.mapDimension(dimName), dataIndex); + if (!isEmptyValue(value, coordSys.getAxis(dimName).type)) { + points.push(coordSys.dataToPoint(value, dimName)); + } + } + return points; + } + function addEl(data, dataGroup, dataIndex, dimensions, coordSys) { + var points = createLinePoints(data, dataIndex, dimensions, coordSys); + var line = new Polyline({ + shape: { + points: points + }, + // silent: true, + z2: 10 + }); + dataGroup.add(line); + data.setItemGraphicEl(dataIndex, line); + return line; + } + function makeSeriesScope$2(seriesModel) { + var smooth = seriesModel.get('smooth', true); + smooth === true && (smooth = DEFAULT_SMOOTH); + smooth = numericToNumber(smooth); + eqNaN(smooth) && (smooth = 0); + return { + smooth: smooth + }; + } + function updateElCommon(el, data, dataIndex, seriesScope) { + el.useStyle(data.getItemVisual(dataIndex, 'style')); + el.style.fill = null; + el.setShape('smooth', seriesScope.smooth); + var itemModel = data.getItemModel(dataIndex); + var emphasisModel = itemModel.getModel('emphasis'); + setStatesStylesFromModel(el, itemModel, 'lineStyle'); + toggleHoverEmphasis(el, emphasisModel.get('focus'), emphasisModel.get('blurScope'), emphasisModel.get('disabled')); + } + // function simpleDiff(oldData, newData, dimensions) { + // let oldLen; + // if (!oldData + // || !oldData.__plProgressive + // || (oldLen = oldData.count()) !== newData.count() + // ) { + // return true; + // } + // let dimLen = dimensions.length; + // for (let i = 0; i < oldLen; i++) { + // for (let j = 0; j < dimLen; j++) { + // if (oldData.get(dimensions[j], i) !== newData.get(dimensions[j], i)) { + // return true; + // } + // } + // } + // return false; + // } + // FIXME put in common util? + function isEmptyValue(val, axisType) { + return axisType === 'category' ? val == null : val == null || isNaN(val); // axisType === 'value' + } + + var ParallelSeriesModel = /** @class */function (_super) { + __extends(ParallelSeriesModel, _super); + function ParallelSeriesModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = ParallelSeriesModel.type; + _this.visualStyleAccessPath = 'lineStyle'; + _this.visualDrawType = 'stroke'; + return _this; + } + ParallelSeriesModel.prototype.getInitialData = function (option, ecModel) { + return createSeriesData(null, this, { + useEncodeDefaulter: bind(makeDefaultEncode, null, this) + }); + }; + /** + * User can get data raw indices on 'axisAreaSelected' event received. + * + * @return Raw indices + */ + ParallelSeriesModel.prototype.getRawIndicesByActiveState = function (activeState) { + var coordSys = this.coordinateSystem; + var data = this.getData(); + var indices = []; + coordSys.eachActiveState(data, function (theActiveState, dataIndex) { + if (activeState === theActiveState) { + indices.push(data.getRawIndex(dataIndex)); + } + }); + return indices; + }; + ParallelSeriesModel.type = 'series.parallel'; + ParallelSeriesModel.dependencies = ['parallel']; + ParallelSeriesModel.defaultOption = { + // zlevel: 0, + z: 2, + coordinateSystem: 'parallel', + parallelIndex: 0, + label: { + show: false + }, + inactiveOpacity: 0.05, + activeOpacity: 1, + lineStyle: { + width: 1, + opacity: 0.45, + type: 'solid' + }, + emphasis: { + label: { + show: false + } + }, + progressive: 500, + smooth: false, + animationEasing: 'linear' + }; + return ParallelSeriesModel; + }(SeriesModel); + function makeDefaultEncode(seriesModel) { + // The mapping of parallelAxis dimension to data dimension can + // be specified in parallelAxis.option.dim. For example, if + // parallelAxis.option.dim is 'dim3', it mapping to the third + // dimension of data. But `data.encode` has higher priority. + // Moreover, parallelModel.dimension should not be regarded as data + // dimensions. Consider dimensions = ['dim4', 'dim2', 'dim6']; + var parallelModel = seriesModel.ecModel.getComponent('parallel', seriesModel.get('parallelIndex')); + if (!parallelModel) { + return; + } + var encodeDefine = {}; + each(parallelModel.dimensions, function (axisDim) { + var dataDimIndex = convertDimNameToNumber(axisDim); + encodeDefine[axisDim] = dataDimIndex; + }); + return encodeDefine; + } + function convertDimNameToNumber(dimName) { + return +dimName.replace('dim', ''); + } + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + + /** + * AUTO-GENERATED FILE. DO NOT MODIFY. + */ + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + var opacityAccessPath$1 = ['lineStyle', 'opacity']; + var parallelVisual = { + seriesType: 'parallel', + reset: function (seriesModel, ecModel) { + var coordSys = seriesModel.coordinateSystem; + var opacityMap = { + normal: seriesModel.get(['lineStyle', 'opacity']), + active: seriesModel.get('activeOpacity'), + inactive: seriesModel.get('inactiveOpacity') + }; + return { + progress: function (params, data) { + coordSys.eachActiveState(data, function (activeState, dataIndex) { + var opacity = opacityMap[activeState]; + if (activeState === 'normal' && data.hasItemOption) { + var itemOpacity = data.getItemModel(dataIndex).get(opacityAccessPath$1, true); + itemOpacity != null && (opacity = itemOpacity); + } + var existsStyle = data.ensureUniqueItemVisual(dataIndex, 'style'); + existsStyle.opacity = opacity; + }, params.start, params.end); + } + }; + } + }; + + function parallelPreprocessor(option) { + createParallelIfNeeded(option); + mergeAxisOptionFromParallel(option); + } + /** + * Create a parallel coordinate if not exists. + * @inner + */ + function createParallelIfNeeded(option) { + if (option.parallel) { + return; + } + var hasParallelSeries = false; + each(option.series, function (seriesOpt) { + if (seriesOpt && seriesOpt.type === 'parallel') { + hasParallelSeries = true; + } + }); + if (hasParallelSeries) { + option.parallel = [{}]; + } + } + /** + * Merge aixs definition from parallel option (if exists) to axis option. + * @inner + */ + function mergeAxisOptionFromParallel(option) { + var axes = normalizeToArray(option.parallelAxis); + each(axes, function (axisOption) { + if (!isObject(axisOption)) { + return; + } + var parallelIndex = axisOption.parallelIndex || 0; + var parallelOption = normalizeToArray(option.parallel)[parallelIndex]; + if (parallelOption && parallelOption.parallelAxisDefault) { + merge(axisOption, parallelOption.parallelAxisDefault, false); + } + }); + } + + var CLICK_THRESHOLD = 5; // > 4 + var ParallelView$1 = /** @class */function (_super) { + __extends(ParallelView, _super); + function ParallelView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = ParallelView.type; + return _this; + } + ParallelView.prototype.render = function (parallelModel, ecModel, api) { + this._model = parallelModel; + this._api = api; + if (!this._handlers) { + this._handlers = {}; + each(handlers, function (handler, eventName) { + api.getZr().on(eventName, this._handlers[eventName] = bind(handler, this)); + }, this); + } + createOrUpdate(this, '_throttledDispatchExpand', parallelModel.get('axisExpandRate'), 'fixRate'); + }; + ParallelView.prototype.dispose = function (ecModel, api) { + clear(this, '_throttledDispatchExpand'); + each(this._handlers, function (handler, eventName) { + api.getZr().off(eventName, handler); + }); + this._handlers = null; + }; + /** + * @internal + * @param {Object} [opt] If null, cancel the last action triggering for debounce. + */ + ParallelView.prototype._throttledDispatchExpand = function (opt) { + this._dispatchExpand(opt); + }; + /** + * @internal + */ + ParallelView.prototype._dispatchExpand = function (opt) { + opt && this._api.dispatchAction(extend({ + type: 'parallelAxisExpand' + }, opt)); + }; + ParallelView.type = 'parallel'; + return ParallelView; + }(ComponentView); + var handlers = { + mousedown: function (e) { + if (checkTrigger(this, 'click')) { + this._mouseDownPoint = [e.offsetX, e.offsetY]; + } + }, + mouseup: function (e) { + var mouseDownPoint = this._mouseDownPoint; + if (checkTrigger(this, 'click') && mouseDownPoint) { + var point = [e.offsetX, e.offsetY]; + var dist = Math.pow(mouseDownPoint[0] - point[0], 2) + Math.pow(mouseDownPoint[1] - point[1], 2); + if (dist > CLICK_THRESHOLD) { + return; + } + var result = this._model.coordinateSystem.getSlidedAxisExpandWindow([e.offsetX, e.offsetY]); + result.behavior !== 'none' && this._dispatchExpand({ + axisExpandWindow: result.axisExpandWindow + }); + } + this._mouseDownPoint = null; + }, + mousemove: function (e) { + // Should do nothing when brushing. + if (this._mouseDownPoint || !checkTrigger(this, 'mousemove')) { + return; + } + var model = this._model; + var result = model.coordinateSystem.getSlidedAxisExpandWindow([e.offsetX, e.offsetY]); + var behavior = result.behavior; + behavior === 'jump' && this._throttledDispatchExpand.debounceNextCall(model.get('axisExpandDebounce')); + this._throttledDispatchExpand(behavior === 'none' ? null // Cancel the last trigger, in case that mouse slide out of the area quickly. + : { + axisExpandWindow: result.axisExpandWindow, + // Jumping uses animation, and sliding suppresses animation. + animation: behavior === 'jump' ? null : { + duration: 0 // Disable animation. + } + }); + } + }; + + function checkTrigger(view, triggerOn) { + var model = view._model; + return model.get('axisExpandable') && model.get('axisExpandTriggerOn') === triggerOn; + } + + var ParallelModel = /** @class */function (_super) { + __extends(ParallelModel, _super); + function ParallelModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = ParallelModel.type; + return _this; + } + ParallelModel.prototype.init = function () { + _super.prototype.init.apply(this, arguments); + this.mergeOption({}); + }; + ParallelModel.prototype.mergeOption = function (newOption) { + var thisOption = this.option; + newOption && merge(thisOption, newOption, true); + this._initDimensions(); + }; + /** + * Whether series or axis is in this coordinate system. + */ + ParallelModel.prototype.contains = function (model, ecModel) { + var parallelIndex = model.get('parallelIndex'); + return parallelIndex != null && ecModel.getComponent('parallel', parallelIndex) === this; + }; + ParallelModel.prototype.setAxisExpand = function (opt) { + each(['axisExpandable', 'axisExpandCenter', 'axisExpandCount', 'axisExpandWidth', 'axisExpandWindow'], function (name) { + if (opt.hasOwnProperty(name)) { + // @ts-ignore FIXME: why "never" inferred in this.option[name]? + this.option[name] = opt[name]; + } + }, this); + }; + ParallelModel.prototype._initDimensions = function () { + var dimensions = this.dimensions = []; + var parallelAxisIndex = this.parallelAxisIndex = []; + var axisModels = filter(this.ecModel.queryComponents({ + mainType: 'parallelAxis' + }), function (axisModel) { + // Can not use this.contains here, because + // initialization has not been completed yet. + return (axisModel.get('parallelIndex') || 0) === this.componentIndex; + }, this); + each(axisModels, function (axisModel) { + dimensions.push('dim' + axisModel.get('dim')); + parallelAxisIndex.push(axisModel.componentIndex); + }); + }; + ParallelModel.type = 'parallel'; + ParallelModel.dependencies = ['parallelAxis']; + ParallelModel.layoutMode = 'box'; + ParallelModel.defaultOption = { + // zlevel: 0, + z: 0, + left: 80, + top: 60, + right: 80, + bottom: 60, + // width: {totalWidth} - left - right, + // height: {totalHeight} - top - bottom, + layout: 'horizontal', + // FIXME + // naming? + axisExpandable: false, + axisExpandCenter: null, + axisExpandCount: 0, + axisExpandWidth: 50, + axisExpandRate: 17, + axisExpandDebounce: 50, + // [out, in, jumpTarget]. In percentage. If use [null, 0.05], null means full. + // Do not doc to user until necessary. + axisExpandSlideTriggerArea: [-0.15, 0.05, 0.4], + axisExpandTriggerOn: 'click', + parallelAxisDefault: null + }; + return ParallelModel; + }(ComponentModel); + + var ParallelAxis = /** @class */function (_super) { + __extends(ParallelAxis, _super); + function ParallelAxis(dim, scale, coordExtent, axisType, axisIndex) { + var _this = _super.call(this, dim, scale, coordExtent) || this; + _this.type = axisType || 'value'; + _this.axisIndex = axisIndex; + return _this; + } + ParallelAxis.prototype.isHorizontal = function () { + return this.coordinateSystem.getModel().get('layout') !== 'horizontal'; + }; + return ParallelAxis; + }(Axis); + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + + /** + * AUTO-GENERATED FILE. DO NOT MODIFY. + */ + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + /** + * Calculate slider move result. + * Usage: + * (1) If both handle0 and handle1 are needed to be moved, set minSpan the same as + * maxSpan and the same as `Math.abs(handleEnd[1] - handleEnds[0])`. + * (2) If handle0 is forbidden to cross handle1, set minSpan as `0`. + * + * @param delta Move length. + * @param handleEnds handleEnds[0] can be bigger then handleEnds[1]. + * handleEnds will be modified in this method. + * @param extent handleEnds is restricted by extent. + * extent[0] should less or equals than extent[1]. + * @param handleIndex Can be 'all', means that both move the two handleEnds. + * @param minSpan The range of dataZoom can not be smaller than that. + * If not set, handle0 and cross handle1. If set as a non-negative + * number (including `0`), handles will push each other when reaching + * the minSpan. + * @param maxSpan The range of dataZoom can not be larger than that. + * @return The input handleEnds. + */ + function sliderMove(delta, handleEnds, extent, handleIndex, minSpan, maxSpan) { + delta = delta || 0; + var extentSpan = extent[1] - extent[0]; + // Notice maxSpan and minSpan can be null/undefined. + if (minSpan != null) { + minSpan = restrict(minSpan, [0, extentSpan]); + } + if (maxSpan != null) { + maxSpan = Math.max(maxSpan, minSpan != null ? minSpan : 0); + } + if (handleIndex === 'all') { + var handleSpan = Math.abs(handleEnds[1] - handleEnds[0]); + handleSpan = restrict(handleSpan, [0, extentSpan]); + minSpan = maxSpan = restrict(handleSpan, [minSpan, maxSpan]); + handleIndex = 0; + } + handleEnds[0] = restrict(handleEnds[0], extent); + handleEnds[1] = restrict(handleEnds[1], extent); + var originalDistSign = getSpanSign(handleEnds, handleIndex); + handleEnds[handleIndex] += delta; + // Restrict in extent. + var extentMinSpan = minSpan || 0; + var realExtent = extent.slice(); + originalDistSign.sign < 0 ? realExtent[0] += extentMinSpan : realExtent[1] -= extentMinSpan; + handleEnds[handleIndex] = restrict(handleEnds[handleIndex], realExtent); + // Expand span. + var currDistSign; + currDistSign = getSpanSign(handleEnds, handleIndex); + if (minSpan != null && (currDistSign.sign !== originalDistSign.sign || currDistSign.span < minSpan)) { + // If minSpan exists, 'cross' is forbidden. + handleEnds[1 - handleIndex] = handleEnds[handleIndex] + originalDistSign.sign * minSpan; + } + // Shrink span. + currDistSign = getSpanSign(handleEnds, handleIndex); + if (maxSpan != null && currDistSign.span > maxSpan) { + handleEnds[1 - handleIndex] = handleEnds[handleIndex] + currDistSign.sign * maxSpan; + } + return handleEnds; + } + function getSpanSign(handleEnds, handleIndex) { + var dist = handleEnds[handleIndex] - handleEnds[1 - handleIndex]; + // If `handleEnds[0] === handleEnds[1]`, always believe that handleEnd[0] + // is at left of handleEnds[1] for non-cross case. + return { + span: Math.abs(dist), + sign: dist > 0 ? -1 : dist < 0 ? 1 : handleIndex ? -1 : 1 + }; + } + function restrict(value, extend) { + return Math.min(extend[1] != null ? extend[1] : Infinity, Math.max(extend[0] != null ? extend[0] : -Infinity, value)); + } + + var each$5 = each; + var mathMin$8 = Math.min; + var mathMax$8 = Math.max; + var mathFloor$1 = Math.floor; + var mathCeil$1 = Math.ceil; + var round$3 = round; + var PI$7 = Math.PI; + var Parallel = /** @class */function () { + function Parallel(parallelModel, ecModel, api) { + this.type = 'parallel'; + /** + * key: dimension + */ + this._axesMap = createHashMap(); + /** + * key: dimension + * value: {position: [], rotation, } + */ + this._axesLayout = {}; + this.dimensions = parallelModel.dimensions; + this._model = parallelModel; + this._init(parallelModel, ecModel, api); + } + Parallel.prototype._init = function (parallelModel, ecModel, api) { + var dimensions = parallelModel.dimensions; + var parallelAxisIndex = parallelModel.parallelAxisIndex; + each$5(dimensions, function (dim, idx) { + var axisIndex = parallelAxisIndex[idx]; + var axisModel = ecModel.getComponent('parallelAxis', axisIndex); + var axis = this._axesMap.set(dim, new ParallelAxis(dim, createScaleByModel(axisModel), [0, 0], axisModel.get('type'), axisIndex)); + var isCategory = axis.type === 'category'; + axis.onBand = isCategory && axisModel.get('boundaryGap'); + axis.inverse = axisModel.get('inverse'); + // Injection + axisModel.axis = axis; + axis.model = axisModel; + axis.coordinateSystem = axisModel.coordinateSystem = this; + }, this); + }; + /** + * Update axis scale after data processed + */ + Parallel.prototype.update = function (ecModel, api) { + this._updateAxesFromSeries(this._model, ecModel); + }; + Parallel.prototype.containPoint = function (point) { + var layoutInfo = this._makeLayoutInfo(); + var axisBase = layoutInfo.axisBase; + var layoutBase = layoutInfo.layoutBase; + var pixelDimIndex = layoutInfo.pixelDimIndex; + var pAxis = point[1 - pixelDimIndex]; + var pLayout = point[pixelDimIndex]; + return pAxis >= axisBase && pAxis <= axisBase + layoutInfo.axisLength && pLayout >= layoutBase && pLayout <= layoutBase + layoutInfo.layoutLength; + }; + Parallel.prototype.getModel = function () { + return this._model; + }; + /** + * Update properties from series + */ + Parallel.prototype._updateAxesFromSeries = function (parallelModel, ecModel) { + ecModel.eachSeries(function (seriesModel) { + if (!parallelModel.contains(seriesModel, ecModel)) { + return; + } + var data = seriesModel.getData(); + each$5(this.dimensions, function (dim) { + var axis = this._axesMap.get(dim); + axis.scale.unionExtentFromData(data, data.mapDimension(dim)); + niceScaleExtent(axis.scale, axis.model); + }, this); + }, this); + }; + /** + * Resize the parallel coordinate system. + */ + Parallel.prototype.resize = function (parallelModel, api) { + this._rect = getLayoutRect(parallelModel.getBoxLayoutParams(), { + width: api.getWidth(), + height: api.getHeight() + }); + this._layoutAxes(); + }; + Parallel.prototype.getRect = function () { + return this._rect; + }; + Parallel.prototype._makeLayoutInfo = function () { + var parallelModel = this._model; + var rect = this._rect; + var xy = ['x', 'y']; + var wh = ['width', 'height']; + var layout = parallelModel.get('layout'); + var pixelDimIndex = layout === 'horizontal' ? 0 : 1; + var layoutLength = rect[wh[pixelDimIndex]]; + var layoutExtent = [0, layoutLength]; + var axisCount = this.dimensions.length; + var axisExpandWidth = restrict$1(parallelModel.get('axisExpandWidth'), layoutExtent); + var axisExpandCount = restrict$1(parallelModel.get('axisExpandCount') || 0, [0, axisCount]); + var axisExpandable = parallelModel.get('axisExpandable') && axisCount > 3 && axisCount > axisExpandCount && axisExpandCount > 1 && axisExpandWidth > 0 && layoutLength > 0; + // `axisExpandWindow` is According to the coordinates of [0, axisExpandLength], + // for sake of consider the case that axisCollapseWidth is 0 (when screen is narrow), + // where collapsed axes should be overlapped. + var axisExpandWindow = parallelModel.get('axisExpandWindow'); + var winSize; + if (!axisExpandWindow) { + winSize = restrict$1(axisExpandWidth * (axisExpandCount - 1), layoutExtent); + var axisExpandCenter = parallelModel.get('axisExpandCenter') || mathFloor$1(axisCount / 2); + axisExpandWindow = [axisExpandWidth * axisExpandCenter - winSize / 2]; + axisExpandWindow[1] = axisExpandWindow[0] + winSize; + } else { + winSize = restrict$1(axisExpandWindow[1] - axisExpandWindow[0], layoutExtent); + axisExpandWindow[1] = axisExpandWindow[0] + winSize; + } + var axisCollapseWidth = (layoutLength - winSize) / (axisCount - axisExpandCount); + // Avoid axisCollapseWidth is too small. + axisCollapseWidth < 3 && (axisCollapseWidth = 0); + // Find the first and last indices > ewin[0] and < ewin[1]. + var winInnerIndices = [mathFloor$1(round$3(axisExpandWindow[0] / axisExpandWidth, 1)) + 1, mathCeil$1(round$3(axisExpandWindow[1] / axisExpandWidth, 1)) - 1]; + // Pos in ec coordinates. + var axisExpandWindow0Pos = axisCollapseWidth / axisExpandWidth * axisExpandWindow[0]; + return { + layout: layout, + pixelDimIndex: pixelDimIndex, + layoutBase: rect[xy[pixelDimIndex]], + layoutLength: layoutLength, + axisBase: rect[xy[1 - pixelDimIndex]], + axisLength: rect[wh[1 - pixelDimIndex]], + axisExpandable: axisExpandable, + axisExpandWidth: axisExpandWidth, + axisCollapseWidth: axisCollapseWidth, + axisExpandWindow: axisExpandWindow, + axisCount: axisCount, + winInnerIndices: winInnerIndices, + axisExpandWindow0Pos: axisExpandWindow0Pos + }; + }; + Parallel.prototype._layoutAxes = function () { + var rect = this._rect; + var axes = this._axesMap; + var dimensions = this.dimensions; + var layoutInfo = this._makeLayoutInfo(); + var layout = layoutInfo.layout; + axes.each(function (axis) { + var axisExtent = [0, layoutInfo.axisLength]; + var idx = axis.inverse ? 1 : 0; + axis.setExtent(axisExtent[idx], axisExtent[1 - idx]); + }); + each$5(dimensions, function (dim, idx) { + var posInfo = (layoutInfo.axisExpandable ? layoutAxisWithExpand : layoutAxisWithoutExpand)(idx, layoutInfo); + var positionTable = { + horizontal: { + x: posInfo.position, + y: layoutInfo.axisLength + }, + vertical: { + x: 0, + y: posInfo.position + } + }; + var rotationTable = { + horizontal: PI$7 / 2, + vertical: 0 + }; + var position = [positionTable[layout].x + rect.x, positionTable[layout].y + rect.y]; + var rotation = rotationTable[layout]; + var transform = create$1(); + rotate(transform, transform, rotation); + translate(transform, transform, position); + // TODO + // tick layout info + // TODO + // update dimensions info based on axis order. + this._axesLayout[dim] = { + position: position, + rotation: rotation, + transform: transform, + axisNameAvailableWidth: posInfo.axisNameAvailableWidth, + axisLabelShow: posInfo.axisLabelShow, + nameTruncateMaxWidth: posInfo.nameTruncateMaxWidth, + tickDirection: 1, + labelDirection: 1 + }; + }, this); + }; + /** + * Get axis by dim. + */ + Parallel.prototype.getAxis = function (dim) { + return this._axesMap.get(dim); + }; + /** + * Convert a dim value of a single item of series data to Point. + */ + Parallel.prototype.dataToPoint = function (value, dim) { + return this.axisCoordToPoint(this._axesMap.get(dim).dataToCoord(value), dim); + }; + /** + * Travel data for one time, get activeState of each data item. + * @param start the start dataIndex that travel from. + * @param end the next dataIndex of the last dataIndex will be travel. + */ + Parallel.prototype.eachActiveState = function (data, callback, start, end) { + start == null && (start = 0); + end == null && (end = data.count()); + var axesMap = this._axesMap; + var dimensions = this.dimensions; + var dataDimensions = []; + var axisModels = []; + each(dimensions, function (axisDim) { + dataDimensions.push(data.mapDimension(axisDim)); + axisModels.push(axesMap.get(axisDim).model); + }); + var hasActiveSet = this.hasAxisBrushed(); + for (var dataIndex = start; dataIndex < end; dataIndex++) { + var activeState = void 0; + if (!hasActiveSet) { + activeState = 'normal'; + } else { + activeState = 'active'; + var values = data.getValues(dataDimensions, dataIndex); + for (var j = 0, lenj = dimensions.length; j < lenj; j++) { + var state = axisModels[j].getActiveState(values[j]); + if (state === 'inactive') { + activeState = 'inactive'; + break; + } + } + } + callback(activeState, dataIndex); + } + }; + /** + * Whether has any activeSet. + */ + Parallel.prototype.hasAxisBrushed = function () { + var dimensions = this.dimensions; + var axesMap = this._axesMap; + var hasActiveSet = false; + for (var j = 0, lenj = dimensions.length; j < lenj; j++) { + if (axesMap.get(dimensions[j]).model.getActiveState() !== 'normal') { + hasActiveSet = true; + } + } + return hasActiveSet; + }; + /** + * Convert coords of each axis to Point. + * Return point. For example: [10, 20] + */ + Parallel.prototype.axisCoordToPoint = function (coord, dim) { + var axisLayout = this._axesLayout[dim]; + return applyTransform$1([coord, 0], axisLayout.transform); + }; + /** + * Get axis layout. + */ + Parallel.prototype.getAxisLayout = function (dim) { + return clone(this._axesLayout[dim]); + }; + /** + * @return {Object} {axisExpandWindow, delta, behavior: 'jump' | 'slide' | 'none'}. + */ + Parallel.prototype.getSlidedAxisExpandWindow = function (point) { + var layoutInfo = this._makeLayoutInfo(); + var pixelDimIndex = layoutInfo.pixelDimIndex; + var axisExpandWindow = layoutInfo.axisExpandWindow.slice(); + var winSize = axisExpandWindow[1] - axisExpandWindow[0]; + var extent = [0, layoutInfo.axisExpandWidth * (layoutInfo.axisCount - 1)]; + // Out of the area of coordinate system. + if (!this.containPoint(point)) { + return { + behavior: 'none', + axisExpandWindow: axisExpandWindow + }; + } + // Convert the point from global to expand coordinates. + var pointCoord = point[pixelDimIndex] - layoutInfo.layoutBase - layoutInfo.axisExpandWindow0Pos; + // For dragging operation convenience, the window should not be + // slided when mouse is the center area of the window. + var delta; + var behavior = 'slide'; + var axisCollapseWidth = layoutInfo.axisCollapseWidth; + var triggerArea = this._model.get('axisExpandSlideTriggerArea'); + // But consider touch device, jump is necessary. + var useJump = triggerArea[0] != null; + if (axisCollapseWidth) { + if (useJump && axisCollapseWidth && pointCoord < winSize * triggerArea[0]) { + behavior = 'jump'; + delta = pointCoord - winSize * triggerArea[2]; + } else if (useJump && axisCollapseWidth && pointCoord > winSize * (1 - triggerArea[0])) { + behavior = 'jump'; + delta = pointCoord - winSize * (1 - triggerArea[2]); + } else { + (delta = pointCoord - winSize * triggerArea[1]) >= 0 && (delta = pointCoord - winSize * (1 - triggerArea[1])) <= 0 && (delta = 0); + } + delta *= layoutInfo.axisExpandWidth / axisCollapseWidth; + delta ? sliderMove(delta, axisExpandWindow, extent, 'all') + // Avoid nonsense triger on mousemove. + : behavior = 'none'; + } + // When screen is too narrow, make it visible and slidable, although it is hard to interact. + else { + var winSize2 = axisExpandWindow[1] - axisExpandWindow[0]; + var pos = extent[1] * pointCoord / winSize2; + axisExpandWindow = [mathMax$8(0, pos - winSize2 / 2)]; + axisExpandWindow[1] = mathMin$8(extent[1], axisExpandWindow[0] + winSize2); + axisExpandWindow[0] = axisExpandWindow[1] - winSize2; + } + return { + axisExpandWindow: axisExpandWindow, + behavior: behavior + }; + }; + return Parallel; + }(); + function restrict$1(len, extent) { + return mathMin$8(mathMax$8(len, extent[0]), extent[1]); + } + function layoutAxisWithoutExpand(axisIndex, layoutInfo) { + var step = layoutInfo.layoutLength / (layoutInfo.axisCount - 1); + return { + position: step * axisIndex, + axisNameAvailableWidth: step, + axisLabelShow: true + }; + } + function layoutAxisWithExpand(axisIndex, layoutInfo) { + var layoutLength = layoutInfo.layoutLength; + var axisExpandWidth = layoutInfo.axisExpandWidth; + var axisCount = layoutInfo.axisCount; + var axisCollapseWidth = layoutInfo.axisCollapseWidth; + var winInnerIndices = layoutInfo.winInnerIndices; + var position; + var axisNameAvailableWidth = axisCollapseWidth; + var axisLabelShow = false; + var nameTruncateMaxWidth; + if (axisIndex < winInnerIndices[0]) { + position = axisIndex * axisCollapseWidth; + nameTruncateMaxWidth = axisCollapseWidth; + } else if (axisIndex <= winInnerIndices[1]) { + position = layoutInfo.axisExpandWindow0Pos + axisIndex * axisExpandWidth - layoutInfo.axisExpandWindow[0]; + axisNameAvailableWidth = axisExpandWidth; + axisLabelShow = true; + } else { + position = layoutLength - (axisCount - 1 - axisIndex) * axisCollapseWidth; + nameTruncateMaxWidth = axisCollapseWidth; + } + return { + position: position, + axisNameAvailableWidth: axisNameAvailableWidth, + axisLabelShow: axisLabelShow, + nameTruncateMaxWidth: nameTruncateMaxWidth + }; + } + + function createParallelCoordSys(ecModel, api) { + var coordSysList = []; + ecModel.eachComponent('parallel', function (parallelModel, idx) { + var coordSys = new Parallel(parallelModel, ecModel, api); + coordSys.name = 'parallel_' + idx; + coordSys.resize(parallelModel, api); + parallelModel.coordinateSystem = coordSys; + coordSys.model = parallelModel; + coordSysList.push(coordSys); + }); + // Inject the coordinateSystems into seriesModel + ecModel.eachSeries(function (seriesModel) { + if (seriesModel.get('coordinateSystem') === 'parallel') { + var parallelModel = seriesModel.getReferringComponents('parallel', SINGLE_REFERRING).models[0]; + seriesModel.coordinateSystem = parallelModel.coordinateSystem; + } + }); + return coordSysList; + } + var parallelCoordSysCreator = { + create: createParallelCoordSys + }; + + var ParallelAxisModel = /** @class */function (_super) { + __extends(ParallelAxisModel, _super); + function ParallelAxisModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = ParallelAxisModel.type; + /** + * @readOnly + */ + _this.activeIntervals = []; + return _this; + } + ParallelAxisModel.prototype.getAreaSelectStyle = function () { + return makeStyleMapper([['fill', 'color'], ['lineWidth', 'borderWidth'], ['stroke', 'borderColor'], ['width', 'width'], ['opacity', 'opacity'] + // Option decal is in `DecalObject` but style.decal is in `PatternObject`. + // So do not transfer decal directly. + ])(this.getModel('areaSelectStyle')); + }; + /** + * The code of this feature is put on AxisModel but not ParallelAxis, + * because axisModel can be alive after echarts updating but instance of + * ParallelAxis having been disposed. this._activeInterval should be kept + * when action dispatched (i.e. legend click). + * + * @param intervals `interval.length === 0` means set all active. + */ + ParallelAxisModel.prototype.setActiveIntervals = function (intervals) { + var activeIntervals = this.activeIntervals = clone(intervals); + // Normalize + if (activeIntervals) { + for (var i = activeIntervals.length - 1; i >= 0; i--) { + asc(activeIntervals[i]); + } + } + }; + /** + * @param value When only attempting detect whether 'no activeIntervals set', + * `value` is not needed to be input. + */ + ParallelAxisModel.prototype.getActiveState = function (value) { + var activeIntervals = this.activeIntervals; + if (!activeIntervals.length) { + return 'normal'; + } + if (value == null || isNaN(+value)) { + return 'inactive'; + } + // Simple optimization + if (activeIntervals.length === 1) { + var interval = activeIntervals[0]; + if (interval[0] <= value && value <= interval[1]) { + return 'active'; + } + } else { + for (var i = 0, len = activeIntervals.length; i < len; i++) { + if (activeIntervals[i][0] <= value && value <= activeIntervals[i][1]) { + return 'active'; + } + } + } + return 'inactive'; + }; + return ParallelAxisModel; + }(ComponentModel); + mixin(ParallelAxisModel, AxisModelCommonMixin); + + var BRUSH_PANEL_GLOBAL = true; + var mathMin$9 = Math.min; + var mathMax$9 = Math.max; + var mathPow$2 = Math.pow; + var COVER_Z = 10000; + var UNSELECT_THRESHOLD = 6; + var MIN_RESIZE_LINE_WIDTH = 6; + var MUTEX_RESOURCE_KEY = 'globalPan'; + var DIRECTION_MAP = { + w: [0, 0], + e: [0, 1], + n: [1, 0], + s: [1, 1] + }; + var CURSOR_MAP = { + w: 'ew', + e: 'ew', + n: 'ns', + s: 'ns', + ne: 'nesw', + sw: 'nesw', + nw: 'nwse', + se: 'nwse' + }; + var DEFAULT_BRUSH_OPT = { + brushStyle: { + lineWidth: 2, + stroke: 'rgba(210,219,238,0.3)', + fill: '#D2DBEE' + }, + transformable: true, + brushMode: 'single', + removeOnClick: false + }; + var baseUID = 0; + /** + * params: + * areas: Array.<Array>, coord relates to container group, + * If no container specified, to global. + * opt { + * isEnd: boolean, + * removeOnClick: boolean + * } + */ + var BrushController = /** @class */function (_super) { + __extends(BrushController, _super); + function BrushController(zr) { + var _this = _super.call(this) || this; + /** + * @internal + */ + _this._track = []; + /** + * @internal + */ + _this._covers = []; + _this._handlers = {}; + if ("development" !== 'production') { + assert(zr); + } + _this._zr = zr; + _this.group = new Group(); + _this._uid = 'brushController_' + baseUID++; + each(pointerHandlers, function (handler, eventName) { + this._handlers[eventName] = bind(handler, this); + }, _this); + return _this; + } + /** + * If set to `false`, select disabled. + */ + BrushController.prototype.enableBrush = function (brushOption) { + if ("development" !== 'production') { + assert(this._mounted); + } + this._brushType && this._doDisableBrush(); + brushOption.brushType && this._doEnableBrush(brushOption); + return this; + }; + BrushController.prototype._doEnableBrush = function (brushOption) { + var zr = this._zr; + // Consider roam, which takes globalPan too. + if (!this._enableGlobalPan) { + take(zr, MUTEX_RESOURCE_KEY, this._uid); + } + each(this._handlers, function (handler, eventName) { + zr.on(eventName, handler); + }); + this._brushType = brushOption.brushType; + this._brushOption = merge(clone(DEFAULT_BRUSH_OPT), brushOption, true); + }; + BrushController.prototype._doDisableBrush = function () { + var zr = this._zr; + release(zr, MUTEX_RESOURCE_KEY, this._uid); + each(this._handlers, function (handler, eventName) { + zr.off(eventName, handler); + }); + this._brushType = this._brushOption = null; + }; + /** + * @param panelOpts If not pass, it is global brush. + */ + BrushController.prototype.setPanels = function (panelOpts) { + if (panelOpts && panelOpts.length) { + var panels_1 = this._panels = {}; + each(panelOpts, function (panelOpts) { + panels_1[panelOpts.panelId] = clone(panelOpts); + }); + } else { + this._panels = null; + } + return this; + }; + BrushController.prototype.mount = function (opt) { + opt = opt || {}; + if ("development" !== 'production') { + this._mounted = true; // should be at first. + } + + this._enableGlobalPan = opt.enableGlobalPan; + var thisGroup = this.group; + this._zr.add(thisGroup); + thisGroup.attr({ + x: opt.x || 0, + y: opt.y || 0, + rotation: opt.rotation || 0, + scaleX: opt.scaleX || 1, + scaleY: opt.scaleY || 1 + }); + this._transform = thisGroup.getLocalTransform(); + return this; + }; + // eachCover(cb, context): void { + // each(this._covers, cb, context); + // } + /** + * Update covers. + * @param coverConfigList + * If coverConfigList is null/undefined, all covers removed. + */ + BrushController.prototype.updateCovers = function (coverConfigList) { + if ("development" !== 'production') { + assert(this._mounted); + } + coverConfigList = map(coverConfigList, function (coverConfig) { + return merge(clone(DEFAULT_BRUSH_OPT), coverConfig, true); + }); + var tmpIdPrefix = '\0-brush-index-'; + var oldCovers = this._covers; + var newCovers = this._covers = []; + var controller = this; + var creatingCover = this._creatingCover; + new DataDiffer(oldCovers, coverConfigList, oldGetKey, getKey).add(addOrUpdate).update(addOrUpdate).remove(remove).execute(); + return this; + function getKey(brushOption, index) { + return (brushOption.id != null ? brushOption.id : tmpIdPrefix + index) + '-' + brushOption.brushType; + } + function oldGetKey(cover, index) { + return getKey(cover.__brushOption, index); + } + function addOrUpdate(newIndex, oldIndex) { + var newBrushInternal = coverConfigList[newIndex]; + // Consider setOption in event listener of brushSelect, + // where updating cover when creating should be forbidden. + if (oldIndex != null && oldCovers[oldIndex] === creatingCover) { + newCovers[newIndex] = oldCovers[oldIndex]; + } else { + var cover = newCovers[newIndex] = oldIndex != null ? (oldCovers[oldIndex].__brushOption = newBrushInternal, oldCovers[oldIndex]) : endCreating(controller, createCover(controller, newBrushInternal)); + updateCoverAfterCreation(controller, cover); + } + } + function remove(oldIndex) { + if (oldCovers[oldIndex] !== creatingCover) { + controller.group.remove(oldCovers[oldIndex]); + } + } + }; + BrushController.prototype.unmount = function () { + if ("development" !== 'production') { + if (!this._mounted) { + return; + } + } + this.enableBrush(false); + // container may 'removeAll' outside. + clearCovers(this); + this._zr.remove(this.group); + if ("development" !== 'production') { + this._mounted = false; // should be at last. + } + + return this; + }; + BrushController.prototype.dispose = function () { + this.unmount(); + this.off(); + }; + return BrushController; + }(Eventful); + function createCover(controller, brushOption) { + var cover = coverRenderers[brushOption.brushType].createCover(controller, brushOption); + cover.__brushOption = brushOption; + updateZ(cover, brushOption); + controller.group.add(cover); + return cover; + } + function endCreating(controller, creatingCover) { + var coverRenderer = getCoverRenderer(creatingCover); + if (coverRenderer.endCreating) { + coverRenderer.endCreating(controller, creatingCover); + updateZ(creatingCover, creatingCover.__brushOption); + } + return creatingCover; + } + function updateCoverShape(controller, cover) { + var brushOption = cover.__brushOption; + getCoverRenderer(cover).updateCoverShape(controller, cover, brushOption.range, brushOption); + } + function updateZ(cover, brushOption) { + var z = brushOption.z; + z == null && (z = COVER_Z); + cover.traverse(function (el) { + el.z = z; + el.z2 = z; // Consider in given container. + }); + } + + function updateCoverAfterCreation(controller, cover) { + getCoverRenderer(cover).updateCommon(controller, cover); + updateCoverShape(controller, cover); + } + function getCoverRenderer(cover) { + return coverRenderers[cover.__brushOption.brushType]; + } + // return target panel or `true` (means global panel) + function getPanelByPoint(controller, e, localCursorPoint) { + var panels = controller._panels; + if (!panels) { + return BRUSH_PANEL_GLOBAL; // Global panel + } + + var panel; + var transform = controller._transform; + each(panels, function (pn) { + pn.isTargetByCursor(e, localCursorPoint, transform) && (panel = pn); + }); + return panel; + } + // Return a panel or true + function getPanelByCover(controller, cover) { + var panels = controller._panels; + if (!panels) { + return BRUSH_PANEL_GLOBAL; // Global panel + } + + var panelId = cover.__brushOption.panelId; + // User may give cover without coord sys info, + // which is then treated as global panel. + return panelId != null ? panels[panelId] : BRUSH_PANEL_GLOBAL; + } + function clearCovers(controller) { + var covers = controller._covers; + var originalLength = covers.length; + each(covers, function (cover) { + controller.group.remove(cover); + }, controller); + covers.length = 0; + return !!originalLength; + } + function trigger$1(controller, opt) { + var areas = map(controller._covers, function (cover) { + var brushOption = cover.__brushOption; + var range = clone(brushOption.range); + return { + brushType: brushOption.brushType, + panelId: brushOption.panelId, + range: range + }; + }); + controller.trigger('brush', { + areas: areas, + isEnd: !!opt.isEnd, + removeOnClick: !!opt.removeOnClick + }); + } + function shouldShowCover(controller) { + var track = controller._track; + if (!track.length) { + return false; + } + var p2 = track[track.length - 1]; + var p1 = track[0]; + var dx = p2[0] - p1[0]; + var dy = p2[1] - p1[1]; + var dist = mathPow$2(dx * dx + dy * dy, 0.5); + return dist > UNSELECT_THRESHOLD; + } + function getTrackEnds(track) { + var tail = track.length - 1; + tail < 0 && (tail = 0); + return [track[0], track[tail]]; + } + function createBaseRectCover(rectRangeConverter, controller, brushOption, edgeNameSequences) { + var cover = new Group(); + cover.add(new Rect({ + name: 'main', + style: makeStyle(brushOption), + silent: true, + draggable: true, + cursor: 'move', + drift: curry(driftRect, rectRangeConverter, controller, cover, ['n', 's', 'w', 'e']), + ondragend: curry(trigger$1, controller, { + isEnd: true + }) + })); + each(edgeNameSequences, function (nameSequence) { + cover.add(new Rect({ + name: nameSequence.join(''), + style: { + opacity: 0 + }, + draggable: true, + silent: true, + invisible: true, + drift: curry(driftRect, rectRangeConverter, controller, cover, nameSequence), + ondragend: curry(trigger$1, controller, { + isEnd: true + }) + })); + }); + return cover; + } + function updateBaseRect(controller, cover, localRange, brushOption) { + var lineWidth = brushOption.brushStyle.lineWidth || 0; + var handleSize = mathMax$9(lineWidth, MIN_RESIZE_LINE_WIDTH); + var x = localRange[0][0]; + var y = localRange[1][0]; + var xa = x - lineWidth / 2; + var ya = y - lineWidth / 2; + var x2 = localRange[0][1]; + var y2 = localRange[1][1]; + var x2a = x2 - handleSize + lineWidth / 2; + var y2a = y2 - handleSize + lineWidth / 2; + var width = x2 - x; + var height = y2 - y; + var widtha = width + lineWidth; + var heighta = height + lineWidth; + updateRectShape(controller, cover, 'main', x, y, width, height); + if (brushOption.transformable) { + updateRectShape(controller, cover, 'w', xa, ya, handleSize, heighta); + updateRectShape(controller, cover, 'e', x2a, ya, handleSize, heighta); + updateRectShape(controller, cover, 'n', xa, ya, widtha, handleSize); + updateRectShape(controller, cover, 's', xa, y2a, widtha, handleSize); + updateRectShape(controller, cover, 'nw', xa, ya, handleSize, handleSize); + updateRectShape(controller, cover, 'ne', x2a, ya, handleSize, handleSize); + updateRectShape(controller, cover, 'sw', xa, y2a, handleSize, handleSize); + updateRectShape(controller, cover, 'se', x2a, y2a, handleSize, handleSize); + } + } + function updateCommon(controller, cover) { + var brushOption = cover.__brushOption; + var transformable = brushOption.transformable; + var mainEl = cover.childAt(0); + mainEl.useStyle(makeStyle(brushOption)); + mainEl.attr({ + silent: !transformable, + cursor: transformable ? 'move' : 'default' + }); + each([['w'], ['e'], ['n'], ['s'], ['s', 'e'], ['s', 'w'], ['n', 'e'], ['n', 'w']], function (nameSequence) { + var el = cover.childOfName(nameSequence.join('')); + var globalDir = nameSequence.length === 1 ? getGlobalDirection1(controller, nameSequence[0]) : getGlobalDirection2(controller, nameSequence); + el && el.attr({ + silent: !transformable, + invisible: !transformable, + cursor: transformable ? CURSOR_MAP[globalDir] + '-resize' : null + }); + }); + } + function updateRectShape(controller, cover, name, x, y, w, h) { + var el = cover.childOfName(name); + el && el.setShape(pointsToRect(clipByPanel(controller, cover, [[x, y], [x + w, y + h]]))); + } + function makeStyle(brushOption) { + return defaults({ + strokeNoScale: true + }, brushOption.brushStyle); + } + function formatRectRange(x, y, x2, y2) { + var min = [mathMin$9(x, x2), mathMin$9(y, y2)]; + var max = [mathMax$9(x, x2), mathMax$9(y, y2)]; + return [[min[0], max[0]], [min[1], max[1]] // y range + ]; + } + + function getTransform$1(controller) { + return getTransform(controller.group); + } + function getGlobalDirection1(controller, localDirName) { + var map = { + w: 'left', + e: 'right', + n: 'top', + s: 'bottom' + }; + var inverseMap = { + left: 'w', + right: 'e', + top: 'n', + bottom: 's' + }; + var dir = transformDirection(map[localDirName], getTransform$1(controller)); + return inverseMap[dir]; + } + function getGlobalDirection2(controller, localDirNameSeq) { + var globalDir = [getGlobalDirection1(controller, localDirNameSeq[0]), getGlobalDirection1(controller, localDirNameSeq[1])]; + (globalDir[0] === 'e' || globalDir[0] === 'w') && globalDir.reverse(); + return globalDir.join(''); + } + function driftRect(rectRangeConverter, controller, cover, dirNameSequence, dx, dy) { + var brushOption = cover.__brushOption; + var rectRange = rectRangeConverter.toRectRange(brushOption.range); + var localDelta = toLocalDelta(controller, dx, dy); + each(dirNameSequence, function (dirName) { + var ind = DIRECTION_MAP[dirName]; + rectRange[ind[0]][ind[1]] += localDelta[ind[0]]; + }); + brushOption.range = rectRangeConverter.fromRectRange(formatRectRange(rectRange[0][0], rectRange[1][0], rectRange[0][1], rectRange[1][1])); + updateCoverAfterCreation(controller, cover); + trigger$1(controller, { + isEnd: false + }); + } + function driftPolygon(controller, cover, dx, dy) { + var range = cover.__brushOption.range; + var localDelta = toLocalDelta(controller, dx, dy); + each(range, function (point) { + point[0] += localDelta[0]; + point[1] += localDelta[1]; + }); + updateCoverAfterCreation(controller, cover); + trigger$1(controller, { + isEnd: false + }); + } + function toLocalDelta(controller, dx, dy) { + var thisGroup = controller.group; + var localD = thisGroup.transformCoordToLocal(dx, dy); + var localZero = thisGroup.transformCoordToLocal(0, 0); + return [localD[0] - localZero[0], localD[1] - localZero[1]]; + } + function clipByPanel(controller, cover, data) { + var panel = getPanelByCover(controller, cover); + return panel && panel !== BRUSH_PANEL_GLOBAL ? panel.clipPath(data, controller._transform) : clone(data); + } + function pointsToRect(points) { + var xmin = mathMin$9(points[0][0], points[1][0]); + var ymin = mathMin$9(points[0][1], points[1][1]); + var xmax = mathMax$9(points[0][0], points[1][0]); + var ymax = mathMax$9(points[0][1], points[1][1]); + return { + x: xmin, + y: ymin, + width: xmax - xmin, + height: ymax - ymin + }; + } + function resetCursor(controller, e, localCursorPoint) { + if ( + // Check active + !controller._brushType + // resetCursor should be always called when mouse is in zr area, + // but not called when mouse is out of zr area to avoid bad influence + // if `mousemove`, `mouseup` are triggered from `document` event. + || isOutsideZrArea(controller, e.offsetX, e.offsetY)) { + return; + } + var zr = controller._zr; + var covers = controller._covers; + var currPanel = getPanelByPoint(controller, e, localCursorPoint); + // Check whether in covers. + if (!controller._dragging) { + for (var i = 0; i < covers.length; i++) { + var brushOption = covers[i].__brushOption; + if (currPanel && (currPanel === BRUSH_PANEL_GLOBAL || brushOption.panelId === currPanel.panelId) && coverRenderers[brushOption.brushType].contain(covers[i], localCursorPoint[0], localCursorPoint[1])) { + // Use cursor style set on cover. + return; + } + } + } + currPanel && zr.setCursorStyle('crosshair'); + } + function preventDefault(e) { + var rawE = e.event; + rawE.preventDefault && rawE.preventDefault(); + } + function mainShapeContain(cover, x, y) { + return cover.childOfName('main').contain(x, y); + } + function updateCoverByMouse(controller, e, localCursorPoint, isEnd) { + var creatingCover = controller._creatingCover; + var panel = controller._creatingPanel; + var thisBrushOption = controller._brushOption; + var eventParams; + controller._track.push(localCursorPoint.slice()); + if (shouldShowCover(controller) || creatingCover) { + if (panel && !creatingCover) { + thisBrushOption.brushMode === 'single' && clearCovers(controller); + var brushOption = clone(thisBrushOption); + brushOption.brushType = determineBrushType(brushOption.brushType, panel); + brushOption.panelId = panel === BRUSH_PANEL_GLOBAL ? null : panel.panelId; + creatingCover = controller._creatingCover = createCover(controller, brushOption); + controller._covers.push(creatingCover); + } + if (creatingCover) { + var coverRenderer = coverRenderers[determineBrushType(controller._brushType, panel)]; + var coverBrushOption = creatingCover.__brushOption; + coverBrushOption.range = coverRenderer.getCreatingRange(clipByPanel(controller, creatingCover, controller._track)); + if (isEnd) { + endCreating(controller, creatingCover); + coverRenderer.updateCommon(controller, creatingCover); + } + updateCoverShape(controller, creatingCover); + eventParams = { + isEnd: isEnd + }; + } + } else if (isEnd && thisBrushOption.brushMode === 'single' && thisBrushOption.removeOnClick) { + // Help user to remove covers easily, only by a tiny drag, in 'single' mode. + // But a single click do not clear covers, because user may have casual + // clicks (for example, click on other component and do not expect covers + // disappear). + // Only some cover removed, trigger action, but not every click trigger action. + if (getPanelByPoint(controller, e, localCursorPoint) && clearCovers(controller)) { + eventParams = { + isEnd: isEnd, + removeOnClick: true + }; + } + } + return eventParams; + } + function determineBrushType(brushType, panel) { + if (brushType === 'auto') { + if ("development" !== 'production') { + assert(panel && panel.defaultBrushType, 'MUST have defaultBrushType when brushType is "atuo"'); + } + return panel.defaultBrushType; + } + return brushType; + } + var pointerHandlers = { + mousedown: function (e) { + if (this._dragging) { + // In case some browser do not support globalOut, + // and release mouse out side the browser. + handleDragEnd(this, e); + } else if (!e.target || !e.target.draggable) { + preventDefault(e); + var localCursorPoint = this.group.transformCoordToLocal(e.offsetX, e.offsetY); + this._creatingCover = null; + var panel = this._creatingPanel = getPanelByPoint(this, e, localCursorPoint); + if (panel) { + this._dragging = true; + this._track = [localCursorPoint.slice()]; + } + } + }, + mousemove: function (e) { + var x = e.offsetX; + var y = e.offsetY; + var localCursorPoint = this.group.transformCoordToLocal(x, y); + resetCursor(this, e, localCursorPoint); + if (this._dragging) { + preventDefault(e); + var eventParams = updateCoverByMouse(this, e, localCursorPoint, false); + eventParams && trigger$1(this, eventParams); + } + }, + mouseup: function (e) { + handleDragEnd(this, e); + } + }; + function handleDragEnd(controller, e) { + if (controller._dragging) { + preventDefault(e); + var x = e.offsetX; + var y = e.offsetY; + var localCursorPoint = controller.group.transformCoordToLocal(x, y); + var eventParams = updateCoverByMouse(controller, e, localCursorPoint, true); + controller._dragging = false; + controller._track = []; + controller._creatingCover = null; + // trigger event should be at final, after procedure will be nested. + eventParams && trigger$1(controller, eventParams); + } + } + function isOutsideZrArea(controller, x, y) { + var zr = controller._zr; + return x < 0 || x > zr.getWidth() || y < 0 || y > zr.getHeight(); + } + /** + * key: brushType + */ + var coverRenderers = { + lineX: getLineRenderer(0), + lineY: getLineRenderer(1), + rect: { + createCover: function (controller, brushOption) { + function returnInput(range) { + return range; + } + return createBaseRectCover({ + toRectRange: returnInput, + fromRectRange: returnInput + }, controller, brushOption, [['w'], ['e'], ['n'], ['s'], ['s', 'e'], ['s', 'w'], ['n', 'e'], ['n', 'w']]); + }, + getCreatingRange: function (localTrack) { + var ends = getTrackEnds(localTrack); + return formatRectRange(ends[1][0], ends[1][1], ends[0][0], ends[0][1]); + }, + updateCoverShape: function (controller, cover, localRange, brushOption) { + updateBaseRect(controller, cover, localRange, brushOption); + }, + updateCommon: updateCommon, + contain: mainShapeContain + }, + polygon: { + createCover: function (controller, brushOption) { + var cover = new Group(); + // Do not use graphic.Polygon because graphic.Polyline do not close the + // border of the shape when drawing, which is a better experience for user. + cover.add(new Polyline({ + name: 'main', + style: makeStyle(brushOption), + silent: true + })); + return cover; + }, + getCreatingRange: function (localTrack) { + return localTrack; + }, + endCreating: function (controller, cover) { + cover.remove(cover.childAt(0)); + // Use graphic.Polygon close the shape. + cover.add(new Polygon({ + name: 'main', + draggable: true, + drift: curry(driftPolygon, controller, cover), + ondragend: curry(trigger$1, controller, { + isEnd: true + }) + })); + }, + updateCoverShape: function (controller, cover, localRange, brushOption) { + cover.childAt(0).setShape({ + points: clipByPanel(controller, cover, localRange) + }); + }, + updateCommon: updateCommon, + contain: mainShapeContain + } + }; + function getLineRenderer(xyIndex) { + return { + createCover: function (controller, brushOption) { + return createBaseRectCover({ + toRectRange: function (range) { + var rectRange = [range, [0, 100]]; + xyIndex && rectRange.reverse(); + return rectRange; + }, + fromRectRange: function (rectRange) { + return rectRange[xyIndex]; + } + }, controller, brushOption, [[['w'], ['e']], [['n'], ['s']]][xyIndex]); + }, + getCreatingRange: function (localTrack) { + var ends = getTrackEnds(localTrack); + var min = mathMin$9(ends[0][xyIndex], ends[1][xyIndex]); + var max = mathMax$9(ends[0][xyIndex], ends[1][xyIndex]); + return [min, max]; + }, + updateCoverShape: function (controller, cover, localRange, brushOption) { + var otherExtent; + // If brushWidth not specified, fit the panel. + var panel = getPanelByCover(controller, cover); + if (panel !== BRUSH_PANEL_GLOBAL && panel.getLinearBrushOtherExtent) { + otherExtent = panel.getLinearBrushOtherExtent(xyIndex); + } else { + var zr = controller._zr; + otherExtent = [0, [zr.getWidth(), zr.getHeight()][1 - xyIndex]]; + } + var rectRange = [localRange, otherExtent]; + xyIndex && rectRange.reverse(); + updateBaseRect(controller, cover, rectRange, brushOption); + }, + updateCommon: updateCommon, + contain: mainShapeContain + }; + } + + function makeRectPanelClipPath(rect) { + rect = normalizeRect(rect); + return function (localPoints) { + return clipPointsByRect(localPoints, rect); + }; + } + function makeLinearBrushOtherExtent(rect, specifiedXYIndex) { + rect = normalizeRect(rect); + return function (xyIndex) { + var idx = specifiedXYIndex != null ? specifiedXYIndex : xyIndex; + var brushWidth = idx ? rect.width : rect.height; + var base = idx ? rect.x : rect.y; + return [base, base + (brushWidth || 0)]; + }; + } + function makeRectIsTargetByCursor(rect, api, targetModel) { + var boundingRect = normalizeRect(rect); + return function (e, localCursorPoint) { + return boundingRect.contain(localCursorPoint[0], localCursorPoint[1]) && !onIrrelevantElement(e, api, targetModel); + }; + } + // Consider width/height is negative. + function normalizeRect(rect) { + return BoundingRect.create(rect); + } + + var elementList = ['axisLine', 'axisTickLabel', 'axisName']; + var ParallelAxisView = /** @class */function (_super) { + __extends(ParallelAxisView, _super); + function ParallelAxisView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = ParallelAxisView.type; + return _this; + } + ParallelAxisView.prototype.init = function (ecModel, api) { + _super.prototype.init.apply(this, arguments); + (this._brushController = new BrushController(api.getZr())).on('brush', bind(this._onBrush, this)); + }; + ParallelAxisView.prototype.render = function (axisModel, ecModel, api, payload) { + if (fromAxisAreaSelect(axisModel, ecModel, payload)) { + return; + } + this.axisModel = axisModel; + this.api = api; + this.group.removeAll(); + var oldAxisGroup = this._axisGroup; + this._axisGroup = new Group(); + this.group.add(this._axisGroup); + if (!axisModel.get('show')) { + return; + } + var coordSysModel = getCoordSysModel(axisModel, ecModel); + var coordSys = coordSysModel.coordinateSystem; + var areaSelectStyle = axisModel.getAreaSelectStyle(); + var areaWidth = areaSelectStyle.width; + var dim = axisModel.axis.dim; + var axisLayout = coordSys.getAxisLayout(dim); + var builderOpt = extend({ + strokeContainThreshold: areaWidth + }, axisLayout); + var axisBuilder = new AxisBuilder(axisModel, builderOpt); + each(elementList, axisBuilder.add, axisBuilder); + this._axisGroup.add(axisBuilder.getGroup()); + this._refreshBrushController(builderOpt, areaSelectStyle, axisModel, coordSysModel, areaWidth, api); + groupTransition(oldAxisGroup, this._axisGroup, axisModel); + }; + // /** + // * @override + // */ + // updateVisual(axisModel, ecModel, api, payload) { + // this._brushController && this._brushController + // .updateCovers(getCoverInfoList(axisModel)); + // } + ParallelAxisView.prototype._refreshBrushController = function (builderOpt, areaSelectStyle, axisModel, coordSysModel, areaWidth, api) { + // After filtering, axis may change, select area needs to be update. + var extent = axisModel.axis.getExtent(); + var extentLen = extent[1] - extent[0]; + var extra = Math.min(30, Math.abs(extentLen) * 0.1); // Arbitrary value. + // width/height might be negative, which will be + // normalized in BoundingRect. + var rect = BoundingRect.create({ + x: extent[0], + y: -areaWidth / 2, + width: extentLen, + height: areaWidth + }); + rect.x -= extra; + rect.width += 2 * extra; + this._brushController.mount({ + enableGlobalPan: true, + rotation: builderOpt.rotation, + x: builderOpt.position[0], + y: builderOpt.position[1] + }).setPanels([{ + panelId: 'pl', + clipPath: makeRectPanelClipPath(rect), + isTargetByCursor: makeRectIsTargetByCursor(rect, api, coordSysModel), + getLinearBrushOtherExtent: makeLinearBrushOtherExtent(rect, 0) + }]).enableBrush({ + brushType: 'lineX', + brushStyle: areaSelectStyle, + removeOnClick: true + }).updateCovers(getCoverInfoList(axisModel)); + }; + ParallelAxisView.prototype._onBrush = function (eventParam) { + var coverInfoList = eventParam.areas; + // Do not cache these object, because the mey be changed. + var axisModel = this.axisModel; + var axis = axisModel.axis; + var intervals = map(coverInfoList, function (coverInfo) { + return [axis.coordToData(coverInfo.range[0], true), axis.coordToData(coverInfo.range[1], true)]; + }); + // If realtime is true, action is not dispatched on drag end, because + // the drag end emits the same params with the last drag move event, + // and may have some delay when using touch pad. + if (!axisModel.option.realtime === eventParam.isEnd || eventParam.removeOnClick) { + // jshint ignore:line + this.api.dispatchAction({ + type: 'axisAreaSelect', + parallelAxisId: axisModel.id, + intervals: intervals + }); + } + }; + ParallelAxisView.prototype.dispose = function () { + this._brushController.dispose(); + }; + ParallelAxisView.type = 'parallelAxis'; + return ParallelAxisView; + }(ComponentView); + function fromAxisAreaSelect(axisModel, ecModel, payload) { + return payload && payload.type === 'axisAreaSelect' && ecModel.findComponents({ + mainType: 'parallelAxis', + query: payload + })[0] === axisModel; + } + function getCoverInfoList(axisModel) { + var axis = axisModel.axis; + return map(axisModel.activeIntervals, function (interval) { + return { + brushType: 'lineX', + panelId: 'pl', + range: [axis.dataToCoord(interval[0], true), axis.dataToCoord(interval[1], true)] + }; + }); + } + function getCoordSysModel(axisModel, ecModel) { + return ecModel.getComponent('parallel', axisModel.get('parallelIndex')); + } + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + + /** + * AUTO-GENERATED FILE. DO NOT MODIFY. + */ + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + var actionInfo$1 = { + type: 'axisAreaSelect', + event: 'axisAreaSelected' + // update: 'updateVisual' + }; + + function installParallelActions(registers) { + registers.registerAction(actionInfo$1, function (payload, ecModel) { + ecModel.eachComponent({ + mainType: 'parallelAxis', + query: payload + }, function (parallelAxisModel) { + parallelAxisModel.axis.model.setActiveIntervals(payload.intervals); + }); + }); + /** + * @payload + */ + registers.registerAction('parallelAxisExpand', function (payload, ecModel) { + ecModel.eachComponent({ + mainType: 'parallel', + query: payload + }, function (parallelModel) { + parallelModel.setAxisExpand(payload); + }); + }); + } + + var defaultAxisOption = { + type: 'value', + areaSelectStyle: { + width: 20, + borderWidth: 1, + borderColor: 'rgba(160,197,232)', + color: 'rgba(160,197,232)', + opacity: 0.3 + }, + realtime: true, + z: 10 + }; + function install$g(registers) { + registers.registerComponentView(ParallelView$1); + registers.registerComponentModel(ParallelModel); + registers.registerCoordinateSystem('parallel', parallelCoordSysCreator); + registers.registerPreprocessor(parallelPreprocessor); + registers.registerComponentModel(ParallelAxisModel); + registers.registerComponentView(ParallelAxisView); + axisModelCreator(registers, 'parallel', ParallelAxisModel, defaultAxisOption); + installParallelActions(registers); + } + + function install$h(registers) { + use(install$g); + registers.registerChartView(ParallelView); + registers.registerSeriesModel(ParallelSeriesModel); + registers.registerVisual(registers.PRIORITY.VISUAL.BRUSH, parallelVisual); + } + + var SankeyPathShape = /** @class */function () { + function SankeyPathShape() { + this.x1 = 0; + this.y1 = 0; + this.x2 = 0; + this.y2 = 0; + this.cpx1 = 0; + this.cpy1 = 0; + this.cpx2 = 0; + this.cpy2 = 0; + this.extent = 0; + } + return SankeyPathShape; + }(); + var SankeyPath = /** @class */function (_super) { + __extends(SankeyPath, _super); + function SankeyPath(opts) { + return _super.call(this, opts) || this; + } + SankeyPath.prototype.getDefaultShape = function () { + return new SankeyPathShape(); + }; + SankeyPath.prototype.buildPath = function (ctx, shape) { + var extent = shape.extent; + ctx.moveTo(shape.x1, shape.y1); + ctx.bezierCurveTo(shape.cpx1, shape.cpy1, shape.cpx2, shape.cpy2, shape.x2, shape.y2); + if (shape.orient === 'vertical') { + ctx.lineTo(shape.x2 + extent, shape.y2); + ctx.bezierCurveTo(shape.cpx2 + extent, shape.cpy2, shape.cpx1 + extent, shape.cpy1, shape.x1 + extent, shape.y1); + } else { + ctx.lineTo(shape.x2, shape.y2 + extent); + ctx.bezierCurveTo(shape.cpx2, shape.cpy2 + extent, shape.cpx1, shape.cpy1 + extent, shape.x1, shape.y1 + extent); + } + ctx.closePath(); + }; + SankeyPath.prototype.highlight = function () { + enterEmphasis(this); + }; + SankeyPath.prototype.downplay = function () { + leaveEmphasis(this); + }; + return SankeyPath; + }(Path); + var SankeyView = /** @class */function (_super) { + __extends(SankeyView, _super); + function SankeyView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = SankeyView.type; + _this._focusAdjacencyDisabled = false; + return _this; + } + SankeyView.prototype.render = function (seriesModel, ecModel, api) { + var sankeyView = this; + var graph = seriesModel.getGraph(); + var group = this.group; + var layoutInfo = seriesModel.layoutInfo; + // view width + var width = layoutInfo.width; + // view height + var height = layoutInfo.height; + var nodeData = seriesModel.getData(); + var edgeData = seriesModel.getData('edge'); + var orient = seriesModel.get('orient'); + this._model = seriesModel; + group.removeAll(); + group.x = layoutInfo.x; + group.y = layoutInfo.y; + // generate a bezire Curve for each edge + graph.eachEdge(function (edge) { + var curve = new SankeyPath(); + var ecData = getECData(curve); + ecData.dataIndex = edge.dataIndex; + ecData.seriesIndex = seriesModel.seriesIndex; + ecData.dataType = 'edge'; + var edgeModel = edge.getModel(); + var lineStyleModel = edgeModel.getModel('lineStyle'); + var curvature = lineStyleModel.get('curveness'); + var n1Layout = edge.node1.getLayout(); + var node1Model = edge.node1.getModel(); + var dragX1 = node1Model.get('localX'); + var dragY1 = node1Model.get('localY'); + var n2Layout = edge.node2.getLayout(); + var node2Model = edge.node2.getModel(); + var dragX2 = node2Model.get('localX'); + var dragY2 = node2Model.get('localY'); + var edgeLayout = edge.getLayout(); + var x1; + var y1; + var x2; + var y2; + var cpx1; + var cpy1; + var cpx2; + var cpy2; + curve.shape.extent = Math.max(1, edgeLayout.dy); + curve.shape.orient = orient; + if (orient === 'vertical') { + x1 = (dragX1 != null ? dragX1 * width : n1Layout.x) + edgeLayout.sy; + y1 = (dragY1 != null ? dragY1 * height : n1Layout.y) + n1Layout.dy; + x2 = (dragX2 != null ? dragX2 * width : n2Layout.x) + edgeLayout.ty; + y2 = dragY2 != null ? dragY2 * height : n2Layout.y; + cpx1 = x1; + cpy1 = y1 * (1 - curvature) + y2 * curvature; + cpx2 = x2; + cpy2 = y1 * curvature + y2 * (1 - curvature); + } else { + x1 = (dragX1 != null ? dragX1 * width : n1Layout.x) + n1Layout.dx; + y1 = (dragY1 != null ? dragY1 * height : n1Layout.y) + edgeLayout.sy; + x2 = dragX2 != null ? dragX2 * width : n2Layout.x; + y2 = (dragY2 != null ? dragY2 * height : n2Layout.y) + edgeLayout.ty; + cpx1 = x1 * (1 - curvature) + x2 * curvature; + cpy1 = y1; + cpx2 = x1 * curvature + x2 * (1 - curvature); + cpy2 = y2; + } + curve.setShape({ + x1: x1, + y1: y1, + x2: x2, + y2: y2, + cpx1: cpx1, + cpy1: cpy1, + cpx2: cpx2, + cpy2: cpy2 + }); + curve.useStyle(lineStyleModel.getItemStyle()); + // Special color, use source node color or target node color + applyCurveStyle(curve.style, orient, edge); + var defaultEdgeLabelText = "" + edgeModel.get('value'); + var edgeLabelStateModels = getLabelStatesModels(edgeModel, 'edgeLabel'); + setLabelStyle(curve, edgeLabelStateModels, { + labelFetcher: { + getFormattedLabel: function (dataIndex, stateName, dataType, labelDimIndex, formatter, extendParams) { + return seriesModel.getFormattedLabel(dataIndex, stateName, 'edge', labelDimIndex, + // ensure edgeLabel formatter is provided + // to prevent the inheritance from `label.formatter` of the series + retrieve3(formatter, edgeLabelStateModels.normal && edgeLabelStateModels.normal.get('formatter'), defaultEdgeLabelText), extendParams); + } + }, + labelDataIndex: edge.dataIndex, + defaultText: defaultEdgeLabelText + }); + curve.setTextConfig({ + position: 'inside' + }); + var emphasisModel = edgeModel.getModel('emphasis'); + setStatesStylesFromModel(curve, edgeModel, 'lineStyle', function (model) { + var style = model.getItemStyle(); + applyCurveStyle(style, orient, edge); + return style; + }); + group.add(curve); + edgeData.setItemGraphicEl(edge.dataIndex, curve); + var focus = emphasisModel.get('focus'); + toggleHoverEmphasis(curve, focus === 'adjacency' ? edge.getAdjacentDataIndices() : focus === 'trajectory' ? edge.getTrajectoryDataIndices() : focus, emphasisModel.get('blurScope'), emphasisModel.get('disabled')); + }); + // Generate a rect for each node + graph.eachNode(function (node) { + var layout = node.getLayout(); + var itemModel = node.getModel(); + var dragX = itemModel.get('localX'); + var dragY = itemModel.get('localY'); + var emphasisModel = itemModel.getModel('emphasis'); + var rect = new Rect({ + shape: { + x: dragX != null ? dragX * width : layout.x, + y: dragY != null ? dragY * height : layout.y, + width: layout.dx, + height: layout.dy + }, + style: itemModel.getModel('itemStyle').getItemStyle(), + z2: 10 + }); + setLabelStyle(rect, getLabelStatesModels(itemModel), { + labelFetcher: { + getFormattedLabel: function (dataIndex, stateName) { + return seriesModel.getFormattedLabel(dataIndex, stateName, 'node'); + } + }, + labelDataIndex: node.dataIndex, + defaultText: node.id + }); + rect.disableLabelAnimation = true; + rect.setStyle('fill', node.getVisual('color')); + rect.setStyle('decal', node.getVisual('style').decal); + setStatesStylesFromModel(rect, itemModel); + group.add(rect); + nodeData.setItemGraphicEl(node.dataIndex, rect); + getECData(rect).dataType = 'node'; + var focus = emphasisModel.get('focus'); + toggleHoverEmphasis(rect, focus === 'adjacency' ? node.getAdjacentDataIndices() : focus === 'trajectory' ? node.getTrajectoryDataIndices() : focus, emphasisModel.get('blurScope'), emphasisModel.get('disabled')); + }); + nodeData.eachItemGraphicEl(function (el, dataIndex) { + var itemModel = nodeData.getItemModel(dataIndex); + if (itemModel.get('draggable')) { + el.drift = function (dx, dy) { + sankeyView._focusAdjacencyDisabled = true; + this.shape.x += dx; + this.shape.y += dy; + this.dirty(); + api.dispatchAction({ + type: 'dragNode', + seriesId: seriesModel.id, + dataIndex: nodeData.getRawIndex(dataIndex), + localX: this.shape.x / width, + localY: this.shape.y / height + }); + }; + el.ondragend = function () { + sankeyView._focusAdjacencyDisabled = false; + }; + el.draggable = true; + el.cursor = 'move'; + } + }); + if (!this._data && seriesModel.isAnimationEnabled()) { + group.setClipPath(createGridClipShape$1(group.getBoundingRect(), seriesModel, function () { + group.removeClipPath(); + })); + } + this._data = seriesModel.getData(); + }; + SankeyView.prototype.dispose = function () {}; + SankeyView.type = 'sankey'; + return SankeyView; + }(ChartView); + /** + * Special color, use source node color or target node color + * @param curveProps curve's style to parse + * @param orient direction + * @param edge current curve data + */ + function applyCurveStyle(curveProps, orient, edge) { + switch (curveProps.fill) { + case 'source': + curveProps.fill = edge.node1.getVisual('color'); + curveProps.decal = edge.node1.getVisual('style').decal; + break; + case 'target': + curveProps.fill = edge.node2.getVisual('color'); + curveProps.decal = edge.node2.getVisual('style').decal; + break; + case 'gradient': + var sourceColor = edge.node1.getVisual('color'); + var targetColor = edge.node2.getVisual('color'); + if (isString(sourceColor) && isString(targetColor)) { + curveProps.fill = new LinearGradient(0, 0, +(orient === 'horizontal'), +(orient === 'vertical'), [{ + color: sourceColor, + offset: 0 + }, { + color: targetColor, + offset: 1 + }]); + } + } + } + // Add animation to the view + function createGridClipShape$1(rect, seriesModel, cb) { + var rectEl = new Rect({ + shape: { + x: rect.x - 10, + y: rect.y - 10, + width: 0, + height: rect.height + 20 + } + }); + initProps(rectEl, { + shape: { + width: rect.width + 20 + } + }, seriesModel, cb); + return rectEl; + } + + var SankeySeriesModel = /** @class */function (_super) { + __extends(SankeySeriesModel, _super); + function SankeySeriesModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = SankeySeriesModel.type; + return _this; + } + /** + * Init a graph data structure from data in option series + */ + SankeySeriesModel.prototype.getInitialData = function (option, ecModel) { + var links = option.edges || option.links; + var nodes = option.data || option.nodes; + var levels = option.levels; + this.levelModels = []; + var levelModels = this.levelModels; + for (var i = 0; i < levels.length; i++) { + if (levels[i].depth != null && levels[i].depth >= 0) { + levelModels[levels[i].depth] = new Model(levels[i], this, ecModel); + } else { + if ("development" !== 'production') { + throw new Error('levels[i].depth is mandatory and should be natural number'); + } + } + } + if (nodes && links) { + var graph = createGraphFromNodeEdge(nodes, links, this, true, beforeLink); + return graph.data; + } + function beforeLink(nodeData, edgeData) { + nodeData.wrapMethod('getItemModel', function (model, idx) { + var seriesModel = model.parentModel; + var layout = seriesModel.getData().getItemLayout(idx); + if (layout) { + var nodeDepth = layout.depth; + var levelModel = seriesModel.levelModels[nodeDepth]; + if (levelModel) { + model.parentModel = levelModel; + } + } + return model; + }); + edgeData.wrapMethod('getItemModel', function (model, idx) { + var seriesModel = model.parentModel; + var edge = seriesModel.getGraph().getEdgeByIndex(idx); + var layout = edge.node1.getLayout(); + if (layout) { + var depth = layout.depth; + var levelModel = seriesModel.levelModels[depth]; + if (levelModel) { + model.parentModel = levelModel; + } + } + return model; + }); + } + }; + SankeySeriesModel.prototype.setNodePosition = function (dataIndex, localPosition) { + var nodes = this.option.data || this.option.nodes; + var dataItem = nodes[dataIndex]; + dataItem.localX = localPosition[0]; + dataItem.localY = localPosition[1]; + }; + /** + * Return the graphic data structure + * + * @return graphic data structure + */ + SankeySeriesModel.prototype.getGraph = function () { + return this.getData().graph; + }; + /** + * Get edge data of graphic data structure + * + * @return data structure of list + */ + SankeySeriesModel.prototype.getEdgeData = function () { + return this.getGraph().edgeData; + }; + SankeySeriesModel.prototype.formatTooltip = function (dataIndex, multipleSeries, dataType) { + function noValue(val) { + return isNaN(val) || val == null; + } + // dataType === 'node' or empty do not show tooltip by default + if (dataType === 'edge') { + var params = this.getDataParams(dataIndex, dataType); + var rawDataOpt = params.data; + var edgeValue = params.value; + var edgeName = rawDataOpt.source + ' -- ' + rawDataOpt.target; + return createTooltipMarkup('nameValue', { + name: edgeName, + value: edgeValue, + noValue: noValue(edgeValue) + }); + } + // dataType === 'node' + else { + var node = this.getGraph().getNodeByIndex(dataIndex); + var value = node.getLayout().value; + var name_1 = this.getDataParams(dataIndex, dataType).data.name; + return createTooltipMarkup('nameValue', { + name: name_1 != null ? name_1 + '' : null, + value: value, + noValue: noValue(value) + }); + } + }; + SankeySeriesModel.prototype.optionUpdated = function () {}; + // Override Series.getDataParams() + SankeySeriesModel.prototype.getDataParams = function (dataIndex, dataType) { + var params = _super.prototype.getDataParams.call(this, dataIndex, dataType); + if (params.value == null && dataType === 'node') { + var node = this.getGraph().getNodeByIndex(dataIndex); + var nodeValue = node.getLayout().value; + params.value = nodeValue; + } + return params; + }; + SankeySeriesModel.type = 'series.sankey'; + SankeySeriesModel.defaultOption = { + // zlevel: 0, + z: 2, + coordinateSystem: 'view', + left: '5%', + top: '5%', + right: '20%', + bottom: '5%', + orient: 'horizontal', + nodeWidth: 20, + nodeGap: 8, + draggable: true, + layoutIterations: 32, + label: { + show: true, + position: 'right', + fontSize: 12 + }, + edgeLabel: { + show: false, + fontSize: 12 + }, + levels: [], + nodeAlign: 'justify', + lineStyle: { + color: '#314656', + opacity: 0.2, + curveness: 0.5 + }, + emphasis: { + label: { + show: true + }, + lineStyle: { + opacity: 0.5 + } + }, + select: { + itemStyle: { + borderColor: '#212121' + } + }, + animationEasing: 'linear', + animationDuration: 1000 + }; + return SankeySeriesModel; + }(SeriesModel); + + function sankeyLayout(ecModel, api) { + ecModel.eachSeriesByType('sankey', function (seriesModel) { + var nodeWidth = seriesModel.get('nodeWidth'); + var nodeGap = seriesModel.get('nodeGap'); + var layoutInfo = getViewRect$4(seriesModel, api); + seriesModel.layoutInfo = layoutInfo; + var width = layoutInfo.width; + var height = layoutInfo.height; + var graph = seriesModel.getGraph(); + var nodes = graph.nodes; + var edges = graph.edges; + computeNodeValues(nodes); + var filteredNodes = filter(nodes, function (node) { + return node.getLayout().value === 0; + }); + var iterations = filteredNodes.length !== 0 ? 0 : seriesModel.get('layoutIterations'); + var orient = seriesModel.get('orient'); + var nodeAlign = seriesModel.get('nodeAlign'); + layoutSankey(nodes, edges, nodeWidth, nodeGap, width, height, iterations, orient, nodeAlign); + }); + } + /** + * Get the layout position of the whole view + */ + function getViewRect$4(seriesModel, api) { + return getLayoutRect(seriesModel.getBoxLayoutParams(), { + width: api.getWidth(), + height: api.getHeight() + }); + } + function layoutSankey(nodes, edges, nodeWidth, nodeGap, width, height, iterations, orient, nodeAlign) { + computeNodeBreadths(nodes, edges, nodeWidth, width, height, orient, nodeAlign); + computeNodeDepths(nodes, edges, height, width, nodeGap, iterations, orient); + computeEdgeDepths(nodes, orient); + } + /** + * Compute the value of each node by summing the associated edge's value + */ + function computeNodeValues(nodes) { + each(nodes, function (node) { + var value1 = sum(node.outEdges, getEdgeValue); + var value2 = sum(node.inEdges, getEdgeValue); + var nodeRawValue = node.getValue() || 0; + var value = Math.max(value1, value2, nodeRawValue); + node.setLayout({ + value: value + }, true); + }); + } + /** + * Compute the x-position for each node. + * + * Here we use Kahn algorithm to detect cycle when we traverse + * the node to computer the initial x position. + */ + function computeNodeBreadths(nodes, edges, nodeWidth, width, height, orient, nodeAlign) { + // Used to mark whether the edge is deleted. if it is deleted, + // the value is 0, otherwise it is 1. + var remainEdges = []; + // Storage each node's indegree. + var indegreeArr = []; + // Used to storage the node with indegree is equal to 0. + var zeroIndegrees = []; + var nextTargetNode = []; + var x = 0; + // let kx = 0; + for (var i = 0; i < edges.length; i++) { + remainEdges[i] = 1; + } + for (var i = 0; i < nodes.length; i++) { + indegreeArr[i] = nodes[i].inEdges.length; + if (indegreeArr[i] === 0) { + zeroIndegrees.push(nodes[i]); + } + } + var maxNodeDepth = -1; + // Traversing nodes using topological sorting to calculate the + // horizontal(if orient === 'horizontal') or vertical(if orient === 'vertical') + // position of the nodes. + while (zeroIndegrees.length) { + for (var idx = 0; idx < zeroIndegrees.length; idx++) { + var node = zeroIndegrees[idx]; + var item = node.hostGraph.data.getRawDataItem(node.dataIndex); + var isItemDepth = item.depth != null && item.depth >= 0; + if (isItemDepth && item.depth > maxNodeDepth) { + maxNodeDepth = item.depth; + } + node.setLayout({ + depth: isItemDepth ? item.depth : x + }, true); + orient === 'vertical' ? node.setLayout({ + dy: nodeWidth + }, true) : node.setLayout({ + dx: nodeWidth + }, true); + for (var edgeIdx = 0; edgeIdx < node.outEdges.length; edgeIdx++) { + var edge = node.outEdges[edgeIdx]; + var indexEdge = edges.indexOf(edge); + remainEdges[indexEdge] = 0; + var targetNode = edge.node2; + var nodeIndex = nodes.indexOf(targetNode); + if (--indegreeArr[nodeIndex] === 0 && nextTargetNode.indexOf(targetNode) < 0) { + nextTargetNode.push(targetNode); + } + } + } + ++x; + zeroIndegrees = nextTargetNode; + nextTargetNode = []; + } + for (var i = 0; i < remainEdges.length; i++) { + if (remainEdges[i] === 1) { + throw new Error('Sankey is a DAG, the original data has cycle!'); + } + } + var maxDepth = maxNodeDepth > x - 1 ? maxNodeDepth : x - 1; + if (nodeAlign && nodeAlign !== 'left') { + adjustNodeWithNodeAlign(nodes, nodeAlign, orient, maxDepth); + } + var kx = orient === 'vertical' ? (height - nodeWidth) / maxDepth : (width - nodeWidth) / maxDepth; + scaleNodeBreadths(nodes, kx, orient); + } + function isNodeDepth(node) { + var item = node.hostGraph.data.getRawDataItem(node.dataIndex); + return item.depth != null && item.depth >= 0; + } + function adjustNodeWithNodeAlign(nodes, nodeAlign, orient, maxDepth) { + if (nodeAlign === 'right') { + var nextSourceNode = []; + var remainNodes = nodes; + var nodeHeight = 0; + while (remainNodes.length) { + for (var i = 0; i < remainNodes.length; i++) { + var node = remainNodes[i]; + node.setLayout({ + skNodeHeight: nodeHeight + }, true); + for (var j = 0; j < node.inEdges.length; j++) { + var edge = node.inEdges[j]; + if (nextSourceNode.indexOf(edge.node1) < 0) { + nextSourceNode.push(edge.node1); + } + } + } + remainNodes = nextSourceNode; + nextSourceNode = []; + ++nodeHeight; + } + each(nodes, function (node) { + if (!isNodeDepth(node)) { + node.setLayout({ + depth: Math.max(0, maxDepth - node.getLayout().skNodeHeight) + }, true); + } + }); + } else if (nodeAlign === 'justify') { + moveSinksRight(nodes, maxDepth); + } + } + /** + * All the node without outEgdes are assigned maximum x-position and + * be aligned in the last column. + * + * @param nodes. node of sankey view. + * @param maxDepth. use to assign to node without outEdges as x-position. + */ + function moveSinksRight(nodes, maxDepth) { + each(nodes, function (node) { + if (!isNodeDepth(node) && !node.outEdges.length) { + node.setLayout({ + depth: maxDepth + }, true); + } + }); + } + /** + * Scale node x-position to the width + * + * @param nodes node of sankey view + * @param kx multiple used to scale nodes + */ + function scaleNodeBreadths(nodes, kx, orient) { + each(nodes, function (node) { + var nodeDepth = node.getLayout().depth * kx; + orient === 'vertical' ? node.setLayout({ + y: nodeDepth + }, true) : node.setLayout({ + x: nodeDepth + }, true); + }); + } + /** + * Using Gauss-Seidel iterations method to compute the node depth(y-position) + * + * @param nodes node of sankey view + * @param edges edge of sankey view + * @param height the whole height of the area to draw the view + * @param nodeGap the vertical distance between two nodes + * in the same column. + * @param iterations the number of iterations for the algorithm + */ + function computeNodeDepths(nodes, edges, height, width, nodeGap, iterations, orient) { + var nodesByBreadth = prepareNodesByBreadth(nodes, orient); + initializeNodeDepth(nodesByBreadth, edges, height, width, nodeGap, orient); + resolveCollisions(nodesByBreadth, nodeGap, height, width, orient); + for (var alpha = 1; iterations > 0; iterations--) { + // 0.99 is a experience parameter, ensure that each iterations of + // changes as small as possible. + alpha *= 0.99; + relaxRightToLeft(nodesByBreadth, alpha, orient); + resolveCollisions(nodesByBreadth, nodeGap, height, width, orient); + relaxLeftToRight(nodesByBreadth, alpha, orient); + resolveCollisions(nodesByBreadth, nodeGap, height, width, orient); + } + } + function prepareNodesByBreadth(nodes, orient) { + var nodesByBreadth = []; + var keyAttr = orient === 'vertical' ? 'y' : 'x'; + var groupResult = groupData(nodes, function (node) { + return node.getLayout()[keyAttr]; + }); + groupResult.keys.sort(function (a, b) { + return a - b; + }); + each(groupResult.keys, function (key) { + nodesByBreadth.push(groupResult.buckets.get(key)); + }); + return nodesByBreadth; + } + /** + * Compute the original y-position for each node + */ + function initializeNodeDepth(nodesByBreadth, edges, height, width, nodeGap, orient) { + var minKy = Infinity; + each(nodesByBreadth, function (nodes) { + var n = nodes.length; + var sum = 0; + each(nodes, function (node) { + sum += node.getLayout().value; + }); + var ky = orient === 'vertical' ? (width - (n - 1) * nodeGap) / sum : (height - (n - 1) * nodeGap) / sum; + if (ky < minKy) { + minKy = ky; + } + }); + each(nodesByBreadth, function (nodes) { + each(nodes, function (node, i) { + var nodeDy = node.getLayout().value * minKy; + if (orient === 'vertical') { + node.setLayout({ + x: i + }, true); + node.setLayout({ + dx: nodeDy + }, true); + } else { + node.setLayout({ + y: i + }, true); + node.setLayout({ + dy: nodeDy + }, true); + } + }); + }); + each(edges, function (edge) { + var edgeDy = +edge.getValue() * minKy; + edge.setLayout({ + dy: edgeDy + }, true); + }); + } + /** + * Resolve the collision of initialized depth (y-position) + */ + function resolveCollisions(nodesByBreadth, nodeGap, height, width, orient) { + var keyAttr = orient === 'vertical' ? 'x' : 'y'; + each(nodesByBreadth, function (nodes) { + nodes.sort(function (a, b) { + return a.getLayout()[keyAttr] - b.getLayout()[keyAttr]; + }); + var nodeX; + var node; + var dy; + var y0 = 0; + var n = nodes.length; + var nodeDyAttr = orient === 'vertical' ? 'dx' : 'dy'; + for (var i = 0; i < n; i++) { + node = nodes[i]; + dy = y0 - node.getLayout()[keyAttr]; + if (dy > 0) { + nodeX = node.getLayout()[keyAttr] + dy; + orient === 'vertical' ? node.setLayout({ + x: nodeX + }, true) : node.setLayout({ + y: nodeX + }, true); + } + y0 = node.getLayout()[keyAttr] + node.getLayout()[nodeDyAttr] + nodeGap; + } + var viewWidth = orient === 'vertical' ? width : height; + // If the bottommost node goes outside the bounds, push it back up + dy = y0 - nodeGap - viewWidth; + if (dy > 0) { + nodeX = node.getLayout()[keyAttr] - dy; + orient === 'vertical' ? node.setLayout({ + x: nodeX + }, true) : node.setLayout({ + y: nodeX + }, true); + y0 = nodeX; + for (var i = n - 2; i >= 0; --i) { + node = nodes[i]; + dy = node.getLayout()[keyAttr] + node.getLayout()[nodeDyAttr] + nodeGap - y0; + if (dy > 0) { + nodeX = node.getLayout()[keyAttr] - dy; + orient === 'vertical' ? node.setLayout({ + x: nodeX + }, true) : node.setLayout({ + y: nodeX + }, true); + } + y0 = node.getLayout()[keyAttr]; + } + } + }); + } + /** + * Change the y-position of the nodes, except most the right side nodes + * @param nodesByBreadth + * @param alpha parameter used to adjust the nodes y-position + */ + function relaxRightToLeft(nodesByBreadth, alpha, orient) { + each(nodesByBreadth.slice().reverse(), function (nodes) { + each(nodes, function (node) { + if (node.outEdges.length) { + var y = sum(node.outEdges, weightedTarget, orient) / sum(node.outEdges, getEdgeValue); + if (isNaN(y)) { + var len = node.outEdges.length; + y = len ? sum(node.outEdges, centerTarget, orient) / len : 0; + } + if (orient === 'vertical') { + var nodeX = node.getLayout().x + (y - center$1(node, orient)) * alpha; + node.setLayout({ + x: nodeX + }, true); + } else { + var nodeY = node.getLayout().y + (y - center$1(node, orient)) * alpha; + node.setLayout({ + y: nodeY + }, true); + } + } + }); + }); + } + function weightedTarget(edge, orient) { + return center$1(edge.node2, orient) * edge.getValue(); + } + function centerTarget(edge, orient) { + return center$1(edge.node2, orient); + } + function weightedSource(edge, orient) { + return center$1(edge.node1, orient) * edge.getValue(); + } + function centerSource(edge, orient) { + return center$1(edge.node1, orient); + } + function center$1(node, orient) { + return orient === 'vertical' ? node.getLayout().x + node.getLayout().dx / 2 : node.getLayout().y + node.getLayout().dy / 2; + } + function getEdgeValue(edge) { + return edge.getValue(); + } + function sum(array, cb, orient) { + var sum = 0; + var len = array.length; + var i = -1; + while (++i < len) { + var value = +cb(array[i], orient); + if (!isNaN(value)) { + sum += value; + } + } + return sum; + } + /** + * Change the y-position of the nodes, except most the left side nodes + */ + function relaxLeftToRight(nodesByBreadth, alpha, orient) { + each(nodesByBreadth, function (nodes) { + each(nodes, function (node) { + if (node.inEdges.length) { + var y = sum(node.inEdges, weightedSource, orient) / sum(node.inEdges, getEdgeValue); + if (isNaN(y)) { + var len = node.inEdges.length; + y = len ? sum(node.inEdges, centerSource, orient) / len : 0; + } + if (orient === 'vertical') { + var nodeX = node.getLayout().x + (y - center$1(node, orient)) * alpha; + node.setLayout({ + x: nodeX + }, true); + } else { + var nodeY = node.getLayout().y + (y - center$1(node, orient)) * alpha; + node.setLayout({ + y: nodeY + }, true); + } + } + }); + }); + } + /** + * Compute the depth(y-position) of each edge + */ + function computeEdgeDepths(nodes, orient) { + var keyAttr = orient === 'vertical' ? 'x' : 'y'; + each(nodes, function (node) { + node.outEdges.sort(function (a, b) { + return a.node2.getLayout()[keyAttr] - b.node2.getLayout()[keyAttr]; + }); + node.inEdges.sort(function (a, b) { + return a.node1.getLayout()[keyAttr] - b.node1.getLayout()[keyAttr]; + }); + }); + each(nodes, function (node) { + var sy = 0; + var ty = 0; + each(node.outEdges, function (edge) { + edge.setLayout({ + sy: sy + }, true); + sy += edge.getLayout().dy; + }); + each(node.inEdges, function (edge) { + edge.setLayout({ + ty: ty + }, true); + ty += edge.getLayout().dy; + }); + }); + } + + function sankeyVisual(ecModel) { + ecModel.eachSeriesByType('sankey', function (seriesModel) { + var graph = seriesModel.getGraph(); + var nodes = graph.nodes; + var edges = graph.edges; + if (nodes.length) { + var minValue_1 = Infinity; + var maxValue_1 = -Infinity; + each(nodes, function (node) { + var nodeValue = node.getLayout().value; + if (nodeValue < minValue_1) { + minValue_1 = nodeValue; + } + if (nodeValue > maxValue_1) { + maxValue_1 = nodeValue; + } + }); + each(nodes, function (node) { + var mapping = new VisualMapping({ + type: 'color', + mappingMethod: 'linear', + dataExtent: [minValue_1, maxValue_1], + visual: seriesModel.get('color') + }); + var mapValueToColor = mapping.mapValueToVisual(node.getLayout().value); + var customColor = node.getModel().get(['itemStyle', 'color']); + if (customColor != null) { + node.setVisual('color', customColor); + node.setVisual('style', { + fill: customColor + }); + } else { + node.setVisual('color', mapValueToColor); + node.setVisual('style', { + fill: mapValueToColor + }); + } + }); + } + if (edges.length) { + each(edges, function (edge) { + var edgeStyle = edge.getModel().get('lineStyle'); + edge.setVisual('style', edgeStyle); + }); + } + }); + } + + function install$i(registers) { + registers.registerChartView(SankeyView); + registers.registerSeriesModel(SankeySeriesModel); + registers.registerLayout(sankeyLayout); + registers.registerVisual(sankeyVisual); + registers.registerAction({ + type: 'dragNode', + event: 'dragnode', + // here can only use 'update' now, other value is not support in echarts. + update: 'update' + }, function (payload, ecModel) { + ecModel.eachComponent({ + mainType: 'series', + subType: 'sankey', + query: payload + }, function (seriesModel) { + seriesModel.setNodePosition(payload.dataIndex, [payload.localX, payload.localY]); + }); + }); + } + + var WhiskerBoxCommonMixin = /** @class */function () { + function WhiskerBoxCommonMixin() {} + /** + * @override + */ + WhiskerBoxCommonMixin.prototype.getInitialData = function (option, ecModel) { + // When both types of xAxis and yAxis are 'value', layout is + // needed to be specified by user. Otherwise, layout can be + // judged by which axis is category. + var ordinalMeta; + var xAxisModel = ecModel.getComponent('xAxis', this.get('xAxisIndex')); + var yAxisModel = ecModel.getComponent('yAxis', this.get('yAxisIndex')); + var xAxisType = xAxisModel.get('type'); + var yAxisType = yAxisModel.get('type'); + var addOrdinal; + // FIXME + // Consider time axis. + if (xAxisType === 'category') { + option.layout = 'horizontal'; + ordinalMeta = xAxisModel.getOrdinalMeta(); + addOrdinal = true; + } else if (yAxisType === 'category') { + option.layout = 'vertical'; + ordinalMeta = yAxisModel.getOrdinalMeta(); + addOrdinal = true; + } else { + option.layout = option.layout || 'horizontal'; + } + var coordDims = ['x', 'y']; + var baseAxisDimIndex = option.layout === 'horizontal' ? 0 : 1; + var baseAxisDim = this._baseAxisDim = coordDims[baseAxisDimIndex]; + var otherAxisDim = coordDims[1 - baseAxisDimIndex]; + var axisModels = [xAxisModel, yAxisModel]; + var baseAxisType = axisModels[baseAxisDimIndex].get('type'); + var otherAxisType = axisModels[1 - baseAxisDimIndex].get('type'); + var data = option.data; + // Clone a new data for next setOption({}) usage. + // Avoid modifying current data will affect further update. + if (data && addOrdinal) { + var newOptionData_1 = []; + each(data, function (item, index) { + var newItem; + if (isArray(item)) { + newItem = item.slice(); + // Modify current using data. + item.unshift(index); + } else if (isArray(item.value)) { + newItem = extend({}, item); + newItem.value = newItem.value.slice(); + // Modify current using data. + item.value.unshift(index); + } else { + newItem = item; + } + newOptionData_1.push(newItem); + }); + option.data = newOptionData_1; + } + var defaultValueDimensions = this.defaultValueDimensions; + var coordDimensions = [{ + name: baseAxisDim, + type: getDimensionTypeByAxis(baseAxisType), + ordinalMeta: ordinalMeta, + otherDims: { + tooltip: false, + itemName: 0 + }, + dimsDef: ['base'] + }, { + name: otherAxisDim, + type: getDimensionTypeByAxis(otherAxisType), + dimsDef: defaultValueDimensions.slice() + }]; + return createSeriesDataSimply(this, { + coordDimensions: coordDimensions, + dimensionsCount: defaultValueDimensions.length + 1, + encodeDefaulter: curry(makeSeriesEncodeForAxisCoordSys, coordDimensions, this) + }); + }; + /** + * If horizontal, base axis is x, otherwise y. + * @override + */ + WhiskerBoxCommonMixin.prototype.getBaseAxis = function () { + var dim = this._baseAxisDim; + return this.ecModel.getComponent(dim + 'Axis', this.get(dim + 'AxisIndex')).axis; + }; + return WhiskerBoxCommonMixin; + }(); + + var BoxplotSeriesModel = /** @class */function (_super) { + __extends(BoxplotSeriesModel, _super); + function BoxplotSeriesModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = BoxplotSeriesModel.type; + // TODO + // box width represents group size, so dimension should have 'size'. + /** + * @see <https://en.wikipedia.org/wiki/Box_plot> + * The meanings of 'min' and 'max' depend on user, + * and echarts do not need to know it. + * @readOnly + */ + _this.defaultValueDimensions = [{ + name: 'min', + defaultTooltip: true + }, { + name: 'Q1', + defaultTooltip: true + }, { + name: 'median', + defaultTooltip: true + }, { + name: 'Q3', + defaultTooltip: true + }, { + name: 'max', + defaultTooltip: true + }]; + _this.visualDrawType = 'stroke'; + return _this; + } + BoxplotSeriesModel.type = 'series.boxplot'; + BoxplotSeriesModel.dependencies = ['xAxis', 'yAxis', 'grid']; + BoxplotSeriesModel.defaultOption = { + // zlevel: 0, + z: 2, + coordinateSystem: 'cartesian2d', + legendHoverLink: true, + layout: null, + boxWidth: [7, 50], + itemStyle: { + color: '#fff', + borderWidth: 1 + }, + emphasis: { + scale: true, + itemStyle: { + borderWidth: 2, + shadowBlur: 5, + shadowOffsetX: 1, + shadowOffsetY: 1, + shadowColor: 'rgba(0,0,0,0.2)' + } + }, + animationDuration: 800 + }; + return BoxplotSeriesModel; + }(SeriesModel); + mixin(BoxplotSeriesModel, WhiskerBoxCommonMixin, true); + + var BoxplotView = /** @class */function (_super) { + __extends(BoxplotView, _super); + function BoxplotView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = BoxplotView.type; + return _this; + } + BoxplotView.prototype.render = function (seriesModel, ecModel, api) { + var data = seriesModel.getData(); + var group = this.group; + var oldData = this._data; + // There is no old data only when first rendering or switching from + // stream mode to normal mode, where previous elements should be removed. + if (!this._data) { + group.removeAll(); + } + var constDim = seriesModel.get('layout') === 'horizontal' ? 1 : 0; + data.diff(oldData).add(function (newIdx) { + if (data.hasValue(newIdx)) { + var itemLayout = data.getItemLayout(newIdx); + var symbolEl = createNormalBox(itemLayout, data, newIdx, constDim, true); + data.setItemGraphicEl(newIdx, symbolEl); + group.add(symbolEl); + } + }).update(function (newIdx, oldIdx) { + var symbolEl = oldData.getItemGraphicEl(oldIdx); + // Empty data + if (!data.hasValue(newIdx)) { + group.remove(symbolEl); + return; + } + var itemLayout = data.getItemLayout(newIdx); + if (!symbolEl) { + symbolEl = createNormalBox(itemLayout, data, newIdx, constDim); + } else { + saveOldStyle(symbolEl); + updateNormalBoxData(itemLayout, symbolEl, data, newIdx); + } + group.add(symbolEl); + data.setItemGraphicEl(newIdx, symbolEl); + }).remove(function (oldIdx) { + var el = oldData.getItemGraphicEl(oldIdx); + el && group.remove(el); + }).execute(); + this._data = data; + }; + BoxplotView.prototype.remove = function (ecModel) { + var group = this.group; + var data = this._data; + this._data = null; + data && data.eachItemGraphicEl(function (el) { + el && group.remove(el); + }); + }; + BoxplotView.type = 'boxplot'; + return BoxplotView; + }(ChartView); + var BoxPathShape = /** @class */function () { + function BoxPathShape() {} + return BoxPathShape; + }(); + var BoxPath = /** @class */function (_super) { + __extends(BoxPath, _super); + function BoxPath(opts) { + var _this = _super.call(this, opts) || this; + _this.type = 'boxplotBoxPath'; + return _this; + } + BoxPath.prototype.getDefaultShape = function () { + return new BoxPathShape(); + }; + BoxPath.prototype.buildPath = function (ctx, shape) { + var ends = shape.points; + var i = 0; + ctx.moveTo(ends[i][0], ends[i][1]); + i++; + for (; i < 4; i++) { + ctx.lineTo(ends[i][0], ends[i][1]); + } + ctx.closePath(); + for (; i < ends.length; i++) { + ctx.moveTo(ends[i][0], ends[i][1]); + i++; + ctx.lineTo(ends[i][0], ends[i][1]); + } + }; + return BoxPath; + }(Path); + function createNormalBox(itemLayout, data, dataIndex, constDim, isInit) { + var ends = itemLayout.ends; + var el = new BoxPath({ + shape: { + points: isInit ? transInit(ends, constDim, itemLayout) : ends + } + }); + updateNormalBoxData(itemLayout, el, data, dataIndex, isInit); + return el; + } + function updateNormalBoxData(itemLayout, el, data, dataIndex, isInit) { + var seriesModel = data.hostModel; + var updateMethod = graphic[isInit ? 'initProps' : 'updateProps']; + updateMethod(el, { + shape: { + points: itemLayout.ends + } + }, seriesModel, dataIndex); + el.useStyle(data.getItemVisual(dataIndex, 'style')); + el.style.strokeNoScale = true; + el.z2 = 100; + var itemModel = data.getItemModel(dataIndex); + var emphasisModel = itemModel.getModel('emphasis'); + setStatesStylesFromModel(el, itemModel); + toggleHoverEmphasis(el, emphasisModel.get('focus'), emphasisModel.get('blurScope'), emphasisModel.get('disabled')); + } + function transInit(points, dim, itemLayout) { + return map(points, function (point) { + point = point.slice(); + point[dim] = itemLayout.initBaseline; + return point; + }); + } + + var each$6 = each; + function boxplotLayout(ecModel) { + var groupResult = groupSeriesByAxis(ecModel); + each$6(groupResult, function (groupItem) { + var seriesModels = groupItem.seriesModels; + if (!seriesModels.length) { + return; + } + calculateBase(groupItem); + each$6(seriesModels, function (seriesModel, idx) { + layoutSingleSeries(seriesModel, groupItem.boxOffsetList[idx], groupItem.boxWidthList[idx]); + }); + }); + } + /** + * Group series by axis. + */ + function groupSeriesByAxis(ecModel) { + var result = []; + var axisList = []; + ecModel.eachSeriesByType('boxplot', function (seriesModel) { + var baseAxis = seriesModel.getBaseAxis(); + var idx = indexOf(axisList, baseAxis); + if (idx < 0) { + idx = axisList.length; + axisList[idx] = baseAxis; + result[idx] = { + axis: baseAxis, + seriesModels: [] + }; + } + result[idx].seriesModels.push(seriesModel); + }); + return result; + } + /** + * Calculate offset and box width for each series. + */ + function calculateBase(groupItem) { + var baseAxis = groupItem.axis; + var seriesModels = groupItem.seriesModels; + var seriesCount = seriesModels.length; + var boxWidthList = groupItem.boxWidthList = []; + var boxOffsetList = groupItem.boxOffsetList = []; + var boundList = []; + var bandWidth; + if (baseAxis.type === 'category') { + bandWidth = baseAxis.getBandWidth(); + } else { + var maxDataCount_1 = 0; + each$6(seriesModels, function (seriesModel) { + maxDataCount_1 = Math.max(maxDataCount_1, seriesModel.getData().count()); + }); + var extent = baseAxis.getExtent(); + bandWidth = Math.abs(extent[1] - extent[0]) / maxDataCount_1; + } + each$6(seriesModels, function (seriesModel) { + var boxWidthBound = seriesModel.get('boxWidth'); + if (!isArray(boxWidthBound)) { + boxWidthBound = [boxWidthBound, boxWidthBound]; + } + boundList.push([parsePercent$1(boxWidthBound[0], bandWidth) || 0, parsePercent$1(boxWidthBound[1], bandWidth) || 0]); + }); + var availableWidth = bandWidth * 0.8 - 2; + var boxGap = availableWidth / seriesCount * 0.3; + var boxWidth = (availableWidth - boxGap * (seriesCount - 1)) / seriesCount; + var base = boxWidth / 2 - availableWidth / 2; + each$6(seriesModels, function (seriesModel, idx) { + boxOffsetList.push(base); + base += boxGap + boxWidth; + boxWidthList.push(Math.min(Math.max(boxWidth, boundList[idx][0]), boundList[idx][1])); + }); + } + /** + * Calculate points location for each series. + */ + function layoutSingleSeries(seriesModel, offset, boxWidth) { + var coordSys = seriesModel.coordinateSystem; + var data = seriesModel.getData(); + var halfWidth = boxWidth / 2; + var cDimIdx = seriesModel.get('layout') === 'horizontal' ? 0 : 1; + var vDimIdx = 1 - cDimIdx; + var coordDims = ['x', 'y']; + var cDim = data.mapDimension(coordDims[cDimIdx]); + var vDims = data.mapDimensionsAll(coordDims[vDimIdx]); + if (cDim == null || vDims.length < 5) { + return; + } + for (var dataIndex = 0; dataIndex < data.count(); dataIndex++) { + var axisDimVal = data.get(cDim, dataIndex); + var median = getPoint(axisDimVal, vDims[2], dataIndex); + var end1 = getPoint(axisDimVal, vDims[0], dataIndex); + var end2 = getPoint(axisDimVal, vDims[1], dataIndex); + var end4 = getPoint(axisDimVal, vDims[3], dataIndex); + var end5 = getPoint(axisDimVal, vDims[4], dataIndex); + var ends = []; + addBodyEnd(ends, end2, false); + addBodyEnd(ends, end4, true); + ends.push(end1, end2, end5, end4); + layEndLine(ends, end1); + layEndLine(ends, end5); + layEndLine(ends, median); + data.setItemLayout(dataIndex, { + initBaseline: median[vDimIdx], + ends: ends + }); + } + function getPoint(axisDimVal, dim, dataIndex) { + var val = data.get(dim, dataIndex); + var p = []; + p[cDimIdx] = axisDimVal; + p[vDimIdx] = val; + var point; + if (isNaN(axisDimVal) || isNaN(val)) { + point = [NaN, NaN]; + } else { + point = coordSys.dataToPoint(p); + point[cDimIdx] += offset; + } + return point; + } + function addBodyEnd(ends, point, start) { + var point1 = point.slice(); + var point2 = point.slice(); + point1[cDimIdx] += halfWidth; + point2[cDimIdx] -= halfWidth; + start ? ends.push(point1, point2) : ends.push(point2, point1); + } + function layEndLine(ends, endCenter) { + var from = endCenter.slice(); + var to = endCenter.slice(); + from[cDimIdx] -= halfWidth; + to[cDimIdx] += halfWidth; + ends.push(from, to); + } + } + + /** + * See: + * <https://en.wikipedia.org/wiki/Box_plot#cite_note-frigge_hoaglin_iglewicz-2> + * <http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/boxplot.stats.html> + * + * Helper method for preparing data. + * + * @param rawData like + * [ + * [12,232,443], (raw data set for the first box) + * [3843,5545,1232], (raw data set for the second box) + * ... + * ] + * @param opt.boundIQR=1.5 Data less than min bound is outlier. + * default 1.5, means Q1 - 1.5 * (Q3 - Q1). + * If 'none'/0 passed, min bound will not be used. + */ + function prepareBoxplotData(rawData, opt) { + opt = opt || {}; + var boxData = []; + var outliers = []; + var boundIQR = opt.boundIQR; + var useExtreme = boundIQR === 'none' || boundIQR === 0; + for (var i = 0; i < rawData.length; i++) { + var ascList = asc(rawData[i].slice()); + var Q1 = quantile(ascList, 0.25); + var Q2 = quantile(ascList, 0.5); + var Q3 = quantile(ascList, 0.75); + var min = ascList[0]; + var max = ascList[ascList.length - 1]; + var bound = (boundIQR == null ? 1.5 : boundIQR) * (Q3 - Q1); + var low = useExtreme ? min : Math.max(min, Q1 - bound); + var high = useExtreme ? max : Math.min(max, Q3 + bound); + var itemNameFormatter = opt.itemNameFormatter; + var itemName = isFunction(itemNameFormatter) ? itemNameFormatter({ + value: i + }) : isString(itemNameFormatter) ? itemNameFormatter.replace('{value}', i + '') : i + ''; + boxData.push([itemName, low, Q1, Q2, Q3, high]); + for (var j = 0; j < ascList.length; j++) { + var dataItem = ascList[j]; + if (dataItem < low || dataItem > high) { + var outlier = [itemName, dataItem]; + outliers.push(outlier); + } + } + } + return { + boxData: boxData, + outliers: outliers + }; + } + + var boxplotTransform = { + type: 'echarts:boxplot', + transform: function transform(params) { + var upstream = params.upstream; + if (upstream.sourceFormat !== SOURCE_FORMAT_ARRAY_ROWS) { + var errMsg = ''; + if ("development" !== 'production') { + errMsg = makePrintable('source data is not applicable for this boxplot transform. Expect number[][].'); + } + throwError(errMsg); + } + var result = prepareBoxplotData(upstream.getRawData(), params.config); + return [{ + dimensions: ['ItemName', 'Low', 'Q1', 'Q2', 'Q3', 'High'], + data: result.boxData + }, { + data: result.outliers + }]; + } + }; + + function install$j(registers) { + registers.registerSeriesModel(BoxplotSeriesModel); + registers.registerChartView(BoxplotView); + registers.registerLayout(boxplotLayout); + registers.registerTransform(boxplotTransform); + } + + var SKIP_PROPS = ['color', 'borderColor']; + var CandlestickView = /** @class */function (_super) { + __extends(CandlestickView, _super); + function CandlestickView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = CandlestickView.type; + return _this; + } + CandlestickView.prototype.render = function (seriesModel, ecModel, api) { + // If there is clipPath created in large mode. Remove it. + this.group.removeClipPath(); + // Clear previously rendered progressive elements. + this._progressiveEls = null; + this._updateDrawMode(seriesModel); + this._isLargeDraw ? this._renderLarge(seriesModel) : this._renderNormal(seriesModel); + }; + CandlestickView.prototype.incrementalPrepareRender = function (seriesModel, ecModel, api) { + this._clear(); + this._updateDrawMode(seriesModel); + }; + CandlestickView.prototype.incrementalRender = function (params, seriesModel, ecModel, api) { + this._progressiveEls = []; + this._isLargeDraw ? this._incrementalRenderLarge(params, seriesModel) : this._incrementalRenderNormal(params, seriesModel); + }; + CandlestickView.prototype.eachRendered = function (cb) { + traverseElements(this._progressiveEls || this.group, cb); + }; + CandlestickView.prototype._updateDrawMode = function (seriesModel) { + var isLargeDraw = seriesModel.pipelineContext.large; + if (this._isLargeDraw == null || isLargeDraw !== this._isLargeDraw) { + this._isLargeDraw = isLargeDraw; + this._clear(); + } + }; + CandlestickView.prototype._renderNormal = function (seriesModel) { + var data = seriesModel.getData(); + var oldData = this._data; + var group = this.group; + var isSimpleBox = data.getLayout('isSimpleBox'); + var needsClip = seriesModel.get('clip', true); + var coord = seriesModel.coordinateSystem; + var clipArea = coord.getArea && coord.getArea(); + // There is no old data only when first rendering or switching from + // stream mode to normal mode, where previous elements should be removed. + if (!this._data) { + group.removeAll(); + } + data.diff(oldData).add(function (newIdx) { + if (data.hasValue(newIdx)) { + var itemLayout = data.getItemLayout(newIdx); + if (needsClip && isNormalBoxClipped(clipArea, itemLayout)) { + return; + } + var el = createNormalBox$1(itemLayout, newIdx, true); + initProps(el, { + shape: { + points: itemLayout.ends + } + }, seriesModel, newIdx); + setBoxCommon(el, data, newIdx, isSimpleBox); + group.add(el); + data.setItemGraphicEl(newIdx, el); + } + }).update(function (newIdx, oldIdx) { + var el = oldData.getItemGraphicEl(oldIdx); + // Empty data + if (!data.hasValue(newIdx)) { + group.remove(el); + return; + } + var itemLayout = data.getItemLayout(newIdx); + if (needsClip && isNormalBoxClipped(clipArea, itemLayout)) { + group.remove(el); + return; + } + if (!el) { + el = createNormalBox$1(itemLayout); + } else { + updateProps(el, { + shape: { + points: itemLayout.ends + } + }, seriesModel, newIdx); + saveOldStyle(el); + } + setBoxCommon(el, data, newIdx, isSimpleBox); + group.add(el); + data.setItemGraphicEl(newIdx, el); + }).remove(function (oldIdx) { + var el = oldData.getItemGraphicEl(oldIdx); + el && group.remove(el); + }).execute(); + this._data = data; + }; + CandlestickView.prototype._renderLarge = function (seriesModel) { + this._clear(); + createLarge$1(seriesModel, this.group); + var clipPath = seriesModel.get('clip', true) ? createClipPath(seriesModel.coordinateSystem, false, seriesModel) : null; + if (clipPath) { + this.group.setClipPath(clipPath); + } else { + this.group.removeClipPath(); + } + }; + CandlestickView.prototype._incrementalRenderNormal = function (params, seriesModel) { + var data = seriesModel.getData(); + var isSimpleBox = data.getLayout('isSimpleBox'); + var dataIndex; + while ((dataIndex = params.next()) != null) { + var itemLayout = data.getItemLayout(dataIndex); + var el = createNormalBox$1(itemLayout); + setBoxCommon(el, data, dataIndex, isSimpleBox); + el.incremental = true; + this.group.add(el); + this._progressiveEls.push(el); + } + }; + CandlestickView.prototype._incrementalRenderLarge = function (params, seriesModel) { + createLarge$1(seriesModel, this.group, this._progressiveEls, true); + }; + CandlestickView.prototype.remove = function (ecModel) { + this._clear(); + }; + CandlestickView.prototype._clear = function () { + this.group.removeAll(); + this._data = null; + }; + CandlestickView.type = 'candlestick'; + return CandlestickView; + }(ChartView); + var NormalBoxPathShape = /** @class */function () { + function NormalBoxPathShape() {} + return NormalBoxPathShape; + }(); + var NormalBoxPath = /** @class */function (_super) { + __extends(NormalBoxPath, _super); + function NormalBoxPath(opts) { + var _this = _super.call(this, opts) || this; + _this.type = 'normalCandlestickBox'; + return _this; + } + NormalBoxPath.prototype.getDefaultShape = function () { + return new NormalBoxPathShape(); + }; + NormalBoxPath.prototype.buildPath = function (ctx, shape) { + var ends = shape.points; + if (this.__simpleBox) { + ctx.moveTo(ends[4][0], ends[4][1]); + ctx.lineTo(ends[6][0], ends[6][1]); + } else { + ctx.moveTo(ends[0][0], ends[0][1]); + ctx.lineTo(ends[1][0], ends[1][1]); + ctx.lineTo(ends[2][0], ends[2][1]); + ctx.lineTo(ends[3][0], ends[3][1]); + ctx.closePath(); + ctx.moveTo(ends[4][0], ends[4][1]); + ctx.lineTo(ends[5][0], ends[5][1]); + ctx.moveTo(ends[6][0], ends[6][1]); + ctx.lineTo(ends[7][0], ends[7][1]); + } + }; + return NormalBoxPath; + }(Path); + function createNormalBox$1(itemLayout, dataIndex, isInit) { + var ends = itemLayout.ends; + return new NormalBoxPath({ + shape: { + points: isInit ? transInit$1(ends, itemLayout) : ends + }, + z2: 100 + }); + } + function isNormalBoxClipped(clipArea, itemLayout) { + var clipped = true; + for (var i = 0; i < itemLayout.ends.length; i++) { + // If any point are in the region. + if (clipArea.contain(itemLayout.ends[i][0], itemLayout.ends[i][1])) { + clipped = false; + break; + } + } + return clipped; + } + function setBoxCommon(el, data, dataIndex, isSimpleBox) { + var itemModel = data.getItemModel(dataIndex); + el.useStyle(data.getItemVisual(dataIndex, 'style')); + el.style.strokeNoScale = true; + el.__simpleBox = isSimpleBox; + setStatesStylesFromModel(el, itemModel); + } + function transInit$1(points, itemLayout) { + return map(points, function (point) { + point = point.slice(); + point[1] = itemLayout.initBaseline; + return point; + }); + } + var LargeBoxPathShape = /** @class */function () { + function LargeBoxPathShape() {} + return LargeBoxPathShape; + }(); + var LargeBoxPath = /** @class */function (_super) { + __extends(LargeBoxPath, _super); + function LargeBoxPath(opts) { + var _this = _super.call(this, opts) || this; + _this.type = 'largeCandlestickBox'; + return _this; + } + LargeBoxPath.prototype.getDefaultShape = function () { + return new LargeBoxPathShape(); + }; + LargeBoxPath.prototype.buildPath = function (ctx, shape) { + // Drawing lines is more efficient than drawing + // a whole line or drawing rects. + var points = shape.points; + for (var i = 0; i < points.length;) { + if (this.__sign === points[i++]) { + var x = points[i++]; + ctx.moveTo(x, points[i++]); + ctx.lineTo(x, points[i++]); + } else { + i += 3; + } + } + }; + return LargeBoxPath; + }(Path); + function createLarge$1(seriesModel, group, progressiveEls, incremental) { + var data = seriesModel.getData(); + var largePoints = data.getLayout('largePoints'); + var elP = new LargeBoxPath({ + shape: { + points: largePoints + }, + __sign: 1, + ignoreCoarsePointer: true + }); + group.add(elP); + var elN = new LargeBoxPath({ + shape: { + points: largePoints + }, + __sign: -1, + ignoreCoarsePointer: true + }); + group.add(elN); + var elDoji = new LargeBoxPath({ + shape: { + points: largePoints + }, + __sign: 0, + ignoreCoarsePointer: true + }); + group.add(elDoji); + setLargeStyle(1, elP, seriesModel); + setLargeStyle(-1, elN, seriesModel); + setLargeStyle(0, elDoji, seriesModel); + if (incremental) { + elP.incremental = true; + elN.incremental = true; + } + if (progressiveEls) { + progressiveEls.push(elP, elN); + } + } + function setLargeStyle(sign, el, seriesModel, data) { + // TODO put in visual? + var borderColor = seriesModel.get(['itemStyle', sign > 0 ? 'borderColor' : 'borderColor0']) + // Use color for border color by default. + || seriesModel.get(['itemStyle', sign > 0 ? 'color' : 'color0']); + if (sign === 0) { + borderColor = seriesModel.get(['itemStyle', 'borderColorDoji']); + } + // Color must be excluded. + // Because symbol provide setColor individually to set fill and stroke + var itemStyle = seriesModel.getModel('itemStyle').getItemStyle(SKIP_PROPS); + el.useStyle(itemStyle); + el.style.fill = null; + el.style.stroke = borderColor; + } + + var CandlestickSeriesModel = /** @class */function (_super) { + __extends(CandlestickSeriesModel, _super); + function CandlestickSeriesModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = CandlestickSeriesModel.type; + _this.defaultValueDimensions = [{ + name: 'open', + defaultTooltip: true + }, { + name: 'close', + defaultTooltip: true + }, { + name: 'lowest', + defaultTooltip: true + }, { + name: 'highest', + defaultTooltip: true + }]; + return _this; + } + /** + * Get dimension for shadow in dataZoom + * @return dimension name + */ + CandlestickSeriesModel.prototype.getShadowDim = function () { + return 'open'; + }; + CandlestickSeriesModel.prototype.brushSelector = function (dataIndex, data, selectors) { + var itemLayout = data.getItemLayout(dataIndex); + return itemLayout && selectors.rect(itemLayout.brushRect); + }; + CandlestickSeriesModel.type = 'series.candlestick'; + CandlestickSeriesModel.dependencies = ['xAxis', 'yAxis', 'grid']; + CandlestickSeriesModel.defaultOption = { + // zlevel: 0, + z: 2, + coordinateSystem: 'cartesian2d', + legendHoverLink: true, + // xAxisIndex: 0, + // yAxisIndex: 0, + layout: null, + clip: true, + itemStyle: { + color: '#eb5454', + color0: '#47b262', + borderColor: '#eb5454', + borderColor0: '#47b262', + borderColorDoji: null, + // borderColor: '#d24040', + // borderColor0: '#398f4f', + borderWidth: 1 + }, + emphasis: { + scale: true, + itemStyle: { + borderWidth: 2 + } + }, + barMaxWidth: null, + barMinWidth: null, + barWidth: null, + large: true, + largeThreshold: 600, + progressive: 3e3, + progressiveThreshold: 1e4, + progressiveChunkMode: 'mod', + animationEasing: 'linear', + animationDuration: 300 + }; + return CandlestickSeriesModel; + }(SeriesModel); + mixin(CandlestickSeriesModel, WhiskerBoxCommonMixin, true); + + function candlestickPreprocessor(option) { + if (!option || !isArray(option.series)) { + return; + } + // Translate 'k' to 'candlestick'. + each(option.series, function (seriesItem) { + if (isObject(seriesItem) && seriesItem.type === 'k') { + seriesItem.type = 'candlestick'; + } + }); + } + + var positiveBorderColorQuery = ['itemStyle', 'borderColor']; + var negativeBorderColorQuery = ['itemStyle', 'borderColor0']; + var dojiBorderColorQuery = ['itemStyle', 'borderColorDoji']; + var positiveColorQuery = ['itemStyle', 'color']; + var negativeColorQuery = ['itemStyle', 'color0']; + var candlestickVisual = { + seriesType: 'candlestick', + plan: createRenderPlanner(), + // For legend. + performRawSeries: true, + reset: function (seriesModel, ecModel) { + function getColor(sign, model) { + return model.get(sign > 0 ? positiveColorQuery : negativeColorQuery); + } + function getBorderColor(sign, model) { + return model.get(sign === 0 ? dojiBorderColorQuery : sign > 0 ? positiveBorderColorQuery : negativeBorderColorQuery); + } + // Only visible series has each data be visual encoded + if (ecModel.isSeriesFiltered(seriesModel)) { + return; + } + var isLargeRender = seriesModel.pipelineContext.large; + return !isLargeRender && { + progress: function (params, data) { + var dataIndex; + while ((dataIndex = params.next()) != null) { + var itemModel = data.getItemModel(dataIndex); + var sign = data.getItemLayout(dataIndex).sign; + var style = itemModel.getItemStyle(); + style.fill = getColor(sign, itemModel); + style.stroke = getBorderColor(sign, itemModel) || style.fill; + var existsStyle = data.ensureUniqueItemVisual(dataIndex, 'style'); + extend(existsStyle, style); + } + } + }; + } + }; + + var candlestickLayout = { + seriesType: 'candlestick', + plan: createRenderPlanner(), + reset: function (seriesModel) { + var coordSys = seriesModel.coordinateSystem; + var data = seriesModel.getData(); + var candleWidth = calculateCandleWidth(seriesModel, data); + var cDimIdx = 0; + var vDimIdx = 1; + var coordDims = ['x', 'y']; + var cDimI = data.getDimensionIndex(data.mapDimension(coordDims[cDimIdx])); + var vDimsI = map(data.mapDimensionsAll(coordDims[vDimIdx]), data.getDimensionIndex, data); + var openDimI = vDimsI[0]; + var closeDimI = vDimsI[1]; + var lowestDimI = vDimsI[2]; + var highestDimI = vDimsI[3]; + data.setLayout({ + candleWidth: candleWidth, + // The value is experimented visually. + isSimpleBox: candleWidth <= 1.3 + }); + if (cDimI < 0 || vDimsI.length < 4) { + return; + } + return { + progress: seriesModel.pipelineContext.large ? largeProgress : normalProgress + }; + function normalProgress(params, data) { + var dataIndex; + var store = data.getStore(); + while ((dataIndex = params.next()) != null) { + var axisDimVal = store.get(cDimI, dataIndex); + var openVal = store.get(openDimI, dataIndex); + var closeVal = store.get(closeDimI, dataIndex); + var lowestVal = store.get(lowestDimI, dataIndex); + var highestVal = store.get(highestDimI, dataIndex); + var ocLow = Math.min(openVal, closeVal); + var ocHigh = Math.max(openVal, closeVal); + var ocLowPoint = getPoint(ocLow, axisDimVal); + var ocHighPoint = getPoint(ocHigh, axisDimVal); + var lowestPoint = getPoint(lowestVal, axisDimVal); + var highestPoint = getPoint(highestVal, axisDimVal); + var ends = []; + addBodyEnd(ends, ocHighPoint, 0); + addBodyEnd(ends, ocLowPoint, 1); + ends.push(subPixelOptimizePoint(highestPoint), subPixelOptimizePoint(ocHighPoint), subPixelOptimizePoint(lowestPoint), subPixelOptimizePoint(ocLowPoint)); + var itemModel = data.getItemModel(dataIndex); + var hasDojiColor = !!itemModel.get(['itemStyle', 'borderColorDoji']); + data.setItemLayout(dataIndex, { + sign: getSign(store, dataIndex, openVal, closeVal, closeDimI, hasDojiColor), + initBaseline: openVal > closeVal ? ocHighPoint[vDimIdx] : ocLowPoint[vDimIdx], + ends: ends, + brushRect: makeBrushRect(lowestVal, highestVal, axisDimVal) + }); + } + function getPoint(val, axisDimVal) { + var p = []; + p[cDimIdx] = axisDimVal; + p[vDimIdx] = val; + return isNaN(axisDimVal) || isNaN(val) ? [NaN, NaN] : coordSys.dataToPoint(p); + } + function addBodyEnd(ends, point, start) { + var point1 = point.slice(); + var point2 = point.slice(); + point1[cDimIdx] = subPixelOptimize$1(point1[cDimIdx] + candleWidth / 2, 1, false); + point2[cDimIdx] = subPixelOptimize$1(point2[cDimIdx] - candleWidth / 2, 1, true); + start ? ends.push(point1, point2) : ends.push(point2, point1); + } + function makeBrushRect(lowestVal, highestVal, axisDimVal) { + var pmin = getPoint(lowestVal, axisDimVal); + var pmax = getPoint(highestVal, axisDimVal); + pmin[cDimIdx] -= candleWidth / 2; + pmax[cDimIdx] -= candleWidth / 2; + return { + x: pmin[0], + y: pmin[1], + width: candleWidth , + height: pmax[1] - pmin[1] + }; + } + function subPixelOptimizePoint(point) { + point[cDimIdx] = subPixelOptimize$1(point[cDimIdx], 1); + return point; + } + } + function largeProgress(params, data) { + // Structure: [sign, x, yhigh, ylow, sign, x, yhigh, ylow, ...] + var points = createFloat32Array(params.count * 4); + var offset = 0; + var point; + var tmpIn = []; + var tmpOut = []; + var dataIndex; + var store = data.getStore(); + var hasDojiColor = !!seriesModel.get(['itemStyle', 'borderColorDoji']); + while ((dataIndex = params.next()) != null) { + var axisDimVal = store.get(cDimI, dataIndex); + var openVal = store.get(openDimI, dataIndex); + var closeVal = store.get(closeDimI, dataIndex); + var lowestVal = store.get(lowestDimI, dataIndex); + var highestVal = store.get(highestDimI, dataIndex); + if (isNaN(axisDimVal) || isNaN(lowestVal) || isNaN(highestVal)) { + points[offset++] = NaN; + offset += 3; + continue; + } + points[offset++] = getSign(store, dataIndex, openVal, closeVal, closeDimI, hasDojiColor); + tmpIn[cDimIdx] = axisDimVal; + tmpIn[vDimIdx] = lowestVal; + point = coordSys.dataToPoint(tmpIn, null, tmpOut); + points[offset++] = point ? point[0] : NaN; + points[offset++] = point ? point[1] : NaN; + tmpIn[vDimIdx] = highestVal; + point = coordSys.dataToPoint(tmpIn, null, tmpOut); + points[offset++] = point ? point[1] : NaN; + } + data.setLayout('largePoints', points); + } + } + }; + /** + * Get the sign of a single data. + * + * @returns 0 for doji with hasDojiColor: true, + * 1 for positive, + * -1 for negative. + */ + function getSign(store, dataIndex, openVal, closeVal, closeDimI, hasDojiColor) { + var sign; + if (openVal > closeVal) { + sign = -1; + } else if (openVal < closeVal) { + sign = 1; + } else { + sign = hasDojiColor + // When doji color is set, use it instead of color/color0. + ? 0 : dataIndex > 0 + // If close === open, compare with close of last record + ? store.get(closeDimI, dataIndex - 1) <= closeVal ? 1 : -1 + // No record of previous, set to be positive + : 1; + } + return sign; + } + function calculateCandleWidth(seriesModel, data) { + var baseAxis = seriesModel.getBaseAxis(); + var extent; + var bandWidth = baseAxis.type === 'category' ? baseAxis.getBandWidth() : (extent = baseAxis.getExtent(), Math.abs(extent[1] - extent[0]) / data.count()); + var barMaxWidth = parsePercent$1(retrieve2(seriesModel.get('barMaxWidth'), bandWidth), bandWidth); + var barMinWidth = parsePercent$1(retrieve2(seriesModel.get('barMinWidth'), 1), bandWidth); + var barWidth = seriesModel.get('barWidth'); + return barWidth != null ? parsePercent$1(barWidth, bandWidth) + // Put max outer to ensure bar visible in spite of overlap. + : Math.max(Math.min(bandWidth / 2, barMaxWidth), barMinWidth); + } + + function install$k(registers) { + registers.registerChartView(CandlestickView); + registers.registerSeriesModel(CandlestickSeriesModel); + registers.registerPreprocessor(candlestickPreprocessor); + registers.registerVisual(candlestickVisual); + registers.registerLayout(candlestickLayout); + } + + function updateRipplePath(rippleGroup, effectCfg) { + var color = effectCfg.rippleEffectColor || effectCfg.color; + rippleGroup.eachChild(function (ripplePath) { + ripplePath.attr({ + z: effectCfg.z, + zlevel: effectCfg.zlevel, + style: { + stroke: effectCfg.brushType === 'stroke' ? color : null, + fill: effectCfg.brushType === 'fill' ? color : null + } + }); + }); + } + var EffectSymbol = /** @class */function (_super) { + __extends(EffectSymbol, _super); + function EffectSymbol(data, idx) { + var _this = _super.call(this) || this; + var symbol = new Symbol(data, idx); + var rippleGroup = new Group(); + _this.add(symbol); + _this.add(rippleGroup); + _this.updateData(data, idx); + return _this; + } + EffectSymbol.prototype.stopEffectAnimation = function () { + this.childAt(1).removeAll(); + }; + EffectSymbol.prototype.startEffectAnimation = function (effectCfg) { + var symbolType = effectCfg.symbolType; + var color = effectCfg.color; + var rippleNumber = effectCfg.rippleNumber; + var rippleGroup = this.childAt(1); + for (var i = 0; i < rippleNumber; i++) { + // If width/height are set too small (e.g., set to 1) on ios10 + // and macOS Sierra, a circle stroke become a rect, no matter what + // the scale is set. So we set width/height as 2. See #4136. + var ripplePath = createSymbol(symbolType, -1, -1, 2, 2, color); + ripplePath.attr({ + style: { + strokeNoScale: true + }, + z2: 99, + silent: true, + scaleX: 0.5, + scaleY: 0.5 + }); + var delay = -i / rippleNumber * effectCfg.period + effectCfg.effectOffset; + ripplePath.animate('', true).when(effectCfg.period, { + scaleX: effectCfg.rippleScale / 2, + scaleY: effectCfg.rippleScale / 2 + }).delay(delay).start(); + ripplePath.animateStyle(true).when(effectCfg.period, { + opacity: 0 + }).delay(delay).start(); + rippleGroup.add(ripplePath); + } + updateRipplePath(rippleGroup, effectCfg); + }; + /** + * Update effect symbol + */ + EffectSymbol.prototype.updateEffectAnimation = function (effectCfg) { + var oldEffectCfg = this._effectCfg; + var rippleGroup = this.childAt(1); + // Must reinitialize effect if following configuration changed + var DIFFICULT_PROPS = ['symbolType', 'period', 'rippleScale', 'rippleNumber']; + for (var i = 0; i < DIFFICULT_PROPS.length; i++) { + var propName = DIFFICULT_PROPS[i]; + if (oldEffectCfg[propName] !== effectCfg[propName]) { + this.stopEffectAnimation(); + this.startEffectAnimation(effectCfg); + return; + } + } + updateRipplePath(rippleGroup, effectCfg); + }; + /** + * Highlight symbol + */ + EffectSymbol.prototype.highlight = function () { + enterEmphasis(this); + }; + /** + * Downplay symbol + */ + EffectSymbol.prototype.downplay = function () { + leaveEmphasis(this); + }; + EffectSymbol.prototype.getSymbolType = function () { + var symbol = this.childAt(0); + return symbol && symbol.getSymbolType(); + }; + /** + * Update symbol properties + */ + EffectSymbol.prototype.updateData = function (data, idx) { + var _this = this; + var seriesModel = data.hostModel; + this.childAt(0).updateData(data, idx); + var rippleGroup = this.childAt(1); + var itemModel = data.getItemModel(idx); + var symbolType = data.getItemVisual(idx, 'symbol'); + var symbolSize = normalizeSymbolSize(data.getItemVisual(idx, 'symbolSize')); + var symbolStyle = data.getItemVisual(idx, 'style'); + var color = symbolStyle && symbolStyle.fill; + var emphasisModel = itemModel.getModel('emphasis'); + rippleGroup.setScale(symbolSize); + rippleGroup.traverse(function (ripplePath) { + ripplePath.setStyle('fill', color); + }); + var symbolOffset = normalizeSymbolOffset(data.getItemVisual(idx, 'symbolOffset'), symbolSize); + if (symbolOffset) { + rippleGroup.x = symbolOffset[0]; + rippleGroup.y = symbolOffset[1]; + } + var symbolRotate = data.getItemVisual(idx, 'symbolRotate'); + rippleGroup.rotation = (symbolRotate || 0) * Math.PI / 180 || 0; + var effectCfg = {}; + effectCfg.showEffectOn = seriesModel.get('showEffectOn'); + effectCfg.rippleScale = itemModel.get(['rippleEffect', 'scale']); + effectCfg.brushType = itemModel.get(['rippleEffect', 'brushType']); + effectCfg.period = itemModel.get(['rippleEffect', 'period']) * 1000; + effectCfg.effectOffset = idx / data.count(); + effectCfg.z = seriesModel.getShallow('z') || 0; + effectCfg.zlevel = seriesModel.getShallow('zlevel') || 0; + effectCfg.symbolType = symbolType; + effectCfg.color = color; + effectCfg.rippleEffectColor = itemModel.get(['rippleEffect', 'color']); + effectCfg.rippleNumber = itemModel.get(['rippleEffect', 'number']); + if (effectCfg.showEffectOn === 'render') { + this._effectCfg ? this.updateEffectAnimation(effectCfg) : this.startEffectAnimation(effectCfg); + this._effectCfg = effectCfg; + } else { + // Not keep old effect config + this._effectCfg = null; + this.stopEffectAnimation(); + this.onHoverStateChange = function (toState) { + if (toState === 'emphasis') { + if (effectCfg.showEffectOn !== 'render') { + _this.startEffectAnimation(effectCfg); + } + } else if (toState === 'normal') { + if (effectCfg.showEffectOn !== 'render') { + _this.stopEffectAnimation(); + } + } + }; + } + this._effectCfg = effectCfg; + toggleHoverEmphasis(this, emphasisModel.get('focus'), emphasisModel.get('blurScope'), emphasisModel.get('disabled')); + }; + EffectSymbol.prototype.fadeOut = function (cb) { + cb && cb(); + }; + return EffectSymbol; + }(Group); + + var EffectScatterView = /** @class */function (_super) { + __extends(EffectScatterView, _super); + function EffectScatterView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = EffectScatterView.type; + return _this; + } + EffectScatterView.prototype.init = function () { + this._symbolDraw = new SymbolDraw(EffectSymbol); + }; + EffectScatterView.prototype.render = function (seriesModel, ecModel, api) { + var data = seriesModel.getData(); + var effectSymbolDraw = this._symbolDraw; + effectSymbolDraw.updateData(data, { + clipShape: this._getClipShape(seriesModel) + }); + this.group.add(effectSymbolDraw.group); + }; + EffectScatterView.prototype._getClipShape = function (seriesModel) { + var coordSys = seriesModel.coordinateSystem; + var clipArea = coordSys && coordSys.getArea && coordSys.getArea(); + return seriesModel.get('clip', true) ? clipArea : null; + }; + EffectScatterView.prototype.updateTransform = function (seriesModel, ecModel, api) { + var data = seriesModel.getData(); + this.group.dirty(); + var res = pointsLayout('').reset(seriesModel, ecModel, api); + if (res.progress) { + res.progress({ + start: 0, + end: data.count(), + count: data.count() + }, data); + } + this._symbolDraw.updateLayout(); + }; + EffectScatterView.prototype._updateGroupTransform = function (seriesModel) { + var coordSys = seriesModel.coordinateSystem; + if (coordSys && coordSys.getRoamTransform) { + this.group.transform = clone$2(coordSys.getRoamTransform()); + this.group.decomposeTransform(); + } + }; + EffectScatterView.prototype.remove = function (ecModel, api) { + this._symbolDraw && this._symbolDraw.remove(true); + }; + EffectScatterView.type = 'effectScatter'; + return EffectScatterView; + }(ChartView); + + var EffectScatterSeriesModel = /** @class */function (_super) { + __extends(EffectScatterSeriesModel, _super); + function EffectScatterSeriesModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = EffectScatterSeriesModel.type; + _this.hasSymbolVisual = true; + return _this; + } + EffectScatterSeriesModel.prototype.getInitialData = function (option, ecModel) { + return createSeriesData(null, this, { + useEncodeDefaulter: true + }); + }; + EffectScatterSeriesModel.prototype.brushSelector = function (dataIndex, data, selectors) { + return selectors.point(data.getItemLayout(dataIndex)); + }; + EffectScatterSeriesModel.type = 'series.effectScatter'; + EffectScatterSeriesModel.dependencies = ['grid', 'polar']; + EffectScatterSeriesModel.defaultOption = { + coordinateSystem: 'cartesian2d', + // zlevel: 0, + z: 2, + legendHoverLink: true, + effectType: 'ripple', + progressive: 0, + // When to show the effect, option: 'render'|'emphasis' + showEffectOn: 'render', + clip: true, + // Ripple effect config + rippleEffect: { + period: 4, + // Scale of ripple + scale: 2.5, + // Brush type can be fill or stroke + brushType: 'fill', + // Ripple number + number: 3 + }, + universalTransition: { + divideShape: 'clone' + }, + // Cartesian coordinate system + // xAxisIndex: 0, + // yAxisIndex: 0, + // Polar coordinate system + // polarIndex: 0, + // Geo coordinate system + // geoIndex: 0, + // symbol: null, // 图形类型 + symbolSize: 10 // 图形大小,半宽(半径)参数,当图形为方向或菱形则总宽度为symbolSize * 2 + // symbolRotate: null, // 图形旋转控制 + // itemStyle: { + // opacity: 1 + // } + }; + + return EffectScatterSeriesModel; + }(SeriesModel); + + function install$l(registers) { + registers.registerChartView(EffectScatterView); + registers.registerSeriesModel(EffectScatterSeriesModel); + registers.registerLayout(pointsLayout('effectScatter')); + } + + var EffectLine = /** @class */function (_super) { + __extends(EffectLine, _super); + function EffectLine(lineData, idx, seriesScope) { + var _this = _super.call(this) || this; + _this.add(_this.createLine(lineData, idx, seriesScope)); + _this._updateEffectSymbol(lineData, idx); + return _this; + } + EffectLine.prototype.createLine = function (lineData, idx, seriesScope) { + return new Line$1(lineData, idx, seriesScope); + }; + EffectLine.prototype._updateEffectSymbol = function (lineData, idx) { + var itemModel = lineData.getItemModel(idx); + var effectModel = itemModel.getModel('effect'); + var size = effectModel.get('symbolSize'); + var symbolType = effectModel.get('symbol'); + if (!isArray(size)) { + size = [size, size]; + } + var lineStyle = lineData.getItemVisual(idx, 'style'); + var color = effectModel.get('color') || lineStyle && lineStyle.stroke; + var symbol = this.childAt(1); + if (this._symbolType !== symbolType) { + // Remove previous + this.remove(symbol); + symbol = createSymbol(symbolType, -0.5, -0.5, 1, 1, color); + symbol.z2 = 100; + symbol.culling = true; + this.add(symbol); + } + // Symbol may be removed if loop is false + if (!symbol) { + return; + } + // Shadow color is same with color in default + symbol.setStyle('shadowColor', color); + symbol.setStyle(effectModel.getItemStyle(['color'])); + symbol.scaleX = size[0]; + symbol.scaleY = size[1]; + symbol.setColor(color); + this._symbolType = symbolType; + this._symbolScale = size; + this._updateEffectAnimation(lineData, effectModel, idx); + }; + EffectLine.prototype._updateEffectAnimation = function (lineData, effectModel, idx) { + var symbol = this.childAt(1); + if (!symbol) { + return; + } + var points = lineData.getItemLayout(idx); + var period = effectModel.get('period') * 1000; + var loop = effectModel.get('loop'); + var roundTrip = effectModel.get('roundTrip'); + var constantSpeed = effectModel.get('constantSpeed'); + var delayExpr = retrieve(effectModel.get('delay'), function (idx) { + return idx / lineData.count() * period / 3; + }); + // Ignore when updating + symbol.ignore = true; + this._updateAnimationPoints(symbol, points); + if (constantSpeed > 0) { + period = this._getLineLength(symbol) / constantSpeed * 1000; + } + if (period !== this._period || loop !== this._loop || roundTrip !== this._roundTrip) { + symbol.stopAnimation(); + var delayNum = void 0; + if (isFunction(delayExpr)) { + delayNum = delayExpr(idx); + } else { + delayNum = delayExpr; + } + if (symbol.__t > 0) { + delayNum = -period * symbol.__t; + } + this._animateSymbol(symbol, period, delayNum, loop, roundTrip); + } + this._period = period; + this._loop = loop; + this._roundTrip = roundTrip; + }; + EffectLine.prototype._animateSymbol = function (symbol, period, delayNum, loop, roundTrip) { + if (period > 0) { + symbol.__t = 0; + var self_1 = this; + var animator = symbol.animate('', loop).when(roundTrip ? period * 2 : period, { + __t: roundTrip ? 2 : 1 + }).delay(delayNum).during(function () { + self_1._updateSymbolPosition(symbol); + }); + if (!loop) { + animator.done(function () { + self_1.remove(symbol); + }); + } + animator.start(); + } + }; + EffectLine.prototype._getLineLength = function (symbol) { + // Not so accurate + return dist(symbol.__p1, symbol.__cp1) + dist(symbol.__cp1, symbol.__p2); + }; + EffectLine.prototype._updateAnimationPoints = function (symbol, points) { + symbol.__p1 = points[0]; + symbol.__p2 = points[1]; + symbol.__cp1 = points[2] || [(points[0][0] + points[1][0]) / 2, (points[0][1] + points[1][1]) / 2]; + }; + EffectLine.prototype.updateData = function (lineData, idx, seriesScope) { + this.childAt(0).updateData(lineData, idx, seriesScope); + this._updateEffectSymbol(lineData, idx); + }; + EffectLine.prototype._updateSymbolPosition = function (symbol) { + var p1 = symbol.__p1; + var p2 = symbol.__p2; + var cp1 = symbol.__cp1; + var t = symbol.__t < 1 ? symbol.__t : 2 - symbol.__t; + var pos = [symbol.x, symbol.y]; + var lastPos = pos.slice(); + var quadraticAt$1 = quadraticAt; + var quadraticDerivativeAt$1 = quadraticDerivativeAt; + pos[0] = quadraticAt$1(p1[0], cp1[0], p2[0], t); + pos[1] = quadraticAt$1(p1[1], cp1[1], p2[1], t); + // Tangent + var tx = symbol.__t < 1 ? quadraticDerivativeAt$1(p1[0], cp1[0], p2[0], t) : quadraticDerivativeAt$1(p2[0], cp1[0], p1[0], 1 - t); + var ty = symbol.__t < 1 ? quadraticDerivativeAt$1(p1[1], cp1[1], p2[1], t) : quadraticDerivativeAt$1(p2[1], cp1[1], p1[1], 1 - t); + symbol.rotation = -Math.atan2(ty, tx) - Math.PI / 2; + // enable continuity trail for 'line', 'rect', 'roundRect' symbolType + if (this._symbolType === 'line' || this._symbolType === 'rect' || this._symbolType === 'roundRect') { + if (symbol.__lastT !== undefined && symbol.__lastT < symbol.__t) { + symbol.scaleY = dist(lastPos, pos) * 1.05; + // make sure the last segment render within endPoint + if (t === 1) { + pos[0] = lastPos[0] + (pos[0] - lastPos[0]) / 2; + pos[1] = lastPos[1] + (pos[1] - lastPos[1]) / 2; + } + } else if (symbol.__lastT === 1) { + // After first loop, symbol.__t does NOT start with 0, so connect p1 to pos directly. + symbol.scaleY = 2 * dist(p1, pos); + } else { + symbol.scaleY = this._symbolScale[1]; + } + } + symbol.__lastT = symbol.__t; + symbol.ignore = false; + symbol.x = pos[0]; + symbol.y = pos[1]; + }; + EffectLine.prototype.updateLayout = function (lineData, idx) { + this.childAt(0).updateLayout(lineData, idx); + var effectModel = lineData.getItemModel(idx).getModel('effect'); + this._updateEffectAnimation(lineData, effectModel, idx); + }; + return EffectLine; + }(Group); + + var Polyline$1 = /** @class */function (_super) { + __extends(Polyline$1, _super); + function Polyline$1(lineData, idx, seriesScope) { + var _this = _super.call(this) || this; + _this._createPolyline(lineData, idx, seriesScope); + return _this; + } + Polyline$1.prototype._createPolyline = function (lineData, idx, seriesScope) { + // let seriesModel = lineData.hostModel; + var points = lineData.getItemLayout(idx); + var line = new Polyline({ + shape: { + points: points + } + }); + this.add(line); + this._updateCommonStl(lineData, idx, seriesScope); + }; + Polyline$1.prototype.updateData = function (lineData, idx, seriesScope) { + var seriesModel = lineData.hostModel; + var line = this.childAt(0); + var target = { + shape: { + points: lineData.getItemLayout(idx) + } + }; + updateProps(line, target, seriesModel, idx); + this._updateCommonStl(lineData, idx, seriesScope); + }; + Polyline$1.prototype._updateCommonStl = function (lineData, idx, seriesScope) { + var line = this.childAt(0); + var itemModel = lineData.getItemModel(idx); + var emphasisLineStyle = seriesScope && seriesScope.emphasisLineStyle; + var focus = seriesScope && seriesScope.focus; + var blurScope = seriesScope && seriesScope.blurScope; + var emphasisDisabled = seriesScope && seriesScope.emphasisDisabled; + if (!seriesScope || lineData.hasItemOption) { + var emphasisModel = itemModel.getModel('emphasis'); + emphasisLineStyle = emphasisModel.getModel('lineStyle').getLineStyle(); + emphasisDisabled = emphasisModel.get('disabled'); + focus = emphasisModel.get('focus'); + blurScope = emphasisModel.get('blurScope'); + } + line.useStyle(lineData.getItemVisual(idx, 'style')); + line.style.fill = null; + line.style.strokeNoScale = true; + var lineEmphasisState = line.ensureState('emphasis'); + lineEmphasisState.style = emphasisLineStyle; + toggleHoverEmphasis(this, focus, blurScope, emphasisDisabled); + }; + Polyline$1.prototype.updateLayout = function (lineData, idx) { + var polyline = this.childAt(0); + polyline.setShape('points', lineData.getItemLayout(idx)); + }; + return Polyline$1; + }(Group); + + var EffectPolyline = /** @class */function (_super) { + __extends(EffectPolyline, _super); + function EffectPolyline() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this._lastFrame = 0; + _this._lastFramePercent = 0; + return _this; + } + // Override + EffectPolyline.prototype.createLine = function (lineData, idx, seriesScope) { + return new Polyline$1(lineData, idx, seriesScope); + }; + // Override + EffectPolyline.prototype._updateAnimationPoints = function (symbol, points) { + this._points = points; + var accLenArr = [0]; + var len = 0; + for (var i = 1; i < points.length; i++) { + var p1 = points[i - 1]; + var p2 = points[i]; + len += dist(p1, p2); + accLenArr.push(len); + } + if (len === 0) { + this._length = 0; + return; + } + for (var i = 0; i < accLenArr.length; i++) { + accLenArr[i] /= len; + } + this._offsets = accLenArr; + this._length = len; + }; + // Override + EffectPolyline.prototype._getLineLength = function () { + return this._length; + }; + // Override + EffectPolyline.prototype._updateSymbolPosition = function (symbol) { + var t = symbol.__t < 1 ? symbol.__t : 2 - symbol.__t; + var points = this._points; + var offsets = this._offsets; + var len = points.length; + if (!offsets) { + // Has length 0 + return; + } + var lastFrame = this._lastFrame; + var frame; + if (t < this._lastFramePercent) { + // Start from the next frame + // PENDING start from lastFrame ? + var start = Math.min(lastFrame + 1, len - 1); + for (frame = start; frame >= 0; frame--) { + if (offsets[frame] <= t) { + break; + } + } + // PENDING really need to do this ? + frame = Math.min(frame, len - 2); + } else { + for (frame = lastFrame; frame < len; frame++) { + if (offsets[frame] > t) { + break; + } + } + frame = Math.min(frame - 1, len - 2); + } + var p = (t - offsets[frame]) / (offsets[frame + 1] - offsets[frame]); + var p0 = points[frame]; + var p1 = points[frame + 1]; + symbol.x = p0[0] * (1 - p) + p * p1[0]; + symbol.y = p0[1] * (1 - p) + p * p1[1]; + var tx = symbol.__t < 1 ? p1[0] - p0[0] : p0[0] - p1[0]; + var ty = symbol.__t < 1 ? p1[1] - p0[1] : p0[1] - p1[1]; + symbol.rotation = -Math.atan2(ty, tx) - Math.PI / 2; + this._lastFrame = frame; + this._lastFramePercent = t; + symbol.ignore = false; + }; + return EffectPolyline; + }(EffectLine); + + var LargeLinesPathShape = /** @class */function () { + function LargeLinesPathShape() { + this.polyline = false; + this.curveness = 0; + this.segs = []; + } + return LargeLinesPathShape; + }(); + var LargeLinesPath = /** @class */function (_super) { + __extends(LargeLinesPath, _super); + function LargeLinesPath(opts) { + var _this = _super.call(this, opts) || this; + _this._off = 0; + _this.hoverDataIdx = -1; + return _this; + } + LargeLinesPath.prototype.reset = function () { + this.notClear = false; + this._off = 0; + }; + LargeLinesPath.prototype.getDefaultStyle = function () { + return { + stroke: '#000', + fill: null + }; + }; + LargeLinesPath.prototype.getDefaultShape = function () { + return new LargeLinesPathShape(); + }; + LargeLinesPath.prototype.buildPath = function (ctx, shape) { + var segs = shape.segs; + var curveness = shape.curveness; + var i; + if (shape.polyline) { + for (i = this._off; i < segs.length;) { + var count = segs[i++]; + if (count > 0) { + ctx.moveTo(segs[i++], segs[i++]); + for (var k = 1; k < count; k++) { + ctx.lineTo(segs[i++], segs[i++]); + } + } + } + } else { + for (i = this._off; i < segs.length;) { + var x0 = segs[i++]; + var y0 = segs[i++]; + var x1 = segs[i++]; + var y1 = segs[i++]; + ctx.moveTo(x0, y0); + if (curveness > 0) { + var x2 = (x0 + x1) / 2 - (y0 - y1) * curveness; + var y2 = (y0 + y1) / 2 - (x1 - x0) * curveness; + ctx.quadraticCurveTo(x2, y2, x1, y1); + } else { + ctx.lineTo(x1, y1); + } + } + } + if (this.incremental) { + this._off = i; + this.notClear = true; + } + }; + LargeLinesPath.prototype.findDataIndex = function (x, y) { + var shape = this.shape; + var segs = shape.segs; + var curveness = shape.curveness; + var lineWidth = this.style.lineWidth; + if (shape.polyline) { + var dataIndex = 0; + for (var i = 0; i < segs.length;) { + var count = segs[i++]; + if (count > 0) { + var x0 = segs[i++]; + var y0 = segs[i++]; + for (var k = 1; k < count; k++) { + var x1 = segs[i++]; + var y1 = segs[i++]; + if (containStroke(x0, y0, x1, y1, lineWidth, x, y)) { + return dataIndex; + } + } + } + dataIndex++; + } + } else { + var dataIndex = 0; + for (var i = 0; i < segs.length;) { + var x0 = segs[i++]; + var y0 = segs[i++]; + var x1 = segs[i++]; + var y1 = segs[i++]; + if (curveness > 0) { + var x2 = (x0 + x1) / 2 - (y0 - y1) * curveness; + var y2 = (y0 + y1) / 2 - (x1 - x0) * curveness; + if (containStroke$2(x0, y0, x2, y2, x1, y1, lineWidth, x, y)) { + return dataIndex; + } + } else { + if (containStroke(x0, y0, x1, y1, lineWidth, x, y)) { + return dataIndex; + } + } + dataIndex++; + } + } + return -1; + }; + LargeLinesPath.prototype.contain = function (x, y) { + var localPos = this.transformCoordToLocal(x, y); + var rect = this.getBoundingRect(); + x = localPos[0]; + y = localPos[1]; + if (rect.contain(x, y)) { + // Cache found data index. + var dataIdx = this.hoverDataIdx = this.findDataIndex(x, y); + return dataIdx >= 0; + } + this.hoverDataIdx = -1; + return false; + }; + LargeLinesPath.prototype.getBoundingRect = function () { + // Ignore stroke for large symbol draw. + var rect = this._rect; + if (!rect) { + var shape = this.shape; + var points = shape.segs; + var minX = Infinity; + var minY = Infinity; + var maxX = -Infinity; + var maxY = -Infinity; + for (var i = 0; i < points.length;) { + var x = points[i++]; + var y = points[i++]; + minX = Math.min(x, minX); + maxX = Math.max(x, maxX); + minY = Math.min(y, minY); + maxY = Math.max(y, maxY); + } + rect = this._rect = new BoundingRect(minX, minY, maxX, maxY); + } + return rect; + }; + return LargeLinesPath; + }(Path); + var LargeLineDraw = /** @class */function () { + function LargeLineDraw() { + this.group = new Group(); + } + /** + * Update symbols draw by new data + */ + LargeLineDraw.prototype.updateData = function (data) { + this._clear(); + var lineEl = this._create(); + lineEl.setShape({ + segs: data.getLayout('linesPoints') + }); + this._setCommon(lineEl, data); + }; + /** + * @override + */ + LargeLineDraw.prototype.incrementalPrepareUpdate = function (data) { + this.group.removeAll(); + this._clear(); + }; + /** + * @override + */ + LargeLineDraw.prototype.incrementalUpdate = function (taskParams, data) { + var lastAdded = this._newAdded[0]; + var linePoints = data.getLayout('linesPoints'); + var oldSegs = lastAdded && lastAdded.shape.segs; + // Merging the exists. Each element has 1e4 points. + // Consider the performance balance between too much elements and too much points in one shape(may affect hover optimization) + if (oldSegs && oldSegs.length < 2e4) { + var oldLen = oldSegs.length; + var newSegs = new Float32Array(oldLen + linePoints.length); + // Concat two array + newSegs.set(oldSegs); + newSegs.set(linePoints, oldLen); + lastAdded.setShape({ + segs: newSegs + }); + } else { + // Clear + this._newAdded = []; + var lineEl = this._create(); + lineEl.incremental = true; + lineEl.setShape({ + segs: linePoints + }); + this._setCommon(lineEl, data); + lineEl.__startIndex = taskParams.start; + } + }; + /** + * @override + */ + LargeLineDraw.prototype.remove = function () { + this._clear(); + }; + LargeLineDraw.prototype.eachRendered = function (cb) { + this._newAdded[0] && cb(this._newAdded[0]); + }; + LargeLineDraw.prototype._create = function () { + var lineEl = new LargeLinesPath({ + cursor: 'default', + ignoreCoarsePointer: true + }); + this._newAdded.push(lineEl); + this.group.add(lineEl); + return lineEl; + }; + LargeLineDraw.prototype._setCommon = function (lineEl, data, isIncremental) { + var hostModel = data.hostModel; + lineEl.setShape({ + polyline: hostModel.get('polyline'), + curveness: hostModel.get(['lineStyle', 'curveness']) + }); + lineEl.useStyle(hostModel.getModel('lineStyle').getLineStyle()); + lineEl.style.strokeNoScale = true; + var style = data.getVisual('style'); + if (style && style.stroke) { + lineEl.setStyle('stroke', style.stroke); + } + lineEl.setStyle('fill', null); + var ecData = getECData(lineEl); + // Enable tooltip + // PENDING May have performance issue when path is extremely large + ecData.seriesIndex = hostModel.seriesIndex; + lineEl.on('mousemove', function (e) { + ecData.dataIndex = null; + var dataIndex = lineEl.hoverDataIdx; + if (dataIndex > 0) { + // Provide dataIndex for tooltip + ecData.dataIndex = dataIndex + lineEl.__startIndex; + } + }); + }; + LargeLineDraw.prototype._clear = function () { + this._newAdded = []; + this.group.removeAll(); + }; + return LargeLineDraw; + }(); + + var linesLayout = { + seriesType: 'lines', + plan: createRenderPlanner(), + reset: function (seriesModel) { + var coordSys = seriesModel.coordinateSystem; + if (!coordSys) { + if ("development" !== 'production') { + error('The lines series must have a coordinate system.'); + } + return; + } + var isPolyline = seriesModel.get('polyline'); + var isLarge = seriesModel.pipelineContext.large; + return { + progress: function (params, lineData) { + var lineCoords = []; + if (isLarge) { + var points = void 0; + var segCount = params.end - params.start; + if (isPolyline) { + var totalCoordsCount = 0; + for (var i = params.start; i < params.end; i++) { + totalCoordsCount += seriesModel.getLineCoordsCount(i); + } + points = new Float32Array(segCount + totalCoordsCount * 2); + } else { + points = new Float32Array(segCount * 4); + } + var offset = 0; + var pt = []; + for (var i = params.start; i < params.end; i++) { + var len = seriesModel.getLineCoords(i, lineCoords); + if (isPolyline) { + points[offset++] = len; + } + for (var k = 0; k < len; k++) { + pt = coordSys.dataToPoint(lineCoords[k], false, pt); + points[offset++] = pt[0]; + points[offset++] = pt[1]; + } + } + lineData.setLayout('linesPoints', points); + } else { + for (var i = params.start; i < params.end; i++) { + var itemModel = lineData.getItemModel(i); + var len = seriesModel.getLineCoords(i, lineCoords); + var pts = []; + if (isPolyline) { + for (var j = 0; j < len; j++) { + pts.push(coordSys.dataToPoint(lineCoords[j])); + } + } else { + pts[0] = coordSys.dataToPoint(lineCoords[0]); + pts[1] = coordSys.dataToPoint(lineCoords[1]); + var curveness = itemModel.get(['lineStyle', 'curveness']); + if (+curveness) { + pts[2] = [(pts[0][0] + pts[1][0]) / 2 - (pts[0][1] - pts[1][1]) * curveness, (pts[0][1] + pts[1][1]) / 2 - (pts[1][0] - pts[0][0]) * curveness]; + } + } + lineData.setItemLayout(i, pts); + } + } + } + }; + } + }; + + var LinesView = /** @class */function (_super) { + __extends(LinesView, _super); + function LinesView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = LinesView.type; + return _this; + } + LinesView.prototype.render = function (seriesModel, ecModel, api) { + var data = seriesModel.getData(); + var lineDraw = this._updateLineDraw(data, seriesModel); + var zlevel = seriesModel.get('zlevel'); + var trailLength = seriesModel.get(['effect', 'trailLength']); + var zr = api.getZr(); + // Avoid the drag cause ghost shadow + // FIXME Better way ? + // SVG doesn't support + var isSvg = zr.painter.getType() === 'svg'; + if (!isSvg) { + zr.painter.getLayer(zlevel).clear(true); + } + // Config layer with motion blur + if (this._lastZlevel != null && !isSvg) { + zr.configLayer(this._lastZlevel, { + motionBlur: false + }); + } + if (this._showEffect(seriesModel) && trailLength > 0) { + if (!isSvg) { + zr.configLayer(zlevel, { + motionBlur: true, + lastFrameAlpha: Math.max(Math.min(trailLength / 10 + 0.9, 1), 0) + }); + } else if ("development" !== 'production') { + console.warn('SVG render mode doesn\'t support lines with trail effect'); + } + } + lineDraw.updateData(data); + var clipPath = seriesModel.get('clip', true) && createClipPath(seriesModel.coordinateSystem, false, seriesModel); + if (clipPath) { + this.group.setClipPath(clipPath); + } else { + this.group.removeClipPath(); + } + this._lastZlevel = zlevel; + this._finished = true; + }; + LinesView.prototype.incrementalPrepareRender = function (seriesModel, ecModel, api) { + var data = seriesModel.getData(); + var lineDraw = this._updateLineDraw(data, seriesModel); + lineDraw.incrementalPrepareUpdate(data); + this._clearLayer(api); + this._finished = false; + }; + LinesView.prototype.incrementalRender = function (taskParams, seriesModel, ecModel) { + this._lineDraw.incrementalUpdate(taskParams, seriesModel.getData()); + this._finished = taskParams.end === seriesModel.getData().count(); + }; + LinesView.prototype.eachRendered = function (cb) { + this._lineDraw && this._lineDraw.eachRendered(cb); + }; + LinesView.prototype.updateTransform = function (seriesModel, ecModel, api) { + var data = seriesModel.getData(); + var pipelineContext = seriesModel.pipelineContext; + if (!this._finished || pipelineContext.large || pipelineContext.progressiveRender) { + // TODO Don't have to do update in large mode. Only do it when there are millions of data. + return { + update: true + }; + } else { + // TODO Use same logic with ScatterView. + // Manually update layout + var res = linesLayout.reset(seriesModel, ecModel, api); + if (res.progress) { + res.progress({ + start: 0, + end: data.count(), + count: data.count() + }, data); + } + // Not in large mode + this._lineDraw.updateLayout(); + this._clearLayer(api); + } + }; + LinesView.prototype._updateLineDraw = function (data, seriesModel) { + var lineDraw = this._lineDraw; + var hasEffect = this._showEffect(seriesModel); + var isPolyline = !!seriesModel.get('polyline'); + var pipelineContext = seriesModel.pipelineContext; + var isLargeDraw = pipelineContext.large; + if ("development" !== 'production') { + if (hasEffect && isLargeDraw) { + console.warn('Large lines not support effect'); + } + } + if (!lineDraw || hasEffect !== this._hasEffet || isPolyline !== this._isPolyline || isLargeDraw !== this._isLargeDraw) { + if (lineDraw) { + lineDraw.remove(); + } + lineDraw = this._lineDraw = isLargeDraw ? new LargeLineDraw() : new LineDraw(isPolyline ? hasEffect ? EffectPolyline : Polyline$1 : hasEffect ? EffectLine : Line$1); + this._hasEffet = hasEffect; + this._isPolyline = isPolyline; + this._isLargeDraw = isLargeDraw; + } + this.group.add(lineDraw.group); + return lineDraw; + }; + LinesView.prototype._showEffect = function (seriesModel) { + return !!seriesModel.get(['effect', 'show']); + }; + LinesView.prototype._clearLayer = function (api) { + // Not use motion when dragging or zooming + var zr = api.getZr(); + var isSvg = zr.painter.getType() === 'svg'; + if (!isSvg && this._lastZlevel != null) { + zr.painter.getLayer(this._lastZlevel).clear(true); + } + }; + LinesView.prototype.remove = function (ecModel, api) { + this._lineDraw && this._lineDraw.remove(); + this._lineDraw = null; + // Clear motion when lineDraw is removed + this._clearLayer(api); + }; + LinesView.prototype.dispose = function (ecModel, api) { + this.remove(ecModel, api); + }; + LinesView.type = 'lines'; + return LinesView; + }(ChartView); + + var Uint32Arr = typeof Uint32Array === 'undefined' ? Array : Uint32Array; + var Float64Arr = typeof Float64Array === 'undefined' ? Array : Float64Array; + function compatEc2(seriesOpt) { + var data = seriesOpt.data; + if (data && data[0] && data[0][0] && data[0][0].coord) { + if ("development" !== 'production') { + console.warn('Lines data configuration has been changed to' + ' { coords:[[1,2],[2,3]] }'); + } + seriesOpt.data = map(data, function (itemOpt) { + var coords = [itemOpt[0].coord, itemOpt[1].coord]; + var target = { + coords: coords + }; + if (itemOpt[0].name) { + target.fromName = itemOpt[0].name; + } + if (itemOpt[1].name) { + target.toName = itemOpt[1].name; + } + return mergeAll([target, itemOpt[0], itemOpt[1]]); + }); + } + } + var LinesSeriesModel = /** @class */function (_super) { + __extends(LinesSeriesModel, _super); + function LinesSeriesModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = LinesSeriesModel.type; + _this.visualStyleAccessPath = 'lineStyle'; + _this.visualDrawType = 'stroke'; + return _this; + } + LinesSeriesModel.prototype.init = function (option) { + // The input data may be null/undefined. + option.data = option.data || []; + // Not using preprocessor because mergeOption may not have series.type + compatEc2(option); + var result = this._processFlatCoordsArray(option.data); + this._flatCoords = result.flatCoords; + this._flatCoordsOffset = result.flatCoordsOffset; + if (result.flatCoords) { + option.data = new Float32Array(result.count); + } + _super.prototype.init.apply(this, arguments); + }; + LinesSeriesModel.prototype.mergeOption = function (option) { + compatEc2(option); + if (option.data) { + // Only update when have option data to merge. + var result = this._processFlatCoordsArray(option.data); + this._flatCoords = result.flatCoords; + this._flatCoordsOffset = result.flatCoordsOffset; + if (result.flatCoords) { + option.data = new Float32Array(result.count); + } + } + _super.prototype.mergeOption.apply(this, arguments); + }; + LinesSeriesModel.prototype.appendData = function (params) { + var result = this._processFlatCoordsArray(params.data); + if (result.flatCoords) { + if (!this._flatCoords) { + this._flatCoords = result.flatCoords; + this._flatCoordsOffset = result.flatCoordsOffset; + } else { + this._flatCoords = concatArray(this._flatCoords, result.flatCoords); + this._flatCoordsOffset = concatArray(this._flatCoordsOffset, result.flatCoordsOffset); + } + params.data = new Float32Array(result.count); + } + this.getRawData().appendData(params.data); + }; + LinesSeriesModel.prototype._getCoordsFromItemModel = function (idx) { + var itemModel = this.getData().getItemModel(idx); + var coords = itemModel.option instanceof Array ? itemModel.option : itemModel.getShallow('coords'); + if ("development" !== 'production') { + if (!(coords instanceof Array && coords.length > 0 && coords[0] instanceof Array)) { + throw new Error('Invalid coords ' + JSON.stringify(coords) + '. Lines must have 2d coords array in data item.'); + } + } + return coords; + }; + LinesSeriesModel.prototype.getLineCoordsCount = function (idx) { + if (this._flatCoordsOffset) { + return this._flatCoordsOffset[idx * 2 + 1]; + } else { + return this._getCoordsFromItemModel(idx).length; + } + }; + LinesSeriesModel.prototype.getLineCoords = function (idx, out) { + if (this._flatCoordsOffset) { + var offset = this._flatCoordsOffset[idx * 2]; + var len = this._flatCoordsOffset[idx * 2 + 1]; + for (var i = 0; i < len; i++) { + out[i] = out[i] || []; + out[i][0] = this._flatCoords[offset + i * 2]; + out[i][1] = this._flatCoords[offset + i * 2 + 1]; + } + return len; + } else { + var coords = this._getCoordsFromItemModel(idx); + for (var i = 0; i < coords.length; i++) { + out[i] = out[i] || []; + out[i][0] = coords[i][0]; + out[i][1] = coords[i][1]; + } + return coords.length; + } + }; + LinesSeriesModel.prototype._processFlatCoordsArray = function (data) { + var startOffset = 0; + if (this._flatCoords) { + startOffset = this._flatCoords.length; + } + // Stored as a typed array. In format + // Points Count(2) | x | y | x | y | Points Count(3) | x | y | x | y | x | y | + if (isNumber(data[0])) { + var len = data.length; + // Store offset and len of each segment + var coordsOffsetAndLenStorage = new Uint32Arr(len); + var coordsStorage = new Float64Arr(len); + var coordsCursor = 0; + var offsetCursor = 0; + var dataCount = 0; + for (var i = 0; i < len;) { + dataCount++; + var count = data[i++]; + // Offset + coordsOffsetAndLenStorage[offsetCursor++] = coordsCursor + startOffset; + // Len + coordsOffsetAndLenStorage[offsetCursor++] = count; + for (var k = 0; k < count; k++) { + var x = data[i++]; + var y = data[i++]; + coordsStorage[coordsCursor++] = x; + coordsStorage[coordsCursor++] = y; + if (i > len) { + if ("development" !== 'production') { + throw new Error('Invalid data format.'); + } + } + } + } + return { + flatCoordsOffset: new Uint32Array(coordsOffsetAndLenStorage.buffer, 0, offsetCursor), + flatCoords: coordsStorage, + count: dataCount + }; + } + return { + flatCoordsOffset: null, + flatCoords: null, + count: data.length + }; + }; + LinesSeriesModel.prototype.getInitialData = function (option, ecModel) { + if ("development" !== 'production') { + var CoordSys = CoordinateSystemManager.get(option.coordinateSystem); + if (!CoordSys) { + throw new Error('Unknown coordinate system ' + option.coordinateSystem); + } + } + var lineData = new SeriesData(['value'], this); + lineData.hasItemOption = false; + lineData.initData(option.data, [], function (dataItem, dimName, dataIndex, dimIndex) { + // dataItem is simply coords + if (dataItem instanceof Array) { + return NaN; + } else { + lineData.hasItemOption = true; + var value = dataItem.value; + if (value != null) { + return value instanceof Array ? value[dimIndex] : value; + } + } + }); + return lineData; + }; + LinesSeriesModel.prototype.formatTooltip = function (dataIndex, multipleSeries, dataType) { + var data = this.getData(); + var itemModel = data.getItemModel(dataIndex); + var name = itemModel.get('name'); + if (name) { + return name; + } + var fromName = itemModel.get('fromName'); + var toName = itemModel.get('toName'); + var nameArr = []; + fromName != null && nameArr.push(fromName); + toName != null && nameArr.push(toName); + return createTooltipMarkup('nameValue', { + name: nameArr.join(' > ') + }); + }; + LinesSeriesModel.prototype.preventIncremental = function () { + return !!this.get(['effect', 'show']); + }; + LinesSeriesModel.prototype.getProgressive = function () { + var progressive = this.option.progressive; + if (progressive == null) { + return this.option.large ? 1e4 : this.get('progressive'); + } + return progressive; + }; + LinesSeriesModel.prototype.getProgressiveThreshold = function () { + var progressiveThreshold = this.option.progressiveThreshold; + if (progressiveThreshold == null) { + return this.option.large ? 2e4 : this.get('progressiveThreshold'); + } + return progressiveThreshold; + }; + LinesSeriesModel.prototype.getZLevelKey = function () { + var effectModel = this.getModel('effect'); + var trailLength = effectModel.get('trailLength'); + return this.getData().count() > this.getProgressiveThreshold() + // Each progressive series has individual key. + ? this.id : effectModel.get('show') && trailLength > 0 ? trailLength + '' : ''; + }; + LinesSeriesModel.type = 'series.lines'; + LinesSeriesModel.dependencies = ['grid', 'polar', 'geo', 'calendar']; + LinesSeriesModel.defaultOption = { + coordinateSystem: 'geo', + // zlevel: 0, + z: 2, + legendHoverLink: true, + // Cartesian coordinate system + xAxisIndex: 0, + yAxisIndex: 0, + symbol: ['none', 'none'], + symbolSize: [10, 10], + // Geo coordinate system + geoIndex: 0, + effect: { + show: false, + period: 4, + constantSpeed: 0, + symbol: 'circle', + symbolSize: 3, + loop: true, + trailLength: 0.2 + }, + large: false, + // Available when large is true + largeThreshold: 2000, + polyline: false, + clip: true, + label: { + show: false, + position: 'end' + // distance: 5, + // formatter: 标签文本格式器,同Tooltip.formatter,不支持异步回调 + }, + + lineStyle: { + opacity: 0.5 + } + }; + return LinesSeriesModel; + }(SeriesModel); + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + + /** + * AUTO-GENERATED FILE. DO NOT MODIFY. + */ + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + function normalize$3(a) { + if (!(a instanceof Array)) { + a = [a, a]; + } + return a; + } + var linesVisual = { + seriesType: 'lines', + reset: function (seriesModel) { + var symbolType = normalize$3(seriesModel.get('symbol')); + var symbolSize = normalize$3(seriesModel.get('symbolSize')); + var data = seriesModel.getData(); + data.setVisual('fromSymbol', symbolType && symbolType[0]); + data.setVisual('toSymbol', symbolType && symbolType[1]); + data.setVisual('fromSymbolSize', symbolSize && symbolSize[0]); + data.setVisual('toSymbolSize', symbolSize && symbolSize[1]); + function dataEach(data, idx) { + var itemModel = data.getItemModel(idx); + var symbolType = normalize$3(itemModel.getShallow('symbol', true)); + var symbolSize = normalize$3(itemModel.getShallow('symbolSize', true)); + symbolType[0] && data.setItemVisual(idx, 'fromSymbol', symbolType[0]); + symbolType[1] && data.setItemVisual(idx, 'toSymbol', symbolType[1]); + symbolSize[0] && data.setItemVisual(idx, 'fromSymbolSize', symbolSize[0]); + symbolSize[1] && data.setItemVisual(idx, 'toSymbolSize', symbolSize[1]); + } + return { + dataEach: data.hasItemOption ? dataEach : null + }; + } + }; + + function install$m(registers) { + registers.registerChartView(LinesView); + registers.registerSeriesModel(LinesSeriesModel); + registers.registerLayout(linesLayout); + registers.registerVisual(linesVisual); + } + + var GRADIENT_LEVELS = 256; + var HeatmapLayer = /** @class */function () { + function HeatmapLayer() { + this.blurSize = 30; + this.pointSize = 20; + this.maxOpacity = 1; + this.minOpacity = 0; + this._gradientPixels = { + inRange: null, + outOfRange: null + }; + var canvas = platformApi.createCanvas(); + this.canvas = canvas; + } + /** + * Renders Heatmap and returns the rendered canvas + * @param data array of data, each has x, y, value + * @param width canvas width + * @param height canvas height + */ + HeatmapLayer.prototype.update = function (data, width, height, normalize, colorFunc, isInRange) { + var brush = this._getBrush(); + var gradientInRange = this._getGradient(colorFunc, 'inRange'); + var gradientOutOfRange = this._getGradient(colorFunc, 'outOfRange'); + var r = this.pointSize + this.blurSize; + var canvas = this.canvas; + var ctx = canvas.getContext('2d'); + var len = data.length; + canvas.width = width; + canvas.height = height; + for (var i = 0; i < len; ++i) { + var p = data[i]; + var x = p[0]; + var y = p[1]; + var value = p[2]; + // calculate alpha using value + var alpha = normalize(value); + // draw with the circle brush with alpha + ctx.globalAlpha = alpha; + ctx.drawImage(brush, x - r, y - r); + } + if (!canvas.width || !canvas.height) { + // Avoid "Uncaught DOMException: Failed to execute 'getImageData' on + // 'CanvasRenderingContext2D': The source height is 0." + return canvas; + } + // colorize the canvas using alpha value and set with gradient + var imageData = ctx.getImageData(0, 0, canvas.width, canvas.height); + var pixels = imageData.data; + var offset = 0; + var pixelLen = pixels.length; + var minOpacity = this.minOpacity; + var maxOpacity = this.maxOpacity; + var diffOpacity = maxOpacity - minOpacity; + while (offset < pixelLen) { + var alpha = pixels[offset + 3] / 256; + var gradientOffset = Math.floor(alpha * (GRADIENT_LEVELS - 1)) * 4; + // Simple optimize to ignore the empty data + if (alpha > 0) { + var gradient = isInRange(alpha) ? gradientInRange : gradientOutOfRange; + // Any alpha > 0 will be mapped to [minOpacity, maxOpacity] + alpha > 0 && (alpha = alpha * diffOpacity + minOpacity); + pixels[offset++] = gradient[gradientOffset]; + pixels[offset++] = gradient[gradientOffset + 1]; + pixels[offset++] = gradient[gradientOffset + 2]; + pixels[offset++] = gradient[gradientOffset + 3] * alpha * 256; + } else { + offset += 4; + } + } + ctx.putImageData(imageData, 0, 0); + return canvas; + }; + /** + * get canvas of a black circle brush used for canvas to draw later + */ + HeatmapLayer.prototype._getBrush = function () { + var brushCanvas = this._brushCanvas || (this._brushCanvas = platformApi.createCanvas()); + // set brush size + var r = this.pointSize + this.blurSize; + var d = r * 2; + brushCanvas.width = d; + brushCanvas.height = d; + var ctx = brushCanvas.getContext('2d'); + ctx.clearRect(0, 0, d, d); + // in order to render shadow without the distinct circle, + // draw the distinct circle in an invisible place, + // and use shadowOffset to draw shadow in the center of the canvas + ctx.shadowOffsetX = d; + ctx.shadowBlur = this.blurSize; + // draw the shadow in black, and use alpha and shadow blur to generate + // color in color map + ctx.shadowColor = '#000'; + // draw circle in the left to the canvas + ctx.beginPath(); + ctx.arc(-r, r, this.pointSize, 0, Math.PI * 2, true); + ctx.closePath(); + ctx.fill(); + return brushCanvas; + }; + /** + * get gradient color map + * @private + */ + HeatmapLayer.prototype._getGradient = function (colorFunc, state) { + var gradientPixels = this._gradientPixels; + var pixelsSingleState = gradientPixels[state] || (gradientPixels[state] = new Uint8ClampedArray(256 * 4)); + var color = [0, 0, 0, 0]; + var off = 0; + for (var i = 0; i < 256; i++) { + colorFunc[state](i / 255, true, color); + pixelsSingleState[off++] = color[0]; + pixelsSingleState[off++] = color[1]; + pixelsSingleState[off++] = color[2]; + pixelsSingleState[off++] = color[3]; + } + return pixelsSingleState; + }; + return HeatmapLayer; + }(); + + function getIsInPiecewiseRange(dataExtent, pieceList, selected) { + var dataSpan = dataExtent[1] - dataExtent[0]; + pieceList = map(pieceList, function (piece) { + return { + interval: [(piece.interval[0] - dataExtent[0]) / dataSpan, (piece.interval[1] - dataExtent[0]) / dataSpan] + }; + }); + var len = pieceList.length; + var lastIndex = 0; + return function (val) { + var i; + // Try to find in the location of the last found + for (i = lastIndex; i < len; i++) { + var interval = pieceList[i].interval; + if (interval[0] <= val && val <= interval[1]) { + lastIndex = i; + break; + } + } + if (i === len) { + // Not found, back interation + for (i = lastIndex - 1; i >= 0; i--) { + var interval = pieceList[i].interval; + if (interval[0] <= val && val <= interval[1]) { + lastIndex = i; + break; + } + } + } + return i >= 0 && i < len && selected[i]; + }; + } + function getIsInContinuousRange(dataExtent, range) { + var dataSpan = dataExtent[1] - dataExtent[0]; + range = [(range[0] - dataExtent[0]) / dataSpan, (range[1] - dataExtent[0]) / dataSpan]; + return function (val) { + return val >= range[0] && val <= range[1]; + }; + } + function isGeoCoordSys(coordSys) { + var dimensions = coordSys.dimensions; + // Not use coordSys.type === 'geo' because coordSys maybe extended + return dimensions[0] === 'lng' && dimensions[1] === 'lat'; + } + var HeatmapView = /** @class */function (_super) { + __extends(HeatmapView, _super); + function HeatmapView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = HeatmapView.type; + return _this; + } + HeatmapView.prototype.render = function (seriesModel, ecModel, api) { + var visualMapOfThisSeries; + ecModel.eachComponent('visualMap', function (visualMap) { + visualMap.eachTargetSeries(function (targetSeries) { + if (targetSeries === seriesModel) { + visualMapOfThisSeries = visualMap; + } + }); + }); + if ("development" !== 'production') { + if (!visualMapOfThisSeries) { + throw new Error('Heatmap must use with visualMap'); + } + } + // Clear previously rendered progressive elements. + this._progressiveEls = null; + this.group.removeAll(); + var coordSys = seriesModel.coordinateSystem; + if (coordSys.type === 'cartesian2d' || coordSys.type === 'calendar') { + this._renderOnCartesianAndCalendar(seriesModel, api, 0, seriesModel.getData().count()); + } else if (isGeoCoordSys(coordSys)) { + this._renderOnGeo(coordSys, seriesModel, visualMapOfThisSeries, api); + } + }; + HeatmapView.prototype.incrementalPrepareRender = function (seriesModel, ecModel, api) { + this.group.removeAll(); + }; + HeatmapView.prototype.incrementalRender = function (params, seriesModel, ecModel, api) { + var coordSys = seriesModel.coordinateSystem; + if (coordSys) { + // geo does not support incremental rendering? + if (isGeoCoordSys(coordSys)) { + this.render(seriesModel, ecModel, api); + } else { + this._progressiveEls = []; + this._renderOnCartesianAndCalendar(seriesModel, api, params.start, params.end, true); + } + } + }; + HeatmapView.prototype.eachRendered = function (cb) { + traverseElements(this._progressiveEls || this.group, cb); + }; + HeatmapView.prototype._renderOnCartesianAndCalendar = function (seriesModel, api, start, end, incremental) { + var coordSys = seriesModel.coordinateSystem; + var isCartesian2d = isCoordinateSystemType(coordSys, 'cartesian2d'); + var width; + var height; + var xAxisExtent; + var yAxisExtent; + if (isCartesian2d) { + var xAxis = coordSys.getAxis('x'); + var yAxis = coordSys.getAxis('y'); + if ("development" !== 'production') { + if (!(xAxis.type === 'category' && yAxis.type === 'category')) { + throw new Error('Heatmap on cartesian must have two category axes'); + } + if (!(xAxis.onBand && yAxis.onBand)) { + throw new Error('Heatmap on cartesian must have two axes with boundaryGap true'); + } + } + // add 0.5px to avoid the gaps + width = xAxis.getBandWidth() + .5; + height = yAxis.getBandWidth() + .5; + xAxisExtent = xAxis.scale.getExtent(); + yAxisExtent = yAxis.scale.getExtent(); + } + var group = this.group; + var data = seriesModel.getData(); + var emphasisStyle = seriesModel.getModel(['emphasis', 'itemStyle']).getItemStyle(); + var blurStyle = seriesModel.getModel(['blur', 'itemStyle']).getItemStyle(); + var selectStyle = seriesModel.getModel(['select', 'itemStyle']).getItemStyle(); + var borderRadius = seriesModel.get(['itemStyle', 'borderRadius']); + var labelStatesModels = getLabelStatesModels(seriesModel); + var emphasisModel = seriesModel.getModel('emphasis'); + var focus = emphasisModel.get('focus'); + var blurScope = emphasisModel.get('blurScope'); + var emphasisDisabled = emphasisModel.get('disabled'); + var dataDims = isCartesian2d ? [data.mapDimension('x'), data.mapDimension('y'), data.mapDimension('value')] : [data.mapDimension('time'), data.mapDimension('value')]; + for (var idx = start; idx < end; idx++) { + var rect = void 0; + var style = data.getItemVisual(idx, 'style'); + if (isCartesian2d) { + var dataDimX = data.get(dataDims[0], idx); + var dataDimY = data.get(dataDims[1], idx); + // Ignore empty data and out of extent data + if (isNaN(data.get(dataDims[2], idx)) || isNaN(dataDimX) || isNaN(dataDimY) || dataDimX < xAxisExtent[0] || dataDimX > xAxisExtent[1] || dataDimY < yAxisExtent[0] || dataDimY > yAxisExtent[1]) { + continue; + } + var point = coordSys.dataToPoint([dataDimX, dataDimY]); + rect = new Rect({ + shape: { + x: point[0] - width / 2, + y: point[1] - height / 2, + width: width, + height: height + }, + style: style + }); + } else { + // Ignore empty data + if (isNaN(data.get(dataDims[1], idx))) { + continue; + } + rect = new Rect({ + z2: 1, + shape: coordSys.dataToRect([data.get(dataDims[0], idx)]).contentShape, + style: style + }); + } + // Optimization for large dataset + if (data.hasItemOption) { + var itemModel = data.getItemModel(idx); + var emphasisModel_1 = itemModel.getModel('emphasis'); + emphasisStyle = emphasisModel_1.getModel('itemStyle').getItemStyle(); + blurStyle = itemModel.getModel(['blur', 'itemStyle']).getItemStyle(); + selectStyle = itemModel.getModel(['select', 'itemStyle']).getItemStyle(); + // Each item value struct in the data would be firstly + // { + // itemStyle: { borderRadius: [30, 30] }, + // value: [2022, 02, 22] + // } + borderRadius = itemModel.get(['itemStyle', 'borderRadius']); + focus = emphasisModel_1.get('focus'); + blurScope = emphasisModel_1.get('blurScope'); + emphasisDisabled = emphasisModel_1.get('disabled'); + labelStatesModels = getLabelStatesModels(itemModel); + } + rect.shape.r = borderRadius; + var rawValue = seriesModel.getRawValue(idx); + var defaultText = '-'; + if (rawValue && rawValue[2] != null) { + defaultText = rawValue[2] + ''; + } + setLabelStyle(rect, labelStatesModels, { + labelFetcher: seriesModel, + labelDataIndex: idx, + defaultOpacity: style.opacity, + defaultText: defaultText + }); + rect.ensureState('emphasis').style = emphasisStyle; + rect.ensureState('blur').style = blurStyle; + rect.ensureState('select').style = selectStyle; + toggleHoverEmphasis(rect, focus, blurScope, emphasisDisabled); + rect.incremental = incremental; + // PENDING + if (incremental) { + // Rect must use hover layer if it's incremental. + rect.states.emphasis.hoverLayer = true; + } + group.add(rect); + data.setItemGraphicEl(idx, rect); + if (this._progressiveEls) { + this._progressiveEls.push(rect); + } + } + }; + HeatmapView.prototype._renderOnGeo = function (geo, seriesModel, visualMapModel, api) { + var inRangeVisuals = visualMapModel.targetVisuals.inRange; + var outOfRangeVisuals = visualMapModel.targetVisuals.outOfRange; + // if (!visualMapping) { + // throw new Error('Data range must have color visuals'); + // } + var data = seriesModel.getData(); + var hmLayer = this._hmLayer || this._hmLayer || new HeatmapLayer(); + hmLayer.blurSize = seriesModel.get('blurSize'); + hmLayer.pointSize = seriesModel.get('pointSize'); + hmLayer.minOpacity = seriesModel.get('minOpacity'); + hmLayer.maxOpacity = seriesModel.get('maxOpacity'); + var rect = geo.getViewRect().clone(); + var roamTransform = geo.getRoamTransform(); + rect.applyTransform(roamTransform); + // Clamp on viewport + var x = Math.max(rect.x, 0); + var y = Math.max(rect.y, 0); + var x2 = Math.min(rect.width + rect.x, api.getWidth()); + var y2 = Math.min(rect.height + rect.y, api.getHeight()); + var width = x2 - x; + var height = y2 - y; + var dims = [data.mapDimension('lng'), data.mapDimension('lat'), data.mapDimension('value')]; + var points = data.mapArray(dims, function (lng, lat, value) { + var pt = geo.dataToPoint([lng, lat]); + pt[0] -= x; + pt[1] -= y; + pt.push(value); + return pt; + }); + var dataExtent = visualMapModel.getExtent(); + var isInRange = visualMapModel.type === 'visualMap.continuous' ? getIsInContinuousRange(dataExtent, visualMapModel.option.range) : getIsInPiecewiseRange(dataExtent, visualMapModel.getPieceList(), visualMapModel.option.selected); + hmLayer.update(points, width, height, inRangeVisuals.color.getNormalizer(), { + inRange: inRangeVisuals.color.getColorMapper(), + outOfRange: outOfRangeVisuals.color.getColorMapper() + }, isInRange); + var img = new ZRImage({ + style: { + width: width, + height: height, + x: x, + y: y, + image: hmLayer.canvas + }, + silent: true + }); + this.group.add(img); + }; + HeatmapView.type = 'heatmap'; + return HeatmapView; + }(ChartView); + + var HeatmapSeriesModel = /** @class */function (_super) { + __extends(HeatmapSeriesModel, _super); + function HeatmapSeriesModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = HeatmapSeriesModel.type; + return _this; + } + HeatmapSeriesModel.prototype.getInitialData = function (option, ecModel) { + return createSeriesData(null, this, { + generateCoord: 'value' + }); + }; + HeatmapSeriesModel.prototype.preventIncremental = function () { + var coordSysCreator = CoordinateSystemManager.get(this.get('coordinateSystem')); + if (coordSysCreator && coordSysCreator.dimensions) { + return coordSysCreator.dimensions[0] === 'lng' && coordSysCreator.dimensions[1] === 'lat'; + } + }; + HeatmapSeriesModel.type = 'series.heatmap'; + HeatmapSeriesModel.dependencies = ['grid', 'geo', 'calendar']; + HeatmapSeriesModel.defaultOption = { + coordinateSystem: 'cartesian2d', + // zlevel: 0, + z: 2, + // Cartesian coordinate system + // xAxisIndex: 0, + // yAxisIndex: 0, + // Geo coordinate system + geoIndex: 0, + blurSize: 30, + pointSize: 20, + maxOpacity: 1, + minOpacity: 0, + select: { + itemStyle: { + borderColor: '#212121' + } + } + }; + return HeatmapSeriesModel; + }(SeriesModel); + + function install$n(registers) { + registers.registerChartView(HeatmapView); + registers.registerSeriesModel(HeatmapSeriesModel); + } + + var BAR_BORDER_WIDTH_QUERY = ['itemStyle', 'borderWidth']; + // index: +isHorizontal + var LAYOUT_ATTRS = [{ + xy: 'x', + wh: 'width', + index: 0, + posDesc: ['left', 'right'] + }, { + xy: 'y', + wh: 'height', + index: 1, + posDesc: ['top', 'bottom'] + }]; + var pathForLineWidth = new Circle(); + var PictorialBarView = /** @class */function (_super) { + __extends(PictorialBarView, _super); + function PictorialBarView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = PictorialBarView.type; + return _this; + } + PictorialBarView.prototype.render = function (seriesModel, ecModel, api) { + var group = this.group; + var data = seriesModel.getData(); + var oldData = this._data; + var cartesian = seriesModel.coordinateSystem; + var baseAxis = cartesian.getBaseAxis(); + var isHorizontal = baseAxis.isHorizontal(); + var coordSysRect = cartesian.master.getRect(); + var opt = { + ecSize: { + width: api.getWidth(), + height: api.getHeight() + }, + seriesModel: seriesModel, + coordSys: cartesian, + coordSysExtent: [[coordSysRect.x, coordSysRect.x + coordSysRect.width], [coordSysRect.y, coordSysRect.y + coordSysRect.height]], + isHorizontal: isHorizontal, + valueDim: LAYOUT_ATTRS[+isHorizontal], + categoryDim: LAYOUT_ATTRS[1 - +isHorizontal] + }; + data.diff(oldData).add(function (dataIndex) { + if (!data.hasValue(dataIndex)) { + return; + } + var itemModel = getItemModel(data, dataIndex); + var symbolMeta = getSymbolMeta(data, dataIndex, itemModel, opt); + var bar = createBar(data, opt, symbolMeta); + data.setItemGraphicEl(dataIndex, bar); + group.add(bar); + updateCommon$1(bar, opt, symbolMeta); + }).update(function (newIndex, oldIndex) { + var bar = oldData.getItemGraphicEl(oldIndex); + if (!data.hasValue(newIndex)) { + group.remove(bar); + return; + } + var itemModel = getItemModel(data, newIndex); + var symbolMeta = getSymbolMeta(data, newIndex, itemModel, opt); + var pictorialShapeStr = getShapeStr(data, symbolMeta); + if (bar && pictorialShapeStr !== bar.__pictorialShapeStr) { + group.remove(bar); + data.setItemGraphicEl(newIndex, null); + bar = null; + } + if (bar) { + updateBar(bar, opt, symbolMeta); + } else { + bar = createBar(data, opt, symbolMeta, true); + } + data.setItemGraphicEl(newIndex, bar); + bar.__pictorialSymbolMeta = symbolMeta; + // Add back + group.add(bar); + updateCommon$1(bar, opt, symbolMeta); + }).remove(function (dataIndex) { + var bar = oldData.getItemGraphicEl(dataIndex); + bar && removeBar(oldData, dataIndex, bar.__pictorialSymbolMeta.animationModel, bar); + }).execute(); + // Do clipping + var clipPath = seriesModel.get('clip', true) ? createClipPath(seriesModel.coordinateSystem, false, seriesModel) : null; + if (clipPath) { + group.setClipPath(clipPath); + } else { + group.removeClipPath(); + } + this._data = data; + return this.group; + }; + PictorialBarView.prototype.remove = function (ecModel, api) { + var group = this.group; + var data = this._data; + if (ecModel.get('animation')) { + if (data) { + data.eachItemGraphicEl(function (bar) { + removeBar(data, getECData(bar).dataIndex, ecModel, bar); + }); + } + } else { + group.removeAll(); + } + }; + PictorialBarView.type = 'pictorialBar'; + return PictorialBarView; + }(ChartView); + // Set or calculate default value about symbol, and calculate layout info. + function getSymbolMeta(data, dataIndex, itemModel, opt) { + var layout = data.getItemLayout(dataIndex); + var symbolRepeat = itemModel.get('symbolRepeat'); + var symbolClip = itemModel.get('symbolClip'); + var symbolPosition = itemModel.get('symbolPosition') || 'start'; + var symbolRotate = itemModel.get('symbolRotate'); + var rotation = (symbolRotate || 0) * Math.PI / 180 || 0; + var symbolPatternSize = itemModel.get('symbolPatternSize') || 2; + var isAnimationEnabled = itemModel.isAnimationEnabled(); + var symbolMeta = { + dataIndex: dataIndex, + layout: layout, + itemModel: itemModel, + symbolType: data.getItemVisual(dataIndex, 'symbol') || 'circle', + style: data.getItemVisual(dataIndex, 'style'), + symbolClip: symbolClip, + symbolRepeat: symbolRepeat, + symbolRepeatDirection: itemModel.get('symbolRepeatDirection'), + symbolPatternSize: symbolPatternSize, + rotation: rotation, + animationModel: isAnimationEnabled ? itemModel : null, + hoverScale: isAnimationEnabled && itemModel.get(['emphasis', 'scale']), + z2: itemModel.getShallow('z', true) || 0 + }; + prepareBarLength(itemModel, symbolRepeat, layout, opt, symbolMeta); + prepareSymbolSize(data, dataIndex, layout, symbolRepeat, symbolClip, symbolMeta.boundingLength, symbolMeta.pxSign, symbolPatternSize, opt, symbolMeta); + prepareLineWidth(itemModel, symbolMeta.symbolScale, rotation, opt, symbolMeta); + var symbolSize = symbolMeta.symbolSize; + var symbolOffset = normalizeSymbolOffset(itemModel.get('symbolOffset'), symbolSize); + prepareLayoutInfo(itemModel, symbolSize, layout, symbolRepeat, symbolClip, symbolOffset, symbolPosition, symbolMeta.valueLineWidth, symbolMeta.boundingLength, symbolMeta.repeatCutLength, opt, symbolMeta); + return symbolMeta; + } + // bar length can be negative. + function prepareBarLength(itemModel, symbolRepeat, layout, opt, outputSymbolMeta) { + var valueDim = opt.valueDim; + var symbolBoundingData = itemModel.get('symbolBoundingData'); + var valueAxis = opt.coordSys.getOtherAxis(opt.coordSys.getBaseAxis()); + var zeroPx = valueAxis.toGlobalCoord(valueAxis.dataToCoord(0)); + var pxSignIdx = 1 - +(layout[valueDim.wh] <= 0); + var boundingLength; + if (isArray(symbolBoundingData)) { + var symbolBoundingExtent = [convertToCoordOnAxis(valueAxis, symbolBoundingData[0]) - zeroPx, convertToCoordOnAxis(valueAxis, symbolBoundingData[1]) - zeroPx]; + symbolBoundingExtent[1] < symbolBoundingExtent[0] && symbolBoundingExtent.reverse(); + boundingLength = symbolBoundingExtent[pxSignIdx]; + } else if (symbolBoundingData != null) { + boundingLength = convertToCoordOnAxis(valueAxis, symbolBoundingData) - zeroPx; + } else if (symbolRepeat) { + boundingLength = opt.coordSysExtent[valueDim.index][pxSignIdx] - zeroPx; + } else { + boundingLength = layout[valueDim.wh]; + } + outputSymbolMeta.boundingLength = boundingLength; + if (symbolRepeat) { + outputSymbolMeta.repeatCutLength = layout[valueDim.wh]; + } + // if 'pxSign' means sign of pixel, it can't be zero, or symbolScale will be zero + // and when borderWidth be settled, the actual linewidth will be NaN + outputSymbolMeta.pxSign = boundingLength > 0 ? 1 : -1; + } + function convertToCoordOnAxis(axis, value) { + return axis.toGlobalCoord(axis.dataToCoord(axis.scale.parse(value))); + } + // Support ['100%', '100%'] + function prepareSymbolSize(data, dataIndex, layout, symbolRepeat, symbolClip, boundingLength, pxSign, symbolPatternSize, opt, outputSymbolMeta) { + var valueDim = opt.valueDim; + var categoryDim = opt.categoryDim; + var categorySize = Math.abs(layout[categoryDim.wh]); + var symbolSize = data.getItemVisual(dataIndex, 'symbolSize'); + var parsedSymbolSize; + if (isArray(symbolSize)) { + parsedSymbolSize = symbolSize.slice(); + } else { + if (symbolSize == null) { + // will parse to number below + parsedSymbolSize = ['100%', '100%']; + } else { + parsedSymbolSize = [symbolSize, symbolSize]; + } + } + // Note: percentage symbolSize (like '100%') do not consider lineWidth, because it is + // to complicated to calculate real percent value if considering scaled lineWidth. + // So the actual size will bigger than layout size if lineWidth is bigger than zero, + // which can be tolerated in pictorial chart. + parsedSymbolSize[categoryDim.index] = parsePercent$1(parsedSymbolSize[categoryDim.index], categorySize); + parsedSymbolSize[valueDim.index] = parsePercent$1(parsedSymbolSize[valueDim.index], symbolRepeat ? categorySize : Math.abs(boundingLength)); + outputSymbolMeta.symbolSize = parsedSymbolSize; + // If x or y is less than zero, show reversed shape. + var symbolScale = outputSymbolMeta.symbolScale = [parsedSymbolSize[0] / symbolPatternSize, parsedSymbolSize[1] / symbolPatternSize]; + // Follow convention, 'right' and 'top' is the normal scale. + symbolScale[valueDim.index] *= (opt.isHorizontal ? -1 : 1) * pxSign; + } + function prepareLineWidth(itemModel, symbolScale, rotation, opt, outputSymbolMeta) { + // In symbols are drawn with scale, so do not need to care about the case that width + // or height are too small. But symbol use strokeNoScale, where acture lineWidth should + // be calculated. + var valueLineWidth = itemModel.get(BAR_BORDER_WIDTH_QUERY) || 0; + if (valueLineWidth) { + pathForLineWidth.attr({ + scaleX: symbolScale[0], + scaleY: symbolScale[1], + rotation: rotation + }); + pathForLineWidth.updateTransform(); + valueLineWidth /= pathForLineWidth.getLineScale(); + valueLineWidth *= symbolScale[opt.valueDim.index]; + } + outputSymbolMeta.valueLineWidth = valueLineWidth || 0; + } + function prepareLayoutInfo(itemModel, symbolSize, layout, symbolRepeat, symbolClip, symbolOffset, symbolPosition, valueLineWidth, boundingLength, repeatCutLength, opt, outputSymbolMeta) { + var categoryDim = opt.categoryDim; + var valueDim = opt.valueDim; + var pxSign = outputSymbolMeta.pxSign; + var unitLength = Math.max(symbolSize[valueDim.index] + valueLineWidth, 0); + var pathLen = unitLength; + // Note: rotation will not effect the layout of symbols, because user may + // want symbols to rotate on its center, which should not be translated + // when rotating. + if (symbolRepeat) { + var absBoundingLength = Math.abs(boundingLength); + var symbolMargin = retrieve(itemModel.get('symbolMargin'), '15%') + ''; + var hasEndGap = false; + if (symbolMargin.lastIndexOf('!') === symbolMargin.length - 1) { + hasEndGap = true; + symbolMargin = symbolMargin.slice(0, symbolMargin.length - 1); + } + var symbolMarginNumeric = parsePercent$1(symbolMargin, symbolSize[valueDim.index]); + var uLenWithMargin = Math.max(unitLength + symbolMarginNumeric * 2, 0); + // When symbol margin is less than 0, margin at both ends will be subtracted + // to ensure that all of the symbols will not be overflow the given area. + var endFix = hasEndGap ? 0 : symbolMarginNumeric * 2; + // Both final repeatTimes and final symbolMarginNumeric area calculated based on + // boundingLength. + var repeatSpecified = isNumeric(symbolRepeat); + var repeatTimes = repeatSpecified ? symbolRepeat : toIntTimes((absBoundingLength + endFix) / uLenWithMargin); + // Adjust calculate margin, to ensure each symbol is displayed + // entirely in the given layout area. + var mDiff = absBoundingLength - repeatTimes * unitLength; + symbolMarginNumeric = mDiff / 2 / (hasEndGap ? repeatTimes : Math.max(repeatTimes - 1, 1)); + uLenWithMargin = unitLength + symbolMarginNumeric * 2; + endFix = hasEndGap ? 0 : symbolMarginNumeric * 2; + // Update repeatTimes when not all symbol will be shown. + if (!repeatSpecified && symbolRepeat !== 'fixed') { + repeatTimes = repeatCutLength ? toIntTimes((Math.abs(repeatCutLength) + endFix) / uLenWithMargin) : 0; + } + pathLen = repeatTimes * uLenWithMargin - endFix; + outputSymbolMeta.repeatTimes = repeatTimes; + outputSymbolMeta.symbolMargin = symbolMarginNumeric; + } + var sizeFix = pxSign * (pathLen / 2); + var pathPosition = outputSymbolMeta.pathPosition = []; + pathPosition[categoryDim.index] = layout[categoryDim.wh] / 2; + pathPosition[valueDim.index] = symbolPosition === 'start' ? sizeFix : symbolPosition === 'end' ? boundingLength - sizeFix : boundingLength / 2; // 'center' + if (symbolOffset) { + pathPosition[0] += symbolOffset[0]; + pathPosition[1] += symbolOffset[1]; + } + var bundlePosition = outputSymbolMeta.bundlePosition = []; + bundlePosition[categoryDim.index] = layout[categoryDim.xy]; + bundlePosition[valueDim.index] = layout[valueDim.xy]; + var barRectShape = outputSymbolMeta.barRectShape = extend({}, layout); + barRectShape[valueDim.wh] = pxSign * Math.max(Math.abs(layout[valueDim.wh]), Math.abs(pathPosition[valueDim.index] + sizeFix)); + barRectShape[categoryDim.wh] = layout[categoryDim.wh]; + var clipShape = outputSymbolMeta.clipShape = {}; + // Consider that symbol may be overflow layout rect. + clipShape[categoryDim.xy] = -layout[categoryDim.xy]; + clipShape[categoryDim.wh] = opt.ecSize[categoryDim.wh]; + clipShape[valueDim.xy] = 0; + clipShape[valueDim.wh] = layout[valueDim.wh]; + } + function createPath(symbolMeta) { + var symbolPatternSize = symbolMeta.symbolPatternSize; + var path = createSymbol( + // Consider texture img, make a big size. + symbolMeta.symbolType, -symbolPatternSize / 2, -symbolPatternSize / 2, symbolPatternSize, symbolPatternSize); + path.attr({ + culling: true + }); + path.type !== 'image' && path.setStyle({ + strokeNoScale: true + }); + return path; + } + function createOrUpdateRepeatSymbols(bar, opt, symbolMeta, isUpdate) { + var bundle = bar.__pictorialBundle; + var symbolSize = symbolMeta.symbolSize; + var valueLineWidth = symbolMeta.valueLineWidth; + var pathPosition = symbolMeta.pathPosition; + var valueDim = opt.valueDim; + var repeatTimes = symbolMeta.repeatTimes || 0; + var index = 0; + var unit = symbolSize[opt.valueDim.index] + valueLineWidth + symbolMeta.symbolMargin * 2; + eachPath(bar, function (path) { + path.__pictorialAnimationIndex = index; + path.__pictorialRepeatTimes = repeatTimes; + if (index < repeatTimes) { + updateAttr(path, null, makeTarget(index), symbolMeta, isUpdate); + } else { + updateAttr(path, null, { + scaleX: 0, + scaleY: 0 + }, symbolMeta, isUpdate, function () { + bundle.remove(path); + }); + } + // updateHoverAnimation(path, symbolMeta); + index++; + }); + for (; index < repeatTimes; index++) { + var path = createPath(symbolMeta); + path.__pictorialAnimationIndex = index; + path.__pictorialRepeatTimes = repeatTimes; + bundle.add(path); + var target = makeTarget(index); + updateAttr(path, { + x: target.x, + y: target.y, + scaleX: 0, + scaleY: 0 + }, { + scaleX: target.scaleX, + scaleY: target.scaleY, + rotation: target.rotation + }, symbolMeta, isUpdate); + } + function makeTarget(index) { + var position = pathPosition.slice(); + // (start && pxSign > 0) || (end && pxSign < 0): i = repeatTimes - index + // Otherwise: i = index; + var pxSign = symbolMeta.pxSign; + var i = index; + if (symbolMeta.symbolRepeatDirection === 'start' ? pxSign > 0 : pxSign < 0) { + i = repeatTimes - 1 - index; + } + position[valueDim.index] = unit * (i - repeatTimes / 2 + 0.5) + pathPosition[valueDim.index]; + return { + x: position[0], + y: position[1], + scaleX: symbolMeta.symbolScale[0], + scaleY: symbolMeta.symbolScale[1], + rotation: symbolMeta.rotation + }; + } + } + function createOrUpdateSingleSymbol(bar, opt, symbolMeta, isUpdate) { + var bundle = bar.__pictorialBundle; + var mainPath = bar.__pictorialMainPath; + if (!mainPath) { + mainPath = bar.__pictorialMainPath = createPath(symbolMeta); + bundle.add(mainPath); + updateAttr(mainPath, { + x: symbolMeta.pathPosition[0], + y: symbolMeta.pathPosition[1], + scaleX: 0, + scaleY: 0, + rotation: symbolMeta.rotation + }, { + scaleX: symbolMeta.symbolScale[0], + scaleY: symbolMeta.symbolScale[1] + }, symbolMeta, isUpdate); + } else { + updateAttr(mainPath, null, { + x: symbolMeta.pathPosition[0], + y: symbolMeta.pathPosition[1], + scaleX: symbolMeta.symbolScale[0], + scaleY: symbolMeta.symbolScale[1], + rotation: symbolMeta.rotation + }, symbolMeta, isUpdate); + } + } + // bar rect is used for label. + function createOrUpdateBarRect(bar, symbolMeta, isUpdate) { + var rectShape = extend({}, symbolMeta.barRectShape); + var barRect = bar.__pictorialBarRect; + if (!barRect) { + barRect = bar.__pictorialBarRect = new Rect({ + z2: 2, + shape: rectShape, + silent: true, + style: { + stroke: 'transparent', + fill: 'transparent', + lineWidth: 0 + } + }); + barRect.disableMorphing = true; + bar.add(barRect); + } else { + updateAttr(barRect, null, { + shape: rectShape + }, symbolMeta, isUpdate); + } + } + function createOrUpdateClip(bar, opt, symbolMeta, isUpdate) { + // If not clip, symbol will be remove and rebuilt. + if (symbolMeta.symbolClip) { + var clipPath = bar.__pictorialClipPath; + var clipShape = extend({}, symbolMeta.clipShape); + var valueDim = opt.valueDim; + var animationModel = symbolMeta.animationModel; + var dataIndex = symbolMeta.dataIndex; + if (clipPath) { + updateProps(clipPath, { + shape: clipShape + }, animationModel, dataIndex); + } else { + clipShape[valueDim.wh] = 0; + clipPath = new Rect({ + shape: clipShape + }); + bar.__pictorialBundle.setClipPath(clipPath); + bar.__pictorialClipPath = clipPath; + var target = {}; + target[valueDim.wh] = symbolMeta.clipShape[valueDim.wh]; + graphic[isUpdate ? 'updateProps' : 'initProps'](clipPath, { + shape: target + }, animationModel, dataIndex); + } + } + } + function getItemModel(data, dataIndex) { + var itemModel = data.getItemModel(dataIndex); + itemModel.getAnimationDelayParams = getAnimationDelayParams; + itemModel.isAnimationEnabled = isAnimationEnabled; + return itemModel; + } + function getAnimationDelayParams(path) { + // The order is the same as the z-order, see `symbolRepeatDiretion`. + return { + index: path.__pictorialAnimationIndex, + count: path.__pictorialRepeatTimes + }; + } + function isAnimationEnabled() { + // `animation` prop can be set on itemModel in pictorial bar chart. + return this.parentModel.isAnimationEnabled() && !!this.getShallow('animation'); + } + function createBar(data, opt, symbolMeta, isUpdate) { + // bar is the main element for each data. + var bar = new Group(); + // bundle is used for location and clip. + var bundle = new Group(); + bar.add(bundle); + bar.__pictorialBundle = bundle; + bundle.x = symbolMeta.bundlePosition[0]; + bundle.y = symbolMeta.bundlePosition[1]; + if (symbolMeta.symbolRepeat) { + createOrUpdateRepeatSymbols(bar, opt, symbolMeta); + } else { + createOrUpdateSingleSymbol(bar, opt, symbolMeta); + } + createOrUpdateBarRect(bar, symbolMeta, isUpdate); + createOrUpdateClip(bar, opt, symbolMeta, isUpdate); + bar.__pictorialShapeStr = getShapeStr(data, symbolMeta); + bar.__pictorialSymbolMeta = symbolMeta; + return bar; + } + function updateBar(bar, opt, symbolMeta) { + var animationModel = symbolMeta.animationModel; + var dataIndex = symbolMeta.dataIndex; + var bundle = bar.__pictorialBundle; + updateProps(bundle, { + x: symbolMeta.bundlePosition[0], + y: symbolMeta.bundlePosition[1] + }, animationModel, dataIndex); + if (symbolMeta.symbolRepeat) { + createOrUpdateRepeatSymbols(bar, opt, symbolMeta, true); + } else { + createOrUpdateSingleSymbol(bar, opt, symbolMeta, true); + } + createOrUpdateBarRect(bar, symbolMeta, true); + createOrUpdateClip(bar, opt, symbolMeta, true); + } + function removeBar(data, dataIndex, animationModel, bar) { + // Not show text when animating + var labelRect = bar.__pictorialBarRect; + labelRect && labelRect.removeTextContent(); + var paths = []; + eachPath(bar, function (path) { + paths.push(path); + }); + bar.__pictorialMainPath && paths.push(bar.__pictorialMainPath); + // I do not find proper remove animation for clip yet. + bar.__pictorialClipPath && (animationModel = null); + each(paths, function (path) { + removeElement(path, { + scaleX: 0, + scaleY: 0 + }, animationModel, dataIndex, function () { + bar.parent && bar.parent.remove(bar); + }); + }); + data.setItemGraphicEl(dataIndex, null); + } + function getShapeStr(data, symbolMeta) { + return [data.getItemVisual(symbolMeta.dataIndex, 'symbol') || 'none', !!symbolMeta.symbolRepeat, !!symbolMeta.symbolClip].join(':'); + } + function eachPath(bar, cb, context) { + // Do not use Group#eachChild, because it do not support remove. + each(bar.__pictorialBundle.children(), function (el) { + el !== bar.__pictorialBarRect && cb.call(context, el); + }); + } + function updateAttr(el, immediateAttrs, animationAttrs, symbolMeta, isUpdate, cb) { + immediateAttrs && el.attr(immediateAttrs); + // when symbolCip used, only clip path has init animation, otherwise it would be weird effect. + if (symbolMeta.symbolClip && !isUpdate) { + animationAttrs && el.attr(animationAttrs); + } else { + animationAttrs && graphic[isUpdate ? 'updateProps' : 'initProps'](el, animationAttrs, symbolMeta.animationModel, symbolMeta.dataIndex, cb); + } + } + function updateCommon$1(bar, opt, symbolMeta) { + var dataIndex = symbolMeta.dataIndex; + var itemModel = symbolMeta.itemModel; + // Color must be excluded. + // Because symbol provide setColor individually to set fill and stroke + var emphasisModel = itemModel.getModel('emphasis'); + var emphasisStyle = emphasisModel.getModel('itemStyle').getItemStyle(); + var blurStyle = itemModel.getModel(['blur', 'itemStyle']).getItemStyle(); + var selectStyle = itemModel.getModel(['select', 'itemStyle']).getItemStyle(); + var cursorStyle = itemModel.getShallow('cursor'); + var focus = emphasisModel.get('focus'); + var blurScope = emphasisModel.get('blurScope'); + var hoverScale = emphasisModel.get('scale'); + eachPath(bar, function (path) { + if (path instanceof ZRImage) { + var pathStyle = path.style; + path.useStyle(extend({ + // TODO other properties like dx, dy ? + image: pathStyle.image, + x: pathStyle.x, + y: pathStyle.y, + width: pathStyle.width, + height: pathStyle.height + }, symbolMeta.style)); + } else { + path.useStyle(symbolMeta.style); + } + var emphasisState = path.ensureState('emphasis'); + emphasisState.style = emphasisStyle; + if (hoverScale) { + // NOTE: Must after scale is set after updateAttr + emphasisState.scaleX = path.scaleX * 1.1; + emphasisState.scaleY = path.scaleY * 1.1; + } + path.ensureState('blur').style = blurStyle; + path.ensureState('select').style = selectStyle; + cursorStyle && (path.cursor = cursorStyle); + path.z2 = symbolMeta.z2; + }); + var barPositionOutside = opt.valueDim.posDesc[+(symbolMeta.boundingLength > 0)]; + var barRect = bar.__pictorialBarRect; + barRect.ignoreClip = true; + setLabelStyle(barRect, getLabelStatesModels(itemModel), { + labelFetcher: opt.seriesModel, + labelDataIndex: dataIndex, + defaultText: getDefaultLabel(opt.seriesModel.getData(), dataIndex), + inheritColor: symbolMeta.style.fill, + defaultOpacity: symbolMeta.style.opacity, + defaultOutsidePosition: barPositionOutside + }); + toggleHoverEmphasis(bar, focus, blurScope, emphasisModel.get('disabled')); + } + function toIntTimes(times) { + var roundedTimes = Math.round(times); + // Escapse accurate error + return Math.abs(times - roundedTimes) < 1e-4 ? roundedTimes : Math.ceil(times); + } + + var PictorialBarSeriesModel = /** @class */function (_super) { + __extends(PictorialBarSeriesModel, _super); + function PictorialBarSeriesModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = PictorialBarSeriesModel.type; + _this.hasSymbolVisual = true; + _this.defaultSymbol = 'roundRect'; + return _this; + } + PictorialBarSeriesModel.prototype.getInitialData = function (option) { + // Disable stack. + option.stack = null; + return _super.prototype.getInitialData.apply(this, arguments); + }; + PictorialBarSeriesModel.type = 'series.pictorialBar'; + PictorialBarSeriesModel.dependencies = ['grid']; + PictorialBarSeriesModel.defaultOption = inheritDefaultOption(BaseBarSeriesModel.defaultOption, { + symbol: 'circle', + symbolSize: null, + symbolRotate: null, + symbolPosition: null, + symbolOffset: null, + symbolMargin: null, + symbolRepeat: false, + symbolRepeatDirection: 'end', + symbolClip: false, + symbolBoundingData: null, + symbolPatternSize: 400, + barGap: '-100%', + // Pictorial bar do not clip by default because in many cases + // xAxis and yAxis are not displayed and it's expected not to clip + clip: false, + // z can be set in data item, which is z2 actually. + // Disable progressive + progressive: 0, + emphasis: { + // By default pictorialBar do not hover scale. Hover scale is not suitable + // for the case that both has foreground and background. + scale: false + }, + select: { + itemStyle: { + borderColor: '#212121' + } + } + }); + return PictorialBarSeriesModel; + }(BaseBarSeriesModel); + + function install$o(registers) { + registers.registerChartView(PictorialBarView); + registers.registerSeriesModel(PictorialBarSeriesModel); + registers.registerLayout(registers.PRIORITY.VISUAL.LAYOUT, curry(layout, 'pictorialBar')); + // Do layout after other overall layout, which can prepare some information. + registers.registerLayout(registers.PRIORITY.VISUAL.PROGRESSIVE_LAYOUT, createProgressiveLayout('pictorialBar')); + } + + var ThemeRiverView = /** @class */function (_super) { + __extends(ThemeRiverView, _super); + function ThemeRiverView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = ThemeRiverView.type; + _this._layers = []; + return _this; + } + ThemeRiverView.prototype.render = function (seriesModel, ecModel, api) { + var data = seriesModel.getData(); + var self = this; + var group = this.group; + var layersSeries = seriesModel.getLayerSeries(); + var layoutInfo = data.getLayout('layoutInfo'); + var rect = layoutInfo.rect; + var boundaryGap = layoutInfo.boundaryGap; + group.x = 0; + group.y = rect.y + boundaryGap[0]; + function keyGetter(item) { + return item.name; + } + var dataDiffer = new DataDiffer(this._layersSeries || [], layersSeries, keyGetter, keyGetter); + var newLayersGroups = []; + dataDiffer.add(bind(process, this, 'add')).update(bind(process, this, 'update')).remove(bind(process, this, 'remove')).execute(); + function process(status, idx, oldIdx) { + var oldLayersGroups = self._layers; + if (status === 'remove') { + group.remove(oldLayersGroups[idx]); + return; + } + var points0 = []; + var points1 = []; + var style; + var indices = layersSeries[idx].indices; + var j = 0; + for (; j < indices.length; j++) { + var layout = data.getItemLayout(indices[j]); + var x = layout.x; + var y0 = layout.y0; + var y = layout.y; + points0.push(x, y0); + points1.push(x, y0 + y); + style = data.getItemVisual(indices[j], 'style'); + } + var polygon; + var textLayout = data.getItemLayout(indices[0]); + var labelModel = seriesModel.getModel('label'); + var margin = labelModel.get('margin'); + var emphasisModel = seriesModel.getModel('emphasis'); + if (status === 'add') { + var layerGroup = newLayersGroups[idx] = new Group(); + polygon = new ECPolygon({ + shape: { + points: points0, + stackedOnPoints: points1, + smooth: 0.4, + stackedOnSmooth: 0.4, + smoothConstraint: false + }, + z2: 0 + }); + layerGroup.add(polygon); + group.add(layerGroup); + if (seriesModel.isAnimationEnabled()) { + polygon.setClipPath(createGridClipShape$2(polygon.getBoundingRect(), seriesModel, function () { + polygon.removeClipPath(); + })); + } + } else { + var layerGroup = oldLayersGroups[oldIdx]; + polygon = layerGroup.childAt(0); + group.add(layerGroup); + newLayersGroups[idx] = layerGroup; + updateProps(polygon, { + shape: { + points: points0, + stackedOnPoints: points1 + } + }, seriesModel); + saveOldStyle(polygon); + } + setLabelStyle(polygon, getLabelStatesModels(seriesModel), { + labelDataIndex: indices[j - 1], + defaultText: data.getName(indices[j - 1]), + inheritColor: style.fill + }, { + normal: { + verticalAlign: 'middle' + // align: 'right' + } + }); + + polygon.setTextConfig({ + position: null, + local: true + }); + var labelEl = polygon.getTextContent(); + // TODO More label position options. + if (labelEl) { + labelEl.x = textLayout.x - margin; + labelEl.y = textLayout.y0 + textLayout.y / 2; + } + polygon.useStyle(style); + data.setItemGraphicEl(idx, polygon); + setStatesStylesFromModel(polygon, seriesModel); + toggleHoverEmphasis(polygon, emphasisModel.get('focus'), emphasisModel.get('blurScope'), emphasisModel.get('disabled')); + } + this._layersSeries = layersSeries; + this._layers = newLayersGroups; + }; + ThemeRiverView.type = 'themeRiver'; + return ThemeRiverView; + }(ChartView); + // add animation to the view + function createGridClipShape$2(rect, seriesModel, cb) { + var rectEl = new Rect({ + shape: { + x: rect.x - 10, + y: rect.y - 10, + width: 0, + height: rect.height + 20 + } + }); + initProps(rectEl, { + shape: { + x: rect.x - 50, + width: rect.width + 100, + height: rect.height + 20 + } + }, seriesModel, cb); + return rectEl; + } + + var DATA_NAME_INDEX = 2; + var ThemeRiverSeriesModel = /** @class */function (_super) { + __extends(ThemeRiverSeriesModel, _super); + function ThemeRiverSeriesModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = ThemeRiverSeriesModel.type; + return _this; + } + /** + * @override + */ + ThemeRiverSeriesModel.prototype.init = function (option) { + // eslint-disable-next-line + _super.prototype.init.apply(this, arguments); + // Put this function here is for the sake of consistency of code style. + // Enable legend selection for each data item + // Use a function instead of direct access because data reference may changed + this.legendVisualProvider = new LegendVisualProvider(bind(this.getData, this), bind(this.getRawData, this)); + }; + /** + * If there is no value of a certain point in the time for some event,set it value to 0. + * + * @param {Array} data initial data in the option + * @return {Array} + */ + ThemeRiverSeriesModel.prototype.fixData = function (data) { + var rawDataLength = data.length; + /** + * Make sure every layer data get the same keys. + * The value index tells which layer has visited. + * { + * 2014/01/01: -1 + * } + */ + var timeValueKeys = {}; + // grouped data by name + var groupResult = groupData(data, function (item) { + if (!timeValueKeys.hasOwnProperty(item[0] + '')) { + timeValueKeys[item[0] + ''] = -1; + } + return item[2]; + }); + var layerData = []; + groupResult.buckets.each(function (items, key) { + layerData.push({ + name: key, + dataList: items + }); + }); + var layerNum = layerData.length; + for (var k = 0; k < layerNum; ++k) { + var name_1 = layerData[k].name; + for (var j = 0; j < layerData[k].dataList.length; ++j) { + var timeValue = layerData[k].dataList[j][0] + ''; + timeValueKeys[timeValue] = k; + } + for (var timeValue in timeValueKeys) { + if (timeValueKeys.hasOwnProperty(timeValue) && timeValueKeys[timeValue] !== k) { + timeValueKeys[timeValue] = k; + data[rawDataLength] = [timeValue, 0, name_1]; + rawDataLength++; + } + } + } + return data; + }; + /** + * @override + * @param option the initial option that user gave + * @param ecModel the model object for themeRiver option + */ + ThemeRiverSeriesModel.prototype.getInitialData = function (option, ecModel) { + var singleAxisModel = this.getReferringComponents('singleAxis', SINGLE_REFERRING).models[0]; + var axisType = singleAxisModel.get('type'); + // filter the data item with the value of label is undefined + var filterData = filter(option.data, function (dataItem) { + return dataItem[2] !== undefined; + }); + // ??? TODO design a stage to transfer data for themeRiver and lines? + var data = this.fixData(filterData || []); + var nameList = []; + var nameMap = this.nameMap = createHashMap(); + var count = 0; + for (var i = 0; i < data.length; ++i) { + nameList.push(data[i][DATA_NAME_INDEX]); + if (!nameMap.get(data[i][DATA_NAME_INDEX])) { + nameMap.set(data[i][DATA_NAME_INDEX], count); + count++; + } + } + var dimensions = prepareSeriesDataSchema(data, { + coordDimensions: ['single'], + dimensionsDefine: [{ + name: 'time', + type: getDimensionTypeByAxis(axisType) + }, { + name: 'value', + type: 'float' + }, { + name: 'name', + type: 'ordinal' + }], + encodeDefine: { + single: 0, + value: 1, + itemName: 2 + } + }).dimensions; + var list = new SeriesData(dimensions, this); + list.initData(data); + return list; + }; + /** + * The raw data is divided into multiple layers and each layer + * has same name. + */ + ThemeRiverSeriesModel.prototype.getLayerSeries = function () { + var data = this.getData(); + var lenCount = data.count(); + var indexArr = []; + for (var i = 0; i < lenCount; ++i) { + indexArr[i] = i; + } + var timeDim = data.mapDimension('single'); + // data group by name + var groupResult = groupData(indexArr, function (index) { + return data.get('name', index); + }); + var layerSeries = []; + groupResult.buckets.each(function (items, key) { + items.sort(function (index1, index2) { + return data.get(timeDim, index1) - data.get(timeDim, index2); + }); + layerSeries.push({ + name: key, + indices: items + }); + }); + return layerSeries; + }; + /** + * Get data indices for show tooltip content + */ + ThemeRiverSeriesModel.prototype.getAxisTooltipData = function (dim, value, baseAxis) { + if (!isArray(dim)) { + dim = dim ? [dim] : []; + } + var data = this.getData(); + var layerSeries = this.getLayerSeries(); + var indices = []; + var layerNum = layerSeries.length; + var nestestValue; + for (var i = 0; i < layerNum; ++i) { + var minDist = Number.MAX_VALUE; + var nearestIdx = -1; + var pointNum = layerSeries[i].indices.length; + for (var j = 0; j < pointNum; ++j) { + var theValue = data.get(dim[0], layerSeries[i].indices[j]); + var dist = Math.abs(theValue - value); + if (dist <= minDist) { + nestestValue = theValue; + minDist = dist; + nearestIdx = layerSeries[i].indices[j]; + } + } + indices.push(nearestIdx); + } + return { + dataIndices: indices, + nestestValue: nestestValue + }; + }; + ThemeRiverSeriesModel.prototype.formatTooltip = function (dataIndex, multipleSeries, dataType) { + var data = this.getData(); + var name = data.getName(dataIndex); + var value = data.get(data.mapDimension('value'), dataIndex); + return createTooltipMarkup('nameValue', { + name: name, + value: value + }); + }; + ThemeRiverSeriesModel.type = 'series.themeRiver'; + ThemeRiverSeriesModel.dependencies = ['singleAxis']; + ThemeRiverSeriesModel.defaultOption = { + // zlevel: 0, + z: 2, + colorBy: 'data', + coordinateSystem: 'singleAxis', + // gap in axis's orthogonal orientation + boundaryGap: ['10%', '10%'], + // legendHoverLink: true, + singleAxisIndex: 0, + animationEasing: 'linear', + label: { + margin: 4, + show: true, + position: 'left', + fontSize: 11 + }, + emphasis: { + label: { + show: true + } + } + }; + return ThemeRiverSeriesModel; + }(SeriesModel); + + function themeRiverLayout(ecModel, api) { + ecModel.eachSeriesByType('themeRiver', function (seriesModel) { + var data = seriesModel.getData(); + var single = seriesModel.coordinateSystem; + var layoutInfo = {}; + // use the axis boundingRect for view + var rect = single.getRect(); + layoutInfo.rect = rect; + var boundaryGap = seriesModel.get('boundaryGap'); + var axis = single.getAxis(); + layoutInfo.boundaryGap = boundaryGap; + if (axis.orient === 'horizontal') { + boundaryGap[0] = parsePercent$1(boundaryGap[0], rect.height); + boundaryGap[1] = parsePercent$1(boundaryGap[1], rect.height); + var height = rect.height - boundaryGap[0] - boundaryGap[1]; + doThemeRiverLayout(data, seriesModel, height); + } else { + boundaryGap[0] = parsePercent$1(boundaryGap[0], rect.width); + boundaryGap[1] = parsePercent$1(boundaryGap[1], rect.width); + var width = rect.width - boundaryGap[0] - boundaryGap[1]; + doThemeRiverLayout(data, seriesModel, width); + } + data.setLayout('layoutInfo', layoutInfo); + }); + } + /** + * The layout information about themeriver + * + * @param data data in the series + * @param seriesModel the model object of themeRiver series + * @param height value used to compute every series height + */ + function doThemeRiverLayout(data, seriesModel, height) { + if (!data.count()) { + return; + } + var coordSys = seriesModel.coordinateSystem; + // the data in each layer are organized into a series. + var layerSeries = seriesModel.getLayerSeries(); + // the points in each layer. + var timeDim = data.mapDimension('single'); + var valueDim = data.mapDimension('value'); + var layerPoints = map(layerSeries, function (singleLayer) { + return map(singleLayer.indices, function (idx) { + var pt = coordSys.dataToPoint(data.get(timeDim, idx)); + pt[1] = data.get(valueDim, idx); + return pt; + }); + }); + var base = computeBaseline(layerPoints); + var baseLine = base.y0; + var ky = height / base.max; + // set layout information for each item. + var n = layerSeries.length; + var m = layerSeries[0].indices.length; + var baseY0; + for (var j = 0; j < m; ++j) { + baseY0 = baseLine[j] * ky; + data.setItemLayout(layerSeries[0].indices[j], { + layerIndex: 0, + x: layerPoints[0][j][0], + y0: baseY0, + y: layerPoints[0][j][1] * ky + }); + for (var i = 1; i < n; ++i) { + baseY0 += layerPoints[i - 1][j][1] * ky; + data.setItemLayout(layerSeries[i].indices[j], { + layerIndex: i, + x: layerPoints[i][j][0], + y0: baseY0, + y: layerPoints[i][j][1] * ky + }); + } + } + } + /** + * Compute the baseLine of the rawdata + * Inspired by Lee Byron's paper Stacked Graphs - Geometry & Aesthetics + * + * @param data the points in each layer + */ + function computeBaseline(data) { + var layerNum = data.length; + var pointNum = data[0].length; + var sums = []; + var y0 = []; + var max = 0; + for (var i = 0; i < pointNum; ++i) { + var temp = 0; + for (var j = 0; j < layerNum; ++j) { + temp += data[j][i][1]; + } + if (temp > max) { + max = temp; + } + sums.push(temp); + } + for (var k = 0; k < pointNum; ++k) { + y0[k] = (max - sums[k]) / 2; + } + max = 0; + for (var l = 0; l < pointNum; ++l) { + var sum = sums[l] + y0[l]; + if (sum > max) { + max = sum; + } + } + return { + y0: y0, + max: max + }; + } + + function install$p(registers) { + registers.registerChartView(ThemeRiverView); + registers.registerSeriesModel(ThemeRiverSeriesModel); + registers.registerLayout(themeRiverLayout); + registers.registerProcessor(dataFilter('themeRiver')); + } + + var DEFAULT_SECTOR_Z = 2; + var DEFAULT_TEXT_Z = 4; + /** + * Sunburstce of Sunburst including Sector, Label, LabelLine + */ + var SunburstPiece = /** @class */function (_super) { + __extends(SunburstPiece, _super); + function SunburstPiece(node, seriesModel, ecModel, api) { + var _this = _super.call(this) || this; + _this.z2 = DEFAULT_SECTOR_Z; + _this.textConfig = { + inside: true + }; + getECData(_this).seriesIndex = seriesModel.seriesIndex; + var text = new ZRText({ + z2: DEFAULT_TEXT_Z, + silent: node.getModel().get(['label', 'silent']) + }); + _this.setTextContent(text); + _this.updateData(true, node, seriesModel, ecModel, api); + return _this; + } + SunburstPiece.prototype.updateData = function (firstCreate, node, + // state: 'emphasis' | 'normal' | 'highlight' | 'downplay', + seriesModel, ecModel, api) { + this.node = node; + node.piece = this; + seriesModel = seriesModel || this._seriesModel; + ecModel = ecModel || this._ecModel; + var sector = this; + getECData(sector).dataIndex = node.dataIndex; + var itemModel = node.getModel(); + var emphasisModel = itemModel.getModel('emphasis'); + var layout = node.getLayout(); + var sectorShape = extend({}, layout); + sectorShape.label = null; + var normalStyle = node.getVisual('style'); + normalStyle.lineJoin = 'bevel'; + var decal = node.getVisual('decal'); + if (decal) { + normalStyle.decal = createOrUpdatePatternFromDecal(decal, api); + } + var cornerRadius = getSectorCornerRadius(itemModel.getModel('itemStyle'), sectorShape, true); + extend(sectorShape, cornerRadius); + each(SPECIAL_STATES, function (stateName) { + var state = sector.ensureState(stateName); + var itemStyleModel = itemModel.getModel([stateName, 'itemStyle']); + state.style = itemStyleModel.getItemStyle(); + // border radius + var cornerRadius = getSectorCornerRadius(itemStyleModel, sectorShape); + if (cornerRadius) { + state.shape = cornerRadius; + } + }); + if (firstCreate) { + sector.setShape(sectorShape); + sector.shape.r = layout.r0; + initProps(sector, { + shape: { + r: layout.r + } + }, seriesModel, node.dataIndex); + } else { + // Disable animation for gradient since no interpolation method + // is supported for gradient + updateProps(sector, { + shape: sectorShape + }, seriesModel); + saveOldStyle(sector); + } + sector.useStyle(normalStyle); + this._updateLabel(seriesModel); + var cursorStyle = itemModel.getShallow('cursor'); + cursorStyle && sector.attr('cursor', cursorStyle); + this._seriesModel = seriesModel || this._seriesModel; + this._ecModel = ecModel || this._ecModel; + var focus = emphasisModel.get('focus'); + var focusOrIndices = focus === 'ancestor' ? node.getAncestorsIndices() : focus === 'descendant' ? node.getDescendantIndices() : focus; + toggleHoverEmphasis(this, focusOrIndices, emphasisModel.get('blurScope'), emphasisModel.get('disabled')); + }; + SunburstPiece.prototype._updateLabel = function (seriesModel) { + var _this = this; + var itemModel = this.node.getModel(); + var normalLabelModel = itemModel.getModel('label'); + var layout = this.node.getLayout(); + var angle = layout.endAngle - layout.startAngle; + var midAngle = (layout.startAngle + layout.endAngle) / 2; + var dx = Math.cos(midAngle); + var dy = Math.sin(midAngle); + var sector = this; + var label = sector.getTextContent(); + var dataIndex = this.node.dataIndex; + var labelMinAngle = normalLabelModel.get('minAngle') / 180 * Math.PI; + var isNormalShown = normalLabelModel.get('show') && !(labelMinAngle != null && Math.abs(angle) < labelMinAngle); + label.ignore = !isNormalShown; + // TODO use setLabelStyle + each(DISPLAY_STATES, function (stateName) { + var labelStateModel = stateName === 'normal' ? itemModel.getModel('label') : itemModel.getModel([stateName, 'label']); + var isNormal = stateName === 'normal'; + var state = isNormal ? label : label.ensureState(stateName); + var text = seriesModel.getFormattedLabel(dataIndex, stateName); + if (isNormal) { + text = text || _this.node.name; + } + state.style = createTextStyle(labelStateModel, {}, null, stateName !== 'normal', true); + if (text) { + state.style.text = text; + } + // Not displaying text when angle is too small + var isShown = labelStateModel.get('show'); + if (isShown != null && !isNormal) { + state.ignore = !isShown; + } + var labelPosition = getLabelAttr(labelStateModel, 'position'); + var sectorState = isNormal ? sector : sector.states[stateName]; + var labelColor = sectorState.style.fill; + sectorState.textConfig = { + outsideFill: labelStateModel.get('color') === 'inherit' ? labelColor : null, + inside: labelPosition !== 'outside' + }; + var r; + var labelPadding = getLabelAttr(labelStateModel, 'distance') || 0; + var textAlign = getLabelAttr(labelStateModel, 'align'); + var rotateType = getLabelAttr(labelStateModel, 'rotate'); + var flipStartAngle = Math.PI * 0.5; + var flipEndAngle = Math.PI * 1.5; + var midAngleNormal = normalizeRadian(rotateType === 'tangential' ? Math.PI / 2 - midAngle : midAngle); + // For text that is up-side down, rotate 180 degrees to make sure + // it's readable + var needsFlip = midAngleNormal > flipStartAngle && !isRadianAroundZero(midAngleNormal - flipStartAngle) && midAngleNormal < flipEndAngle; + if (labelPosition === 'outside') { + r = layout.r + labelPadding; + textAlign = needsFlip ? 'right' : 'left'; + } else { + if (!textAlign || textAlign === 'center') { + // Put label in the center if it's a circle + if (angle === 2 * Math.PI && layout.r0 === 0) { + r = 0; + } else { + r = (layout.r + layout.r0) / 2; + } + textAlign = 'center'; + } else if (textAlign === 'left') { + r = layout.r0 + labelPadding; + textAlign = needsFlip ? 'right' : 'left'; + } else if (textAlign === 'right') { + r = layout.r - labelPadding; + textAlign = needsFlip ? 'left' : 'right'; + } + } + state.style.align = textAlign; + state.style.verticalAlign = getLabelAttr(labelStateModel, 'verticalAlign') || 'middle'; + state.x = r * dx + layout.cx; + state.y = r * dy + layout.cy; + var rotate = 0; + if (rotateType === 'radial') { + rotate = normalizeRadian(-midAngle) + (needsFlip ? Math.PI : 0); + } else if (rotateType === 'tangential') { + rotate = normalizeRadian(Math.PI / 2 - midAngle) + (needsFlip ? Math.PI : 0); + } else if (isNumber(rotateType)) { + rotate = rotateType * Math.PI / 180; + } + state.rotation = normalizeRadian(rotate); + }); + function getLabelAttr(model, name) { + var stateAttr = model.get(name); + if (stateAttr == null) { + return normalLabelModel.get(name); + } + return stateAttr; + } + label.dirtyStyle(); + }; + return SunburstPiece; + }(Sector); + + var ROOT_TO_NODE_ACTION = 'sunburstRootToNode'; + var HIGHLIGHT_ACTION = 'sunburstHighlight'; + var UNHIGHLIGHT_ACTION = 'sunburstUnhighlight'; + function installSunburstAction(registers) { + registers.registerAction({ + type: ROOT_TO_NODE_ACTION, + update: 'updateView' + }, function (payload, ecModel) { + ecModel.eachComponent({ + mainType: 'series', + subType: 'sunburst', + query: payload + }, handleRootToNode); + function handleRootToNode(model, index) { + var targetInfo = retrieveTargetInfo(payload, [ROOT_TO_NODE_ACTION], model); + if (targetInfo) { + var originViewRoot = model.getViewRoot(); + if (originViewRoot) { + payload.direction = aboveViewRoot(originViewRoot, targetInfo.node) ? 'rollUp' : 'drillDown'; + } + model.resetViewRoot(targetInfo.node); + } + } + }); + registers.registerAction({ + type: HIGHLIGHT_ACTION, + update: 'none' + }, function (payload, ecModel, api) { + // Clone + payload = extend({}, payload); + ecModel.eachComponent({ + mainType: 'series', + subType: 'sunburst', + query: payload + }, handleHighlight); + function handleHighlight(model) { + var targetInfo = retrieveTargetInfo(payload, [HIGHLIGHT_ACTION], model); + if (targetInfo) { + payload.dataIndex = targetInfo.node.dataIndex; + } + } + if ("development" !== 'production') { + deprecateReplaceLog('sunburstHighlight', 'highlight'); + } + // Fast forward action + api.dispatchAction(extend(payload, { + type: 'highlight' + })); + }); + registers.registerAction({ + type: UNHIGHLIGHT_ACTION, + update: 'updateView' + }, function (payload, ecModel, api) { + payload = extend({}, payload); + if ("development" !== 'production') { + deprecateReplaceLog('sunburstUnhighlight', 'downplay'); + } + api.dispatchAction(extend(payload, { + type: 'downplay' + })); + }); + } + + var SunburstView = /** @class */function (_super) { + __extends(SunburstView, _super); + function SunburstView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = SunburstView.type; + return _this; + } + SunburstView.prototype.render = function (seriesModel, ecModel, api, + // @ts-ignore + payload) { + var self = this; + this.seriesModel = seriesModel; + this.api = api; + this.ecModel = ecModel; + var data = seriesModel.getData(); + var virtualRoot = data.tree.root; + var newRoot = seriesModel.getViewRoot(); + var group = this.group; + var renderLabelForZeroData = seriesModel.get('renderLabelForZeroData'); + var newChildren = []; + newRoot.eachNode(function (node) { + newChildren.push(node); + }); + var oldChildren = this._oldChildren || []; + dualTravel(newChildren, oldChildren); + renderRollUp(virtualRoot, newRoot); + this._initEvents(); + this._oldChildren = newChildren; + function dualTravel(newChildren, oldChildren) { + if (newChildren.length === 0 && oldChildren.length === 0) { + return; + } + new DataDiffer(oldChildren, newChildren, getKey, getKey).add(processNode).update(processNode).remove(curry(processNode, null)).execute(); + function getKey(node) { + return node.getId(); + } + function processNode(newIdx, oldIdx) { + var newNode = newIdx == null ? null : newChildren[newIdx]; + var oldNode = oldIdx == null ? null : oldChildren[oldIdx]; + doRenderNode(newNode, oldNode); + } + } + function doRenderNode(newNode, oldNode) { + if (!renderLabelForZeroData && newNode && !newNode.getValue()) { + // Not render data with value 0 + newNode = null; + } + if (newNode !== virtualRoot && oldNode !== virtualRoot) { + if (oldNode && oldNode.piece) { + if (newNode) { + // Update + oldNode.piece.updateData(false, newNode, seriesModel, ecModel, api); + // For tooltip + data.setItemGraphicEl(newNode.dataIndex, oldNode.piece); + } else { + // Remove + removeNode(oldNode); + } + } else if (newNode) { + // Add + var piece = new SunburstPiece(newNode, seriesModel, ecModel, api); + group.add(piece); + // For tooltip + data.setItemGraphicEl(newNode.dataIndex, piece); + } + } + } + function removeNode(node) { + if (!node) { + return; + } + if (node.piece) { + group.remove(node.piece); + node.piece = null; + } + } + function renderRollUp(virtualRoot, viewRoot) { + if (viewRoot.depth > 0) { + // Render + if (self.virtualPiece) { + // Update + self.virtualPiece.updateData(false, virtualRoot, seriesModel, ecModel, api); + } else { + // Add + self.virtualPiece = new SunburstPiece(virtualRoot, seriesModel, ecModel, api); + group.add(self.virtualPiece); + } + // TODO event scope + viewRoot.piece.off('click'); + self.virtualPiece.on('click', function (e) { + self._rootToNode(viewRoot.parentNode); + }); + } else if (self.virtualPiece) { + // Remove + group.remove(self.virtualPiece); + self.virtualPiece = null; + } + } + }; + /** + * @private + */ + SunburstView.prototype._initEvents = function () { + var _this = this; + this.group.off('click'); + this.group.on('click', function (e) { + var targetFound = false; + var viewRoot = _this.seriesModel.getViewRoot(); + viewRoot.eachNode(function (node) { + if (!targetFound && node.piece && node.piece === e.target) { + var nodeClick = node.getModel().get('nodeClick'); + if (nodeClick === 'rootToNode') { + _this._rootToNode(node); + } else if (nodeClick === 'link') { + var itemModel = node.getModel(); + var link = itemModel.get('link'); + if (link) { + var linkTarget = itemModel.get('target', true) || '_blank'; + windowOpen(link, linkTarget); + } + } + targetFound = true; + } + }); + }); + }; + /** + * @private + */ + SunburstView.prototype._rootToNode = function (node) { + if (node !== this.seriesModel.getViewRoot()) { + this.api.dispatchAction({ + type: ROOT_TO_NODE_ACTION, + from: this.uid, + seriesId: this.seriesModel.id, + targetNode: node + }); + } + }; + /** + * @implement + */ + SunburstView.prototype.containPoint = function (point, seriesModel) { + var treeRoot = seriesModel.getData(); + var itemLayout = treeRoot.getItemLayout(0); + if (itemLayout) { + var dx = point[0] - itemLayout.cx; + var dy = point[1] - itemLayout.cy; + var radius = Math.sqrt(dx * dx + dy * dy); + return radius <= itemLayout.r && radius >= itemLayout.r0; + } + }; + SunburstView.type = 'sunburst'; + return SunburstView; + }(ChartView); + + var SunburstSeriesModel = /** @class */function (_super) { + __extends(SunburstSeriesModel, _super); + function SunburstSeriesModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = SunburstSeriesModel.type; + _this.ignoreStyleOnData = true; + return _this; + } + SunburstSeriesModel.prototype.getInitialData = function (option, ecModel) { + // Create a virtual root. + var root = { + name: option.name, + children: option.data + }; + completeTreeValue$1(root); + var levelModels = this._levelModels = map(option.levels || [], function (levelDefine) { + return new Model(levelDefine, this, ecModel); + }, this); + // Make sure always a new tree is created when setOption, + // in TreemapView, we check whether oldTree === newTree + // to choose mappings approach among old shapes and new shapes. + var tree = Tree.createTree(root, this, beforeLink); + function beforeLink(nodeData) { + nodeData.wrapMethod('getItemModel', function (model, idx) { + var node = tree.getNodeByDataIndex(idx); + var levelModel = levelModels[node.depth]; + levelModel && (model.parentModel = levelModel); + return model; + }); + } + return tree.data; + }; + SunburstSeriesModel.prototype.optionUpdated = function () { + this.resetViewRoot(); + }; + /* + * @override + */ + SunburstSeriesModel.prototype.getDataParams = function (dataIndex) { + var params = _super.prototype.getDataParams.apply(this, arguments); + var node = this.getData().tree.getNodeByDataIndex(dataIndex); + params.treePathInfo = wrapTreePathInfo(node, this); + return params; + }; + SunburstSeriesModel.prototype.getLevelModel = function (node) { + return this._levelModels && this._levelModels[node.depth]; + }; + SunburstSeriesModel.prototype.getViewRoot = function () { + return this._viewRoot; + }; + SunburstSeriesModel.prototype.resetViewRoot = function (viewRoot) { + viewRoot ? this._viewRoot = viewRoot : viewRoot = this._viewRoot; + var root = this.getRawData().tree.root; + if (!viewRoot || viewRoot !== root && !root.contains(viewRoot)) { + this._viewRoot = root; + } + }; + SunburstSeriesModel.prototype.enableAriaDecal = function () { + enableAriaDecalForTree(this); + }; + SunburstSeriesModel.type = 'series.sunburst'; + SunburstSeriesModel.defaultOption = { + // zlevel: 0, + z: 2, + // 默认全局居中 + center: ['50%', '50%'], + radius: [0, '75%'], + // 默认顺时针 + clockwise: true, + startAngle: 90, + // 最小角度改为0 + minAngle: 0, + // If still show when all data zero. + stillShowZeroSum: true, + // 'rootToNode', 'link', or false + nodeClick: 'rootToNode', + renderLabelForZeroData: false, + label: { + // could be: 'radial', 'tangential', or 'none' + rotate: 'radial', + show: true, + opacity: 1, + // 'left' is for inner side of inside, and 'right' is for outer + // side for inside + align: 'center', + position: 'inside', + distance: 5, + silent: true + }, + itemStyle: { + borderWidth: 1, + borderColor: 'white', + borderType: 'solid', + shadowBlur: 0, + shadowColor: 'rgba(0, 0, 0, 0.2)', + shadowOffsetX: 0, + shadowOffsetY: 0, + opacity: 1 + }, + emphasis: { + focus: 'descendant' + }, + blur: { + itemStyle: { + opacity: 0.2 + }, + label: { + opacity: 0.1 + } + }, + // Animation type can be expansion, scale. + animationType: 'expansion', + animationDuration: 1000, + animationDurationUpdate: 500, + data: [], + /** + * Sort order. + * + * Valid values: 'desc', 'asc', null, or callback function. + * 'desc' and 'asc' for descend and ascendant order; + * null for not sorting; + * example of callback function: + * function(nodeA, nodeB) { + * return nodeA.getValue() - nodeB.getValue(); + * } + */ + sort: 'desc' + }; + return SunburstSeriesModel; + }(SeriesModel); + function completeTreeValue$1(dataNode) { + // Postorder travel tree. + // If value of none-leaf node is not set, + // calculate it by suming up the value of all children. + var sum = 0; + each(dataNode.children, function (child) { + completeTreeValue$1(child); + var childValue = child.value; + // TODO First value of array must be a number + isArray(childValue) && (childValue = childValue[0]); + sum += childValue; + }); + var thisValue = dataNode.value; + if (isArray(thisValue)) { + thisValue = thisValue[0]; + } + if (thisValue == null || isNaN(thisValue)) { + thisValue = sum; + } + // Value should not less than 0. + if (thisValue < 0) { + thisValue = 0; + } + isArray(dataNode.value) ? dataNode.value[0] = thisValue : dataNode.value = thisValue; + } + + // let PI2 = Math.PI * 2; + var RADIAN$2 = Math.PI / 180; + function sunburstLayout(seriesType, ecModel, api) { + ecModel.eachSeriesByType(seriesType, function (seriesModel) { + var center = seriesModel.get('center'); + var radius = seriesModel.get('radius'); + if (!isArray(radius)) { + radius = [0, radius]; + } + if (!isArray(center)) { + center = [center, center]; + } + var width = api.getWidth(); + var height = api.getHeight(); + var size = Math.min(width, height); + var cx = parsePercent$1(center[0], width); + var cy = parsePercent$1(center[1], height); + var r0 = parsePercent$1(radius[0], size / 2); + var r = parsePercent$1(radius[1], size / 2); + var startAngle = -seriesModel.get('startAngle') * RADIAN$2; + var minAngle = seriesModel.get('minAngle') * RADIAN$2; + var virtualRoot = seriesModel.getData().tree.root; + var treeRoot = seriesModel.getViewRoot(); + var rootDepth = treeRoot.depth; + var sort = seriesModel.get('sort'); + if (sort != null) { + initChildren$1(treeRoot, sort); + } + var validDataCount = 0; + each(treeRoot.children, function (child) { + !isNaN(child.getValue()) && validDataCount++; + }); + var sum = treeRoot.getValue(); + // Sum may be 0 + var unitRadian = Math.PI / (sum || validDataCount) * 2; + var renderRollupNode = treeRoot.depth > 0; + var levels = treeRoot.height - (renderRollupNode ? -1 : 1); + var rPerLevel = (r - r0) / (levels || 1); + var clockwise = seriesModel.get('clockwise'); + var stillShowZeroSum = seriesModel.get('stillShowZeroSum'); + // In the case some sector angle is smaller than minAngle + // let restAngle = PI2; + // let valueSumLargerThanMinAngle = 0; + var dir = clockwise ? 1 : -1; + /** + * Render a tree + * @return increased angle + */ + var renderNode = function (node, startAngle) { + if (!node) { + return; + } + var endAngle = startAngle; + // Render self + if (node !== virtualRoot) { + // Tree node is virtual, so it doesn't need to be drawn + var value = node.getValue(); + var angle = sum === 0 && stillShowZeroSum ? unitRadian : value * unitRadian; + if (angle < minAngle) { + angle = minAngle; + // restAngle -= minAngle; + } + // else { + // valueSumLargerThanMinAngle += value; + // } + endAngle = startAngle + dir * angle; + var depth = node.depth - rootDepth - (renderRollupNode ? -1 : 1); + var rStart = r0 + rPerLevel * depth; + var rEnd = r0 + rPerLevel * (depth + 1); + var levelModel = seriesModel.getLevelModel(node); + if (levelModel) { + var r0_1 = levelModel.get('r0', true); + var r_1 = levelModel.get('r', true); + var radius_1 = levelModel.get('radius', true); + if (radius_1 != null) { + r0_1 = radius_1[0]; + r_1 = radius_1[1]; + } + r0_1 != null && (rStart = parsePercent$1(r0_1, size / 2)); + r_1 != null && (rEnd = parsePercent$1(r_1, size / 2)); + } + node.setLayout({ + angle: angle, + startAngle: startAngle, + endAngle: endAngle, + clockwise: clockwise, + cx: cx, + cy: cy, + r0: rStart, + r: rEnd + }); + } + // Render children + if (node.children && node.children.length) { + // currentAngle = startAngle; + var siblingAngle_1 = 0; + each(node.children, function (node) { + siblingAngle_1 += renderNode(node, startAngle + siblingAngle_1); + }); + } + return endAngle - startAngle; + }; + // Virtual root node for roll up + if (renderRollupNode) { + var rStart = r0; + var rEnd = r0 + rPerLevel; + var angle = Math.PI * 2; + virtualRoot.setLayout({ + angle: angle, + startAngle: startAngle, + endAngle: startAngle + angle, + clockwise: clockwise, + cx: cx, + cy: cy, + r0: rStart, + r: rEnd + }); + } + renderNode(treeRoot, startAngle); + }); + } + /** + * Init node children by order and update visual + */ + function initChildren$1(node, sortOrder) { + var children = node.children || []; + node.children = sort$2(children, sortOrder); + // Init children recursively + if (children.length) { + each(node.children, function (child) { + initChildren$1(child, sortOrder); + }); + } + } + /** + * Sort children nodes + * + * @param {TreeNode[]} children children of node to be sorted + * @param {string | function | null} sort sort method + * See SunburstSeries.js for details. + */ + function sort$2(children, sortOrder) { + if (isFunction(sortOrder)) { + var sortTargets = map(children, function (child, idx) { + var value = child.getValue(); + return { + params: { + depth: child.depth, + height: child.height, + dataIndex: child.dataIndex, + getValue: function () { + return value; + } + }, + index: idx + }; + }); + sortTargets.sort(function (a, b) { + return sortOrder(a.params, b.params); + }); + return map(sortTargets, function (target) { + return children[target.index]; + }); + } else { + var isAsc_1 = sortOrder === 'asc'; + return children.sort(function (a, b) { + var diff = (a.getValue() - b.getValue()) * (isAsc_1 ? 1 : -1); + return diff === 0 ? (a.dataIndex - b.dataIndex) * (isAsc_1 ? -1 : 1) : diff; + }); + } + } + + function sunburstVisual(ecModel) { + var paletteScope = {}; + // Default color strategy + function pickColor(node, seriesModel, treeHeight) { + // Choose color from palette based on the first level. + var current = node; + while (current && current.depth > 1) { + current = current.parentNode; + } + var color = seriesModel.getColorFromPalette(current.name || current.dataIndex + '', paletteScope); + if (node.depth > 1 && isString(color)) { + // Lighter on the deeper level. + color = lift(color, (node.depth - 1) / (treeHeight - 1) * 0.5); + } + return color; + } + ecModel.eachSeriesByType('sunburst', function (seriesModel) { + var data = seriesModel.getData(); + var tree = data.tree; + tree.eachNode(function (node) { + var model = node.getModel(); + var style = model.getModel('itemStyle').getItemStyle(); + if (!style.fill) { + style.fill = pickColor(node, seriesModel, tree.root.height); + } + var existsStyle = data.ensureUniqueItemVisual(node.dataIndex, 'style'); + extend(existsStyle, style); + }); + }); + } + + function install$q(registers) { + registers.registerChartView(SunburstView); + registers.registerSeriesModel(SunburstSeriesModel); + registers.registerLayout(curry(sunburstLayout, 'sunburst')); + registers.registerProcessor(curry(dataFilter, 'sunburst')); + registers.registerVisual(sunburstVisual); + installSunburstAction(registers); + } + + // Also compat with ec4, where + // `visual('color') visual('borderColor')` is supported. + var STYLE_VISUAL_TYPE = { + color: 'fill', + borderColor: 'stroke' + }; + var NON_STYLE_VISUAL_PROPS = { + symbol: 1, + symbolSize: 1, + symbolKeepAspect: 1, + legendIcon: 1, + visualMeta: 1, + liftZ: 1, + decal: 1 + }; + var customInnerStore = makeInner(); + var CustomSeriesModel = /** @class */function (_super) { + __extends(CustomSeriesModel, _super); + function CustomSeriesModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = CustomSeriesModel.type; + return _this; + } + CustomSeriesModel.prototype.optionUpdated = function () { + this.currentZLevel = this.get('zlevel', true); + this.currentZ = this.get('z', true); + }; + CustomSeriesModel.prototype.getInitialData = function (option, ecModel) { + return createSeriesData(null, this); + }; + CustomSeriesModel.prototype.getDataParams = function (dataIndex, dataType, el) { + var params = _super.prototype.getDataParams.call(this, dataIndex, dataType); + el && (params.info = customInnerStore(el).info); + return params; + }; + CustomSeriesModel.type = 'series.custom'; + CustomSeriesModel.dependencies = ['grid', 'polar', 'geo', 'singleAxis', 'calendar']; + CustomSeriesModel.defaultOption = { + coordinateSystem: 'cartesian2d', + // zlevel: 0, + z: 2, + legendHoverLink: true, + // Custom series will not clip by default. + // Some case will use custom series to draw label + // For example https://echarts.apache.org/examples/en/editor.html?c=custom-gantt-flight + clip: false + // Cartesian coordinate system + // xAxisIndex: 0, + // yAxisIndex: 0, + // Polar coordinate system + // polarIndex: 0, + // Geo coordinate system + // geoIndex: 0, + }; + + return CustomSeriesModel; + }(SeriesModel); + + function dataToCoordSize(dataSize, dataItem) { + // dataItem is necessary in log axis. + dataItem = dataItem || [0, 0]; + return map(['x', 'y'], function (dim, dimIdx) { + var axis = this.getAxis(dim); + var val = dataItem[dimIdx]; + var halfSize = dataSize[dimIdx] / 2; + return axis.type === 'category' ? axis.getBandWidth() : Math.abs(axis.dataToCoord(val - halfSize) - axis.dataToCoord(val + halfSize)); + }, this); + } + function cartesianPrepareCustom(coordSys) { + var rect = coordSys.master.getRect(); + return { + coordSys: { + // The name exposed to user is always 'cartesian2d' but not 'grid'. + type: 'cartesian2d', + x: rect.x, + y: rect.y, + width: rect.width, + height: rect.height + }, + api: { + coord: function (data) { + // do not provide "out" param + return coordSys.dataToPoint(data); + }, + size: bind(dataToCoordSize, coordSys) + } + }; + } + + function dataToCoordSize$1(dataSize, dataItem) { + dataItem = dataItem || [0, 0]; + return map([0, 1], function (dimIdx) { + var val = dataItem[dimIdx]; + var halfSize = dataSize[dimIdx] / 2; + var p1 = []; + var p2 = []; + p1[dimIdx] = val - halfSize; + p2[dimIdx] = val + halfSize; + p1[1 - dimIdx] = p2[1 - dimIdx] = dataItem[1 - dimIdx]; + return Math.abs(this.dataToPoint(p1)[dimIdx] - this.dataToPoint(p2)[dimIdx]); + }, this); + } + function geoPrepareCustom(coordSys) { + var rect = coordSys.getBoundingRect(); + return { + coordSys: { + type: 'geo', + x: rect.x, + y: rect.y, + width: rect.width, + height: rect.height, + zoom: coordSys.getZoom() + }, + api: { + coord: function (data) { + // do not provide "out" and noRoam param, + // Compatible with this usage: + // echarts.util.map(item.points, api.coord) + return coordSys.dataToPoint(data); + }, + size: bind(dataToCoordSize$1, coordSys) + } + }; + } + + function dataToCoordSize$2(dataSize, dataItem) { + // dataItem is necessary in log axis. + var axis = this.getAxis(); + var val = dataItem instanceof Array ? dataItem[0] : dataItem; + var halfSize = (dataSize instanceof Array ? dataSize[0] : dataSize) / 2; + return axis.type === 'category' ? axis.getBandWidth() : Math.abs(axis.dataToCoord(val - halfSize) - axis.dataToCoord(val + halfSize)); + } + function singlePrepareCustom(coordSys) { + var rect = coordSys.getRect(); + return { + coordSys: { + type: 'singleAxis', + x: rect.x, + y: rect.y, + width: rect.width, + height: rect.height + }, + api: { + coord: function (val) { + // do not provide "out" param + return coordSys.dataToPoint(val); + }, + size: bind(dataToCoordSize$2, coordSys) + } + }; + } + + // import AngleAxis from './AngleAxis.js'; + function dataToCoordSize$3(dataSize, dataItem) { + // dataItem is necessary in log axis. + dataItem = dataItem || [0, 0]; + return map(['Radius', 'Angle'], function (dim, dimIdx) { + var getterName = 'get' + dim + 'Axis'; + // TODO: TYPE Check Angle Axis + var axis = this[getterName](); + var val = dataItem[dimIdx]; + var halfSize = dataSize[dimIdx] / 2; + var result = axis.type === 'category' ? axis.getBandWidth() : Math.abs(axis.dataToCoord(val - halfSize) - axis.dataToCoord(val + halfSize)); + if (dim === 'Angle') { + result = result * Math.PI / 180; + } + return result; + }, this); + } + function polarPrepareCustom(coordSys) { + var radiusAxis = coordSys.getRadiusAxis(); + var angleAxis = coordSys.getAngleAxis(); + var radius = radiusAxis.getExtent(); + radius[0] > radius[1] && radius.reverse(); + return { + coordSys: { + type: 'polar', + cx: coordSys.cx, + cy: coordSys.cy, + r: radius[1], + r0: radius[0] + }, + api: { + coord: function (data) { + var radius = radiusAxis.dataToRadius(data[0]); + var angle = angleAxis.dataToAngle(data[1]); + var coord = coordSys.coordToPoint([radius, angle]); + coord.push(radius, angle * Math.PI / 180); + return coord; + }, + size: bind(dataToCoordSize$3, coordSys) + } + }; + } + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + + /** + * AUTO-GENERATED FILE. DO NOT MODIFY. + */ + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + function calendarPrepareCustom(coordSys) { + var rect = coordSys.getRect(); + var rangeInfo = coordSys.getRangeInfo(); + return { + coordSys: { + type: 'calendar', + x: rect.x, + y: rect.y, + width: rect.width, + height: rect.height, + cellWidth: coordSys.getCellWidth(), + cellHeight: coordSys.getCellHeight(), + rangeInfo: { + start: rangeInfo.start, + end: rangeInfo.end, + weeks: rangeInfo.weeks, + dayCount: rangeInfo.allDay + } + }, + api: { + coord: function (data, clamp) { + return coordSys.dataToPoint(data, clamp); + } + } + }; + } + + var deprecatedLogs = {}; + /** + * Whether need to call `convertEC4CompatibleStyle`. + */ + function isEC4CompatibleStyle(style, elType, hasOwnTextContentOption, hasOwnTextConfig) { + // Since echarts5, `RectText` is separated from its host element and style.text + // does not exist any more. The compat work brings some extra burden on performance. + // So we provide: + // `legacy: true` force make compat. + // `legacy: false`, force do not compat. + // `legacy` not set: auto detect whether legacy. + // But in this case we do not compat (difficult to detect and rare case): + // Becuse custom series and graphic component support "merge", users may firstly + // only set `textStrokeWidth` style or secondly only set `text`. + return style && (style.legacy || style.legacy !== false && !hasOwnTextContentOption && !hasOwnTextConfig && elType !== 'tspan' + // Difficult to detect whether legacy for a "text" el. + && (elType === 'text' || hasOwn(style, 'text'))); + } + /** + * `EC4CompatibleStyle` is style that might be in echarts4 format or echarts5 format. + * @param hostStyle The properties might be modified. + * @return If be text el, `textContentStyle` and `textConfig` will not be returned. + * Otherwise a `textContentStyle` and `textConfig` will be created, whose props area + * retried from the `hostStyle`. + */ + function convertFromEC4CompatibleStyle(hostStyle, elType, isNormal) { + var srcStyle = hostStyle; + var textConfig; + var textContent; + var textContentStyle; + if (elType === 'text') { + textContentStyle = srcStyle; + } else { + textContentStyle = {}; + hasOwn(srcStyle, 'text') && (textContentStyle.text = srcStyle.text); + hasOwn(srcStyle, 'rich') && (textContentStyle.rich = srcStyle.rich); + hasOwn(srcStyle, 'textFill') && (textContentStyle.fill = srcStyle.textFill); + hasOwn(srcStyle, 'textStroke') && (textContentStyle.stroke = srcStyle.textStroke); + hasOwn(srcStyle, 'fontFamily') && (textContentStyle.fontFamily = srcStyle.fontFamily); + hasOwn(srcStyle, 'fontSize') && (textContentStyle.fontSize = srcStyle.fontSize); + hasOwn(srcStyle, 'fontStyle') && (textContentStyle.fontStyle = srcStyle.fontStyle); + hasOwn(srcStyle, 'fontWeight') && (textContentStyle.fontWeight = srcStyle.fontWeight); + textContent = { + type: 'text', + style: textContentStyle, + // ec4 does not support rectText trigger. + // And when text position is different in normal and emphasis + // => hover text trigger emphasis; + // => text position changed, leave mouse pointer immediately; + // That might cause incorrect state. + silent: true + }; + textConfig = {}; + var hasOwnPos = hasOwn(srcStyle, 'textPosition'); + if (isNormal) { + textConfig.position = hasOwnPos ? srcStyle.textPosition : 'inside'; + } else { + hasOwnPos && (textConfig.position = srcStyle.textPosition); + } + hasOwn(srcStyle, 'textPosition') && (textConfig.position = srcStyle.textPosition); + hasOwn(srcStyle, 'textOffset') && (textConfig.offset = srcStyle.textOffset); + hasOwn(srcStyle, 'textRotation') && (textConfig.rotation = srcStyle.textRotation); + hasOwn(srcStyle, 'textDistance') && (textConfig.distance = srcStyle.textDistance); + } + convertEC4CompatibleRichItem(textContentStyle, hostStyle); + each(textContentStyle.rich, function (richItem) { + convertEC4CompatibleRichItem(richItem, richItem); + }); + return { + textConfig: textConfig, + textContent: textContent + }; + } + /** + * The result will be set to `out`. + */ + function convertEC4CompatibleRichItem(out, richItem) { + if (!richItem) { + return; + } + // (1) For simplicity, make textXXX properties (deprecated since ec5) has + // higher priority. For example, consider in ec4 `borderColor: 5, textBorderColor: 10` + // on a rect means `borderColor: 4` on the rect and `borderColor: 10` on an attached + // richText in ec5. + // (2) `out === richItem` if and only if `out` is text el or rich item. + // So we can overwrite existing props in `out` since textXXX has higher priority. + richItem.font = richItem.textFont || richItem.font; + hasOwn(richItem, 'textStrokeWidth') && (out.lineWidth = richItem.textStrokeWidth); + hasOwn(richItem, 'textAlign') && (out.align = richItem.textAlign); + hasOwn(richItem, 'textVerticalAlign') && (out.verticalAlign = richItem.textVerticalAlign); + hasOwn(richItem, 'textLineHeight') && (out.lineHeight = richItem.textLineHeight); + hasOwn(richItem, 'textWidth') && (out.width = richItem.textWidth); + hasOwn(richItem, 'textHeight') && (out.height = richItem.textHeight); + hasOwn(richItem, 'textBackgroundColor') && (out.backgroundColor = richItem.textBackgroundColor); + hasOwn(richItem, 'textPadding') && (out.padding = richItem.textPadding); + hasOwn(richItem, 'textBorderColor') && (out.borderColor = richItem.textBorderColor); + hasOwn(richItem, 'textBorderWidth') && (out.borderWidth = richItem.textBorderWidth); + hasOwn(richItem, 'textBorderRadius') && (out.borderRadius = richItem.textBorderRadius); + hasOwn(richItem, 'textBoxShadowColor') && (out.shadowColor = richItem.textBoxShadowColor); + hasOwn(richItem, 'textBoxShadowBlur') && (out.shadowBlur = richItem.textBoxShadowBlur); + hasOwn(richItem, 'textBoxShadowOffsetX') && (out.shadowOffsetX = richItem.textBoxShadowOffsetX); + hasOwn(richItem, 'textBoxShadowOffsetY') && (out.shadowOffsetY = richItem.textBoxShadowOffsetY); + } + /** + * Convert to pure echarts4 format style. + * `itemStyle` will be modified, added with ec4 style properties from + * `textStyle` and `textConfig`. + * + * [Caveat]: For simplicity, `insideRollback` in ec4 does not compat, where + * `styleEmphasis: {textFill: 'red'}` will remove the normal auto added stroke. + */ + function convertToEC4StyleForCustomSerise(itemStl, txStl, txCfg) { + var out = itemStl; + // See `custom.ts`, a trick to set extra `textPosition` firstly. + out.textPosition = out.textPosition || txCfg.position || 'inside'; + txCfg.offset != null && (out.textOffset = txCfg.offset); + txCfg.rotation != null && (out.textRotation = txCfg.rotation); + txCfg.distance != null && (out.textDistance = txCfg.distance); + var isInside = out.textPosition.indexOf('inside') >= 0; + var hostFill = itemStl.fill || '#000'; + convertToEC4RichItem(out, txStl); + var textFillNotSet = out.textFill == null; + if (isInside) { + if (textFillNotSet) { + out.textFill = txCfg.insideFill || '#fff'; + !out.textStroke && txCfg.insideStroke && (out.textStroke = txCfg.insideStroke); + !out.textStroke && (out.textStroke = hostFill); + out.textStrokeWidth == null && (out.textStrokeWidth = 2); + } + } else { + if (textFillNotSet) { + out.textFill = itemStl.fill || txCfg.outsideFill || '#000'; + } + !out.textStroke && txCfg.outsideStroke && (out.textStroke = txCfg.outsideStroke); + } + out.text = txStl.text; + out.rich = txStl.rich; + each(txStl.rich, function (richItem) { + convertToEC4RichItem(richItem, richItem); + }); + return out; + } + function convertToEC4RichItem(out, richItem) { + if (!richItem) { + return; + } + hasOwn(richItem, 'fill') && (out.textFill = richItem.fill); + hasOwn(richItem, 'stroke') && (out.textStroke = richItem.fill); + hasOwn(richItem, 'lineWidth') && (out.textStrokeWidth = richItem.lineWidth); + hasOwn(richItem, 'font') && (out.font = richItem.font); + hasOwn(richItem, 'fontStyle') && (out.fontStyle = richItem.fontStyle); + hasOwn(richItem, 'fontWeight') && (out.fontWeight = richItem.fontWeight); + hasOwn(richItem, 'fontSize') && (out.fontSize = richItem.fontSize); + hasOwn(richItem, 'fontFamily') && (out.fontFamily = richItem.fontFamily); + hasOwn(richItem, 'align') && (out.textAlign = richItem.align); + hasOwn(richItem, 'verticalAlign') && (out.textVerticalAlign = richItem.verticalAlign); + hasOwn(richItem, 'lineHeight') && (out.textLineHeight = richItem.lineHeight); + hasOwn(richItem, 'width') && (out.textWidth = richItem.width); + hasOwn(richItem, 'height') && (out.textHeight = richItem.height); + hasOwn(richItem, 'backgroundColor') && (out.textBackgroundColor = richItem.backgroundColor); + hasOwn(richItem, 'padding') && (out.textPadding = richItem.padding); + hasOwn(richItem, 'borderColor') && (out.textBorderColor = richItem.borderColor); + hasOwn(richItem, 'borderWidth') && (out.textBorderWidth = richItem.borderWidth); + hasOwn(richItem, 'borderRadius') && (out.textBorderRadius = richItem.borderRadius); + hasOwn(richItem, 'shadowColor') && (out.textBoxShadowColor = richItem.shadowColor); + hasOwn(richItem, 'shadowBlur') && (out.textBoxShadowBlur = richItem.shadowBlur); + hasOwn(richItem, 'shadowOffsetX') && (out.textBoxShadowOffsetX = richItem.shadowOffsetX); + hasOwn(richItem, 'shadowOffsetY') && (out.textBoxShadowOffsetY = richItem.shadowOffsetY); + hasOwn(richItem, 'textShadowColor') && (out.textShadowColor = richItem.textShadowColor); + hasOwn(richItem, 'textShadowBlur') && (out.textShadowBlur = richItem.textShadowBlur); + hasOwn(richItem, 'textShadowOffsetX') && (out.textShadowOffsetX = richItem.textShadowOffsetX); + hasOwn(richItem, 'textShadowOffsetY') && (out.textShadowOffsetY = richItem.textShadowOffsetY); + } + function warnDeprecated(deprecated, insteadApproach) { + if ("development" !== 'production') { + var key = deprecated + '^_^' + insteadApproach; + if (!deprecatedLogs[key]) { + console.warn("[ECharts] DEPRECATED: \"" + deprecated + "\" has been deprecated. " + insteadApproach); + deprecatedLogs[key] = true; + } + } + } + + var LEGACY_TRANSFORM_PROPS_MAP = { + position: ['x', 'y'], + scale: ['scaleX', 'scaleY'], + origin: ['originX', 'originY'] + }; + var LEGACY_TRANSFORM_PROPS = keys(LEGACY_TRANSFORM_PROPS_MAP); + var TRANSFORM_PROPS_MAP = reduce(TRANSFORMABLE_PROPS, function (obj, key) { + obj[key] = 1; + return obj; + }, {}); + var transformPropNamesStr = TRANSFORMABLE_PROPS.join(', '); + // '' means root + var ELEMENT_ANIMATABLE_PROPS = ['', 'style', 'shape', 'extra']; + var transitionInnerStore = makeInner(); + function getElementAnimationConfig(animationType, el, elOption, parentModel, dataIndex) { + var animationProp = animationType + "Animation"; + var config = getAnimationConfig(animationType, parentModel, dataIndex) || {}; + var userDuring = transitionInnerStore(el).userDuring; + // Only set when duration is > 0 and it's need to be animated. + if (config.duration > 0) { + // For simplicity, if during not specified, the previous during will not work any more. + config.during = userDuring ? bind(duringCall, { + el: el, + userDuring: userDuring + }) : null; + config.setToFinal = true; + config.scope = animationType; + } + extend(config, elOption[animationProp]); + return config; + } + function applyUpdateTransition(el, elOption, animatableModel, opts) { + opts = opts || {}; + var dataIndex = opts.dataIndex, + isInit = opts.isInit, + clearStyle = opts.clearStyle; + var hasAnimation = animatableModel.isAnimationEnabled(); + // Save the meta info for further morphing. Like apply on the sub morphing elements. + var store = transitionInnerStore(el); + var styleOpt = elOption.style; + store.userDuring = elOption.during; + var transFromProps = {}; + var propsToSet = {}; + prepareTransformAllPropsFinal(el, elOption, propsToSet); + prepareShapeOrExtraAllPropsFinal('shape', elOption, propsToSet); + prepareShapeOrExtraAllPropsFinal('extra', elOption, propsToSet); + if (!isInit && hasAnimation) { + prepareTransformTransitionFrom(el, elOption, transFromProps); + prepareShapeOrExtraTransitionFrom('shape', el, elOption, transFromProps); + prepareShapeOrExtraTransitionFrom('extra', el, elOption, transFromProps); + prepareStyleTransitionFrom(el, elOption, styleOpt, transFromProps); + } + propsToSet.style = styleOpt; + applyPropsDirectly(el, propsToSet, clearStyle); + applyMiscProps(el, elOption); + if (hasAnimation) { + if (isInit) { + var enterFromProps_1 = {}; + each(ELEMENT_ANIMATABLE_PROPS, function (propName) { + var prop = propName ? elOption[propName] : elOption; + if (prop && prop.enterFrom) { + if (propName) { + enterFromProps_1[propName] = enterFromProps_1[propName] || {}; + } + extend(propName ? enterFromProps_1[propName] : enterFromProps_1, prop.enterFrom); + } + }); + var config = getElementAnimationConfig('enter', el, elOption, animatableModel, dataIndex); + if (config.duration > 0) { + el.animateFrom(enterFromProps_1, config); + } + } else { + applyPropsTransition(el, elOption, dataIndex || 0, animatableModel, transFromProps); + } + } + // Store leave to be used in leave transition. + updateLeaveTo(el, elOption); + styleOpt ? el.dirty() : el.markRedraw(); + } + function updateLeaveTo(el, elOption) { + // Try merge to previous set leaveTo + var leaveToProps = transitionInnerStore(el).leaveToProps; + for (var i = 0; i < ELEMENT_ANIMATABLE_PROPS.length; i++) { + var propName = ELEMENT_ANIMATABLE_PROPS[i]; + var prop = propName ? elOption[propName] : elOption; + if (prop && prop.leaveTo) { + if (!leaveToProps) { + leaveToProps = transitionInnerStore(el).leaveToProps = {}; + } + if (propName) { + leaveToProps[propName] = leaveToProps[propName] || {}; + } + extend(propName ? leaveToProps[propName] : leaveToProps, prop.leaveTo); + } + } + } + function applyLeaveTransition(el, elOption, animatableModel, onRemove) { + if (el) { + var parent_1 = el.parent; + var leaveToProps = transitionInnerStore(el).leaveToProps; + if (leaveToProps) { + // TODO TODO use leave after leaveAnimation in series is introduced + // TODO Data index? + var config = getElementAnimationConfig('update', el, elOption, animatableModel, 0); + config.done = function () { + parent_1.remove(el); + onRemove && onRemove(); + }; + el.animateTo(leaveToProps, config); + } else { + parent_1.remove(el); + onRemove && onRemove(); + } + } + } + function isTransitionAll(transition) { + return transition === 'all'; + } + function applyPropsDirectly(el, + // Can be null/undefined + allPropsFinal, clearStyle) { + var styleOpt = allPropsFinal.style; + if (!el.isGroup && styleOpt) { + if (clearStyle) { + el.useStyle({}); + // When style object changed, how to trade the existing animation? + // It is probably complicated and not needed to cover all the cases. + // But still need consider the case: + // (1) When using init animation on `style.opacity`, and before the animation + // ended users triggers an update by mousewhel. At that time the init + // animation should better be continued rather than terminated. + // So after `useStyle` called, we should change the animation target manually + // to continue the effect of the init animation. + // (2) PENDING: If the previous animation targeted at a `val1`, and currently we need + // to update the value to `val2` and no animation declared, should be terminate + // the previous animation or just modify the target of the animation? + // Therotically That will happen not only on `style` but also on `shape` and + // `transfrom` props. But we haven't handle this case at present yet. + // (3) PENDING: Is it proper to visit `animators` and `targetName`? + var animators = el.animators; + for (var i = 0; i < animators.length; i++) { + var animator = animators[i]; + // targetName is the "topKey". + if (animator.targetName === 'style') { + animator.changeTarget(el.style); + } + } + } + el.setStyle(styleOpt); + } + if (allPropsFinal) { + // Not set style here. + allPropsFinal.style = null; + // Set el to the final state firstly. + allPropsFinal && el.attr(allPropsFinal); + allPropsFinal.style = styleOpt; + } + } + function applyPropsTransition(el, elOption, dataIndex, model, + // Can be null/undefined + transFromProps) { + if (transFromProps) { + var config = getElementAnimationConfig('update', el, elOption, model, dataIndex); + if (config.duration > 0) { + el.animateFrom(transFromProps, config); + } + } + } + function applyMiscProps(el, elOption) { + // Merge by default. + hasOwn(elOption, 'silent') && (el.silent = elOption.silent); + hasOwn(elOption, 'ignore') && (el.ignore = elOption.ignore); + if (el instanceof Displayable) { + hasOwn(elOption, 'invisible') && (el.invisible = elOption.invisible); + } + if (el instanceof Path) { + hasOwn(elOption, 'autoBatch') && (el.autoBatch = elOption.autoBatch); + } + } + // Use it to avoid it be exposed to user. + var tmpDuringScope = {}; + var transitionDuringAPI = { + // Usually other props do not need to be changed in animation during. + setTransform: function (key, val) { + if ("development" !== 'production') { + assert(hasOwn(TRANSFORM_PROPS_MAP, key), 'Only ' + transformPropNamesStr + ' available in `setTransform`.'); + } + tmpDuringScope.el[key] = val; + return this; + }, + getTransform: function (key) { + if ("development" !== 'production') { + assert(hasOwn(TRANSFORM_PROPS_MAP, key), 'Only ' + transformPropNamesStr + ' available in `getTransform`.'); + } + return tmpDuringScope.el[key]; + }, + setShape: function (key, val) { + if ("development" !== 'production') { + assertNotReserved(key); + } + var el = tmpDuringScope.el; + var shape = el.shape || (el.shape = {}); + shape[key] = val; + el.dirtyShape && el.dirtyShape(); + return this; + }, + getShape: function (key) { + if ("development" !== 'production') { + assertNotReserved(key); + } + var shape = tmpDuringScope.el.shape; + if (shape) { + return shape[key]; + } + }, + setStyle: function (key, val) { + if ("development" !== 'production') { + assertNotReserved(key); + } + var el = tmpDuringScope.el; + var style = el.style; + if (style) { + if ("development" !== 'production') { + if (eqNaN(val)) { + warn('style.' + key + ' must not be assigned with NaN.'); + } + } + style[key] = val; + el.dirtyStyle && el.dirtyStyle(); + } + return this; + }, + getStyle: function (key) { + if ("development" !== 'production') { + assertNotReserved(key); + } + var style = tmpDuringScope.el.style; + if (style) { + return style[key]; + } + }, + setExtra: function (key, val) { + if ("development" !== 'production') { + assertNotReserved(key); + } + var extra = tmpDuringScope.el.extra || (tmpDuringScope.el.extra = {}); + extra[key] = val; + return this; + }, + getExtra: function (key) { + if ("development" !== 'production') { + assertNotReserved(key); + } + var extra = tmpDuringScope.el.extra; + if (extra) { + return extra[key]; + } + } + }; + function assertNotReserved(key) { + if ("development" !== 'production') { + if (key === 'transition' || key === 'enterFrom' || key === 'leaveTo') { + throw new Error('key must not be "' + key + '"'); + } + } + } + function duringCall() { + // Do not provide "percent" until some requirements come. + // Because consider thies case: + // enterFrom: {x: 100, y: 30}, transition: 'x'. + // And enter duration is different from update duration. + // Thus it might be confused about the meaning of "percent" in during callback. + var scope = this; + var el = scope.el; + if (!el) { + return; + } + // If el is remove from zr by reason like legend, during still need to called, + // because el will be added back to zr and the prop value should not be incorrect. + var latestUserDuring = transitionInnerStore(el).userDuring; + var scopeUserDuring = scope.userDuring; + // Ensured a during is only called once in each animation frame. + // If a during is called multiple times in one frame, maybe some users' calculation logic + // might be wrong (not sure whether this usage exists). + // The case of a during might be called twice can be: by default there is a animator for + // 'x', 'y' when init. Before the init animation finished, call `setOption` to start + // another animators for 'style'/'shape'/'extra'. + if (latestUserDuring !== scopeUserDuring) { + // release + scope.el = scope.userDuring = null; + return; + } + tmpDuringScope.el = el; + // Give no `this` to user in "during" calling. + scopeUserDuring(transitionDuringAPI); + // FIXME: if in future meet the case that some prop will be both modified in `during` and `state`, + // consider the issue that the prop might be incorrect when return to "normal" state. + } + + function prepareShapeOrExtraTransitionFrom(mainAttr, fromEl, elOption, transFromProps) { + var attrOpt = elOption[mainAttr]; + if (!attrOpt) { + return; + } + var elPropsInAttr = fromEl[mainAttr]; + var transFromPropsInAttr; + if (elPropsInAttr) { + var transition = elOption.transition; + var attrTransition = attrOpt.transition; + if (attrTransition) { + !transFromPropsInAttr && (transFromPropsInAttr = transFromProps[mainAttr] = {}); + if (isTransitionAll(attrTransition)) { + extend(transFromPropsInAttr, elPropsInAttr); + } else { + var transitionKeys = normalizeToArray(attrTransition); + for (var i = 0; i < transitionKeys.length; i++) { + var key = transitionKeys[i]; + var elVal = elPropsInAttr[key]; + transFromPropsInAttr[key] = elVal; + } + } + } else if (isTransitionAll(transition) || indexOf(transition, mainAttr) >= 0) { + !transFromPropsInAttr && (transFromPropsInAttr = transFromProps[mainAttr] = {}); + var elPropsInAttrKeys = keys(elPropsInAttr); + for (var i = 0; i < elPropsInAttrKeys.length; i++) { + var key = elPropsInAttrKeys[i]; + var elVal = elPropsInAttr[key]; + if (isNonStyleTransitionEnabled(attrOpt[key], elVal)) { + transFromPropsInAttr[key] = elVal; + } + } + } + } + } + function prepareShapeOrExtraAllPropsFinal(mainAttr, elOption, allProps) { + var attrOpt = elOption[mainAttr]; + if (!attrOpt) { + return; + } + var allPropsInAttr = allProps[mainAttr] = {}; + var keysInAttr = keys(attrOpt); + for (var i = 0; i < keysInAttr.length; i++) { + var key = keysInAttr[i]; + // To avoid share one object with different element, and + // to avoid user modify the object inexpectedly, have to clone. + allPropsInAttr[key] = cloneValue(attrOpt[key]); + } + } + function prepareTransformTransitionFrom(el, elOption, transFromProps) { + var transition = elOption.transition; + var transitionKeys = isTransitionAll(transition) ? TRANSFORMABLE_PROPS : normalizeToArray(transition || []); + for (var i = 0; i < transitionKeys.length; i++) { + var key = transitionKeys[i]; + if (key === 'style' || key === 'shape' || key === 'extra') { + continue; + } + var elVal = el[key]; + if ("development" !== 'production') { + checkTransformPropRefer(key, 'el.transition'); + } + // Do not clone, animator will perform that clone. + transFromProps[key] = elVal; + } + } + function prepareTransformAllPropsFinal(el, elOption, allProps) { + for (var i = 0; i < LEGACY_TRANSFORM_PROPS.length; i++) { + var legacyName = LEGACY_TRANSFORM_PROPS[i]; + var xyName = LEGACY_TRANSFORM_PROPS_MAP[legacyName]; + var legacyArr = elOption[legacyName]; + if (legacyArr) { + allProps[xyName[0]] = legacyArr[0]; + allProps[xyName[1]] = legacyArr[1]; + } + } + for (var i = 0; i < TRANSFORMABLE_PROPS.length; i++) { + var key = TRANSFORMABLE_PROPS[i]; + if (elOption[key] != null) { + allProps[key] = elOption[key]; + } + } + } + function prepareStyleTransitionFrom(fromEl, elOption, styleOpt, transFromProps) { + if (!styleOpt) { + return; + } + var fromElStyle = fromEl.style; + var transFromStyleProps; + if (fromElStyle) { + var styleTransition = styleOpt.transition; + var elTransition = elOption.transition; + if (styleTransition && !isTransitionAll(styleTransition)) { + var transitionKeys = normalizeToArray(styleTransition); + !transFromStyleProps && (transFromStyleProps = transFromProps.style = {}); + for (var i = 0; i < transitionKeys.length; i++) { + var key = transitionKeys[i]; + var elVal = fromElStyle[key]; + // Do not clone, see `checkNonStyleTansitionRefer`. + transFromStyleProps[key] = elVal; + } + } else if (fromEl.getAnimationStyleProps && (isTransitionAll(elTransition) || isTransitionAll(styleTransition) || indexOf(elTransition, 'style') >= 0)) { + var animationProps = fromEl.getAnimationStyleProps(); + var animationStyleProps = animationProps ? animationProps.style : null; + if (animationStyleProps) { + !transFromStyleProps && (transFromStyleProps = transFromProps.style = {}); + var styleKeys = keys(styleOpt); + for (var i = 0; i < styleKeys.length; i++) { + var key = styleKeys[i]; + if (animationStyleProps[key]) { + var elVal = fromElStyle[key]; + transFromStyleProps[key] = elVal; + } + } + } + } + } + } + function isNonStyleTransitionEnabled(optVal, elVal) { + // The same as `checkNonStyleTansitionRefer`. + return !isArrayLike(optVal) ? optVal != null && isFinite(optVal) : optVal !== elVal; + } + var checkTransformPropRefer; + if ("development" !== 'production') { + checkTransformPropRefer = function (key, usedIn) { + if (!hasOwn(TRANSFORM_PROPS_MAP, key)) { + warn('Prop `' + key + '` is not a permitted in `' + usedIn + '`. ' + 'Only `' + keys(TRANSFORM_PROPS_MAP).join('`, `') + '` are permitted.'); + } + }; + } + + var getStateToRestore = makeInner(); + var KEYFRAME_EXCLUDE_KEYS = ['percent', 'easing', 'shape', 'style', 'extra']; + /** + * Stop previous keyframe animation and restore the attributes. + * Avoid new keyframe animation starts with wrong internal state when the percent: 0 is not set. + */ + function stopPreviousKeyframeAnimationAndRestore(el) { + // Stop previous keyframe animation. + el.stopAnimation('keyframe'); + // Restore + el.attr(getStateToRestore(el)); + } + function applyKeyframeAnimation(el, animationOpts, animatableModel) { + if (!animatableModel.isAnimationEnabled() || !animationOpts) { + return; + } + if (isArray(animationOpts)) { + each(animationOpts, function (singleAnimationOpts) { + applyKeyframeAnimation(el, singleAnimationOpts, animatableModel); + }); + return; + } + var keyframes = animationOpts.keyframes; + var duration = animationOpts.duration; + if (animatableModel && duration == null) { + // Default to use duration of config. + // NOTE: animation config from payload will be ignored because they are mainly for transitions. + var config = getAnimationConfig('enter', animatableModel, 0); + duration = config && config.duration; + } + if (!keyframes || !duration) { + return; + } + var stateToRestore = getStateToRestore(el); + each(ELEMENT_ANIMATABLE_PROPS, function (targetPropName) { + if (targetPropName && !el[targetPropName]) { + return; + } + var animator; + var endFrameIsSet = false; + // Sort keyframes by percent. + keyframes.sort(function (a, b) { + return a.percent - b.percent; + }); + each(keyframes, function (kf) { + // Stop current animation. + var animators = el.animators; + var kfValues = targetPropName ? kf[targetPropName] : kf; + if ("development" !== 'production') { + if (kf.percent >= 1) { + endFrameIsSet = true; + } + } + if (!kfValues) { + return; + } + var propKeys = keys(kfValues); + if (!targetPropName) { + // PENDING performance? + propKeys = filter(propKeys, function (key) { + return indexOf(KEYFRAME_EXCLUDE_KEYS, key) < 0; + }); + } + if (!propKeys.length) { + return; + } + if (!animator) { + animator = el.animate(targetPropName, animationOpts.loop, true); + animator.scope = 'keyframe'; + } + for (var i = 0; i < animators.length; i++) { + // Stop all other animation that is not keyframe. + if (animators[i] !== animator && animators[i].targetName === animator.targetName) { + animators[i].stopTracks(propKeys); + } + } + targetPropName && (stateToRestore[targetPropName] = stateToRestore[targetPropName] || {}); + var savedTarget = targetPropName ? stateToRestore[targetPropName] : stateToRestore; + each(propKeys, function (key) { + // Save original value. + savedTarget[key] = ((targetPropName ? el[targetPropName] : el) || {})[key]; + }); + animator.whenWithKeys(duration * kf.percent, kfValues, propKeys, kf.easing); + }); + if (!animator) { + return; + } + if ("development" !== 'production') { + if (!endFrameIsSet) { + warn('End frame with percent: 1 is missing in the keyframeAnimation.', true); + } + } + animator.delay(animationOpts.delay || 0).duration(duration).start(animationOpts.easing); + }); + } + + var EMPHASIS = 'emphasis'; + var NORMAL = 'normal'; + var BLUR = 'blur'; + var SELECT = 'select'; + var STATES = [NORMAL, EMPHASIS, BLUR, SELECT]; + var PATH_ITEM_STYLE = { + normal: ['itemStyle'], + emphasis: [EMPHASIS, 'itemStyle'], + blur: [BLUR, 'itemStyle'], + select: [SELECT, 'itemStyle'] + }; + var PATH_LABEL = { + normal: ['label'], + emphasis: [EMPHASIS, 'label'], + blur: [BLUR, 'label'], + select: [SELECT, 'label'] + }; + var DEFAULT_TRANSITION = ['x', 'y']; + // Use prefix to avoid index to be the same as el.name, + // which will cause weird update animation. + var GROUP_DIFF_PREFIX = 'e\0\0'; + var attachedTxInfoTmp = { + normal: {}, + emphasis: {}, + blur: {}, + select: {} + }; + /** + * To reduce total package size of each coordinate systems, the modules `prepareCustom` + * of each coordinate systems are not required by each coordinate systems directly, but + * required by the module `custom`. + * + * prepareInfoForCustomSeries {Function}: optional + * @return {Object} {coordSys: {...}, api: { + * coord: function (data, clamp) {}, // return point in global. + * size: function (dataSize, dataItem) {} // return size of each axis in coordSys. + * }} + */ + var prepareCustoms = { + cartesian2d: cartesianPrepareCustom, + geo: geoPrepareCustom, + single: singlePrepareCustom, + polar: polarPrepareCustom, + calendar: calendarPrepareCustom + }; + function isPath$1(el) { + return el instanceof Path; + } + function isDisplayable(el) { + return el instanceof Displayable; + } + function copyElement(sourceEl, targetEl) { + targetEl.copyTransform(sourceEl); + if (isDisplayable(targetEl) && isDisplayable(sourceEl)) { + targetEl.setStyle(sourceEl.style); + targetEl.z = sourceEl.z; + targetEl.z2 = sourceEl.z2; + targetEl.zlevel = sourceEl.zlevel; + targetEl.invisible = sourceEl.invisible; + targetEl.ignore = sourceEl.ignore; + if (isPath$1(targetEl) && isPath$1(sourceEl)) { + targetEl.setShape(sourceEl.shape); + } + } + } + var CustomChartView = /** @class */function (_super) { + __extends(CustomChartView, _super); + function CustomChartView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = CustomChartView.type; + return _this; + } + CustomChartView.prototype.render = function (customSeries, ecModel, api, payload) { + // Clear previously rendered progressive elements. + this._progressiveEls = null; + var oldData = this._data; + var data = customSeries.getData(); + var group = this.group; + var renderItem = makeRenderItem(customSeries, data, ecModel, api); + if (!oldData) { + // Previous render is incremental render or first render. + // Needs remove the incremental rendered elements. + group.removeAll(); + } + data.diff(oldData).add(function (newIdx) { + createOrUpdateItem(api, null, newIdx, renderItem(newIdx, payload), customSeries, group, data); + }).remove(function (oldIdx) { + var el = oldData.getItemGraphicEl(oldIdx); + el && applyLeaveTransition(el, customInnerStore(el).option, customSeries); + }).update(function (newIdx, oldIdx) { + var oldEl = oldData.getItemGraphicEl(oldIdx); + createOrUpdateItem(api, oldEl, newIdx, renderItem(newIdx, payload), customSeries, group, data); + }).execute(); + // Do clipping + var clipPath = customSeries.get('clip', true) ? createClipPath(customSeries.coordinateSystem, false, customSeries) : null; + if (clipPath) { + group.setClipPath(clipPath); + } else { + group.removeClipPath(); + } + this._data = data; + }; + CustomChartView.prototype.incrementalPrepareRender = function (customSeries, ecModel, api) { + this.group.removeAll(); + this._data = null; + }; + CustomChartView.prototype.incrementalRender = function (params, customSeries, ecModel, api, payload) { + var data = customSeries.getData(); + var renderItem = makeRenderItem(customSeries, data, ecModel, api); + var progressiveEls = this._progressiveEls = []; + function setIncrementalAndHoverLayer(el) { + if (!el.isGroup) { + el.incremental = true; + el.ensureState('emphasis').hoverLayer = true; + } + } + for (var idx = params.start; idx < params.end; idx++) { + var el = createOrUpdateItem(null, null, idx, renderItem(idx, payload), customSeries, this.group, data); + if (el) { + el.traverse(setIncrementalAndHoverLayer); + progressiveEls.push(el); + } + } + }; + CustomChartView.prototype.eachRendered = function (cb) { + traverseElements(this._progressiveEls || this.group, cb); + }; + CustomChartView.prototype.filterForExposedEvent = function (eventType, query, targetEl, packedEvent) { + var elementName = query.element; + if (elementName == null || targetEl.name === elementName) { + return true; + } + // Enable to give a name on a group made by `renderItem`, and listen + // events that are triggered by its descendents. + while ((targetEl = targetEl.__hostTarget || targetEl.parent) && targetEl !== this.group) { + if (targetEl.name === elementName) { + return true; + } + } + return false; + }; + CustomChartView.type = 'custom'; + return CustomChartView; + }(ChartView); + function createEl(elOption) { + var graphicType = elOption.type; + var el; + // Those graphic elements are not shapes. They should not be + // overwritten by users, so do them first. + if (graphicType === 'path') { + var shape = elOption.shape; + // Using pathRect brings convenience to users sacle svg path. + var pathRect = shape.width != null && shape.height != null ? { + x: shape.x || 0, + y: shape.y || 0, + width: shape.width, + height: shape.height + } : null; + var pathData = getPathData(shape); + // Path is also used for icon, so layout 'center' by default. + el = makePath(pathData, null, pathRect, shape.layout || 'center'); + customInnerStore(el).customPathData = pathData; + } else if (graphicType === 'image') { + el = new ZRImage({}); + customInnerStore(el).customImagePath = elOption.style.image; + } else if (graphicType === 'text') { + el = new ZRText({}); + // customInnerStore(el).customText = (elOption.style as TextStyleProps).text; + } else if (graphicType === 'group') { + el = new Group(); + } else if (graphicType === 'compoundPath') { + throw new Error('"compoundPath" is not supported yet.'); + } else { + var Clz = getShapeClass(graphicType); + if (!Clz) { + var errMsg = ''; + if ("development" !== 'production') { + errMsg = 'graphic type "' + graphicType + '" can not be found.'; + } + throwError(errMsg); + } + el = new Clz(); + } + customInnerStore(el).customGraphicType = graphicType; + el.name = elOption.name; + // Compat ec4: the default z2 lift is 1. If changing the number, + // some cases probably be broken: hierarchy layout along z, like circle packing, + // where emphasis only intending to modify color/border rather than lift z2. + el.z2EmphasisLift = 1; + el.z2SelectLift = 1; + return el; + } + function updateElNormal( + // Can be null/undefined + api, el, dataIndex, elOption, attachedTxInfo, seriesModel, isInit) { + // Stop and restore before update any other attributes. + stopPreviousKeyframeAnimationAndRestore(el); + var txCfgOpt = attachedTxInfo && attachedTxInfo.normal.cfg; + if (txCfgOpt) { + // PENDING: whether use user object directly rather than clone? + // TODO:5.0 textConfig transition animation? + el.setTextConfig(txCfgOpt); + } + // Default transition ['x', 'y'] + if (elOption && elOption.transition == null) { + elOption.transition = DEFAULT_TRANSITION; + } + // Do some normalization on style. + var styleOpt = elOption && elOption.style; + if (styleOpt) { + if (el.type === 'text') { + var textOptionStyle = styleOpt; + // Compatible with ec4: if `textFill` or `textStroke` exists use them. + hasOwn(textOptionStyle, 'textFill') && (textOptionStyle.fill = textOptionStyle.textFill); + hasOwn(textOptionStyle, 'textStroke') && (textOptionStyle.stroke = textOptionStyle.textStroke); + } + var decalPattern = void 0; + var decalObj = isPath$1(el) ? styleOpt.decal : null; + if (api && decalObj) { + decalObj.dirty = true; + decalPattern = createOrUpdatePatternFromDecal(decalObj, api); + } + // Always overwrite in case user specify this prop. + styleOpt.__decalPattern = decalPattern; + } + if (isDisplayable(el)) { + if (styleOpt) { + var decalPattern = styleOpt.__decalPattern; + if (decalPattern) { + styleOpt.decal = decalPattern; + } + } + } + applyUpdateTransition(el, elOption, seriesModel, { + dataIndex: dataIndex, + isInit: isInit, + clearStyle: true + }); + applyKeyframeAnimation(el, elOption.keyframeAnimation, seriesModel); + } + function updateElOnState(state, el, elStateOpt, styleOpt, attachedTxInfo) { + var elDisplayable = el.isGroup ? null : el; + var txCfgOpt = attachedTxInfo && attachedTxInfo[state].cfg; + // PENDING:5.0 support customize scale change and transition animation? + if (elDisplayable) { + // By default support auto lift color when hover whether `emphasis` specified. + var stateObj = elDisplayable.ensureState(state); + if (styleOpt === false) { + var existingEmphasisState = elDisplayable.getState(state); + if (existingEmphasisState) { + existingEmphasisState.style = null; + } + } else { + // style is needed to enable default emphasis. + stateObj.style = styleOpt || null; + } + // If `elOption.styleEmphasis` or `elOption.emphasis.style` is `false`, + // remove hover style. + // If `elOption.textConfig` or `elOption.emphasis.textConfig` is null/undefined, it does not + // make sense. So for simplicity, we do not ditinguish `hasOwnProperty` and null/undefined. + if (txCfgOpt) { + stateObj.textConfig = txCfgOpt; + } + setDefaultStateProxy(elDisplayable); + } + } + function updateZ$1(el, elOption, seriesModel) { + // Group not support textContent and not support z yet. + if (el.isGroup) { + return; + } + var elDisplayable = el; + var currentZ = seriesModel.currentZ; + var currentZLevel = seriesModel.currentZLevel; + // Always erase. + elDisplayable.z = currentZ; + elDisplayable.zlevel = currentZLevel; + // z2 must not be null/undefined, otherwise sort error may occur. + var optZ2 = elOption.z2; + optZ2 != null && (elDisplayable.z2 = optZ2 || 0); + for (var i = 0; i < STATES.length; i++) { + updateZForEachState(elDisplayable, elOption, STATES[i]); + } + } + function updateZForEachState(elDisplayable, elOption, state) { + var isNormal = state === NORMAL; + var elStateOpt = isNormal ? elOption : retrieveStateOption(elOption, state); + var optZ2 = elStateOpt ? elStateOpt.z2 : null; + var stateObj; + if (optZ2 != null) { + // Do not `ensureState` until required. + stateObj = isNormal ? elDisplayable : elDisplayable.ensureState(state); + stateObj.z2 = optZ2 || 0; + } + } + function makeRenderItem(customSeries, data, ecModel, api) { + var renderItem = customSeries.get('renderItem'); + var coordSys = customSeries.coordinateSystem; + var prepareResult = {}; + if (coordSys) { + if ("development" !== 'production') { + assert(renderItem, 'series.render is required.'); + assert(coordSys.prepareCustoms || prepareCustoms[coordSys.type], 'This coordSys does not support custom series.'); + } + // `coordSys.prepareCustoms` is used for external coord sys like bmap. + prepareResult = coordSys.prepareCustoms ? coordSys.prepareCustoms(coordSys) : prepareCustoms[coordSys.type](coordSys); + } + var userAPI = defaults({ + getWidth: api.getWidth, + getHeight: api.getHeight, + getZr: api.getZr, + getDevicePixelRatio: api.getDevicePixelRatio, + value: value, + style: style, + ordinalRawValue: ordinalRawValue, + styleEmphasis: styleEmphasis, + visual: visual, + barLayout: barLayout, + currentSeriesIndices: currentSeriesIndices, + font: font + }, prepareResult.api || {}); + var userParams = { + // The life cycle of context: current round of rendering. + // The global life cycle is probably not necessary, because + // user can store global status by themselves. + context: {}, + seriesId: customSeries.id, + seriesName: customSeries.name, + seriesIndex: customSeries.seriesIndex, + coordSys: prepareResult.coordSys, + dataInsideLength: data.count(), + encode: wrapEncodeDef(customSeries.getData()) + }; + // If someday intending to refactor them to a class, should consider do not + // break change: currently these attribute member are encapsulated in a closure + // so that do not need to force user to call these method with a scope. + // Do not support call `api` asynchronously without dataIndexInside input. + var currDataIndexInside; + var currItemModel; + var currItemStyleModels = {}; + var currLabelModels = {}; + var seriesItemStyleModels = {}; + var seriesLabelModels = {}; + for (var i = 0; i < STATES.length; i++) { + var stateName = STATES[i]; + seriesItemStyleModels[stateName] = customSeries.getModel(PATH_ITEM_STYLE[stateName]); + seriesLabelModels[stateName] = customSeries.getModel(PATH_LABEL[stateName]); + } + function getItemModel(dataIndexInside) { + return dataIndexInside === currDataIndexInside ? currItemModel || (currItemModel = data.getItemModel(dataIndexInside)) : data.getItemModel(dataIndexInside); + } + function getItemStyleModel(dataIndexInside, state) { + return !data.hasItemOption ? seriesItemStyleModels[state] : dataIndexInside === currDataIndexInside ? currItemStyleModels[state] || (currItemStyleModels[state] = getItemModel(dataIndexInside).getModel(PATH_ITEM_STYLE[state])) : getItemModel(dataIndexInside).getModel(PATH_ITEM_STYLE[state]); + } + function getLabelModel(dataIndexInside, state) { + return !data.hasItemOption ? seriesLabelModels[state] : dataIndexInside === currDataIndexInside ? currLabelModels[state] || (currLabelModels[state] = getItemModel(dataIndexInside).getModel(PATH_LABEL[state])) : getItemModel(dataIndexInside).getModel(PATH_LABEL[state]); + } + return function (dataIndexInside, payload) { + currDataIndexInside = dataIndexInside; + currItemModel = null; + currItemStyleModels = {}; + currLabelModels = {}; + return renderItem && renderItem(defaults({ + dataIndexInside: dataIndexInside, + dataIndex: data.getRawIndex(dataIndexInside), + // Can be used for optimization when zoom or roam. + actionType: payload ? payload.type : null + }, userParams), userAPI); + }; + /** + * @public + * @param dim by default 0. + * @param dataIndexInside by default `currDataIndexInside`. + */ + function value(dim, dataIndexInside) { + dataIndexInside == null && (dataIndexInside = currDataIndexInside); + return data.getStore().get(data.getDimensionIndex(dim || 0), dataIndexInside); + } + /** + * @public + * @param dim by default 0. + * @param dataIndexInside by default `currDataIndexInside`. + */ + function ordinalRawValue(dim, dataIndexInside) { + dataIndexInside == null && (dataIndexInside = currDataIndexInside); + dim = dim || 0; + var dimInfo = data.getDimensionInfo(dim); + if (!dimInfo) { + var dimIndex = data.getDimensionIndex(dim); + return dimIndex >= 0 ? data.getStore().get(dimIndex, dataIndexInside) : undefined; + } + var val = data.get(dimInfo.name, dataIndexInside); + var ordinalMeta = dimInfo && dimInfo.ordinalMeta; + return ordinalMeta ? ordinalMeta.categories[val] : val; + } + /** + * @deprecated The original intention of `api.style` is enable to set itemStyle + * like other series. But it is not necessary and not easy to give a strict definition + * of what it returns. And since echarts5 it needs to be make compat work. So + * deprecates it since echarts5. + * + * By default, `visual` is applied to style (to support visualMap). + * `visual.color` is applied at `fill`. If user want apply visual.color on `stroke`, + * it can be implemented as: + * `api.style({stroke: api.visual('color'), fill: null})`; + * + * [Compat]: since ec5, RectText has been separated from its hosts el. + * so `api.style()` will only return the style from `itemStyle` but not handle `label` + * any more. But `series.label` config is never published in doc. + * We still compat it in `api.style()`. But not encourage to use it and will still not + * to pulish it to doc. + * @public + * @param dataIndexInside by default `currDataIndexInside`. + */ + function style(userProps, dataIndexInside) { + if ("development" !== 'production') { + warnDeprecated('api.style', 'Please write literal style directly instead.'); + } + dataIndexInside == null && (dataIndexInside = currDataIndexInside); + var style = data.getItemVisual(dataIndexInside, 'style'); + var visualColor = style && style.fill; + var opacity = style && style.opacity; + var itemStyle = getItemStyleModel(dataIndexInside, NORMAL).getItemStyle(); + visualColor != null && (itemStyle.fill = visualColor); + opacity != null && (itemStyle.opacity = opacity); + var opt = { + inheritColor: isString(visualColor) ? visualColor : '#000' + }; + var labelModel = getLabelModel(dataIndexInside, NORMAL); + // Now that the feature of "auto adjust text fill/stroke" has been migrated to zrender + // since ec5, we should set `isAttached` as `false` here and make compat in + // `convertToEC4StyleForCustomSerise`. + var textStyle = createTextStyle(labelModel, null, opt, false, true); + textStyle.text = labelModel.getShallow('show') ? retrieve2(customSeries.getFormattedLabel(dataIndexInside, NORMAL), getDefaultLabel(data, dataIndexInside)) : null; + var textConfig = createTextConfig(labelModel, opt, false); + preFetchFromExtra(userProps, itemStyle); + itemStyle = convertToEC4StyleForCustomSerise(itemStyle, textStyle, textConfig); + userProps && applyUserPropsAfter(itemStyle, userProps); + itemStyle.legacy = true; + return itemStyle; + } + /** + * @deprecated The reason see `api.style()` + * @public + * @param dataIndexInside by default `currDataIndexInside`. + */ + function styleEmphasis(userProps, dataIndexInside) { + if ("development" !== 'production') { + warnDeprecated('api.styleEmphasis', 'Please write literal style directly instead.'); + } + dataIndexInside == null && (dataIndexInside = currDataIndexInside); + var itemStyle = getItemStyleModel(dataIndexInside, EMPHASIS).getItemStyle(); + var labelModel = getLabelModel(dataIndexInside, EMPHASIS); + var textStyle = createTextStyle(labelModel, null, null, true, true); + textStyle.text = labelModel.getShallow('show') ? retrieve3(customSeries.getFormattedLabel(dataIndexInside, EMPHASIS), customSeries.getFormattedLabel(dataIndexInside, NORMAL), getDefaultLabel(data, dataIndexInside)) : null; + var textConfig = createTextConfig(labelModel, null, true); + preFetchFromExtra(userProps, itemStyle); + itemStyle = convertToEC4StyleForCustomSerise(itemStyle, textStyle, textConfig); + userProps && applyUserPropsAfter(itemStyle, userProps); + itemStyle.legacy = true; + return itemStyle; + } + function applyUserPropsAfter(itemStyle, extra) { + for (var key in extra) { + if (hasOwn(extra, key)) { + itemStyle[key] = extra[key]; + } + } + } + function preFetchFromExtra(extra, itemStyle) { + // A trick to retrieve those props firstly, which are used to + // apply auto inside fill/stroke in `convertToEC4StyleForCustomSerise`. + // (It's not reasonable but only for a degree of compat) + if (extra) { + extra.textFill && (itemStyle.textFill = extra.textFill); + extra.textPosition && (itemStyle.textPosition = extra.textPosition); + } + } + /** + * @public + * @param dataIndexInside by default `currDataIndexInside`. + */ + function visual(visualType, dataIndexInside) { + dataIndexInside == null && (dataIndexInside = currDataIndexInside); + if (hasOwn(STYLE_VISUAL_TYPE, visualType)) { + var style_1 = data.getItemVisual(dataIndexInside, 'style'); + return style_1 ? style_1[STYLE_VISUAL_TYPE[visualType]] : null; + } + // Only support these visuals. Other visual might be inner tricky + // for performance (like `style`), do not expose to users. + if (hasOwn(NON_STYLE_VISUAL_PROPS, visualType)) { + return data.getItemVisual(dataIndexInside, visualType); + } + } + /** + * @public + * @return If not support, return undefined. + */ + function barLayout(opt) { + if (coordSys.type === 'cartesian2d') { + var baseAxis = coordSys.getBaseAxis(); + return getLayoutOnAxis(defaults({ + axis: baseAxis + }, opt)); + } + } + /** + * @public + */ + function currentSeriesIndices() { + return ecModel.getCurrentSeriesIndices(); + } + /** + * @public + * @return font string + */ + function font(opt) { + return getFont(opt, ecModel); + } + } + function wrapEncodeDef(data) { + var encodeDef = {}; + each(data.dimensions, function (dimName) { + var dimInfo = data.getDimensionInfo(dimName); + if (!dimInfo.isExtraCoord) { + var coordDim = dimInfo.coordDim; + var dataDims = encodeDef[coordDim] = encodeDef[coordDim] || []; + dataDims[dimInfo.coordDimIndex] = data.getDimensionIndex(dimName); + } + }); + return encodeDef; + } + function createOrUpdateItem(api, existsEl, dataIndex, elOption, seriesModel, group, data) { + // [Rule] + // If `renderItem` returns `null`/`undefined`/`false`, remove the previous el if existing. + // (It seems that violate the "merge" principle, but most of users probably intuitively + // regard "return;" as "show nothing element whatever", so make a exception to meet the + // most cases.) + // The rule or "merge" see [STRATEGY_MERGE]. + // If `elOption` is `null`/`undefined`/`false` (when `renderItem` returns nothing). + if (!elOption) { + group.remove(existsEl); + return; + } + var el = doCreateOrUpdateEl(api, existsEl, dataIndex, elOption, seriesModel, group); + el && data.setItemGraphicEl(dataIndex, el); + el && toggleHoverEmphasis(el, elOption.focus, elOption.blurScope, elOption.emphasisDisabled); + return el; + } + function doCreateOrUpdateEl(api, existsEl, dataIndex, elOption, seriesModel, group) { + if ("development" !== 'production') { + assert(elOption, 'should not have an null/undefined element setting'); + } + var toBeReplacedIdx = -1; + var oldEl = existsEl; + if (existsEl && doesElNeedRecreate(existsEl, elOption, seriesModel) + // || ( + // // PENDING: even in one-to-one mapping case, if el is marked as morph, + // // do not sure whether the el will be mapped to another el with different + // // hierarchy in Group tree. So always recreate el rather than reuse the el. + // morphHelper && morphHelper.isOneToOneFrom(el) + // ) + ) { + // Should keep at the original index, otherwise "merge by index" will be incorrect. + toBeReplacedIdx = indexOf(group.childrenRef(), existsEl); + existsEl = null; + } + var isInit = !existsEl; + var el = existsEl; + if (!el) { + el = createEl(elOption); + if (oldEl) { + copyElement(oldEl, el); + } + } else { + // FIMXE:NEXT unified clearState? + // If in some case the performance issue arised, consider + // do not clearState but update cached normal state directly. + el.clearStates(); + } + // Need to set morph: false explictly to disable automatically morphing. + if (elOption.morph === false) { + el.disableMorphing = true; + } else if (el.disableMorphing) { + el.disableMorphing = false; + } + attachedTxInfoTmp.normal.cfg = attachedTxInfoTmp.normal.conOpt = attachedTxInfoTmp.emphasis.cfg = attachedTxInfoTmp.emphasis.conOpt = attachedTxInfoTmp.blur.cfg = attachedTxInfoTmp.blur.conOpt = attachedTxInfoTmp.select.cfg = attachedTxInfoTmp.select.conOpt = null; + attachedTxInfoTmp.isLegacy = false; + doCreateOrUpdateAttachedTx(el, dataIndex, elOption, seriesModel, isInit, attachedTxInfoTmp); + doCreateOrUpdateClipPath(el, dataIndex, elOption, seriesModel, isInit); + updateElNormal(api, el, dataIndex, elOption, attachedTxInfoTmp, seriesModel, isInit); + // `elOption.info` enables user to mount some info on + // elements and use them in event handlers. + // Update them only when user specified, otherwise, remain. + hasOwn(elOption, 'info') && (customInnerStore(el).info = elOption.info); + for (var i = 0; i < STATES.length; i++) { + var stateName = STATES[i]; + if (stateName !== NORMAL) { + var otherStateOpt = retrieveStateOption(elOption, stateName); + var otherStyleOpt = retrieveStyleOptionOnState(elOption, otherStateOpt, stateName); + updateElOnState(stateName, el, otherStateOpt, otherStyleOpt, attachedTxInfoTmp); + } + } + updateZ$1(el, elOption, seriesModel); + if (elOption.type === 'group') { + mergeChildren(api, el, dataIndex, elOption, seriesModel); + } + if (toBeReplacedIdx >= 0) { + group.replaceAt(el, toBeReplacedIdx); + } else { + group.add(el); + } + return el; + } + // `el` must not be null/undefined. + function doesElNeedRecreate(el, elOption, seriesModel) { + var elInner = customInnerStore(el); + var elOptionType = elOption.type; + var elOptionShape = elOption.shape; + var elOptionStyle = elOption.style; + return ( + // Always create new if universal transition is enabled. + // Because we do transition after render. It needs to know what old element is. Replacement will loose it. + seriesModel.isUniversalTransitionEnabled() + // If `elOptionType` is `null`, follow the merge principle. + || elOptionType != null && elOptionType !== elInner.customGraphicType || elOptionType === 'path' && hasOwnPathData(elOptionShape) && getPathData(elOptionShape) !== elInner.customPathData || elOptionType === 'image' && hasOwn(elOptionStyle, 'image') && elOptionStyle.image !== elInner.customImagePath + // // FIXME test and remove this restriction? + // || (elOptionType === 'text' + // && hasOwn(elOptionStyle, 'text') + // && (elOptionStyle as TextStyleProps).text !== elInner.customText + // ) + ); + } + + function doCreateOrUpdateClipPath(el, dataIndex, elOption, seriesModel, isInit) { + // Based on the "merge" principle, if no clipPath provided, + // do nothing. The exists clip will be totally removed only if + // `el.clipPath` is `false`. Otherwise it will be merged/replaced. + var clipPathOpt = elOption.clipPath; + if (clipPathOpt === false) { + if (el && el.getClipPath()) { + el.removeClipPath(); + } + } else if (clipPathOpt) { + var clipPath = el.getClipPath(); + if (clipPath && doesElNeedRecreate(clipPath, clipPathOpt, seriesModel)) { + clipPath = null; + } + if (!clipPath) { + clipPath = createEl(clipPathOpt); + if ("development" !== 'production') { + assert(isPath$1(clipPath), 'Only any type of `path` can be used in `clipPath`, rather than ' + clipPath.type + '.'); + } + el.setClipPath(clipPath); + } + updateElNormal(null, clipPath, dataIndex, clipPathOpt, null, seriesModel, isInit); + } + // If not define `clipPath` in option, do nothing unnecessary. + } + + function doCreateOrUpdateAttachedTx(el, dataIndex, elOption, seriesModel, isInit, attachedTxInfo) { + // Group does not support textContent temporarily until necessary. + if (el.isGroup) { + return; + } + // Normal must be called before emphasis, for `isLegacy` detection. + processTxInfo(elOption, null, attachedTxInfo); + processTxInfo(elOption, EMPHASIS, attachedTxInfo); + // If `elOption.textConfig` or `elOption.textContent` is null/undefined, it does not make sense. + // So for simplicity, if "elOption hasOwnProperty of them but be null/undefined", we do not + // trade them as set to null to el. + // Especially: + // `elOption.textContent: false` means remove textContent. + // `elOption.textContent.emphasis.style: false` means remove the style from emphasis state. + var txConOptNormal = attachedTxInfo.normal.conOpt; + var txConOptEmphasis = attachedTxInfo.emphasis.conOpt; + var txConOptBlur = attachedTxInfo.blur.conOpt; + var txConOptSelect = attachedTxInfo.select.conOpt; + if (txConOptNormal != null || txConOptEmphasis != null || txConOptSelect != null || txConOptBlur != null) { + var textContent = el.getTextContent(); + if (txConOptNormal === false) { + textContent && el.removeTextContent(); + } else { + txConOptNormal = attachedTxInfo.normal.conOpt = txConOptNormal || { + type: 'text' + }; + if (!textContent) { + textContent = createEl(txConOptNormal); + el.setTextContent(textContent); + } else { + // If in some case the performance issue arised, consider + // do not clearState but update cached normal state directly. + textContent.clearStates(); + } + updateElNormal(null, textContent, dataIndex, txConOptNormal, null, seriesModel, isInit); + var txConStlOptNormal = txConOptNormal && txConOptNormal.style; + for (var i = 0; i < STATES.length; i++) { + var stateName = STATES[i]; + if (stateName !== NORMAL) { + var txConOptOtherState = attachedTxInfo[stateName].conOpt; + updateElOnState(stateName, textContent, txConOptOtherState, retrieveStyleOptionOnState(txConOptNormal, txConOptOtherState, stateName), null); + } + } + txConStlOptNormal ? textContent.dirty() : textContent.markRedraw(); + } + } + } + function processTxInfo(elOption, state, attachedTxInfo) { + var stateOpt = !state ? elOption : retrieveStateOption(elOption, state); + var styleOpt = !state ? elOption.style : retrieveStyleOptionOnState(elOption, stateOpt, EMPHASIS); + var elType = elOption.type; + var txCfg = stateOpt ? stateOpt.textConfig : null; + var txConOptNormal = elOption.textContent; + var txConOpt = !txConOptNormal ? null : !state ? txConOptNormal : retrieveStateOption(txConOptNormal, state); + if (styleOpt && ( + // Because emphasis style has little info to detect legacy, + // if normal is legacy, emphasis is trade as legacy. + attachedTxInfo.isLegacy || isEC4CompatibleStyle(styleOpt, elType, !!txCfg, !!txConOpt))) { + attachedTxInfo.isLegacy = true; + var convertResult = convertFromEC4CompatibleStyle(styleOpt, elType, !state); + // Explicitly specified `textConfig` and `textContent` has higher priority than + // the ones generated by legacy style. Otherwise if users use them and `api.style` + // at the same time, they not both work and hardly to known why. + if (!txCfg && convertResult.textConfig) { + txCfg = convertResult.textConfig; + } + if (!txConOpt && convertResult.textContent) { + txConOpt = convertResult.textContent; + } + } + if (!state && txConOpt) { + var txConOptNormal_1 = txConOpt; + // `textContent: {type: 'text'}`, the "type" is easy to be missing. So we tolerate it. + !txConOptNormal_1.type && (txConOptNormal_1.type = 'text'); + if ("development" !== 'production') { + // Do not tolerate incorrcet type for forward compat. + assert(txConOptNormal_1.type === 'text', 'textContent.type must be "text"'); + } + } + var info = !state ? attachedTxInfo.normal : attachedTxInfo[state]; + info.cfg = txCfg; + info.conOpt = txConOpt; + } + function retrieveStateOption(elOption, state) { + return !state ? elOption : elOption ? elOption[state] : null; + } + function retrieveStyleOptionOnState(stateOptionNormal, stateOption, state) { + var style = stateOption && stateOption.style; + if (style == null && state === EMPHASIS && stateOptionNormal) { + style = stateOptionNormal.styleEmphasis; + } + return style; + } + // Usage: + // (1) By default, `elOption.$mergeChildren` is `'byIndex'`, which indicates + // that the existing children will not be removed, and enables the feature + // that update some of the props of some of the children simply by construct + // the returned children of `renderItem` like: + // `var children = group.children = []; children[3] = {opacity: 0.5};` + // (2) If `elOption.$mergeChildren` is `'byName'`, add/update/remove children + // by child.name. But that might be lower performance. + // (3) If `elOption.$mergeChildren` is `false`, the existing children will be + // replaced totally. + // (4) If `!elOption.children`, following the "merge" principle, nothing will + // happen. + // (5) If `elOption.$mergeChildren` is not `false` neither `'byName'` and the + // `el` is a group, and if any of the new child is null, it means to remove + // the element at the same index, if exists. On the other hand, if the new + // child is and empty object `{}`, it means to keep the element not changed. + // + // For implementation simpleness, do not provide a direct way to remove single + // child (otherwise the total indices of the children array have to be modified). + // User can remove a single child by setting its `ignore` to `true`. + function mergeChildren(api, el, dataIndex, elOption, seriesModel) { + var newChildren = elOption.children; + var newLen = newChildren ? newChildren.length : 0; + var mergeChildren = elOption.$mergeChildren; + // `diffChildrenByName` has been deprecated. + var byName = mergeChildren === 'byName' || elOption.diffChildrenByName; + var notMerge = mergeChildren === false; + // For better performance on roam update, only enter if necessary. + if (!newLen && !byName && !notMerge) { + return; + } + if (byName) { + diffGroupChildren({ + api: api, + oldChildren: el.children() || [], + newChildren: newChildren || [], + dataIndex: dataIndex, + seriesModel: seriesModel, + group: el + }); + return; + } + notMerge && el.removeAll(); + // Mapping children of a group simply by index, which + // might be better performance. + var index = 0; + for (; index < newLen; index++) { + var newChild = newChildren[index]; + var oldChild = el.childAt(index); + if (newChild) { + if (newChild.ignore == null) { + // The old child is set to be ignored if null (see comments + // below). So we need to set ignore to be false back. + newChild.ignore = false; + } + doCreateOrUpdateEl(api, oldChild, dataIndex, newChild, seriesModel, el); + } else { + if ("development" !== 'production') { + assert(oldChild, 'renderItem should not return a group containing elements' + ' as null/undefined/{} if they do not exist before.'); + } + // If the new element option is null, it means to remove the old + // element. But we cannot really remove the element from the group + // directly, because the element order may not be stable when this + // element is added back. So we set the element to be ignored. + oldChild.ignore = true; + } + } + for (var i = el.childCount() - 1; i >= index; i--) { + var child = el.childAt(i); + removeChildFromGroup(el, child, seriesModel); + } + } + function removeChildFromGroup(group, child, seriesModel) { + // Do not support leave elements that are not mentioned in the latest + // `renderItem` return. Otherwise users may not have a clear and simple + // concept that how to control all of the elements. + child && applyLeaveTransition(child, customInnerStore(group).option, seriesModel); + } + function diffGroupChildren(context) { + new DataDiffer(context.oldChildren, context.newChildren, getKey, getKey, context).add(processAddUpdate).update(processAddUpdate).remove(processRemove).execute(); + } + function getKey(item, idx) { + var name = item && item.name; + return name != null ? name : GROUP_DIFF_PREFIX + idx; + } + function processAddUpdate(newIndex, oldIndex) { + var context = this.context; + var childOption = newIndex != null ? context.newChildren[newIndex] : null; + var child = oldIndex != null ? context.oldChildren[oldIndex] : null; + doCreateOrUpdateEl(context.api, child, context.dataIndex, childOption, context.seriesModel, context.group); + } + function processRemove(oldIndex) { + var context = this.context; + var child = context.oldChildren[oldIndex]; + child && applyLeaveTransition(child, customInnerStore(child).option, context.seriesModel); + } + /** + * @return SVG Path data. + */ + function getPathData(shape) { + // "d" follows the SVG convention. + return shape && (shape.pathData || shape.d); + } + function hasOwnPathData(shape) { + return shape && (hasOwn(shape, 'pathData') || hasOwn(shape, 'd')); + } + + function install$r(registers) { + registers.registerChartView(CustomChartView); + registers.registerSeriesModel(CustomSeriesModel); + } + + var inner$a = makeInner(); + var clone$3 = clone; + var bind$1 = bind; + /** + * Base axis pointer class in 2D. + */ + var BaseAxisPointer = /** @class */function () { + function BaseAxisPointer() { + this._dragging = false; + /** + * In px, arbitrary value. Do not set too small, + * no animation is ok for most cases. + */ + this.animationThreshold = 15; + } + /** + * @implement + */ + BaseAxisPointer.prototype.render = function (axisModel, axisPointerModel, api, forceRender) { + var value = axisPointerModel.get('value'); + var status = axisPointerModel.get('status'); + // Bind them to `this`, not in closure, otherwise they will not + // be replaced when user calling setOption in not merge mode. + this._axisModel = axisModel; + this._axisPointerModel = axisPointerModel; + this._api = api; + // Optimize: `render` will be called repeatedly during mouse move. + // So it is power consuming if performing `render` each time, + // especially on mobile device. + if (!forceRender && this._lastValue === value && this._lastStatus === status) { + return; + } + this._lastValue = value; + this._lastStatus = status; + var group = this._group; + var handle = this._handle; + if (!status || status === 'hide') { + // Do not clear here, for animation better. + group && group.hide(); + handle && handle.hide(); + return; + } + group && group.show(); + handle && handle.show(); + // Otherwise status is 'show' + var elOption = {}; + this.makeElOption(elOption, value, axisModel, axisPointerModel, api); + // Enable change axis pointer type. + var graphicKey = elOption.graphicKey; + if (graphicKey !== this._lastGraphicKey) { + this.clear(api); + } + this._lastGraphicKey = graphicKey; + var moveAnimation = this._moveAnimation = this.determineAnimation(axisModel, axisPointerModel); + if (!group) { + group = this._group = new Group(); + this.createPointerEl(group, elOption, axisModel, axisPointerModel); + this.createLabelEl(group, elOption, axisModel, axisPointerModel); + api.getZr().add(group); + } else { + var doUpdateProps = curry(updateProps$1, axisPointerModel, moveAnimation); + this.updatePointerEl(group, elOption, doUpdateProps); + this.updateLabelEl(group, elOption, doUpdateProps, axisPointerModel); + } + updateMandatoryProps(group, axisPointerModel, true); + this._renderHandle(value); + }; + /** + * @implement + */ + BaseAxisPointer.prototype.remove = function (api) { + this.clear(api); + }; + /** + * @implement + */ + BaseAxisPointer.prototype.dispose = function (api) { + this.clear(api); + }; + /** + * @protected + */ + BaseAxisPointer.prototype.determineAnimation = function (axisModel, axisPointerModel) { + var animation = axisPointerModel.get('animation'); + var axis = axisModel.axis; + var isCategoryAxis = axis.type === 'category'; + var useSnap = axisPointerModel.get('snap'); + // Value axis without snap always do not snap. + if (!useSnap && !isCategoryAxis) { + return false; + } + if (animation === 'auto' || animation == null) { + var animationThreshold = this.animationThreshold; + if (isCategoryAxis && axis.getBandWidth() > animationThreshold) { + return true; + } + // It is important to auto animation when snap used. Consider if there is + // a dataZoom, animation will be disabled when too many points exist, while + // it will be enabled for better visual effect when little points exist. + if (useSnap) { + var seriesDataCount = getAxisInfo(axisModel).seriesDataCount; + var axisExtent = axis.getExtent(); + // Approximate band width + return Math.abs(axisExtent[0] - axisExtent[1]) / seriesDataCount > animationThreshold; + } + return false; + } + return animation === true; + }; + /** + * add {pointer, label, graphicKey} to elOption + * @protected + */ + BaseAxisPointer.prototype.makeElOption = function (elOption, value, axisModel, axisPointerModel, api) { + // Should be implemenented by sub-class. + }; + /** + * @protected + */ + BaseAxisPointer.prototype.createPointerEl = function (group, elOption, axisModel, axisPointerModel) { + var pointerOption = elOption.pointer; + if (pointerOption) { + var pointerEl = inner$a(group).pointerEl = new graphic[pointerOption.type](clone$3(elOption.pointer)); + group.add(pointerEl); + } + }; + /** + * @protected + */ + BaseAxisPointer.prototype.createLabelEl = function (group, elOption, axisModel, axisPointerModel) { + if (elOption.label) { + var labelEl = inner$a(group).labelEl = new ZRText(clone$3(elOption.label)); + group.add(labelEl); + updateLabelShowHide(labelEl, axisPointerModel); + } + }; + /** + * @protected + */ + BaseAxisPointer.prototype.updatePointerEl = function (group, elOption, updateProps) { + var pointerEl = inner$a(group).pointerEl; + if (pointerEl && elOption.pointer) { + pointerEl.setStyle(elOption.pointer.style); + updateProps(pointerEl, { + shape: elOption.pointer.shape + }); + } + }; + /** + * @protected + */ + BaseAxisPointer.prototype.updateLabelEl = function (group, elOption, updateProps, axisPointerModel) { + var labelEl = inner$a(group).labelEl; + if (labelEl) { + labelEl.setStyle(elOption.label.style); + updateProps(labelEl, { + // Consider text length change in vertical axis, animation should + // be used on shape, otherwise the effect will be weird. + // TODOTODO + // shape: elOption.label.shape, + x: elOption.label.x, + y: elOption.label.y + }); + updateLabelShowHide(labelEl, axisPointerModel); + } + }; + /** + * @private + */ + BaseAxisPointer.prototype._renderHandle = function (value) { + if (this._dragging || !this.updateHandleTransform) { + return; + } + var axisPointerModel = this._axisPointerModel; + var zr = this._api.getZr(); + var handle = this._handle; + var handleModel = axisPointerModel.getModel('handle'); + var status = axisPointerModel.get('status'); + if (!handleModel.get('show') || !status || status === 'hide') { + handle && zr.remove(handle); + this._handle = null; + return; + } + var isInit; + if (!this._handle) { + isInit = true; + handle = this._handle = createIcon(handleModel.get('icon'), { + cursor: 'move', + draggable: true, + onmousemove: function (e) { + // For mobile device, prevent screen slider on the button. + stop(e.event); + }, + onmousedown: bind$1(this._onHandleDragMove, this, 0, 0), + drift: bind$1(this._onHandleDragMove, this), + ondragend: bind$1(this._onHandleDragEnd, this) + }); + zr.add(handle); + } + updateMandatoryProps(handle, axisPointerModel, false); + // update style + handle.setStyle(handleModel.getItemStyle(null, ['color', 'borderColor', 'borderWidth', 'opacity', 'shadowColor', 'shadowBlur', 'shadowOffsetX', 'shadowOffsetY'])); + // update position + var handleSize = handleModel.get('size'); + if (!isArray(handleSize)) { + handleSize = [handleSize, handleSize]; + } + handle.scaleX = handleSize[0] / 2; + handle.scaleY = handleSize[1] / 2; + createOrUpdate(this, '_doDispatchAxisPointer', handleModel.get('throttle') || 0, 'fixRate'); + this._moveHandleToValue(value, isInit); + }; + BaseAxisPointer.prototype._moveHandleToValue = function (value, isInit) { + updateProps$1(this._axisPointerModel, !isInit && this._moveAnimation, this._handle, getHandleTransProps(this.getHandleTransform(value, this._axisModel, this._axisPointerModel))); + }; + BaseAxisPointer.prototype._onHandleDragMove = function (dx, dy) { + var handle = this._handle; + if (!handle) { + return; + } + this._dragging = true; + // Persistent for throttle. + var trans = this.updateHandleTransform(getHandleTransProps(handle), [dx, dy], this._axisModel, this._axisPointerModel); + this._payloadInfo = trans; + handle.stopAnimation(); + handle.attr(getHandleTransProps(trans)); + inner$a(handle).lastProp = null; + this._doDispatchAxisPointer(); + }; + /** + * Throttled method. + */ + BaseAxisPointer.prototype._doDispatchAxisPointer = function () { + var handle = this._handle; + if (!handle) { + return; + } + var payloadInfo = this._payloadInfo; + var axisModel = this._axisModel; + this._api.dispatchAction({ + type: 'updateAxisPointer', + x: payloadInfo.cursorPoint[0], + y: payloadInfo.cursorPoint[1], + tooltipOption: payloadInfo.tooltipOption, + axesInfo: [{ + axisDim: axisModel.axis.dim, + axisIndex: axisModel.componentIndex + }] + }); + }; + BaseAxisPointer.prototype._onHandleDragEnd = function () { + this._dragging = false; + var handle = this._handle; + if (!handle) { + return; + } + var value = this._axisPointerModel.get('value'); + // Consider snap or categroy axis, handle may be not consistent with + // axisPointer. So move handle to align the exact value position when + // drag ended. + this._moveHandleToValue(value); + // For the effect: tooltip will be shown when finger holding on handle + // button, and will be hidden after finger left handle button. + this._api.dispatchAction({ + type: 'hideTip' + }); + }; + /** + * @private + */ + BaseAxisPointer.prototype.clear = function (api) { + this._lastValue = null; + this._lastStatus = null; + var zr = api.getZr(); + var group = this._group; + var handle = this._handle; + if (zr && group) { + this._lastGraphicKey = null; + group && zr.remove(group); + handle && zr.remove(handle); + this._group = null; + this._handle = null; + this._payloadInfo = null; + } + clear(this, '_doDispatchAxisPointer'); + }; + /** + * @protected + */ + BaseAxisPointer.prototype.doClear = function () { + // Implemented by sub-class if necessary. + }; + BaseAxisPointer.prototype.buildLabel = function (xy, wh, xDimIndex) { + xDimIndex = xDimIndex || 0; + return { + x: xy[xDimIndex], + y: xy[1 - xDimIndex], + width: wh[xDimIndex], + height: wh[1 - xDimIndex] + }; + }; + return BaseAxisPointer; + }(); + function updateProps$1(animationModel, moveAnimation, el, props) { + // Animation optimize. + if (!propsEqual(inner$a(el).lastProp, props)) { + inner$a(el).lastProp = props; + moveAnimation ? updateProps(el, props, animationModel) : (el.stopAnimation(), el.attr(props)); + } + } + function propsEqual(lastProps, newProps) { + if (isObject(lastProps) && isObject(newProps)) { + var equals_1 = true; + each(newProps, function (item, key) { + equals_1 = equals_1 && propsEqual(lastProps[key], item); + }); + return !!equals_1; + } else { + return lastProps === newProps; + } + } + function updateLabelShowHide(labelEl, axisPointerModel) { + labelEl[axisPointerModel.get(['label', 'show']) ? 'show' : 'hide'](); + } + function getHandleTransProps(trans) { + return { + x: trans.x || 0, + y: trans.y || 0, + rotation: trans.rotation || 0 + }; + } + function updateMandatoryProps(group, axisPointerModel, silent) { + var z = axisPointerModel.get('z'); + var zlevel = axisPointerModel.get('zlevel'); + group && group.traverse(function (el) { + if (el.type !== 'group') { + z != null && (el.z = z); + zlevel != null && (el.zlevel = zlevel); + el.silent = silent; + } + }); + } + + function buildElStyle(axisPointerModel) { + var axisPointerType = axisPointerModel.get('type'); + var styleModel = axisPointerModel.getModel(axisPointerType + 'Style'); + var style; + if (axisPointerType === 'line') { + style = styleModel.getLineStyle(); + style.fill = null; + } else if (axisPointerType === 'shadow') { + style = styleModel.getAreaStyle(); + style.stroke = null; + } + return style; + } + /** + * @param {Function} labelPos {align, verticalAlign, position} + */ + function buildLabelElOption(elOption, axisModel, axisPointerModel, api, labelPos) { + var value = axisPointerModel.get('value'); + var text = getValueLabel(value, axisModel.axis, axisModel.ecModel, axisPointerModel.get('seriesDataIndices'), { + precision: axisPointerModel.get(['label', 'precision']), + formatter: axisPointerModel.get(['label', 'formatter']) + }); + var labelModel = axisPointerModel.getModel('label'); + var paddings = normalizeCssArray$1(labelModel.get('padding') || 0); + var font = labelModel.getFont(); + var textRect = getBoundingRect(text, font); + var position = labelPos.position; + var width = textRect.width + paddings[1] + paddings[3]; + var height = textRect.height + paddings[0] + paddings[2]; + // Adjust by align. + var align = labelPos.align; + align === 'right' && (position[0] -= width); + align === 'center' && (position[0] -= width / 2); + var verticalAlign = labelPos.verticalAlign; + verticalAlign === 'bottom' && (position[1] -= height); + verticalAlign === 'middle' && (position[1] -= height / 2); + // Not overflow ec container + confineInContainer(position, width, height, api); + var bgColor = labelModel.get('backgroundColor'); + if (!bgColor || bgColor === 'auto') { + bgColor = axisModel.get(['axisLine', 'lineStyle', 'color']); + } + elOption.label = { + // shape: {x: 0, y: 0, width: width, height: height, r: labelModel.get('borderRadius')}, + x: position[0], + y: position[1], + style: createTextStyle(labelModel, { + text: text, + font: font, + fill: labelModel.getTextColor(), + padding: paddings, + backgroundColor: bgColor + }), + // Label should be over axisPointer. + z2: 10 + }; + } + // Do not overflow ec container + function confineInContainer(position, width, height, api) { + var viewWidth = api.getWidth(); + var viewHeight = api.getHeight(); + position[0] = Math.min(position[0] + width, viewWidth) - width; + position[1] = Math.min(position[1] + height, viewHeight) - height; + position[0] = Math.max(position[0], 0); + position[1] = Math.max(position[1], 0); + } + function getValueLabel(value, axis, ecModel, seriesDataIndices, opt) { + value = axis.scale.parse(value); + var text = axis.scale.getLabel({ + value: value + }, { + // If `precision` is set, width can be fixed (like '12.00500'), which + // helps to debounce when when moving label. + precision: opt.precision + }); + var formatter = opt.formatter; + if (formatter) { + var params_1 = { + value: getAxisRawValue(axis, { + value: value + }), + axisDimension: axis.dim, + axisIndex: axis.index, + seriesData: [] + }; + each(seriesDataIndices, function (idxItem) { + var series = ecModel.getSeriesByIndex(idxItem.seriesIndex); + var dataIndex = idxItem.dataIndexInside; + var dataParams = series && series.getDataParams(dataIndex); + dataParams && params_1.seriesData.push(dataParams); + }); + if (isString(formatter)) { + text = formatter.replace('{value}', text); + } else if (isFunction(formatter)) { + text = formatter(params_1); + } + } + return text; + } + function getTransformedPosition(axis, value, layoutInfo) { + var transform = create$1(); + rotate(transform, transform, layoutInfo.rotation); + translate(transform, transform, layoutInfo.position); + return applyTransform$1([axis.dataToCoord(value), (layoutInfo.labelOffset || 0) + (layoutInfo.labelDirection || 1) * (layoutInfo.labelMargin || 0)], transform); + } + function buildCartesianSingleLabelElOption(value, elOption, layoutInfo, axisModel, axisPointerModel, api) { + // @ts-ignore + var textLayout = AxisBuilder.innerTextLayout(layoutInfo.rotation, 0, layoutInfo.labelDirection); + layoutInfo.labelMargin = axisPointerModel.get(['label', 'margin']); + buildLabelElOption(elOption, axisModel, axisPointerModel, api, { + position: getTransformedPosition(axisModel.axis, value, layoutInfo), + align: textLayout.textAlign, + verticalAlign: textLayout.textVerticalAlign + }); + } + function makeLineShape(p1, p2, xDimIndex) { + xDimIndex = xDimIndex || 0; + return { + x1: p1[xDimIndex], + y1: p1[1 - xDimIndex], + x2: p2[xDimIndex], + y2: p2[1 - xDimIndex] + }; + } + function makeRectShape(xy, wh, xDimIndex) { + xDimIndex = xDimIndex || 0; + return { + x: xy[xDimIndex], + y: xy[1 - xDimIndex], + width: wh[xDimIndex], + height: wh[1 - xDimIndex] + }; + } + function makeSectorShape(cx, cy, r0, r, startAngle, endAngle) { + return { + cx: cx, + cy: cy, + r0: r0, + r: r, + startAngle: startAngle, + endAngle: endAngle, + clockwise: true + }; + } + + var CartesianAxisPointer = /** @class */function (_super) { + __extends(CartesianAxisPointer, _super); + function CartesianAxisPointer() { + return _super !== null && _super.apply(this, arguments) || this; + } + /** + * @override + */ + CartesianAxisPointer.prototype.makeElOption = function (elOption, value, axisModel, axisPointerModel, api) { + var axis = axisModel.axis; + var grid = axis.grid; + var axisPointerType = axisPointerModel.get('type'); + var otherExtent = getCartesian(grid, axis).getOtherAxis(axis).getGlobalExtent(); + var pixelValue = axis.toGlobalCoord(axis.dataToCoord(value, true)); + if (axisPointerType && axisPointerType !== 'none') { + var elStyle = buildElStyle(axisPointerModel); + var pointerOption = pointerShapeBuilder[axisPointerType](axis, pixelValue, otherExtent); + pointerOption.style = elStyle; + elOption.graphicKey = pointerOption.type; + elOption.pointer = pointerOption; + } + var layoutInfo = layout$1(grid.model, axisModel); + buildCartesianSingleLabelElOption( + // @ts-ignore + value, elOption, layoutInfo, axisModel, axisPointerModel, api); + }; + /** + * @override + */ + CartesianAxisPointer.prototype.getHandleTransform = function (value, axisModel, axisPointerModel) { + var layoutInfo = layout$1(axisModel.axis.grid.model, axisModel, { + labelInside: false + }); + // @ts-ignore + layoutInfo.labelMargin = axisPointerModel.get(['handle', 'margin']); + var pos = getTransformedPosition(axisModel.axis, value, layoutInfo); + return { + x: pos[0], + y: pos[1], + rotation: layoutInfo.rotation + (layoutInfo.labelDirection < 0 ? Math.PI : 0) + }; + }; + /** + * @override + */ + CartesianAxisPointer.prototype.updateHandleTransform = function (transform, delta, axisModel, axisPointerModel) { + var axis = axisModel.axis; + var grid = axis.grid; + var axisExtent = axis.getGlobalExtent(true); + var otherExtent = getCartesian(grid, axis).getOtherAxis(axis).getGlobalExtent(); + var dimIndex = axis.dim === 'x' ? 0 : 1; + var currPosition = [transform.x, transform.y]; + currPosition[dimIndex] += delta[dimIndex]; + currPosition[dimIndex] = Math.min(axisExtent[1], currPosition[dimIndex]); + currPosition[dimIndex] = Math.max(axisExtent[0], currPosition[dimIndex]); + var cursorOtherValue = (otherExtent[1] + otherExtent[0]) / 2; + var cursorPoint = [cursorOtherValue, cursorOtherValue]; + cursorPoint[dimIndex] = currPosition[dimIndex]; + // Make tooltip do not overlap axisPointer and in the middle of the grid. + var tooltipOptions = [{ + verticalAlign: 'middle' + }, { + align: 'center' + }]; + return { + x: currPosition[0], + y: currPosition[1], + rotation: transform.rotation, + cursorPoint: cursorPoint, + tooltipOption: tooltipOptions[dimIndex] + }; + }; + return CartesianAxisPointer; + }(BaseAxisPointer); + function getCartesian(grid, axis) { + var opt = {}; + opt[axis.dim + 'AxisIndex'] = axis.index; + return grid.getCartesian(opt); + } + var pointerShapeBuilder = { + line: function (axis, pixelValue, otherExtent) { + var targetShape = makeLineShape([pixelValue, otherExtent[0]], [pixelValue, otherExtent[1]], getAxisDimIndex(axis)); + return { + type: 'Line', + subPixelOptimize: true, + shape: targetShape + }; + }, + shadow: function (axis, pixelValue, otherExtent) { + var bandWidth = Math.max(1, axis.getBandWidth()); + var span = otherExtent[1] - otherExtent[0]; + return { + type: 'Rect', + shape: makeRectShape([pixelValue - bandWidth / 2, otherExtent[0]], [bandWidth, span], getAxisDimIndex(axis)) + }; + } + }; + function getAxisDimIndex(axis) { + return axis.dim === 'x' ? 0 : 1; + } + + var AxisPointerModel = /** @class */function (_super) { + __extends(AxisPointerModel, _super); + function AxisPointerModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = AxisPointerModel.type; + return _this; + } + AxisPointerModel.type = 'axisPointer'; + AxisPointerModel.defaultOption = { + // 'auto' means that show when triggered by tooltip or handle. + show: 'auto', + // zlevel: 0, + z: 50, + type: 'line', + // axispointer triggered by tootip determine snap automatically, + // see `modelHelper`. + snap: false, + triggerTooltip: true, + triggerEmphasis: true, + value: null, + status: null, + link: [], + // Do not set 'auto' here, otherwise global animation: false + // will not effect at this axispointer. + animation: null, + animationDurationUpdate: 200, + lineStyle: { + color: '#B9BEC9', + width: 1, + type: 'dashed' + }, + shadowStyle: { + color: 'rgba(210,219,238,0.2)' + }, + label: { + show: true, + formatter: null, + precision: 'auto', + margin: 3, + color: '#fff', + padding: [5, 7, 5, 7], + backgroundColor: 'auto', + borderColor: null, + borderWidth: 0, + borderRadius: 3 + }, + handle: { + show: false, + // eslint-disable-next-line + 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, + // handle margin is from symbol center to axis, which is stable when circular move. + margin: 50, + // color: '#1b8bbd' + // color: '#2f4554' + color: '#333', + shadowBlur: 3, + shadowColor: '#aaa', + shadowOffsetX: 0, + shadowOffsetY: 2, + // For mobile performance + throttle: 40 + } + }; + return AxisPointerModel; + }(ComponentModel); + + var inner$b = makeInner(); + var each$7 = each; + /** + * @param {string} key + * @param {module:echarts/ExtensionAPI} api + * @param {Function} handler + * param: {string} currTrigger + * param: {Array.<number>} point + */ + function register(key, api, handler) { + if (env.node) { + return; + } + var zr = api.getZr(); + inner$b(zr).records || (inner$b(zr).records = {}); + initGlobalListeners(zr, api); + var record = inner$b(zr).records[key] || (inner$b(zr).records[key] = {}); + record.handler = handler; + } + function initGlobalListeners(zr, api) { + if (inner$b(zr).initialized) { + return; + } + inner$b(zr).initialized = true; + useHandler('click', curry(doEnter, 'click')); + useHandler('mousemove', curry(doEnter, 'mousemove')); + // useHandler('mouseout', onLeave); + useHandler('globalout', onLeave); + function useHandler(eventType, cb) { + zr.on(eventType, function (e) { + var dis = makeDispatchAction(api); + each$7(inner$b(zr).records, function (record) { + record && cb(record, e, dis.dispatchAction); + }); + dispatchTooltipFinally(dis.pendings, api); + }); + } + } + function dispatchTooltipFinally(pendings, api) { + var showLen = pendings.showTip.length; + var hideLen = pendings.hideTip.length; + var actuallyPayload; + if (showLen) { + actuallyPayload = pendings.showTip[showLen - 1]; + } else if (hideLen) { + actuallyPayload = pendings.hideTip[hideLen - 1]; + } + if (actuallyPayload) { + actuallyPayload.dispatchAction = null; + api.dispatchAction(actuallyPayload); + } + } + function onLeave(record, e, dispatchAction) { + record.handler('leave', null, dispatchAction); + } + function doEnter(currTrigger, record, e, dispatchAction) { + record.handler(currTrigger, e, dispatchAction); + } + function makeDispatchAction(api) { + var pendings = { + showTip: [], + hideTip: [] + }; + // FIXME + // better approach? + // 'showTip' and 'hideTip' can be triggered by axisPointer and tooltip, + // which may be conflict, (axisPointer call showTip but tooltip call hideTip); + // So we have to add "final stage" to merge those dispatched actions. + var dispatchAction = function (payload) { + var pendingList = pendings[payload.type]; + if (pendingList) { + pendingList.push(payload); + } else { + payload.dispatchAction = dispatchAction; + api.dispatchAction(payload); + } + }; + return { + dispatchAction: dispatchAction, + pendings: pendings + }; + } + function unregister(key, api) { + if (env.node) { + return; + } + var zr = api.getZr(); + var record = (inner$b(zr).records || {})[key]; + if (record) { + inner$b(zr).records[key] = null; + } + } + + var AxisPointerView = /** @class */function (_super) { + __extends(AxisPointerView, _super); + function AxisPointerView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = AxisPointerView.type; + return _this; + } + AxisPointerView.prototype.render = function (globalAxisPointerModel, ecModel, api) { + var globalTooltipModel = ecModel.getComponent('tooltip'); + var triggerOn = globalAxisPointerModel.get('triggerOn') || globalTooltipModel && globalTooltipModel.get('triggerOn') || 'mousemove|click'; + // Register global listener in AxisPointerView to enable + // AxisPointerView to be independent to Tooltip. + register('axisPointer', api, function (currTrigger, e, dispatchAction) { + // If 'none', it is not controlled by mouse totally. + if (triggerOn !== 'none' && (currTrigger === 'leave' || triggerOn.indexOf(currTrigger) >= 0)) { + dispatchAction({ + type: 'updateAxisPointer', + currTrigger: currTrigger, + x: e && e.offsetX, + y: e && e.offsetY + }); + } + }); + }; + AxisPointerView.prototype.remove = function (ecModel, api) { + unregister('axisPointer', api); + }; + AxisPointerView.prototype.dispose = function (ecModel, api) { + unregister('axisPointer', api); + }; + AxisPointerView.type = 'axisPointer'; + return AxisPointerView; + }(ComponentView); + + /** + * @param finder contains {seriesIndex, dataIndex, dataIndexInside} + * @param ecModel + * @return {point: [x, y], el: ...} point Will not be null. + */ + function findPointFromSeries(finder, ecModel) { + var point = []; + var seriesIndex = finder.seriesIndex; + var seriesModel; + if (seriesIndex == null || !(seriesModel = ecModel.getSeriesByIndex(seriesIndex))) { + return { + point: [] + }; + } + var data = seriesModel.getData(); + var dataIndex = queryDataIndex(data, finder); + if (dataIndex == null || dataIndex < 0 || isArray(dataIndex)) { + return { + point: [] + }; + } + var el = data.getItemGraphicEl(dataIndex); + var coordSys = seriesModel.coordinateSystem; + if (seriesModel.getTooltipPosition) { + point = seriesModel.getTooltipPosition(dataIndex) || []; + } else if (coordSys && coordSys.dataToPoint) { + if (finder.isStacked) { + var baseAxis = coordSys.getBaseAxis(); + var valueAxis = coordSys.getOtherAxis(baseAxis); + var valueAxisDim = valueAxis.dim; + var baseAxisDim = baseAxis.dim; + var baseDataOffset = valueAxisDim === 'x' || valueAxisDim === 'radius' ? 1 : 0; + var baseDim = data.mapDimension(baseAxisDim); + var stackedData = []; + stackedData[baseDataOffset] = data.get(baseDim, dataIndex); + stackedData[1 - baseDataOffset] = data.get(data.getCalculationInfo('stackResultDimension'), dataIndex); + point = coordSys.dataToPoint(stackedData) || []; + } else { + point = coordSys.dataToPoint(data.getValues(map(coordSys.dimensions, function (dim) { + return data.mapDimension(dim); + }), dataIndex)) || []; + } + } else if (el) { + // Use graphic bounding rect + var rect = el.getBoundingRect().clone(); + rect.applyTransform(el.transform); + point = [rect.x + rect.width / 2, rect.y + rect.height / 2]; + } + return { + point: point, + el: el + }; + } + + var inner$c = makeInner(); + /** + * Basic logic: check all axis, if they do not demand show/highlight, + * then hide/downplay them. + * + * @return content of event obj for echarts.connect. + */ + function axisTrigger(payload, ecModel, api) { + var currTrigger = payload.currTrigger; + var point = [payload.x, payload.y]; + var finder = payload; + var dispatchAction = payload.dispatchAction || bind(api.dispatchAction, api); + var coordSysAxesInfo = ecModel.getComponent('axisPointer').coordSysAxesInfo; + // Pending + // See #6121. But we are not able to reproduce it yet. + if (!coordSysAxesInfo) { + return; + } + if (illegalPoint(point)) { + // Used in the default behavior of `connection`: use the sample seriesIndex + // and dataIndex. And also used in the tooltipView trigger. + point = findPointFromSeries({ + seriesIndex: finder.seriesIndex, + // Do not use dataIndexInside from other ec instance. + // FIXME: auto detect it? + dataIndex: finder.dataIndex + }, ecModel).point; + } + var isIllegalPoint = illegalPoint(point); + // Axis and value can be specified when calling dispatchAction({type: 'updateAxisPointer'}). + // Notice: In this case, it is difficult to get the `point` (which is necessary to show + // tooltip, so if point is not given, we just use the point found by sample seriesIndex + // and dataIndex. + var inputAxesInfo = finder.axesInfo; + var axesInfo = coordSysAxesInfo.axesInfo; + var shouldHide = currTrigger === 'leave' || illegalPoint(point); + var outputPayload = {}; + var showValueMap = {}; + var dataByCoordSys = { + list: [], + map: {} + }; + var updaters = { + showPointer: curry(showPointer, showValueMap), + showTooltip: curry(showTooltip, dataByCoordSys) + }; + // Process for triggered axes. + each(coordSysAxesInfo.coordSysMap, function (coordSys, coordSysKey) { + // If a point given, it must be contained by the coordinate system. + var coordSysContainsPoint = isIllegalPoint || coordSys.containPoint(point); + each(coordSysAxesInfo.coordSysAxesInfo[coordSysKey], function (axisInfo, key) { + var axis = axisInfo.axis; + var inputAxisInfo = findInputAxisInfo(inputAxesInfo, axisInfo); + // If no inputAxesInfo, no axis is restricted. + if (!shouldHide && coordSysContainsPoint && (!inputAxesInfo || inputAxisInfo)) { + var val = inputAxisInfo && inputAxisInfo.value; + if (val == null && !isIllegalPoint) { + val = axis.pointToData(point); + } + val != null && processOnAxis(axisInfo, val, updaters, false, outputPayload); + } + }); + }); + // Process for linked axes. + var linkTriggers = {}; + each(axesInfo, function (tarAxisInfo, tarKey) { + var linkGroup = tarAxisInfo.linkGroup; + // If axis has been triggered in the previous stage, it should not be triggered by link. + if (linkGroup && !showValueMap[tarKey]) { + each(linkGroup.axesInfo, function (srcAxisInfo, srcKey) { + var srcValItem = showValueMap[srcKey]; + // If srcValItem exist, source axis is triggered, so link to target axis. + if (srcAxisInfo !== tarAxisInfo && srcValItem) { + var val = srcValItem.value; + linkGroup.mapper && (val = tarAxisInfo.axis.scale.parse(linkGroup.mapper(val, makeMapperParam(srcAxisInfo), makeMapperParam(tarAxisInfo)))); + linkTriggers[tarAxisInfo.key] = val; + } + }); + } + }); + each(linkTriggers, function (val, tarKey) { + processOnAxis(axesInfo[tarKey], val, updaters, true, outputPayload); + }); + updateModelActually(showValueMap, axesInfo, outputPayload); + dispatchTooltipActually(dataByCoordSys, point, payload, dispatchAction); + dispatchHighDownActually(axesInfo, dispatchAction, api); + return outputPayload; + } + function processOnAxis(axisInfo, newValue, updaters, noSnap, outputFinder) { + var axis = axisInfo.axis; + if (axis.scale.isBlank() || !axis.containData(newValue)) { + return; + } + if (!axisInfo.involveSeries) { + updaters.showPointer(axisInfo, newValue); + return; + } + // Heavy calculation. So put it after axis.containData checking. + var payloadInfo = buildPayloadsBySeries(newValue, axisInfo); + var payloadBatch = payloadInfo.payloadBatch; + var snapToValue = payloadInfo.snapToValue; + // Fill content of event obj for echarts.connect. + // By default use the first involved series data as a sample to connect. + if (payloadBatch[0] && outputFinder.seriesIndex == null) { + extend(outputFinder, payloadBatch[0]); + } + // If no linkSource input, this process is for collecting link + // target, where snap should not be accepted. + if (!noSnap && axisInfo.snap) { + if (axis.containData(snapToValue) && snapToValue != null) { + newValue = snapToValue; + } + } + updaters.showPointer(axisInfo, newValue, payloadBatch); + // Tooltip should always be snapToValue, otherwise there will be + // incorrect "axis value ~ series value" mapping displayed in tooltip. + updaters.showTooltip(axisInfo, payloadInfo, snapToValue); + } + function buildPayloadsBySeries(value, axisInfo) { + var axis = axisInfo.axis; + var dim = axis.dim; + var snapToValue = value; + var payloadBatch = []; + var minDist = Number.MAX_VALUE; + var minDiff = -1; + each(axisInfo.seriesModels, function (series, idx) { + var dataDim = series.getData().mapDimensionsAll(dim); + var seriesNestestValue; + var dataIndices; + if (series.getAxisTooltipData) { + var result = series.getAxisTooltipData(dataDim, value, axis); + dataIndices = result.dataIndices; + seriesNestestValue = result.nestestValue; + } else { + dataIndices = series.getData().indicesOfNearest(dataDim[0], value, + // Add a threshold to avoid find the wrong dataIndex + // when data length is not same. + // false, + axis.type === 'category' ? 0.5 : null); + if (!dataIndices.length) { + return; + } + seriesNestestValue = series.getData().get(dataDim[0], dataIndices[0]); + } + if (seriesNestestValue == null || !isFinite(seriesNestestValue)) { + return; + } + var diff = value - seriesNestestValue; + var dist = Math.abs(diff); + // Consider category case + if (dist <= minDist) { + if (dist < minDist || diff >= 0 && minDiff < 0) { + minDist = dist; + minDiff = diff; + snapToValue = seriesNestestValue; + payloadBatch.length = 0; + } + each(dataIndices, function (dataIndex) { + payloadBatch.push({ + seriesIndex: series.seriesIndex, + dataIndexInside: dataIndex, + dataIndex: series.getData().getRawIndex(dataIndex) + }); + }); + } + }); + return { + payloadBatch: payloadBatch, + snapToValue: snapToValue + }; + } + function showPointer(showValueMap, axisInfo, value, payloadBatch) { + showValueMap[axisInfo.key] = { + value: value, + payloadBatch: payloadBatch + }; + } + function showTooltip(dataByCoordSys, axisInfo, payloadInfo, value) { + var payloadBatch = payloadInfo.payloadBatch; + var axis = axisInfo.axis; + var axisModel = axis.model; + var axisPointerModel = axisInfo.axisPointerModel; + // If no data, do not create anything in dataByCoordSys, + // whose length will be used to judge whether dispatch action. + if (!axisInfo.triggerTooltip || !payloadBatch.length) { + return; + } + var coordSysModel = axisInfo.coordSys.model; + var coordSysKey = makeKey(coordSysModel); + var coordSysItem = dataByCoordSys.map[coordSysKey]; + if (!coordSysItem) { + coordSysItem = dataByCoordSys.map[coordSysKey] = { + coordSysId: coordSysModel.id, + coordSysIndex: coordSysModel.componentIndex, + coordSysType: coordSysModel.type, + coordSysMainType: coordSysModel.mainType, + dataByAxis: [] + }; + dataByCoordSys.list.push(coordSysItem); + } + coordSysItem.dataByAxis.push({ + axisDim: axis.dim, + axisIndex: axisModel.componentIndex, + axisType: axisModel.type, + axisId: axisModel.id, + value: value, + // Caustion: viewHelper.getValueLabel is actually on "view stage", which + // depends that all models have been updated. So it should not be performed + // here. Considering axisPointerModel used here is volatile, which is hard + // to be retrieve in TooltipView, we prepare parameters here. + valueLabelOpt: { + precision: axisPointerModel.get(['label', 'precision']), + formatter: axisPointerModel.get(['label', 'formatter']) + }, + seriesDataIndices: payloadBatch.slice() + }); + } + function updateModelActually(showValueMap, axesInfo, outputPayload) { + var outputAxesInfo = outputPayload.axesInfo = []; + // Basic logic: If no 'show' required, 'hide' this axisPointer. + each(axesInfo, function (axisInfo, key) { + var option = axisInfo.axisPointerModel.option; + var valItem = showValueMap[key]; + if (valItem) { + !axisInfo.useHandle && (option.status = 'show'); + option.value = valItem.value; + // For label formatter param and highlight. + option.seriesDataIndices = (valItem.payloadBatch || []).slice(); + } + // When always show (e.g., handle used), remain + // original value and status. + else { + // If hide, value still need to be set, consider + // click legend to toggle axis blank. + !axisInfo.useHandle && (option.status = 'hide'); + } + // If status is 'hide', should be no info in payload. + option.status === 'show' && outputAxesInfo.push({ + axisDim: axisInfo.axis.dim, + axisIndex: axisInfo.axis.model.componentIndex, + value: option.value + }); + }); + } + function dispatchTooltipActually(dataByCoordSys, point, payload, dispatchAction) { + // Basic logic: If no showTip required, hideTip will be dispatched. + if (illegalPoint(point) || !dataByCoordSys.list.length) { + dispatchAction({ + type: 'hideTip' + }); + return; + } + // In most case only one axis (or event one series is used). It is + // convenient to fetch payload.seriesIndex and payload.dataIndex + // directly. So put the first seriesIndex and dataIndex of the first + // axis on the payload. + var sampleItem = ((dataByCoordSys.list[0].dataByAxis[0] || {}).seriesDataIndices || [])[0] || {}; + dispatchAction({ + type: 'showTip', + escapeConnect: true, + x: point[0], + y: point[1], + tooltipOption: payload.tooltipOption, + position: payload.position, + dataIndexInside: sampleItem.dataIndexInside, + dataIndex: sampleItem.dataIndex, + seriesIndex: sampleItem.seriesIndex, + dataByCoordSys: dataByCoordSys.list + }); + } + function dispatchHighDownActually(axesInfo, dispatchAction, api) { + // FIXME + // highlight status modification should be a stage of main process? + // (Consider confilct (e.g., legend and axisPointer) and setOption) + var zr = api.getZr(); + var highDownKey = 'axisPointerLastHighlights'; + var lastHighlights = inner$c(zr)[highDownKey] || {}; + var newHighlights = inner$c(zr)[highDownKey] = {}; + // Update highlight/downplay status according to axisPointer model. + // Build hash map and remove duplicate incidentally. + each(axesInfo, function (axisInfo, key) { + var option = axisInfo.axisPointerModel.option; + option.status === 'show' && axisInfo.triggerEmphasis && each(option.seriesDataIndices, function (batchItem) { + var key = batchItem.seriesIndex + ' | ' + batchItem.dataIndex; + newHighlights[key] = batchItem; + }); + }); + // Diff. + var toHighlight = []; + var toDownplay = []; + each(lastHighlights, function (batchItem, key) { + !newHighlights[key] && toDownplay.push(batchItem); + }); + each(newHighlights, function (batchItem, key) { + !lastHighlights[key] && toHighlight.push(batchItem); + }); + toDownplay.length && api.dispatchAction({ + type: 'downplay', + escapeConnect: true, + // Not blur others when highlight in axisPointer. + notBlur: true, + batch: toDownplay + }); + toHighlight.length && api.dispatchAction({ + type: 'highlight', + escapeConnect: true, + // Not blur others when highlight in axisPointer. + notBlur: true, + batch: toHighlight + }); + } + function findInputAxisInfo(inputAxesInfo, axisInfo) { + for (var i = 0; i < (inputAxesInfo || []).length; i++) { + var inputAxisInfo = inputAxesInfo[i]; + if (axisInfo.axis.dim === inputAxisInfo.axisDim && axisInfo.axis.model.componentIndex === inputAxisInfo.axisIndex) { + return inputAxisInfo; + } + } + } + function makeMapperParam(axisInfo) { + var axisModel = axisInfo.axis.model; + var item = {}; + var dim = item.axisDim = axisInfo.axis.dim; + item.axisIndex = item[dim + 'AxisIndex'] = axisModel.componentIndex; + item.axisName = item[dim + 'AxisName'] = axisModel.name; + item.axisId = item[dim + 'AxisId'] = axisModel.id; + return item; + } + function illegalPoint(point) { + return !point || point[0] == null || isNaN(point[0]) || point[1] == null || isNaN(point[1]); + } + + function install$s(registers) { + // CartesianAxisPointer is not supposed to be required here. But consider + // echarts.simple.js and online build tooltip, which only require gridSimple, + // CartesianAxisPointer should be able to required somewhere. + AxisView.registerAxisPointerClass('CartesianAxisPointer', CartesianAxisPointer); + registers.registerComponentModel(AxisPointerModel); + registers.registerComponentView(AxisPointerView); + registers.registerPreprocessor(function (option) { + // Always has a global axisPointerModel for default setting. + if (option) { + (!option.axisPointer || option.axisPointer.length === 0) && (option.axisPointer = {}); + var link = option.axisPointer.link; + // Normalize to array to avoid object mergin. But if link + // is not set, remain null/undefined, otherwise it will + // override existent link setting. + if (link && !isArray(link)) { + option.axisPointer.link = [link]; + } + } + }); + // This process should proformed after coordinate systems created + // and series data processed. So put it on statistic processing stage. + registers.registerProcessor(registers.PRIORITY.PROCESSOR.STATISTIC, function (ecModel, api) { + // Build axisPointerModel, mergin tooltip.axisPointer model for each axis. + // allAxesInfo should be updated when setOption performed. + ecModel.getComponent('axisPointer').coordSysAxesInfo = collect(ecModel, api); + }); + // Broadcast to all views. + registers.registerAction({ + type: 'updateAxisPointer', + event: 'updateAxisPointer', + update: ':updateAxisPointer' + }, axisTrigger); + } + + function install$t(registers) { + use(install$5); + use(install$s); + } + + var PolarAxisPointer = /** @class */function (_super) { + __extends(PolarAxisPointer, _super); + function PolarAxisPointer() { + return _super !== null && _super.apply(this, arguments) || this; + } + /** + * @override + */ + PolarAxisPointer.prototype.makeElOption = function (elOption, value, axisModel, axisPointerModel, api) { + var axis = axisModel.axis; + if (axis.dim === 'angle') { + this.animationThreshold = Math.PI / 18; + } + var polar = axis.polar; + var otherAxis = polar.getOtherAxis(axis); + var otherExtent = otherAxis.getExtent(); + var coordValue = axis.dataToCoord(value); + var axisPointerType = axisPointerModel.get('type'); + if (axisPointerType && axisPointerType !== 'none') { + var elStyle = buildElStyle(axisPointerModel); + var pointerOption = pointerShapeBuilder$1[axisPointerType](axis, polar, coordValue, otherExtent); + pointerOption.style = elStyle; + elOption.graphicKey = pointerOption.type; + elOption.pointer = pointerOption; + } + var labelMargin = axisPointerModel.get(['label', 'margin']); + var labelPos = getLabelPosition(value, axisModel, axisPointerModel, polar, labelMargin); + buildLabelElOption(elOption, axisModel, axisPointerModel, api, labelPos); + }; + return PolarAxisPointer; + }(BaseAxisPointer); + function getLabelPosition(value, axisModel, axisPointerModel, polar, labelMargin) { + var axis = axisModel.axis; + var coord = axis.dataToCoord(value); + var axisAngle = polar.getAngleAxis().getExtent()[0]; + axisAngle = axisAngle / 180 * Math.PI; + var radiusExtent = polar.getRadiusAxis().getExtent(); + var position; + var align; + var verticalAlign; + if (axis.dim === 'radius') { + var transform = create$1(); + rotate(transform, transform, axisAngle); + translate(transform, transform, [polar.cx, polar.cy]); + position = applyTransform$1([coord, -labelMargin], transform); + var labelRotation = axisModel.getModel('axisLabel').get('rotate') || 0; + // @ts-ignore + var labelLayout = AxisBuilder.innerTextLayout(axisAngle, labelRotation * Math.PI / 180, -1); + align = labelLayout.textAlign; + verticalAlign = labelLayout.textVerticalAlign; + } else { + // angle axis + var r = radiusExtent[1]; + position = polar.coordToPoint([r + labelMargin, coord]); + var cx = polar.cx; + var cy = polar.cy; + align = Math.abs(position[0] - cx) / r < 0.3 ? 'center' : position[0] > cx ? 'left' : 'right'; + verticalAlign = Math.abs(position[1] - cy) / r < 0.3 ? 'middle' : position[1] > cy ? 'top' : 'bottom'; + } + return { + position: position, + align: align, + verticalAlign: verticalAlign + }; + } + var pointerShapeBuilder$1 = { + line: function (axis, polar, coordValue, otherExtent) { + return axis.dim === 'angle' ? { + type: 'Line', + shape: makeLineShape(polar.coordToPoint([otherExtent[0], coordValue]), polar.coordToPoint([otherExtent[1], coordValue])) + } : { + type: 'Circle', + shape: { + cx: polar.cx, + cy: polar.cy, + r: coordValue + } + }; + }, + shadow: function (axis, polar, coordValue, otherExtent) { + var bandWidth = Math.max(1, axis.getBandWidth()); + var radian = Math.PI / 180; + return axis.dim === 'angle' ? { + type: 'Sector', + shape: makeSectorShape(polar.cx, polar.cy, otherExtent[0], otherExtent[1], + // In ECharts y is negative if angle is positive + (-coordValue - bandWidth / 2) * radian, (-coordValue + bandWidth / 2) * radian) + } : { + type: 'Sector', + shape: makeSectorShape(polar.cx, polar.cy, coordValue - bandWidth / 2, coordValue + bandWidth / 2, 0, Math.PI * 2) + }; + } + }; + + var PolarModel = /** @class */function (_super) { + __extends(PolarModel, _super); + function PolarModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = PolarModel.type; + return _this; + } + PolarModel.prototype.findAxisModel = function (axisType) { + var foundAxisModel; + var ecModel = this.ecModel; + ecModel.eachComponent(axisType, function (axisModel) { + if (axisModel.getCoordSysModel() === this) { + foundAxisModel = axisModel; + } + }, this); + return foundAxisModel; + }; + PolarModel.type = 'polar'; + PolarModel.dependencies = ['radiusAxis', 'angleAxis']; + PolarModel.defaultOption = { + // zlevel: 0, + z: 0, + center: ['50%', '50%'], + radius: '80%' + }; + return PolarModel; + }(ComponentModel); + + var PolarAxisModel = /** @class */function (_super) { + __extends(PolarAxisModel, _super); + function PolarAxisModel() { + return _super !== null && _super.apply(this, arguments) || this; + } + PolarAxisModel.prototype.getCoordSysModel = function () { + return this.getReferringComponents('polar', SINGLE_REFERRING).models[0]; + }; + PolarAxisModel.type = 'polarAxis'; + return PolarAxisModel; + }(ComponentModel); + mixin(PolarAxisModel, AxisModelCommonMixin); + var AngleAxisModel = /** @class */function (_super) { + __extends(AngleAxisModel, _super); + function AngleAxisModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = AngleAxisModel.type; + return _this; + } + AngleAxisModel.type = 'angleAxis'; + return AngleAxisModel; + }(PolarAxisModel); + var RadiusAxisModel = /** @class */function (_super) { + __extends(RadiusAxisModel, _super); + function RadiusAxisModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = RadiusAxisModel.type; + return _this; + } + RadiusAxisModel.type = 'radiusAxis'; + return RadiusAxisModel; + }(PolarAxisModel); + + var RadiusAxis = /** @class */function (_super) { + __extends(RadiusAxis, _super); + function RadiusAxis(scale, radiusExtent) { + return _super.call(this, 'radius', scale, radiusExtent) || this; + } + RadiusAxis.prototype.pointToData = function (point, clamp) { + return this.polar.pointToData(point, clamp)[this.dim === 'radius' ? 0 : 1]; + }; + return RadiusAxis; + }(Axis); + RadiusAxis.prototype.dataToRadius = Axis.prototype.dataToCoord; + RadiusAxis.prototype.radiusToData = Axis.prototype.coordToData; + + var inner$d = makeInner(); + var AngleAxis = /** @class */function (_super) { + __extends(AngleAxis, _super); + function AngleAxis(scale, angleExtent) { + return _super.call(this, 'angle', scale, angleExtent || [0, 360]) || this; + } + AngleAxis.prototype.pointToData = function (point, clamp) { + return this.polar.pointToData(point, clamp)[this.dim === 'radius' ? 0 : 1]; + }; + /** + * Only be called in category axis. + * Angle axis uses text height to decide interval + * + * @override + * @return {number} Auto interval for cateogry axis tick and label + */ + AngleAxis.prototype.calculateCategoryInterval = function () { + var axis = this; + var labelModel = axis.getLabelModel(); + var ordinalScale = axis.scale; + var ordinalExtent = ordinalScale.getExtent(); + // Providing this method is for optimization: + // avoid generating a long array by `getTicks` + // in large category data case. + var tickCount = ordinalScale.count(); + if (ordinalExtent[1] - ordinalExtent[0] < 1) { + return 0; + } + var tickValue = ordinalExtent[0]; + var unitSpan = axis.dataToCoord(tickValue + 1) - axis.dataToCoord(tickValue); + var unitH = Math.abs(unitSpan); + // Not precise, just use height as text width + // and each distance from axis line yet. + var rect = getBoundingRect(tickValue == null ? '' : tickValue + '', labelModel.getFont(), 'center', 'top'); + var maxH = Math.max(rect.height, 7); + var dh = maxH / unitH; + // 0/0 is NaN, 1/0 is Infinity. + isNaN(dh) && (dh = Infinity); + var interval = Math.max(0, Math.floor(dh)); + var cache = inner$d(axis.model); + var lastAutoInterval = cache.lastAutoInterval; + var lastTickCount = cache.lastTickCount; + // Use cache to keep interval stable while moving zoom window, + // otherwise the calculated interval might jitter when the zoom + // window size is close to the interval-changing size. + if (lastAutoInterval != null && lastTickCount != null && Math.abs(lastAutoInterval - interval) <= 1 && Math.abs(lastTickCount - tickCount) <= 1 + // Always choose the bigger one, otherwise the critical + // point is not the same when zooming in or zooming out. + && lastAutoInterval > interval) { + interval = lastAutoInterval; + } + // Only update cache if cache not used, otherwise the + // changing of interval is too insensitive. + else { + cache.lastTickCount = tickCount; + cache.lastAutoInterval = interval; + } + return interval; + }; + return AngleAxis; + }(Axis); + AngleAxis.prototype.dataToAngle = Axis.prototype.dataToCoord; + AngleAxis.prototype.angleToData = Axis.prototype.coordToData; + + var polarDimensions = ['radius', 'angle']; + var Polar = /** @class */function () { + function Polar(name) { + this.dimensions = polarDimensions; + this.type = 'polar'; + /** + * x of polar center + */ + this.cx = 0; + /** + * y of polar center + */ + this.cy = 0; + this._radiusAxis = new RadiusAxis(); + this._angleAxis = new AngleAxis(); + this.axisPointerEnabled = true; + this.name = name || ''; + this._radiusAxis.polar = this._angleAxis.polar = this; + } + /** + * If contain coord + */ + Polar.prototype.containPoint = function (point) { + var coord = this.pointToCoord(point); + return this._radiusAxis.contain(coord[0]) && this._angleAxis.contain(coord[1]); + }; + /** + * If contain data + */ + Polar.prototype.containData = function (data) { + return this._radiusAxis.containData(data[0]) && this._angleAxis.containData(data[1]); + }; + Polar.prototype.getAxis = function (dim) { + var key = '_' + dim + 'Axis'; + return this[key]; + }; + Polar.prototype.getAxes = function () { + return [this._radiusAxis, this._angleAxis]; + }; + /** + * Get axes by type of scale + */ + Polar.prototype.getAxesByScale = function (scaleType) { + var axes = []; + var angleAxis = this._angleAxis; + var radiusAxis = this._radiusAxis; + angleAxis.scale.type === scaleType && axes.push(angleAxis); + radiusAxis.scale.type === scaleType && axes.push(radiusAxis); + return axes; + }; + Polar.prototype.getAngleAxis = function () { + return this._angleAxis; + }; + Polar.prototype.getRadiusAxis = function () { + return this._radiusAxis; + }; + Polar.prototype.getOtherAxis = function (axis) { + var angleAxis = this._angleAxis; + return axis === angleAxis ? this._radiusAxis : angleAxis; + }; + /** + * Base axis will be used on stacking. + * + */ + Polar.prototype.getBaseAxis = function () { + return this.getAxesByScale('ordinal')[0] || this.getAxesByScale('time')[0] || this.getAngleAxis(); + }; + Polar.prototype.getTooltipAxes = function (dim) { + var baseAxis = dim != null && dim !== 'auto' ? this.getAxis(dim) : this.getBaseAxis(); + return { + baseAxes: [baseAxis], + otherAxes: [this.getOtherAxis(baseAxis)] + }; + }; + /** + * Convert a single data item to (x, y) point. + * Parameter data is an array which the first element is radius and the second is angle + */ + Polar.prototype.dataToPoint = function (data, clamp) { + return this.coordToPoint([this._radiusAxis.dataToRadius(data[0], clamp), this._angleAxis.dataToAngle(data[1], clamp)]); + }; + /** + * Convert a (x, y) point to data + */ + Polar.prototype.pointToData = function (point, clamp) { + var coord = this.pointToCoord(point); + return [this._radiusAxis.radiusToData(coord[0], clamp), this._angleAxis.angleToData(coord[1], clamp)]; + }; + /** + * Convert a (x, y) point to (radius, angle) coord + */ + Polar.prototype.pointToCoord = function (point) { + var dx = point[0] - this.cx; + var dy = point[1] - this.cy; + var angleAxis = this.getAngleAxis(); + var extent = angleAxis.getExtent(); + var minAngle = Math.min(extent[0], extent[1]); + var maxAngle = Math.max(extent[0], extent[1]); + // Fix fixed extent in polarCreator + // FIXME + angleAxis.inverse ? minAngle = maxAngle - 360 : maxAngle = minAngle + 360; + var radius = Math.sqrt(dx * dx + dy * dy); + dx /= radius; + dy /= radius; + var radian = Math.atan2(-dy, dx) / Math.PI * 180; + // move to angleExtent + var dir = radian < minAngle ? 1 : -1; + while (radian < minAngle || radian > maxAngle) { + radian += dir * 360; + } + return [radius, radian]; + }; + /** + * Convert a (radius, angle) coord to (x, y) point + */ + Polar.prototype.coordToPoint = function (coord) { + var radius = coord[0]; + var radian = coord[1] / 180 * Math.PI; + var x = Math.cos(radian) * radius + this.cx; + // Inverse the y + var y = -Math.sin(radian) * radius + this.cy; + return [x, y]; + }; + /** + * Get ring area of cartesian. + * Area will have a contain function to determine if a point is in the coordinate system. + */ + Polar.prototype.getArea = function () { + var angleAxis = this.getAngleAxis(); + var radiusAxis = this.getRadiusAxis(); + var radiusExtent = radiusAxis.getExtent().slice(); + radiusExtent[0] > radiusExtent[1] && radiusExtent.reverse(); + var angleExtent = angleAxis.getExtent(); + var RADIAN = Math.PI / 180; + return { + cx: this.cx, + cy: this.cy, + r0: radiusExtent[0], + r: radiusExtent[1], + startAngle: -angleExtent[0] * RADIAN, + endAngle: -angleExtent[1] * RADIAN, + clockwise: angleAxis.inverse, + contain: function (x, y) { + // It's a ring shape. + // Start angle and end angle don't matter + var dx = x - this.cx; + var dy = y - this.cy; + // minus a tiny value 1e-4 to avoid being clipped unexpectedly + var d2 = dx * dx + dy * dy - 1e-4; + var r = this.r; + var r0 = this.r0; + return d2 <= r * r && d2 >= r0 * r0; + } + }; + }; + Polar.prototype.convertToPixel = function (ecModel, finder, value) { + var coordSys = getCoordSys$2(finder); + return coordSys === this ? this.dataToPoint(value) : null; + }; + Polar.prototype.convertFromPixel = function (ecModel, finder, pixel) { + var coordSys = getCoordSys$2(finder); + return coordSys === this ? this.pointToData(pixel) : null; + }; + return Polar; + }(); + function getCoordSys$2(finder) { + var seriesModel = finder.seriesModel; + var polarModel = finder.polarModel; + return polarModel && polarModel.coordinateSystem || seriesModel && seriesModel.coordinateSystem; + } + + /** + * Resize method bound to the polar + */ + function resizePolar(polar, polarModel, api) { + var center = polarModel.get('center'); + var width = api.getWidth(); + var height = api.getHeight(); + polar.cx = parsePercent$1(center[0], width); + polar.cy = parsePercent$1(center[1], height); + var radiusAxis = polar.getRadiusAxis(); + var size = Math.min(width, height) / 2; + var radius = polarModel.get('radius'); + if (radius == null) { + radius = [0, '100%']; + } else if (!isArray(radius)) { + // r0 = 0 + radius = [0, radius]; + } + var parsedRadius = [parsePercent$1(radius[0], size), parsePercent$1(radius[1], size)]; + radiusAxis.inverse ? radiusAxis.setExtent(parsedRadius[1], parsedRadius[0]) : radiusAxis.setExtent(parsedRadius[0], parsedRadius[1]); + } + /** + * Update polar + */ + function updatePolarScale(ecModel, api) { + var polar = this; + var angleAxis = polar.getAngleAxis(); + var radiusAxis = polar.getRadiusAxis(); + // Reset scale + angleAxis.scale.setExtent(Infinity, -Infinity); + radiusAxis.scale.setExtent(Infinity, -Infinity); + ecModel.eachSeries(function (seriesModel) { + if (seriesModel.coordinateSystem === polar) { + var data_1 = seriesModel.getData(); + each(getDataDimensionsOnAxis(data_1, 'radius'), function (dim) { + radiusAxis.scale.unionExtentFromData(data_1, dim); + }); + each(getDataDimensionsOnAxis(data_1, 'angle'), function (dim) { + angleAxis.scale.unionExtentFromData(data_1, dim); + }); + } + }); + niceScaleExtent(angleAxis.scale, angleAxis.model); + niceScaleExtent(radiusAxis.scale, radiusAxis.model); + // Fix extent of category angle axis + if (angleAxis.type === 'category' && !angleAxis.onBand) { + var extent = angleAxis.getExtent(); + var diff = 360 / angleAxis.scale.count(); + angleAxis.inverse ? extent[1] += diff : extent[1] -= diff; + angleAxis.setExtent(extent[0], extent[1]); + } + } + function isAngleAxisModel(axisModel) { + return axisModel.mainType === 'angleAxis'; + } + /** + * Set common axis properties + */ + function setAxis(axis, axisModel) { + var _a; + axis.type = axisModel.get('type'); + axis.scale = createScaleByModel(axisModel); + axis.onBand = axisModel.get('boundaryGap') && axis.type === 'category'; + axis.inverse = axisModel.get('inverse'); + if (isAngleAxisModel(axisModel)) { + axis.inverse = axis.inverse !== axisModel.get('clockwise'); + var startAngle = axisModel.get('startAngle'); + var endAngle = (_a = axisModel.get('endAngle')) !== null && _a !== void 0 ? _a : startAngle + (axis.inverse ? -360 : 360); + axis.setExtent(startAngle, endAngle); + } + // Inject axis instance + axisModel.axis = axis; + axis.model = axisModel; + } + var polarCreator = { + dimensions: polarDimensions, + create: function (ecModel, api) { + var polarList = []; + ecModel.eachComponent('polar', function (polarModel, idx) { + var polar = new Polar(idx + ''); + // Inject resize and update method + polar.update = updatePolarScale; + var radiusAxis = polar.getRadiusAxis(); + var angleAxis = polar.getAngleAxis(); + var radiusAxisModel = polarModel.findAxisModel('radiusAxis'); + var angleAxisModel = polarModel.findAxisModel('angleAxis'); + setAxis(radiusAxis, radiusAxisModel); + setAxis(angleAxis, angleAxisModel); + resizePolar(polar, polarModel, api); + polarList.push(polar); + polarModel.coordinateSystem = polar; + polar.model = polarModel; + }); + // Inject coordinateSystem to series + ecModel.eachSeries(function (seriesModel) { + if (seriesModel.get('coordinateSystem') === 'polar') { + var polarModel = seriesModel.getReferringComponents('polar', SINGLE_REFERRING).models[0]; + if ("development" !== 'production') { + if (!polarModel) { + throw new Error('Polar "' + retrieve(seriesModel.get('polarIndex'), seriesModel.get('polarId'), 0) + '" not found'); + } + } + seriesModel.coordinateSystem = polarModel.coordinateSystem; + } + }); + return polarList; + } + }; + + var elementList$1 = ['axisLine', 'axisLabel', 'axisTick', 'minorTick', 'splitLine', 'minorSplitLine', 'splitArea']; + function getAxisLineShape(polar, rExtent, angle) { + rExtent[1] > rExtent[0] && (rExtent = rExtent.slice().reverse()); + var start = polar.coordToPoint([rExtent[0], angle]); + var end = polar.coordToPoint([rExtent[1], angle]); + return { + x1: start[0], + y1: start[1], + x2: end[0], + y2: end[1] + }; + } + function getRadiusIdx(polar) { + var radiusAxis = polar.getRadiusAxis(); + return radiusAxis.inverse ? 0 : 1; + } + // Remove the last tick which will overlap the first tick + function fixAngleOverlap(list) { + var firstItem = list[0]; + var lastItem = list[list.length - 1]; + if (firstItem && lastItem && Math.abs(Math.abs(firstItem.coord - lastItem.coord) - 360) < 1e-4) { + list.pop(); + } + } + var AngleAxisView = /** @class */function (_super) { + __extends(AngleAxisView, _super); + function AngleAxisView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = AngleAxisView.type; + _this.axisPointerClass = 'PolarAxisPointer'; + return _this; + } + AngleAxisView.prototype.render = function (angleAxisModel, ecModel) { + this.group.removeAll(); + if (!angleAxisModel.get('show')) { + return; + } + var angleAxis = angleAxisModel.axis; + var polar = angleAxis.polar; + var radiusExtent = polar.getRadiusAxis().getExtent(); + var ticksAngles = angleAxis.getTicksCoords(); + var minorTickAngles = angleAxis.getMinorTicksCoords(); + var labels = map(angleAxis.getViewLabels(), function (labelItem) { + labelItem = clone(labelItem); + var scale = angleAxis.scale; + var tickValue = scale.type === 'ordinal' ? scale.getRawOrdinalNumber(labelItem.tickValue) : labelItem.tickValue; + labelItem.coord = angleAxis.dataToCoord(tickValue); + return labelItem; + }); + fixAngleOverlap(labels); + fixAngleOverlap(ticksAngles); + each(elementList$1, function (name) { + if (angleAxisModel.get([name, 'show']) && (!angleAxis.scale.isBlank() || name === 'axisLine')) { + angelAxisElementsBuilders[name](this.group, angleAxisModel, polar, ticksAngles, minorTickAngles, radiusExtent, labels); + } + }, this); + }; + AngleAxisView.type = 'angleAxis'; + return AngleAxisView; + }(AxisView); + var angelAxisElementsBuilders = { + axisLine: function (group, angleAxisModel, polar, ticksAngles, minorTickAngles, radiusExtent) { + var lineStyleModel = angleAxisModel.getModel(['axisLine', 'lineStyle']); + var angleAxis = polar.getAngleAxis(); + var RADIAN = Math.PI / 180; + var angleExtent = angleAxis.getExtent(); + // extent id of the axis radius (r0 and r) + var rId = getRadiusIdx(polar); + var r0Id = rId ? 0 : 1; + var shape; + var shapeType = Math.abs(angleExtent[1] - angleExtent[0]) === 360 ? 'Circle' : 'Arc'; + if (radiusExtent[r0Id] === 0) { + shape = new graphic[shapeType]({ + shape: { + cx: polar.cx, + cy: polar.cy, + r: radiusExtent[rId], + startAngle: -angleExtent[0] * RADIAN, + endAngle: -angleExtent[1] * RADIAN, + clockwise: angleAxis.inverse + }, + style: lineStyleModel.getLineStyle(), + z2: 1, + silent: true + }); + } else { + shape = new Ring({ + shape: { + cx: polar.cx, + cy: polar.cy, + r: radiusExtent[rId], + r0: radiusExtent[r0Id] + }, + style: lineStyleModel.getLineStyle(), + z2: 1, + silent: true + }); + } + shape.style.fill = null; + group.add(shape); + }, + axisTick: function (group, angleAxisModel, polar, ticksAngles, minorTickAngles, radiusExtent) { + var tickModel = angleAxisModel.getModel('axisTick'); + var tickLen = (tickModel.get('inside') ? -1 : 1) * tickModel.get('length'); + var radius = radiusExtent[getRadiusIdx(polar)]; + var lines = map(ticksAngles, function (tickAngleItem) { + return new Line({ + shape: getAxisLineShape(polar, [radius, radius + tickLen], tickAngleItem.coord) + }); + }); + group.add(mergePath$1(lines, { + style: defaults(tickModel.getModel('lineStyle').getLineStyle(), { + stroke: angleAxisModel.get(['axisLine', 'lineStyle', 'color']) + }) + })); + }, + minorTick: function (group, angleAxisModel, polar, tickAngles, minorTickAngles, radiusExtent) { + if (!minorTickAngles.length) { + return; + } + var tickModel = angleAxisModel.getModel('axisTick'); + var minorTickModel = angleAxisModel.getModel('minorTick'); + var tickLen = (tickModel.get('inside') ? -1 : 1) * minorTickModel.get('length'); + var radius = radiusExtent[getRadiusIdx(polar)]; + var lines = []; + for (var i = 0; i < minorTickAngles.length; i++) { + for (var k = 0; k < minorTickAngles[i].length; k++) { + lines.push(new Line({ + shape: getAxisLineShape(polar, [radius, radius + tickLen], minorTickAngles[i][k].coord) + })); + } + } + group.add(mergePath$1(lines, { + style: defaults(minorTickModel.getModel('lineStyle').getLineStyle(), defaults(tickModel.getLineStyle(), { + stroke: angleAxisModel.get(['axisLine', 'lineStyle', 'color']) + })) + })); + }, + axisLabel: function (group, angleAxisModel, polar, ticksAngles, minorTickAngles, radiusExtent, labels) { + var rawCategoryData = angleAxisModel.getCategories(true); + var commonLabelModel = angleAxisModel.getModel('axisLabel'); + var labelMargin = commonLabelModel.get('margin'); + var triggerEvent = angleAxisModel.get('triggerEvent'); + // Use length of ticksAngles because it may remove the last tick to avoid overlapping + each(labels, function (labelItem, idx) { + var labelModel = commonLabelModel; + var tickValue = labelItem.tickValue; + var r = radiusExtent[getRadiusIdx(polar)]; + var p = polar.coordToPoint([r + labelMargin, labelItem.coord]); + var cx = polar.cx; + var cy = polar.cy; + var labelTextAlign = Math.abs(p[0] - cx) / r < 0.3 ? 'center' : p[0] > cx ? 'left' : 'right'; + var labelTextVerticalAlign = Math.abs(p[1] - cy) / r < 0.3 ? 'middle' : p[1] > cy ? 'top' : 'bottom'; + if (rawCategoryData && rawCategoryData[tickValue]) { + var rawCategoryItem = rawCategoryData[tickValue]; + if (isObject(rawCategoryItem) && rawCategoryItem.textStyle) { + labelModel = new Model(rawCategoryItem.textStyle, commonLabelModel, commonLabelModel.ecModel); + } + } + var textEl = new ZRText({ + silent: AxisBuilder.isLabelSilent(angleAxisModel), + style: createTextStyle(labelModel, { + x: p[0], + y: p[1], + fill: labelModel.getTextColor() || angleAxisModel.get(['axisLine', 'lineStyle', 'color']), + text: labelItem.formattedLabel, + align: labelTextAlign, + verticalAlign: labelTextVerticalAlign + }) + }); + group.add(textEl); + // Pack data for mouse event + if (triggerEvent) { + var eventData = AxisBuilder.makeAxisEventDataBase(angleAxisModel); + eventData.targetType = 'axisLabel'; + eventData.value = labelItem.rawLabel; + getECData(textEl).eventData = eventData; + } + }, this); + }, + splitLine: function (group, angleAxisModel, polar, ticksAngles, minorTickAngles, radiusExtent) { + var splitLineModel = angleAxisModel.getModel('splitLine'); + var lineStyleModel = splitLineModel.getModel('lineStyle'); + var lineColors = lineStyleModel.get('color'); + var lineCount = 0; + lineColors = lineColors instanceof Array ? lineColors : [lineColors]; + var splitLines = []; + for (var i = 0; i < ticksAngles.length; i++) { + var colorIndex = lineCount++ % lineColors.length; + splitLines[colorIndex] = splitLines[colorIndex] || []; + splitLines[colorIndex].push(new Line({ + shape: getAxisLineShape(polar, radiusExtent, ticksAngles[i].coord) + })); + } + // Simple optimization + // Batching the lines if color are the same + for (var i = 0; i < splitLines.length; i++) { + group.add(mergePath$1(splitLines[i], { + style: defaults({ + stroke: lineColors[i % lineColors.length] + }, lineStyleModel.getLineStyle()), + silent: true, + z: angleAxisModel.get('z') + })); + } + }, + minorSplitLine: function (group, angleAxisModel, polar, ticksAngles, minorTickAngles, radiusExtent) { + if (!minorTickAngles.length) { + return; + } + var minorSplitLineModel = angleAxisModel.getModel('minorSplitLine'); + var lineStyleModel = minorSplitLineModel.getModel('lineStyle'); + var lines = []; + for (var i = 0; i < minorTickAngles.length; i++) { + for (var k = 0; k < minorTickAngles[i].length; k++) { + lines.push(new Line({ + shape: getAxisLineShape(polar, radiusExtent, minorTickAngles[i][k].coord) + })); + } + } + group.add(mergePath$1(lines, { + style: lineStyleModel.getLineStyle(), + silent: true, + z: angleAxisModel.get('z') + })); + }, + splitArea: function (group, angleAxisModel, polar, ticksAngles, minorTickAngles, radiusExtent) { + if (!ticksAngles.length) { + return; + } + var splitAreaModel = angleAxisModel.getModel('splitArea'); + var areaStyleModel = splitAreaModel.getModel('areaStyle'); + var areaColors = areaStyleModel.get('color'); + var lineCount = 0; + areaColors = areaColors instanceof Array ? areaColors : [areaColors]; + var splitAreas = []; + var RADIAN = Math.PI / 180; + var prevAngle = -ticksAngles[0].coord * RADIAN; + var r0 = Math.min(radiusExtent[0], radiusExtent[1]); + var r1 = Math.max(radiusExtent[0], radiusExtent[1]); + var clockwise = angleAxisModel.get('clockwise'); + for (var i = 1, len = ticksAngles.length; i <= len; i++) { + var coord = i === len ? ticksAngles[0].coord : ticksAngles[i].coord; + var colorIndex = lineCount++ % areaColors.length; + splitAreas[colorIndex] = splitAreas[colorIndex] || []; + splitAreas[colorIndex].push(new Sector({ + shape: { + cx: polar.cx, + cy: polar.cy, + r0: r0, + r: r1, + startAngle: prevAngle, + endAngle: -coord * RADIAN, + clockwise: clockwise + }, + silent: true + })); + prevAngle = -coord * RADIAN; + } + // Simple optimization + // Batching the lines if color are the same + for (var i = 0; i < splitAreas.length; i++) { + group.add(mergePath$1(splitAreas[i], { + style: defaults({ + fill: areaColors[i % areaColors.length] + }, areaStyleModel.getAreaStyle()), + silent: true + })); + } + } + }; + + var axisBuilderAttrs$2 = ['axisLine', 'axisTickLabel', 'axisName']; + var selfBuilderAttrs$1 = ['splitLine', 'splitArea', 'minorSplitLine']; + var RadiusAxisView = /** @class */function (_super) { + __extends(RadiusAxisView, _super); + function RadiusAxisView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = RadiusAxisView.type; + _this.axisPointerClass = 'PolarAxisPointer'; + return _this; + } + RadiusAxisView.prototype.render = function (radiusAxisModel, ecModel) { + this.group.removeAll(); + if (!radiusAxisModel.get('show')) { + return; + } + var oldAxisGroup = this._axisGroup; + var newAxisGroup = this._axisGroup = new Group(); + this.group.add(newAxisGroup); + var radiusAxis = radiusAxisModel.axis; + var polar = radiusAxis.polar; + var angleAxis = polar.getAngleAxis(); + var ticksCoords = radiusAxis.getTicksCoords(); + var minorTicksCoords = radiusAxis.getMinorTicksCoords(); + var axisAngle = angleAxis.getExtent()[0]; + var radiusExtent = radiusAxis.getExtent(); + var layout = layoutAxis(polar, radiusAxisModel, axisAngle); + var axisBuilder = new AxisBuilder(radiusAxisModel, layout); + each(axisBuilderAttrs$2, axisBuilder.add, axisBuilder); + newAxisGroup.add(axisBuilder.getGroup()); + groupTransition(oldAxisGroup, newAxisGroup, radiusAxisModel); + each(selfBuilderAttrs$1, function (name) { + if (radiusAxisModel.get([name, 'show']) && !radiusAxis.scale.isBlank()) { + axisElementBuilders$1[name](this.group, radiusAxisModel, polar, axisAngle, radiusExtent, ticksCoords, minorTicksCoords); + } + }, this); + }; + RadiusAxisView.type = 'radiusAxis'; + return RadiusAxisView; + }(AxisView); + var axisElementBuilders$1 = { + splitLine: function (group, radiusAxisModel, polar, axisAngle, radiusExtent, ticksCoords) { + var splitLineModel = radiusAxisModel.getModel('splitLine'); + var lineStyleModel = splitLineModel.getModel('lineStyle'); + var lineColors = lineStyleModel.get('color'); + var lineCount = 0; + var angleAxis = polar.getAngleAxis(); + var RADIAN = Math.PI / 180; + var angleExtent = angleAxis.getExtent(); + var shapeType = Math.abs(angleExtent[1] - angleExtent[0]) === 360 ? 'Circle' : 'Arc'; + lineColors = lineColors instanceof Array ? lineColors : [lineColors]; + var splitLines = []; + for (var i = 0; i < ticksCoords.length; i++) { + var colorIndex = lineCount++ % lineColors.length; + splitLines[colorIndex] = splitLines[colorIndex] || []; + splitLines[colorIndex].push(new graphic[shapeType]({ + shape: { + cx: polar.cx, + cy: polar.cy, + // ensure circle radius >= 0 + r: Math.max(ticksCoords[i].coord, 0), + startAngle: -angleExtent[0] * RADIAN, + endAngle: -angleExtent[1] * RADIAN, + clockwise: angleAxis.inverse + } + })); + } + // Simple optimization + // Batching the lines if color are the same + for (var i = 0; i < splitLines.length; i++) { + group.add(mergePath$1(splitLines[i], { + style: defaults({ + stroke: lineColors[i % lineColors.length], + fill: null + }, lineStyleModel.getLineStyle()), + silent: true + })); + } + }, + minorSplitLine: function (group, radiusAxisModel, polar, axisAngle, radiusExtent, ticksCoords, minorTicksCoords) { + if (!minorTicksCoords.length) { + return; + } + var minorSplitLineModel = radiusAxisModel.getModel('minorSplitLine'); + var lineStyleModel = minorSplitLineModel.getModel('lineStyle'); + var lines = []; + for (var i = 0; i < minorTicksCoords.length; i++) { + for (var k = 0; k < minorTicksCoords[i].length; k++) { + lines.push(new Circle({ + shape: { + cx: polar.cx, + cy: polar.cy, + r: minorTicksCoords[i][k].coord + } + })); + } + } + group.add(mergePath$1(lines, { + style: defaults({ + fill: null + }, lineStyleModel.getLineStyle()), + silent: true + })); + }, + splitArea: function (group, radiusAxisModel, polar, axisAngle, radiusExtent, ticksCoords) { + if (!ticksCoords.length) { + return; + } + var splitAreaModel = radiusAxisModel.getModel('splitArea'); + var areaStyleModel = splitAreaModel.getModel('areaStyle'); + var areaColors = areaStyleModel.get('color'); + var lineCount = 0; + areaColors = areaColors instanceof Array ? areaColors : [areaColors]; + var splitAreas = []; + var prevRadius = ticksCoords[0].coord; + for (var i = 1; i < ticksCoords.length; i++) { + var colorIndex = lineCount++ % areaColors.length; + splitAreas[colorIndex] = splitAreas[colorIndex] || []; + splitAreas[colorIndex].push(new Sector({ + shape: { + cx: polar.cx, + cy: polar.cy, + r0: prevRadius, + r: ticksCoords[i].coord, + startAngle: 0, + endAngle: Math.PI * 2 + }, + silent: true + })); + prevRadius = ticksCoords[i].coord; + } + // Simple optimization + // Batching the lines if color are the same + for (var i = 0; i < splitAreas.length; i++) { + group.add(mergePath$1(splitAreas[i], { + style: defaults({ + fill: areaColors[i % areaColors.length] + }, areaStyleModel.getAreaStyle()), + silent: true + })); + } + } + }; + /** + * @inner + */ + function layoutAxis(polar, radiusAxisModel, axisAngle) { + return { + position: [polar.cx, polar.cy], + rotation: axisAngle / 180 * Math.PI, + labelDirection: -1, + tickDirection: -1, + nameDirection: 1, + labelRotate: radiusAxisModel.getModel('axisLabel').get('rotate'), + // Over splitLine and splitArea + z2: 1 + }; + } + + function getSeriesStackId$1(seriesModel) { + return seriesModel.get('stack') || '__ec_stack_' + seriesModel.seriesIndex; + } + function getAxisKey$1(polar, axis) { + return axis.dim + polar.model.componentIndex; + } + function barLayoutPolar(seriesType, ecModel, api) { + var lastStackCoords = {}; + var barWidthAndOffset = calRadialBar(filter(ecModel.getSeriesByType(seriesType), function (seriesModel) { + return !ecModel.isSeriesFiltered(seriesModel) && seriesModel.coordinateSystem && seriesModel.coordinateSystem.type === 'polar'; + })); + ecModel.eachSeriesByType(seriesType, function (seriesModel) { + // Check series coordinate, do layout for polar only + if (seriesModel.coordinateSystem.type !== 'polar') { + return; + } + var data = seriesModel.getData(); + var polar = seriesModel.coordinateSystem; + var baseAxis = polar.getBaseAxis(); + var axisKey = getAxisKey$1(polar, baseAxis); + var stackId = getSeriesStackId$1(seriesModel); + var columnLayoutInfo = barWidthAndOffset[axisKey][stackId]; + var columnOffset = columnLayoutInfo.offset; + var columnWidth = columnLayoutInfo.width; + var valueAxis = polar.getOtherAxis(baseAxis); + var cx = seriesModel.coordinateSystem.cx; + var cy = seriesModel.coordinateSystem.cy; + var barMinHeight = seriesModel.get('barMinHeight') || 0; + var barMinAngle = seriesModel.get('barMinAngle') || 0; + lastStackCoords[stackId] = lastStackCoords[stackId] || []; + var valueDim = data.mapDimension(valueAxis.dim); + var baseDim = data.mapDimension(baseAxis.dim); + var stacked = isDimensionStacked(data, valueDim /* , baseDim */); + var clampLayout = baseAxis.dim !== 'radius' || !seriesModel.get('roundCap', true); + var valueAxisStart = valueAxis.dataToCoord(0); + for (var idx = 0, len = data.count(); idx < len; idx++) { + var value = data.get(valueDim, idx); + var baseValue = data.get(baseDim, idx); + var sign = value >= 0 ? 'p' : 'n'; + var baseCoord = valueAxisStart; + // Because of the barMinHeight, we can not use the value in + // stackResultDimension directly. + // Only ordinal axis can be stacked. + if (stacked) { + if (!lastStackCoords[stackId][baseValue]) { + lastStackCoords[stackId][baseValue] = { + p: valueAxisStart, + n: valueAxisStart // Negative stack + }; + } + // Should also consider #4243 + baseCoord = lastStackCoords[stackId][baseValue][sign]; + } + var r0 = void 0; + var r = void 0; + var startAngle = void 0; + var endAngle = void 0; + // radial sector + if (valueAxis.dim === 'radius') { + var radiusSpan = valueAxis.dataToCoord(value) - valueAxisStart; + var angle = baseAxis.dataToCoord(baseValue); + if (Math.abs(radiusSpan) < barMinHeight) { + radiusSpan = (radiusSpan < 0 ? -1 : 1) * barMinHeight; + } + r0 = baseCoord; + r = baseCoord + radiusSpan; + startAngle = angle - columnOffset; + endAngle = startAngle - columnWidth; + stacked && (lastStackCoords[stackId][baseValue][sign] = r); + } + // tangential sector + else { + var angleSpan = valueAxis.dataToCoord(value, clampLayout) - valueAxisStart; + var radius = baseAxis.dataToCoord(baseValue); + if (Math.abs(angleSpan) < barMinAngle) { + angleSpan = (angleSpan < 0 ? -1 : 1) * barMinAngle; + } + r0 = radius + columnOffset; + r = r0 + columnWidth; + startAngle = baseCoord; + endAngle = baseCoord + angleSpan; + // if the previous stack is at the end of the ring, + // add a round to differentiate it from origin + // let extent = angleAxis.getExtent(); + // let stackCoord = angle; + // if (stackCoord === extent[0] && value > 0) { + // stackCoord = extent[1]; + // } + // else if (stackCoord === extent[1] && value < 0) { + // stackCoord = extent[0]; + // } + stacked && (lastStackCoords[stackId][baseValue][sign] = endAngle); + } + data.setItemLayout(idx, { + cx: cx, + cy: cy, + r0: r0, + r: r, + // Consider that positive angle is anti-clockwise, + // while positive radian of sector is clockwise + startAngle: -startAngle * Math.PI / 180, + endAngle: -endAngle * Math.PI / 180, + /** + * Keep the same logic with bar in catesion: use end value to + * control direction. Notice that if clockwise is true (by + * default), the sector will always draw clockwisely, no matter + * whether endAngle is greater or less than startAngle. + */ + clockwise: startAngle >= endAngle + }); + } + }); + } + /** + * Calculate bar width and offset for radial bar charts + */ + function calRadialBar(barSeries) { + // Columns info on each category axis. Key is polar name + var columnsMap = {}; + each(barSeries, function (seriesModel, idx) { + var data = seriesModel.getData(); + var polar = seriesModel.coordinateSystem; + var baseAxis = polar.getBaseAxis(); + var axisKey = getAxisKey$1(polar, baseAxis); + var axisExtent = baseAxis.getExtent(); + var bandWidth = baseAxis.type === 'category' ? baseAxis.getBandWidth() : Math.abs(axisExtent[1] - axisExtent[0]) / data.count(); + var columnsOnAxis = columnsMap[axisKey] || { + bandWidth: bandWidth, + remainedWidth: bandWidth, + autoWidthCount: 0, + categoryGap: '20%', + gap: '30%', + stacks: {} + }; + var stacks = columnsOnAxis.stacks; + columnsMap[axisKey] = columnsOnAxis; + var stackId = getSeriesStackId$1(seriesModel); + if (!stacks[stackId]) { + columnsOnAxis.autoWidthCount++; + } + stacks[stackId] = stacks[stackId] || { + width: 0, + maxWidth: 0 + }; + var barWidth = parsePercent$1(seriesModel.get('barWidth'), bandWidth); + var barMaxWidth = parsePercent$1(seriesModel.get('barMaxWidth'), bandWidth); + var barGap = seriesModel.get('barGap'); + var barCategoryGap = seriesModel.get('barCategoryGap'); + if (barWidth && !stacks[stackId].width) { + barWidth = Math.min(columnsOnAxis.remainedWidth, barWidth); + stacks[stackId].width = barWidth; + columnsOnAxis.remainedWidth -= barWidth; + } + barMaxWidth && (stacks[stackId].maxWidth = barMaxWidth); + barGap != null && (columnsOnAxis.gap = barGap); + barCategoryGap != null && (columnsOnAxis.categoryGap = barCategoryGap); + }); + var result = {}; + each(columnsMap, function (columnsOnAxis, coordSysName) { + result[coordSysName] = {}; + var stacks = columnsOnAxis.stacks; + var bandWidth = columnsOnAxis.bandWidth; + var categoryGap = parsePercent$1(columnsOnAxis.categoryGap, bandWidth); + var barGapPercent = parsePercent$1(columnsOnAxis.gap, 1); + var remainedWidth = columnsOnAxis.remainedWidth; + var autoWidthCount = columnsOnAxis.autoWidthCount; + var autoWidth = (remainedWidth - categoryGap) / (autoWidthCount + (autoWidthCount - 1) * barGapPercent); + autoWidth = Math.max(autoWidth, 0); + // Find if any auto calculated bar exceeded maxBarWidth + each(stacks, function (column, stack) { + var maxWidth = column.maxWidth; + if (maxWidth && maxWidth < autoWidth) { + maxWidth = Math.min(maxWidth, remainedWidth); + if (column.width) { + maxWidth = Math.min(maxWidth, column.width); + } + remainedWidth -= maxWidth; + column.width = maxWidth; + autoWidthCount--; + } + }); + // Recalculate width again + autoWidth = (remainedWidth - categoryGap) / (autoWidthCount + (autoWidthCount - 1) * barGapPercent); + autoWidth = Math.max(autoWidth, 0); + var widthSum = 0; + var lastColumn; + each(stacks, function (column, idx) { + if (!column.width) { + column.width = autoWidth; + } + lastColumn = column; + widthSum += column.width * (1 + barGapPercent); + }); + if (lastColumn) { + widthSum -= lastColumn.width * barGapPercent; + } + var offset = -widthSum / 2; + each(stacks, function (column, stackId) { + result[coordSysName][stackId] = result[coordSysName][stackId] || { + offset: offset, + width: column.width + }; + offset += column.width * (1 + barGapPercent); + }); + }); + return result; + } + + var angleAxisExtraOption = { + startAngle: 90, + clockwise: true, + splitNumber: 12, + axisLabel: { + rotate: 0 + } + }; + var radiusAxisExtraOption = { + splitNumber: 5 + }; + var PolarView = /** @class */function (_super) { + __extends(PolarView, _super); + function PolarView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = PolarView.type; + return _this; + } + PolarView.type = 'polar'; + return PolarView; + }(ComponentView); + function install$u(registers) { + use(install$s); + AxisView.registerAxisPointerClass('PolarAxisPointer', PolarAxisPointer); + registers.registerCoordinateSystem('polar', polarCreator); + registers.registerComponentModel(PolarModel); + registers.registerComponentView(PolarView); + // Model and view for angleAxis and radiusAxis + axisModelCreator(registers, 'angle', AngleAxisModel, angleAxisExtraOption); + axisModelCreator(registers, 'radius', RadiusAxisModel, radiusAxisExtraOption); + registers.registerComponentView(AngleAxisView); + registers.registerComponentView(RadiusAxisView); + registers.registerLayout(curry(barLayoutPolar, 'bar')); + } + + function layout$2(axisModel, opt) { + opt = opt || {}; + var single = axisModel.coordinateSystem; + var axis = axisModel.axis; + var layout = {}; + var axisPosition = axis.position; + var orient = axis.orient; + var rect = single.getRect(); + var rectBound = [rect.x, rect.x + rect.width, rect.y, rect.y + rect.height]; + var positionMap = { + horizontal: { + top: rectBound[2], + bottom: rectBound[3] + }, + vertical: { + left: rectBound[0], + right: rectBound[1] + } + }; + layout.position = [orient === 'vertical' ? positionMap.vertical[axisPosition] : rectBound[0], orient === 'horizontal' ? positionMap.horizontal[axisPosition] : rectBound[3]]; + var r = { + horizontal: 0, + vertical: 1 + }; + layout.rotation = Math.PI / 2 * r[orient]; + var directionMap = { + top: -1, + bottom: 1, + right: 1, + left: -1 + }; + layout.labelDirection = layout.tickDirection = layout.nameDirection = directionMap[axisPosition]; + if (axisModel.get(['axisTick', 'inside'])) { + layout.tickDirection = -layout.tickDirection; + } + if (retrieve(opt.labelInside, axisModel.get(['axisLabel', 'inside']))) { + layout.labelDirection = -layout.labelDirection; + } + var labelRotation = opt.rotate; + labelRotation == null && (labelRotation = axisModel.get(['axisLabel', 'rotate'])); + layout.labelRotation = axisPosition === 'top' ? -labelRotation : labelRotation; + layout.z2 = 1; + return layout; + } + + var axisBuilderAttrs$3 = ['axisLine', 'axisTickLabel', 'axisName']; + var selfBuilderAttrs$2 = ['splitArea', 'splitLine']; + var SingleAxisView = /** @class */function (_super) { + __extends(SingleAxisView, _super); + function SingleAxisView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = SingleAxisView.type; + _this.axisPointerClass = 'SingleAxisPointer'; + return _this; + } + SingleAxisView.prototype.render = function (axisModel, ecModel, api, payload) { + var group = this.group; + group.removeAll(); + var oldAxisGroup = this._axisGroup; + this._axisGroup = new Group(); + var layout = layout$2(axisModel); + var axisBuilder = new AxisBuilder(axisModel, layout); + each(axisBuilderAttrs$3, axisBuilder.add, axisBuilder); + group.add(this._axisGroup); + group.add(axisBuilder.getGroup()); + each(selfBuilderAttrs$2, function (name) { + if (axisModel.get([name, 'show'])) { + axisElementBuilders$2[name](this, this.group, this._axisGroup, axisModel); + } + }, this); + groupTransition(oldAxisGroup, this._axisGroup, axisModel); + _super.prototype.render.call(this, axisModel, ecModel, api, payload); + }; + SingleAxisView.prototype.remove = function () { + rectCoordAxisHandleRemove(this); + }; + SingleAxisView.type = 'singleAxis'; + return SingleAxisView; + }(AxisView); + var axisElementBuilders$2 = { + splitLine: function (axisView, group, axisGroup, axisModel) { + var axis = axisModel.axis; + if (axis.scale.isBlank()) { + return; + } + var splitLineModel = axisModel.getModel('splitLine'); + var lineStyleModel = splitLineModel.getModel('lineStyle'); + var lineColors = lineStyleModel.get('color'); + lineColors = lineColors instanceof Array ? lineColors : [lineColors]; + var lineWidth = lineStyleModel.get('width'); + var gridRect = axisModel.coordinateSystem.getRect(); + var isHorizontal = axis.isHorizontal(); + var splitLines = []; + var lineCount = 0; + var ticksCoords = axis.getTicksCoords({ + tickModel: splitLineModel + }); + var p1 = []; + var p2 = []; + for (var i = 0; i < ticksCoords.length; ++i) { + var tickCoord = axis.toGlobalCoord(ticksCoords[i].coord); + if (isHorizontal) { + p1[0] = tickCoord; + p1[1] = gridRect.y; + p2[0] = tickCoord; + p2[1] = gridRect.y + gridRect.height; + } else { + p1[0] = gridRect.x; + p1[1] = tickCoord; + p2[0] = gridRect.x + gridRect.width; + p2[1] = tickCoord; + } + var line = new Line({ + shape: { + x1: p1[0], + y1: p1[1], + x2: p2[0], + y2: p2[1] + }, + silent: true + }); + subPixelOptimizeLine$1(line.shape, lineWidth); + var colorIndex = lineCount++ % lineColors.length; + splitLines[colorIndex] = splitLines[colorIndex] || []; + splitLines[colorIndex].push(line); + } + var lineStyle = lineStyleModel.getLineStyle(['color']); + for (var i = 0; i < splitLines.length; ++i) { + group.add(mergePath$1(splitLines[i], { + style: defaults({ + stroke: lineColors[i % lineColors.length] + }, lineStyle), + silent: true + })); + } + }, + splitArea: function (axisView, group, axisGroup, axisModel) { + rectCoordAxisBuildSplitArea(axisView, axisGroup, axisModel, axisModel); + } + }; + + var SingleAxisModel = /** @class */function (_super) { + __extends(SingleAxisModel, _super); + function SingleAxisModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = SingleAxisModel.type; + return _this; + } + SingleAxisModel.prototype.getCoordSysModel = function () { + return this; + }; + SingleAxisModel.type = 'singleAxis'; + SingleAxisModel.layoutMode = 'box'; + SingleAxisModel.defaultOption = { + left: '5%', + top: '5%', + right: '5%', + bottom: '5%', + type: 'value', + position: 'bottom', + orient: 'horizontal', + axisLine: { + show: true, + lineStyle: { + width: 1, + type: 'solid' + } + }, + // Single coordinate system and single axis is the, + // which is used as the parent tooltip model. + // same model, so we set default tooltip show as true. + tooltip: { + show: true + }, + axisTick: { + show: true, + length: 6, + lineStyle: { + width: 1 + } + }, + axisLabel: { + show: true, + interval: 'auto' + }, + splitLine: { + show: true, + lineStyle: { + type: 'dashed', + opacity: 0.2 + } + } + }; + return SingleAxisModel; + }(ComponentModel); + mixin(SingleAxisModel, AxisModelCommonMixin.prototype); + + var SingleAxis = /** @class */function (_super) { + __extends(SingleAxis, _super); + function SingleAxis(dim, scale, coordExtent, axisType, position) { + var _this = _super.call(this, dim, scale, coordExtent) || this; + _this.type = axisType || 'value'; + _this.position = position || 'bottom'; + return _this; + } + /** + * Judge the orient of the axis. + */ + SingleAxis.prototype.isHorizontal = function () { + var position = this.position; + return position === 'top' || position === 'bottom'; + }; + SingleAxis.prototype.pointToData = function (point, clamp) { + return this.coordinateSystem.pointToData(point)[0]; + }; + return SingleAxis; + }(Axis); + + var singleDimensions = ['single']; + /** + * Create a single coordinates system. + */ + var Single = /** @class */function () { + function Single(axisModel, ecModel, api) { + this.type = 'single'; + this.dimension = 'single'; + /** + * Add it just for draw tooltip. + */ + this.dimensions = singleDimensions; + this.axisPointerEnabled = true; + this.model = axisModel; + this._init(axisModel, ecModel, api); + } + /** + * Initialize single coordinate system. + */ + Single.prototype._init = function (axisModel, ecModel, api) { + var dim = this.dimension; + var axis = new SingleAxis(dim, createScaleByModel(axisModel), [0, 0], axisModel.get('type'), axisModel.get('position')); + var isCategory = axis.type === 'category'; + axis.onBand = isCategory && axisModel.get('boundaryGap'); + axis.inverse = axisModel.get('inverse'); + axis.orient = axisModel.get('orient'); + axisModel.axis = axis; + axis.model = axisModel; + axis.coordinateSystem = this; + this._axis = axis; + }; + /** + * Update axis scale after data processed + */ + Single.prototype.update = function (ecModel, api) { + ecModel.eachSeries(function (seriesModel) { + if (seriesModel.coordinateSystem === this) { + var data_1 = seriesModel.getData(); + each(data_1.mapDimensionsAll(this.dimension), function (dim) { + this._axis.scale.unionExtentFromData(data_1, dim); + }, this); + niceScaleExtent(this._axis.scale, this._axis.model); + } + }, this); + }; + /** + * Resize the single coordinate system. + */ + Single.prototype.resize = function (axisModel, api) { + this._rect = getLayoutRect({ + left: axisModel.get('left'), + top: axisModel.get('top'), + right: axisModel.get('right'), + bottom: axisModel.get('bottom'), + width: axisModel.get('width'), + height: axisModel.get('height') + }, { + width: api.getWidth(), + height: api.getHeight() + }); + this._adjustAxis(); + }; + Single.prototype.getRect = function () { + return this._rect; + }; + Single.prototype._adjustAxis = function () { + var rect = this._rect; + var axis = this._axis; + var isHorizontal = axis.isHorizontal(); + var extent = isHorizontal ? [0, rect.width] : [0, rect.height]; + var idx = axis.inverse ? 1 : 0; + axis.setExtent(extent[idx], extent[1 - idx]); + this._updateAxisTransform(axis, isHorizontal ? rect.x : rect.y); + }; + Single.prototype._updateAxisTransform = function (axis, coordBase) { + var axisExtent = axis.getExtent(); + var extentSum = axisExtent[0] + axisExtent[1]; + var isHorizontal = axis.isHorizontal(); + axis.toGlobalCoord = isHorizontal ? function (coord) { + return coord + coordBase; + } : function (coord) { + return extentSum - coord + coordBase; + }; + axis.toLocalCoord = isHorizontal ? function (coord) { + return coord - coordBase; + } : function (coord) { + return extentSum - coord + coordBase; + }; + }; + /** + * Get axis. + */ + Single.prototype.getAxis = function () { + return this._axis; + }; + /** + * Get axis, add it just for draw tooltip. + */ + Single.prototype.getBaseAxis = function () { + return this._axis; + }; + Single.prototype.getAxes = function () { + return [this._axis]; + }; + Single.prototype.getTooltipAxes = function () { + return { + baseAxes: [this.getAxis()], + // Empty otherAxes + otherAxes: [] + }; + }; + /** + * If contain point. + */ + Single.prototype.containPoint = function (point) { + var rect = this.getRect(); + var axis = this.getAxis(); + var orient = axis.orient; + if (orient === 'horizontal') { + return axis.contain(axis.toLocalCoord(point[0])) && point[1] >= rect.y && point[1] <= rect.y + rect.height; + } else { + return axis.contain(axis.toLocalCoord(point[1])) && point[0] >= rect.y && point[0] <= rect.y + rect.height; + } + }; + Single.prototype.pointToData = function (point) { + var axis = this.getAxis(); + return [axis.coordToData(axis.toLocalCoord(point[axis.orient === 'horizontal' ? 0 : 1]))]; + }; + /** + * Convert the series data to concrete point. + * Can be [val] | val + */ + Single.prototype.dataToPoint = function (val) { + var axis = this.getAxis(); + var rect = this.getRect(); + var pt = []; + var idx = axis.orient === 'horizontal' ? 0 : 1; + if (val instanceof Array) { + val = val[0]; + } + pt[idx] = axis.toGlobalCoord(axis.dataToCoord(+val)); + pt[1 - idx] = idx === 0 ? rect.y + rect.height / 2 : rect.x + rect.width / 2; + return pt; + }; + Single.prototype.convertToPixel = function (ecModel, finder, value) { + var coordSys = getCoordSys$3(finder); + return coordSys === this ? this.dataToPoint(value) : null; + }; + Single.prototype.convertFromPixel = function (ecModel, finder, pixel) { + var coordSys = getCoordSys$3(finder); + return coordSys === this ? this.pointToData(pixel) : null; + }; + return Single; + }(); + function getCoordSys$3(finder) { + var seriesModel = finder.seriesModel; + var singleModel = finder.singleAxisModel; + return singleModel && singleModel.coordinateSystem || seriesModel && seriesModel.coordinateSystem; + } + + /** + * Create single coordinate system and inject it into seriesModel. + */ + function create$2(ecModel, api) { + var singles = []; + ecModel.eachComponent('singleAxis', function (axisModel, idx) { + var single = new Single(axisModel, ecModel, api); + single.name = 'single_' + idx; + single.resize(axisModel, api); + axisModel.coordinateSystem = single; + singles.push(single); + }); + ecModel.eachSeries(function (seriesModel) { + if (seriesModel.get('coordinateSystem') === 'singleAxis') { + var singleAxisModel = seriesModel.getReferringComponents('singleAxis', SINGLE_REFERRING).models[0]; + seriesModel.coordinateSystem = singleAxisModel && singleAxisModel.coordinateSystem; + } + }); + return singles; + } + var singleCreator = { + create: create$2, + dimensions: singleDimensions + }; + + var XY = ['x', 'y']; + var WH = ['width', 'height']; + var SingleAxisPointer = /** @class */function (_super) { + __extends(SingleAxisPointer, _super); + function SingleAxisPointer() { + return _super !== null && _super.apply(this, arguments) || this; + } + /** + * @override + */ + SingleAxisPointer.prototype.makeElOption = function (elOption, value, axisModel, axisPointerModel, api) { + var axis = axisModel.axis; + var coordSys = axis.coordinateSystem; + var otherExtent = getGlobalExtent(coordSys, 1 - getPointDimIndex(axis)); + var pixelValue = coordSys.dataToPoint(value)[0]; + var axisPointerType = axisPointerModel.get('type'); + if (axisPointerType && axisPointerType !== 'none') { + var elStyle = buildElStyle(axisPointerModel); + var pointerOption = pointerShapeBuilder$2[axisPointerType](axis, pixelValue, otherExtent); + pointerOption.style = elStyle; + elOption.graphicKey = pointerOption.type; + elOption.pointer = pointerOption; + } + var layoutInfo = layout$2(axisModel); + buildCartesianSingleLabelElOption( + // @ts-ignore + value, elOption, layoutInfo, axisModel, axisPointerModel, api); + }; + /** + * @override + */ + SingleAxisPointer.prototype.getHandleTransform = function (value, axisModel, axisPointerModel) { + var layoutInfo = layout$2(axisModel, { + labelInside: false + }); + // @ts-ignore + layoutInfo.labelMargin = axisPointerModel.get(['handle', 'margin']); + var position = getTransformedPosition(axisModel.axis, value, layoutInfo); + return { + x: position[0], + y: position[1], + rotation: layoutInfo.rotation + (layoutInfo.labelDirection < 0 ? Math.PI : 0) + }; + }; + /** + * @override + */ + SingleAxisPointer.prototype.updateHandleTransform = function (transform, delta, axisModel, axisPointerModel) { + var axis = axisModel.axis; + var coordSys = axis.coordinateSystem; + var dimIndex = getPointDimIndex(axis); + var axisExtent = getGlobalExtent(coordSys, dimIndex); + var currPosition = [transform.x, transform.y]; + currPosition[dimIndex] += delta[dimIndex]; + currPosition[dimIndex] = Math.min(axisExtent[1], currPosition[dimIndex]); + currPosition[dimIndex] = Math.max(axisExtent[0], currPosition[dimIndex]); + var otherExtent = getGlobalExtent(coordSys, 1 - dimIndex); + var cursorOtherValue = (otherExtent[1] + otherExtent[0]) / 2; + var cursorPoint = [cursorOtherValue, cursorOtherValue]; + cursorPoint[dimIndex] = currPosition[dimIndex]; + return { + x: currPosition[0], + y: currPosition[1], + rotation: transform.rotation, + cursorPoint: cursorPoint, + tooltipOption: { + verticalAlign: 'middle' + } + }; + }; + return SingleAxisPointer; + }(BaseAxisPointer); + var pointerShapeBuilder$2 = { + line: function (axis, pixelValue, otherExtent) { + var targetShape = makeLineShape([pixelValue, otherExtent[0]], [pixelValue, otherExtent[1]], getPointDimIndex(axis)); + return { + type: 'Line', + subPixelOptimize: true, + shape: targetShape + }; + }, + shadow: function (axis, pixelValue, otherExtent) { + var bandWidth = axis.getBandWidth(); + var span = otherExtent[1] - otherExtent[0]; + return { + type: 'Rect', + shape: makeRectShape([pixelValue - bandWidth / 2, otherExtent[0]], [bandWidth, span], getPointDimIndex(axis)) + }; + } + }; + function getPointDimIndex(axis) { + return axis.isHorizontal() ? 0 : 1; + } + function getGlobalExtent(coordSys, dimIndex) { + var rect = coordSys.getRect(); + return [rect[XY[dimIndex]], rect[XY[dimIndex]] + rect[WH[dimIndex]]]; + } + + var SingleView = /** @class */function (_super) { + __extends(SingleView, _super); + function SingleView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = SingleView.type; + return _this; + } + SingleView.type = 'single'; + return SingleView; + }(ComponentView); + function install$v(registers) { + use(install$s); + AxisView.registerAxisPointerClass('SingleAxisPointer', SingleAxisPointer); + registers.registerComponentView(SingleView); + // Axis + registers.registerComponentView(SingleAxisView); + registers.registerComponentModel(SingleAxisModel); + axisModelCreator(registers, 'single', SingleAxisModel, SingleAxisModel.defaultOption); + registers.registerCoordinateSystem('single', singleCreator); + } + + var CalendarModel = /** @class */function (_super) { + __extends(CalendarModel, _super); + function CalendarModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = CalendarModel.type; + return _this; + } + /** + * @override + */ + CalendarModel.prototype.init = function (option, parentModel, ecModel) { + var inputPositionParams = getLayoutParams(option); + _super.prototype.init.apply(this, arguments); + mergeAndNormalizeLayoutParams(option, inputPositionParams); + }; + /** + * @override + */ + CalendarModel.prototype.mergeOption = function (option) { + _super.prototype.mergeOption.apply(this, arguments); + mergeAndNormalizeLayoutParams(this.option, option); + }; + CalendarModel.prototype.getCellSize = function () { + // Has been normalized + return this.option.cellSize; + }; + CalendarModel.type = 'calendar'; + CalendarModel.defaultOption = { + // zlevel: 0, + z: 2, + left: 80, + top: 60, + cellSize: 20, + // horizontal vertical + orient: 'horizontal', + // month separate line style + splitLine: { + show: true, + lineStyle: { + color: '#000', + width: 1, + type: 'solid' + } + }, + // rect style temporarily unused emphasis + itemStyle: { + color: '#fff', + borderWidth: 1, + borderColor: '#ccc' + }, + // week text style + dayLabel: { + show: true, + firstDay: 0, + // start end + position: 'start', + margin: '50%', + color: '#000' + }, + // month text style + monthLabel: { + show: true, + // start end + position: 'start', + margin: 5, + // center or left + align: 'center', + formatter: null, + color: '#000' + }, + // year text style + yearLabel: { + show: true, + // top bottom left right + position: null, + margin: 30, + formatter: null, + color: '#ccc', + fontFamily: 'sans-serif', + fontWeight: 'bolder', + fontSize: 20 + } + }; + return CalendarModel; + }(ComponentModel); + function mergeAndNormalizeLayoutParams(target, raw) { + // Normalize cellSize + var cellSize = target.cellSize; + var cellSizeArr; + if (!isArray(cellSize)) { + cellSizeArr = target.cellSize = [cellSize, cellSize]; + } else { + cellSizeArr = cellSize; + } + if (cellSizeArr.length === 1) { + cellSizeArr[1] = cellSizeArr[0]; + } + var ignoreSize = map([0, 1], function (hvIdx) { + // If user have set `width` or both `left` and `right`, cellSizeArr + // will be automatically set to 'auto', otherwise the default + // setting of cellSizeArr will make `width` setting not work. + if (sizeCalculable(raw, hvIdx)) { + cellSizeArr[hvIdx] = 'auto'; + } + return cellSizeArr[hvIdx] != null && cellSizeArr[hvIdx] !== 'auto'; + }); + mergeLayoutParam(target, raw, { + type: 'box', + ignoreSize: ignoreSize + }); + } + + var CalendarView = /** @class */function (_super) { + __extends(CalendarView, _super); + function CalendarView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = CalendarView.type; + return _this; + } + CalendarView.prototype.render = function (calendarModel, ecModel, api) { + var group = this.group; + group.removeAll(); + var coordSys = calendarModel.coordinateSystem; + // range info + var rangeData = coordSys.getRangeInfo(); + var orient = coordSys.getOrient(); + // locale + var localeModel = ecModel.getLocaleModel(); + this._renderDayRect(calendarModel, rangeData, group); + // _renderLines must be called prior to following function + this._renderLines(calendarModel, rangeData, orient, group); + this._renderYearText(calendarModel, rangeData, orient, group); + this._renderMonthText(calendarModel, localeModel, orient, group); + this._renderWeekText(calendarModel, localeModel, rangeData, orient, group); + }; + // render day rect + CalendarView.prototype._renderDayRect = function (calendarModel, rangeData, group) { + var coordSys = calendarModel.coordinateSystem; + var itemRectStyleModel = calendarModel.getModel('itemStyle').getItemStyle(); + var sw = coordSys.getCellWidth(); + var sh = coordSys.getCellHeight(); + for (var i = rangeData.start.time; i <= rangeData.end.time; i = coordSys.getNextNDay(i, 1).time) { + var point = coordSys.dataToRect([i], false).tl; + // every rect + var rect = new Rect({ + shape: { + x: point[0], + y: point[1], + width: sw, + height: sh + }, + cursor: 'default', + style: itemRectStyleModel + }); + group.add(rect); + } + }; + // render separate line + CalendarView.prototype._renderLines = function (calendarModel, rangeData, orient, group) { + var self = this; + var coordSys = calendarModel.coordinateSystem; + var lineStyleModel = calendarModel.getModel(['splitLine', 'lineStyle']).getLineStyle(); + var show = calendarModel.get(['splitLine', 'show']); + var lineWidth = lineStyleModel.lineWidth; + this._tlpoints = []; + this._blpoints = []; + this._firstDayOfMonth = []; + this._firstDayPoints = []; + var firstDay = rangeData.start; + for (var i = 0; firstDay.time <= rangeData.end.time; i++) { + addPoints(firstDay.formatedDate); + if (i === 0) { + firstDay = coordSys.getDateInfo(rangeData.start.y + '-' + rangeData.start.m); + } + var date = firstDay.date; + date.setMonth(date.getMonth() + 1); + firstDay = coordSys.getDateInfo(date); + } + addPoints(coordSys.getNextNDay(rangeData.end.time, 1).formatedDate); + function addPoints(date) { + self._firstDayOfMonth.push(coordSys.getDateInfo(date)); + self._firstDayPoints.push(coordSys.dataToRect([date], false).tl); + var points = self._getLinePointsOfOneWeek(calendarModel, date, orient); + self._tlpoints.push(points[0]); + self._blpoints.push(points[points.length - 1]); + show && self._drawSplitline(points, lineStyleModel, group); + } + // render top/left line + show && this._drawSplitline(self._getEdgesPoints(self._tlpoints, lineWidth, orient), lineStyleModel, group); + // render bottom/right line + show && this._drawSplitline(self._getEdgesPoints(self._blpoints, lineWidth, orient), lineStyleModel, group); + }; + // get points at both ends + CalendarView.prototype._getEdgesPoints = function (points, lineWidth, orient) { + var rs = [points[0].slice(), points[points.length - 1].slice()]; + var idx = orient === 'horizontal' ? 0 : 1; + // both ends of the line are extend half lineWidth + rs[0][idx] = rs[0][idx] - lineWidth / 2; + rs[1][idx] = rs[1][idx] + lineWidth / 2; + return rs; + }; + // render split line + CalendarView.prototype._drawSplitline = function (points, lineStyle, group) { + var poyline = new Polyline({ + z2: 20, + shape: { + points: points + }, + style: lineStyle + }); + group.add(poyline); + }; + // render month line of one week points + CalendarView.prototype._getLinePointsOfOneWeek = function (calendarModel, date, orient) { + var coordSys = calendarModel.coordinateSystem; + var parsedDate = coordSys.getDateInfo(date); + var points = []; + for (var i = 0; i < 7; i++) { + var tmpD = coordSys.getNextNDay(parsedDate.time, i); + var point = coordSys.dataToRect([tmpD.time], false); + points[2 * tmpD.day] = point.tl; + points[2 * tmpD.day + 1] = point[orient === 'horizontal' ? 'bl' : 'tr']; + } + return points; + }; + CalendarView.prototype._formatterLabel = function (formatter, params) { + if (isString(formatter) && formatter) { + return formatTplSimple(formatter, params); + } + if (isFunction(formatter)) { + return formatter(params); + } + return params.nameMap; + }; + CalendarView.prototype._yearTextPositionControl = function (textEl, point, orient, position, margin) { + var x = point[0]; + var y = point[1]; + var aligns = ['center', 'bottom']; + if (position === 'bottom') { + y += margin; + aligns = ['center', 'top']; + } else if (position === 'left') { + x -= margin; + } else if (position === 'right') { + x += margin; + aligns = ['center', 'top']; + } else { + // top + y -= margin; + } + var rotate = 0; + if (position === 'left' || position === 'right') { + rotate = Math.PI / 2; + } + return { + rotation: rotate, + x: x, + y: y, + style: { + align: aligns[0], + verticalAlign: aligns[1] + } + }; + }; + // render year + CalendarView.prototype._renderYearText = function (calendarModel, rangeData, orient, group) { + var yearLabel = calendarModel.getModel('yearLabel'); + if (!yearLabel.get('show')) { + return; + } + var margin = yearLabel.get('margin'); + var pos = yearLabel.get('position'); + if (!pos) { + pos = orient !== 'horizontal' ? 'top' : 'left'; + } + var points = [this._tlpoints[this._tlpoints.length - 1], this._blpoints[0]]; + var xc = (points[0][0] + points[1][0]) / 2; + var yc = (points[0][1] + points[1][1]) / 2; + var idx = orient === 'horizontal' ? 0 : 1; + var posPoints = { + top: [xc, points[idx][1]], + bottom: [xc, points[1 - idx][1]], + left: [points[1 - idx][0], yc], + right: [points[idx][0], yc] + }; + var name = rangeData.start.y; + if (+rangeData.end.y > +rangeData.start.y) { + name = name + '-' + rangeData.end.y; + } + var formatter = yearLabel.get('formatter'); + var params = { + start: rangeData.start.y, + end: rangeData.end.y, + nameMap: name + }; + var content = this._formatterLabel(formatter, params); + var yearText = new ZRText({ + z2: 30, + style: createTextStyle(yearLabel, { + text: content + }) + }); + yearText.attr(this._yearTextPositionControl(yearText, posPoints[pos], orient, pos, margin)); + group.add(yearText); + }; + CalendarView.prototype._monthTextPositionControl = function (point, isCenter, orient, position, margin) { + var align = 'left'; + var vAlign = 'top'; + var x = point[0]; + var y = point[1]; + if (orient === 'horizontal') { + y = y + margin; + if (isCenter) { + align = 'center'; + } + if (position === 'start') { + vAlign = 'bottom'; + } + } else { + x = x + margin; + if (isCenter) { + vAlign = 'middle'; + } + if (position === 'start') { + align = 'right'; + } + } + return { + x: x, + y: y, + align: align, + verticalAlign: vAlign + }; + }; + // render month and year text + CalendarView.prototype._renderMonthText = function (calendarModel, localeModel, orient, group) { + var monthLabel = calendarModel.getModel('monthLabel'); + if (!monthLabel.get('show')) { + return; + } + var nameMap = monthLabel.get('nameMap'); + var margin = monthLabel.get('margin'); + var pos = monthLabel.get('position'); + var align = monthLabel.get('align'); + var termPoints = [this._tlpoints, this._blpoints]; + if (!nameMap || isString(nameMap)) { + if (nameMap) { + // case-sensitive + localeModel = getLocaleModel(nameMap) || localeModel; + } + // PENDING + // for ZH locale, original form is `一月` but current form is `1月` + nameMap = localeModel.get(['time', 'monthAbbr']) || []; + } + var idx = pos === 'start' ? 0 : 1; + var axis = orient === 'horizontal' ? 0 : 1; + margin = pos === 'start' ? -margin : margin; + var isCenter = align === 'center'; + for (var i = 0; i < termPoints[idx].length - 1; i++) { + var tmp = termPoints[idx][i].slice(); + var firstDay = this._firstDayOfMonth[i]; + if (isCenter) { + var firstDayPoints = this._firstDayPoints[i]; + tmp[axis] = (firstDayPoints[axis] + termPoints[0][i + 1][axis]) / 2; + } + var formatter = monthLabel.get('formatter'); + var name_1 = nameMap[+firstDay.m - 1]; + var params = { + yyyy: firstDay.y, + yy: (firstDay.y + '').slice(2), + MM: firstDay.m, + M: +firstDay.m, + nameMap: name_1 + }; + var content = this._formatterLabel(formatter, params); + var monthText = new ZRText({ + z2: 30, + style: extend(createTextStyle(monthLabel, { + text: content + }), this._monthTextPositionControl(tmp, isCenter, orient, pos, margin)) + }); + group.add(monthText); + } + }; + CalendarView.prototype._weekTextPositionControl = function (point, orient, position, margin, cellSize) { + var align = 'center'; + var vAlign = 'middle'; + var x = point[0]; + var y = point[1]; + var isStart = position === 'start'; + if (orient === 'horizontal') { + x = x + margin + (isStart ? 1 : -1) * cellSize[0] / 2; + align = isStart ? 'right' : 'left'; + } else { + y = y + margin + (isStart ? 1 : -1) * cellSize[1] / 2; + vAlign = isStart ? 'bottom' : 'top'; + } + return { + x: x, + y: y, + align: align, + verticalAlign: vAlign + }; + }; + // render weeks + CalendarView.prototype._renderWeekText = function (calendarModel, localeModel, rangeData, orient, group) { + var dayLabel = calendarModel.getModel('dayLabel'); + if (!dayLabel.get('show')) { + return; + } + var coordSys = calendarModel.coordinateSystem; + var pos = dayLabel.get('position'); + var nameMap = dayLabel.get('nameMap'); + var margin = dayLabel.get('margin'); + var firstDayOfWeek = coordSys.getFirstDayOfWeek(); + if (!nameMap || isString(nameMap)) { + if (nameMap) { + // case-sensitive + localeModel = getLocaleModel(nameMap) || localeModel; + } + // Use the first letter of `dayOfWeekAbbr` if `dayOfWeekShort` doesn't exist in the locale file + var dayOfWeekShort = localeModel.get(['time', 'dayOfWeekShort']); + nameMap = dayOfWeekShort || map(localeModel.get(['time', 'dayOfWeekAbbr']), function (val) { + return val[0]; + }); + } + var start = coordSys.getNextNDay(rangeData.end.time, 7 - rangeData.lweek).time; + var cellSize = [coordSys.getCellWidth(), coordSys.getCellHeight()]; + margin = parsePercent$1(margin, Math.min(cellSize[1], cellSize[0])); + if (pos === 'start') { + start = coordSys.getNextNDay(rangeData.start.time, -(7 + rangeData.fweek)).time; + margin = -margin; + } + for (var i = 0; i < 7; i++) { + var tmpD = coordSys.getNextNDay(start, i); + var point = coordSys.dataToRect([tmpD.time], false).center; + var day = i; + day = Math.abs((i + firstDayOfWeek) % 7); + var weekText = new ZRText({ + z2: 30, + style: extend(createTextStyle(dayLabel, { + text: nameMap[day] + }), this._weekTextPositionControl(point, orient, pos, margin, cellSize)) + }); + group.add(weekText); + } + }; + CalendarView.type = 'calendar'; + return CalendarView; + }(ComponentView); + + // (24*60*60*1000) + var PROXIMATE_ONE_DAY = 86400000; + var Calendar = /** @class */function () { + function Calendar(calendarModel, ecModel, api) { + this.type = 'calendar'; + this.dimensions = Calendar.dimensions; + // Required in createListFromData + this.getDimensionsInfo = Calendar.getDimensionsInfo; + this._model = calendarModel; + } + Calendar.getDimensionsInfo = function () { + return [{ + name: 'time', + type: 'time' + }, 'value']; + }; + Calendar.prototype.getRangeInfo = function () { + return this._rangeInfo; + }; + Calendar.prototype.getModel = function () { + return this._model; + }; + Calendar.prototype.getRect = function () { + return this._rect; + }; + Calendar.prototype.getCellWidth = function () { + return this._sw; + }; + Calendar.prototype.getCellHeight = function () { + return this._sh; + }; + Calendar.prototype.getOrient = function () { + return this._orient; + }; + /** + * getFirstDayOfWeek + * + * @example + * 0 : start at Sunday + * 1 : start at Monday + * + * @return {number} + */ + Calendar.prototype.getFirstDayOfWeek = function () { + return this._firstDayOfWeek; + }; + /** + * get date info + * } + */ + Calendar.prototype.getDateInfo = function (date) { + date = parseDate(date); + var y = date.getFullYear(); + var m = date.getMonth() + 1; + var mStr = m < 10 ? '0' + m : '' + m; + var d = date.getDate(); + var dStr = d < 10 ? '0' + d : '' + d; + var day = date.getDay(); + day = Math.abs((day + 7 - this.getFirstDayOfWeek()) % 7); + return { + y: y + '', + m: mStr, + d: dStr, + day: day, + time: date.getTime(), + formatedDate: y + '-' + mStr + '-' + dStr, + date: date + }; + }; + Calendar.prototype.getNextNDay = function (date, n) { + n = n || 0; + if (n === 0) { + return this.getDateInfo(date); + } + date = new Date(this.getDateInfo(date).time); + date.setDate(date.getDate() + n); + return this.getDateInfo(date); + }; + Calendar.prototype.update = function (ecModel, api) { + this._firstDayOfWeek = +this._model.getModel('dayLabel').get('firstDay'); + this._orient = this._model.get('orient'); + this._lineWidth = this._model.getModel('itemStyle').getItemStyle().lineWidth || 0; + this._rangeInfo = this._getRangeInfo(this._initRangeOption()); + var weeks = this._rangeInfo.weeks || 1; + var whNames = ['width', 'height']; + var cellSize = this._model.getCellSize().slice(); + var layoutParams = this._model.getBoxLayoutParams(); + var cellNumbers = this._orient === 'horizontal' ? [weeks, 7] : [7, weeks]; + each([0, 1], function (idx) { + if (cellSizeSpecified(cellSize, idx)) { + layoutParams[whNames[idx]] = cellSize[idx] * cellNumbers[idx]; + } + }); + var whGlobal = { + width: api.getWidth(), + height: api.getHeight() + }; + var calendarRect = this._rect = getLayoutRect(layoutParams, whGlobal); + each([0, 1], function (idx) { + if (!cellSizeSpecified(cellSize, idx)) { + cellSize[idx] = calendarRect[whNames[idx]] / cellNumbers[idx]; + } + }); + function cellSizeSpecified(cellSize, idx) { + return cellSize[idx] != null && cellSize[idx] !== 'auto'; + } + // Has been calculated out number. + this._sw = cellSize[0]; + this._sh = cellSize[1]; + }; + /** + * Convert a time data(time, value) item to (x, y) point. + */ + // TODO Clamp of calendar is not same with cartesian coordinate systems. + // It will return NaN if data exceeds. + Calendar.prototype.dataToPoint = function (data, clamp) { + isArray(data) && (data = data[0]); + clamp == null && (clamp = true); + var dayInfo = this.getDateInfo(data); + var range = this._rangeInfo; + var date = dayInfo.formatedDate; + // if not in range return [NaN, NaN] + if (clamp && !(dayInfo.time >= range.start.time && dayInfo.time < range.end.time + PROXIMATE_ONE_DAY)) { + return [NaN, NaN]; + } + var week = dayInfo.day; + var nthWeek = this._getRangeInfo([range.start.time, date]).nthWeek; + if (this._orient === 'vertical') { + return [this._rect.x + week * this._sw + this._sw / 2, this._rect.y + nthWeek * this._sh + this._sh / 2]; + } + return [this._rect.x + nthWeek * this._sw + this._sw / 2, this._rect.y + week * this._sh + this._sh / 2]; + }; + /** + * Convert a (x, y) point to time data + */ + Calendar.prototype.pointToData = function (point) { + var date = this.pointToDate(point); + return date && date.time; + }; + /** + * Convert a time date item to (x, y) four point. + */ + Calendar.prototype.dataToRect = function (data, clamp) { + var point = this.dataToPoint(data, clamp); + return { + contentShape: { + x: point[0] - (this._sw - this._lineWidth) / 2, + y: point[1] - (this._sh - this._lineWidth) / 2, + width: this._sw - this._lineWidth, + height: this._sh - this._lineWidth + }, + center: point, + tl: [point[0] - this._sw / 2, point[1] - this._sh / 2], + tr: [point[0] + this._sw / 2, point[1] - this._sh / 2], + br: [point[0] + this._sw / 2, point[1] + this._sh / 2], + bl: [point[0] - this._sw / 2, point[1] + this._sh / 2] + }; + }; + /** + * Convert a (x, y) point to time date + * + * @param {Array} point point + * @return {Object} date + */ + Calendar.prototype.pointToDate = function (point) { + var nthX = Math.floor((point[0] - this._rect.x) / this._sw) + 1; + var nthY = Math.floor((point[1] - this._rect.y) / this._sh) + 1; + var range = this._rangeInfo.range; + if (this._orient === 'vertical') { + return this._getDateByWeeksAndDay(nthY, nthX - 1, range); + } + return this._getDateByWeeksAndDay(nthX, nthY - 1, range); + }; + Calendar.prototype.convertToPixel = function (ecModel, finder, value) { + var coordSys = getCoordSys$4(finder); + return coordSys === this ? coordSys.dataToPoint(value) : null; + }; + Calendar.prototype.convertFromPixel = function (ecModel, finder, pixel) { + var coordSys = getCoordSys$4(finder); + return coordSys === this ? coordSys.pointToData(pixel) : null; + }; + Calendar.prototype.containPoint = function (point) { + console.warn('Not implemented.'); + return false; + }; + /** + * initRange + * Normalize to an [start, end] array + */ + Calendar.prototype._initRangeOption = function () { + var range = this._model.get('range'); + var normalizedRange; + // Convert [1990] to 1990 + if (isArray(range) && range.length === 1) { + range = range[0]; + } + if (!isArray(range)) { + var rangeStr = range.toString(); + // One year. + if (/^\d{4}$/.test(rangeStr)) { + normalizedRange = [rangeStr + '-01-01', rangeStr + '-12-31']; + } + // One month + if (/^\d{4}[\/|-]\d{1,2}$/.test(rangeStr)) { + var start = this.getDateInfo(rangeStr); + var firstDay = start.date; + firstDay.setMonth(firstDay.getMonth() + 1); + var end = this.getNextNDay(firstDay, -1); + normalizedRange = [start.formatedDate, end.formatedDate]; + } + // One day + if (/^\d{4}[\/|-]\d{1,2}[\/|-]\d{1,2}$/.test(rangeStr)) { + normalizedRange = [rangeStr, rangeStr]; + } + } else { + normalizedRange = range; + } + if (!normalizedRange) { + if ("development" !== 'production') { + logError('Invalid date range.'); + } + // Not handling it. + return range; + } + var tmp = this._getRangeInfo(normalizedRange); + if (tmp.start.time > tmp.end.time) { + normalizedRange.reverse(); + } + return normalizedRange; + }; + /** + * range info + * + * @private + * @param {Array} range range ['2017-01-01', '2017-07-08'] + * If range[0] > range[1], they will not be reversed. + * @return {Object} obj + */ + Calendar.prototype._getRangeInfo = function (range) { + var parsedRange = [this.getDateInfo(range[0]), this.getDateInfo(range[1])]; + var reversed; + if (parsedRange[0].time > parsedRange[1].time) { + reversed = true; + parsedRange.reverse(); + } + var allDay = Math.floor(parsedRange[1].time / PROXIMATE_ONE_DAY) - Math.floor(parsedRange[0].time / PROXIMATE_ONE_DAY) + 1; + // Consider case1 (#11677 #10430): + // Set the system timezone as "UK", set the range to `['2016-07-01', '2016-12-31']` + // Consider case2: + // Firstly set system timezone as "Time Zone: America/Toronto", + // ``` + // let first = new Date(1478412000000 - 3600 * 1000 * 2.5); + // let second = new Date(1478412000000); + // let allDays = Math.floor(second / ONE_DAY) - Math.floor(first / ONE_DAY) + 1; + // ``` + // will get wrong result because of DST. So we should fix it. + var date = new Date(parsedRange[0].time); + var startDateNum = date.getDate(); + var endDateNum = parsedRange[1].date.getDate(); + date.setDate(startDateNum + allDay - 1); + // The bias can not over a month, so just compare date. + var dateNum = date.getDate(); + if (dateNum !== endDateNum) { + var sign = date.getTime() - parsedRange[1].time > 0 ? 1 : -1; + while ((dateNum = date.getDate()) !== endDateNum && (date.getTime() - parsedRange[1].time) * sign > 0) { + allDay -= sign; + date.setDate(dateNum - sign); + } + } + var weeks = Math.floor((allDay + parsedRange[0].day + 6) / 7); + var nthWeek = reversed ? -weeks + 1 : weeks - 1; + reversed && parsedRange.reverse(); + return { + range: [parsedRange[0].formatedDate, parsedRange[1].formatedDate], + start: parsedRange[0], + end: parsedRange[1], + allDay: allDay, + weeks: weeks, + // From 0. + nthWeek: nthWeek, + fweek: parsedRange[0].day, + lweek: parsedRange[1].day + }; + }; + /** + * get date by nthWeeks and week day in range + * + * @private + * @param {number} nthWeek the week + * @param {number} day the week day + * @param {Array} range [d1, d2] + * @return {Object} + */ + Calendar.prototype._getDateByWeeksAndDay = function (nthWeek, day, range) { + var rangeInfo = this._getRangeInfo(range); + if (nthWeek > rangeInfo.weeks || nthWeek === 0 && day < rangeInfo.fweek || nthWeek === rangeInfo.weeks && day > rangeInfo.lweek) { + return null; + } + var nthDay = (nthWeek - 1) * 7 - rangeInfo.fweek + day; + var date = new Date(rangeInfo.start.time); + date.setDate(+rangeInfo.start.d + nthDay); + return this.getDateInfo(date); + }; + Calendar.create = function (ecModel, api) { + var calendarList = []; + ecModel.eachComponent('calendar', function (calendarModel) { + var calendar = new Calendar(calendarModel, ecModel, api); + calendarList.push(calendar); + calendarModel.coordinateSystem = calendar; + }); + ecModel.eachSeries(function (calendarSeries) { + if (calendarSeries.get('coordinateSystem') === 'calendar') { + // Inject coordinate system + calendarSeries.coordinateSystem = calendarList[calendarSeries.get('calendarIndex') || 0]; + } + }); + return calendarList; + }; + Calendar.dimensions = ['time', 'value']; + return Calendar; + }(); + function getCoordSys$4(finder) { + var calendarModel = finder.calendarModel; + var seriesModel = finder.seriesModel; + var coordSys = calendarModel ? calendarModel.coordinateSystem : seriesModel ? seriesModel.coordinateSystem : null; + return coordSys; + } + + function install$w(registers) { + registers.registerComponentModel(CalendarModel); + registers.registerComponentView(CalendarView); + registers.registerCoordinateSystem('calendar', Calendar); + } + + function setKeyInfoToNewElOption(resultItem, newElOption) { + var existElOption = resultItem.existing; + // Set id and type after id assigned. + newElOption.id = resultItem.keyInfo.id; + !newElOption.type && existElOption && (newElOption.type = existElOption.type); + // Set parent id if not specified + if (newElOption.parentId == null) { + var newElParentOption = newElOption.parentOption; + if (newElParentOption) { + newElOption.parentId = newElParentOption.id; + } else if (existElOption) { + newElOption.parentId = existElOption.parentId; + } + } + // Clear + newElOption.parentOption = null; + } + function isSetLoc(obj, props) { + var isSet; + each(props, function (prop) { + obj[prop] != null && obj[prop] !== 'auto' && (isSet = true); + }); + return isSet; + } + function mergeNewElOptionToExist(existList, index, newElOption) { + // Update existing options, for `getOption` feature. + var newElOptCopy = extend({}, newElOption); + var existElOption = existList[index]; + var $action = newElOption.$action || 'merge'; + if ($action === 'merge') { + if (existElOption) { + if ("development" !== 'production') { + var newType = newElOption.type; + assert(!newType || existElOption.type === newType, 'Please set $action: "replace" to change `type`'); + } + // We can ensure that newElOptCopy and existElOption are not + // the same object, so `merge` will not change newElOptCopy. + merge(existElOption, newElOptCopy, true); + // Rigid body, use ignoreSize. + mergeLayoutParam(existElOption, newElOptCopy, { + ignoreSize: true + }); + // Will be used in render. + copyLayoutParams(newElOption, existElOption); + // Copy transition info to new option so it can be used in the transition. + // DO IT AFTER merge + copyTransitionInfo(newElOption, existElOption); + copyTransitionInfo(newElOption, existElOption, 'shape'); + copyTransitionInfo(newElOption, existElOption, 'style'); + copyTransitionInfo(newElOption, existElOption, 'extra'); + // Copy clipPath + newElOption.clipPath = existElOption.clipPath; + } else { + existList[index] = newElOptCopy; + } + } else if ($action === 'replace') { + existList[index] = newElOptCopy; + } else if ($action === 'remove') { + // null will be cleaned later. + existElOption && (existList[index] = null); + } + } + var TRANSITION_PROPS_TO_COPY = ['transition', 'enterFrom', 'leaveTo']; + var ROOT_TRANSITION_PROPS_TO_COPY = TRANSITION_PROPS_TO_COPY.concat(['enterAnimation', 'updateAnimation', 'leaveAnimation']); + function copyTransitionInfo(target, source, targetProp) { + if (targetProp) { + if (!target[targetProp] && source[targetProp]) { + // TODO avoid creating this empty object when there is no transition configuration. + target[targetProp] = {}; + } + target = target[targetProp]; + source = source[targetProp]; + } + if (!target || !source) { + return; + } + var props = targetProp ? TRANSITION_PROPS_TO_COPY : ROOT_TRANSITION_PROPS_TO_COPY; + for (var i = 0; i < props.length; i++) { + var prop = props[i]; + if (target[prop] == null && source[prop] != null) { + target[prop] = source[prop]; + } + } + } + function setLayoutInfoToExist(existItem, newElOption) { + if (!existItem) { + return; + } + existItem.hv = newElOption.hv = [ + // Rigid body, don't care about `width`. + isSetLoc(newElOption, ['left', 'right']), + // Rigid body, don't care about `height`. + isSetLoc(newElOption, ['top', 'bottom'])]; + // Give default group size. Otherwise layout error may occur. + if (existItem.type === 'group') { + var existingGroupOpt = existItem; + var newGroupOpt = newElOption; + existingGroupOpt.width == null && (existingGroupOpt.width = newGroupOpt.width = 0); + existingGroupOpt.height == null && (existingGroupOpt.height = newGroupOpt.height = 0); + } + } + var GraphicComponentModel = /** @class */function (_super) { + __extends(GraphicComponentModel, _super); + function GraphicComponentModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = GraphicComponentModel.type; + _this.preventAutoZ = true; + return _this; + } + GraphicComponentModel.prototype.mergeOption = function (option, ecModel) { + // Prevent default merge to elements + var elements = this.option.elements; + this.option.elements = null; + _super.prototype.mergeOption.call(this, option, ecModel); + this.option.elements = elements; + }; + GraphicComponentModel.prototype.optionUpdated = function (newOption, isInit) { + var thisOption = this.option; + var newList = (isInit ? thisOption : newOption).elements; + var existList = thisOption.elements = isInit ? [] : thisOption.elements; + var flattenedList = []; + this._flatten(newList, flattenedList, null); + var mappingResult = mappingToExists(existList, flattenedList, 'normalMerge'); + // Clear elOptionsToUpdate + var elOptionsToUpdate = this._elOptionsToUpdate = []; + each(mappingResult, function (resultItem, index) { + var newElOption = resultItem.newOption; + if ("development" !== 'production') { + assert(isObject(newElOption) || resultItem.existing, 'Empty graphic option definition'); + } + if (!newElOption) { + return; + } + elOptionsToUpdate.push(newElOption); + setKeyInfoToNewElOption(resultItem, newElOption); + mergeNewElOptionToExist(existList, index, newElOption); + setLayoutInfoToExist(existList[index], newElOption); + }, this); + // Clean + thisOption.elements = filter(existList, function (item) { + // $action should be volatile, otherwise option gotten from + // `getOption` will contain unexpected $action. + item && delete item.$action; + return item != null; + }); + }; + /** + * Convert + * [{ + * type: 'group', + * id: 'xx', + * children: [{type: 'circle'}, {type: 'polygon'}] + * }] + * to + * [ + * {type: 'group', id: 'xx'}, + * {type: 'circle', parentId: 'xx'}, + * {type: 'polygon', parentId: 'xx'} + * ] + */ + GraphicComponentModel.prototype._flatten = function (optionList, result, parentOption) { + each(optionList, function (option) { + if (!option) { + return; + } + if (parentOption) { + option.parentOption = parentOption; + } + result.push(option); + var children = option.children; + // here we don't judge if option.type is `group` + // when new option doesn't provide `type`, it will cause that the children can't be updated. + if (children && children.length) { + this._flatten(children, result, option); + } + // Deleting for JSON output, and for not affecting group creation. + delete option.children; + }, this); + }; + // FIXME + // Pass to view using payload? setOption has a payload? + GraphicComponentModel.prototype.useElOptionsToUpdate = function () { + var els = this._elOptionsToUpdate; + // Clear to avoid render duplicately when zooming. + this._elOptionsToUpdate = null; + return els; + }; + GraphicComponentModel.type = 'graphic'; + GraphicComponentModel.defaultOption = { + elements: [] + // parentId: null + }; + + return GraphicComponentModel; + }(ComponentModel); + + var nonShapeGraphicElements = { + // Reserved but not supported in graphic component. + path: null, + compoundPath: null, + // Supported in graphic component. + group: Group, + image: ZRImage, + text: ZRText + }; + var inner$e = makeInner(); + // ------------------------ + // View + // ------------------------ + var GraphicComponentView = /** @class */function (_super) { + __extends(GraphicComponentView, _super); + function GraphicComponentView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = GraphicComponentView.type; + return _this; + } + GraphicComponentView.prototype.init = function () { + this._elMap = createHashMap(); + }; + GraphicComponentView.prototype.render = function (graphicModel, ecModel, api) { + // Having leveraged between use cases and algorithm complexity, a very + // simple layout mechanism is used: + // The size(width/height) can be determined by itself or its parent (not + // implemented yet), but can not by its children. (Top-down travel) + // The location(x/y) can be determined by the bounding rect of itself + // (can including its descendants or not) and the size of its parent. + // (Bottom-up travel) + // When `chart.clear()` or `chart.setOption({...}, true)` with the same id, + // view will be reused. + if (graphicModel !== this._lastGraphicModel) { + this._clear(); + } + this._lastGraphicModel = graphicModel; + this._updateElements(graphicModel); + this._relocate(graphicModel, api); + }; + /** + * Update graphic elements. + */ + GraphicComponentView.prototype._updateElements = function (graphicModel) { + var elOptionsToUpdate = graphicModel.useElOptionsToUpdate(); + if (!elOptionsToUpdate) { + return; + } + var elMap = this._elMap; + var rootGroup = this.group; + var globalZ = graphicModel.get('z'); + var globalZLevel = graphicModel.get('zlevel'); + // Top-down tranverse to assign graphic settings to each elements. + each(elOptionsToUpdate, function (elOption) { + var id = convertOptionIdName(elOption.id, null); + var elExisting = id != null ? elMap.get(id) : null; + var parentId = convertOptionIdName(elOption.parentId, null); + var targetElParent = parentId != null ? elMap.get(parentId) : rootGroup; + var elType = elOption.type; + var elOptionStyle = elOption.style; + if (elType === 'text' && elOptionStyle) { + // In top/bottom mode, textVerticalAlign should not be used, which cause + // inaccurately locating. + if (elOption.hv && elOption.hv[1]) { + elOptionStyle.textVerticalAlign = elOptionStyle.textBaseline = elOptionStyle.verticalAlign = elOptionStyle.align = null; + } + } + var textContentOption = elOption.textContent; + var textConfig = elOption.textConfig; + if (elOptionStyle && isEC4CompatibleStyle(elOptionStyle, elType, !!textConfig, !!textContentOption)) { + var convertResult = convertFromEC4CompatibleStyle(elOptionStyle, elType, true); + if (!textConfig && convertResult.textConfig) { + textConfig = elOption.textConfig = convertResult.textConfig; + } + if (!textContentOption && convertResult.textContent) { + textContentOption = convertResult.textContent; + } + } + // Remove unnecessary props to avoid potential problems. + var elOptionCleaned = getCleanedElOption(elOption); + // For simple, do not support parent change, otherwise reorder is needed. + if ("development" !== 'production') { + elExisting && assert(targetElParent === elExisting.parent, 'Changing parent is not supported.'); + } + var $action = elOption.$action || 'merge'; + var isMerge = $action === 'merge'; + var isReplace = $action === 'replace'; + if (isMerge) { + var isInit = !elExisting; + var el_1 = elExisting; + if (isInit) { + el_1 = createEl$1(id, targetElParent, elOption.type, elMap); + } else { + el_1 && (inner$e(el_1).isNew = false); + // Stop and restore before update any other attributes. + stopPreviousKeyframeAnimationAndRestore(el_1); + } + if (el_1) { + applyUpdateTransition(el_1, elOptionCleaned, graphicModel, { + isInit: isInit + }); + updateCommonAttrs(el_1, elOption, globalZ, globalZLevel); + } + } else if (isReplace) { + removeEl(elExisting, elOption, elMap, graphicModel); + var el_2 = createEl$1(id, targetElParent, elOption.type, elMap); + if (el_2) { + applyUpdateTransition(el_2, elOptionCleaned, graphicModel, { + isInit: true + }); + updateCommonAttrs(el_2, elOption, globalZ, globalZLevel); + } + } else if ($action === 'remove') { + updateLeaveTo(elExisting, elOption); + removeEl(elExisting, elOption, elMap, graphicModel); + } + var el = elMap.get(id); + if (el && textContentOption) { + if (isMerge) { + var textContentExisting = el.getTextContent(); + textContentExisting ? textContentExisting.attr(textContentOption) : el.setTextContent(new ZRText(textContentOption)); + } else if (isReplace) { + el.setTextContent(new ZRText(textContentOption)); + } + } + if (el) { + var clipPathOption = elOption.clipPath; + if (clipPathOption) { + var clipPathType = clipPathOption.type; + var clipPath = void 0; + var isInit = false; + if (isMerge) { + var oldClipPath = el.getClipPath(); + isInit = !oldClipPath || inner$e(oldClipPath).type !== clipPathType; + clipPath = isInit ? newEl(clipPathType) : oldClipPath; + } else if (isReplace) { + isInit = true; + clipPath = newEl(clipPathType); + } + el.setClipPath(clipPath); + applyUpdateTransition(clipPath, clipPathOption, graphicModel, { + isInit: isInit + }); + applyKeyframeAnimation(clipPath, clipPathOption.keyframeAnimation, graphicModel); + } + var elInner = inner$e(el); + el.setTextConfig(textConfig); + elInner.option = elOption; + setEventData(el, graphicModel, elOption); + setTooltipConfig({ + el: el, + componentModel: graphicModel, + itemName: el.name, + itemTooltipOption: elOption.tooltip + }); + applyKeyframeAnimation(el, elOption.keyframeAnimation, graphicModel); + } + }); + }; + /** + * Locate graphic elements. + */ + GraphicComponentView.prototype._relocate = function (graphicModel, api) { + var elOptions = graphicModel.option.elements; + var rootGroup = this.group; + var elMap = this._elMap; + var apiWidth = api.getWidth(); + var apiHeight = api.getHeight(); + var xy = ['x', 'y']; + // Top-down to calculate percentage width/height of group + for (var i = 0; i < elOptions.length; i++) { + var elOption = elOptions[i]; + var id = convertOptionIdName(elOption.id, null); + var el = id != null ? elMap.get(id) : null; + if (!el || !el.isGroup) { + continue; + } + var parentEl = el.parent; + var isParentRoot = parentEl === rootGroup; + // Like 'position:absolut' in css, default 0. + var elInner = inner$e(el); + var parentElInner = inner$e(parentEl); + elInner.width = parsePercent$1(elInner.option.width, isParentRoot ? apiWidth : parentElInner.width) || 0; + elInner.height = parsePercent$1(elInner.option.height, isParentRoot ? apiHeight : parentElInner.height) || 0; + } + // Bottom-up tranvese all elements (consider ec resize) to locate elements. + for (var i = elOptions.length - 1; i >= 0; i--) { + var elOption = elOptions[i]; + var id = convertOptionIdName(elOption.id, null); + var el = id != null ? elMap.get(id) : null; + if (!el) { + continue; + } + var parentEl = el.parent; + var parentElInner = inner$e(parentEl); + var containerInfo = parentEl === rootGroup ? { + width: apiWidth, + height: apiHeight + } : { + width: parentElInner.width, + height: parentElInner.height + }; + // PENDING + // Currently, when `bounding: 'all'`, the union bounding rect of the group + // does not include the rect of [0, 0, group.width, group.height], which + // is probably weird for users. Should we make a break change for it? + var layoutPos = {}; + var layouted = positionElement(el, elOption, containerInfo, null, { + hv: elOption.hv, + boundingMode: elOption.bounding + }, layoutPos); + if (!inner$e(el).isNew && layouted) { + var transition = elOption.transition; + var animatePos = {}; + for (var k = 0; k < xy.length; k++) { + var key = xy[k]; + var val = layoutPos[key]; + if (transition && (isTransitionAll(transition) || indexOf(transition, key) >= 0)) { + animatePos[key] = val; + } else { + el[key] = val; + } + } + updateProps(el, animatePos, graphicModel, 0); + } else { + el.attr(layoutPos); + } + } + }; + /** + * Clear all elements. + */ + GraphicComponentView.prototype._clear = function () { + var _this = this; + var elMap = this._elMap; + elMap.each(function (el) { + removeEl(el, inner$e(el).option, elMap, _this._lastGraphicModel); + }); + this._elMap = createHashMap(); + }; + GraphicComponentView.prototype.dispose = function () { + this._clear(); + }; + GraphicComponentView.type = 'graphic'; + return GraphicComponentView; + }(ComponentView); + function newEl(graphicType) { + if ("development" !== 'production') { + assert(graphicType, 'graphic type MUST be set'); + } + var Clz = hasOwn(nonShapeGraphicElements, graphicType) + // Those graphic elements are not shapes. They should not be + // overwritten by users, so do them first. + ? nonShapeGraphicElements[graphicType] : getShapeClass(graphicType); + if ("development" !== 'production') { + assert(Clz, "graphic type " + graphicType + " can not be found"); + } + var el = new Clz({}); + inner$e(el).type = graphicType; + return el; + } + function createEl$1(id, targetElParent, graphicType, elMap) { + var el = newEl(graphicType); + targetElParent.add(el); + elMap.set(id, el); + inner$e(el).id = id; + inner$e(el).isNew = true; + return el; + } + function removeEl(elExisting, elOption, elMap, graphicModel) { + var existElParent = elExisting && elExisting.parent; + if (existElParent) { + elExisting.type === 'group' && elExisting.traverse(function (el) { + removeEl(el, elOption, elMap, graphicModel); + }); + applyLeaveTransition(elExisting, elOption, graphicModel); + elMap.removeKey(inner$e(elExisting).id); + } + } + function updateCommonAttrs(el, elOption, defaultZ, defaultZlevel) { + if (!el.isGroup) { + each([['cursor', Displayable.prototype.cursor], + // We should not support configure z and zlevel in the element level. + // But seems we didn't limit it previously. So here still use it to avoid breaking. + ['zlevel', defaultZlevel || 0], ['z', defaultZ || 0], + // z2 must not be null/undefined, otherwise sort error may occur. + ['z2', 0]], function (item) { + var prop = item[0]; + if (hasOwn(elOption, prop)) { + el[prop] = retrieve2(elOption[prop], item[1]); + } else if (el[prop] == null) { + el[prop] = item[1]; + } + }); + } + each(keys(elOption), function (key) { + // Assign event handlers. + // PENDING: should enumerate all event names or use pattern matching? + if (key.indexOf('on') === 0) { + var val = elOption[key]; + el[key] = isFunction(val) ? val : null; + } + }); + if (hasOwn(elOption, 'draggable')) { + el.draggable = elOption.draggable; + } + // Other attributes + elOption.name != null && (el.name = elOption.name); + elOption.id != null && (el.id = elOption.id); + } + // Remove unnecessary props to avoid potential problems. + function getCleanedElOption(elOption) { + elOption = extend({}, elOption); + each(['id', 'parentId', '$action', 'hv', 'bounding', 'textContent', 'clipPath'].concat(LOCATION_PARAMS), function (name) { + delete elOption[name]; + }); + return elOption; + } + function setEventData(el, graphicModel, elOption) { + var eventData = getECData(el).eventData; + // Simple optimize for large amount of elements that no need event. + if (!el.silent && !el.ignore && !eventData) { + eventData = getECData(el).eventData = { + componentType: 'graphic', + componentIndex: graphicModel.componentIndex, + name: el.name + }; + } + // `elOption.info` enables user to mount some info on + // elements and use them in event handlers. + if (eventData) { + eventData.info = elOption.info; + } + } + + function install$x(registers) { + registers.registerComponentModel(GraphicComponentModel); + registers.registerComponentView(GraphicComponentView); + registers.registerPreprocessor(function (option) { + var graphicOption = option.graphic; + // Convert + // {graphic: [{left: 10, type: 'circle'}, ...]} + // or + // {graphic: {left: 10, type: 'circle'}} + // to + // {graphic: [{elements: [{left: 10, type: 'circle'}, ...]}]} + if (isArray(graphicOption)) { + if (!graphicOption[0] || !graphicOption[0].elements) { + option.graphic = [{ + elements: graphicOption + }]; + } else { + // Only one graphic instance can be instantiated. (We don't + // want that too many views are created in echarts._viewMap.) + option.graphic = [option.graphic[0]]; + } + } else if (graphicOption && !graphicOption.elements) { + option.graphic = [{ + elements: [graphicOption] + }]; + } + }); + } + + var DATA_ZOOM_AXIS_DIMENSIONS = ['x', 'y', 'radius', 'angle', 'single']; + // Supported coords. + // FIXME: polar has been broken (but rarely used). + var SERIES_COORDS = ['cartesian2d', 'polar', 'singleAxis']; + function isCoordSupported(seriesModel) { + var coordType = seriesModel.get('coordinateSystem'); + return indexOf(SERIES_COORDS, coordType) >= 0; + } + function getAxisMainType(axisDim) { + if ("development" !== 'production') { + assert(axisDim); + } + return axisDim + 'Axis'; + } + /** + * If two dataZoomModels has the same axis controlled, we say that they are 'linked'. + * This function finds all linked dataZoomModels start from the given payload. + */ + function findEffectedDataZooms(ecModel, payload) { + // Key: `DataZoomAxisDimension` + var axisRecords = createHashMap(); + var effectedModels = []; + // Key: uid of dataZoomModel + var effectedModelMap = createHashMap(); + // Find the dataZooms specified by payload. + ecModel.eachComponent({ + mainType: 'dataZoom', + query: payload + }, function (dataZoomModel) { + if (!effectedModelMap.get(dataZoomModel.uid)) { + addToEffected(dataZoomModel); + } + }); + // Start from the given dataZoomModels, travel the graph to find + // all of the linked dataZoom models. + var foundNewLink; + do { + foundNewLink = false; + ecModel.eachComponent('dataZoom', processSingle); + } while (foundNewLink); + function processSingle(dataZoomModel) { + if (!effectedModelMap.get(dataZoomModel.uid) && isLinked(dataZoomModel)) { + addToEffected(dataZoomModel); + foundNewLink = true; + } + } + function addToEffected(dataZoom) { + effectedModelMap.set(dataZoom.uid, true); + effectedModels.push(dataZoom); + markAxisControlled(dataZoom); + } + function isLinked(dataZoomModel) { + var isLink = false; + dataZoomModel.eachTargetAxis(function (axisDim, axisIndex) { + var axisIdxArr = axisRecords.get(axisDim); + if (axisIdxArr && axisIdxArr[axisIndex]) { + isLink = true; + } + }); + return isLink; + } + function markAxisControlled(dataZoomModel) { + dataZoomModel.eachTargetAxis(function (axisDim, axisIndex) { + (axisRecords.get(axisDim) || axisRecords.set(axisDim, []))[axisIndex] = true; + }); + } + return effectedModels; + } + /** + * Find the first target coordinate system. + * Available after model built. + * + * @return Like { + * grid: [ + * {model: coord0, axisModels: [axis1, axis3], coordIndex: 1}, + * {model: coord1, axisModels: [axis0, axis2], coordIndex: 0}, + * ... + * ], // cartesians must not be null/undefined. + * polar: [ + * {model: coord0, axisModels: [axis4], coordIndex: 0}, + * ... + * ], // polars must not be null/undefined. + * singleAxis: [ + * {model: coord0, axisModels: [], coordIndex: 0} + * ] + * } + */ + function collectReferCoordSysModelInfo(dataZoomModel) { + var ecModel = dataZoomModel.ecModel; + var coordSysInfoWrap = { + infoList: [], + infoMap: createHashMap() + }; + dataZoomModel.eachTargetAxis(function (axisDim, axisIndex) { + var axisModel = ecModel.getComponent(getAxisMainType(axisDim), axisIndex); + if (!axisModel) { + return; + } + var coordSysModel = axisModel.getCoordSysModel(); + if (!coordSysModel) { + return; + } + var coordSysUid = coordSysModel.uid; + var coordSysInfo = coordSysInfoWrap.infoMap.get(coordSysUid); + if (!coordSysInfo) { + coordSysInfo = { + model: coordSysModel, + axisModels: [] + }; + coordSysInfoWrap.infoList.push(coordSysInfo); + coordSysInfoWrap.infoMap.set(coordSysUid, coordSysInfo); + } + coordSysInfo.axisModels.push(axisModel); + }); + return coordSysInfoWrap; + } + + var DataZoomAxisInfo = /** @class */function () { + function DataZoomAxisInfo() { + this.indexList = []; + this.indexMap = []; + } + DataZoomAxisInfo.prototype.add = function (axisCmptIdx) { + // Remove duplication. + if (!this.indexMap[axisCmptIdx]) { + this.indexList.push(axisCmptIdx); + this.indexMap[axisCmptIdx] = true; + } + }; + return DataZoomAxisInfo; + }(); + var DataZoomModel = /** @class */function (_super) { + __extends(DataZoomModel, _super); + function DataZoomModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = DataZoomModel.type; + _this._autoThrottle = true; + _this._noTarget = true; + /** + * It is `[rangeModeForMin, rangeModeForMax]`. + * The optional values for `rangeMode`: + * + `'value'` mode: the axis extent will always be determined by + * `dataZoom.startValue` and `dataZoom.endValue`, despite + * how data like and how `axis.min` and `axis.max` are. + * + `'percent'` mode: `100` represents 100% of the `[dMin, dMax]`, + * where `dMin` is `axis.min` if `axis.min` specified, otherwise `data.extent[0]`, + * and `dMax` is `axis.max` if `axis.max` specified, otherwise `data.extent[1]`. + * Axis extent will be determined by the result of the percent of `[dMin, dMax]`. + * + * For example, when users are using dynamic data (update data periodically via `setOption`), + * if in `'value`' mode, the window will be kept in a fixed value range despite how + * data are appended, while if in `'percent'` mode, whe window range will be changed alone with + * the appended data (suppose `axis.min` and `axis.max` are not specified). + */ + _this._rangePropMode = ['percent', 'percent']; + return _this; + } + DataZoomModel.prototype.init = function (option, parentModel, ecModel) { + var inputRawOption = retrieveRawOption(option); + /** + * Suppose a "main process" start at the point that model prepared (that is, + * model initialized or merged or method called in `action`). + * We should keep the `main process` idempotent, that is, given a set of values + * on `option`, we get the same result. + * + * But sometimes, values on `option` will be updated for providing users + * a "final calculated value" (`dataZoomProcessor` will do that). Those value + * should not be the base/input of the `main process`. + * + * So in that case we should save and keep the input of the `main process` + * separately, called `settledOption`. + * + * For example, consider the case: + * (Step_1) brush zoom the grid by `toolbox.dataZoom`, + * where the original input `option.startValue`, `option.endValue` are earsed by + * calculated value. + * (Step)2) click the legend to hide and show a series, + * where the new range is calculated by the earsed `startValue` and `endValue`, + * which brings incorrect result. + */ + this.settledOption = inputRawOption; + this.mergeDefaultAndTheme(option, ecModel); + this._doInit(inputRawOption); + }; + DataZoomModel.prototype.mergeOption = function (newOption) { + var inputRawOption = retrieveRawOption(newOption); + // FIX #2591 + merge(this.option, newOption, true); + merge(this.settledOption, inputRawOption, true); + this._doInit(inputRawOption); + }; + DataZoomModel.prototype._doInit = function (inputRawOption) { + var thisOption = this.option; + this._setDefaultThrottle(inputRawOption); + this._updateRangeUse(inputRawOption); + var settledOption = this.settledOption; + each([['start', 'startValue'], ['end', 'endValue']], function (names, index) { + // start/end has higher priority over startValue/endValue if they + // both set, but we should make chart.setOption({endValue: 1000}) + // effective, rather than chart.setOption({endValue: 1000, end: null}). + if (this._rangePropMode[index] === 'value') { + thisOption[names[0]] = settledOption[names[0]] = null; + } + // Otherwise do nothing and use the merge result. + }, this); + this._resetTarget(); + }; + DataZoomModel.prototype._resetTarget = function () { + var optionOrient = this.get('orient', true); + var targetAxisIndexMap = this._targetAxisInfoMap = createHashMap(); + var hasAxisSpecified = this._fillSpecifiedTargetAxis(targetAxisIndexMap); + if (hasAxisSpecified) { + this._orient = optionOrient || this._makeAutoOrientByTargetAxis(); + } else { + this._orient = optionOrient || 'horizontal'; + this._fillAutoTargetAxisByOrient(targetAxisIndexMap, this._orient); + } + this._noTarget = true; + targetAxisIndexMap.each(function (axisInfo) { + if (axisInfo.indexList.length) { + this._noTarget = false; + } + }, this); + }; + DataZoomModel.prototype._fillSpecifiedTargetAxis = function (targetAxisIndexMap) { + var hasAxisSpecified = false; + each(DATA_ZOOM_AXIS_DIMENSIONS, function (axisDim) { + var refering = this.getReferringComponents(getAxisMainType(axisDim), MULTIPLE_REFERRING); + // When user set axisIndex as a empty array, we think that user specify axisIndex + // but do not want use auto mode. Because empty array may be encountered when + // some error occurred. + if (!refering.specified) { + return; + } + hasAxisSpecified = true; + var axisInfo = new DataZoomAxisInfo(); + each(refering.models, function (axisModel) { + axisInfo.add(axisModel.componentIndex); + }); + targetAxisIndexMap.set(axisDim, axisInfo); + }, this); + return hasAxisSpecified; + }; + DataZoomModel.prototype._fillAutoTargetAxisByOrient = function (targetAxisIndexMap, orient) { + var ecModel = this.ecModel; + var needAuto = true; + // Find axis that parallel to dataZoom as default. + if (needAuto) { + var axisDim = orient === 'vertical' ? 'y' : 'x'; + var axisModels = ecModel.findComponents({ + mainType: axisDim + 'Axis' + }); + setParallelAxis(axisModels, axisDim); + } + // Find axis that parallel to dataZoom as default. + if (needAuto) { + var axisModels = ecModel.findComponents({ + mainType: 'singleAxis', + filter: function (axisModel) { + return axisModel.get('orient', true) === orient; + } + }); + setParallelAxis(axisModels, 'single'); + } + function setParallelAxis(axisModels, axisDim) { + // At least use the first parallel axis as the target axis. + var axisModel = axisModels[0]; + if (!axisModel) { + return; + } + var axisInfo = new DataZoomAxisInfo(); + axisInfo.add(axisModel.componentIndex); + targetAxisIndexMap.set(axisDim, axisInfo); + needAuto = false; + // Find parallel axes in the same grid. + if (axisDim === 'x' || axisDim === 'y') { + var gridModel_1 = axisModel.getReferringComponents('grid', SINGLE_REFERRING).models[0]; + gridModel_1 && each(axisModels, function (axModel) { + if (axisModel.componentIndex !== axModel.componentIndex && gridModel_1 === axModel.getReferringComponents('grid', SINGLE_REFERRING).models[0]) { + axisInfo.add(axModel.componentIndex); + } + }); + } + } + if (needAuto) { + // If no parallel axis, find the first category axis as default. (Also consider polar). + each(DATA_ZOOM_AXIS_DIMENSIONS, function (axisDim) { + if (!needAuto) { + return; + } + var axisModels = ecModel.findComponents({ + mainType: getAxisMainType(axisDim), + filter: function (axisModel) { + return axisModel.get('type', true) === 'category'; + } + }); + if (axisModels[0]) { + var axisInfo = new DataZoomAxisInfo(); + axisInfo.add(axisModels[0].componentIndex); + targetAxisIndexMap.set(axisDim, axisInfo); + needAuto = false; + } + }, this); + } + }; + DataZoomModel.prototype._makeAutoOrientByTargetAxis = function () { + var dim; + // Find the first axis + this.eachTargetAxis(function (axisDim) { + !dim && (dim = axisDim); + }, this); + return dim === 'y' ? 'vertical' : 'horizontal'; + }; + DataZoomModel.prototype._setDefaultThrottle = function (inputRawOption) { + // When first time user set throttle, auto throttle ends. + if (inputRawOption.hasOwnProperty('throttle')) { + this._autoThrottle = false; + } + if (this._autoThrottle) { + var globalOption = this.ecModel.option; + this.option.throttle = globalOption.animation && globalOption.animationDurationUpdate > 0 ? 100 : 20; + } + }; + DataZoomModel.prototype._updateRangeUse = function (inputRawOption) { + var rangePropMode = this._rangePropMode; + var rangeModeInOption = this.get('rangeMode'); + each([['start', 'startValue'], ['end', 'endValue']], function (names, index) { + var percentSpecified = inputRawOption[names[0]] != null; + var valueSpecified = inputRawOption[names[1]] != null; + if (percentSpecified && !valueSpecified) { + rangePropMode[index] = 'percent'; + } else if (!percentSpecified && valueSpecified) { + rangePropMode[index] = 'value'; + } else if (rangeModeInOption) { + rangePropMode[index] = rangeModeInOption[index]; + } else if (percentSpecified) { + // percentSpecified && valueSpecified + rangePropMode[index] = 'percent'; + } + // else remain its original setting. + }); + }; + + DataZoomModel.prototype.noTarget = function () { + return this._noTarget; + }; + DataZoomModel.prototype.getFirstTargetAxisModel = function () { + var firstAxisModel; + this.eachTargetAxis(function (axisDim, axisIndex) { + if (firstAxisModel == null) { + firstAxisModel = this.ecModel.getComponent(getAxisMainType(axisDim), axisIndex); + } + }, this); + return firstAxisModel; + }; + /** + * @param {Function} callback param: axisModel, dimNames, axisIndex, dataZoomModel, ecModel + */ + DataZoomModel.prototype.eachTargetAxis = function (callback, context) { + this._targetAxisInfoMap.each(function (axisInfo, axisDim) { + each(axisInfo.indexList, function (axisIndex) { + callback.call(context, axisDim, axisIndex); + }); + }); + }; + /** + * @return If not found, return null/undefined. + */ + DataZoomModel.prototype.getAxisProxy = function (axisDim, axisIndex) { + var axisModel = this.getAxisModel(axisDim, axisIndex); + if (axisModel) { + return axisModel.__dzAxisProxy; + } + }; + /** + * @return If not found, return null/undefined. + */ + DataZoomModel.prototype.getAxisModel = function (axisDim, axisIndex) { + if ("development" !== 'production') { + assert(axisDim && axisIndex != null); + } + var axisInfo = this._targetAxisInfoMap.get(axisDim); + if (axisInfo && axisInfo.indexMap[axisIndex]) { + return this.ecModel.getComponent(getAxisMainType(axisDim), axisIndex); + } + }; + /** + * If not specified, set to undefined. + */ + DataZoomModel.prototype.setRawRange = function (opt) { + var thisOption = this.option; + var settledOption = this.settledOption; + each([['start', 'startValue'], ['end', 'endValue']], function (names) { + // Consider the pair <start, startValue>: + // If one has value and the other one is `null/undefined`, we both set them + // to `settledOption`. This strategy enables the feature to clear the original + // value in `settledOption` to `null/undefined`. + // But if both of them are `null/undefined`, we do not set them to `settledOption` + // and keep `settledOption` with the original value. This strategy enables users to + // only set <end or endValue> but not set <start or startValue> when calling + // `dispatchAction`. + // The pair <end, endValue> is treated in the same way. + if (opt[names[0]] != null || opt[names[1]] != null) { + thisOption[names[0]] = settledOption[names[0]] = opt[names[0]]; + thisOption[names[1]] = settledOption[names[1]] = opt[names[1]]; + } + }, this); + this._updateRangeUse(opt); + }; + DataZoomModel.prototype.setCalculatedRange = function (opt) { + var option = this.option; + each(['start', 'startValue', 'end', 'endValue'], function (name) { + option[name] = opt[name]; + }); + }; + DataZoomModel.prototype.getPercentRange = function () { + var axisProxy = this.findRepresentativeAxisProxy(); + if (axisProxy) { + return axisProxy.getDataPercentWindow(); + } + }; + /** + * For example, chart.getModel().getComponent('dataZoom').getValueRange('y', 0); + * + * @return [startValue, endValue] value can only be '-' or finite number. + */ + DataZoomModel.prototype.getValueRange = function (axisDim, axisIndex) { + if (axisDim == null && axisIndex == null) { + var axisProxy = this.findRepresentativeAxisProxy(); + if (axisProxy) { + return axisProxy.getDataValueWindow(); + } + } else { + return this.getAxisProxy(axisDim, axisIndex).getDataValueWindow(); + } + }; + /** + * @param axisModel If axisModel given, find axisProxy + * corresponding to the axisModel + */ + DataZoomModel.prototype.findRepresentativeAxisProxy = function (axisModel) { + if (axisModel) { + return axisModel.__dzAxisProxy; + } + // Find the first hosted axisProxy + var firstProxy; + var axisDimList = this._targetAxisInfoMap.keys(); + for (var i = 0; i < axisDimList.length; i++) { + var axisDim = axisDimList[i]; + var axisInfo = this._targetAxisInfoMap.get(axisDim); + for (var j = 0; j < axisInfo.indexList.length; j++) { + var proxy = this.getAxisProxy(axisDim, axisInfo.indexList[j]); + if (proxy.hostedBy(this)) { + return proxy; + } + if (!firstProxy) { + firstProxy = proxy; + } + } + } + // If no hosted proxy found, still need to return a proxy. + // This case always happens in toolbox dataZoom, where axes are all hosted by + // other dataZooms. + return firstProxy; + }; + DataZoomModel.prototype.getRangePropMode = function () { + return this._rangePropMode.slice(); + }; + DataZoomModel.prototype.getOrient = function () { + if ("development" !== 'production') { + // Should not be called before initialized. + assert(this._orient); + } + return this._orient; + }; + DataZoomModel.type = 'dataZoom'; + DataZoomModel.dependencies = ['xAxis', 'yAxis', 'radiusAxis', 'angleAxis', 'singleAxis', 'series', 'toolbox']; + DataZoomModel.defaultOption = { + // zlevel: 0, + z: 4, + filterMode: 'filter', + start: 0, + end: 100 + }; + return DataZoomModel; + }(ComponentModel); + /** + * Retrieve those raw params from option, which will be cached separately, + * because they will be overwritten by normalized/calculated values in the main + * process. + */ + function retrieveRawOption(option) { + var ret = {}; + each(['start', 'end', 'startValue', 'endValue', 'throttle'], function (name) { + option.hasOwnProperty(name) && (ret[name] = option[name]); + }); + return ret; + } + + var SelectDataZoomModel = /** @class */function (_super) { + __extends(SelectDataZoomModel, _super); + function SelectDataZoomModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = SelectDataZoomModel.type; + return _this; + } + SelectDataZoomModel.type = 'dataZoom.select'; + return SelectDataZoomModel; + }(DataZoomModel); + + var DataZoomView = /** @class */function (_super) { + __extends(DataZoomView, _super); + function DataZoomView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = DataZoomView.type; + return _this; + } + DataZoomView.prototype.render = function (dataZoomModel, ecModel, api, payload) { + this.dataZoomModel = dataZoomModel; + this.ecModel = ecModel; + this.api = api; + }; + DataZoomView.type = 'dataZoom'; + return DataZoomView; + }(ComponentView); + + var SelectDataZoomView = /** @class */function (_super) { + __extends(SelectDataZoomView, _super); + function SelectDataZoomView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = SelectDataZoomView.type; + return _this; + } + SelectDataZoomView.type = 'dataZoom.select'; + return SelectDataZoomView; + }(DataZoomView); + + var each$8 = each; + var asc$1 = asc; + /** + * Operate single axis. + * One axis can only operated by one axis operator. + * Different dataZoomModels may be defined to operate the same axis. + * (i.e. 'inside' data zoom and 'slider' data zoom components) + * So dataZoomModels share one axisProxy in that case. + */ + var AxisProxy = /** @class */function () { + function AxisProxy(dimName, axisIndex, dataZoomModel, ecModel) { + this._dimName = dimName; + this._axisIndex = axisIndex; + this.ecModel = ecModel; + this._dataZoomModel = dataZoomModel; + // /** + // * @readOnly + // * @private + // */ + // this.hasSeriesStacked; + } + /** + * Whether the axisProxy is hosted by dataZoomModel. + */ + AxisProxy.prototype.hostedBy = function (dataZoomModel) { + return this._dataZoomModel === dataZoomModel; + }; + /** + * @return Value can only be NaN or finite value. + */ + AxisProxy.prototype.getDataValueWindow = function () { + return this._valueWindow.slice(); + }; + /** + * @return {Array.<number>} + */ + AxisProxy.prototype.getDataPercentWindow = function () { + return this._percentWindow.slice(); + }; + AxisProxy.prototype.getTargetSeriesModels = function () { + var seriesModels = []; + this.ecModel.eachSeries(function (seriesModel) { + if (isCoordSupported(seriesModel)) { + var axisMainType = getAxisMainType(this._dimName); + var axisModel = seriesModel.getReferringComponents(axisMainType, SINGLE_REFERRING).models[0]; + if (axisModel && this._axisIndex === axisModel.componentIndex) { + seriesModels.push(seriesModel); + } + } + }, this); + return seriesModels; + }; + AxisProxy.prototype.getAxisModel = function () { + return this.ecModel.getComponent(this._dimName + 'Axis', this._axisIndex); + }; + AxisProxy.prototype.getMinMaxSpan = function () { + return clone(this._minMaxSpan); + }; + /** + * Only calculate by given range and this._dataExtent, do not change anything. + */ + AxisProxy.prototype.calculateDataWindow = function (opt) { + var dataExtent = this._dataExtent; + var axisModel = this.getAxisModel(); + var scale = axisModel.axis.scale; + var rangePropMode = this._dataZoomModel.getRangePropMode(); + var percentExtent = [0, 100]; + var percentWindow = []; + var valueWindow = []; + var hasPropModeValue; + each$8(['start', 'end'], function (prop, idx) { + var boundPercent = opt[prop]; + var boundValue = opt[prop + 'Value']; + // Notice: dataZoom is based either on `percentProp` ('start', 'end') or + // on `valueProp` ('startValue', 'endValue'). (They are based on the data extent + // but not min/max of axis, which will be calculated by data window then). + // The former one is suitable for cases that a dataZoom component controls multiple + // axes with different unit or extent, and the latter one is suitable for accurate + // zoom by pixel (e.g., in dataZoomSelect). + // we use `getRangePropMode()` to mark which prop is used. `rangePropMode` is updated + // only when setOption or dispatchAction, otherwise it remains its original value. + // (Why not only record `percentProp` and always map to `valueProp`? Because + // the map `valueProp` -> `percentProp` -> `valueProp` probably not the original + // `valueProp`. consider two axes constrolled by one dataZoom. They have different + // data extent. All of values that are overflow the `dataExtent` will be calculated + // to percent '100%'). + if (rangePropMode[idx] === 'percent') { + boundPercent == null && (boundPercent = percentExtent[idx]); + // Use scale.parse to math round for category or time axis. + boundValue = scale.parse(linearMap(boundPercent, percentExtent, dataExtent)); + } else { + hasPropModeValue = true; + boundValue = boundValue == null ? dataExtent[idx] : scale.parse(boundValue); + // Calculating `percent` from `value` may be not accurate, because + // This calculation can not be inversed, because all of values that + // are overflow the `dataExtent` will be calculated to percent '100%' + boundPercent = linearMap(boundValue, dataExtent, percentExtent); + } + // valueWindow[idx] = round(boundValue); + // percentWindow[idx] = round(boundPercent); + // fallback to extent start/end when parsed value or percent is invalid + valueWindow[idx] = boundValue == null || isNaN(boundValue) ? dataExtent[idx] : boundValue; + percentWindow[idx] = boundPercent == null || isNaN(boundPercent) ? percentExtent[idx] : boundPercent; + }); + asc$1(valueWindow); + asc$1(percentWindow); + // The windows from user calling of `dispatchAction` might be out of the extent, + // or do not obey the `min/maxSpan`, `min/maxValueSpan`. But we don't restrict window + // by `zoomLock` here, because we see `zoomLock` just as a interaction constraint, + // where API is able to initialize/modify the window size even though `zoomLock` + // specified. + var spans = this._minMaxSpan; + hasPropModeValue ? restrictSet(valueWindow, percentWindow, dataExtent, percentExtent, false) : restrictSet(percentWindow, valueWindow, percentExtent, dataExtent, true); + function restrictSet(fromWindow, toWindow, fromExtent, toExtent, toValue) { + var suffix = toValue ? 'Span' : 'ValueSpan'; + sliderMove(0, fromWindow, fromExtent, 'all', spans['min' + suffix], spans['max' + suffix]); + for (var i = 0; i < 2; i++) { + toWindow[i] = linearMap(fromWindow[i], fromExtent, toExtent, true); + toValue && (toWindow[i] = scale.parse(toWindow[i])); + } + } + return { + valueWindow: valueWindow, + percentWindow: percentWindow + }; + }; + /** + * Notice: reset should not be called before series.restoreData() is called, + * so it is recommended to be called in "process stage" but not "model init + * stage". + */ + AxisProxy.prototype.reset = function (dataZoomModel) { + if (dataZoomModel !== this._dataZoomModel) { + return; + } + var targetSeries = this.getTargetSeriesModels(); + // Culculate data window and data extent, and record them. + this._dataExtent = calculateDataExtent(this, this._dimName, targetSeries); + // `calculateDataWindow` uses min/maxSpan. + this._updateMinMaxSpan(); + var dataWindow = this.calculateDataWindow(dataZoomModel.settledOption); + this._valueWindow = dataWindow.valueWindow; + this._percentWindow = dataWindow.percentWindow; + // Update axis setting then. + this._setAxisModel(); + }; + AxisProxy.prototype.filterData = function (dataZoomModel, api) { + if (dataZoomModel !== this._dataZoomModel) { + return; + } + var axisDim = this._dimName; + var seriesModels = this.getTargetSeriesModels(); + var filterMode = dataZoomModel.get('filterMode'); + var valueWindow = this._valueWindow; + if (filterMode === 'none') { + return; + } + // FIXME + // Toolbox may has dataZoom injected. And if there are stacked bar chart + // with NaN data, NaN will be filtered and stack will be wrong. + // So we need to force the mode to be set empty. + // In fect, it is not a big deal that do not support filterMode-'filter' + // when using toolbox#dataZoom, utill tooltip#dataZoom support "single axis + // selection" some day, which might need "adapt to data extent on the + // otherAxis", which is disabled by filterMode-'empty'. + // But currently, stack has been fixed to based on value but not index, + // so this is not an issue any more. + // let otherAxisModel = this.getOtherAxisModel(); + // if (dataZoomModel.get('$fromToolbox') + // && otherAxisModel + // && otherAxisModel.hasSeriesStacked + // ) { + // filterMode = 'empty'; + // } + // TODO + // filterMode 'weakFilter' and 'empty' is not optimized for huge data yet. + each$8(seriesModels, function (seriesModel) { + var seriesData = seriesModel.getData(); + var dataDims = seriesData.mapDimensionsAll(axisDim); + if (!dataDims.length) { + return; + } + if (filterMode === 'weakFilter') { + var store_1 = seriesData.getStore(); + var dataDimIndices_1 = map(dataDims, function (dim) { + return seriesData.getDimensionIndex(dim); + }, seriesData); + seriesData.filterSelf(function (dataIndex) { + var leftOut; + var rightOut; + var hasValue; + for (var i = 0; i < dataDims.length; i++) { + var value = store_1.get(dataDimIndices_1[i], dataIndex); + var thisHasValue = !isNaN(value); + var thisLeftOut = value < valueWindow[0]; + var thisRightOut = value > valueWindow[1]; + if (thisHasValue && !thisLeftOut && !thisRightOut) { + return true; + } + thisHasValue && (hasValue = true); + thisLeftOut && (leftOut = true); + thisRightOut && (rightOut = true); + } + // If both left out and right out, do not filter. + return hasValue && leftOut && rightOut; + }); + } else { + each$8(dataDims, function (dim) { + if (filterMode === 'empty') { + seriesModel.setData(seriesData = seriesData.map(dim, function (value) { + return !isInWindow(value) ? NaN : value; + })); + } else { + var range = {}; + range[dim] = valueWindow; + // console.time('select'); + seriesData.selectRange(range); + // console.timeEnd('select'); + } + }); + } + + each$8(dataDims, function (dim) { + seriesData.setApproximateExtent(valueWindow, dim); + }); + }); + function isInWindow(value) { + return value >= valueWindow[0] && value <= valueWindow[1]; + } + }; + AxisProxy.prototype._updateMinMaxSpan = function () { + var minMaxSpan = this._minMaxSpan = {}; + var dataZoomModel = this._dataZoomModel; + var dataExtent = this._dataExtent; + each$8(['min', 'max'], function (minMax) { + var percentSpan = dataZoomModel.get(minMax + 'Span'); + var valueSpan = dataZoomModel.get(minMax + 'ValueSpan'); + valueSpan != null && (valueSpan = this.getAxisModel().axis.scale.parse(valueSpan)); + // minValueSpan and maxValueSpan has higher priority than minSpan and maxSpan + if (valueSpan != null) { + percentSpan = linearMap(dataExtent[0] + valueSpan, dataExtent, [0, 100], true); + } else if (percentSpan != null) { + valueSpan = linearMap(percentSpan, [0, 100], dataExtent, true) - dataExtent[0]; + } + minMaxSpan[minMax + 'Span'] = percentSpan; + minMaxSpan[minMax + 'ValueSpan'] = valueSpan; + }, this); + }; + AxisProxy.prototype._setAxisModel = function () { + var axisModel = this.getAxisModel(); + var percentWindow = this._percentWindow; + var valueWindow = this._valueWindow; + if (!percentWindow) { + return; + } + // [0, 500]: arbitrary value, guess axis extent. + var precision = getPixelPrecision(valueWindow, [0, 500]); + precision = Math.min(precision, 20); + // For value axis, if min/max/scale are not set, we just use the extent obtained + // by series data, which may be a little different from the extent calculated by + // `axisHelper.getScaleExtent`. But the different just affects the experience a + // little when zooming. So it will not be fixed until some users require it strongly. + var rawExtentInfo = axisModel.axis.scale.rawExtentInfo; + if (percentWindow[0] !== 0) { + rawExtentInfo.setDeterminedMinMax('min', +valueWindow[0].toFixed(precision)); + } + if (percentWindow[1] !== 100) { + rawExtentInfo.setDeterminedMinMax('max', +valueWindow[1].toFixed(precision)); + } + rawExtentInfo.freeze(); + }; + return AxisProxy; + }(); + function calculateDataExtent(axisProxy, axisDim, seriesModels) { + var dataExtent = [Infinity, -Infinity]; + each$8(seriesModels, function (seriesModel) { + unionAxisExtentFromData(dataExtent, seriesModel.getData(), axisDim); + }); + // It is important to get "consistent" extent when more then one axes is + // controlled by a `dataZoom`, otherwise those axes will not be synchronized + // when zooming. But it is difficult to know what is "consistent", considering + // axes have different type or even different meanings (For example, two + // time axes are used to compare data of the same date in different years). + // So basically dataZoom just obtains extent by series.data (in category axis + // extent can be obtained from axis.data). + // Nevertheless, user can set min/max/scale on axes to make extent of axes + // consistent. + var axisModel = axisProxy.getAxisModel(); + var rawExtentResult = ensureScaleRawExtentInfo(axisModel.axis.scale, axisModel, dataExtent).calculate(); + return [rawExtentResult.min, rawExtentResult.max]; + } + + var dataZoomProcessor = { + // `dataZoomProcessor` will only be performed in needed series. Consider if + // there is a line series and a pie series, it is better not to update the + // line series if only pie series is needed to be updated. + getTargetSeries: function (ecModel) { + function eachAxisModel(cb) { + ecModel.eachComponent('dataZoom', function (dataZoomModel) { + dataZoomModel.eachTargetAxis(function (axisDim, axisIndex) { + var axisModel = ecModel.getComponent(getAxisMainType(axisDim), axisIndex); + cb(axisDim, axisIndex, axisModel, dataZoomModel); + }); + }); + } + // FIXME: it brings side-effect to `getTargetSeries`. + // Prepare axis proxies. + eachAxisModel(function (axisDim, axisIndex, axisModel, dataZoomModel) { + // dispose all last axis proxy, in case that some axis are deleted. + axisModel.__dzAxisProxy = null; + }); + var proxyList = []; + eachAxisModel(function (axisDim, axisIndex, axisModel, dataZoomModel) { + // Different dataZooms may constrol the same axis. In that case, + // an axisProxy serves both of them. + if (!axisModel.__dzAxisProxy) { + // Use the first dataZoomModel as the main model of axisProxy. + axisModel.__dzAxisProxy = new AxisProxy(axisDim, axisIndex, dataZoomModel, ecModel); + proxyList.push(axisModel.__dzAxisProxy); + } + }); + var seriesModelMap = createHashMap(); + each(proxyList, function (axisProxy) { + each(axisProxy.getTargetSeriesModels(), function (seriesModel) { + seriesModelMap.set(seriesModel.uid, seriesModel); + }); + }); + return seriesModelMap; + }, + // Consider appendData, where filter should be performed. Because data process is + // in block mode currently, it is not need to worry about that the overallProgress + // execute every frame. + overallReset: function (ecModel, api) { + ecModel.eachComponent('dataZoom', function (dataZoomModel) { + // We calculate window and reset axis here but not in model + // init stage and not after action dispatch handler, because + // reset should be called after seriesData.restoreData. + dataZoomModel.eachTargetAxis(function (axisDim, axisIndex) { + dataZoomModel.getAxisProxy(axisDim, axisIndex).reset(dataZoomModel); + }); + // Caution: data zoom filtering is order sensitive when using + // percent range and no min/max/scale set on axis. + // For example, we have dataZoom definition: + // [ + // {xAxisIndex: 0, start: 30, end: 70}, + // {yAxisIndex: 0, start: 20, end: 80} + // ] + // In this case, [20, 80] of y-dataZoom should be based on data + // that have filtered by x-dataZoom using range of [30, 70], + // but should not be based on full raw data. Thus sliding + // x-dataZoom will change both ranges of xAxis and yAxis, + // while sliding y-dataZoom will only change the range of yAxis. + // So we should filter x-axis after reset x-axis immediately, + // and then reset y-axis and filter y-axis. + dataZoomModel.eachTargetAxis(function (axisDim, axisIndex) { + dataZoomModel.getAxisProxy(axisDim, axisIndex).filterData(dataZoomModel, api); + }); + }); + ecModel.eachComponent('dataZoom', function (dataZoomModel) { + // Fullfill all of the range props so that user + // is able to get them from chart.getOption(). + var axisProxy = dataZoomModel.findRepresentativeAxisProxy(); + if (axisProxy) { + var percentRange = axisProxy.getDataPercentWindow(); + var valueRange = axisProxy.getDataValueWindow(); + dataZoomModel.setCalculatedRange({ + start: percentRange[0], + end: percentRange[1], + startValue: valueRange[0], + endValue: valueRange[1] + }); + } + }); + } + }; + + function installDataZoomAction(registers) { + registers.registerAction('dataZoom', function (payload, ecModel) { + var effectedModels = findEffectedDataZooms(ecModel, payload); + each(effectedModels, function (dataZoomModel) { + dataZoomModel.setRawRange({ + start: payload.start, + end: payload.end, + startValue: payload.startValue, + endValue: payload.endValue + }); + }); + }); + } + + var installed = false; + function installCommon(registers) { + if (installed) { + return; + } + installed = true; + registers.registerProcessor(registers.PRIORITY.PROCESSOR.FILTER, dataZoomProcessor); + installDataZoomAction(registers); + registers.registerSubTypeDefaulter('dataZoom', function () { + // Default 'slider' when no type specified. + return 'slider'; + }); + } + + function install$y(registers) { + registers.registerComponentModel(SelectDataZoomModel); + registers.registerComponentView(SelectDataZoomView); + installCommon(registers); + } + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + + /** + * AUTO-GENERATED FILE. DO NOT MODIFY. + */ + + var ToolboxFeature = /** @class */function () { + function ToolboxFeature() {} + return ToolboxFeature; + }(); + var features = {}; + function registerFeature(name, ctor) { + features[name] = ctor; + } + function getFeature(name) { + return features[name]; + } + + var ToolboxModel = /** @class */function (_super) { + __extends(ToolboxModel, _super); + function ToolboxModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = ToolboxModel.type; + return _this; + } + ToolboxModel.prototype.optionUpdated = function () { + _super.prototype.optionUpdated.apply(this, arguments); + var ecModel = this.ecModel; + each(this.option.feature, function (featureOpt, featureName) { + var Feature = getFeature(featureName); + if (Feature) { + if (Feature.getDefaultOption) { + Feature.defaultOption = Feature.getDefaultOption(ecModel); + } + merge(featureOpt, Feature.defaultOption); + } + }); + }; + ToolboxModel.type = 'toolbox'; + ToolboxModel.layoutMode = { + type: 'box', + ignoreSize: true + }; + ToolboxModel.defaultOption = { + show: true, + z: 6, + // zlevel: 0, + orient: 'horizontal', + left: 'right', + top: 'top', + // right + // bottom + backgroundColor: 'transparent', + borderColor: '#ccc', + borderRadius: 0, + borderWidth: 0, + padding: 5, + itemSize: 15, + itemGap: 8, + showTitle: true, + iconStyle: { + borderColor: '#666', + color: 'none' + }, + emphasis: { + iconStyle: { + borderColor: '#3E98C5' + } + }, + // textStyle: {}, + // feature + tooltip: { + show: false, + position: 'bottom' + } + }; + return ToolboxModel; + }(ComponentModel); + + /** + * Layout list like component. + * It will box layout each items in group of component and then position the whole group in the viewport + * @param {module:zrender/group/Group} group + * @param {module:echarts/model/Component} componentModel + * @param {module:echarts/ExtensionAPI} + */ + function layout$3(group, componentModel, api) { + var boxLayoutParams = componentModel.getBoxLayoutParams(); + var padding = componentModel.get('padding'); + var viewportSize = { + width: api.getWidth(), + height: api.getHeight() + }; + var rect = getLayoutRect(boxLayoutParams, viewportSize, padding); + box(componentModel.get('orient'), group, componentModel.get('itemGap'), rect.width, rect.height); + positionElement(group, boxLayoutParams, viewportSize, padding); + } + function makeBackground(rect, componentModel) { + var padding = normalizeCssArray$1(componentModel.get('padding')); + var style = componentModel.getItemStyle(['color', 'opacity']); + style.fill = componentModel.get('backgroundColor'); + rect = new Rect({ + shape: { + x: rect.x - padding[3], + y: rect.y - padding[0], + width: rect.width + padding[1] + padding[3], + height: rect.height + padding[0] + padding[2], + r: componentModel.get('borderRadius') + }, + style: style, + silent: true, + z2: -1 + }); + // FIXME + // `subPixelOptimizeRect` may bring some gap between edge of viewpart + // and background rect when setting like `left: 0`, `top: 0`. + // graphic.subPixelOptimizeRect(rect); + return rect; + } + + var ToolboxView = /** @class */function (_super) { + __extends(ToolboxView, _super); + function ToolboxView() { + return _super !== null && _super.apply(this, arguments) || this; + } + ToolboxView.prototype.render = function (toolboxModel, ecModel, api, payload) { + var group = this.group; + group.removeAll(); + if (!toolboxModel.get('show')) { + return; + } + var itemSize = +toolboxModel.get('itemSize'); + var isVertical = toolboxModel.get('orient') === 'vertical'; + var featureOpts = toolboxModel.get('feature') || {}; + var features = this._features || (this._features = {}); + var featureNames = []; + each(featureOpts, function (opt, name) { + featureNames.push(name); + }); + new DataDiffer(this._featureNames || [], featureNames).add(processFeature).update(processFeature).remove(curry(processFeature, null)).execute(); + // Keep for diff. + this._featureNames = featureNames; + function processFeature(newIndex, oldIndex) { + var featureName = featureNames[newIndex]; + var oldName = featureNames[oldIndex]; + var featureOpt = featureOpts[featureName]; + var featureModel = new Model(featureOpt, toolboxModel, toolboxModel.ecModel); + var feature; + // FIX#11236, merge feature title from MagicType newOption. TODO: consider seriesIndex ? + if (payload && payload.newTitle != null && payload.featureName === featureName) { + featureOpt.title = payload.newTitle; + } + if (featureName && !oldName) { + // Create + if (isUserFeatureName(featureName)) { + feature = { + onclick: featureModel.option.onclick, + featureName: featureName + }; + } else { + var Feature = getFeature(featureName); + if (!Feature) { + return; + } + feature = new Feature(); + } + features[featureName] = feature; + } else { + feature = features[oldName]; + // If feature does not exist. + if (!feature) { + return; + } + } + feature.uid = getUID('toolbox-feature'); + feature.model = featureModel; + feature.ecModel = ecModel; + feature.api = api; + var isToolboxFeature = feature instanceof ToolboxFeature; + if (!featureName && oldName) { + isToolboxFeature && feature.dispose && feature.dispose(ecModel, api); + return; + } + if (!featureModel.get('show') || isToolboxFeature && feature.unusable) { + isToolboxFeature && feature.remove && feature.remove(ecModel, api); + return; + } + createIconPaths(featureModel, feature, featureName); + featureModel.setIconStatus = function (iconName, status) { + var option = this.option; + var iconPaths = this.iconPaths; + option.iconStatus = option.iconStatus || {}; + option.iconStatus[iconName] = status; + if (iconPaths[iconName]) { + (status === 'emphasis' ? enterEmphasis : leaveEmphasis)(iconPaths[iconName]); + } + }; + if (feature instanceof ToolboxFeature) { + if (feature.render) { + feature.render(featureModel, ecModel, api, payload); + } + } + } + function createIconPaths(featureModel, feature, featureName) { + var iconStyleModel = featureModel.getModel('iconStyle'); + var iconStyleEmphasisModel = featureModel.getModel(['emphasis', 'iconStyle']); + // If one feature has multiple icons, they are organized as + // { + // icon: { + // foo: '', + // bar: '' + // }, + // title: { + // foo: '', + // bar: '' + // } + // } + var icons = feature instanceof ToolboxFeature && feature.getIcons ? feature.getIcons() : featureModel.get('icon'); + var titles = featureModel.get('title') || {}; + var iconsMap; + var titlesMap; + if (isString(icons)) { + iconsMap = {}; + iconsMap[featureName] = icons; + } else { + iconsMap = icons; + } + if (isString(titles)) { + titlesMap = {}; + titlesMap[featureName] = titles; + } else { + titlesMap = titles; + } + var iconPaths = featureModel.iconPaths = {}; + each(iconsMap, function (iconStr, iconName) { + var path = createIcon(iconStr, {}, { + x: -itemSize / 2, + y: -itemSize / 2, + width: itemSize, + height: itemSize + }); // TODO handling image + path.setStyle(iconStyleModel.getItemStyle()); + var pathEmphasisState = path.ensureState('emphasis'); + pathEmphasisState.style = iconStyleEmphasisModel.getItemStyle(); + // Text position calculation + // TODO: extract `textStyle` from `iconStyle` and use `createTextStyle` + var textContent = new ZRText({ + style: { + text: titlesMap[iconName], + align: iconStyleEmphasisModel.get('textAlign'), + borderRadius: iconStyleEmphasisModel.get('textBorderRadius'), + padding: iconStyleEmphasisModel.get('textPadding'), + fill: null, + font: getFont({ + fontStyle: iconStyleEmphasisModel.get('textFontStyle'), + fontFamily: iconStyleEmphasisModel.get('textFontFamily'), + fontSize: iconStyleEmphasisModel.get('textFontSize'), + fontWeight: iconStyleEmphasisModel.get('textFontWeight') + }, ecModel) + }, + ignore: true + }); + path.setTextContent(textContent); + setTooltipConfig({ + el: path, + componentModel: toolboxModel, + itemName: iconName, + formatterParamsExtra: { + title: titlesMap[iconName] + } + }); + path.__title = titlesMap[iconName]; + path.on('mouseover', function () { + // Should not reuse above hoverStyle, which might be modified. + var hoverStyle = iconStyleEmphasisModel.getItemStyle(); + var defaultTextPosition = isVertical ? toolboxModel.get('right') == null && toolboxModel.get('left') !== 'right' ? 'right' : 'left' : toolboxModel.get('bottom') == null && toolboxModel.get('top') !== 'bottom' ? 'bottom' : 'top'; + textContent.setStyle({ + fill: iconStyleEmphasisModel.get('textFill') || hoverStyle.fill || hoverStyle.stroke || '#000', + backgroundColor: iconStyleEmphasisModel.get('textBackgroundColor') + }); + path.setTextConfig({ + position: iconStyleEmphasisModel.get('textPosition') || defaultTextPosition + }); + textContent.ignore = !toolboxModel.get('showTitle'); + // Use enterEmphasis and leaveEmphasis provide by ec. + // There are flags managed by the echarts. + api.enterEmphasis(this); + }).on('mouseout', function () { + if (featureModel.get(['iconStatus', iconName]) !== 'emphasis') { + api.leaveEmphasis(this); + } + textContent.hide(); + }); + (featureModel.get(['iconStatus', iconName]) === 'emphasis' ? enterEmphasis : leaveEmphasis)(path); + group.add(path); + path.on('click', bind(feature.onclick, feature, ecModel, api, iconName)); + iconPaths[iconName] = path; + }); + } + layout$3(group, toolboxModel, api); + // Render background after group is layout + // FIXME + group.add(makeBackground(group.getBoundingRect(), toolboxModel)); + // Adjust icon title positions to avoid them out of screen + isVertical || group.eachChild(function (icon) { + var titleText = icon.__title; + // const hoverStyle = icon.hoverStyle; + // TODO simplify code? + var emphasisState = icon.ensureState('emphasis'); + var emphasisTextConfig = emphasisState.textConfig || (emphasisState.textConfig = {}); + var textContent = icon.getTextContent(); + var emphasisTextState = textContent && textContent.ensureState('emphasis'); + // May be background element + if (emphasisTextState && !isFunction(emphasisTextState) && titleText) { + var emphasisTextStyle = emphasisTextState.style || (emphasisTextState.style = {}); + var rect = getBoundingRect(titleText, ZRText.makeFont(emphasisTextStyle)); + var offsetX = icon.x + group.x; + var offsetY = icon.y + group.y + itemSize; + var needPutOnTop = false; + if (offsetY + rect.height > api.getHeight()) { + emphasisTextConfig.position = 'top'; + needPutOnTop = true; + } + var topOffset = needPutOnTop ? -5 - rect.height : itemSize + 10; + if (offsetX + rect.width / 2 > api.getWidth()) { + emphasisTextConfig.position = ['100%', topOffset]; + emphasisTextStyle.align = 'right'; + } else if (offsetX - rect.width / 2 < 0) { + emphasisTextConfig.position = [0, topOffset]; + emphasisTextStyle.align = 'left'; + } + } + }); + }; + ToolboxView.prototype.updateView = function (toolboxModel, ecModel, api, payload) { + each(this._features, function (feature) { + feature instanceof ToolboxFeature && feature.updateView && feature.updateView(feature.model, ecModel, api, payload); + }); + }; + // updateLayout(toolboxModel, ecModel, api, payload) { + // zrUtil.each(this._features, function (feature) { + // feature.updateLayout && feature.updateLayout(feature.model, ecModel, api, payload); + // }); + // }, + ToolboxView.prototype.remove = function (ecModel, api) { + each(this._features, function (feature) { + feature instanceof ToolboxFeature && feature.remove && feature.remove(ecModel, api); + }); + this.group.removeAll(); + }; + ToolboxView.prototype.dispose = function (ecModel, api) { + each(this._features, function (feature) { + feature instanceof ToolboxFeature && feature.dispose && feature.dispose(ecModel, api); + }); + }; + ToolboxView.type = 'toolbox'; + return ToolboxView; + }(ComponentView); + function isUserFeatureName(featureName) { + return featureName.indexOf('my') === 0; + } + + /* global window, document */ + var SaveAsImage = /** @class */function (_super) { + __extends(SaveAsImage, _super); + function SaveAsImage() { + return _super !== null && _super.apply(this, arguments) || this; + } + SaveAsImage.prototype.onclick = function (ecModel, api) { + var model = this.model; + var title = model.get('name') || ecModel.get('title.0.text') || 'echarts'; + var isSvg = api.getZr().painter.getType() === 'svg'; + var type = isSvg ? 'svg' : model.get('type', true) || 'png'; + var url = api.getConnectedDataURL({ + type: type, + backgroundColor: model.get('backgroundColor', true) || ecModel.get('backgroundColor') || '#fff', + connectedBackgroundColor: model.get('connectedBackgroundColor'), + excludeComponents: model.get('excludeComponents'), + pixelRatio: model.get('pixelRatio') + }); + var browser = env.browser; + // Chrome, Firefox, New Edge + if (isFunction(MouseEvent) && (browser.newEdge || !browser.ie && !browser.edge)) { + var $a = document.createElement('a'); + $a.download = title + '.' + type; + $a.target = '_blank'; + $a.href = url; + var evt = new MouseEvent('click', { + // some micro front-end framework, window maybe is a Proxy + view: document.defaultView, + bubbles: true, + cancelable: false + }); + $a.dispatchEvent(evt); + } + // IE or old Edge + else { + // @ts-ignore + if (window.navigator.msSaveOrOpenBlob || isSvg) { + var parts = url.split(','); + // data:[<mime type>][;charset=<charset>][;base64],<encoded data> + var base64Encoded = parts[0].indexOf('base64') > -1; + var bstr = isSvg + // should decode the svg data uri first + ? decodeURIComponent(parts[1]) : parts[1]; + // only `atob` when the data uri is encoded with base64 + // otherwise, like `svg` data uri exported by zrender, + // there will be an error, for it's not encoded with base64. + // (just a url-encoded string through `encodeURIComponent`) + base64Encoded && (bstr = window.atob(bstr)); + var filename = title + '.' + type; + // @ts-ignore + if (window.navigator.msSaveOrOpenBlob) { + var n = bstr.length; + var u8arr = new Uint8Array(n); + while (n--) { + u8arr[n] = bstr.charCodeAt(n); + } + var blob = new Blob([u8arr]); // @ts-ignore + window.navigator.msSaveOrOpenBlob(blob, filename); + } else { + var frame = document.createElement('iframe'); + document.body.appendChild(frame); + var cw = frame.contentWindow; + var doc = cw.document; + doc.open('image/svg+xml', 'replace'); + doc.write(bstr); + doc.close(); + cw.focus(); + doc.execCommand('SaveAs', true, filename); + document.body.removeChild(frame); + } + } else { + var lang = model.get('lang'); + var html = '' + '<body style="margin:0;">' + '<img src="' + url + '" style="max-width:100%;" title="' + (lang && lang[0] || '') + '" />' + '</body>'; + var tab = window.open(); + tab.document.write(html); + tab.document.title = title; + } + } + }; + SaveAsImage.getDefaultOption = function (ecModel) { + var defaultOption = { + show: true, + 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: ecModel.getLocaleModel().get(['toolbox', 'saveAsImage', 'title']), + type: 'png', + // Default use option.backgroundColor + // backgroundColor: '#fff', + connectedBackgroundColor: '#fff', + name: '', + excludeComponents: ['toolbox'], + // use current pixel ratio of device by default + // pixelRatio: 1, + lang: ecModel.getLocaleModel().get(['toolbox', 'saveAsImage', 'lang']) + }; + return defaultOption; + }; + return SaveAsImage; + }(ToolboxFeature); + + var INNER_STACK_KEYWORD = '__ec_magicType_stack__'; + var radioTypes = [['line', 'bar'], ['stack']]; + var MagicType = /** @class */function (_super) { + __extends(MagicType, _super); + function MagicType() { + return _super !== null && _super.apply(this, arguments) || this; + } + MagicType.prototype.getIcons = function () { + var model = this.model; + var availableIcons = model.get('icon'); + var icons = {}; + each(model.get('type'), function (type) { + if (availableIcons[type]) { + icons[type] = availableIcons[type]; + } + }); + return icons; + }; + MagicType.getDefaultOption = function (ecModel) { + var defaultOption = { + show: true, + type: [], + // Icon group + 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', + // eslint-disable-next-line + 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' // jshint ignore:line + }, + + // `line`, `bar`, `stack`, `tiled` + title: ecModel.getLocaleModel().get(['toolbox', 'magicType', 'title']), + option: {}, + seriesIndex: {} + }; + return defaultOption; + }; + MagicType.prototype.onclick = function (ecModel, api, type) { + var model = this.model; + var seriesIndex = model.get(['seriesIndex', type]); + // Not supported magicType + if (!seriesOptGenreator[type]) { + return; + } + var newOption = { + series: [] + }; + var generateNewSeriesTypes = function (seriesModel) { + var seriesType = seriesModel.subType; + var seriesId = seriesModel.id; + var newSeriesOpt = seriesOptGenreator[type](seriesType, seriesId, seriesModel, model); + if (newSeriesOpt) { + // PENDING If merge original option? + defaults(newSeriesOpt, seriesModel.option); + newOption.series.push(newSeriesOpt); + } + // Modify boundaryGap + var coordSys = seriesModel.coordinateSystem; + if (coordSys && coordSys.type === 'cartesian2d' && (type === 'line' || type === 'bar')) { + var categoryAxis = coordSys.getAxesByScale('ordinal')[0]; + if (categoryAxis) { + var axisDim = categoryAxis.dim; + var axisType = axisDim + 'Axis'; + var axisModel = seriesModel.getReferringComponents(axisType, SINGLE_REFERRING).models[0]; + var axisIndex = axisModel.componentIndex; + newOption[axisType] = newOption[axisType] || []; + for (var i = 0; i <= axisIndex; i++) { + newOption[axisType][axisIndex] = newOption[axisType][axisIndex] || {}; + } + newOption[axisType][axisIndex].boundaryGap = type === 'bar'; + } + } + }; + each(radioTypes, function (radio) { + if (indexOf(radio, type) >= 0) { + each(radio, function (item) { + model.setIconStatus(item, 'normal'); + }); + } + }); + model.setIconStatus(type, 'emphasis'); + ecModel.eachComponent({ + mainType: 'series', + query: seriesIndex == null ? null : { + seriesIndex: seriesIndex + } + }, generateNewSeriesTypes); + var newTitle; + var currentType = type; + // Change title of stack + if (type === 'stack') { + // use titles in model instead of ecModel + // as stack and tiled appears in pair, just flip them + // no need of checking stack state + newTitle = merge({ + stack: model.option.title.tiled, + tiled: model.option.title.stack + }, model.option.title); + if (model.get(['iconStatus', type]) !== 'emphasis') { + currentType = 'tiled'; + } + } + api.dispatchAction({ + type: 'changeMagicType', + currentType: currentType, + newOption: newOption, + newTitle: newTitle, + featureName: 'magicType' + }); + }; + return MagicType; + }(ToolboxFeature); + var seriesOptGenreator = { + 'line': function (seriesType, seriesId, seriesModel, model) { + if (seriesType === 'bar') { + return merge({ + id: seriesId, + type: 'line', + // Preserve data related option + data: seriesModel.get('data'), + stack: seriesModel.get('stack'), + markPoint: seriesModel.get('markPoint'), + markLine: seriesModel.get('markLine') + }, model.get(['option', 'line']) || {}, true); + } + }, + 'bar': function (seriesType, seriesId, seriesModel, model) { + if (seriesType === 'line') { + return merge({ + id: seriesId, + type: 'bar', + // Preserve data related option + data: seriesModel.get('data'), + stack: seriesModel.get('stack'), + markPoint: seriesModel.get('markPoint'), + markLine: seriesModel.get('markLine') + }, model.get(['option', 'bar']) || {}, true); + } + }, + 'stack': function (seriesType, seriesId, seriesModel, model) { + var isStack = seriesModel.get('stack') === INNER_STACK_KEYWORD; + if (seriesType === 'line' || seriesType === 'bar') { + model.setIconStatus('stack', isStack ? 'normal' : 'emphasis'); + return merge({ + id: seriesId, + stack: isStack ? '' : INNER_STACK_KEYWORD + }, model.get(['option', 'stack']) || {}, true); + } + } + }; + // TODO: SELF REGISTERED. + registerAction({ + type: 'changeMagicType', + event: 'magicTypeChanged', + update: 'prepareAndUpdate' + }, function (payload, ecModel) { + ecModel.mergeOption(payload.newOption); + }); + + /* global document */ + var BLOCK_SPLITER = new Array(60).join('-'); + var ITEM_SPLITER = '\t'; + /** + * Group series into two types + * 1. on category axis, like line, bar + * 2. others, like scatter, pie + */ + function groupSeries(ecModel) { + var seriesGroupByCategoryAxis = {}; + var otherSeries = []; + var meta = []; + ecModel.eachRawSeries(function (seriesModel) { + var coordSys = seriesModel.coordinateSystem; + if (coordSys && (coordSys.type === 'cartesian2d' || coordSys.type === 'polar')) { + // TODO: TYPE Consider polar? Include polar may increase unecessary bundle size. + var baseAxis = coordSys.getBaseAxis(); + if (baseAxis.type === 'category') { + var key = baseAxis.dim + '_' + baseAxis.index; + if (!seriesGroupByCategoryAxis[key]) { + seriesGroupByCategoryAxis[key] = { + categoryAxis: baseAxis, + valueAxis: coordSys.getOtherAxis(baseAxis), + series: [] + }; + meta.push({ + axisDim: baseAxis.dim, + axisIndex: baseAxis.index + }); + } + seriesGroupByCategoryAxis[key].series.push(seriesModel); + } else { + otherSeries.push(seriesModel); + } + } else { + otherSeries.push(seriesModel); + } + }); + return { + seriesGroupByCategoryAxis: seriesGroupByCategoryAxis, + other: otherSeries, + meta: meta + }; + } + /** + * Assemble content of series on cateogory axis + * @inner + */ + function assembleSeriesWithCategoryAxis(groups) { + var tables = []; + each(groups, function (group, key) { + var categoryAxis = group.categoryAxis; + var valueAxis = group.valueAxis; + var valueAxisDim = valueAxis.dim; + var headers = [' '].concat(map(group.series, function (series) { + return series.name; + })); + // @ts-ignore TODO Polar + var columns = [categoryAxis.model.getCategories()]; + each(group.series, function (series) { + var rawData = series.getRawData(); + columns.push(series.getRawData().mapArray(rawData.mapDimension(valueAxisDim), function (val) { + return val; + })); + }); + // Assemble table content + var lines = [headers.join(ITEM_SPLITER)]; + for (var i = 0; i < columns[0].length; i++) { + var items = []; + for (var j = 0; j < columns.length; j++) { + items.push(columns[j][i]); + } + lines.push(items.join(ITEM_SPLITER)); + } + tables.push(lines.join('\n')); + }); + return tables.join('\n\n' + BLOCK_SPLITER + '\n\n'); + } + /** + * Assemble content of other series + */ + function assembleOtherSeries(series) { + return map(series, function (series) { + var data = series.getRawData(); + var lines = [series.name]; + var vals = []; + data.each(data.dimensions, function () { + var argLen = arguments.length; + var dataIndex = arguments[argLen - 1]; + var name = data.getName(dataIndex); + for (var i = 0; i < argLen - 1; i++) { + vals[i] = arguments[i]; + } + lines.push((name ? name + ITEM_SPLITER : '') + vals.join(ITEM_SPLITER)); + }); + return lines.join('\n'); + }).join('\n\n' + BLOCK_SPLITER + '\n\n'); + } + function getContentFromModel(ecModel) { + var result = groupSeries(ecModel); + return { + value: filter([assembleSeriesWithCategoryAxis(result.seriesGroupByCategoryAxis), assembleOtherSeries(result.other)], function (str) { + return !!str.replace(/[\n\t\s]/g, ''); + }).join('\n\n' + BLOCK_SPLITER + '\n\n'), + meta: result.meta + }; + } + function trim$1(str) { + return str.replace(/^\s\s*/, '').replace(/\s\s*$/, ''); + } + /** + * If a block is tsv format + */ + function isTSVFormat(block) { + // Simple method to find out if a block is tsv format + var firstLine = block.slice(0, block.indexOf('\n')); + if (firstLine.indexOf(ITEM_SPLITER) >= 0) { + return true; + } + } + var itemSplitRegex = new RegExp('[' + ITEM_SPLITER + ']+', 'g'); + /** + * @param {string} tsv + * @return {Object} + */ + function parseTSVContents(tsv) { + var tsvLines = tsv.split(/\n+/g); + var headers = trim$1(tsvLines.shift()).split(itemSplitRegex); + var categories = []; + var series = map(headers, function (header) { + return { + name: header, + data: [] + }; + }); + for (var i = 0; i < tsvLines.length; i++) { + var items = trim$1(tsvLines[i]).split(itemSplitRegex); + categories.push(items.shift()); + for (var j = 0; j < items.length; j++) { + series[j] && (series[j].data[i] = items[j]); + } + } + return { + series: series, + categories: categories + }; + } + function parseListContents(str) { + var lines = str.split(/\n+/g); + var seriesName = trim$1(lines.shift()); + var data = []; + for (var i = 0; i < lines.length; i++) { + // if line is empty, ignore it. + // there is a case that a user forgot to delete `\n`. + var line = trim$1(lines[i]); + if (!line) { + continue; + } + var items = line.split(itemSplitRegex); + var name_1 = ''; + var value = void 0; + var hasName = false; + if (isNaN(items[0])) { + // First item is name + hasName = true; + name_1 = items[0]; + items = items.slice(1); + data[i] = { + name: name_1, + value: [] + }; + value = data[i].value; + } else { + value = data[i] = []; + } + for (var j = 0; j < items.length; j++) { + value.push(+items[j]); + } + if (value.length === 1) { + hasName ? data[i].value = value[0] : data[i] = value[0]; + } + } + return { + name: seriesName, + data: data + }; + } + function parseContents(str, blockMetaList) { + var blocks = str.split(new RegExp('\n*' + BLOCK_SPLITER + '\n*', 'g')); + var newOption = { + series: [] + }; + each(blocks, function (block, idx) { + if (isTSVFormat(block)) { + var result = parseTSVContents(block); + var blockMeta = blockMetaList[idx]; + var axisKey = blockMeta.axisDim + 'Axis'; + if (blockMeta) { + newOption[axisKey] = newOption[axisKey] || []; + newOption[axisKey][blockMeta.axisIndex] = { + data: result.categories + }; + newOption.series = newOption.series.concat(result.series); + } + } else { + var result = parseListContents(block); + newOption.series.push(result); + } + }); + return newOption; + } + var DataView = /** @class */function (_super) { + __extends(DataView, _super); + function DataView() { + return _super !== null && _super.apply(this, arguments) || this; + } + DataView.prototype.onclick = function (ecModel, api) { + // FIXME: better way? + setTimeout(function () { + api.dispatchAction({ + type: 'hideTip' + }); + }); + var container = api.getDom(); + var model = this.model; + if (this._dom) { + container.removeChild(this._dom); + } + var root = document.createElement('div'); + // use padding to avoid 5px whitespace + root.style.cssText = 'position:absolute;top:0;bottom:0;left:0;right:0;padding:5px'; + root.style.backgroundColor = model.get('backgroundColor') || '#fff'; + // Create elements + var header = document.createElement('h4'); + var lang = model.get('lang') || []; + header.innerHTML = lang[0] || model.get('title'); + header.style.cssText = 'margin:10px 20px'; + header.style.color = model.get('textColor'); + var viewMain = document.createElement('div'); + var textarea = document.createElement('textarea'); + viewMain.style.cssText = 'overflow:auto'; + var optionToContent = model.get('optionToContent'); + var contentToOption = model.get('contentToOption'); + var result = getContentFromModel(ecModel); + if (isFunction(optionToContent)) { + var htmlOrDom = optionToContent(api.getOption()); + if (isString(htmlOrDom)) { + viewMain.innerHTML = htmlOrDom; + } else if (isDom(htmlOrDom)) { + viewMain.appendChild(htmlOrDom); + } + } else { + // Use default textarea + textarea.readOnly = model.get('readOnly'); + var style = textarea.style; + // eslint-disable-next-line max-len + style.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'; + style.color = model.get('textColor'); + style.borderColor = model.get('textareaBorderColor'); + style.backgroundColor = model.get('textareaColor'); + textarea.value = result.value; + viewMain.appendChild(textarea); + } + var blockMetaList = result.meta; + var buttonContainer = document.createElement('div'); + buttonContainer.style.cssText = 'position:absolute;bottom:5px;left:0;right:0'; + // eslint-disable-next-line max-len + var buttonStyle = 'float:right;margin-right:20px;border:none;cursor:pointer;padding:2px 5px;font-size:12px;border-radius:3px'; + var closeButton = document.createElement('div'); + var refreshButton = document.createElement('div'); + buttonStyle += ';background-color:' + model.get('buttonColor'); + buttonStyle += ';color:' + model.get('buttonTextColor'); + var self = this; + function close() { + container.removeChild(root); + self._dom = null; + } + addEventListener(closeButton, 'click', close); + addEventListener(refreshButton, 'click', function () { + if (contentToOption == null && optionToContent != null || contentToOption != null && optionToContent == null) { + if ("development" !== 'production') { + // eslint-disable-next-line + warn('It seems you have just provided one of `contentToOption` and `optionToContent` functions but missed the other one. Data change is ignored.'); + } + close(); + return; + } + var newOption; + try { + if (isFunction(contentToOption)) { + newOption = contentToOption(viewMain, api.getOption()); + } else { + newOption = parseContents(textarea.value, blockMetaList); + } + } catch (e) { + close(); + throw new Error('Data view format error ' + e); + } + if (newOption) { + api.dispatchAction({ + type: 'changeDataView', + newOption: newOption + }); + } + close(); + }); + closeButton.innerHTML = lang[1]; + refreshButton.innerHTML = lang[2]; + refreshButton.style.cssText = closeButton.style.cssText = buttonStyle; + !model.get('readOnly') && buttonContainer.appendChild(refreshButton); + buttonContainer.appendChild(closeButton); + root.appendChild(header); + root.appendChild(viewMain); + root.appendChild(buttonContainer); + viewMain.style.height = container.clientHeight - 80 + 'px'; + container.appendChild(root); + this._dom = root; + }; + DataView.prototype.remove = function (ecModel, api) { + this._dom && api.getDom().removeChild(this._dom); + }; + DataView.prototype.dispose = function (ecModel, api) { + this.remove(ecModel, api); + }; + DataView.getDefaultOption = function (ecModel) { + var defaultOption = { + show: true, + readOnly: false, + optionToContent: null, + contentToOption: null, + // eslint-disable-next-line + 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: ecModel.getLocaleModel().get(['toolbox', 'dataView', 'title']), + lang: ecModel.getLocaleModel().get(['toolbox', 'dataView', 'lang']), + backgroundColor: '#fff', + textColor: '#000', + textareaColor: '#fff', + textareaBorderColor: '#333', + buttonColor: '#c23531', + buttonTextColor: '#fff' + }; + return defaultOption; + }; + return DataView; + }(ToolboxFeature); + /** + * @inner + */ + function tryMergeDataOption(newData, originalData) { + return map(newData, function (newVal, idx) { + var original = originalData && originalData[idx]; + if (isObject(original) && !isArray(original)) { + var newValIsObject = isObject(newVal) && !isArray(newVal); + if (!newValIsObject) { + newVal = { + value: newVal + }; + } + // original data has name but new data has no name + var shouldDeleteName = original.name != null && newVal.name == null; + // Original data has option + newVal = defaults(newVal, original); + shouldDeleteName && delete newVal.name; + return newVal; + } else { + return newVal; + } + }); + } + // TODO: SELF REGISTERED. + registerAction({ + type: 'changeDataView', + event: 'dataViewChanged', + update: 'prepareAndUpdate' + }, function (payload, ecModel) { + var newSeriesOptList = []; + each(payload.newOption.series, function (seriesOpt) { + var seriesModel = ecModel.getSeriesByName(seriesOpt.name)[0]; + if (!seriesModel) { + // New created series + // Geuss the series type + newSeriesOptList.push(extend({ + // Default is scatter + type: 'scatter' + }, seriesOpt)); + } else { + var originalData = seriesModel.get('data'); + newSeriesOptList.push({ + name: seriesOpt.name, + data: tryMergeDataOption(seriesOpt.data, originalData) + }); + } + }); + ecModel.mergeOption(defaults({ + series: newSeriesOptList + }, payload.newOption)); + }); + + var each$9 = each; + var inner$f = makeInner(); + /** + * @param ecModel + * @param newSnapshot key is dataZoomId + */ + function push(ecModel, newSnapshot) { + var storedSnapshots = getStoreSnapshots(ecModel); + // If previous dataZoom can not be found, + // complete an range with current range. + each$9(newSnapshot, function (batchItem, dataZoomId) { + var i = storedSnapshots.length - 1; + for (; i >= 0; i--) { + var snapshot = storedSnapshots[i]; + if (snapshot[dataZoomId]) { + break; + } + } + if (i < 0) { + // No origin range set, create one by current range. + var dataZoomModel = ecModel.queryComponents({ + mainType: 'dataZoom', + subType: 'select', + id: dataZoomId + })[0]; + if (dataZoomModel) { + var percentRange = dataZoomModel.getPercentRange(); + storedSnapshots[0][dataZoomId] = { + dataZoomId: dataZoomId, + start: percentRange[0], + end: percentRange[1] + }; + } + } + }); + storedSnapshots.push(newSnapshot); + } + function pop(ecModel) { + var storedSnapshots = getStoreSnapshots(ecModel); + var head = storedSnapshots[storedSnapshots.length - 1]; + storedSnapshots.length > 1 && storedSnapshots.pop(); + // Find top for all dataZoom. + var snapshot = {}; + each$9(head, function (batchItem, dataZoomId) { + for (var i = storedSnapshots.length - 1; i >= 0; i--) { + batchItem = storedSnapshots[i][dataZoomId]; + if (batchItem) { + snapshot[dataZoomId] = batchItem; + break; + } + } + }); + return snapshot; + } + function clear$1(ecModel) { + inner$f(ecModel).snapshots = null; + } + function count(ecModel) { + return getStoreSnapshots(ecModel).length; + } + /** + * History length of each dataZoom may be different. + * this._history[0] is used to store origin range. + */ + function getStoreSnapshots(ecModel) { + var store = inner$f(ecModel); + if (!store.snapshots) { + store.snapshots = [{}]; + } + return store.snapshots; + } + + var RestoreOption = /** @class */function (_super) { + __extends(RestoreOption, _super); + function RestoreOption() { + return _super !== null && _super.apply(this, arguments) || this; + } + RestoreOption.prototype.onclick = function (ecModel, api) { + clear$1(ecModel); + api.dispatchAction({ + type: 'restore', + from: this.uid + }); + }; + RestoreOption.getDefaultOption = function (ecModel) { + var defaultOption = { + show: true, + // eslint-disable-next-line + 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: ecModel.getLocaleModel().get(['toolbox', 'restore', 'title']) + }; + return defaultOption; + }; + return RestoreOption; + }(ToolboxFeature); + // TODO: SELF REGISTERED. + registerAction({ + type: 'restore', + event: 'restore', + update: 'prepareAndUpdate' + }, function (payload, ecModel) { + ecModel.resetOption('recreate'); + }); + + // FIXME + // how to genarialize to more coordinate systems. + var INCLUDE_FINDER_MAIN_TYPES = ['grid', 'xAxis', 'yAxis', 'geo', 'graph', 'polar', 'radiusAxis', 'angleAxis', 'bmap']; + var BrushTargetManager = /** @class */function () { + /** + * @param finder contains Index/Id/Name of xAxis/yAxis/geo/grid + * Each can be {number|Array.<number>}. like: {xAxisIndex: [3, 4]} + * @param opt.include include coordinate system types. + */ + function BrushTargetManager(finder, ecModel, opt) { + var _this = this; + this._targetInfoList = []; + var foundCpts = parseFinder$1(ecModel, finder); + each(targetInfoBuilders, function (builder, type) { + if (!opt || !opt.include || indexOf(opt.include, type) >= 0) { + builder(foundCpts, _this._targetInfoList); + } + }); + } + BrushTargetManager.prototype.setOutputRanges = function (areas, ecModel) { + this.matchOutputRanges(areas, ecModel, function (area, coordRange, coordSys) { + (area.coordRanges || (area.coordRanges = [])).push(coordRange); + // area.coordRange is the first of area.coordRanges + if (!area.coordRange) { + area.coordRange = coordRange; + // In 'category' axis, coord to pixel is not reversible, so we can not + // rebuild range by coordRange accrately, which may bring trouble when + // brushing only one item. So we use __rangeOffset to rebuilding range + // by coordRange. And this it only used in brush component so it is no + // need to be adapted to coordRanges. + var result = coordConvert[area.brushType](0, coordSys, coordRange); + area.__rangeOffset = { + offset: diffProcessor[area.brushType](result.values, area.range, [1, 1]), + xyMinMax: result.xyMinMax + }; + } + }); + return areas; + }; + BrushTargetManager.prototype.matchOutputRanges = function (areas, ecModel, cb) { + each(areas, function (area) { + var targetInfo = this.findTargetInfo(area, ecModel); + if (targetInfo && targetInfo !== true) { + each(targetInfo.coordSyses, function (coordSys) { + var result = coordConvert[area.brushType](1, coordSys, area.range, true); + cb(area, result.values, coordSys, ecModel); + }); + } + }, this); + }; + /** + * the `areas` is `BrushModel.areas`. + * Called in layout stage. + * convert `area.coordRange` to global range and set panelId to `area.range`. + */ + BrushTargetManager.prototype.setInputRanges = function (areas, ecModel) { + each(areas, function (area) { + var targetInfo = this.findTargetInfo(area, ecModel); + if ("development" !== 'production') { + assert(!targetInfo || targetInfo === true || area.coordRange, 'coordRange must be specified when coord index specified.'); + assert(!targetInfo || targetInfo !== true || area.range, 'range must be specified in global brush.'); + } + area.range = area.range || []; + // convert coordRange to global range and set panelId. + if (targetInfo && targetInfo !== true) { + area.panelId = targetInfo.panelId; + // (1) area.range should always be calculate from coordRange but does + // not keep its original value, for the sake of the dataZoom scenario, + // where area.coordRange remains unchanged but area.range may be changed. + // (2) Only support converting one coordRange to pixel range in brush + // component. So do not consider `coordRanges`. + // (3) About __rangeOffset, see comment above. + var result = coordConvert[area.brushType](0, targetInfo.coordSys, area.coordRange); + var rangeOffset = area.__rangeOffset; + area.range = rangeOffset ? diffProcessor[area.brushType](result.values, rangeOffset.offset, getScales(result.xyMinMax, rangeOffset.xyMinMax)) : result.values; + } + }, this); + }; + BrushTargetManager.prototype.makePanelOpts = function (api, getDefaultBrushType) { + return map(this._targetInfoList, function (targetInfo) { + var rect = targetInfo.getPanelRect(); + return { + panelId: targetInfo.panelId, + defaultBrushType: getDefaultBrushType ? getDefaultBrushType(targetInfo) : null, + clipPath: makeRectPanelClipPath(rect), + isTargetByCursor: makeRectIsTargetByCursor(rect, api, targetInfo.coordSysModel), + getLinearBrushOtherExtent: makeLinearBrushOtherExtent(rect) + }; + }); + }; + BrushTargetManager.prototype.controlSeries = function (area, seriesModel, ecModel) { + // Check whether area is bound in coord, and series do not belong to that coord. + // If do not do this check, some brush (like lineX) will controll all axes. + var targetInfo = this.findTargetInfo(area, ecModel); + return targetInfo === true || targetInfo && indexOf(targetInfo.coordSyses, seriesModel.coordinateSystem) >= 0; + }; + /** + * If return Object, a coord found. + * If return true, global found. + * Otherwise nothing found. + */ + BrushTargetManager.prototype.findTargetInfo = function (area, ecModel) { + var targetInfoList = this._targetInfoList; + var foundCpts = parseFinder$1(ecModel, area); + for (var i = 0; i < targetInfoList.length; i++) { + var targetInfo = targetInfoList[i]; + var areaPanelId = area.panelId; + if (areaPanelId) { + if (targetInfo.panelId === areaPanelId) { + return targetInfo; + } + } else { + for (var j = 0; j < targetInfoMatchers.length; j++) { + if (targetInfoMatchers[j](foundCpts, targetInfo)) { + return targetInfo; + } + } + } + } + return true; + }; + return BrushTargetManager; + }(); + function formatMinMax(minMax) { + minMax[0] > minMax[1] && minMax.reverse(); + return minMax; + } + function parseFinder$1(ecModel, finder) { + return parseFinder(ecModel, finder, { + includeMainTypes: INCLUDE_FINDER_MAIN_TYPES + }); + } + var targetInfoBuilders = { + grid: function (foundCpts, targetInfoList) { + var xAxisModels = foundCpts.xAxisModels; + var yAxisModels = foundCpts.yAxisModels; + var gridModels = foundCpts.gridModels; + // Remove duplicated. + var gridModelMap = createHashMap(); + var xAxesHas = {}; + var yAxesHas = {}; + if (!xAxisModels && !yAxisModels && !gridModels) { + return; + } + each(xAxisModels, function (axisModel) { + var gridModel = axisModel.axis.grid.model; + gridModelMap.set(gridModel.id, gridModel); + xAxesHas[gridModel.id] = true; + }); + each(yAxisModels, function (axisModel) { + var gridModel = axisModel.axis.grid.model; + gridModelMap.set(gridModel.id, gridModel); + yAxesHas[gridModel.id] = true; + }); + each(gridModels, function (gridModel) { + gridModelMap.set(gridModel.id, gridModel); + xAxesHas[gridModel.id] = true; + yAxesHas[gridModel.id] = true; + }); + gridModelMap.each(function (gridModel) { + var grid = gridModel.coordinateSystem; + var cartesians = []; + each(grid.getCartesians(), function (cartesian, index) { + if (indexOf(xAxisModels, cartesian.getAxis('x').model) >= 0 || indexOf(yAxisModels, cartesian.getAxis('y').model) >= 0) { + cartesians.push(cartesian); + } + }); + targetInfoList.push({ + panelId: 'grid--' + gridModel.id, + gridModel: gridModel, + coordSysModel: gridModel, + // Use the first one as the representitive coordSys. + coordSys: cartesians[0], + coordSyses: cartesians, + getPanelRect: panelRectBuilders.grid, + xAxisDeclared: xAxesHas[gridModel.id], + yAxisDeclared: yAxesHas[gridModel.id] + }); + }); + }, + geo: function (foundCpts, targetInfoList) { + each(foundCpts.geoModels, function (geoModel) { + var coordSys = geoModel.coordinateSystem; + targetInfoList.push({ + panelId: 'geo--' + geoModel.id, + geoModel: geoModel, + coordSysModel: geoModel, + coordSys: coordSys, + coordSyses: [coordSys], + getPanelRect: panelRectBuilders.geo + }); + }); + } + }; + var targetInfoMatchers = [ + // grid + function (foundCpts, targetInfo) { + var xAxisModel = foundCpts.xAxisModel; + var yAxisModel = foundCpts.yAxisModel; + var gridModel = foundCpts.gridModel; + !gridModel && xAxisModel && (gridModel = xAxisModel.axis.grid.model); + !gridModel && yAxisModel && (gridModel = yAxisModel.axis.grid.model); + return gridModel && gridModel === targetInfo.gridModel; + }, + // geo + function (foundCpts, targetInfo) { + var geoModel = foundCpts.geoModel; + return geoModel && geoModel === targetInfo.geoModel; + }]; + var panelRectBuilders = { + grid: function () { + // grid is not Transformable. + return this.coordSys.master.getRect().clone(); + }, + geo: function () { + var coordSys = this.coordSys; + var rect = coordSys.getBoundingRect().clone(); + // geo roam and zoom transform + rect.applyTransform(getTransform(coordSys)); + return rect; + } + }; + var coordConvert = { + lineX: curry(axisConvert, 0), + lineY: curry(axisConvert, 1), + rect: function (to, coordSys, rangeOrCoordRange, clamp) { + var xminymin = to ? coordSys.pointToData([rangeOrCoordRange[0][0], rangeOrCoordRange[1][0]], clamp) : coordSys.dataToPoint([rangeOrCoordRange[0][0], rangeOrCoordRange[1][0]], clamp); + var xmaxymax = to ? coordSys.pointToData([rangeOrCoordRange[0][1], rangeOrCoordRange[1][1]], clamp) : coordSys.dataToPoint([rangeOrCoordRange[0][1], rangeOrCoordRange[1][1]], clamp); + var values = [formatMinMax([xminymin[0], xmaxymax[0]]), formatMinMax([xminymin[1], xmaxymax[1]])]; + return { + values: values, + xyMinMax: values + }; + }, + polygon: function (to, coordSys, rangeOrCoordRange, clamp) { + var xyMinMax = [[Infinity, -Infinity], [Infinity, -Infinity]]; + var values = map(rangeOrCoordRange, function (item) { + var p = to ? coordSys.pointToData(item, clamp) : coordSys.dataToPoint(item, clamp); + xyMinMax[0][0] = Math.min(xyMinMax[0][0], p[0]); + xyMinMax[1][0] = Math.min(xyMinMax[1][0], p[1]); + xyMinMax[0][1] = Math.max(xyMinMax[0][1], p[0]); + xyMinMax[1][1] = Math.max(xyMinMax[1][1], p[1]); + return p; + }); + return { + values: values, + xyMinMax: xyMinMax + }; + } + }; + function axisConvert(axisNameIndex, to, coordSys, rangeOrCoordRange) { + if ("development" !== 'production') { + assert(coordSys.type === 'cartesian2d', 'lineX/lineY brush is available only in cartesian2d.'); + } + var axis = coordSys.getAxis(['x', 'y'][axisNameIndex]); + var values = formatMinMax(map([0, 1], function (i) { + return to ? axis.coordToData(axis.toLocalCoord(rangeOrCoordRange[i]), true) : axis.toGlobalCoord(axis.dataToCoord(rangeOrCoordRange[i])); + })); + var xyMinMax = []; + xyMinMax[axisNameIndex] = values; + xyMinMax[1 - axisNameIndex] = [NaN, NaN]; + return { + values: values, + xyMinMax: xyMinMax + }; + } + var diffProcessor = { + lineX: curry(axisDiffProcessor, 0), + lineY: curry(axisDiffProcessor, 1), + rect: function (values, refer, scales) { + return [[values[0][0] - scales[0] * refer[0][0], values[0][1] - scales[0] * refer[0][1]], [values[1][0] - scales[1] * refer[1][0], values[1][1] - scales[1] * refer[1][1]]]; + }, + polygon: function (values, refer, scales) { + return map(values, function (item, idx) { + return [item[0] - scales[0] * refer[idx][0], item[1] - scales[1] * refer[idx][1]]; + }); + } + }; + function axisDiffProcessor(axisNameIndex, values, refer, scales) { + return [values[0] - scales[axisNameIndex] * refer[0], values[1] - scales[axisNameIndex] * refer[1]]; + } + // We have to process scale caused by dataZoom manually, + // although it might be not accurate. + // Return [0~1, 0~1] + function getScales(xyMinMaxCurr, xyMinMaxOrigin) { + var sizeCurr = getSize$1(xyMinMaxCurr); + var sizeOrigin = getSize$1(xyMinMaxOrigin); + var scales = [sizeCurr[0] / sizeOrigin[0], sizeCurr[1] / sizeOrigin[1]]; + isNaN(scales[0]) && (scales[0] = 1); + isNaN(scales[1]) && (scales[1] = 1); + return scales; + } + function getSize$1(xyMinMax) { + return xyMinMax ? [xyMinMax[0][1] - xyMinMax[0][0], xyMinMax[1][1] - xyMinMax[1][0]] : [NaN, NaN]; + } + + var each$a = each; + var DATA_ZOOM_ID_BASE = makeInternalComponentId('toolbox-dataZoom_'); + var DataZoomFeature = /** @class */function (_super) { + __extends(DataZoomFeature, _super); + function DataZoomFeature() { + return _super !== null && _super.apply(this, arguments) || this; + } + DataZoomFeature.prototype.render = function (featureModel, ecModel, api, payload) { + if (!this._brushController) { + this._brushController = new BrushController(api.getZr()); + this._brushController.on('brush', bind(this._onBrush, this)).mount(); + } + updateZoomBtnStatus(featureModel, ecModel, this, payload, api); + updateBackBtnStatus(featureModel, ecModel); + }; + DataZoomFeature.prototype.onclick = function (ecModel, api, type) { + handlers$1[type].call(this); + }; + DataZoomFeature.prototype.remove = function (ecModel, api) { + this._brushController && this._brushController.unmount(); + }; + DataZoomFeature.prototype.dispose = function (ecModel, api) { + this._brushController && this._brushController.dispose(); + }; + DataZoomFeature.prototype._onBrush = function (eventParam) { + var areas = eventParam.areas; + if (!eventParam.isEnd || !areas.length) { + return; + } + var snapshot = {}; + var ecModel = this.ecModel; + this._brushController.updateCovers([]); // remove cover + var brushTargetManager = new BrushTargetManager(makeAxisFinder(this.model), ecModel, { + include: ['grid'] + }); + brushTargetManager.matchOutputRanges(areas, ecModel, function (area, coordRange, coordSys) { + if (coordSys.type !== 'cartesian2d') { + return; + } + var brushType = area.brushType; + if (brushType === 'rect') { + setBatch('x', coordSys, coordRange[0]); + setBatch('y', coordSys, coordRange[1]); + } else { + setBatch({ + lineX: 'x', + lineY: 'y' + }[brushType], coordSys, coordRange); + } + }); + push(ecModel, snapshot); + this._dispatchZoomAction(snapshot); + function setBatch(dimName, coordSys, minMax) { + var axis = coordSys.getAxis(dimName); + var axisModel = axis.model; + var dataZoomModel = findDataZoom(dimName, axisModel, ecModel); + // Restrict range. + var minMaxSpan = dataZoomModel.findRepresentativeAxisProxy(axisModel).getMinMaxSpan(); + if (minMaxSpan.minValueSpan != null || minMaxSpan.maxValueSpan != null) { + minMax = sliderMove(0, minMax.slice(), axis.scale.getExtent(), 0, minMaxSpan.minValueSpan, minMaxSpan.maxValueSpan); + } + dataZoomModel && (snapshot[dataZoomModel.id] = { + dataZoomId: dataZoomModel.id, + startValue: minMax[0], + endValue: minMax[1] + }); + } + function findDataZoom(dimName, axisModel, ecModel) { + var found; + ecModel.eachComponent({ + mainType: 'dataZoom', + subType: 'select' + }, function (dzModel) { + var has = dzModel.getAxisModel(dimName, axisModel.componentIndex); + has && (found = dzModel); + }); + return found; + } + }; + DataZoomFeature.prototype._dispatchZoomAction = function (snapshot) { + var batch = []; + // Convert from hash map to array. + each$a(snapshot, function (batchItem, dataZoomId) { + batch.push(clone(batchItem)); + }); + batch.length && this.api.dispatchAction({ + type: 'dataZoom', + from: this.uid, + batch: batch + }); + }; + DataZoomFeature.getDefaultOption = function (ecModel) { + var defaultOption = { + show: true, + filterMode: 'filter', + // Icon group + 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' + }, + // `zoom`, `back` + title: ecModel.getLocaleModel().get(['toolbox', 'dataZoom', 'title']), + brushStyle: { + borderWidth: 0, + color: 'rgba(210,219,238,0.2)' + } + }; + return defaultOption; + }; + return DataZoomFeature; + }(ToolboxFeature); + var handlers$1 = { + zoom: function () { + var nextActive = !this._isZoomActive; + this.api.dispatchAction({ + type: 'takeGlobalCursor', + key: 'dataZoomSelect', + dataZoomSelectActive: nextActive + }); + }, + back: function () { + this._dispatchZoomAction(pop(this.ecModel)); + } + }; + function makeAxisFinder(dzFeatureModel) { + var setting = { + xAxisIndex: dzFeatureModel.get('xAxisIndex', true), + yAxisIndex: dzFeatureModel.get('yAxisIndex', true), + xAxisId: dzFeatureModel.get('xAxisId', true), + yAxisId: dzFeatureModel.get('yAxisId', true) + }; + // If both `xAxisIndex` `xAxisId` not set, it means 'all'. + // If both `yAxisIndex` `yAxisId` not set, it means 'all'. + // Some old cases set like this below to close yAxis control but leave xAxis control: + // `{ feature: { dataZoom: { yAxisIndex: false } }`. + if (setting.xAxisIndex == null && setting.xAxisId == null) { + setting.xAxisIndex = 'all'; + } + if (setting.yAxisIndex == null && setting.yAxisId == null) { + setting.yAxisIndex = 'all'; + } + return setting; + } + function updateBackBtnStatus(featureModel, ecModel) { + featureModel.setIconStatus('back', count(ecModel) > 1 ? 'emphasis' : 'normal'); + } + function updateZoomBtnStatus(featureModel, ecModel, view, payload, api) { + var zoomActive = view._isZoomActive; + if (payload && payload.type === 'takeGlobalCursor') { + zoomActive = payload.key === 'dataZoomSelect' ? payload.dataZoomSelectActive : false; + } + view._isZoomActive = zoomActive; + featureModel.setIconStatus('zoom', zoomActive ? 'emphasis' : 'normal'); + var brushTargetManager = new BrushTargetManager(makeAxisFinder(featureModel), ecModel, { + include: ['grid'] + }); + var panels = brushTargetManager.makePanelOpts(api, function (targetInfo) { + return targetInfo.xAxisDeclared && !targetInfo.yAxisDeclared ? 'lineX' : !targetInfo.xAxisDeclared && targetInfo.yAxisDeclared ? 'lineY' : 'rect'; + }); + view._brushController.setPanels(panels).enableBrush(zoomActive && panels.length ? { + brushType: 'auto', + brushStyle: featureModel.getModel('brushStyle').getItemStyle() + } : false); + } + registerInternalOptionCreator('dataZoom', function (ecModel) { + var toolboxModel = ecModel.getComponent('toolbox', 0); + var featureDataZoomPath = ['feature', 'dataZoom']; + if (!toolboxModel || toolboxModel.get(featureDataZoomPath) == null) { + return; + } + var dzFeatureModel = toolboxModel.getModel(featureDataZoomPath); + var dzOptions = []; + var finder = makeAxisFinder(dzFeatureModel); + var finderResult = parseFinder(ecModel, finder); + each$a(finderResult.xAxisModels, function (axisModel) { + return buildInternalOptions(axisModel, 'xAxis', 'xAxisIndex'); + }); + each$a(finderResult.yAxisModels, function (axisModel) { + return buildInternalOptions(axisModel, 'yAxis', 'yAxisIndex'); + }); + function buildInternalOptions(axisModel, axisMainType, axisIndexPropName) { + var axisIndex = axisModel.componentIndex; + var newOpt = { + type: 'select', + $fromToolbox: true, + // Default to be filter + filterMode: dzFeatureModel.get('filterMode', true) || 'filter', + // Id for merge mapping. + id: DATA_ZOOM_ID_BASE + axisMainType + axisIndex + }; + newOpt[axisIndexPropName] = axisIndex; + dzOptions.push(newOpt); + } + return dzOptions; + }); + + function install$z(registers) { + registers.registerComponentModel(ToolboxModel); + registers.registerComponentView(ToolboxView); + registerFeature('saveAsImage', SaveAsImage); + registerFeature('magicType', MagicType); + registerFeature('dataView', DataView); + registerFeature('dataZoom', DataZoomFeature); + registerFeature('restore', RestoreOption); + use(install$y); + } + + var TooltipModel = /** @class */function (_super) { + __extends(TooltipModel, _super); + function TooltipModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = TooltipModel.type; + return _this; + } + TooltipModel.type = 'tooltip'; + TooltipModel.dependencies = ['axisPointer']; + TooltipModel.defaultOption = { + // zlevel: 0, + z: 60, + show: true, + // tooltip main content + showContent: true, + // 'trigger' only works on coordinate system. + // 'item' | 'axis' | 'none' + trigger: 'item', + // 'click' | 'mousemove' | 'none' + triggerOn: 'mousemove|click', + alwaysShowContent: false, + displayMode: 'single', + renderMode: 'auto', + // whether restraint content inside viewRect. + // If renderMode: 'richText', default true. + // If renderMode: 'html', defaut false (for backward compat). + confine: null, + showDelay: 0, + hideDelay: 100, + // Animation transition time, unit is second + transitionDuration: 0.4, + enterable: false, + backgroundColor: '#fff', + // box shadow + shadowBlur: 10, + shadowColor: 'rgba(0, 0, 0, .2)', + shadowOffsetX: 1, + shadowOffsetY: 2, + // tooltip border radius, unit is px, default is 4 + borderRadius: 4, + // tooltip border width, unit is px, default is 0 (no border) + borderWidth: 1, + // Tooltip inside padding, default is 5 for all direction + // Array is allowed to set up, right, bottom, left, same with css + // The default value: See `tooltip/tooltipMarkup.ts#getPaddingFromTooltipModel`. + padding: null, + // Extra css text + extraCssText: '', + // axis indicator, trigger by axis + axisPointer: { + // default is line + // legal values: 'line' | 'shadow' | 'cross' + type: 'line', + // Valid when type is line, appoint tooltip line locate on which line. Optional + // legal values: 'x' | 'y' | 'angle' | 'radius' | 'auto' + // default is 'auto', chose the axis which type is category. + // for multiply y axis, cartesian coord chose x axis, polar chose angle axis + axis: 'auto', + animation: 'auto', + animationDurationUpdate: 200, + animationEasingUpdate: 'exponentialOut', + crossStyle: { + color: '#999', + width: 1, + type: 'dashed', + // TODO formatter + textStyle: {} + } + // lineStyle and shadowStyle should not be specified here, + // otherwise it will always override those styles on option.axisPointer. + }, + + textStyle: { + color: '#666', + fontSize: 14 + } + }; + return TooltipModel; + }(ComponentModel); + + /* global document */ + function shouldTooltipConfine(tooltipModel) { + var confineOption = tooltipModel.get('confine'); + return confineOption != null ? !!confineOption + // In richText mode, the outside part can not be visible. + : tooltipModel.get('renderMode') === 'richText'; + } + function testStyle(styleProps) { + if (!env.domSupported) { + return; + } + var style = document.documentElement.style; + for (var i = 0, len = styleProps.length; i < len; i++) { + if (styleProps[i] in style) { + return styleProps[i]; + } + } + } + var TRANSFORM_VENDOR = testStyle(['transform', 'webkitTransform', 'OTransform', 'MozTransform', 'msTransform']); + var TRANSITION_VENDOR = testStyle(['webkitTransition', 'transition', 'OTransition', 'MozTransition', 'msTransition']); + function toCSSVendorPrefix(styleVendor, styleProp) { + if (!styleVendor) { + return styleProp; + } + styleProp = toCamelCase(styleProp, true); + var idx = styleVendor.indexOf(styleProp); + styleVendor = idx === -1 ? styleProp : "-" + styleVendor.slice(0, idx) + "-" + styleProp; + return styleVendor.toLowerCase(); + } + function getComputedStyle(el, style) { + var stl = el.currentStyle || document.defaultView && document.defaultView.getComputedStyle(el); + return stl ? style ? stl[style] : stl : null; + } + + /* global document, window */ + var CSS_TRANSITION_VENDOR = toCSSVendorPrefix(TRANSITION_VENDOR, 'transition'); + var CSS_TRANSFORM_VENDOR = toCSSVendorPrefix(TRANSFORM_VENDOR, 'transform'); + // eslint-disable-next-line + var gCssText = "position:absolute;display:block;border-style:solid;white-space:nowrap;z-index:9999999;" + (env.transform3dSupported ? 'will-change:transform;' : ''); + function mirrorPos(pos) { + pos = pos === 'left' ? 'right' : pos === 'right' ? 'left' : pos === 'top' ? 'bottom' : 'top'; + return pos; + } + function assembleArrow(tooltipModel, borderColor, arrowPosition) { + if (!isString(arrowPosition) || arrowPosition === 'inside') { + return ''; + } + var backgroundColor = tooltipModel.get('backgroundColor'); + var borderWidth = tooltipModel.get('borderWidth'); + borderColor = convertToColorString(borderColor); + var arrowPos = mirrorPos(arrowPosition); + var arrowSize = Math.max(Math.round(borderWidth) * 1.5, 6); + var positionStyle = ''; + var transformStyle = CSS_TRANSFORM_VENDOR + ':'; + var rotateDeg; + if (indexOf(['left', 'right'], arrowPos) > -1) { + positionStyle += 'top:50%'; + transformStyle += "translateY(-50%) rotate(" + (rotateDeg = arrowPos === 'left' ? -225 : -45) + "deg)"; + } else { + positionStyle += 'left:50%'; + transformStyle += "translateX(-50%) rotate(" + (rotateDeg = arrowPos === 'top' ? 225 : 45) + "deg)"; + } + var rotateRadian = rotateDeg * Math.PI / 180; + var arrowWH = arrowSize + borderWidth; + var rotatedWH = arrowWH * Math.abs(Math.cos(rotateRadian)) + arrowWH * Math.abs(Math.sin(rotateRadian)); + var arrowOffset = Math.round(((rotatedWH - Math.SQRT2 * borderWidth) / 2 + Math.SQRT2 * borderWidth - (rotatedWH - arrowWH) / 2) * 100) / 100; + positionStyle += ";" + arrowPos + ":-" + arrowOffset + "px"; + var borderStyle = borderColor + " solid " + borderWidth + "px;"; + var styleCss = ["position:absolute;width:" + arrowSize + "px;height:" + arrowSize + "px;z-index:-1;", positionStyle + ";" + transformStyle + ";", "border-bottom:" + borderStyle, "border-right:" + borderStyle, "background-color:" + backgroundColor + ";"]; + return "<div style=\"" + styleCss.join('') + "\"></div>"; + } + function assembleTransition(duration, onlyFade) { + var transitionCurve = 'cubic-bezier(0.23,1,0.32,1)'; + var transitionOption = " " + duration / 2 + "s " + transitionCurve; + var transitionText = "opacity" + transitionOption + ",visibility" + transitionOption; + if (!onlyFade) { + transitionOption = " " + duration + "s " + transitionCurve; + transitionText += env.transformSupported ? "," + CSS_TRANSFORM_VENDOR + transitionOption : ",left" + transitionOption + ",top" + transitionOption; + } + return CSS_TRANSITION_VENDOR + ':' + transitionText; + } + function assembleTransform(x, y, toString) { + // If using float on style, the final width of the dom might + // keep changing slightly while mouse move. So `toFixed(0)` them. + var x0 = x.toFixed(0) + 'px'; + var y0 = y.toFixed(0) + 'px'; + // not support transform, use `left` and `top` instead. + if (!env.transformSupported) { + return toString ? "top:" + y0 + ";left:" + x0 + ";" : [['top', y0], ['left', x0]]; + } + // support transform + var is3d = env.transform3dSupported; + var translate = "translate" + (is3d ? '3d' : '') + "(" + x0 + "," + y0 + (is3d ? ',0' : '') + ")"; + return toString ? 'top:0;left:0;' + CSS_TRANSFORM_VENDOR + ':' + translate + ';' : [['top', 0], ['left', 0], [TRANSFORM_VENDOR, translate]]; + } + /** + * @param {Object} textStyle + * @return {string} + * @inner + */ + function assembleFont(textStyleModel) { + var cssText = []; + var fontSize = textStyleModel.get('fontSize'); + var color = textStyleModel.getTextColor(); + color && cssText.push('color:' + color); + cssText.push('font:' + textStyleModel.getFont()); + fontSize + // @ts-ignore, leave it to the tooltip refactor. + && cssText.push('line-height:' + Math.round(fontSize * 3 / 2) + 'px'); + var shadowColor = textStyleModel.get('textShadowColor'); + var shadowBlur = textStyleModel.get('textShadowBlur') || 0; + var shadowOffsetX = textStyleModel.get('textShadowOffsetX') || 0; + var shadowOffsetY = textStyleModel.get('textShadowOffsetY') || 0; + shadowColor && shadowBlur && cssText.push('text-shadow:' + shadowOffsetX + 'px ' + shadowOffsetY + 'px ' + shadowBlur + 'px ' + shadowColor); + each(['decoration', 'align'], function (name) { + var val = textStyleModel.get(name); + val && cssText.push('text-' + name + ':' + val); + }); + return cssText.join(';'); + } + function assembleCssText(tooltipModel, enableTransition, onlyFade) { + var cssText = []; + var transitionDuration = tooltipModel.get('transitionDuration'); + var backgroundColor = tooltipModel.get('backgroundColor'); + var shadowBlur = tooltipModel.get('shadowBlur'); + var shadowColor = tooltipModel.get('shadowColor'); + var shadowOffsetX = tooltipModel.get('shadowOffsetX'); + var shadowOffsetY = tooltipModel.get('shadowOffsetY'); + var textStyleModel = tooltipModel.getModel('textStyle'); + var padding = getPaddingFromTooltipModel(tooltipModel, 'html'); + var boxShadow = shadowOffsetX + "px " + shadowOffsetY + "px " + shadowBlur + "px " + shadowColor; + cssText.push('box-shadow:' + boxShadow); + // Animation transition. Do not animate when transitionDuration is 0. + enableTransition && transitionDuration && cssText.push(assembleTransition(transitionDuration, onlyFade)); + if (backgroundColor) { + cssText.push('background-color:' + backgroundColor); + } + // Border style + each(['width', 'color', 'radius'], function (name) { + var borderName = 'border-' + name; + var camelCase = toCamelCase(borderName); + var val = tooltipModel.get(camelCase); + val != null && cssText.push(borderName + ':' + val + (name === 'color' ? '' : 'px')); + }); + // Text style + cssText.push(assembleFont(textStyleModel)); + // Padding + if (padding != null) { + cssText.push('padding:' + normalizeCssArray$1(padding).join('px ') + 'px'); + } + return cssText.join(';') + ';'; + } + // If not able to make, do not modify the input `out`. + function makeStyleCoord(out, zr, container, zrX, zrY) { + var zrPainter = zr && zr.painter; + if (container) { + var zrViewportRoot = zrPainter && zrPainter.getViewportRoot(); + if (zrViewportRoot) { + // Some APPs might use scale on body, so we support CSS transform here. + transformLocalCoord(out, zrViewportRoot, container, zrX, zrY); + } + } else { + out[0] = zrX; + out[1] = zrY; + // xy should be based on canvas root. But tooltipContent is + // the sibling of canvas root. So padding of ec container + // should be considered here. + var viewportRootOffset = zrPainter && zrPainter.getViewportRootOffset(); + if (viewportRootOffset) { + out[0] += viewportRootOffset.offsetLeft; + out[1] += viewportRootOffset.offsetTop; + } + } + out[2] = out[0] / zr.getWidth(); + out[3] = out[1] / zr.getHeight(); + } + var TooltipHTMLContent = /** @class */function () { + function TooltipHTMLContent(api, opt) { + this._show = false; + this._styleCoord = [0, 0, 0, 0]; + this._enterable = true; + this._alwaysShowContent = false; + this._firstShow = true; + this._longHide = true; + if (env.wxa) { + return null; + } + var el = document.createElement('div'); + // TODO: TYPE + el.domBelongToZr = true; + this.el = el; + var zr = this._zr = api.getZr(); + var appendTo = opt.appendTo; + var container = appendTo && (isString(appendTo) ? document.querySelector(appendTo) : isDom(appendTo) ? appendTo : isFunction(appendTo) && appendTo(api.getDom())); + makeStyleCoord(this._styleCoord, zr, container, api.getWidth() / 2, api.getHeight() / 2); + (container || api.getDom()).appendChild(el); + this._api = api; + this._container = container; + // FIXME + // Is it needed to trigger zr event manually if + // the browser do not support `pointer-events: none`. + var self = this; + el.onmouseenter = function () { + // clear the timeout in hideLater and keep showing tooltip + if (self._enterable) { + clearTimeout(self._hideTimeout); + self._show = true; + } + self._inContent = true; + }; + el.onmousemove = function (e) { + e = e || window.event; + if (!self._enterable) { + // `pointer-events: none` is set to tooltip content div + // if `enterable` is set as `false`, and `el.onmousemove` + // can not be triggered. But in browser that do not + // support `pointer-events`, we need to do this: + // Try trigger zrender event to avoid mouse + // in and out shape too frequently + var handler = zr.handler; + var zrViewportRoot = zr.painter.getViewportRoot(); + normalizeEvent(zrViewportRoot, e, true); + handler.dispatch('mousemove', e); + } + }; + el.onmouseleave = function () { + // set `_inContent` to `false` before `hideLater` + self._inContent = false; + if (self._enterable) { + if (self._show) { + self.hideLater(self._hideDelay); + } + } + }; + } + /** + * Update when tooltip is rendered + */ + TooltipHTMLContent.prototype.update = function (tooltipModel) { + // FIXME + // Move this logic to ec main? + if (!this._container) { + var container = this._api.getDom(); + var position = getComputedStyle(container, 'position'); + var domStyle = container.style; + if (domStyle.position !== 'absolute' && position !== 'absolute') { + domStyle.position = 'relative'; + } + } + // move tooltip if chart resized + var alwaysShowContent = tooltipModel.get('alwaysShowContent'); + alwaysShowContent && this._moveIfResized(); + // update alwaysShowContent + this._alwaysShowContent = alwaysShowContent; + // update className + this.el.className = tooltipModel.get('className') || ''; + // Hide the tooltip + // PENDING + // this.hide(); + }; + + TooltipHTMLContent.prototype.show = function (tooltipModel, nearPointColor) { + clearTimeout(this._hideTimeout); + clearTimeout(this._longHideTimeout); + var el = this.el; + var style = el.style; + var styleCoord = this._styleCoord; + if (!el.innerHTML) { + style.display = 'none'; + } else { + style.cssText = gCssText + assembleCssText(tooltipModel, !this._firstShow, this._longHide) + // initial transform + + assembleTransform(styleCoord[0], styleCoord[1], true) + ("border-color:" + convertToColorString(nearPointColor) + ";") + (tooltipModel.get('extraCssText') || '') + // If mouse occasionally move over the tooltip, a mouseout event will be + // triggered by canvas, and cause some unexpectable result like dragging + // stop, "unfocusAdjacency". Here `pointer-events: none` is used to solve + // it. Although it is not supported by IE8~IE10, fortunately it is a rare + // scenario. + + (";pointer-events:" + (this._enterable ? 'auto' : 'none')); + } + this._show = true; + this._firstShow = false; + this._longHide = false; + }; + TooltipHTMLContent.prototype.setContent = function (content, markers, tooltipModel, borderColor, arrowPosition) { + var el = this.el; + if (content == null) { + el.innerHTML = ''; + return; + } + var arrow = ''; + if (isString(arrowPosition) && tooltipModel.get('trigger') === 'item' && !shouldTooltipConfine(tooltipModel)) { + arrow = assembleArrow(tooltipModel, borderColor, arrowPosition); + } + if (isString(content)) { + el.innerHTML = content + arrow; + } else if (content) { + // Clear previous + el.innerHTML = ''; + if (!isArray(content)) { + content = [content]; + } + for (var i = 0; i < content.length; i++) { + if (isDom(content[i]) && content[i].parentNode !== el) { + el.appendChild(content[i]); + } + } + // no arrow if empty + if (arrow && el.childNodes.length) { + // no need to create a new parent element, but it's not supported by IE 10 and older. + // const arrowEl = document.createRange().createContextualFragment(arrow); + var arrowEl = document.createElement('div'); + arrowEl.innerHTML = arrow; + el.appendChild(arrowEl); + } + } + }; + TooltipHTMLContent.prototype.setEnterable = function (enterable) { + this._enterable = enterable; + }; + TooltipHTMLContent.prototype.getSize = function () { + var el = this.el; + return [el.offsetWidth, el.offsetHeight]; + }; + TooltipHTMLContent.prototype.moveTo = function (zrX, zrY) { + var styleCoord = this._styleCoord; + makeStyleCoord(styleCoord, this._zr, this._container, zrX, zrY); + if (styleCoord[0] != null && styleCoord[1] != null) { + var style_1 = this.el.style; + var transforms = assembleTransform(styleCoord[0], styleCoord[1]); + each(transforms, function (transform) { + style_1[transform[0]] = transform[1]; + }); + } + }; + /** + * when `alwaysShowContent` is true, + * move the tooltip after chart resized + */ + TooltipHTMLContent.prototype._moveIfResized = function () { + // The ratio of left to width + var ratioX = this._styleCoord[2]; + // The ratio of top to height + var ratioY = this._styleCoord[3]; + this.moveTo(ratioX * this._zr.getWidth(), ratioY * this._zr.getHeight()); + }; + TooltipHTMLContent.prototype.hide = function () { + var _this = this; + var style = this.el.style; + style.visibility = 'hidden'; + style.opacity = '0'; + env.transform3dSupported && (style.willChange = ''); + this._show = false; + this._longHideTimeout = setTimeout(function () { + return _this._longHide = true; + }, 500); + }; + TooltipHTMLContent.prototype.hideLater = function (time) { + if (this._show && !(this._inContent && this._enterable) && !this._alwaysShowContent) { + if (time) { + this._hideDelay = time; + // Set show false to avoid invoke hideLater multiple times + this._show = false; + this._hideTimeout = setTimeout(bind(this.hide, this), time); + } else { + this.hide(); + } + } + }; + TooltipHTMLContent.prototype.isShow = function () { + return this._show; + }; + TooltipHTMLContent.prototype.dispose = function () { + clearTimeout(this._hideTimeout); + clearTimeout(this._longHideTimeout); + var parentNode = this.el.parentNode; + parentNode && parentNode.removeChild(this.el); + this.el = this._container = null; + }; + return TooltipHTMLContent; + }(); + + var TooltipRichContent = /** @class */function () { + function TooltipRichContent(api) { + this._show = false; + this._styleCoord = [0, 0, 0, 0]; + this._alwaysShowContent = false; + this._enterable = true; + this._zr = api.getZr(); + makeStyleCoord$1(this._styleCoord, this._zr, api.getWidth() / 2, api.getHeight() / 2); + } + /** + * Update when tooltip is rendered + */ + TooltipRichContent.prototype.update = function (tooltipModel) { + var alwaysShowContent = tooltipModel.get('alwaysShowContent'); + alwaysShowContent && this._moveIfResized(); + // update alwaysShowContent + this._alwaysShowContent = alwaysShowContent; + }; + TooltipRichContent.prototype.show = function () { + if (this._hideTimeout) { + clearTimeout(this._hideTimeout); + } + this.el.show(); + this._show = true; + }; + /** + * Set tooltip content + */ + TooltipRichContent.prototype.setContent = function (content, markupStyleCreator, tooltipModel, borderColor, arrowPosition) { + var _this = this; + if (isObject(content)) { + throwError("development" !== 'production' ? 'Passing DOM nodes as content is not supported in richText tooltip!' : ''); + } + if (this.el) { + this._zr.remove(this.el); + } + var textStyleModel = tooltipModel.getModel('textStyle'); + this.el = new ZRText({ + style: { + rich: markupStyleCreator.richTextStyles, + text: content, + lineHeight: 22, + borderWidth: 1, + borderColor: borderColor, + textShadowColor: textStyleModel.get('textShadowColor'), + fill: tooltipModel.get(['textStyle', 'color']), + padding: getPaddingFromTooltipModel(tooltipModel, 'richText'), + verticalAlign: 'top', + align: 'left' + }, + z: tooltipModel.get('z') + }); + each(['backgroundColor', 'borderRadius', 'shadowColor', 'shadowBlur', 'shadowOffsetX', 'shadowOffsetY'], function (propName) { + _this.el.style[propName] = tooltipModel.get(propName); + }); + each(['textShadowBlur', 'textShadowOffsetX', 'textShadowOffsetY'], function (propName) { + _this.el.style[propName] = textStyleModel.get(propName) || 0; + }); + this._zr.add(this.el); + var self = this; + this.el.on('mouseover', function () { + // clear the timeout in hideLater and keep showing tooltip + if (self._enterable) { + clearTimeout(self._hideTimeout); + self._show = true; + } + self._inContent = true; + }); + this.el.on('mouseout', function () { + if (self._enterable) { + if (self._show) { + self.hideLater(self._hideDelay); + } + } + self._inContent = false; + }); + }; + TooltipRichContent.prototype.setEnterable = function (enterable) { + this._enterable = enterable; + }; + TooltipRichContent.prototype.getSize = function () { + var el = this.el; + var bounding = this.el.getBoundingRect(); + // bounding rect does not include shadow. For renderMode richText, + // if overflow, it will be cut. So calculate them accurately. + var shadowOuterSize = calcShadowOuterSize(el.style); + return [bounding.width + shadowOuterSize.left + shadowOuterSize.right, bounding.height + shadowOuterSize.top + shadowOuterSize.bottom]; + }; + TooltipRichContent.prototype.moveTo = function (x, y) { + var el = this.el; + if (el) { + var styleCoord = this._styleCoord; + makeStyleCoord$1(styleCoord, this._zr, x, y); + x = styleCoord[0]; + y = styleCoord[1]; + var style = el.style; + var borderWidth = mathMaxWith0(style.borderWidth || 0); + var shadowOuterSize = calcShadowOuterSize(style); + // rich text x, y do not include border. + el.x = x + borderWidth + shadowOuterSize.left; + el.y = y + borderWidth + shadowOuterSize.top; + el.markRedraw(); + } + }; + /** + * when `alwaysShowContent` is true, + * move the tooltip after chart resized + */ + TooltipRichContent.prototype._moveIfResized = function () { + // The ratio of left to width + var ratioX = this._styleCoord[2]; + // The ratio of top to height + var ratioY = this._styleCoord[3]; + this.moveTo(ratioX * this._zr.getWidth(), ratioY * this._zr.getHeight()); + }; + TooltipRichContent.prototype.hide = function () { + if (this.el) { + this.el.hide(); + } + this._show = false; + }; + TooltipRichContent.prototype.hideLater = function (time) { + if (this._show && !(this._inContent && this._enterable) && !this._alwaysShowContent) { + if (time) { + this._hideDelay = time; + // Set show false to avoid invoke hideLater multiple times + this._show = false; + this._hideTimeout = setTimeout(bind(this.hide, this), time); + } else { + this.hide(); + } + } + }; + TooltipRichContent.prototype.isShow = function () { + return this._show; + }; + TooltipRichContent.prototype.dispose = function () { + this._zr.remove(this.el); + }; + return TooltipRichContent; + }(); + function mathMaxWith0(val) { + return Math.max(0, val); + } + function calcShadowOuterSize(style) { + var shadowBlur = mathMaxWith0(style.shadowBlur || 0); + var shadowOffsetX = mathMaxWith0(style.shadowOffsetX || 0); + var shadowOffsetY = mathMaxWith0(style.shadowOffsetY || 0); + return { + left: mathMaxWith0(shadowBlur - shadowOffsetX), + right: mathMaxWith0(shadowBlur + shadowOffsetX), + top: mathMaxWith0(shadowBlur - shadowOffsetY), + bottom: mathMaxWith0(shadowBlur + shadowOffsetY) + }; + } + function makeStyleCoord$1(out, zr, zrX, zrY) { + out[0] = zrX; + out[1] = zrY; + out[2] = out[0] / zr.getWidth(); + out[3] = out[1] / zr.getHeight(); + } + + var proxyRect = new Rect({ + shape: { + x: -1, + y: -1, + width: 2, + height: 2 + } + }); + var TooltipView = /** @class */function (_super) { + __extends(TooltipView, _super); + function TooltipView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = TooltipView.type; + return _this; + } + TooltipView.prototype.init = function (ecModel, api) { + if (env.node || !api.getDom()) { + return; + } + var tooltipModel = ecModel.getComponent('tooltip'); + var renderMode = this._renderMode = getTooltipRenderMode(tooltipModel.get('renderMode')); + this._tooltipContent = renderMode === 'richText' ? new TooltipRichContent(api) : new TooltipHTMLContent(api, { + appendTo: tooltipModel.get('appendToBody', true) ? 'body' : tooltipModel.get('appendTo', true) + }); + }; + TooltipView.prototype.render = function (tooltipModel, ecModel, api) { + if (env.node || !api.getDom()) { + return; + } + // Reset + this.group.removeAll(); + this._tooltipModel = tooltipModel; + this._ecModel = ecModel; + this._api = api; + var tooltipContent = this._tooltipContent; + tooltipContent.update(tooltipModel); + tooltipContent.setEnterable(tooltipModel.get('enterable')); + this._initGlobalListener(); + this._keepShow(); + // PENDING + // `mousemove` event will be triggered very frequently when the mouse moves fast, + // which causes that the `updatePosition` function was also called frequently. + // In Chrome with devtools open and Firefox, tooltip looks laggy and shakes. See #14695 #16101 + // To avoid frequent triggering, + // consider throttling it in 50ms when transition is enabled + if (this._renderMode !== 'richText' && tooltipModel.get('transitionDuration')) { + createOrUpdate(this, '_updatePosition', 50, 'fixRate'); + } else { + clear(this, '_updatePosition'); + } + }; + TooltipView.prototype._initGlobalListener = function () { + var tooltipModel = this._tooltipModel; + var triggerOn = tooltipModel.get('triggerOn'); + register('itemTooltip', this._api, bind(function (currTrigger, e, dispatchAction) { + // If 'none', it is not controlled by mouse totally. + if (triggerOn !== 'none') { + if (triggerOn.indexOf(currTrigger) >= 0) { + this._tryShow(e, dispatchAction); + } else if (currTrigger === 'leave') { + this._hide(dispatchAction); + } + } + }, this)); + }; + TooltipView.prototype._keepShow = function () { + var tooltipModel = this._tooltipModel; + var ecModel = this._ecModel; + var api = this._api; + var triggerOn = tooltipModel.get('triggerOn'); + // Try to keep the tooltip show when refreshing + if (this._lastX != null && this._lastY != null + // When user is willing to control tooltip totally using API, + // self.manuallyShowTip({x, y}) might cause tooltip hide, + // which is not expected. + && triggerOn !== 'none' && triggerOn !== 'click') { + var self_1 = this; + clearTimeout(this._refreshUpdateTimeout); + this._refreshUpdateTimeout = setTimeout(function () { + // Show tip next tick after other charts are rendered + // In case highlight action has wrong result + // FIXME + !api.isDisposed() && self_1.manuallyShowTip(tooltipModel, ecModel, api, { + x: self_1._lastX, + y: self_1._lastY, + dataByCoordSys: self_1._lastDataByCoordSys + }); + }); + } + }; + /** + * Show tip manually by + * dispatchAction({ + * type: 'showTip', + * x: 10, + * y: 10 + * }); + * Or + * dispatchAction({ + * type: 'showTip', + * seriesIndex: 0, + * dataIndex or dataIndexInside or name + * }); + * + * TODO Batch + */ + TooltipView.prototype.manuallyShowTip = function (tooltipModel, ecModel, api, payload) { + if (payload.from === this.uid || env.node || !api.getDom()) { + return; + } + var dispatchAction = makeDispatchAction$1(payload, api); + // Reset ticket + this._ticket = ''; + // When triggered from axisPointer. + var dataByCoordSys = payload.dataByCoordSys; + var cmptRef = findComponentReference(payload, ecModel, api); + if (cmptRef) { + var rect = cmptRef.el.getBoundingRect().clone(); + rect.applyTransform(cmptRef.el.transform); + this._tryShow({ + offsetX: rect.x + rect.width / 2, + offsetY: rect.y + rect.height / 2, + target: cmptRef.el, + position: payload.position, + // When manully trigger, the mouse is not on the el, so we'd better to + // position tooltip on the bottom of the el and display arrow is possible. + positionDefault: 'bottom' + }, dispatchAction); + } else if (payload.tooltip && payload.x != null && payload.y != null) { + var el = proxyRect; + el.x = payload.x; + el.y = payload.y; + el.update(); + getECData(el).tooltipConfig = { + name: null, + option: payload.tooltip + }; + // Manually show tooltip while view is not using zrender elements. + this._tryShow({ + offsetX: payload.x, + offsetY: payload.y, + target: el + }, dispatchAction); + } else if (dataByCoordSys) { + this._tryShow({ + offsetX: payload.x, + offsetY: payload.y, + position: payload.position, + dataByCoordSys: dataByCoordSys, + tooltipOption: payload.tooltipOption + }, dispatchAction); + } else if (payload.seriesIndex != null) { + if (this._manuallyAxisShowTip(tooltipModel, ecModel, api, payload)) { + return; + } + var pointInfo = findPointFromSeries(payload, ecModel); + var cx = pointInfo.point[0]; + var cy = pointInfo.point[1]; + if (cx != null && cy != null) { + this._tryShow({ + offsetX: cx, + offsetY: cy, + target: pointInfo.el, + position: payload.position, + // When manully trigger, the mouse is not on the el, so we'd better to + // position tooltip on the bottom of the el and display arrow is possible. + positionDefault: 'bottom' + }, dispatchAction); + } + } else if (payload.x != null && payload.y != null) { + // FIXME + // should wrap dispatchAction like `axisPointer/globalListener` ? + api.dispatchAction({ + type: 'updateAxisPointer', + x: payload.x, + y: payload.y + }); + this._tryShow({ + offsetX: payload.x, + offsetY: payload.y, + position: payload.position, + target: api.getZr().findHover(payload.x, payload.y).target + }, dispatchAction); + } + }; + TooltipView.prototype.manuallyHideTip = function (tooltipModel, ecModel, api, payload) { + var tooltipContent = this._tooltipContent; + if (this._tooltipModel) { + tooltipContent.hideLater(this._tooltipModel.get('hideDelay')); + } + this._lastX = this._lastY = this._lastDataByCoordSys = null; + if (payload.from !== this.uid) { + this._hide(makeDispatchAction$1(payload, api)); + } + }; + // Be compatible with previous design, that is, when tooltip.type is 'axis' and + // dispatchAction 'showTip' with seriesIndex and dataIndex will trigger axis pointer + // and tooltip. + TooltipView.prototype._manuallyAxisShowTip = function (tooltipModel, ecModel, api, payload) { + var seriesIndex = payload.seriesIndex; + var dataIndex = payload.dataIndex; + // @ts-ignore + var coordSysAxesInfo = ecModel.getComponent('axisPointer').coordSysAxesInfo; + if (seriesIndex == null || dataIndex == null || coordSysAxesInfo == null) { + return; + } + var seriesModel = ecModel.getSeriesByIndex(seriesIndex); + if (!seriesModel) { + return; + } + var data = seriesModel.getData(); + var tooltipCascadedModel = buildTooltipModel([data.getItemModel(dataIndex), seriesModel, (seriesModel.coordinateSystem || {}).model], this._tooltipModel); + if (tooltipCascadedModel.get('trigger') !== 'axis') { + return; + } + api.dispatchAction({ + type: 'updateAxisPointer', + seriesIndex: seriesIndex, + dataIndex: dataIndex, + position: payload.position + }); + return true; + }; + TooltipView.prototype._tryShow = function (e, dispatchAction) { + var el = e.target; + var tooltipModel = this._tooltipModel; + if (!tooltipModel) { + return; + } + // Save mouse x, mouse y. So we can try to keep showing the tip if chart is refreshed + this._lastX = e.offsetX; + this._lastY = e.offsetY; + var dataByCoordSys = e.dataByCoordSys; + if (dataByCoordSys && dataByCoordSys.length) { + this._showAxisTooltip(dataByCoordSys, e); + } else if (el) { + var ecData = getECData(el); + if (ecData.ssrType === 'legend') { + // Don't trigger tooltip for legend tooltip item + return; + } + this._lastDataByCoordSys = null; + var seriesDispatcher_1; + var cmptDispatcher_1; + findEventDispatcher(el, function (target) { + // Always show item tooltip if mouse is on the element with dataIndex + if (getECData(target).dataIndex != null) { + seriesDispatcher_1 = target; + return true; + } + // Tooltip provided directly. Like legend. + if (getECData(target).tooltipConfig != null) { + cmptDispatcher_1 = target; + return true; + } + }, true); + if (seriesDispatcher_1) { + this._showSeriesItemTooltip(e, seriesDispatcher_1, dispatchAction); + } else if (cmptDispatcher_1) { + this._showComponentItemTooltip(e, cmptDispatcher_1, dispatchAction); + } else { + this._hide(dispatchAction); + } + } else { + this._lastDataByCoordSys = null; + this._hide(dispatchAction); + } + }; + TooltipView.prototype._showOrMove = function (tooltipModel, cb) { + // showDelay is used in this case: tooltip.enterable is set + // as true. User intent to move mouse into tooltip and click + // something. `showDelay` makes it easier to enter the content + // but tooltip do not move immediately. + var delay = tooltipModel.get('showDelay'); + cb = bind(cb, this); + clearTimeout(this._showTimout); + delay > 0 ? this._showTimout = setTimeout(cb, delay) : cb(); + }; + TooltipView.prototype._showAxisTooltip = function (dataByCoordSys, e) { + var ecModel = this._ecModel; + var globalTooltipModel = this._tooltipModel; + var point = [e.offsetX, e.offsetY]; + var singleTooltipModel = buildTooltipModel([e.tooltipOption], globalTooltipModel); + var renderMode = this._renderMode; + var cbParamsList = []; + var articleMarkup = createTooltipMarkup('section', { + blocks: [], + noHeader: true + }); + // Only for legacy: `Serise['formatTooltip']` returns a string. + var markupTextArrLegacy = []; + var markupStyleCreator = new TooltipMarkupStyleCreator(); + each(dataByCoordSys, function (itemCoordSys) { + each(itemCoordSys.dataByAxis, function (axisItem) { + var axisModel = ecModel.getComponent(axisItem.axisDim + 'Axis', axisItem.axisIndex); + var axisValue = axisItem.value; + if (!axisModel || axisValue == null) { + return; + } + var axisValueLabel = getValueLabel(axisValue, axisModel.axis, ecModel, axisItem.seriesDataIndices, axisItem.valueLabelOpt); + var axisSectionMarkup = createTooltipMarkup('section', { + header: axisValueLabel, + noHeader: !trim(axisValueLabel), + sortBlocks: true, + blocks: [] + }); + articleMarkup.blocks.push(axisSectionMarkup); + each(axisItem.seriesDataIndices, function (idxItem) { + var series = ecModel.getSeriesByIndex(idxItem.seriesIndex); + var dataIndex = idxItem.dataIndexInside; + var cbParams = series.getDataParams(dataIndex); + // Can't find data. + if (cbParams.dataIndex < 0) { + return; + } + cbParams.axisDim = axisItem.axisDim; + cbParams.axisIndex = axisItem.axisIndex; + cbParams.axisType = axisItem.axisType; + cbParams.axisId = axisItem.axisId; + cbParams.axisValue = getAxisRawValue(axisModel.axis, { + value: axisValue + }); + cbParams.axisValueLabel = axisValueLabel; + // Pre-create marker style for makers. Users can assemble richText + // text in `formatter` callback and use those markers style. + cbParams.marker = markupStyleCreator.makeTooltipMarker('item', convertToColorString(cbParams.color), renderMode); + var seriesTooltipResult = normalizeTooltipFormatResult(series.formatTooltip(dataIndex, true, null)); + var frag = seriesTooltipResult.frag; + if (frag) { + var valueFormatter = buildTooltipModel([series], globalTooltipModel).get('valueFormatter'); + axisSectionMarkup.blocks.push(valueFormatter ? extend({ + valueFormatter: valueFormatter + }, frag) : frag); + } + if (seriesTooltipResult.text) { + markupTextArrLegacy.push(seriesTooltipResult.text); + } + cbParamsList.push(cbParams); + }); + }); + }); + // In most cases, the second axis is displays upper on the first one. + // So we reverse it to look better. + articleMarkup.blocks.reverse(); + markupTextArrLegacy.reverse(); + var positionExpr = e.position; + var orderMode = singleTooltipModel.get('order'); + var builtMarkupText = buildTooltipMarkup(articleMarkup, markupStyleCreator, renderMode, orderMode, ecModel.get('useUTC'), singleTooltipModel.get('textStyle')); + builtMarkupText && markupTextArrLegacy.unshift(builtMarkupText); + var blockBreak = renderMode === 'richText' ? '\n\n' : '<br/>'; + var allMarkupText = markupTextArrLegacy.join(blockBreak); + this._showOrMove(singleTooltipModel, function () { + if (this._updateContentNotChangedOnAxis(dataByCoordSys, cbParamsList)) { + this._updatePosition(singleTooltipModel, positionExpr, point[0], point[1], this._tooltipContent, cbParamsList); + } else { + this._showTooltipContent(singleTooltipModel, allMarkupText, cbParamsList, Math.random() + '', point[0], point[1], positionExpr, null, markupStyleCreator); + } + }); + // Do not trigger events here, because this branch only be entered + // from dispatchAction. + }; + + TooltipView.prototype._showSeriesItemTooltip = function (e, dispatcher, dispatchAction) { + var ecModel = this._ecModel; + var ecData = getECData(dispatcher); + // Use dataModel in element if possible + // Used when mouseover on a element like markPoint or edge + // In which case, the data is not main data in series. + var seriesIndex = ecData.seriesIndex; + var seriesModel = ecModel.getSeriesByIndex(seriesIndex); + // For example, graph link. + var dataModel = ecData.dataModel || seriesModel; + var dataIndex = ecData.dataIndex; + var dataType = ecData.dataType; + var data = dataModel.getData(dataType); + var renderMode = this._renderMode; + var positionDefault = e.positionDefault; + var tooltipModel = buildTooltipModel([data.getItemModel(dataIndex), dataModel, seriesModel && (seriesModel.coordinateSystem || {}).model], this._tooltipModel, positionDefault ? { + position: positionDefault + } : null); + var tooltipTrigger = tooltipModel.get('trigger'); + if (tooltipTrigger != null && tooltipTrigger !== 'item') { + return; + } + var params = dataModel.getDataParams(dataIndex, dataType); + var markupStyleCreator = new TooltipMarkupStyleCreator(); + // Pre-create marker style for makers. Users can assemble richText + // text in `formatter` callback and use those markers style. + params.marker = markupStyleCreator.makeTooltipMarker('item', convertToColorString(params.color), renderMode); + var seriesTooltipResult = normalizeTooltipFormatResult(dataModel.formatTooltip(dataIndex, false, dataType)); + var orderMode = tooltipModel.get('order'); + var valueFormatter = tooltipModel.get('valueFormatter'); + var frag = seriesTooltipResult.frag; + var markupText = frag ? buildTooltipMarkup(valueFormatter ? extend({ + valueFormatter: valueFormatter + }, frag) : frag, markupStyleCreator, renderMode, orderMode, ecModel.get('useUTC'), tooltipModel.get('textStyle')) : seriesTooltipResult.text; + var asyncTicket = 'item_' + dataModel.name + '_' + dataIndex; + this._showOrMove(tooltipModel, function () { + this._showTooltipContent(tooltipModel, markupText, params, asyncTicket, e.offsetX, e.offsetY, e.position, e.target, markupStyleCreator); + }); + // FIXME + // duplicated showtip if manuallyShowTip is called from dispatchAction. + dispatchAction({ + type: 'showTip', + dataIndexInside: dataIndex, + dataIndex: data.getRawIndex(dataIndex), + seriesIndex: seriesIndex, + from: this.uid + }); + }; + TooltipView.prototype._showComponentItemTooltip = function (e, el, dispatchAction) { + var ecData = getECData(el); + var tooltipConfig = ecData.tooltipConfig; + var tooltipOpt = tooltipConfig.option || {}; + if (isString(tooltipOpt)) { + var content = tooltipOpt; + tooltipOpt = { + content: content, + // Fixed formatter + formatter: content + }; + } + var tooltipModelCascade = [tooltipOpt]; + var cmpt = this._ecModel.getComponent(ecData.componentMainType, ecData.componentIndex); + if (cmpt) { + tooltipModelCascade.push(cmpt); + } + // In most cases, component tooltip formatter has different params with series tooltip formatter, + // so that they cannot share the same formatter. Since the global tooltip formatter is used for series + // by convention, we do not use it as the default formatter for component. + tooltipModelCascade.push({ + formatter: tooltipOpt.content + }); + var positionDefault = e.positionDefault; + var subTooltipModel = buildTooltipModel(tooltipModelCascade, this._tooltipModel, positionDefault ? { + position: positionDefault + } : null); + var defaultHtml = subTooltipModel.get('content'); + var asyncTicket = Math.random() + ''; + // PENDING: this case do not support richText style yet. + var markupStyleCreator = new TooltipMarkupStyleCreator(); + // Do not check whether `trigger` is 'none' here, because `trigger` + // only works on coordinate system. In fact, we have not found case + // that requires setting `trigger` nothing on component yet. + this._showOrMove(subTooltipModel, function () { + // Use formatterParams from element defined in component + // Avoid users modify it. + var formatterParams = clone(subTooltipModel.get('formatterParams') || {}); + this._showTooltipContent(subTooltipModel, defaultHtml, formatterParams, asyncTicket, e.offsetX, e.offsetY, e.position, el, markupStyleCreator); + }); + // If not dispatch showTip, tip may be hide triggered by axis. + dispatchAction({ + type: 'showTip', + from: this.uid + }); + }; + TooltipView.prototype._showTooltipContent = function ( + // Use Model<TooltipOption> insteadof TooltipModel because this model may be from series or other options. + // Instead of top level tooltip. + tooltipModel, defaultHtml, params, asyncTicket, x, y, positionExpr, el, markupStyleCreator) { + // Reset ticket + this._ticket = ''; + if (!tooltipModel.get('showContent') || !tooltipModel.get('show')) { + return; + } + var tooltipContent = this._tooltipContent; + tooltipContent.setEnterable(tooltipModel.get('enterable')); + var formatter = tooltipModel.get('formatter'); + positionExpr = positionExpr || tooltipModel.get('position'); + var html = defaultHtml; + var nearPoint = this._getNearestPoint([x, y], params, tooltipModel.get('trigger'), tooltipModel.get('borderColor')); + var nearPointColor = nearPoint.color; + if (formatter) { + if (isString(formatter)) { + var useUTC = tooltipModel.ecModel.get('useUTC'); + var params0 = isArray(params) ? params[0] : params; + var isTimeAxis = params0 && params0.axisType && params0.axisType.indexOf('time') >= 0; + html = formatter; + if (isTimeAxis) { + html = format(params0.axisValue, html, useUTC); + } + html = formatTpl(html, params, true); + } else if (isFunction(formatter)) { + var callback = bind(function (cbTicket, html) { + if (cbTicket === this._ticket) { + tooltipContent.setContent(html, markupStyleCreator, tooltipModel, nearPointColor, positionExpr); + this._updatePosition(tooltipModel, positionExpr, x, y, tooltipContent, params, el); + } + }, this); + this._ticket = asyncTicket; + html = formatter(params, asyncTicket, callback); + } else { + html = formatter; + } + } + tooltipContent.setContent(html, markupStyleCreator, tooltipModel, nearPointColor, positionExpr); + tooltipContent.show(tooltipModel, nearPointColor); + this._updatePosition(tooltipModel, positionExpr, x, y, tooltipContent, params, el); + }; + TooltipView.prototype._getNearestPoint = function (point, tooltipDataParams, trigger, borderColor) { + if (trigger === 'axis' || isArray(tooltipDataParams)) { + return { + color: borderColor || (this._renderMode === 'html' ? '#fff' : 'none') + }; + } + if (!isArray(tooltipDataParams)) { + return { + color: borderColor || tooltipDataParams.color || tooltipDataParams.borderColor + }; + } + }; + TooltipView.prototype._updatePosition = function (tooltipModel, positionExpr, x, + // Mouse x + y, + // Mouse y + content, params, el) { + var viewWidth = this._api.getWidth(); + var viewHeight = this._api.getHeight(); + positionExpr = positionExpr || tooltipModel.get('position'); + var contentSize = content.getSize(); + var align = tooltipModel.get('align'); + var vAlign = tooltipModel.get('verticalAlign'); + var rect = el && el.getBoundingRect().clone(); + el && rect.applyTransform(el.transform); + if (isFunction(positionExpr)) { + // Callback of position can be an array or a string specify the position + positionExpr = positionExpr([x, y], params, content.el, rect, { + viewSize: [viewWidth, viewHeight], + contentSize: contentSize.slice() + }); + } + if (isArray(positionExpr)) { + x = parsePercent$1(positionExpr[0], viewWidth); + y = parsePercent$1(positionExpr[1], viewHeight); + } else if (isObject(positionExpr)) { + var boxLayoutPosition = positionExpr; + boxLayoutPosition.width = contentSize[0]; + boxLayoutPosition.height = contentSize[1]; + var layoutRect = getLayoutRect(boxLayoutPosition, { + width: viewWidth, + height: viewHeight + }); + x = layoutRect.x; + y = layoutRect.y; + align = null; + // When positionExpr is left/top/right/bottom, + // align and verticalAlign will not work. + vAlign = null; + } + // Specify tooltip position by string 'top' 'bottom' 'left' 'right' around graphic element + else if (isString(positionExpr) && el) { + var pos = calcTooltipPosition(positionExpr, rect, contentSize, tooltipModel.get('borderWidth')); + x = pos[0]; + y = pos[1]; + } else { + var pos = refixTooltipPosition(x, y, content, viewWidth, viewHeight, align ? null : 20, vAlign ? null : 20); + x = pos[0]; + y = pos[1]; + } + align && (x -= isCenterAlign(align) ? contentSize[0] / 2 : align === 'right' ? contentSize[0] : 0); + vAlign && (y -= isCenterAlign(vAlign) ? contentSize[1] / 2 : vAlign === 'bottom' ? contentSize[1] : 0); + if (shouldTooltipConfine(tooltipModel)) { + var pos = confineTooltipPosition(x, y, content, viewWidth, viewHeight); + x = pos[0]; + y = pos[1]; + } + content.moveTo(x, y); + }; + // FIXME + // Should we remove this but leave this to user? + TooltipView.prototype._updateContentNotChangedOnAxis = function (dataByCoordSys, cbParamsList) { + var lastCoordSys = this._lastDataByCoordSys; + var lastCbParamsList = this._cbParamsList; + var contentNotChanged = !!lastCoordSys && lastCoordSys.length === dataByCoordSys.length; + contentNotChanged && each(lastCoordSys, function (lastItemCoordSys, indexCoordSys) { + var lastDataByAxis = lastItemCoordSys.dataByAxis || []; + var thisItemCoordSys = dataByCoordSys[indexCoordSys] || {}; + var thisDataByAxis = thisItemCoordSys.dataByAxis || []; + contentNotChanged = contentNotChanged && lastDataByAxis.length === thisDataByAxis.length; + contentNotChanged && each(lastDataByAxis, function (lastItem, indexAxis) { + var thisItem = thisDataByAxis[indexAxis] || {}; + var lastIndices = lastItem.seriesDataIndices || []; + var newIndices = thisItem.seriesDataIndices || []; + contentNotChanged = contentNotChanged && lastItem.value === thisItem.value && lastItem.axisType === thisItem.axisType && lastItem.axisId === thisItem.axisId && lastIndices.length === newIndices.length; + contentNotChanged && each(lastIndices, function (lastIdxItem, j) { + var newIdxItem = newIndices[j]; + contentNotChanged = contentNotChanged && lastIdxItem.seriesIndex === newIdxItem.seriesIndex && lastIdxItem.dataIndex === newIdxItem.dataIndex; + }); + // check is cbParams data value changed + lastCbParamsList && each(lastItem.seriesDataIndices, function (idxItem) { + var seriesIdx = idxItem.seriesIndex; + var cbParams = cbParamsList[seriesIdx]; + var lastCbParams = lastCbParamsList[seriesIdx]; + if (cbParams && lastCbParams && lastCbParams.data !== cbParams.data) { + contentNotChanged = false; + } + }); + }); + }); + this._lastDataByCoordSys = dataByCoordSys; + this._cbParamsList = cbParamsList; + return !!contentNotChanged; + }; + TooltipView.prototype._hide = function (dispatchAction) { + // Do not directly hideLater here, because this behavior may be prevented + // in dispatchAction when showTip is dispatched. + // FIXME + // duplicated hideTip if manuallyHideTip is called from dispatchAction. + this._lastDataByCoordSys = null; + dispatchAction({ + type: 'hideTip', + from: this.uid + }); + }; + TooltipView.prototype.dispose = function (ecModel, api) { + if (env.node || !api.getDom()) { + return; + } + clear(this, '_updatePosition'); + this._tooltipContent.dispose(); + unregister('itemTooltip', api); + }; + TooltipView.type = 'tooltip'; + return TooltipView; + }(ComponentView); + /** + * From top to bottom. (the last one should be globalTooltipModel); + */ + function buildTooltipModel(modelCascade, globalTooltipModel, defaultTooltipOption) { + // Last is always tooltip model. + var ecModel = globalTooltipModel.ecModel; + var resultModel; + if (defaultTooltipOption) { + resultModel = new Model(defaultTooltipOption, ecModel, ecModel); + resultModel = new Model(globalTooltipModel.option, resultModel, ecModel); + } else { + resultModel = globalTooltipModel; + } + for (var i = modelCascade.length - 1; i >= 0; i--) { + var tooltipOpt = modelCascade[i]; + if (tooltipOpt) { + if (tooltipOpt instanceof Model) { + tooltipOpt = tooltipOpt.get('tooltip', true); + } + // In each data item tooltip can be simply write: + // { + // value: 10, + // tooltip: 'Something you need to know' + // } + if (isString(tooltipOpt)) { + tooltipOpt = { + formatter: tooltipOpt + }; + } + if (tooltipOpt) { + resultModel = new Model(tooltipOpt, resultModel, ecModel); + } + } + } + return resultModel; + } + function makeDispatchAction$1(payload, api) { + return payload.dispatchAction || bind(api.dispatchAction, api); + } + function refixTooltipPosition(x, y, content, viewWidth, viewHeight, gapH, gapV) { + var size = content.getSize(); + var width = size[0]; + var height = size[1]; + if (gapH != null) { + // Add extra 2 pixels for this case: + // At present the "values" in default tooltip are using CSS `float: right`. + // When the right edge of the tooltip box is on the right side of the + // viewport, the `float` layout might push the "values" to the second line. + if (x + width + gapH + 2 > viewWidth) { + x -= width + gapH; + } else { + x += gapH; + } + } + if (gapV != null) { + if (y + height + gapV > viewHeight) { + y -= height + gapV; + } else { + y += gapV; + } + } + return [x, y]; + } + function confineTooltipPosition(x, y, content, viewWidth, viewHeight) { + var size = content.getSize(); + var width = size[0]; + var height = size[1]; + x = Math.min(x + width, viewWidth) - width; + y = Math.min(y + height, viewHeight) - height; + x = Math.max(x, 0); + y = Math.max(y, 0); + return [x, y]; + } + function calcTooltipPosition(position, rect, contentSize, borderWidth) { + var domWidth = contentSize[0]; + var domHeight = contentSize[1]; + var offset = Math.ceil(Math.SQRT2 * borderWidth) + 8; + var x = 0; + var y = 0; + var rectWidth = rect.width; + var rectHeight = rect.height; + switch (position) { + case 'inside': + x = rect.x + rectWidth / 2 - domWidth / 2; + y = rect.y + rectHeight / 2 - domHeight / 2; + break; + case 'top': + x = rect.x + rectWidth / 2 - domWidth / 2; + y = rect.y - domHeight - offset; + break; + case 'bottom': + x = rect.x + rectWidth / 2 - domWidth / 2; + y = rect.y + rectHeight + offset; + break; + case 'left': + x = rect.x - domWidth - offset; + y = rect.y + rectHeight / 2 - domHeight / 2; + break; + case 'right': + x = rect.x + rectWidth + offset; + y = rect.y + rectHeight / 2 - domHeight / 2; + } + return [x, y]; + } + function isCenterAlign(align) { + return align === 'center' || align === 'middle'; + } + /** + * Find target component by payload like: + * ```js + * { legendId: 'some_id', name: 'xxx' } + * { toolboxIndex: 1, name: 'xxx' } + * { geoName: 'some_name', name: 'xxx' } + * ``` + * PENDING: at present only + * + * If not found, return null/undefined. + */ + function findComponentReference(payload, ecModel, api) { + var queryOptionMap = preParseFinder(payload).queryOptionMap; + var componentMainType = queryOptionMap.keys()[0]; + if (!componentMainType || componentMainType === 'series') { + return; + } + var queryResult = queryReferringComponents(ecModel, componentMainType, queryOptionMap.get(componentMainType), { + useDefault: false, + enableAll: false, + enableNone: false + }); + var model = queryResult.models[0]; + if (!model) { + return; + } + var view = api.getViewOfComponentModel(model); + var el; + view.group.traverse(function (subEl) { + var tooltipConfig = getECData(subEl).tooltipConfig; + if (tooltipConfig && tooltipConfig.name === payload.name) { + el = subEl; + return true; // stop + } + }); + + if (el) { + return { + componentMainType: componentMainType, + componentIndex: model.componentIndex, + el: el + }; + } + } + + function install$A(registers) { + use(install$s); + registers.registerComponentModel(TooltipModel); + registers.registerComponentView(TooltipView); + /** + * @action + * @property {string} type + * @property {number} seriesIndex + * @property {number} dataIndex + * @property {number} [x] + * @property {number} [y] + */ + registers.registerAction({ + type: 'showTip', + event: 'showTip', + update: 'tooltip:manuallyShowTip' + }, noop); + registers.registerAction({ + type: 'hideTip', + event: 'hideTip', + update: 'tooltip:manuallyHideTip' + }, noop); + } + + var DEFAULT_TOOLBOX_BTNS = ['rect', 'polygon', 'keep', 'clear']; + function brushPreprocessor(option, isNew) { + var brushComponents = normalizeToArray(option ? option.brush : []); + if (!brushComponents.length) { + return; + } + var brushComponentSpecifiedBtns = []; + each(brushComponents, function (brushOpt) { + var tbs = brushOpt.hasOwnProperty('toolbox') ? brushOpt.toolbox : []; + if (tbs instanceof Array) { + brushComponentSpecifiedBtns = brushComponentSpecifiedBtns.concat(tbs); + } + }); + var toolbox = option && option.toolbox; + if (isArray(toolbox)) { + toolbox = toolbox[0]; + } + if (!toolbox) { + toolbox = { + feature: {} + }; + option.toolbox = [toolbox]; + } + var toolboxFeature = toolbox.feature || (toolbox.feature = {}); + var toolboxBrush = toolboxFeature.brush || (toolboxFeature.brush = {}); + var brushTypes = toolboxBrush.type || (toolboxBrush.type = []); + brushTypes.push.apply(brushTypes, brushComponentSpecifiedBtns); + removeDuplicate(brushTypes); + if (isNew && !brushTypes.length) { + brushTypes.push.apply(brushTypes, DEFAULT_TOOLBOX_BTNS); + } + } + function removeDuplicate(arr) { + var map = {}; + each(arr, function (val) { + map[val] = 1; + }); + arr.length = 0; + each(map, function (flag, val) { + arr.push(val); + }); + } + + var each$b = each; + function hasKeys(obj) { + if (obj) { + for (var name_1 in obj) { + if (obj.hasOwnProperty(name_1)) { + return true; + } + } + } + } + function createVisualMappings(option, stateList, supplementVisualOption) { + var visualMappings = {}; + each$b(stateList, function (state) { + var mappings = visualMappings[state] = createMappings(); + each$b(option[state], function (visualData, visualType) { + if (!VisualMapping.isValidType(visualType)) { + return; + } + var mappingOption = { + type: visualType, + visual: visualData + }; + supplementVisualOption && supplementVisualOption(mappingOption, state); + mappings[visualType] = new VisualMapping(mappingOption); + // Prepare a alpha for opacity, for some case that opacity + // is not supported, such as rendering using gradient color. + if (visualType === 'opacity') { + mappingOption = clone(mappingOption); + mappingOption.type = 'colorAlpha'; + mappings.__hidden.__alphaForOpacity = new VisualMapping(mappingOption); + } + }); + }); + return visualMappings; + function createMappings() { + var Creater = function () {}; + // Make sure hidden fields will not be visited by + // object iteration (with hasOwnProperty checking). + Creater.prototype.__hidden = Creater.prototype; + var obj = new Creater(); + return obj; + } + } + function replaceVisualOption(thisOption, newOption, keys) { + // Visual attributes merge is not supported, otherwise it + // brings overcomplicated merge logic. See #2853. So if + // newOption has anyone of these keys, all of these keys + // will be reset. Otherwise, all keys remain. + var has; + each(keys, function (key) { + if (newOption.hasOwnProperty(key) && hasKeys(newOption[key])) { + has = true; + } + }); + has && each(keys, function (key) { + if (newOption.hasOwnProperty(key) && hasKeys(newOption[key])) { + thisOption[key] = clone(newOption[key]); + } else { + delete thisOption[key]; + } + }); + } + /** + * @param stateList + * @param visualMappings + * @param list + * @param getValueState param: valueOrIndex, return: state. + * @param scope Scope for getValueState + * @param dimension Concrete dimension, if used. + */ + // ???! handle brush? + function applyVisual(stateList, visualMappings, data, getValueState, scope, dimension) { + var visualTypesMap = {}; + each(stateList, function (state) { + var visualTypes = VisualMapping.prepareVisualTypes(visualMappings[state]); + visualTypesMap[state] = visualTypes; + }); + var dataIndex; + function getVisual(key) { + return getItemVisualFromData(data, dataIndex, key); + } + function setVisual(key, value) { + setItemVisualFromData(data, dataIndex, key, value); + } + if (dimension == null) { + data.each(eachItem); + } else { + data.each([dimension], eachItem); + } + function eachItem(valueOrIndex, index) { + dataIndex = dimension == null ? valueOrIndex // First argument is index + : index; + var rawDataItem = data.getRawDataItem(dataIndex); + // Consider performance + // @ts-ignore + if (rawDataItem && rawDataItem.visualMap === false) { + return; + } + var valueState = getValueState.call(scope, valueOrIndex); + var mappings = visualMappings[valueState]; + var visualTypes = visualTypesMap[valueState]; + for (var i = 0, len = visualTypes.length; i < len; i++) { + var type = visualTypes[i]; + mappings[type] && mappings[type].applyVisual(valueOrIndex, getVisual, setVisual); + } + } + } + /** + * @param data + * @param stateList + * @param visualMappings <state, Object.<visualType, module:echarts/visual/VisualMapping>> + * @param getValueState param: valueOrIndex, return: state. + * @param dim dimension or dimension index. + */ + function incrementalApplyVisual(stateList, visualMappings, getValueState, dim) { + var visualTypesMap = {}; + each(stateList, function (state) { + var visualTypes = VisualMapping.prepareVisualTypes(visualMappings[state]); + visualTypesMap[state] = visualTypes; + }); + return { + progress: function progress(params, data) { + var dimIndex; + if (dim != null) { + dimIndex = data.getDimensionIndex(dim); + } + function getVisual(key) { + return getItemVisualFromData(data, dataIndex, key); + } + function setVisual(key, value) { + setItemVisualFromData(data, dataIndex, key, value); + } + var dataIndex; + var store = data.getStore(); + while ((dataIndex = params.next()) != null) { + var rawDataItem = data.getRawDataItem(dataIndex); + // Consider performance + // @ts-ignore + if (rawDataItem && rawDataItem.visualMap === false) { + continue; + } + var value = dim != null ? store.get(dimIndex, dataIndex) : dataIndex; + var valueState = getValueState(value); + var mappings = visualMappings[valueState]; + var visualTypes = visualTypesMap[valueState]; + for (var i = 0, len = visualTypes.length; i < len; i++) { + var type = visualTypes[i]; + mappings[type] && mappings[type].applyVisual(value, getVisual, setVisual); + } + } + } + }; + } + + function makeBrushCommonSelectorForSeries(area) { + var brushType = area.brushType; + // Do not use function binding or curry for performance. + var selectors = { + point: function (itemLayout) { + return selector[brushType].point(itemLayout, selectors, area); + }, + rect: function (itemLayout) { + return selector[brushType].rect(itemLayout, selectors, area); + } + }; + return selectors; + } + var selector = { + lineX: getLineSelectors(0), + lineY: getLineSelectors(1), + rect: { + point: function (itemLayout, selectors, area) { + return itemLayout && area.boundingRect.contain(itemLayout[0], itemLayout[1]); + }, + rect: function (itemLayout, selectors, area) { + return itemLayout && area.boundingRect.intersect(itemLayout); + } + }, + polygon: { + point: function (itemLayout, selectors, area) { + return itemLayout && area.boundingRect.contain(itemLayout[0], itemLayout[1]) && contain$2(area.range, itemLayout[0], itemLayout[1]); + }, + rect: function (itemLayout, selectors, area) { + var points = area.range; + if (!itemLayout || points.length <= 1) { + return false; + } + var x = itemLayout.x; + var y = itemLayout.y; + var width = itemLayout.width; + var height = itemLayout.height; + var p = points[0]; + if (contain$2(points, x, y) || contain$2(points, x + width, y) || contain$2(points, x, y + height) || contain$2(points, x + width, y + height) || BoundingRect.create(itemLayout).contain(p[0], p[1]) || linePolygonIntersect(x, y, x + width, y, points) || linePolygonIntersect(x, y, x, y + height, points) || linePolygonIntersect(x + width, y, x + width, y + height, points) || linePolygonIntersect(x, y + height, x + width, y + height, points)) { + return true; + } + } + } + }; + function getLineSelectors(xyIndex) { + var xy = ['x', 'y']; + var wh = ['width', 'height']; + return { + point: function (itemLayout, selectors, area) { + if (itemLayout) { + var range = area.range; + var p = itemLayout[xyIndex]; + return inLineRange(p, range); + } + }, + rect: function (itemLayout, selectors, area) { + if (itemLayout) { + var range = area.range; + var layoutRange = [itemLayout[xy[xyIndex]], itemLayout[xy[xyIndex]] + itemLayout[wh[xyIndex]]]; + layoutRange[1] < layoutRange[0] && layoutRange.reverse(); + return inLineRange(layoutRange[0], range) || inLineRange(layoutRange[1], range) || inLineRange(range[0], layoutRange) || inLineRange(range[1], layoutRange); + } + } + }; + } + function inLineRange(p, range) { + return range[0] <= p && p <= range[1]; + } + + var STATE_LIST = ['inBrush', 'outOfBrush']; + var DISPATCH_METHOD = '__ecBrushSelect'; + var DISPATCH_FLAG = '__ecInBrushSelectEvent'; + function layoutCovers(ecModel) { + ecModel.eachComponent({ + mainType: 'brush' + }, function (brushModel) { + var brushTargetManager = brushModel.brushTargetManager = new BrushTargetManager(brushModel.option, ecModel); + brushTargetManager.setInputRanges(brushModel.areas, ecModel); + }); + } + /** + * Register the visual encoding if this modules required. + */ + function brushVisual(ecModel, api, payload) { + var brushSelected = []; + var throttleType; + var throttleDelay; + ecModel.eachComponent({ + mainType: 'brush' + }, function (brushModel) { + payload && payload.type === 'takeGlobalCursor' && brushModel.setBrushOption(payload.key === 'brush' ? payload.brushOption : { + brushType: false + }); + }); + layoutCovers(ecModel); + ecModel.eachComponent({ + mainType: 'brush' + }, function (brushModel, brushIndex) { + var thisBrushSelected = { + brushId: brushModel.id, + brushIndex: brushIndex, + brushName: brushModel.name, + areas: clone(brushModel.areas), + selected: [] + }; + // Every brush component exists in event params, convenient + // for user to find by index. + brushSelected.push(thisBrushSelected); + var brushOption = brushModel.option; + var brushLink = brushOption.brushLink; + var linkedSeriesMap = []; + var selectedDataIndexForLink = []; + var rangeInfoBySeries = []; + var hasBrushExists = false; + if (!brushIndex) { + // Only the first throttle setting works. + throttleType = brushOption.throttleType; + throttleDelay = brushOption.throttleDelay; + } + // Add boundingRect and selectors to range. + var areas = map(brushModel.areas, function (area) { + var builder = boundingRectBuilders[area.brushType]; + var selectableArea = defaults({ + boundingRect: builder ? builder(area) : void 0 + }, area); + selectableArea.selectors = makeBrushCommonSelectorForSeries(selectableArea); + return selectableArea; + }); + var visualMappings = createVisualMappings(brushModel.option, STATE_LIST, function (mappingOption) { + mappingOption.mappingMethod = 'fixed'; + }); + isArray(brushLink) && each(brushLink, function (seriesIndex) { + linkedSeriesMap[seriesIndex] = 1; + }); + function linkOthers(seriesIndex) { + return brushLink === 'all' || !!linkedSeriesMap[seriesIndex]; + } + // If no supported brush or no brush on the series, + // all visuals should be in original state. + function brushed(rangeInfoList) { + return !!rangeInfoList.length; + } + /** + * Logic for each series: (If the logic has to be modified one day, do it carefully!) + * + * ( brushed ┬ && ┬hasBrushExist ┬ && linkOthers ) => StepA: ┬record, ┬ StepB: ┬visualByRecord. + * !brushed┘ ├hasBrushExist ┤ └nothing,┘ ├visualByRecord. + * └!hasBrushExist┘ └nothing. + * ( !brushed && ┬hasBrushExist ┬ && linkOthers ) => StepA: nothing, StepB: ┬visualByRecord. + * └!hasBrushExist┘ └nothing. + * ( brushed ┬ && !linkOthers ) => StepA: nothing, StepB: ┬visualByCheck. + * !brushed┘ └nothing. + * ( !brushed && !linkOthers ) => StepA: nothing, StepB: nothing. + */ + // Step A + ecModel.eachSeries(function (seriesModel, seriesIndex) { + var rangeInfoList = rangeInfoBySeries[seriesIndex] = []; + seriesModel.subType === 'parallel' ? stepAParallel(seriesModel, seriesIndex) : stepAOthers(seriesModel, seriesIndex, rangeInfoList); + }); + function stepAParallel(seriesModel, seriesIndex) { + var coordSys = seriesModel.coordinateSystem; + hasBrushExists = hasBrushExists || coordSys.hasAxisBrushed(); + linkOthers(seriesIndex) && coordSys.eachActiveState(seriesModel.getData(), function (activeState, dataIndex) { + activeState === 'active' && (selectedDataIndexForLink[dataIndex] = 1); + }); + } + function stepAOthers(seriesModel, seriesIndex, rangeInfoList) { + if (!seriesModel.brushSelector || brushModelNotControll(brushModel, seriesIndex)) { + return; + } + each(areas, function (area) { + if (brushModel.brushTargetManager.controlSeries(area, seriesModel, ecModel)) { + rangeInfoList.push(area); + } + hasBrushExists = hasBrushExists || brushed(rangeInfoList); + }); + if (linkOthers(seriesIndex) && brushed(rangeInfoList)) { + var data_1 = seriesModel.getData(); + data_1.each(function (dataIndex) { + if (checkInRange(seriesModel, rangeInfoList, data_1, dataIndex)) { + selectedDataIndexForLink[dataIndex] = 1; + } + }); + } + } + // Step B + ecModel.eachSeries(function (seriesModel, seriesIndex) { + var seriesBrushSelected = { + seriesId: seriesModel.id, + seriesIndex: seriesIndex, + seriesName: seriesModel.name, + dataIndex: [] + }; + // Every series exists in event params, convenient + // for user to find series by seriesIndex. + thisBrushSelected.selected.push(seriesBrushSelected); + var rangeInfoList = rangeInfoBySeries[seriesIndex]; + var data = seriesModel.getData(); + var getValueState = linkOthers(seriesIndex) ? function (dataIndex) { + return selectedDataIndexForLink[dataIndex] ? (seriesBrushSelected.dataIndex.push(data.getRawIndex(dataIndex)), 'inBrush') : 'outOfBrush'; + } : function (dataIndex) { + return checkInRange(seriesModel, rangeInfoList, data, dataIndex) ? (seriesBrushSelected.dataIndex.push(data.getRawIndex(dataIndex)), 'inBrush') : 'outOfBrush'; + }; + // If no supported brush or no brush, all visuals are in original state. + (linkOthers(seriesIndex) ? hasBrushExists : brushed(rangeInfoList)) && applyVisual(STATE_LIST, visualMappings, data, getValueState); + }); + }); + dispatchAction(api, throttleType, throttleDelay, brushSelected, payload); + } + function dispatchAction(api, throttleType, throttleDelay, brushSelected, payload) { + // This event will not be triggered when `setOpion`, otherwise dead lock may + // triggered when do `setOption` in event listener, which we do not find + // satisfactory way to solve yet. Some considered resolutions: + // (a) Diff with prevoius selected data ant only trigger event when changed. + // But store previous data and diff precisely (i.e., not only by dataIndex, but + // also detect value changes in selected data) might bring complexity or fragility. + // (b) Use spectial param like `silent` to suppress event triggering. + // But such kind of volatile param may be weird in `setOption`. + if (!payload) { + return; + } + var zr = api.getZr(); + if (zr[DISPATCH_FLAG]) { + return; + } + if (!zr[DISPATCH_METHOD]) { + zr[DISPATCH_METHOD] = doDispatch; + } + var fn = createOrUpdate(zr, DISPATCH_METHOD, throttleDelay, throttleType); + fn(api, brushSelected); + } + function doDispatch(api, brushSelected) { + if (!api.isDisposed()) { + var zr = api.getZr(); + zr[DISPATCH_FLAG] = true; + api.dispatchAction({ + type: 'brushSelect', + batch: brushSelected + }); + zr[DISPATCH_FLAG] = false; + } + } + function checkInRange(seriesModel, rangeInfoList, data, dataIndex) { + for (var i = 0, len = rangeInfoList.length; i < len; i++) { + var area = rangeInfoList[i]; + if (seriesModel.brushSelector(dataIndex, data, area.selectors, area)) { + return true; + } + } + } + function brushModelNotControll(brushModel, seriesIndex) { + var seriesIndices = brushModel.option.seriesIndex; + return seriesIndices != null && seriesIndices !== 'all' && (isArray(seriesIndices) ? indexOf(seriesIndices, seriesIndex) < 0 : seriesIndex !== seriesIndices); + } + var boundingRectBuilders = { + rect: function (area) { + return getBoundingRectFromMinMax(area.range); + }, + polygon: function (area) { + var minMax; + var range = area.range; + for (var i = 0, len = range.length; i < len; i++) { + minMax = minMax || [[Infinity, -Infinity], [Infinity, -Infinity]]; + var rg = range[i]; + rg[0] < minMax[0][0] && (minMax[0][0] = rg[0]); + rg[0] > minMax[0][1] && (minMax[0][1] = rg[0]); + rg[1] < minMax[1][0] && (minMax[1][0] = rg[1]); + rg[1] > minMax[1][1] && (minMax[1][1] = rg[1]); + } + return minMax && getBoundingRectFromMinMax(minMax); + } + }; + function getBoundingRectFromMinMax(minMax) { + return new BoundingRect(minMax[0][0], minMax[1][0], minMax[0][1] - minMax[0][0], minMax[1][1] - minMax[1][0]); + } + + var BrushView = /** @class */function (_super) { + __extends(BrushView, _super); + function BrushView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = BrushView.type; + return _this; + } + BrushView.prototype.init = function (ecModel, api) { + this.ecModel = ecModel; + this.api = api; + this.model; + (this._brushController = new BrushController(api.getZr())).on('brush', bind(this._onBrush, this)).mount(); + }; + BrushView.prototype.render = function (brushModel, ecModel, api, payload) { + this.model = brushModel; + this._updateController(brushModel, ecModel, api, payload); + }; + BrushView.prototype.updateTransform = function (brushModel, ecModel, api, payload) { + // PENDING: `updateTransform` is a little tricky, whose layout need + // to be calculate mandatorily and other stages will not be performed. + // Take care the correctness of the logic. See #11754 . + layoutCovers(ecModel); + this._updateController(brushModel, ecModel, api, payload); + }; + BrushView.prototype.updateVisual = function (brushModel, ecModel, api, payload) { + this.updateTransform(brushModel, ecModel, api, payload); + }; + BrushView.prototype.updateView = function (brushModel, ecModel, api, payload) { + this._updateController(brushModel, ecModel, api, payload); + }; + BrushView.prototype._updateController = function (brushModel, ecModel, api, payload) { + // Do not update controller when drawing. + (!payload || payload.$from !== brushModel.id) && this._brushController.setPanels(brushModel.brushTargetManager.makePanelOpts(api)).enableBrush(brushModel.brushOption).updateCovers(brushModel.areas.slice()); + }; + // updateLayout: updateController, + // updateVisual: updateController, + BrushView.prototype.dispose = function () { + this._brushController.dispose(); + }; + BrushView.prototype._onBrush = function (eventParam) { + var modelId = this.model.id; + var areas = this.model.brushTargetManager.setOutputRanges(eventParam.areas, this.ecModel); + // Action is not dispatched on drag end, because the drag end + // emits the same params with the last drag move event, and + // may have some delay when using touch pad, which makes + // animation not smooth (when using debounce). + (!eventParam.isEnd || eventParam.removeOnClick) && this.api.dispatchAction({ + type: 'brush', + brushId: modelId, + areas: clone(areas), + $from: modelId + }); + eventParam.isEnd && this.api.dispatchAction({ + type: 'brushEnd', + brushId: modelId, + areas: clone(areas), + $from: modelId + }); + }; + BrushView.type = 'brush'; + return BrushView; + }(ComponentView); + + var DEFAULT_OUT_OF_BRUSH_COLOR = '#ddd'; + var BrushModel = /** @class */function (_super) { + __extends(BrushModel, _super); + function BrushModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = BrushModel.type; + /** + * @readOnly + */ + _this.areas = []; + /** + * Current brush painting area settings. + * @readOnly + */ + _this.brushOption = {}; + return _this; + } + BrushModel.prototype.optionUpdated = function (newOption, isInit) { + var thisOption = this.option; + !isInit && replaceVisualOption(thisOption, newOption, ['inBrush', 'outOfBrush']); + var inBrush = thisOption.inBrush = thisOption.inBrush || {}; + // Always give default visual, consider setOption at the second time. + thisOption.outOfBrush = thisOption.outOfBrush || { + color: DEFAULT_OUT_OF_BRUSH_COLOR + }; + if (!inBrush.hasOwnProperty('liftZ')) { + // Bigger than the highlight z lift, otherwise it will + // be effected by the highlight z when brush. + inBrush.liftZ = 5; + } + }; + /** + * If `areas` is null/undefined, range state remain. + */ + BrushModel.prototype.setAreas = function (areas) { + if ("development" !== 'production') { + assert(isArray(areas)); + each(areas, function (area) { + assert(area.brushType, 'Illegal areas'); + }); + } + // If areas is null/undefined, range state remain. + // This helps user to dispatchAction({type: 'brush'}) with no areas + // set but just want to get the current brush select info from a `brush` event. + if (!areas) { + return; + } + this.areas = map(areas, function (area) { + return generateBrushOption(this.option, area); + }, this); + }; + /** + * Set the current painting brush option. + */ + BrushModel.prototype.setBrushOption = function (brushOption) { + this.brushOption = generateBrushOption(this.option, brushOption); + this.brushType = this.brushOption.brushType; + }; + BrushModel.type = 'brush'; + BrushModel.dependencies = ['geo', 'grid', 'xAxis', 'yAxis', 'parallel', 'series']; + BrushModel.defaultOption = { + seriesIndex: 'all', + brushType: 'rect', + brushMode: 'single', + transformable: true, + brushStyle: { + borderWidth: 1, + color: 'rgba(210,219,238,0.3)', + borderColor: '#D2DBEE' + }, + throttleType: 'fixRate', + throttleDelay: 0, + removeOnClick: true, + z: 10000 + }; + return BrushModel; + }(ComponentModel); + function generateBrushOption(option, brushOption) { + return merge({ + brushType: option.brushType, + brushMode: option.brushMode, + transformable: option.transformable, + brushStyle: new Model(option.brushStyle).getItemStyle(), + removeOnClick: option.removeOnClick, + z: option.z + }, brushOption, true); + } + + var ICON_TYPES = ['rect', 'polygon', 'lineX', 'lineY', 'keep', 'clear']; + var BrushFeature = /** @class */function (_super) { + __extends(BrushFeature, _super); + function BrushFeature() { + return _super !== null && _super.apply(this, arguments) || this; + } + BrushFeature.prototype.render = function (featureModel, ecModel, api) { + var brushType; + var brushMode; + var isBrushed; + ecModel.eachComponent({ + mainType: 'brush' + }, function (brushModel) { + brushType = brushModel.brushType; + brushMode = brushModel.brushOption.brushMode || 'single'; + isBrushed = isBrushed || !!brushModel.areas.length; + }); + this._brushType = brushType; + this._brushMode = brushMode; + each(featureModel.get('type', true), function (type) { + featureModel.setIconStatus(type, (type === 'keep' ? brushMode === 'multiple' : type === 'clear' ? isBrushed : type === brushType) ? 'emphasis' : 'normal'); + }); + }; + BrushFeature.prototype.updateView = function (featureModel, ecModel, api) { + this.render(featureModel, ecModel, api); + }; + BrushFeature.prototype.getIcons = function () { + var model = this.model; + var availableIcons = model.get('icon', true); + var icons = {}; + each(model.get('type', true), function (type) { + if (availableIcons[type]) { + icons[type] = availableIcons[type]; + } + }); + return icons; + }; + BrushFeature.prototype.onclick = function (ecModel, api, type) { + var brushType = this._brushType; + var brushMode = this._brushMode; + if (type === 'clear') { + // Trigger parallel action firstly + api.dispatchAction({ + type: 'axisAreaSelect', + intervals: [] + }); + api.dispatchAction({ + type: 'brush', + command: 'clear', + // Clear all areas of all brush components. + areas: [] + }); + } else { + api.dispatchAction({ + type: 'takeGlobalCursor', + key: 'brush', + brushOption: { + brushType: type === 'keep' ? brushType : brushType === type ? false : type, + brushMode: type === 'keep' ? brushMode === 'multiple' ? 'single' : 'multiple' : brushMode + } + }); + } + }; + BrushFeature.getDefaultOption = function (ecModel) { + var defaultOption = { + show: true, + type: ICON_TYPES.slice(), + icon: { + /* eslint-disable */ + rect: 'M7.3,34.7 M0.4,10V-0.2h9.8 M89.6,10V-0.2h-9.8 M0.4,60v10.2h9.8 M89.6,60v10.2h-9.8 M12.3,22.4V10.5h13.1 M33.6,10.5h7.8 M49.1,10.5h7.8 M77.5,22.4V10.5h-13 M12.3,31.1v8.2 M77.7,31.1v8.2 M12.3,47.6v11.9h13.1 M33.6,59.5h7.6 M49.1,59.5 h7.7 M77.5,47.6v11.9h-13', + polygon: 'M55.2,34.9c1.7,0,3.1,1.4,3.1,3.1s-1.4,3.1-3.1,3.1 s-3.1-1.4-3.1-3.1S53.5,34.9,55.2,34.9z M50.4,51c1.7,0,3.1,1.4,3.1,3.1c0,1.7-1.4,3.1-3.1,3.1c-1.7,0-3.1-1.4-3.1-3.1 C47.3,52.4,48.7,51,50.4,51z M55.6,37.1l1.5-7.8 M60.1,13.5l1.6-8.7l-7.8,4 M59,19l-1,5.3 M24,16.1l6.4,4.9l6.4-3.3 M48.5,11.6 l-5.9,3.1 M19.1,12.8L9.7,5.1l1.1,7.7 M13.4,29.8l1,7.3l6.6,1.6 M11.6,18.4l1,6.1 M32.8,41.9 M26.6,40.4 M27.3,40.2l6.1,1.6 M49.9,52.1l-5.6-7.6l-4.9-1.2', + lineX: 'M15.2,30 M19.7,15.6V1.9H29 M34.8,1.9H40.4 M55.3,15.6V1.9H45.9 M19.7,44.4V58.1H29 M34.8,58.1H40.4 M55.3,44.4 V58.1H45.9 M12.5,20.3l-9.4,9.6l9.6,9.8 M3.1,29.9h16.5 M62.5,20.3l9.4,9.6L62.3,39.7 M71.9,29.9H55.4', + lineY: 'M38.8,7.7 M52.7,12h13.2v9 M65.9,26.6V32 M52.7,46.3h13.2v-9 M24.9,12H11.8v9 M11.8,26.6V32 M24.9,46.3H11.8v-9 M48.2,5.1l-9.3-9l-9.4,9.2 M38.9-3.9V12 M48.2,53.3l-9.3,9l-9.4-9.2 M38.9,62.3V46.4', + keep: 'M4,10.5V1h10.3 M20.7,1h6.1 M33,1h6.1 M55.4,10.5V1H45.2 M4,17.3v6.6 M55.6,17.3v6.6 M4,30.5V40h10.3 M20.7,40 h6.1 M33,40h6.1 M55.4,30.5V40H45.2 M21,18.9h62.9v48.6H21V18.9z', + clear: 'M22,14.7l30.9,31 M52.9,14.7L22,45.7 M4.7,16.8V4.2h13.1 M26,4.2h7.8 M41.6,4.2h7.8 M70.3,16.8V4.2H57.2 M4.7,25.9v8.6 M70.3,25.9v8.6 M4.7,43.2v12.6h13.1 M26,55.8h7.8 M41.6,55.8h7.8 M70.3,43.2v12.6H57.2' // jshint ignore:line + /* eslint-enable */ + }, + + // `rect`, `polygon`, `lineX`, `lineY`, `keep`, `clear` + title: ecModel.getLocaleModel().get(['toolbox', 'brush', 'title']) + }; + return defaultOption; + }; + return BrushFeature; + }(ToolboxFeature); + + function install$B(registers) { + registers.registerComponentView(BrushView); + registers.registerComponentModel(BrushModel); + registers.registerPreprocessor(brushPreprocessor); + registers.registerVisual(registers.PRIORITY.VISUAL.BRUSH, brushVisual); + registers.registerAction({ + type: 'brush', + event: 'brush', + update: 'updateVisual' + }, function (payload, ecModel) { + ecModel.eachComponent({ + mainType: 'brush', + query: payload + }, function (brushModel) { + brushModel.setAreas(payload.areas); + }); + }); + /** + * payload: { + * brushComponents: [ + * { + * brushId, + * brushIndex, + * brushName, + * series: [ + * { + * seriesId, + * seriesIndex, + * seriesName, + * rawIndices: [21, 34, ...] + * }, + * ... + * ] + * }, + * ... + * ] + * } + */ + registers.registerAction({ + type: 'brushSelect', + event: 'brushSelected', + update: 'none' + }, noop); + registers.registerAction({ + type: 'brushEnd', + event: 'brushEnd', + update: 'none' + }, noop); + registerFeature('brush', BrushFeature); + } + + var TitleModel = /** @class */function (_super) { + __extends(TitleModel, _super); + function TitleModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = TitleModel.type; + _this.layoutMode = { + type: 'box', + ignoreSize: true + }; + return _this; + } + TitleModel.type = 'title'; + TitleModel.defaultOption = { + // zlevel: 0, + z: 6, + show: true, + 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' + } + }; + return TitleModel; + }(ComponentModel); + // View + var TitleView = /** @class */function (_super) { + __extends(TitleView, _super); + function TitleView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = TitleView.type; + return _this; + } + TitleView.prototype.render = function (titleModel, ecModel, api) { + this.group.removeAll(); + if (!titleModel.get('show')) { + return; + } + var group = this.group; + var textStyleModel = titleModel.getModel('textStyle'); + var subtextStyleModel = titleModel.getModel('subtextStyle'); + var textAlign = titleModel.get('textAlign'); + var textVerticalAlign = retrieve2(titleModel.get('textBaseline'), titleModel.get('textVerticalAlign')); + var textEl = new ZRText({ + style: createTextStyle(textStyleModel, { + text: titleModel.get('text'), + fill: textStyleModel.getTextColor() + }, { + disableBox: true + }), + z2: 10 + }); + var textRect = textEl.getBoundingRect(); + var subText = titleModel.get('subtext'); + var subTextEl = new ZRText({ + style: createTextStyle(subtextStyleModel, { + text: subText, + fill: subtextStyleModel.getTextColor(), + y: textRect.height + titleModel.get('itemGap'), + verticalAlign: 'top' + }, { + disableBox: true + }), + z2: 10 + }); + var link = titleModel.get('link'); + var sublink = titleModel.get('sublink'); + var triggerEvent = titleModel.get('triggerEvent', true); + textEl.silent = !link && !triggerEvent; + subTextEl.silent = !sublink && !triggerEvent; + if (link) { + textEl.on('click', function () { + windowOpen(link, '_' + titleModel.get('target')); + }); + } + if (sublink) { + subTextEl.on('click', function () { + windowOpen(sublink, '_' + titleModel.get('subtarget')); + }); + } + getECData(textEl).eventData = getECData(subTextEl).eventData = triggerEvent ? { + componentType: 'title', + componentIndex: titleModel.componentIndex + } : null; + group.add(textEl); + subText && group.add(subTextEl); + // If no subText, but add subTextEl, there will be an empty line. + var groupRect = group.getBoundingRect(); + var layoutOption = titleModel.getBoxLayoutParams(); + layoutOption.width = groupRect.width; + layoutOption.height = groupRect.height; + var layoutRect = getLayoutRect(layoutOption, { + width: api.getWidth(), + height: api.getHeight() + }, titleModel.get('padding')); + // Adjust text align based on position + if (!textAlign) { + // Align left if title is on the left. center and right is same + textAlign = titleModel.get('left') || titleModel.get('right'); + // @ts-ignore + if (textAlign === 'middle') { + textAlign = 'center'; + } + // Adjust layout by text align + if (textAlign === 'right') { + layoutRect.x += layoutRect.width; + } else if (textAlign === 'center') { + layoutRect.x += layoutRect.width / 2; + } + } + if (!textVerticalAlign) { + textVerticalAlign = titleModel.get('top') || titleModel.get('bottom'); + // @ts-ignore + if (textVerticalAlign === 'center') { + textVerticalAlign = 'middle'; + } + if (textVerticalAlign === 'bottom') { + layoutRect.y += layoutRect.height; + } else if (textVerticalAlign === 'middle') { + layoutRect.y += layoutRect.height / 2; + } + textVerticalAlign = textVerticalAlign || 'top'; + } + group.x = layoutRect.x; + group.y = layoutRect.y; + group.markRedraw(); + var alignStyle = { + align: textAlign, + verticalAlign: textVerticalAlign + }; + textEl.setStyle(alignStyle); + subTextEl.setStyle(alignStyle); + // Render background + // Get groupRect again because textAlign has been changed + groupRect = group.getBoundingRect(); + var padding = layoutRect.margin; + var style = titleModel.getItemStyle(['color', 'opacity']); + style.fill = titleModel.get('backgroundColor'); + var rect = new Rect({ + shape: { + x: groupRect.x - padding[3], + y: groupRect.y - padding[0], + width: groupRect.width + padding[1] + padding[3], + height: groupRect.height + padding[0] + padding[2], + r: titleModel.get('borderRadius') + }, + style: style, + subPixelOptimize: true, + silent: true + }); + group.add(rect); + }; + TitleView.type = 'title'; + return TitleView; + }(ComponentView); + function install$C(registers) { + registers.registerComponentModel(TitleModel); + registers.registerComponentView(TitleView); + } + + var TimelineModel = /** @class */function (_super) { + __extends(TimelineModel, _super); + function TimelineModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = TimelineModel.type; + _this.layoutMode = 'box'; + return _this; + } + /** + * @override + */ + TimelineModel.prototype.init = function (option, parentModel, ecModel) { + this.mergeDefaultAndTheme(option, ecModel); + this._initData(); + }; + /** + * @override + */ + TimelineModel.prototype.mergeOption = function (option) { + _super.prototype.mergeOption.apply(this, arguments); + this._initData(); + }; + TimelineModel.prototype.setCurrentIndex = function (currentIndex) { + if (currentIndex == null) { + currentIndex = this.option.currentIndex; + } + var count = this._data.count(); + if (this.option.loop) { + currentIndex = (currentIndex % count + count) % count; + } else { + currentIndex >= count && (currentIndex = count - 1); + currentIndex < 0 && (currentIndex = 0); + } + this.option.currentIndex = currentIndex; + }; + /** + * @return {number} currentIndex + */ + TimelineModel.prototype.getCurrentIndex = function () { + return this.option.currentIndex; + }; + /** + * @return {boolean} + */ + TimelineModel.prototype.isIndexMax = function () { + return this.getCurrentIndex() >= this._data.count() - 1; + }; + /** + * @param {boolean} state true: play, false: stop + */ + TimelineModel.prototype.setPlayState = function (state) { + this.option.autoPlay = !!state; + }; + /** + * @return {boolean} true: play, false: stop + */ + TimelineModel.prototype.getPlayState = function () { + return !!this.option.autoPlay; + }; + /** + * @private + */ + TimelineModel.prototype._initData = function () { + var thisOption = this.option; + var dataArr = thisOption.data || []; + var axisType = thisOption.axisType; + var names = this._names = []; + var processedDataArr; + if (axisType === 'category') { + processedDataArr = []; + each(dataArr, function (item, index) { + var value = convertOptionIdName(getDataItemValue(item), ''); + var newItem; + if (isObject(item)) { + newItem = clone(item); + newItem.value = index; + } else { + newItem = index; + } + processedDataArr.push(newItem); + names.push(value); + }); + } else { + processedDataArr = dataArr; + } + var dimType = { + category: 'ordinal', + time: 'time', + value: 'number' + }[axisType] || 'number'; + var data = this._data = new SeriesData([{ + name: 'value', + type: dimType + }], this); + data.initData(processedDataArr, names); + }; + TimelineModel.prototype.getData = function () { + return this._data; + }; + /** + * @public + * @return {Array.<string>} categoreis + */ + TimelineModel.prototype.getCategories = function () { + if (this.get('axisType') === 'category') { + return this._names.slice(); + } + }; + TimelineModel.type = 'timeline'; + /** + * @protected + */ + TimelineModel.defaultOption = { + // zlevel: 0, // 一级层叠 + z: 4, + show: true, + axisType: 'time', + realtime: true, + left: '20%', + top: null, + right: '20%', + bottom: 0, + width: null, + height: 40, + padding: 5, + controlPosition: 'left', + autoPlay: false, + rewind: false, + loop: true, + playInterval: 2000, + currentIndex: 0, + itemStyle: {}, + label: { + color: '#000' + }, + data: [] + }; + return TimelineModel; + }(ComponentModel); + + var SliderTimelineModel = /** @class */function (_super) { + __extends(SliderTimelineModel, _super); + function SliderTimelineModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = SliderTimelineModel.type; + return _this; + } + SliderTimelineModel.type = 'timeline.slider'; + /** + * @protected + */ + SliderTimelineModel.defaultOption = inheritDefaultOption(TimelineModel.defaultOption, { + backgroundColor: 'rgba(0,0,0,0)', + borderColor: '#ccc', + borderWidth: 0, + orient: 'horizontal', + inverse: false, + tooltip: { + trigger: 'item' // data item may also have tootip attr. + }, + + symbol: 'circle', + symbolSize: 12, + lineStyle: { + show: true, + width: 2, + color: '#DAE1F5' + }, + label: { + position: 'auto', + // When using number, label position is not + // restricted by viewRect. + // positive: right/bottom, negative: left/top + show: true, + interval: 'auto', + rotate: 0, + // formatter: null, + // 其余属性默认使用全局文本样式,详见TEXTSTYLE + color: '#A4B1D7' + }, + itemStyle: { + color: '#A4B1D7', + borderWidth: 1 + }, + checkpointStyle: { + symbol: 'circle', + symbolSize: 15, + color: '#316bf3', + borderColor: '#fff', + borderWidth: 2, + shadowBlur: 2, + shadowOffsetX: 1, + shadowOffsetY: 1, + shadowColor: 'rgba(0, 0, 0, 0.3)', + // borderColor: 'rgba(194,53,49, 0.5)', + animation: true, + animationDuration: 300, + animationEasing: 'quinticInOut' + }, + controlStyle: { + show: true, + showPlayBtn: true, + showPrevBtn: true, + showNextBtn: true, + itemSize: 24, + itemGap: 12, + position: 'left', + playIcon: 'path://M31.6,53C17.5,53,6,41.5,6,27.4S17.5,1.8,31.6,1.8C45.7,1.8,57.2,13.3,57.2,27.4S45.7,53,31.6,53z M31.6,3.3 C18.4,3.3,7.5,14.1,7.5,27.4c0,13.3,10.8,24.1,24.1,24.1C44.9,51.5,55.7,40.7,55.7,27.4C55.7,14.1,44.9,3.3,31.6,3.3z M24.9,21.3 c0-2.2,1.6-3.1,3.5-2l10.5,6.1c1.899,1.1,1.899,2.9,0,4l-10.5,6.1c-1.9,1.1-3.5,0.2-3.5-2V21.3z', + stopIcon: 'path://M30.9,53.2C16.8,53.2,5.3,41.7,5.3,27.6S16.8,2,30.9,2C45,2,56.4,13.5,56.4,27.6S45,53.2,30.9,53.2z M30.9,3.5C17.6,3.5,6.8,14.4,6.8,27.6c0,13.3,10.8,24.1,24.101,24.1C44.2,51.7,55,40.9,55,27.6C54.9,14.4,44.1,3.5,30.9,3.5z M36.9,35.8c0,0.601-0.4,1-0.9,1h-1.3c-0.5,0-0.9-0.399-0.9-1V19.5c0-0.6,0.4-1,0.9-1H36c0.5,0,0.9,0.4,0.9,1V35.8z M27.8,35.8 c0,0.601-0.4,1-0.9,1h-1.3c-0.5,0-0.9-0.399-0.9-1V19.5c0-0.6,0.4-1,0.9-1H27c0.5,0,0.9,0.4,0.9,1L27.8,35.8L27.8,35.8z', + // eslint-disable-next-line max-len + nextIcon: 'M2,18.5A1.52,1.52,0,0,1,.92,18a1.49,1.49,0,0,1,0-2.12L7.81,9.36,1,3.11A1.5,1.5,0,1,1,3,.89l8,7.34a1.48,1.48,0,0,1,.49,1.09,1.51,1.51,0,0,1-.46,1.1L3,18.08A1.5,1.5,0,0,1,2,18.5Z', + // eslint-disable-next-line max-len + prevIcon: 'M10,.5A1.52,1.52,0,0,1,11.08,1a1.49,1.49,0,0,1,0,2.12L4.19,9.64,11,15.89a1.5,1.5,0,1,1-2,2.22L1,10.77A1.48,1.48,0,0,1,.5,9.68,1.51,1.51,0,0,1,1,8.58L9,.92A1.5,1.5,0,0,1,10,.5Z', + prevBtnSize: 18, + nextBtnSize: 18, + color: '#A4B1D7', + borderColor: '#A4B1D7', + borderWidth: 1 + }, + emphasis: { + label: { + show: true, + // 其余属性默认使用全局文本样式,详见TEXTSTYLE + color: '#6f778d' + }, + itemStyle: { + color: '#316BF3' + }, + controlStyle: { + color: '#316BF3', + borderColor: '#316BF3', + borderWidth: 2 + } + }, + progress: { + lineStyle: { + color: '#316BF3' + }, + itemStyle: { + color: '#316BF3' + }, + label: { + color: '#6f778d' + } + }, + data: [] + }); + return SliderTimelineModel; + }(TimelineModel); + mixin(SliderTimelineModel, DataFormatMixin.prototype); + + var TimelineView = /** @class */function (_super) { + __extends(TimelineView, _super); + function TimelineView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = TimelineView.type; + return _this; + } + TimelineView.type = 'timeline'; + return TimelineView; + }(ComponentView); + + /** + * Extend axis 2d + */ + var TimelineAxis = /** @class */function (_super) { + __extends(TimelineAxis, _super); + function TimelineAxis(dim, scale, coordExtent, axisType) { + var _this = _super.call(this, dim, scale, coordExtent) || this; + _this.type = axisType || 'value'; + return _this; + } + /** + * @override + */ + TimelineAxis.prototype.getLabelModel = function () { + // Force override + return this.model.getModel('label'); + }; + /** + * @override + */ + TimelineAxis.prototype.isHorizontal = function () { + return this.model.get('orient') === 'horizontal'; + }; + return TimelineAxis; + }(Axis); + + var PI$8 = Math.PI; + var labelDataIndexStore = makeInner(); + var SliderTimelineView = /** @class */function (_super) { + __extends(SliderTimelineView, _super); + function SliderTimelineView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = SliderTimelineView.type; + return _this; + } + SliderTimelineView.prototype.init = function (ecModel, api) { + this.api = api; + }; + /** + * @override + */ + SliderTimelineView.prototype.render = function (timelineModel, ecModel, api) { + this.model = timelineModel; + this.api = api; + this.ecModel = ecModel; + this.group.removeAll(); + if (timelineModel.get('show', true)) { + var layoutInfo_1 = this._layout(timelineModel, api); + var mainGroup_1 = this._createGroup('_mainGroup'); + var labelGroup = this._createGroup('_labelGroup'); + var axis_1 = this._axis = this._createAxis(layoutInfo_1, timelineModel); + timelineModel.formatTooltip = function (dataIndex) { + var name = axis_1.scale.getLabel({ + value: dataIndex + }); + return createTooltipMarkup('nameValue', { + noName: true, + value: name + }); + }; + each(['AxisLine', 'AxisTick', 'Control', 'CurrentPointer'], function (name) { + this['_render' + name](layoutInfo_1, mainGroup_1, axis_1, timelineModel); + }, this); + this._renderAxisLabel(layoutInfo_1, labelGroup, axis_1, timelineModel); + this._position(layoutInfo_1, timelineModel); + } + this._doPlayStop(); + this._updateTicksStatus(); + }; + /** + * @override + */ + SliderTimelineView.prototype.remove = function () { + this._clearTimer(); + this.group.removeAll(); + }; + /** + * @override + */ + SliderTimelineView.prototype.dispose = function () { + this._clearTimer(); + }; + SliderTimelineView.prototype._layout = function (timelineModel, api) { + var labelPosOpt = timelineModel.get(['label', 'position']); + var orient = timelineModel.get('orient'); + var viewRect = getViewRect$5(timelineModel, api); + var parsedLabelPos; + // Auto label offset. + if (labelPosOpt == null || labelPosOpt === 'auto') { + parsedLabelPos = orient === 'horizontal' ? viewRect.y + viewRect.height / 2 < api.getHeight() / 2 ? '-' : '+' : viewRect.x + viewRect.width / 2 < api.getWidth() / 2 ? '+' : '-'; + } else if (isString(labelPosOpt)) { + parsedLabelPos = { + horizontal: { + top: '-', + bottom: '+' + }, + vertical: { + left: '-', + right: '+' + } + }[orient][labelPosOpt]; + } else { + // is number + parsedLabelPos = labelPosOpt; + } + var labelAlignMap = { + horizontal: 'center', + vertical: parsedLabelPos >= 0 || parsedLabelPos === '+' ? 'left' : 'right' + }; + var labelBaselineMap = { + horizontal: parsedLabelPos >= 0 || parsedLabelPos === '+' ? 'top' : 'bottom', + vertical: 'middle' + }; + var rotationMap = { + horizontal: 0, + vertical: PI$8 / 2 + }; + // Position + var mainLength = orient === 'vertical' ? viewRect.height : viewRect.width; + var controlModel = timelineModel.getModel('controlStyle'); + var showControl = controlModel.get('show', true); + var controlSize = showControl ? controlModel.get('itemSize') : 0; + var controlGap = showControl ? controlModel.get('itemGap') : 0; + var sizePlusGap = controlSize + controlGap; + // Special label rotate. + var labelRotation = timelineModel.get(['label', 'rotate']) || 0; + labelRotation = labelRotation * PI$8 / 180; // To radian. + var playPosition; + var prevBtnPosition; + var nextBtnPosition; + var controlPosition = controlModel.get('position', true); + var showPlayBtn = showControl && controlModel.get('showPlayBtn', true); + var showPrevBtn = showControl && controlModel.get('showPrevBtn', true); + var showNextBtn = showControl && controlModel.get('showNextBtn', true); + var xLeft = 0; + var xRight = mainLength; + // position[0] means left, position[1] means middle. + if (controlPosition === 'left' || controlPosition === 'bottom') { + showPlayBtn && (playPosition = [0, 0], xLeft += sizePlusGap); + showPrevBtn && (prevBtnPosition = [xLeft, 0], xLeft += sizePlusGap); + showNextBtn && (nextBtnPosition = [xRight - controlSize, 0], xRight -= sizePlusGap); + } else { + // 'top' 'right' + showPlayBtn && (playPosition = [xRight - controlSize, 0], xRight -= sizePlusGap); + showPrevBtn && (prevBtnPosition = [0, 0], xLeft += sizePlusGap); + showNextBtn && (nextBtnPosition = [xRight - controlSize, 0], xRight -= sizePlusGap); + } + var axisExtent = [xLeft, xRight]; + if (timelineModel.get('inverse')) { + axisExtent.reverse(); + } + return { + viewRect: viewRect, + mainLength: mainLength, + orient: orient, + rotation: rotationMap[orient], + labelRotation: labelRotation, + labelPosOpt: parsedLabelPos, + labelAlign: timelineModel.get(['label', 'align']) || labelAlignMap[orient], + labelBaseline: timelineModel.get(['label', 'verticalAlign']) || timelineModel.get(['label', 'baseline']) || labelBaselineMap[orient], + // Based on mainGroup. + playPosition: playPosition, + prevBtnPosition: prevBtnPosition, + nextBtnPosition: nextBtnPosition, + axisExtent: axisExtent, + controlSize: controlSize, + controlGap: controlGap + }; + }; + SliderTimelineView.prototype._position = function (layoutInfo, timelineModel) { + // Position is be called finally, because bounding rect is needed for + // adapt content to fill viewRect (auto adapt offset). + // Timeline may be not all in the viewRect when 'offset' is specified + // as a number, because it is more appropriate that label aligns at + // 'offset' but not the other edge defined by viewRect. + var mainGroup = this._mainGroup; + var labelGroup = this._labelGroup; + var viewRect = layoutInfo.viewRect; + if (layoutInfo.orient === 'vertical') { + // transform to horizontal, inverse rotate by left-top point. + var m = create$1(); + var rotateOriginX = viewRect.x; + var rotateOriginY = viewRect.y + viewRect.height; + translate(m, m, [-rotateOriginX, -rotateOriginY]); + rotate(m, m, -PI$8 / 2); + translate(m, m, [rotateOriginX, rotateOriginY]); + viewRect = viewRect.clone(); + viewRect.applyTransform(m); + } + var viewBound = getBound(viewRect); + var mainBound = getBound(mainGroup.getBoundingRect()); + var labelBound = getBound(labelGroup.getBoundingRect()); + var mainPosition = [mainGroup.x, mainGroup.y]; + var labelsPosition = [labelGroup.x, labelGroup.y]; + labelsPosition[0] = mainPosition[0] = viewBound[0][0]; + var labelPosOpt = layoutInfo.labelPosOpt; + if (labelPosOpt == null || isString(labelPosOpt)) { + // '+' or '-' + var mainBoundIdx = labelPosOpt === '+' ? 0 : 1; + toBound(mainPosition, mainBound, viewBound, 1, mainBoundIdx); + toBound(labelsPosition, labelBound, viewBound, 1, 1 - mainBoundIdx); + } else { + var mainBoundIdx = labelPosOpt >= 0 ? 0 : 1; + toBound(mainPosition, mainBound, viewBound, 1, mainBoundIdx); + labelsPosition[1] = mainPosition[1] + labelPosOpt; + } + mainGroup.setPosition(mainPosition); + labelGroup.setPosition(labelsPosition); + mainGroup.rotation = labelGroup.rotation = layoutInfo.rotation; + setOrigin(mainGroup); + setOrigin(labelGroup); + function setOrigin(targetGroup) { + targetGroup.originX = viewBound[0][0] - targetGroup.x; + targetGroup.originY = viewBound[1][0] - targetGroup.y; + } + function getBound(rect) { + // [[xmin, xmax], [ymin, ymax]] + return [[rect.x, rect.x + rect.width], [rect.y, rect.y + rect.height]]; + } + function toBound(fromPos, from, to, dimIdx, boundIdx) { + fromPos[dimIdx] += to[dimIdx][boundIdx] - from[dimIdx][boundIdx]; + } + }; + SliderTimelineView.prototype._createAxis = function (layoutInfo, timelineModel) { + var data = timelineModel.getData(); + var axisType = timelineModel.get('axisType'); + var scale = createScaleByModel$1(timelineModel, axisType); + // Customize scale. The `tickValue` is `dataIndex`. + scale.getTicks = function () { + return data.mapArray(['value'], function (value) { + return { + value: value + }; + }); + }; + var dataExtent = data.getDataExtent('value'); + scale.setExtent(dataExtent[0], dataExtent[1]); + scale.calcNiceTicks(); + var axis = new TimelineAxis('value', scale, layoutInfo.axisExtent, axisType); + axis.model = timelineModel; + return axis; + }; + SliderTimelineView.prototype._createGroup = function (key) { + var newGroup = this[key] = new Group(); + this.group.add(newGroup); + return newGroup; + }; + SliderTimelineView.prototype._renderAxisLine = function (layoutInfo, group, axis, timelineModel) { + var axisExtent = axis.getExtent(); + if (!timelineModel.get(['lineStyle', 'show'])) { + return; + } + var line = new Line({ + shape: { + x1: axisExtent[0], + y1: 0, + x2: axisExtent[1], + y2: 0 + }, + style: extend({ + lineCap: 'round' + }, timelineModel.getModel('lineStyle').getLineStyle()), + silent: true, + z2: 1 + }); + group.add(line); + var progressLine = this._progressLine = new Line({ + shape: { + x1: axisExtent[0], + x2: this._currentPointer ? this._currentPointer.x : axisExtent[0], + y1: 0, + y2: 0 + }, + style: defaults({ + lineCap: 'round', + lineWidth: line.style.lineWidth + }, timelineModel.getModel(['progress', 'lineStyle']).getLineStyle()), + silent: true, + z2: 1 + }); + group.add(progressLine); + }; + SliderTimelineView.prototype._renderAxisTick = function (layoutInfo, group, axis, timelineModel) { + var _this = this; + var data = timelineModel.getData(); + // Show all ticks, despite ignoring strategy. + var ticks = axis.scale.getTicks(); + this._tickSymbols = []; + // The value is dataIndex, see the customized scale. + each(ticks, function (tick) { + var tickCoord = axis.dataToCoord(tick.value); + var itemModel = data.getItemModel(tick.value); + var itemStyleModel = itemModel.getModel('itemStyle'); + var hoverStyleModel = itemModel.getModel(['emphasis', 'itemStyle']); + var progressStyleModel = itemModel.getModel(['progress', 'itemStyle']); + var symbolOpt = { + x: tickCoord, + y: 0, + onclick: bind(_this._changeTimeline, _this, tick.value) + }; + var el = giveSymbol(itemModel, itemStyleModel, group, symbolOpt); + el.ensureState('emphasis').style = hoverStyleModel.getItemStyle(); + el.ensureState('progress').style = progressStyleModel.getItemStyle(); + enableHoverEmphasis(el); + var ecData = getECData(el); + if (itemModel.get('tooltip')) { + ecData.dataIndex = tick.value; + ecData.dataModel = timelineModel; + } else { + ecData.dataIndex = ecData.dataModel = null; + } + _this._tickSymbols.push(el); + }); + }; + SliderTimelineView.prototype._renderAxisLabel = function (layoutInfo, group, axis, timelineModel) { + var _this = this; + var labelModel = axis.getLabelModel(); + if (!labelModel.get('show')) { + return; + } + var data = timelineModel.getData(); + var labels = axis.getViewLabels(); + this._tickLabels = []; + each(labels, function (labelItem) { + // The tickValue is dataIndex, see the customized scale. + var dataIndex = labelItem.tickValue; + var itemModel = data.getItemModel(dataIndex); + var normalLabelModel = itemModel.getModel('label'); + var hoverLabelModel = itemModel.getModel(['emphasis', 'label']); + var progressLabelModel = itemModel.getModel(['progress', 'label']); + var tickCoord = axis.dataToCoord(labelItem.tickValue); + var textEl = new ZRText({ + x: tickCoord, + y: 0, + rotation: layoutInfo.labelRotation - layoutInfo.rotation, + onclick: bind(_this._changeTimeline, _this, dataIndex), + silent: false, + style: createTextStyle(normalLabelModel, { + text: labelItem.formattedLabel, + align: layoutInfo.labelAlign, + verticalAlign: layoutInfo.labelBaseline + }) + }); + textEl.ensureState('emphasis').style = createTextStyle(hoverLabelModel); + textEl.ensureState('progress').style = createTextStyle(progressLabelModel); + group.add(textEl); + enableHoverEmphasis(textEl); + labelDataIndexStore(textEl).dataIndex = dataIndex; + _this._tickLabels.push(textEl); + }); + }; + SliderTimelineView.prototype._renderControl = function (layoutInfo, group, axis, timelineModel) { + var controlSize = layoutInfo.controlSize; + var rotation = layoutInfo.rotation; + var itemStyle = timelineModel.getModel('controlStyle').getItemStyle(); + var hoverStyle = timelineModel.getModel(['emphasis', 'controlStyle']).getItemStyle(); + var playState = timelineModel.getPlayState(); + var inverse = timelineModel.get('inverse', true); + makeBtn(layoutInfo.nextBtnPosition, 'next', bind(this._changeTimeline, this, inverse ? '-' : '+')); + makeBtn(layoutInfo.prevBtnPosition, 'prev', bind(this._changeTimeline, this, inverse ? '+' : '-')); + makeBtn(layoutInfo.playPosition, playState ? 'stop' : 'play', bind(this._handlePlayClick, this, !playState), true); + function makeBtn(position, iconName, onclick, willRotate) { + if (!position) { + return; + } + var iconSize = parsePercent(retrieve2(timelineModel.get(['controlStyle', iconName + 'BtnSize']), controlSize), controlSize); + var rect = [0, -iconSize / 2, iconSize, iconSize]; + var btn = makeControlIcon(timelineModel, iconName + 'Icon', rect, { + x: position[0], + y: position[1], + originX: controlSize / 2, + originY: 0, + rotation: willRotate ? -rotation : 0, + rectHover: true, + style: itemStyle, + onclick: onclick + }); + btn.ensureState('emphasis').style = hoverStyle; + group.add(btn); + enableHoverEmphasis(btn); + } + }; + SliderTimelineView.prototype._renderCurrentPointer = function (layoutInfo, group, axis, timelineModel) { + var data = timelineModel.getData(); + var currentIndex = timelineModel.getCurrentIndex(); + var pointerModel = data.getItemModel(currentIndex).getModel('checkpointStyle'); + var me = this; + var callback = { + onCreate: function (pointer) { + pointer.draggable = true; + pointer.drift = bind(me._handlePointerDrag, me); + pointer.ondragend = bind(me._handlePointerDragend, me); + pointerMoveTo(pointer, me._progressLine, currentIndex, axis, timelineModel, true); + }, + onUpdate: function (pointer) { + pointerMoveTo(pointer, me._progressLine, currentIndex, axis, timelineModel); + } + }; + // Reuse when exists, for animation and drag. + this._currentPointer = giveSymbol(pointerModel, pointerModel, this._mainGroup, {}, this._currentPointer, callback); + }; + SliderTimelineView.prototype._handlePlayClick = function (nextState) { + this._clearTimer(); + this.api.dispatchAction({ + type: 'timelinePlayChange', + playState: nextState, + from: this.uid + }); + }; + SliderTimelineView.prototype._handlePointerDrag = function (dx, dy, e) { + this._clearTimer(); + this._pointerChangeTimeline([e.offsetX, e.offsetY]); + }; + SliderTimelineView.prototype._handlePointerDragend = function (e) { + this._pointerChangeTimeline([e.offsetX, e.offsetY], true); + }; + SliderTimelineView.prototype._pointerChangeTimeline = function (mousePos, trigger) { + var toCoord = this._toAxisCoord(mousePos)[0]; + var axis = this._axis; + var axisExtent = asc(axis.getExtent().slice()); + toCoord > axisExtent[1] && (toCoord = axisExtent[1]); + toCoord < axisExtent[0] && (toCoord = axisExtent[0]); + this._currentPointer.x = toCoord; + this._currentPointer.markRedraw(); + var progressLine = this._progressLine; + if (progressLine) { + progressLine.shape.x2 = toCoord; + progressLine.dirty(); + } + var targetDataIndex = this._findNearestTick(toCoord); + var timelineModel = this.model; + if (trigger || targetDataIndex !== timelineModel.getCurrentIndex() && timelineModel.get('realtime')) { + this._changeTimeline(targetDataIndex); + } + }; + SliderTimelineView.prototype._doPlayStop = function () { + var _this = this; + this._clearTimer(); + if (this.model.getPlayState()) { + this._timer = setTimeout(function () { + // Do not cache + var timelineModel = _this.model; + _this._changeTimeline(timelineModel.getCurrentIndex() + (timelineModel.get('rewind', true) ? -1 : 1)); + }, this.model.get('playInterval')); + } + }; + SliderTimelineView.prototype._toAxisCoord = function (vertex) { + var trans = this._mainGroup.getLocalTransform(); + return applyTransform$1(vertex, trans, true); + }; + SliderTimelineView.prototype._findNearestTick = function (axisCoord) { + var data = this.model.getData(); + var dist = Infinity; + var targetDataIndex; + var axis = this._axis; + data.each(['value'], function (value, dataIndex) { + var coord = axis.dataToCoord(value); + var d = Math.abs(coord - axisCoord); + if (d < dist) { + dist = d; + targetDataIndex = dataIndex; + } + }); + return targetDataIndex; + }; + SliderTimelineView.prototype._clearTimer = function () { + if (this._timer) { + clearTimeout(this._timer); + this._timer = null; + } + }; + SliderTimelineView.prototype._changeTimeline = function (nextIndex) { + var currentIndex = this.model.getCurrentIndex(); + if (nextIndex === '+') { + nextIndex = currentIndex + 1; + } else if (nextIndex === '-') { + nextIndex = currentIndex - 1; + } + this.api.dispatchAction({ + type: 'timelineChange', + currentIndex: nextIndex, + from: this.uid + }); + }; + SliderTimelineView.prototype._updateTicksStatus = function () { + var currentIndex = this.model.getCurrentIndex(); + var tickSymbols = this._tickSymbols; + var tickLabels = this._tickLabels; + if (tickSymbols) { + for (var i = 0; i < tickSymbols.length; i++) { + tickSymbols && tickSymbols[i] && tickSymbols[i].toggleState('progress', i < currentIndex); + } + } + if (tickLabels) { + for (var i = 0; i < tickLabels.length; i++) { + tickLabels && tickLabels[i] && tickLabels[i].toggleState('progress', labelDataIndexStore(tickLabels[i]).dataIndex <= currentIndex); + } + } + }; + SliderTimelineView.type = 'timeline.slider'; + return SliderTimelineView; + }(TimelineView); + function createScaleByModel$1(model, axisType) { + axisType = axisType || model.get('type'); + if (axisType) { + switch (axisType) { + // Buildin scale + case 'category': + return new OrdinalScale({ + ordinalMeta: model.getCategories(), + extent: [Infinity, -Infinity] + }); + case 'time': + return new TimeScale({ + locale: model.ecModel.getLocaleModel(), + useUTC: model.ecModel.get('useUTC') + }); + default: + // default to be value + return new IntervalScale(); + } + } + } + function getViewRect$5(model, api) { + return getLayoutRect(model.getBoxLayoutParams(), { + width: api.getWidth(), + height: api.getHeight() + }, model.get('padding')); + } + function makeControlIcon(timelineModel, objPath, rect, opts) { + var style = opts.style; + var icon = createIcon(timelineModel.get(['controlStyle', objPath]), opts || {}, new BoundingRect(rect[0], rect[1], rect[2], rect[3])); + // TODO createIcon won't use style in opt. + if (style) { + icon.setStyle(style); + } + return icon; + } + /** + * Create symbol or update symbol + * opt: basic position and event handlers + */ + function giveSymbol(hostModel, itemStyleModel, group, opt, symbol, callback) { + var color = itemStyleModel.get('color'); + if (!symbol) { + var symbolType = hostModel.get('symbol'); + symbol = createSymbol(symbolType, -1, -1, 2, 2, color); + symbol.setStyle('strokeNoScale', true); + group.add(symbol); + callback && callback.onCreate(symbol); + } else { + symbol.setColor(color); + group.add(symbol); // Group may be new, also need to add. + callback && callback.onUpdate(symbol); + } + // Style + var itemStyle = itemStyleModel.getItemStyle(['color']); + symbol.setStyle(itemStyle); + // Transform and events. + opt = merge({ + rectHover: true, + z2: 100 + }, opt, true); + var symbolSize = normalizeSymbolSize(hostModel.get('symbolSize')); + opt.scaleX = symbolSize[0] / 2; + opt.scaleY = symbolSize[1] / 2; + var symbolOffset = normalizeSymbolOffset(hostModel.get('symbolOffset'), symbolSize); + if (symbolOffset) { + opt.x = (opt.x || 0) + symbolOffset[0]; + opt.y = (opt.y || 0) + symbolOffset[1]; + } + var symbolRotate = hostModel.get('symbolRotate'); + opt.rotation = (symbolRotate || 0) * Math.PI / 180 || 0; + symbol.attr(opt); + // FIXME + // (1) When symbol.style.strokeNoScale is true and updateTransform is not performed, + // getBoundingRect will return wrong result. + // (This is supposed to be resolved in zrender, but it is a little difficult to + // leverage performance and auto updateTransform) + // (2) All of ancesters of symbol do not scale, so we can just updateTransform symbol. + symbol.updateTransform(); + return symbol; + } + function pointerMoveTo(pointer, progressLine, dataIndex, axis, timelineModel, noAnimation) { + if (pointer.dragging) { + return; + } + var pointerModel = timelineModel.getModel('checkpointStyle'); + var toCoord = axis.dataToCoord(timelineModel.getData().get('value', dataIndex)); + if (noAnimation || !pointerModel.get('animation', true)) { + pointer.attr({ + x: toCoord, + y: 0 + }); + progressLine && progressLine.attr({ + shape: { + x2: toCoord + } + }); + } else { + var animationCfg = { + duration: pointerModel.get('animationDuration', true), + easing: pointerModel.get('animationEasing', true) + }; + pointer.stopAnimation(null, true); + pointer.animateTo({ + x: toCoord, + y: 0 + }, animationCfg); + progressLine && progressLine.animateTo({ + shape: { + x2: toCoord + } + }, animationCfg); + } + } + + function installTimelineAction(registers) { + registers.registerAction({ + type: 'timelineChange', + event: 'timelineChanged', + update: 'prepareAndUpdate' + }, function (payload, ecModel, api) { + var timelineModel = ecModel.getComponent('timeline'); + if (timelineModel && payload.currentIndex != null) { + timelineModel.setCurrentIndex(payload.currentIndex); + if (!timelineModel.get('loop', true) && timelineModel.isIndexMax() && timelineModel.getPlayState()) { + timelineModel.setPlayState(false); + // The timeline has played to the end, trigger event + api.dispatchAction({ + type: 'timelinePlayChange', + playState: false, + from: payload.from + }); + } + } + // Set normalized currentIndex to payload. + ecModel.resetOption('timeline', { + replaceMerge: timelineModel.get('replaceMerge', true) + }); + return defaults({ + currentIndex: timelineModel.option.currentIndex + }, payload); + }); + registers.registerAction({ + type: 'timelinePlayChange', + event: 'timelinePlayChanged', + update: 'update' + }, function (payload, ecModel) { + var timelineModel = ecModel.getComponent('timeline'); + if (timelineModel && payload.playState != null) { + timelineModel.setPlayState(payload.playState); + } + }); + } + + function timelinePreprocessor(option) { + var timelineOpt = option && option.timeline; + if (!isArray(timelineOpt)) { + timelineOpt = timelineOpt ? [timelineOpt] : []; + } + each(timelineOpt, function (opt) { + if (!opt) { + return; + } + compatibleEC2(opt); + }); + } + function compatibleEC2(opt) { + var type = opt.type; + var ec2Types = { + 'number': 'value', + 'time': 'time' + }; + // Compatible with ec2 + if (ec2Types[type]) { + opt.axisType = ec2Types[type]; + delete opt.type; + } + transferItem(opt); + if (has(opt, 'controlPosition')) { + var controlStyle = opt.controlStyle || (opt.controlStyle = {}); + if (!has(controlStyle, 'position')) { + controlStyle.position = opt.controlPosition; + } + if (controlStyle.position === 'none' && !has(controlStyle, 'show')) { + controlStyle.show = false; + delete controlStyle.position; + } + delete opt.controlPosition; + } + each(opt.data || [], function (dataItem) { + if (isObject(dataItem) && !isArray(dataItem)) { + if (!has(dataItem, 'value') && has(dataItem, 'name')) { + // In ec2, using name as value. + dataItem.value = dataItem.name; + } + transferItem(dataItem); + } + }); + } + function transferItem(opt) { + var itemStyle = opt.itemStyle || (opt.itemStyle = {}); + var itemStyleEmphasis = itemStyle.emphasis || (itemStyle.emphasis = {}); + // Transfer label out + var label = opt.label || opt.label || {}; + var labelNormal = label.normal || (label.normal = {}); + var excludeLabelAttr = { + normal: 1, + emphasis: 1 + }; + each(label, function (value, name) { + if (!excludeLabelAttr[name] && !has(labelNormal, name)) { + labelNormal[name] = value; + } + }); + if (itemStyleEmphasis.label && !has(label, 'emphasis')) { + label.emphasis = itemStyleEmphasis.label; + delete itemStyleEmphasis.label; + } + } + function has(obj, attr) { + return obj.hasOwnProperty(attr); + } + + function install$D(registers) { + registers.registerComponentModel(SliderTimelineModel); + registers.registerComponentView(SliderTimelineView); + registers.registerSubTypeDefaulter('timeline', function () { + // Only slider now. + return 'slider'; + }); + installTimelineAction(registers); + registers.registerPreprocessor(timelinePreprocessor); + } + + function checkMarkerInSeries(seriesOpts, markerType) { + if (!seriesOpts) { + return false; + } + var seriesOptArr = isArray(seriesOpts) ? seriesOpts : [seriesOpts]; + for (var idx = 0; idx < seriesOptArr.length; idx++) { + if (seriesOptArr[idx] && seriesOptArr[idx][markerType]) { + return true; + } + } + return false; + } + + function fillLabel(opt) { + defaultEmphasis(opt, 'label', ['show']); + } + // { [componentType]: MarkerModel } + var inner$g = makeInner(); + var MarkerModel = /** @class */function (_super) { + __extends(MarkerModel, _super); + function MarkerModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = MarkerModel.type; + /** + * If marker model is created by self from series + */ + _this.createdBySelf = false; + return _this; + } + /** + * @overrite + */ + MarkerModel.prototype.init = function (option, parentModel, ecModel) { + if ("development" !== 'production') { + if (this.type === 'marker') { + throw new Error('Marker component is abstract component. Use markLine, markPoint, markArea instead.'); + } + } + this.mergeDefaultAndTheme(option, ecModel); + this._mergeOption(option, ecModel, false, true); + }; + MarkerModel.prototype.isAnimationEnabled = function () { + if (env.node) { + return false; + } + var hostSeries = this.__hostSeries; + return this.getShallow('animation') && hostSeries && hostSeries.isAnimationEnabled(); + }; + /** + * @overrite + */ + MarkerModel.prototype.mergeOption = function (newOpt, ecModel) { + this._mergeOption(newOpt, ecModel, false, false); + }; + MarkerModel.prototype._mergeOption = function (newOpt, ecModel, createdBySelf, isInit) { + var componentType = this.mainType; + if (!createdBySelf) { + ecModel.eachSeries(function (seriesModel) { + // mainType can be markPoint, markLine, markArea + var markerOpt = seriesModel.get(this.mainType, true); + var markerModel = inner$g(seriesModel)[componentType]; + if (!markerOpt || !markerOpt.data) { + inner$g(seriesModel)[componentType] = null; + return; + } + if (!markerModel) { + if (isInit) { + // Default label emphasis `position` and `show` + fillLabel(markerOpt); + } + each(markerOpt.data, function (item) { + // FIXME Overwrite fillLabel method ? + if (item instanceof Array) { + fillLabel(item[0]); + fillLabel(item[1]); + } else { + fillLabel(item); + } + }); + markerModel = this.createMarkerModelFromSeries(markerOpt, this, ecModel); + // markerModel = new ImplementedMarkerModel( + // markerOpt, this, ecModel + // ); + extend(markerModel, { + mainType: this.mainType, + // Use the same series index and name + seriesIndex: seriesModel.seriesIndex, + name: seriesModel.name, + createdBySelf: true + }); + markerModel.__hostSeries = seriesModel; + } else { + markerModel._mergeOption(markerOpt, ecModel, true); + } + inner$g(seriesModel)[componentType] = markerModel; + }, this); + } + }; + MarkerModel.prototype.formatTooltip = function (dataIndex, multipleSeries, dataType) { + var data = this.getData(); + var value = this.getRawValue(dataIndex); + var itemName = data.getName(dataIndex); + return createTooltipMarkup('section', { + header: this.name, + blocks: [createTooltipMarkup('nameValue', { + name: itemName, + value: value, + noName: !itemName, + noValue: value == null + })] + }); + }; + MarkerModel.prototype.getData = function () { + return this._data; + }; + MarkerModel.prototype.setData = function (data) { + this._data = data; + }; + MarkerModel.getMarkerModelFromSeries = function (seriesModel, + // Support three types of markers. Strict check. + componentType) { + return inner$g(seriesModel)[componentType]; + }; + MarkerModel.type = 'marker'; + MarkerModel.dependencies = ['series', 'grid', 'polar', 'geo']; + return MarkerModel; + }(ComponentModel); + mixin(MarkerModel, DataFormatMixin.prototype); + + var MarkPointModel = /** @class */function (_super) { + __extends(MarkPointModel, _super); + function MarkPointModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = MarkPointModel.type; + return _this; + } + MarkPointModel.prototype.createMarkerModelFromSeries = function (markerOpt, masterMarkerModel, ecModel) { + return new MarkPointModel(markerOpt, masterMarkerModel, ecModel); + }; + MarkPointModel.type = 'markPoint'; + MarkPointModel.defaultOption = { + // zlevel: 0, + z: 5, + symbol: 'pin', + symbolSize: 50, + // symbolRotate: 0, + // symbolOffset: [0, 0] + tooltip: { + trigger: 'item' + }, + label: { + show: true, + position: 'inside' + }, + itemStyle: { + borderWidth: 2 + }, + emphasis: { + label: { + show: true + } + } + }; + return MarkPointModel; + }(MarkerModel); + + function hasXOrY(item) { + return !(isNaN(parseFloat(item.x)) && isNaN(parseFloat(item.y))); + } + function hasXAndY(item) { + return !isNaN(parseFloat(item.x)) && !isNaN(parseFloat(item.y)); + } + function markerTypeCalculatorWithExtent(markerType, data, otherDataDim, targetDataDim, otherCoordIndex, targetCoordIndex) { + var coordArr = []; + var stacked = isDimensionStacked(data, targetDataDim /* , otherDataDim */); + var calcDataDim = stacked ? data.getCalculationInfo('stackResultDimension') : targetDataDim; + var value = numCalculate(data, calcDataDim, markerType); + var dataIndex = data.indicesOfNearest(calcDataDim, value)[0]; + coordArr[otherCoordIndex] = data.get(otherDataDim, dataIndex); + coordArr[targetCoordIndex] = data.get(calcDataDim, dataIndex); + var coordArrValue = data.get(targetDataDim, dataIndex); + // Make it simple, do not visit all stacked value to count precision. + var precision = getPrecision(data.get(targetDataDim, dataIndex)); + precision = Math.min(precision, 20); + if (precision >= 0) { + coordArr[targetCoordIndex] = +coordArr[targetCoordIndex].toFixed(precision); + } + return [coordArr, coordArrValue]; + } + // TODO Specified percent + var markerTypeCalculator = { + min: curry(markerTypeCalculatorWithExtent, 'min'), + max: curry(markerTypeCalculatorWithExtent, 'max'), + average: curry(markerTypeCalculatorWithExtent, 'average'), + median: curry(markerTypeCalculatorWithExtent, 'median') + }; + /** + * Transform markPoint data item to format used in List by do the following + * 1. Calculate statistic like `max`, `min`, `average` + * 2. Convert `item.xAxis`, `item.yAxis` to `item.coord` array + */ + function dataTransform(seriesModel, item) { + if (!item) { + return; + } + var data = seriesModel.getData(); + var coordSys = seriesModel.coordinateSystem; + var dims = coordSys && coordSys.dimensions; + // 1. If not specify the position with pixel directly + // 2. If `coord` is not a data array. Which uses `xAxis`, + // `yAxis` to specify the coord on each dimension + // parseFloat first because item.x and item.y can be percent string like '20%' + if (!hasXAndY(item) && !isArray(item.coord) && isArray(dims)) { + var axisInfo = getAxisInfo$1(item, data, coordSys, seriesModel); + // Clone the option + // Transform the properties xAxis, yAxis, radiusAxis, angleAxis, geoCoord to value + item = clone(item); + if (item.type && markerTypeCalculator[item.type] && axisInfo.baseAxis && axisInfo.valueAxis) { + var otherCoordIndex = indexOf(dims, axisInfo.baseAxis.dim); + var targetCoordIndex = indexOf(dims, axisInfo.valueAxis.dim); + var coordInfo = markerTypeCalculator[item.type](data, axisInfo.baseDataDim, axisInfo.valueDataDim, otherCoordIndex, targetCoordIndex); + item.coord = coordInfo[0]; + // Force to use the value of calculated value. + // let item use the value without stack. + item.value = coordInfo[1]; + } else { + // FIXME Only has one of xAxis and yAxis. + item.coord = [item.xAxis != null ? item.xAxis : item.radiusAxis, item.yAxis != null ? item.yAxis : item.angleAxis]; + } + } + // x y is provided + if (item.coord == null || !isArray(dims)) { + item.coord = []; + } else { + // Each coord support max, min, average + var coord = item.coord; + for (var i = 0; i < 2; i++) { + if (markerTypeCalculator[coord[i]]) { + coord[i] = numCalculate(data, data.mapDimension(dims[i]), coord[i]); + } + } + } + return item; + } + function getAxisInfo$1(item, data, coordSys, seriesModel) { + var ret = {}; + if (item.valueIndex != null || item.valueDim != null) { + ret.valueDataDim = item.valueIndex != null ? data.getDimension(item.valueIndex) : item.valueDim; + ret.valueAxis = coordSys.getAxis(dataDimToCoordDim(seriesModel, ret.valueDataDim)); + ret.baseAxis = coordSys.getOtherAxis(ret.valueAxis); + ret.baseDataDim = data.mapDimension(ret.baseAxis.dim); + } else { + ret.baseAxis = seriesModel.getBaseAxis(); + ret.valueAxis = coordSys.getOtherAxis(ret.baseAxis); + ret.baseDataDim = data.mapDimension(ret.baseAxis.dim); + ret.valueDataDim = data.mapDimension(ret.valueAxis.dim); + } + return ret; + } + function dataDimToCoordDim(seriesModel, dataDim) { + var dimItem = seriesModel.getData().getDimensionInfo(dataDim); + return dimItem && dimItem.coordDim; + } + /** + * Filter data which is out of coordinateSystem range + * [dataFilter description] + */ + function dataFilter$1( + // Currently only polar and cartesian has containData. + coordSys, item) { + // Always return true if there is no coordSys + return coordSys && coordSys.containData && item.coord && !hasXOrY(item) ? coordSys.containData(item.coord) : true; + } + function zoneFilter( + // Currently only polar and cartesian has containData. + coordSys, item1, item2) { + // Always return true if there is no coordSys + return coordSys && coordSys.containZone && item1.coord && item2.coord && !hasXOrY(item1) && !hasXOrY(item2) ? coordSys.containZone(item1.coord, item2.coord) : true; + } + function createMarkerDimValueGetter(inCoordSys, dims) { + return inCoordSys ? function (item, dimName, dataIndex, dimIndex) { + var rawVal = dimIndex < 2 + // x, y, radius, angle + ? item.coord && item.coord[dimIndex] : item.value; + return parseDataValue(rawVal, dims[dimIndex]); + } : function (item, dimName, dataIndex, dimIndex) { + return parseDataValue(item.value, dims[dimIndex]); + }; + } + function numCalculate(data, valueDataDim, type) { + if (type === 'average') { + var sum_1 = 0; + var count_1 = 0; + data.each(valueDataDim, function (val, idx) { + if (!isNaN(val)) { + sum_1 += val; + count_1++; + } + }); + return sum_1 / count_1; + } else if (type === 'median') { + return data.getMedian(valueDataDim); + } else { + // max & min + return data.getDataExtent(valueDataDim)[type === 'max' ? 1 : 0]; + } + } + + var inner$h = makeInner(); + var MarkerView = /** @class */function (_super) { + __extends(MarkerView, _super); + function MarkerView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = MarkerView.type; + return _this; + } + MarkerView.prototype.init = function () { + this.markerGroupMap = createHashMap(); + }; + MarkerView.prototype.render = function (markerModel, ecModel, api) { + var _this = this; + var markerGroupMap = this.markerGroupMap; + markerGroupMap.each(function (item) { + inner$h(item).keep = false; + }); + ecModel.eachSeries(function (seriesModel) { + var markerModel = MarkerModel.getMarkerModelFromSeries(seriesModel, _this.type); + markerModel && _this.renderSeries(seriesModel, markerModel, ecModel, api); + }); + markerGroupMap.each(function (item) { + !inner$h(item).keep && _this.group.remove(item.group); + }); + }; + MarkerView.prototype.markKeep = function (drawGroup) { + inner$h(drawGroup).keep = true; + }; + MarkerView.prototype.toggleBlurSeries = function (seriesModelList, isBlur) { + var _this = this; + each(seriesModelList, function (seriesModel) { + var markerModel = MarkerModel.getMarkerModelFromSeries(seriesModel, _this.type); + if (markerModel) { + var data = markerModel.getData(); + data.eachItemGraphicEl(function (el) { + if (el) { + isBlur ? enterBlur(el) : leaveBlur(el); + } + }); + } + }); + }; + MarkerView.type = 'marker'; + return MarkerView; + }(ComponentView); + + function updateMarkerLayout(mpData, seriesModel, api) { + var coordSys = seriesModel.coordinateSystem; + mpData.each(function (idx) { + var itemModel = mpData.getItemModel(idx); + var point; + var xPx = parsePercent$1(itemModel.get('x'), api.getWidth()); + var yPx = parsePercent$1(itemModel.get('y'), api.getHeight()); + if (!isNaN(xPx) && !isNaN(yPx)) { + point = [xPx, yPx]; + } + // Chart like bar may have there own marker positioning logic + else if (seriesModel.getMarkerPosition) { + // Use the getMarkerPosition + point = seriesModel.getMarkerPosition(mpData.getValues(mpData.dimensions, idx)); + } else if (coordSys) { + var x = mpData.get(coordSys.dimensions[0], idx); + var y = mpData.get(coordSys.dimensions[1], idx); + point = coordSys.dataToPoint([x, y]); + } + // Use x, y if has any + if (!isNaN(xPx)) { + point[0] = xPx; + } + if (!isNaN(yPx)) { + point[1] = yPx; + } + mpData.setItemLayout(idx, point); + }); + } + var MarkPointView = /** @class */function (_super) { + __extends(MarkPointView, _super); + function MarkPointView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = MarkPointView.type; + return _this; + } + MarkPointView.prototype.updateTransform = function (markPointModel, ecModel, api) { + ecModel.eachSeries(function (seriesModel) { + var mpModel = MarkerModel.getMarkerModelFromSeries(seriesModel, 'markPoint'); + if (mpModel) { + updateMarkerLayout(mpModel.getData(), seriesModel, api); + this.markerGroupMap.get(seriesModel.id).updateLayout(); + } + }, this); + }; + MarkPointView.prototype.renderSeries = function (seriesModel, mpModel, ecModel, api) { + var coordSys = seriesModel.coordinateSystem; + var seriesId = seriesModel.id; + var seriesData = seriesModel.getData(); + var symbolDrawMap = this.markerGroupMap; + var symbolDraw = symbolDrawMap.get(seriesId) || symbolDrawMap.set(seriesId, new SymbolDraw()); + var mpData = createData(coordSys, seriesModel, mpModel); + // FIXME + mpModel.setData(mpData); + updateMarkerLayout(mpModel.getData(), seriesModel, api); + mpData.each(function (idx) { + var itemModel = mpData.getItemModel(idx); + var symbol = itemModel.getShallow('symbol'); + var symbolSize = itemModel.getShallow('symbolSize'); + var symbolRotate = itemModel.getShallow('symbolRotate'); + var symbolOffset = itemModel.getShallow('symbolOffset'); + var symbolKeepAspect = itemModel.getShallow('symbolKeepAspect'); + // TODO: refactor needed: single data item should not support callback function + if (isFunction(symbol) || isFunction(symbolSize) || isFunction(symbolRotate) || isFunction(symbolOffset)) { + var rawIdx = mpModel.getRawValue(idx); + var dataParams = mpModel.getDataParams(idx); + if (isFunction(symbol)) { + symbol = symbol(rawIdx, dataParams); + } + if (isFunction(symbolSize)) { + // FIXME 这里不兼容 ECharts 2.x,2.x 貌似参数是整个数据? + symbolSize = symbolSize(rawIdx, dataParams); + } + if (isFunction(symbolRotate)) { + symbolRotate = symbolRotate(rawIdx, dataParams); + } + if (isFunction(symbolOffset)) { + symbolOffset = symbolOffset(rawIdx, dataParams); + } + } + var style = itemModel.getModel('itemStyle').getItemStyle(); + var color = getVisualFromData(seriesData, 'color'); + if (!style.fill) { + style.fill = color; + } + mpData.setItemVisual(idx, { + symbol: symbol, + symbolSize: symbolSize, + symbolRotate: symbolRotate, + symbolOffset: symbolOffset, + symbolKeepAspect: symbolKeepAspect, + style: style + }); + }); + // TODO Text are wrong + symbolDraw.updateData(mpData); + this.group.add(symbolDraw.group); + // Set host model for tooltip + // FIXME + mpData.eachItemGraphicEl(function (el) { + el.traverse(function (child) { + getECData(child).dataModel = mpModel; + }); + }); + this.markKeep(symbolDraw); + symbolDraw.group.silent = mpModel.get('silent') || seriesModel.get('silent'); + }; + MarkPointView.type = 'markPoint'; + return MarkPointView; + }(MarkerView); + function createData(coordSys, seriesModel, mpModel) { + var coordDimsInfos; + if (coordSys) { + coordDimsInfos = map(coordSys && coordSys.dimensions, function (coordDim) { + var info = seriesModel.getData().getDimensionInfo(seriesModel.getData().mapDimension(coordDim)) || {}; + // In map series data don't have lng and lat dimension. Fallback to same with coordSys + return extend(extend({}, info), { + name: coordDim, + // DON'T use ordinalMeta to parse and collect ordinal. + ordinalMeta: null + }); + }); + } else { + coordDimsInfos = [{ + name: 'value', + type: 'float' + }]; + } + var mpData = new SeriesData(coordDimsInfos, mpModel); + var dataOpt = map(mpModel.get('data'), curry(dataTransform, seriesModel)); + if (coordSys) { + dataOpt = filter(dataOpt, curry(dataFilter$1, coordSys)); + } + var dimValueGetter = createMarkerDimValueGetter(!!coordSys, coordDimsInfos); + mpData.initData(dataOpt, null, dimValueGetter); + return mpData; + } + + function install$E(registers) { + registers.registerComponentModel(MarkPointModel); + registers.registerComponentView(MarkPointView); + registers.registerPreprocessor(function (opt) { + if (checkMarkerInSeries(opt.series, 'markPoint')) { + // Make sure markPoint component is enabled + opt.markPoint = opt.markPoint || {}; + } + }); + } + + var MarkLineModel = /** @class */function (_super) { + __extends(MarkLineModel, _super); + function MarkLineModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = MarkLineModel.type; + return _this; + } + MarkLineModel.prototype.createMarkerModelFromSeries = function (markerOpt, masterMarkerModel, ecModel) { + return new MarkLineModel(markerOpt, masterMarkerModel, ecModel); + }; + MarkLineModel.type = 'markLine'; + MarkLineModel.defaultOption = { + // zlevel: 0, + z: 5, + symbol: ['circle', 'arrow'], + symbolSize: [8, 16], + // symbolRotate: 0, + symbolOffset: 0, + precision: 2, + tooltip: { + trigger: 'item' + }, + label: { + show: true, + position: 'end', + distance: 5 + }, + lineStyle: { + type: 'dashed' + }, + emphasis: { + label: { + show: true + }, + lineStyle: { + width: 3 + } + }, + animationEasing: 'linear' + }; + return MarkLineModel; + }(MarkerModel); + + var inner$i = makeInner(); + var markLineTransform = function (seriesModel, coordSys, mlModel, item) { + var data = seriesModel.getData(); + var itemArray; + if (!isArray(item)) { + // Special type markLine like 'min', 'max', 'average', 'median' + var mlType = item.type; + if (mlType === 'min' || mlType === 'max' || mlType === 'average' || mlType === 'median' + // In case + // data: [{ + // yAxis: 10 + // }] + || item.xAxis != null || item.yAxis != null) { + var valueAxis = void 0; + var value = void 0; + if (item.yAxis != null || item.xAxis != null) { + valueAxis = coordSys.getAxis(item.yAxis != null ? 'y' : 'x'); + value = retrieve(item.yAxis, item.xAxis); + } else { + var axisInfo = getAxisInfo$1(item, data, coordSys, seriesModel); + valueAxis = axisInfo.valueAxis; + var valueDataDim = getStackedDimension(data, axisInfo.valueDataDim); + value = numCalculate(data, valueDataDim, mlType); + } + var valueIndex = valueAxis.dim === 'x' ? 0 : 1; + var baseIndex = 1 - valueIndex; + // Normized to 2d data with start and end point + var mlFrom = clone(item); + var mlTo = { + coord: [] + }; + mlFrom.type = null; + mlFrom.coord = []; + mlFrom.coord[baseIndex] = -Infinity; + mlTo.coord[baseIndex] = Infinity; + var precision = mlModel.get('precision'); + if (precision >= 0 && isNumber(value)) { + value = +value.toFixed(Math.min(precision, 20)); + } + mlFrom.coord[valueIndex] = mlTo.coord[valueIndex] = value; + itemArray = [mlFrom, mlTo, { + type: mlType, + valueIndex: item.valueIndex, + // Force to use the value of calculated value. + value: value + }]; + } else { + // Invalid data + if ("development" !== 'production') { + logError('Invalid markLine data.'); + } + itemArray = []; + } + } else { + itemArray = item; + } + var normalizedItem = [dataTransform(seriesModel, itemArray[0]), dataTransform(seriesModel, itemArray[1]), extend({}, itemArray[2])]; + // Avoid line data type is extended by from(to) data type + normalizedItem[2].type = normalizedItem[2].type || null; + // Merge from option and to option into line option + merge(normalizedItem[2], normalizedItem[0]); + merge(normalizedItem[2], normalizedItem[1]); + return normalizedItem; + }; + function isInfinity(val) { + return !isNaN(val) && !isFinite(val); + } + // If a markLine has one dim + function ifMarkLineHasOnlyDim(dimIndex, fromCoord, toCoord, coordSys) { + var otherDimIndex = 1 - dimIndex; + var dimName = coordSys.dimensions[dimIndex]; + return isInfinity(fromCoord[otherDimIndex]) && isInfinity(toCoord[otherDimIndex]) && fromCoord[dimIndex] === toCoord[dimIndex] && coordSys.getAxis(dimName).containData(fromCoord[dimIndex]); + } + function markLineFilter(coordSys, item) { + if (coordSys.type === 'cartesian2d') { + var fromCoord = item[0].coord; + var toCoord = item[1].coord; + // In case + // { + // markLine: { + // data: [{ yAxis: 2 }] + // } + // } + if (fromCoord && toCoord && (ifMarkLineHasOnlyDim(1, fromCoord, toCoord, coordSys) || ifMarkLineHasOnlyDim(0, fromCoord, toCoord, coordSys))) { + return true; + } + } + return dataFilter$1(coordSys, item[0]) && dataFilter$1(coordSys, item[1]); + } + function updateSingleMarkerEndLayout(data, idx, isFrom, seriesModel, api) { + var coordSys = seriesModel.coordinateSystem; + var itemModel = data.getItemModel(idx); + var point; + var xPx = parsePercent$1(itemModel.get('x'), api.getWidth()); + var yPx = parsePercent$1(itemModel.get('y'), api.getHeight()); + if (!isNaN(xPx) && !isNaN(yPx)) { + point = [xPx, yPx]; + } else { + // Chart like bar may have there own marker positioning logic + if (seriesModel.getMarkerPosition) { + // Use the getMarkerPosition + point = seriesModel.getMarkerPosition(data.getValues(data.dimensions, idx)); + } else { + var dims = coordSys.dimensions; + var x = data.get(dims[0], idx); + var y = data.get(dims[1], idx); + point = coordSys.dataToPoint([x, y]); + } + // Expand line to the edge of grid if value on one axis is Inifnity + // In case + // markLine: { + // data: [{ + // yAxis: 2 + // // or + // type: 'average' + // }] + // } + if (isCoordinateSystemType(coordSys, 'cartesian2d')) { + // TODO: TYPE ts@4.1 may still infer it as Axis instead of Axis2D. Not sure if it's a bug + var xAxis = coordSys.getAxis('x'); + var yAxis = coordSys.getAxis('y'); + var dims = coordSys.dimensions; + if (isInfinity(data.get(dims[0], idx))) { + point[0] = xAxis.toGlobalCoord(xAxis.getExtent()[isFrom ? 0 : 1]); + } else if (isInfinity(data.get(dims[1], idx))) { + point[1] = yAxis.toGlobalCoord(yAxis.getExtent()[isFrom ? 0 : 1]); + } + } + // Use x, y if has any + if (!isNaN(xPx)) { + point[0] = xPx; + } + if (!isNaN(yPx)) { + point[1] = yPx; + } + } + data.setItemLayout(idx, point); + } + var MarkLineView = /** @class */function (_super) { + __extends(MarkLineView, _super); + function MarkLineView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = MarkLineView.type; + return _this; + } + MarkLineView.prototype.updateTransform = function (markLineModel, ecModel, api) { + ecModel.eachSeries(function (seriesModel) { + var mlModel = MarkerModel.getMarkerModelFromSeries(seriesModel, 'markLine'); + if (mlModel) { + var mlData_1 = mlModel.getData(); + var fromData_1 = inner$i(mlModel).from; + var toData_1 = inner$i(mlModel).to; + // Update visual and layout of from symbol and to symbol + fromData_1.each(function (idx) { + updateSingleMarkerEndLayout(fromData_1, idx, true, seriesModel, api); + updateSingleMarkerEndLayout(toData_1, idx, false, seriesModel, api); + }); + // Update layout of line + mlData_1.each(function (idx) { + mlData_1.setItemLayout(idx, [fromData_1.getItemLayout(idx), toData_1.getItemLayout(idx)]); + }); + this.markerGroupMap.get(seriesModel.id).updateLayout(); + } + }, this); + }; + MarkLineView.prototype.renderSeries = function (seriesModel, mlModel, ecModel, api) { + var coordSys = seriesModel.coordinateSystem; + var seriesId = seriesModel.id; + var seriesData = seriesModel.getData(); + var lineDrawMap = this.markerGroupMap; + var lineDraw = lineDrawMap.get(seriesId) || lineDrawMap.set(seriesId, new LineDraw()); + this.group.add(lineDraw.group); + var mlData = createList$1(coordSys, seriesModel, mlModel); + var fromData = mlData.from; + var toData = mlData.to; + var lineData = mlData.line; + inner$i(mlModel).from = fromData; + inner$i(mlModel).to = toData; + // Line data for tooltip and formatter + mlModel.setData(lineData); + // TODO + // Functionally, `symbolSize` & `symbolOffset` can also be 2D array now. + // But the related logic and type definition are not finished yet. + // Finish it if required + var symbolType = mlModel.get('symbol'); + var symbolSize = mlModel.get('symbolSize'); + var symbolRotate = mlModel.get('symbolRotate'); + var symbolOffset = mlModel.get('symbolOffset'); + // TODO: support callback function like markPoint + if (!isArray(symbolType)) { + symbolType = [symbolType, symbolType]; + } + if (!isArray(symbolSize)) { + symbolSize = [symbolSize, symbolSize]; + } + if (!isArray(symbolRotate)) { + symbolRotate = [symbolRotate, symbolRotate]; + } + if (!isArray(symbolOffset)) { + symbolOffset = [symbolOffset, symbolOffset]; + } + // Update visual and layout of from symbol and to symbol + mlData.from.each(function (idx) { + updateDataVisualAndLayout(fromData, idx, true); + updateDataVisualAndLayout(toData, idx, false); + }); + // Update visual and layout of line + lineData.each(function (idx) { + var lineStyle = lineData.getItemModel(idx).getModel('lineStyle').getLineStyle(); + // lineData.setItemVisual(idx, { + // color: lineColor || fromData.getItemVisual(idx, 'color') + // }); + lineData.setItemLayout(idx, [fromData.getItemLayout(idx), toData.getItemLayout(idx)]); + if (lineStyle.stroke == null) { + lineStyle.stroke = fromData.getItemVisual(idx, 'style').fill; + } + lineData.setItemVisual(idx, { + fromSymbolKeepAspect: fromData.getItemVisual(idx, 'symbolKeepAspect'), + fromSymbolOffset: fromData.getItemVisual(idx, 'symbolOffset'), + fromSymbolRotate: fromData.getItemVisual(idx, 'symbolRotate'), + fromSymbolSize: fromData.getItemVisual(idx, 'symbolSize'), + fromSymbol: fromData.getItemVisual(idx, 'symbol'), + toSymbolKeepAspect: toData.getItemVisual(idx, 'symbolKeepAspect'), + toSymbolOffset: toData.getItemVisual(idx, 'symbolOffset'), + toSymbolRotate: toData.getItemVisual(idx, 'symbolRotate'), + toSymbolSize: toData.getItemVisual(idx, 'symbolSize'), + toSymbol: toData.getItemVisual(idx, 'symbol'), + style: lineStyle + }); + }); + lineDraw.updateData(lineData); + // Set host model for tooltip + // FIXME + mlData.line.eachItemGraphicEl(function (el) { + getECData(el).dataModel = mlModel; + el.traverse(function (child) { + getECData(child).dataModel = mlModel; + }); + }); + function updateDataVisualAndLayout(data, idx, isFrom) { + var itemModel = data.getItemModel(idx); + updateSingleMarkerEndLayout(data, idx, isFrom, seriesModel, api); + var style = itemModel.getModel('itemStyle').getItemStyle(); + if (style.fill == null) { + style.fill = getVisualFromData(seriesData, 'color'); + } + data.setItemVisual(idx, { + symbolKeepAspect: itemModel.get('symbolKeepAspect'), + // `0` should be considered as a valid value, so use `retrieve2` instead of `||` + symbolOffset: retrieve2(itemModel.get('symbolOffset', true), symbolOffset[isFrom ? 0 : 1]), + symbolRotate: retrieve2(itemModel.get('symbolRotate', true), symbolRotate[isFrom ? 0 : 1]), + // TODO: when 2d array is supported, it should ignore parent + symbolSize: retrieve2(itemModel.get('symbolSize'), symbolSize[isFrom ? 0 : 1]), + symbol: retrieve2(itemModel.get('symbol', true), symbolType[isFrom ? 0 : 1]), + style: style + }); + } + this.markKeep(lineDraw); + lineDraw.group.silent = mlModel.get('silent') || seriesModel.get('silent'); + }; + MarkLineView.type = 'markLine'; + return MarkLineView; + }(MarkerView); + function createList$1(coordSys, seriesModel, mlModel) { + var coordDimsInfos; + if (coordSys) { + coordDimsInfos = map(coordSys && coordSys.dimensions, function (coordDim) { + var info = seriesModel.getData().getDimensionInfo(seriesModel.getData().mapDimension(coordDim)) || {}; + // In map series data don't have lng and lat dimension. Fallback to same with coordSys + return extend(extend({}, info), { + name: coordDim, + // DON'T use ordinalMeta to parse and collect ordinal. + ordinalMeta: null + }); + }); + } else { + coordDimsInfos = [{ + name: 'value', + type: 'float' + }]; + } + var fromData = new SeriesData(coordDimsInfos, mlModel); + var toData = new SeriesData(coordDimsInfos, mlModel); + // No dimensions + var lineData = new SeriesData([], mlModel); + var optData = map(mlModel.get('data'), curry(markLineTransform, seriesModel, coordSys, mlModel)); + if (coordSys) { + optData = filter(optData, curry(markLineFilter, coordSys)); + } + var dimValueGetter = createMarkerDimValueGetter(!!coordSys, coordDimsInfos); + fromData.initData(map(optData, function (item) { + return item[0]; + }), null, dimValueGetter); + toData.initData(map(optData, function (item) { + return item[1]; + }), null, dimValueGetter); + lineData.initData(map(optData, function (item) { + return item[2]; + })); + lineData.hasItemOption = true; + return { + from: fromData, + to: toData, + line: lineData + }; + } + + function install$F(registers) { + registers.registerComponentModel(MarkLineModel); + registers.registerComponentView(MarkLineView); + registers.registerPreprocessor(function (opt) { + if (checkMarkerInSeries(opt.series, 'markLine')) { + // Make sure markLine component is enabled + opt.markLine = opt.markLine || {}; + } + }); + } + + var MarkAreaModel = /** @class */function (_super) { + __extends(MarkAreaModel, _super); + function MarkAreaModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = MarkAreaModel.type; + return _this; + } + MarkAreaModel.prototype.createMarkerModelFromSeries = function (markerOpt, masterMarkerModel, ecModel) { + return new MarkAreaModel(markerOpt, masterMarkerModel, ecModel); + }; + MarkAreaModel.type = 'markArea'; + MarkAreaModel.defaultOption = { + // zlevel: 0, + // PENDING + z: 1, + tooltip: { + trigger: 'item' + }, + // markArea should fixed on the coordinate system + animation: false, + label: { + show: true, + position: 'top' + }, + itemStyle: { + // color and borderColor default to use color from series + // color: 'auto' + // borderColor: 'auto' + borderWidth: 0 + }, + emphasis: { + label: { + show: true, + position: 'top' + } + } + }; + return MarkAreaModel; + }(MarkerModel); + + var inner$j = makeInner(); + var markAreaTransform = function (seriesModel, coordSys, maModel, item) { + // item may be null + var item0 = item[0]; + var item1 = item[1]; + if (!item0 || !item1) { + return; + } + var lt = dataTransform(seriesModel, item0); + var rb = dataTransform(seriesModel, item1); + // FIXME make sure lt is less than rb + var ltCoord = lt.coord; + var rbCoord = rb.coord; + ltCoord[0] = retrieve(ltCoord[0], -Infinity); + ltCoord[1] = retrieve(ltCoord[1], -Infinity); + rbCoord[0] = retrieve(rbCoord[0], Infinity); + rbCoord[1] = retrieve(rbCoord[1], Infinity); + // Merge option into one + var result = mergeAll([{}, lt, rb]); + result.coord = [lt.coord, rb.coord]; + result.x0 = lt.x; + result.y0 = lt.y; + result.x1 = rb.x; + result.y1 = rb.y; + return result; + }; + function isInfinity$1(val) { + return !isNaN(val) && !isFinite(val); + } + // If a markArea has one dim + function ifMarkAreaHasOnlyDim(dimIndex, fromCoord, toCoord, coordSys) { + var otherDimIndex = 1 - dimIndex; + return isInfinity$1(fromCoord[otherDimIndex]) && isInfinity$1(toCoord[otherDimIndex]); + } + function markAreaFilter(coordSys, item) { + var fromCoord = item.coord[0]; + var toCoord = item.coord[1]; + var item0 = { + coord: fromCoord, + x: item.x0, + y: item.y0 + }; + var item1 = { + coord: toCoord, + x: item.x1, + y: item.y1 + }; + if (isCoordinateSystemType(coordSys, 'cartesian2d')) { + // In case + // { + // markArea: { + // data: [{ yAxis: 2 }] + // } + // } + if (fromCoord && toCoord && (ifMarkAreaHasOnlyDim(1, fromCoord, toCoord) || ifMarkAreaHasOnlyDim(0, fromCoord, toCoord))) { + return true; + } + // Directly returning true may also do the work, + // because markArea will not be shown automatically + // when it's not included in coordinate system. + // But filtering ahead can avoid keeping rendering markArea + // when there are too many of them. + return zoneFilter(coordSys, item0, item1); + } + return dataFilter$1(coordSys, item0) || dataFilter$1(coordSys, item1); + } + // dims can be ['x0', 'y0'], ['x1', 'y1'], ['x0', 'y1'], ['x1', 'y0'] + function getSingleMarkerEndPoint(data, idx, dims, seriesModel, api) { + var coordSys = seriesModel.coordinateSystem; + var itemModel = data.getItemModel(idx); + var point; + var xPx = parsePercent$1(itemModel.get(dims[0]), api.getWidth()); + var yPx = parsePercent$1(itemModel.get(dims[1]), api.getHeight()); + if (!isNaN(xPx) && !isNaN(yPx)) { + point = [xPx, yPx]; + } else { + // Chart like bar may have there own marker positioning logic + if (seriesModel.getMarkerPosition) { + // Consider the case that user input the right-bottom point first + // Pick the larger x and y as 'x1' and 'y1' + var pointValue0 = data.getValues(['x0', 'y0'], idx); + var pointValue1 = data.getValues(['x1', 'y1'], idx); + var clampPointValue0 = coordSys.clampData(pointValue0); + var clampPointValue1 = coordSys.clampData(pointValue1); + var pointValue = []; + if (dims[0] === 'x0') { + pointValue[0] = clampPointValue0[0] > clampPointValue1[0] ? pointValue1[0] : pointValue0[0]; + } else { + pointValue[0] = clampPointValue0[0] > clampPointValue1[0] ? pointValue0[0] : pointValue1[0]; + } + if (dims[1] === 'y0') { + pointValue[1] = clampPointValue0[1] > clampPointValue1[1] ? pointValue1[1] : pointValue0[1]; + } else { + pointValue[1] = clampPointValue0[1] > clampPointValue1[1] ? pointValue0[1] : pointValue1[1]; + } + // Use the getMarkerPosition + point = seriesModel.getMarkerPosition(pointValue, dims, true); + } else { + var x = data.get(dims[0], idx); + var y = data.get(dims[1], idx); + var pt = [x, y]; + coordSys.clampData && coordSys.clampData(pt, pt); + point = coordSys.dataToPoint(pt, true); + } + if (isCoordinateSystemType(coordSys, 'cartesian2d')) { + // TODO: TYPE ts@4.1 may still infer it as Axis instead of Axis2D. Not sure if it's a bug + var xAxis = coordSys.getAxis('x'); + var yAxis = coordSys.getAxis('y'); + var x = data.get(dims[0], idx); + var y = data.get(dims[1], idx); + if (isInfinity$1(x)) { + point[0] = xAxis.toGlobalCoord(xAxis.getExtent()[dims[0] === 'x0' ? 0 : 1]); + } else if (isInfinity$1(y)) { + point[1] = yAxis.toGlobalCoord(yAxis.getExtent()[dims[1] === 'y0' ? 0 : 1]); + } + } + // Use x, y if has any + if (!isNaN(xPx)) { + point[0] = xPx; + } + if (!isNaN(yPx)) { + point[1] = yPx; + } + } + return point; + } + var dimPermutations = [['x0', 'y0'], ['x1', 'y0'], ['x1', 'y1'], ['x0', 'y1']]; + var MarkAreaView = /** @class */function (_super) { + __extends(MarkAreaView, _super); + function MarkAreaView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = MarkAreaView.type; + return _this; + } + MarkAreaView.prototype.updateTransform = function (markAreaModel, ecModel, api) { + ecModel.eachSeries(function (seriesModel) { + var maModel = MarkerModel.getMarkerModelFromSeries(seriesModel, 'markArea'); + if (maModel) { + var areaData_1 = maModel.getData(); + areaData_1.each(function (idx) { + var points = map(dimPermutations, function (dim) { + return getSingleMarkerEndPoint(areaData_1, idx, dim, seriesModel, api); + }); + // Layout + areaData_1.setItemLayout(idx, points); + var el = areaData_1.getItemGraphicEl(idx); + el.setShape('points', points); + }); + } + }, this); + }; + MarkAreaView.prototype.renderSeries = function (seriesModel, maModel, ecModel, api) { + var coordSys = seriesModel.coordinateSystem; + var seriesId = seriesModel.id; + var seriesData = seriesModel.getData(); + var areaGroupMap = this.markerGroupMap; + var polygonGroup = areaGroupMap.get(seriesId) || areaGroupMap.set(seriesId, { + group: new Group() + }); + this.group.add(polygonGroup.group); + this.markKeep(polygonGroup); + var areaData = createList$2(coordSys, seriesModel, maModel); + // Line data for tooltip and formatter + maModel.setData(areaData); + // Update visual and layout of line + areaData.each(function (idx) { + // Layout + var points = map(dimPermutations, function (dim) { + return getSingleMarkerEndPoint(areaData, idx, dim, seriesModel, api); + }); + var xAxisScale = coordSys.getAxis('x').scale; + var yAxisScale = coordSys.getAxis('y').scale; + var xAxisExtent = xAxisScale.getExtent(); + var yAxisExtent = yAxisScale.getExtent(); + var xPointExtent = [xAxisScale.parse(areaData.get('x0', idx)), xAxisScale.parse(areaData.get('x1', idx))]; + var yPointExtent = [yAxisScale.parse(areaData.get('y0', idx)), yAxisScale.parse(areaData.get('y1', idx))]; + asc(xPointExtent); + asc(yPointExtent); + var overlapped = !(xAxisExtent[0] > xPointExtent[1] || xAxisExtent[1] < xPointExtent[0] || yAxisExtent[0] > yPointExtent[1] || yAxisExtent[1] < yPointExtent[0]); + // If none of the area is inside coordSys, allClipped is set to be true + // in layout so that label will not be displayed. See #12591 + var allClipped = !overlapped; + areaData.setItemLayout(idx, { + points: points, + allClipped: allClipped + }); + var style = areaData.getItemModel(idx).getModel('itemStyle').getItemStyle(); + var color$1 = getVisualFromData(seriesData, 'color'); + if (!style.fill) { + style.fill = color$1; + if (isString(style.fill)) { + style.fill = modifyAlpha(style.fill, 0.4); + } + } + if (!style.stroke) { + style.stroke = color$1; + } + // Visual + areaData.setItemVisual(idx, 'style', style); + }); + areaData.diff(inner$j(polygonGroup).data).add(function (idx) { + var layout = areaData.getItemLayout(idx); + if (!layout.allClipped) { + var polygon = new Polygon({ + shape: { + points: layout.points + } + }); + areaData.setItemGraphicEl(idx, polygon); + polygonGroup.group.add(polygon); + } + }).update(function (newIdx, oldIdx) { + var polygon = inner$j(polygonGroup).data.getItemGraphicEl(oldIdx); + var layout = areaData.getItemLayout(newIdx); + if (!layout.allClipped) { + if (polygon) { + updateProps(polygon, { + shape: { + points: layout.points + } + }, maModel, newIdx); + } else { + polygon = new Polygon({ + shape: { + points: layout.points + } + }); + } + areaData.setItemGraphicEl(newIdx, polygon); + polygonGroup.group.add(polygon); + } else if (polygon) { + polygonGroup.group.remove(polygon); + } + }).remove(function (idx) { + var polygon = inner$j(polygonGroup).data.getItemGraphicEl(idx); + polygonGroup.group.remove(polygon); + }).execute(); + areaData.eachItemGraphicEl(function (polygon, idx) { + var itemModel = areaData.getItemModel(idx); + var style = areaData.getItemVisual(idx, 'style'); + polygon.useStyle(areaData.getItemVisual(idx, 'style')); + setLabelStyle(polygon, getLabelStatesModels(itemModel), { + labelFetcher: maModel, + labelDataIndex: idx, + defaultText: areaData.getName(idx) || '', + inheritColor: isString(style.fill) ? modifyAlpha(style.fill, 1) : '#000' + }); + setStatesStylesFromModel(polygon, itemModel); + toggleHoverEmphasis(polygon, null, null, itemModel.get(['emphasis', 'disabled'])); + getECData(polygon).dataModel = maModel; + }); + inner$j(polygonGroup).data = areaData; + polygonGroup.group.silent = maModel.get('silent') || seriesModel.get('silent'); + }; + MarkAreaView.type = 'markArea'; + return MarkAreaView; + }(MarkerView); + function createList$2(coordSys, seriesModel, maModel) { + var areaData; + var dataDims; + var dims = ['x0', 'y0', 'x1', 'y1']; + if (coordSys) { + var coordDimsInfos_1 = map(coordSys && coordSys.dimensions, function (coordDim) { + var data = seriesModel.getData(); + var info = data.getDimensionInfo(data.mapDimension(coordDim)) || {}; + // In map series data don't have lng and lat dimension. Fallback to same with coordSys + return extend(extend({}, info), { + name: coordDim, + // DON'T use ordinalMeta to parse and collect ordinal. + ordinalMeta: null + }); + }); + dataDims = map(dims, function (dim, idx) { + return { + name: dim, + type: coordDimsInfos_1[idx % 2].type + }; + }); + areaData = new SeriesData(dataDims, maModel); + } else { + dataDims = [{ + name: 'value', + type: 'float' + }]; + areaData = new SeriesData(dataDims, maModel); + } + var optData = map(maModel.get('data'), curry(markAreaTransform, seriesModel, coordSys, maModel)); + if (coordSys) { + optData = filter(optData, curry(markAreaFilter, coordSys)); + } + var dimValueGetter = coordSys ? function (item, dimName, dataIndex, dimIndex) { + // TODO should convert to ParsedValue? + var rawVal = item.coord[Math.floor(dimIndex / 2)][dimIndex % 2]; + return parseDataValue(rawVal, dataDims[dimIndex]); + } : function (item, dimName, dataIndex, dimIndex) { + return parseDataValue(item.value, dataDims[dimIndex]); + }; + areaData.initData(optData, null, dimValueGetter); + areaData.hasItemOption = true; + return areaData; + } + + function install$G(registers) { + registers.registerComponentModel(MarkAreaModel); + registers.registerComponentView(MarkAreaView); + registers.registerPreprocessor(function (opt) { + if (checkMarkerInSeries(opt.series, 'markArea')) { + // Make sure markArea component is enabled + opt.markArea = opt.markArea || {}; + } + }); + } + + var getDefaultSelectorOptions = function (ecModel, type) { + if (type === 'all') { + return { + type: 'all', + title: ecModel.getLocaleModel().get(['legend', 'selector', 'all']) + }; + } else if (type === 'inverse') { + return { + type: 'inverse', + title: ecModel.getLocaleModel().get(['legend', 'selector', 'inverse']) + }; + } + }; + var LegendModel = /** @class */function (_super) { + __extends(LegendModel, _super); + function LegendModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = LegendModel.type; + _this.layoutMode = { + type: 'box', + // legend.width/height are maxWidth/maxHeight actually, + // whereas real width/height is calculated by its content. + // (Setting {left: 10, right: 10} does not make sense). + // So consider the case: + // `setOption({legend: {left: 10});` + // then `setOption({legend: {right: 10});` + // The previous `left` should be cleared by setting `ignoreSize`. + ignoreSize: true + }; + return _this; + } + LegendModel.prototype.init = function (option, parentModel, ecModel) { + this.mergeDefaultAndTheme(option, ecModel); + option.selected = option.selected || {}; + this._updateSelector(option); + }; + LegendModel.prototype.mergeOption = function (option, ecModel) { + _super.prototype.mergeOption.call(this, option, ecModel); + this._updateSelector(option); + }; + LegendModel.prototype._updateSelector = function (option) { + var selector = option.selector; + var ecModel = this.ecModel; + if (selector === true) { + selector = option.selector = ['all', 'inverse']; + } + if (isArray(selector)) { + each(selector, function (item, index) { + isString(item) && (item = { + type: item + }); + selector[index] = merge(item, getDefaultSelectorOptions(ecModel, item.type)); + }); + } + }; + LegendModel.prototype.optionUpdated = function () { + this._updateData(this.ecModel); + var legendData = this._data; + // If selectedMode is single, try to select one + if (legendData[0] && this.get('selectedMode') === 'single') { + var hasSelected = false; + // If has any selected in option.selected + for (var i = 0; i < legendData.length; i++) { + var name_1 = legendData[i].get('name'); + if (this.isSelected(name_1)) { + // Force to unselect others + this.select(name_1); + hasSelected = true; + break; + } + } + // Try select the first if selectedMode is single + !hasSelected && this.select(legendData[0].get('name')); + } + }; + LegendModel.prototype._updateData = function (ecModel) { + var potentialData = []; + var availableNames = []; + ecModel.eachRawSeries(function (seriesModel) { + var seriesName = seriesModel.name; + availableNames.push(seriesName); + var isPotential; + if (seriesModel.legendVisualProvider) { + var provider = seriesModel.legendVisualProvider; + var names = provider.getAllNames(); + if (!ecModel.isSeriesFiltered(seriesModel)) { + availableNames = availableNames.concat(names); + } + if (names.length) { + potentialData = potentialData.concat(names); + } else { + isPotential = true; + } + } else { + isPotential = true; + } + if (isPotential && isNameSpecified(seriesModel)) { + potentialData.push(seriesModel.name); + } + }); + /** + * @type {Array.<string>} + * @private + */ + this._availableNames = availableNames; + // If legend.data is not specified in option, use availableNames as data, + // which is convenient for user preparing option. + var rawData = this.get('data') || potentialData; + var legendNameMap = createHashMap(); + var legendData = map(rawData, function (dataItem) { + // Can be string or number + if (isString(dataItem) || isNumber(dataItem)) { + dataItem = { + name: dataItem + }; + } + if (legendNameMap.get(dataItem.name)) { + // remove legend name duplicate + return null; + } + legendNameMap.set(dataItem.name, true); + return new Model(dataItem, this, this.ecModel); + }, this); + /** + * @type {Array.<module:echarts/model/Model>} + * @private + */ + this._data = filter(legendData, function (item) { + return !!item; + }); + }; + LegendModel.prototype.getData = function () { + return this._data; + }; + LegendModel.prototype.select = function (name) { + var selected = this.option.selected; + var selectedMode = this.get('selectedMode'); + if (selectedMode === 'single') { + var data = this._data; + each(data, function (dataItem) { + selected[dataItem.get('name')] = false; + }); + } + selected[name] = true; + }; + LegendModel.prototype.unSelect = function (name) { + if (this.get('selectedMode') !== 'single') { + this.option.selected[name] = false; + } + }; + LegendModel.prototype.toggleSelected = function (name) { + var selected = this.option.selected; + // Default is true + if (!selected.hasOwnProperty(name)) { + selected[name] = true; + } + this[selected[name] ? 'unSelect' : 'select'](name); + }; + LegendModel.prototype.allSelect = function () { + var data = this._data; + var selected = this.option.selected; + each(data, function (dataItem) { + selected[dataItem.get('name', true)] = true; + }); + }; + LegendModel.prototype.inverseSelect = function () { + var data = this._data; + var selected = this.option.selected; + each(data, function (dataItem) { + var name = dataItem.get('name', true); + // Initially, default value is true + if (!selected.hasOwnProperty(name)) { + selected[name] = true; + } + selected[name] = !selected[name]; + }); + }; + LegendModel.prototype.isSelected = function (name) { + var selected = this.option.selected; + return !(selected.hasOwnProperty(name) && !selected[name]) && indexOf(this._availableNames, name) >= 0; + }; + LegendModel.prototype.getOrient = function () { + return this.get('orient') === 'vertical' ? { + index: 1, + name: 'vertical' + } : { + index: 0, + name: 'horizontal' + }; + }; + LegendModel.type = 'legend.plain'; + LegendModel.dependencies = ['series']; + LegendModel.defaultOption = { + // zlevel: 0, + z: 4, + show: true, + orient: 'horizontal', + left: 'center', + // right: 'center', + top: 0, + // bottom: null, + 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: true, + 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: true, + selector: false, + selectorLabel: { + show: true, + borderRadius: 10, + padding: [3, 5, 3, 5], + fontSize: 12, + fontFamily: 'sans-serif', + color: '#666', + borderWidth: 1, + borderColor: '#666' + }, + emphasis: { + selectorLabel: { + show: true, + color: '#eee', + backgroundColor: '#666' + } + }, + selectorPosition: 'auto', + selectorItemGap: 7, + selectorButtonGap: 10, + tooltip: { + show: false + } + }; + return LegendModel; + }(ComponentModel); + + var curry$1 = curry; + var each$c = each; + var Group$2 = Group; + var LegendView = /** @class */function (_super) { + __extends(LegendView, _super); + function LegendView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = LegendView.type; + _this.newlineDisabled = false; + return _this; + } + LegendView.prototype.init = function () { + this.group.add(this._contentGroup = new Group$2()); + this.group.add(this._selectorGroup = new Group$2()); + this._isFirstRender = true; + }; + /** + * @protected + */ + LegendView.prototype.getContentGroup = function () { + return this._contentGroup; + }; + /** + * @protected + */ + LegendView.prototype.getSelectorGroup = function () { + return this._selectorGroup; + }; + /** + * @override + */ + LegendView.prototype.render = function (legendModel, ecModel, api) { + var isFirstRender = this._isFirstRender; + this._isFirstRender = false; + this.resetInner(); + if (!legendModel.get('show', true)) { + return; + } + var itemAlign = legendModel.get('align'); + var orient = legendModel.get('orient'); + if (!itemAlign || itemAlign === 'auto') { + itemAlign = legendModel.get('left') === 'right' && orient === 'vertical' ? 'right' : 'left'; + } + // selector has been normalized to an array in model + var selector = legendModel.get('selector', true); + var selectorPosition = legendModel.get('selectorPosition', true); + if (selector && (!selectorPosition || selectorPosition === 'auto')) { + selectorPosition = orient === 'horizontal' ? 'end' : 'start'; + } + this.renderInner(itemAlign, legendModel, ecModel, api, selector, orient, selectorPosition); + // Perform layout. + var positionInfo = legendModel.getBoxLayoutParams(); + var viewportSize = { + width: api.getWidth(), + height: api.getHeight() + }; + var padding = legendModel.get('padding'); + var maxSize = getLayoutRect(positionInfo, viewportSize, padding); + var mainRect = this.layoutInner(legendModel, itemAlign, maxSize, isFirstRender, selector, selectorPosition); + // Place mainGroup, based on the calculated `mainRect`. + var layoutRect = getLayoutRect(defaults({ + width: mainRect.width, + height: mainRect.height + }, positionInfo), viewportSize, padding); + this.group.x = layoutRect.x - mainRect.x; + this.group.y = layoutRect.y - mainRect.y; + this.group.markRedraw(); + // Render background after group is layout. + this.group.add(this._backgroundEl = makeBackground(mainRect, legendModel)); + }; + LegendView.prototype.resetInner = function () { + this.getContentGroup().removeAll(); + this._backgroundEl && this.group.remove(this._backgroundEl); + this.getSelectorGroup().removeAll(); + }; + LegendView.prototype.renderInner = function (itemAlign, legendModel, ecModel, api, selector, orient, selectorPosition) { + var contentGroup = this.getContentGroup(); + var legendDrawnMap = createHashMap(); + var selectMode = legendModel.get('selectedMode'); + var excludeSeriesId = []; + ecModel.eachRawSeries(function (seriesModel) { + !seriesModel.get('legendHoverLink') && excludeSeriesId.push(seriesModel.id); + }); + each$c(legendModel.getData(), function (legendItemModel, dataIndex) { + var name = legendItemModel.get('name'); + // Use empty string or \n as a newline string + if (!this.newlineDisabled && (name === '' || name === '\n')) { + var g = new Group$2(); + // @ts-ignore + g.newline = true; + contentGroup.add(g); + return; + } + // Representitive series. + var seriesModel = ecModel.getSeriesByName(name)[0]; + if (legendDrawnMap.get(name)) { + // Have been drawn + return; + } + // Legend to control series. + if (seriesModel) { + var data = seriesModel.getData(); + var lineVisualStyle = data.getVisual('legendLineStyle') || {}; + var legendIcon = data.getVisual('legendIcon'); + /** + * `data.getVisual('style')` may be the color from the register + * in series. For example, for line series, + */ + var style = data.getVisual('style'); + var itemGroup = this._createItem(seriesModel, name, dataIndex, legendItemModel, legendModel, itemAlign, lineVisualStyle, style, legendIcon, selectMode, api); + itemGroup.on('click', curry$1(dispatchSelectAction, name, null, api, excludeSeriesId)).on('mouseover', curry$1(dispatchHighlightAction, seriesModel.name, null, api, excludeSeriesId)).on('mouseout', curry$1(dispatchDownplayAction, seriesModel.name, null, api, excludeSeriesId)); + if (ecModel.ssr) { + itemGroup.eachChild(function (child) { + var ecData = getECData(child); + ecData.seriesIndex = seriesModel.seriesIndex; + ecData.dataIndex = dataIndex; + ecData.ssrType = 'legend'; + }); + } + legendDrawnMap.set(name, true); + } else { + // Legend to control data. In pie and funnel. + ecModel.eachRawSeries(function (seriesModel) { + // In case multiple series has same data name + if (legendDrawnMap.get(name)) { + return; + } + if (seriesModel.legendVisualProvider) { + var provider = seriesModel.legendVisualProvider; + if (!provider.containName(name)) { + return; + } + var idx = provider.indexOfName(name); + var style = provider.getItemVisual(idx, 'style'); + var legendIcon = provider.getItemVisual(idx, 'legendIcon'); + var colorArr = parse(style.fill); + // Color may be set to transparent in visualMap when data is out of range. + // Do not show nothing. + if (colorArr && colorArr[3] === 0) { + colorArr[3] = 0.2; + // TODO color is set to 0, 0, 0, 0. Should show correct RGBA + style = extend(extend({}, style), { + fill: stringify(colorArr, 'rgba') + }); + } + var itemGroup = this._createItem(seriesModel, name, dataIndex, legendItemModel, legendModel, itemAlign, {}, style, legendIcon, selectMode, api); + // FIXME: consider different series has items with the same name. + itemGroup.on('click', curry$1(dispatchSelectAction, null, name, api, excludeSeriesId)) + // Should not specify the series name, consider legend controls + // more than one pie series. + .on('mouseover', curry$1(dispatchHighlightAction, null, name, api, excludeSeriesId)).on('mouseout', curry$1(dispatchDownplayAction, null, name, api, excludeSeriesId)); + if (ecModel.ssr) { + itemGroup.eachChild(function (child) { + var ecData = getECData(child); + ecData.seriesIndex = seriesModel.seriesIndex; + ecData.dataIndex = dataIndex; + ecData.ssrType = 'legend'; + }); + } + legendDrawnMap.set(name, true); + } + }, this); + } + if ("development" !== 'production') { + if (!legendDrawnMap.get(name)) { + console.warn(name + ' series not exists. Legend data should be same with series name or data name.'); + } + } + }, this); + if (selector) { + this._createSelector(selector, legendModel, api, orient, selectorPosition); + } + }; + LegendView.prototype._createSelector = function (selector, legendModel, api, orient, selectorPosition) { + var selectorGroup = this.getSelectorGroup(); + each$c(selector, function createSelectorButton(selectorItem) { + var type = selectorItem.type; + var labelText = new ZRText({ + style: { + x: 0, + y: 0, + align: 'center', + verticalAlign: 'middle' + }, + onclick: function () { + api.dispatchAction({ + type: type === 'all' ? 'legendAllSelect' : 'legendInverseSelect' + }); + } + }); + selectorGroup.add(labelText); + var labelModel = legendModel.getModel('selectorLabel'); + var emphasisLabelModel = legendModel.getModel(['emphasis', 'selectorLabel']); + setLabelStyle(labelText, { + normal: labelModel, + emphasis: emphasisLabelModel + }, { + defaultText: selectorItem.title + }); + enableHoverEmphasis(labelText); + }); + }; + LegendView.prototype._createItem = function (seriesModel, name, dataIndex, legendItemModel, legendModel, itemAlign, lineVisualStyle, itemVisualStyle, legendIcon, selectMode, api) { + var drawType = seriesModel.visualDrawType; + var itemWidth = legendModel.get('itemWidth'); + var itemHeight = legendModel.get('itemHeight'); + var isSelected = legendModel.isSelected(name); + var iconRotate = legendItemModel.get('symbolRotate'); + var symbolKeepAspect = legendItemModel.get('symbolKeepAspect'); + var legendIconType = legendItemModel.get('icon'); + legendIcon = legendIconType || legendIcon || 'roundRect'; + var style = getLegendStyle(legendIcon, legendItemModel, lineVisualStyle, itemVisualStyle, drawType, isSelected, api); + var itemGroup = new Group$2(); + var textStyleModel = legendItemModel.getModel('textStyle'); + if (isFunction(seriesModel.getLegendIcon) && (!legendIconType || legendIconType === 'inherit')) { + // Series has specific way to define legend icon + itemGroup.add(seriesModel.getLegendIcon({ + itemWidth: itemWidth, + itemHeight: itemHeight, + icon: legendIcon, + iconRotate: iconRotate, + itemStyle: style.itemStyle, + lineStyle: style.lineStyle, + symbolKeepAspect: symbolKeepAspect + })); + } else { + // Use default legend icon policy for most series + var rotate = legendIconType === 'inherit' && seriesModel.getData().getVisual('symbol') ? iconRotate === 'inherit' ? seriesModel.getData().getVisual('symbolRotate') : iconRotate : 0; // No rotation for no icon + itemGroup.add(getDefaultLegendIcon({ + itemWidth: itemWidth, + itemHeight: itemHeight, + icon: legendIcon, + iconRotate: rotate, + itemStyle: style.itemStyle, + lineStyle: style.lineStyle, + symbolKeepAspect: symbolKeepAspect + })); + } + var textX = itemAlign === 'left' ? itemWidth + 5 : -5; + var textAlign = itemAlign; + var formatter = legendModel.get('formatter'); + var content = name; + if (isString(formatter) && formatter) { + content = formatter.replace('{name}', name != null ? name : ''); + } else if (isFunction(formatter)) { + content = formatter(name); + } + var textColor = isSelected ? textStyleModel.getTextColor() : legendItemModel.get('inactiveColor'); + itemGroup.add(new ZRText({ + style: createTextStyle(textStyleModel, { + text: content, + x: textX, + y: itemHeight / 2, + fill: textColor, + align: textAlign, + verticalAlign: 'middle' + }, { + inheritColor: textColor + }) + })); + // Add a invisible rect to increase the area of mouse hover + var hitRect = new Rect({ + shape: itemGroup.getBoundingRect(), + style: { + // Cannot use 'invisible' because SVG SSR will miss the node + fill: 'transparent' + } + }); + var tooltipModel = legendItemModel.getModel('tooltip'); + if (tooltipModel.get('show')) { + setTooltipConfig({ + el: hitRect, + componentModel: legendModel, + itemName: name, + itemTooltipOption: tooltipModel.option + }); + } + itemGroup.add(hitRect); + itemGroup.eachChild(function (child) { + child.silent = true; + }); + hitRect.silent = !selectMode; + this.getContentGroup().add(itemGroup); + enableHoverEmphasis(itemGroup); + // @ts-ignore + itemGroup.__legendDataIndex = dataIndex; + return itemGroup; + }; + LegendView.prototype.layoutInner = function (legendModel, itemAlign, maxSize, isFirstRender, selector, selectorPosition) { + var contentGroup = this.getContentGroup(); + var selectorGroup = this.getSelectorGroup(); + // Place items in contentGroup. + box(legendModel.get('orient'), contentGroup, legendModel.get('itemGap'), maxSize.width, maxSize.height); + var contentRect = contentGroup.getBoundingRect(); + var contentPos = [-contentRect.x, -contentRect.y]; + selectorGroup.markRedraw(); + contentGroup.markRedraw(); + if (selector) { + // Place buttons in selectorGroup + box( + // Buttons in selectorGroup always layout horizontally + 'horizontal', selectorGroup, legendModel.get('selectorItemGap', true)); + var selectorRect = selectorGroup.getBoundingRect(); + var selectorPos = [-selectorRect.x, -selectorRect.y]; + var selectorButtonGap = legendModel.get('selectorButtonGap', true); + var orientIdx = legendModel.getOrient().index; + var wh = orientIdx === 0 ? 'width' : 'height'; + var hw = orientIdx === 0 ? 'height' : 'width'; + var yx = orientIdx === 0 ? 'y' : 'x'; + if (selectorPosition === 'end') { + selectorPos[orientIdx] += contentRect[wh] + selectorButtonGap; + } else { + contentPos[orientIdx] += selectorRect[wh] + selectorButtonGap; + } + // Always align selector to content as 'middle' + selectorPos[1 - orientIdx] += contentRect[hw] / 2 - selectorRect[hw] / 2; + selectorGroup.x = selectorPos[0]; + selectorGroup.y = selectorPos[1]; + contentGroup.x = contentPos[0]; + contentGroup.y = contentPos[1]; + var mainRect = { + x: 0, + y: 0 + }; + mainRect[wh] = contentRect[wh] + selectorButtonGap + selectorRect[wh]; + mainRect[hw] = Math.max(contentRect[hw], selectorRect[hw]); + mainRect[yx] = Math.min(0, selectorRect[yx] + selectorPos[1 - orientIdx]); + return mainRect; + } else { + contentGroup.x = contentPos[0]; + contentGroup.y = contentPos[1]; + return this.group.getBoundingRect(); + } + }; + /** + * @protected + */ + LegendView.prototype.remove = function () { + this.getContentGroup().removeAll(); + this._isFirstRender = true; + }; + LegendView.type = 'legend.plain'; + return LegendView; + }(ComponentView); + function getLegendStyle(iconType, legendItemModel, lineVisualStyle, itemVisualStyle, drawType, isSelected, api) { + /** + * Use series style if is inherit; + * elsewise, use legend style + */ + function handleCommonProps(style, visualStyle) { + // If lineStyle.width is 'auto', it is set to be 2 if series has border + if (style.lineWidth === 'auto') { + style.lineWidth = visualStyle.lineWidth > 0 ? 2 : 0; + } + each$c(style, function (propVal, propName) { + style[propName] === 'inherit' && (style[propName] = visualStyle[propName]); + }); + } + // itemStyle + var itemStyleModel = legendItemModel.getModel('itemStyle'); + var itemStyle = itemStyleModel.getItemStyle(); + var iconBrushType = iconType.lastIndexOf('empty', 0) === 0 ? 'fill' : 'stroke'; + var decalStyle = itemStyleModel.getShallow('decal'); + itemStyle.decal = !decalStyle || decalStyle === 'inherit' ? itemVisualStyle.decal : createOrUpdatePatternFromDecal(decalStyle, api); + if (itemStyle.fill === 'inherit') { + /** + * Series with visualDrawType as 'stroke' should have + * series stroke as legend fill + */ + itemStyle.fill = itemVisualStyle[drawType]; + } + if (itemStyle.stroke === 'inherit') { + /** + * icon type with "emptyXXX" should use fill color + * in visual style + */ + itemStyle.stroke = itemVisualStyle[iconBrushType]; + } + if (itemStyle.opacity === 'inherit') { + /** + * Use lineStyle.opacity if drawType is stroke + */ + itemStyle.opacity = (drawType === 'fill' ? itemVisualStyle : lineVisualStyle).opacity; + } + handleCommonProps(itemStyle, itemVisualStyle); + // lineStyle + var legendLineModel = legendItemModel.getModel('lineStyle'); + var lineStyle = legendLineModel.getLineStyle(); + handleCommonProps(lineStyle, lineVisualStyle); + // Fix auto color to real color + itemStyle.fill === 'auto' && (itemStyle.fill = itemVisualStyle.fill); + itemStyle.stroke === 'auto' && (itemStyle.stroke = itemVisualStyle.fill); + lineStyle.stroke === 'auto' && (lineStyle.stroke = itemVisualStyle.fill); + if (!isSelected) { + var borderWidth = legendItemModel.get('inactiveBorderWidth'); + /** + * Since stroke is set to be inactiveBorderColor, it may occur that + * there is no border in series but border in legend, so we need to + * use border only when series has border if is set to be auto + */ + var visualHasBorder = itemStyle[iconBrushType]; + itemStyle.lineWidth = borderWidth === 'auto' ? itemVisualStyle.lineWidth > 0 && visualHasBorder ? 2 : 0 : itemStyle.lineWidth; + itemStyle.fill = legendItemModel.get('inactiveColor'); + itemStyle.stroke = legendItemModel.get('inactiveBorderColor'); + lineStyle.stroke = legendLineModel.get('inactiveColor'); + lineStyle.lineWidth = legendLineModel.get('inactiveWidth'); + } + return { + itemStyle: itemStyle, + lineStyle: lineStyle + }; + } + function getDefaultLegendIcon(opt) { + var symboType = opt.icon || 'roundRect'; + var icon = createSymbol(symboType, 0, 0, opt.itemWidth, opt.itemHeight, opt.itemStyle.fill, opt.symbolKeepAspect); + icon.setStyle(opt.itemStyle); + icon.rotation = (opt.iconRotate || 0) * Math.PI / 180; + icon.setOrigin([opt.itemWidth / 2, opt.itemHeight / 2]); + if (symboType.indexOf('empty') > -1) { + icon.style.stroke = icon.style.fill; + icon.style.fill = '#fff'; + icon.style.lineWidth = 2; + } + return icon; + } + function dispatchSelectAction(seriesName, dataName, api, excludeSeriesId) { + // downplay before unselect + dispatchDownplayAction(seriesName, dataName, api, excludeSeriesId); + api.dispatchAction({ + type: 'legendToggleSelect', + name: seriesName != null ? seriesName : dataName + }); + // highlight after select + // TODO highlight immediately may cause animation loss. + dispatchHighlightAction(seriesName, dataName, api, excludeSeriesId); + } + function isUseHoverLayer(api) { + var list = api.getZr().storage.getDisplayList(); + var emphasisState; + var i = 0; + var len = list.length; + while (i < len && !(emphasisState = list[i].states.emphasis)) { + i++; + } + return emphasisState && emphasisState.hoverLayer; + } + function dispatchHighlightAction(seriesName, dataName, api, excludeSeriesId) { + // If element hover will move to a hoverLayer. + if (!isUseHoverLayer(api)) { + api.dispatchAction({ + type: 'highlight', + seriesName: seriesName, + name: dataName, + excludeSeriesId: excludeSeriesId + }); + } + } + function dispatchDownplayAction(seriesName, dataName, api, excludeSeriesId) { + // If element hover will move to a hoverLayer. + if (!isUseHoverLayer(api)) { + api.dispatchAction({ + type: 'downplay', + seriesName: seriesName, + name: dataName, + excludeSeriesId: excludeSeriesId + }); + } + } + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + + /** + * AUTO-GENERATED FILE. DO NOT MODIFY. + */ + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + function legendFilter(ecModel) { + var legendModels = ecModel.findComponents({ + mainType: 'legend' + }); + if (legendModels && legendModels.length) { + ecModel.filterSeries(function (series) { + // If in any legend component the status is not selected. + // Because in legend series is assumed selected when it is not in the legend data. + for (var i = 0; i < legendModels.length; i++) { + if (!legendModels[i].isSelected(series.name)) { + return false; + } + } + return true; + }); + } + } + + function legendSelectActionHandler(methodName, payload, ecModel) { + var selectedMap = {}; + var isToggleSelect = methodName === 'toggleSelected'; + var isSelected; + // Update all legend components + ecModel.eachComponent('legend', function (legendModel) { + if (isToggleSelect && isSelected != null) { + // Force other legend has same selected status + // Or the first is toggled to true and other are toggled to false + // In the case one legend has some item unSelected in option. And if other legend + // doesn't has the item, they will assume it is selected. + legendModel[isSelected ? 'select' : 'unSelect'](payload.name); + } else if (methodName === 'allSelect' || methodName === 'inverseSelect') { + legendModel[methodName](); + } else { + legendModel[methodName](payload.name); + isSelected = legendModel.isSelected(payload.name); + } + var legendData = legendModel.getData(); + each(legendData, function (model) { + var name = model.get('name'); + // Wrap element + if (name === '\n' || name === '') { + return; + } + var isItemSelected = legendModel.isSelected(name); + if (selectedMap.hasOwnProperty(name)) { + // Unselected if any legend is unselected + selectedMap[name] = selectedMap[name] && isItemSelected; + } else { + selectedMap[name] = isItemSelected; + } + }); + }); + // Return the event explicitly + return methodName === 'allSelect' || methodName === 'inverseSelect' ? { + selected: selectedMap + } : { + name: payload.name, + selected: selectedMap + }; + } + function installLegendAction(registers) { + /** + * @event legendToggleSelect + * @type {Object} + * @property {string} type 'legendToggleSelect' + * @property {string} [from] + * @property {string} name Series name or data item name + */ + registers.registerAction('legendToggleSelect', 'legendselectchanged', curry(legendSelectActionHandler, 'toggleSelected')); + registers.registerAction('legendAllSelect', 'legendselectall', curry(legendSelectActionHandler, 'allSelect')); + registers.registerAction('legendInverseSelect', 'legendinverseselect', curry(legendSelectActionHandler, 'inverseSelect')); + /** + * @event legendSelect + * @type {Object} + * @property {string} type 'legendSelect' + * @property {string} name Series name or data item name + */ + registers.registerAction('legendSelect', 'legendselected', curry(legendSelectActionHandler, 'select')); + /** + * @event legendUnSelect + * @type {Object} + * @property {string} type 'legendUnSelect' + * @property {string} name Series name or data item name + */ + registers.registerAction('legendUnSelect', 'legendunselected', curry(legendSelectActionHandler, 'unSelect')); + } + + function install$H(registers) { + registers.registerComponentModel(LegendModel); + registers.registerComponentView(LegendView); + registers.registerProcessor(registers.PRIORITY.PROCESSOR.SERIES_FILTER, legendFilter); + registers.registerSubTypeDefaulter('legend', function () { + return 'plain'; + }); + installLegendAction(registers); + } + + var ScrollableLegendModel = /** @class */function (_super) { + __extends(ScrollableLegendModel, _super); + function ScrollableLegendModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = ScrollableLegendModel.type; + return _this; + } + /** + * @param {number} scrollDataIndex + */ + ScrollableLegendModel.prototype.setScrollDataIndex = function (scrollDataIndex) { + this.option.scrollDataIndex = scrollDataIndex; + }; + ScrollableLegendModel.prototype.init = function (option, parentModel, ecModel) { + var inputPositionParams = getLayoutParams(option); + _super.prototype.init.call(this, option, parentModel, ecModel); + mergeAndNormalizeLayoutParams$1(this, option, inputPositionParams); + }; + /** + * @override + */ + ScrollableLegendModel.prototype.mergeOption = function (option, ecModel) { + _super.prototype.mergeOption.call(this, option, ecModel); + mergeAndNormalizeLayoutParams$1(this, this.option, option); + }; + ScrollableLegendModel.type = 'legend.scroll'; + ScrollableLegendModel.defaultOption = inheritDefaultOption(LegendModel.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 + }); + return ScrollableLegendModel; + }(LegendModel); + // Do not `ignoreSize` to enable setting {left: 10, right: 10}. + function mergeAndNormalizeLayoutParams$1(legendModel, target, raw) { + var orient = legendModel.getOrient(); + var ignoreSize = [1, 1]; + ignoreSize[orient.index] = 0; + mergeLayoutParam(target, raw, { + type: 'box', + ignoreSize: !!ignoreSize + }); + } + + var Group$3 = Group; + var WH$1 = ['width', 'height']; + var XY$1 = ['x', 'y']; + var ScrollableLegendView = /** @class */function (_super) { + __extends(ScrollableLegendView, _super); + function ScrollableLegendView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = ScrollableLegendView.type; + _this.newlineDisabled = true; + _this._currentIndex = 0; + return _this; + } + ScrollableLegendView.prototype.init = function () { + _super.prototype.init.call(this); + this.group.add(this._containerGroup = new Group$3()); + this._containerGroup.add(this.getContentGroup()); + this.group.add(this._controllerGroup = new Group$3()); + }; + /** + * @override + */ + ScrollableLegendView.prototype.resetInner = function () { + _super.prototype.resetInner.call(this); + this._controllerGroup.removeAll(); + this._containerGroup.removeClipPath(); + this._containerGroup.__rectSize = null; + }; + /** + * @override + */ + ScrollableLegendView.prototype.renderInner = function (itemAlign, legendModel, ecModel, api, selector, orient, selectorPosition) { + var self = this; + // Render content items. + _super.prototype.renderInner.call(this, itemAlign, legendModel, ecModel, api, selector, orient, selectorPosition); + var controllerGroup = this._controllerGroup; + // FIXME: support be 'auto' adapt to size number text length, + // e.g., '3/12345' should not overlap with the control arrow button. + var pageIconSize = legendModel.get('pageIconSize', true); + var pageIconSizeArr = isArray(pageIconSize) ? pageIconSize : [pageIconSize, pageIconSize]; + createPageButton('pagePrev', 0); + var pageTextStyleModel = legendModel.getModel('pageTextStyle'); + controllerGroup.add(new ZRText({ + name: 'pageText', + style: { + // Placeholder to calculate a proper layout. + text: 'xx/xx', + fill: pageTextStyleModel.getTextColor(), + font: pageTextStyleModel.getFont(), + verticalAlign: 'middle', + align: 'center' + }, + silent: true + })); + createPageButton('pageNext', 1); + function createPageButton(name, iconIdx) { + var pageDataIndexName = name + 'DataIndex'; + var icon = createIcon(legendModel.get('pageIcons', true)[legendModel.getOrient().name][iconIdx], { + // Buttons will be created in each render, so we do not need + // to worry about avoiding using legendModel kept in scope. + onclick: bind(self._pageGo, self, pageDataIndexName, legendModel, api) + }, { + x: -pageIconSizeArr[0] / 2, + y: -pageIconSizeArr[1] / 2, + width: pageIconSizeArr[0], + height: pageIconSizeArr[1] + }); + icon.name = name; + controllerGroup.add(icon); + } + }; + /** + * @override + */ + ScrollableLegendView.prototype.layoutInner = function (legendModel, itemAlign, maxSize, isFirstRender, selector, selectorPosition) { + var selectorGroup = this.getSelectorGroup(); + var orientIdx = legendModel.getOrient().index; + var wh = WH$1[orientIdx]; + var xy = XY$1[orientIdx]; + var hw = WH$1[1 - orientIdx]; + var yx = XY$1[1 - orientIdx]; + selector && box( + // Buttons in selectorGroup always layout horizontally + 'horizontal', selectorGroup, legendModel.get('selectorItemGap', true)); + var selectorButtonGap = legendModel.get('selectorButtonGap', true); + var selectorRect = selectorGroup.getBoundingRect(); + var selectorPos = [-selectorRect.x, -selectorRect.y]; + var processMaxSize = clone(maxSize); + selector && (processMaxSize[wh] = maxSize[wh] - selectorRect[wh] - selectorButtonGap); + var mainRect = this._layoutContentAndController(legendModel, isFirstRender, processMaxSize, orientIdx, wh, hw, yx, xy); + if (selector) { + if (selectorPosition === 'end') { + selectorPos[orientIdx] += mainRect[wh] + selectorButtonGap; + } else { + var offset = selectorRect[wh] + selectorButtonGap; + selectorPos[orientIdx] -= offset; + mainRect[xy] -= offset; + } + mainRect[wh] += selectorRect[wh] + selectorButtonGap; + selectorPos[1 - orientIdx] += mainRect[yx] + mainRect[hw] / 2 - selectorRect[hw] / 2; + mainRect[hw] = Math.max(mainRect[hw], selectorRect[hw]); + mainRect[yx] = Math.min(mainRect[yx], selectorRect[yx] + selectorPos[1 - orientIdx]); + selectorGroup.x = selectorPos[0]; + selectorGroup.y = selectorPos[1]; + selectorGroup.markRedraw(); + } + return mainRect; + }; + ScrollableLegendView.prototype._layoutContentAndController = function (legendModel, isFirstRender, maxSize, orientIdx, wh, hw, yx, xy) { + var contentGroup = this.getContentGroup(); + var containerGroup = this._containerGroup; + var controllerGroup = this._controllerGroup; + // Place items in contentGroup. + box(legendModel.get('orient'), contentGroup, legendModel.get('itemGap'), !orientIdx ? null : maxSize.width, orientIdx ? null : maxSize.height); + box( + // Buttons in controller are layout always horizontally. + 'horizontal', controllerGroup, legendModel.get('pageButtonItemGap', true)); + var contentRect = contentGroup.getBoundingRect(); + var controllerRect = controllerGroup.getBoundingRect(); + var showController = this._showController = contentRect[wh] > maxSize[wh]; + // In case that the inner elements of contentGroup layout do not based on [0, 0] + var contentPos = [-contentRect.x, -contentRect.y]; + // Remain contentPos when scroll animation perfroming. + // If first rendering, `contentGroup.position` is [0, 0], which + // does not make sense and may cause unexepcted animation if adopted. + if (!isFirstRender) { + contentPos[orientIdx] = contentGroup[xy]; + } + // Layout container group based on 0. + var containerPos = [0, 0]; + var controllerPos = [-controllerRect.x, -controllerRect.y]; + var pageButtonGap = retrieve2(legendModel.get('pageButtonGap', true), legendModel.get('itemGap', true)); + // Place containerGroup and controllerGroup and contentGroup. + if (showController) { + var pageButtonPosition = legendModel.get('pageButtonPosition', true); + // controller is on the right / bottom. + if (pageButtonPosition === 'end') { + controllerPos[orientIdx] += maxSize[wh] - controllerRect[wh]; + } + // controller is on the left / top. + else { + containerPos[orientIdx] += controllerRect[wh] + pageButtonGap; + } + } + // Always align controller to content as 'middle'. + controllerPos[1 - orientIdx] += contentRect[hw] / 2 - controllerRect[hw] / 2; + contentGroup.setPosition(contentPos); + containerGroup.setPosition(containerPos); + controllerGroup.setPosition(controllerPos); + // Calculate `mainRect` and set `clipPath`. + // mainRect should not be calculated by `this.group.getBoundingRect()` + // for sake of the overflow. + var mainRect = { + x: 0, + y: 0 + }; + // Consider content may be overflow (should be clipped). + mainRect[wh] = showController ? maxSize[wh] : contentRect[wh]; + mainRect[hw] = Math.max(contentRect[hw], controllerRect[hw]); + // `containerRect[yx] + containerPos[1 - orientIdx]` is 0. + mainRect[yx] = Math.min(0, controllerRect[yx] + controllerPos[1 - orientIdx]); + containerGroup.__rectSize = maxSize[wh]; + if (showController) { + var clipShape = { + x: 0, + y: 0 + }; + clipShape[wh] = Math.max(maxSize[wh] - controllerRect[wh] - pageButtonGap, 0); + clipShape[hw] = mainRect[hw]; + containerGroup.setClipPath(new Rect({ + shape: clipShape + })); + // Consider content may be larger than container, container rect + // can not be obtained from `containerGroup.getBoundingRect()`. + containerGroup.__rectSize = clipShape[wh]; + } else { + // Do not remove or ignore controller. Keep them set as placeholders. + controllerGroup.eachChild(function (child) { + child.attr({ + invisible: true, + silent: true + }); + }); + } + // Content translate animation. + var pageInfo = this._getPageInfo(legendModel); + pageInfo.pageIndex != null && updateProps(contentGroup, { + x: pageInfo.contentPosition[0], + y: pageInfo.contentPosition[1] + }, + // When switch from "show controller" to "not show controller", view should be + // updated immediately without animation, otherwise causes weird effect. + showController ? legendModel : null); + this._updatePageInfoView(legendModel, pageInfo); + return mainRect; + }; + ScrollableLegendView.prototype._pageGo = function (to, legendModel, api) { + var scrollDataIndex = this._getPageInfo(legendModel)[to]; + scrollDataIndex != null && api.dispatchAction({ + type: 'legendScroll', + scrollDataIndex: scrollDataIndex, + legendId: legendModel.id + }); + }; + ScrollableLegendView.prototype._updatePageInfoView = function (legendModel, pageInfo) { + var controllerGroup = this._controllerGroup; + each(['pagePrev', 'pageNext'], function (name) { + var key = name + 'DataIndex'; + var canJump = pageInfo[key] != null; + var icon = controllerGroup.childOfName(name); + if (icon) { + icon.setStyle('fill', canJump ? legendModel.get('pageIconColor', true) : legendModel.get('pageIconInactiveColor', true)); + icon.cursor = canJump ? 'pointer' : 'default'; + } + }); + var pageText = controllerGroup.childOfName('pageText'); + var pageFormatter = legendModel.get('pageFormatter'); + var pageIndex = pageInfo.pageIndex; + var current = pageIndex != null ? pageIndex + 1 : 0; + var total = pageInfo.pageCount; + pageText && pageFormatter && pageText.setStyle('text', isString(pageFormatter) ? pageFormatter.replace('{current}', current == null ? '' : current + '').replace('{total}', total == null ? '' : total + '') : pageFormatter({ + current: current, + total: total + })); + }; + /** + * contentPosition: Array.<number>, null when data item not found. + * pageIndex: number, null when data item not found. + * pageCount: number, always be a number, can be 0. + * pagePrevDataIndex: number, null when no previous page. + * pageNextDataIndex: number, null when no next page. + * } + */ + ScrollableLegendView.prototype._getPageInfo = function (legendModel) { + var scrollDataIndex = legendModel.get('scrollDataIndex', true); + var contentGroup = this.getContentGroup(); + var containerRectSize = this._containerGroup.__rectSize; + var orientIdx = legendModel.getOrient().index; + var wh = WH$1[orientIdx]; + var xy = XY$1[orientIdx]; + var targetItemIndex = this._findTargetItemIndex(scrollDataIndex); + var children = contentGroup.children(); + var targetItem = children[targetItemIndex]; + var itemCount = children.length; + var pCount = !itemCount ? 0 : 1; + var result = { + contentPosition: [contentGroup.x, contentGroup.y], + pageCount: pCount, + pageIndex: pCount - 1, + pagePrevDataIndex: null, + pageNextDataIndex: null + }; + if (!targetItem) { + return result; + } + var targetItemInfo = getItemInfo(targetItem); + result.contentPosition[orientIdx] = -targetItemInfo.s; + // Strategy: + // (1) Always align based on the left/top most item. + // (2) It is user-friendly that the last item shown in the + // current window is shown at the begining of next window. + // Otherwise if half of the last item is cut by the window, + // it will have no chance to display entirely. + // (3) Consider that item size probably be different, we + // have calculate pageIndex by size rather than item index, + // and we can not get page index directly by division. + // (4) The window is to narrow to contain more than + // one item, we should make sure that the page can be fliped. + for (var i = targetItemIndex + 1, winStartItemInfo = targetItemInfo, winEndItemInfo = targetItemInfo, currItemInfo = null; i <= itemCount; ++i) { + currItemInfo = getItemInfo(children[i]); + if ( + // Half of the last item is out of the window. + !currItemInfo && winEndItemInfo.e > winStartItemInfo.s + containerRectSize + // If the current item does not intersect with the window, the new page + // can be started at the current item or the last item. + || currItemInfo && !intersect(currItemInfo, winStartItemInfo.s)) { + if (winEndItemInfo.i > winStartItemInfo.i) { + winStartItemInfo = winEndItemInfo; + } else { + // e.g., when page size is smaller than item size. + winStartItemInfo = currItemInfo; + } + if (winStartItemInfo) { + if (result.pageNextDataIndex == null) { + result.pageNextDataIndex = winStartItemInfo.i; + } + ++result.pageCount; + } + } + winEndItemInfo = currItemInfo; + } + for (var i = targetItemIndex - 1, winStartItemInfo = targetItemInfo, winEndItemInfo = targetItemInfo, currItemInfo = null; i >= -1; --i) { + currItemInfo = getItemInfo(children[i]); + if ( + // If the the end item does not intersect with the window started + // from the current item, a page can be settled. + (!currItemInfo || !intersect(winEndItemInfo, currItemInfo.s) + // e.g., when page size is smaller than item size. + ) && winStartItemInfo.i < winEndItemInfo.i) { + winEndItemInfo = winStartItemInfo; + if (result.pagePrevDataIndex == null) { + result.pagePrevDataIndex = winStartItemInfo.i; + } + ++result.pageCount; + ++result.pageIndex; + } + winStartItemInfo = currItemInfo; + } + return result; + function getItemInfo(el) { + if (el) { + var itemRect = el.getBoundingRect(); + var start = itemRect[xy] + el[xy]; + return { + s: start, + e: start + itemRect[wh], + i: el.__legendDataIndex + }; + } + } + function intersect(itemInfo, winStart) { + return itemInfo.e >= winStart && itemInfo.s <= winStart + containerRectSize; + } + }; + ScrollableLegendView.prototype._findTargetItemIndex = function (targetDataIndex) { + if (!this._showController) { + return 0; + } + var index; + var contentGroup = this.getContentGroup(); + var defaultIndex; + contentGroup.eachChild(function (child, idx) { + var legendDataIdx = child.__legendDataIndex; + // FIXME + // If the given targetDataIndex (from model) is illegal, + // we use defaultIndex. But the index on the legend model and + // action payload is still illegal. That case will not be + // changed until some scenario requires. + if (defaultIndex == null && legendDataIdx != null) { + defaultIndex = idx; + } + if (legendDataIdx === targetDataIndex) { + index = idx; + } + }); + return index != null ? index : defaultIndex; + }; + ScrollableLegendView.type = 'legend.scroll'; + return ScrollableLegendView; + }(LegendView); + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + + /** + * AUTO-GENERATED FILE. DO NOT MODIFY. + */ + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + function installScrollableLegendAction(registers) { + /** + * @event legendScroll + * @type {Object} + * @property {string} type 'legendScroll' + * @property {string} scrollDataIndex + */ + registers.registerAction('legendScroll', 'legendscroll', function (payload, ecModel) { + var scrollDataIndex = payload.scrollDataIndex; + scrollDataIndex != null && ecModel.eachComponent({ + mainType: 'legend', + subType: 'scroll', + query: payload + }, function (legendModel) { + legendModel.setScrollDataIndex(scrollDataIndex); + }); + }); + } + + function install$I(registers) { + use(install$H); + registers.registerComponentModel(ScrollableLegendModel); + registers.registerComponentView(ScrollableLegendView); + installScrollableLegendAction(registers); + } + + function install$J(registers) { + use(install$H); + use(install$I); + } + + var InsideZoomModel = /** @class */function (_super) { + __extends(InsideZoomModel, _super); + function InsideZoomModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = InsideZoomModel.type; + return _this; + } + InsideZoomModel.type = 'dataZoom.inside'; + InsideZoomModel.defaultOption = inheritDefaultOption(DataZoomModel.defaultOption, { + disabled: false, + zoomLock: false, + zoomOnMouseWheel: true, + moveOnMouseMove: true, + moveOnMouseWheel: false, + preventDefaultMouseMove: true + }); + return InsideZoomModel; + }(DataZoomModel); + + var inner$k = makeInner(); + function setViewInfoToCoordSysRecord(api, dataZoomModel, getRange) { + inner$k(api).coordSysRecordMap.each(function (coordSysRecord) { + var dzInfo = coordSysRecord.dataZoomInfoMap.get(dataZoomModel.uid); + if (dzInfo) { + dzInfo.getRange = getRange; + } + }); + } + function disposeCoordSysRecordIfNeeded(api, dataZoomModel) { + var coordSysRecordMap = inner$k(api).coordSysRecordMap; + var coordSysKeyArr = coordSysRecordMap.keys(); + for (var i = 0; i < coordSysKeyArr.length; i++) { + var coordSysKey = coordSysKeyArr[i]; + var coordSysRecord = coordSysRecordMap.get(coordSysKey); + var dataZoomInfoMap = coordSysRecord.dataZoomInfoMap; + if (dataZoomInfoMap) { + var dzUid = dataZoomModel.uid; + var dzInfo = dataZoomInfoMap.get(dzUid); + if (dzInfo) { + dataZoomInfoMap.removeKey(dzUid); + if (!dataZoomInfoMap.keys().length) { + disposeCoordSysRecord(coordSysRecordMap, coordSysRecord); + } + } + } + } + } + function disposeCoordSysRecord(coordSysRecordMap, coordSysRecord) { + if (coordSysRecord) { + coordSysRecordMap.removeKey(coordSysRecord.model.uid); + var controller = coordSysRecord.controller; + controller && controller.dispose(); + } + } + function createCoordSysRecord(api, coordSysModel) { + // These init props will never change after record created. + var coordSysRecord = { + model: coordSysModel, + containsPoint: curry(containsPoint, coordSysModel), + dispatchAction: curry(dispatchAction$1, api), + dataZoomInfoMap: null, + controller: null + }; + // Must not do anything depends on coordSysRecord outside the event handler here, + // because coordSysRecord not completed yet. + var controller = coordSysRecord.controller = new RoamController(api.getZr()); + each(['pan', 'zoom', 'scrollMove'], function (eventName) { + controller.on(eventName, function (event) { + var batch = []; + coordSysRecord.dataZoomInfoMap.each(function (dzInfo) { + // Check whether the behaviors (zoomOnMouseWheel, moveOnMouseMove, + // moveOnMouseWheel, ...) enabled. + if (!event.isAvailableBehavior(dzInfo.model.option)) { + return; + } + var method = (dzInfo.getRange || {})[eventName]; + var range = method && method(dzInfo.dzReferCoordSysInfo, coordSysRecord.model.mainType, coordSysRecord.controller, event); + !dzInfo.model.get('disabled', true) && range && batch.push({ + dataZoomId: dzInfo.model.id, + start: range[0], + end: range[1] + }); + }); + batch.length && coordSysRecord.dispatchAction(batch); + }); + }); + return coordSysRecord; + } + /** + * This action will be throttled. + */ + function dispatchAction$1(api, batch) { + if (!api.isDisposed()) { + api.dispatchAction({ + type: 'dataZoom', + animation: { + easing: 'cubicOut', + duration: 100 + }, + batch: batch + }); + } + } + function containsPoint(coordSysModel, e, x, y) { + return coordSysModel.coordinateSystem.containPoint([x, y]); + } + /** + * Merge roamController settings when multiple dataZooms share one roamController. + */ + function mergeControllerParams(dataZoomInfoMap) { + var controlType; + // DO NOT use reserved word (true, false, undefined) as key literally. Even if encapsulated + // as string, it is probably revert to reserved word by compress tool. See #7411. + var prefix = 'type_'; + var typePriority = { + 'type_true': 2, + 'type_move': 1, + 'type_false': 0, + 'type_undefined': -1 + }; + var preventDefaultMouseMove = true; + dataZoomInfoMap.each(function (dataZoomInfo) { + var dataZoomModel = dataZoomInfo.model; + var oneType = dataZoomModel.get('disabled', true) ? false : dataZoomModel.get('zoomLock', true) ? 'move' : true; + if (typePriority[prefix + oneType] > typePriority[prefix + controlType]) { + controlType = oneType; + } + // Prevent default move event by default. If one false, do not prevent. Otherwise + // users may be confused why it does not work when multiple insideZooms exist. + preventDefaultMouseMove = preventDefaultMouseMove && dataZoomModel.get('preventDefaultMouseMove', true); + }); + return { + controlType: controlType, + opt: { + // RoamController will enable all of these functionalities, + // and the final behavior is determined by its event listener + // provided by each inside zoom. + zoomOnMouseWheel: true, + moveOnMouseMove: true, + moveOnMouseWheel: true, + preventDefaultMouseMove: !!preventDefaultMouseMove + } + }; + } + function installDataZoomRoamProcessor(registers) { + registers.registerProcessor(registers.PRIORITY.PROCESSOR.FILTER, function (ecModel, api) { + var apiInner = inner$k(api); + var coordSysRecordMap = apiInner.coordSysRecordMap || (apiInner.coordSysRecordMap = createHashMap()); + coordSysRecordMap.each(function (coordSysRecord) { + // `coordSysRecordMap` always exists (because it holds the `roam controller`, which should + // better not re-create each time), but clear `dataZoomInfoMap` each round of the workflow. + coordSysRecord.dataZoomInfoMap = null; + }); + ecModel.eachComponent({ + mainType: 'dataZoom', + subType: 'inside' + }, function (dataZoomModel) { + var dzReferCoordSysWrap = collectReferCoordSysModelInfo(dataZoomModel); + each(dzReferCoordSysWrap.infoList, function (dzCoordSysInfo) { + var coordSysUid = dzCoordSysInfo.model.uid; + var coordSysRecord = coordSysRecordMap.get(coordSysUid) || coordSysRecordMap.set(coordSysUid, createCoordSysRecord(api, dzCoordSysInfo.model)); + var dataZoomInfoMap = coordSysRecord.dataZoomInfoMap || (coordSysRecord.dataZoomInfoMap = createHashMap()); + // Notice these props might be changed each time for a single dataZoomModel. + dataZoomInfoMap.set(dataZoomModel.uid, { + dzReferCoordSysInfo: dzCoordSysInfo, + model: dataZoomModel, + getRange: null + }); + }); + }); + // (1) Merge dataZoom settings for each coord sys and set to the roam controller. + // (2) Clear coord sys if not refered by any dataZoom. + coordSysRecordMap.each(function (coordSysRecord) { + var controller = coordSysRecord.controller; + var firstDzInfo; + var dataZoomInfoMap = coordSysRecord.dataZoomInfoMap; + if (dataZoomInfoMap) { + var firstDzKey = dataZoomInfoMap.keys()[0]; + if (firstDzKey != null) { + firstDzInfo = dataZoomInfoMap.get(firstDzKey); + } + } + if (!firstDzInfo) { + disposeCoordSysRecord(coordSysRecordMap, coordSysRecord); + return; + } + var controllerParams = mergeControllerParams(dataZoomInfoMap); + controller.enable(controllerParams.controlType, controllerParams.opt); + controller.setPointerChecker(coordSysRecord.containsPoint); + createOrUpdate(coordSysRecord, 'dispatchAction', firstDzInfo.model.get('throttle', true), 'fixRate'); + }); + }); + } + + var InsideZoomView = /** @class */function (_super) { + __extends(InsideZoomView, _super); + function InsideZoomView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = 'dataZoom.inside'; + return _this; + } + InsideZoomView.prototype.render = function (dataZoomModel, ecModel, api) { + _super.prototype.render.apply(this, arguments); + if (dataZoomModel.noTarget()) { + this._clear(); + return; + } + // Hence the `throttle` util ensures to preserve command order, + // here simply updating range all the time will not cause missing + // any of the the roam change. + this.range = dataZoomModel.getPercentRange(); + // Reset controllers. + setViewInfoToCoordSysRecord(api, dataZoomModel, { + pan: bind(getRangeHandlers.pan, this), + zoom: bind(getRangeHandlers.zoom, this), + scrollMove: bind(getRangeHandlers.scrollMove, this) + }); + }; + InsideZoomView.prototype.dispose = function () { + this._clear(); + _super.prototype.dispose.apply(this, arguments); + }; + InsideZoomView.prototype._clear = function () { + disposeCoordSysRecordIfNeeded(this.api, this.dataZoomModel); + this.range = null; + }; + InsideZoomView.type = 'dataZoom.inside'; + return InsideZoomView; + }(DataZoomView); + var getRangeHandlers = { + zoom: function (coordSysInfo, coordSysMainType, controller, e) { + var lastRange = this.range; + var range = lastRange.slice(); + // Calculate transform by the first axis. + var axisModel = coordSysInfo.axisModels[0]; + if (!axisModel) { + return; + } + var directionInfo = getDirectionInfo[coordSysMainType](null, [e.originX, e.originY], axisModel, controller, coordSysInfo); + var percentPoint = (directionInfo.signal > 0 ? directionInfo.pixelStart + directionInfo.pixelLength - directionInfo.pixel : directionInfo.pixel - directionInfo.pixelStart) / directionInfo.pixelLength * (range[1] - range[0]) + range[0]; + var scale = Math.max(1 / e.scale, 0); + range[0] = (range[0] - percentPoint) * scale + percentPoint; + range[1] = (range[1] - percentPoint) * scale + percentPoint; + // Restrict range. + var minMaxSpan = this.dataZoomModel.findRepresentativeAxisProxy().getMinMaxSpan(); + sliderMove(0, range, [0, 100], 0, minMaxSpan.minSpan, minMaxSpan.maxSpan); + this.range = range; + if (lastRange[0] !== range[0] || lastRange[1] !== range[1]) { + return range; + } + }, + pan: makeMover(function (range, axisModel, coordSysInfo, coordSysMainType, controller, e) { + var directionInfo = getDirectionInfo[coordSysMainType]([e.oldX, e.oldY], [e.newX, e.newY], axisModel, controller, coordSysInfo); + return directionInfo.signal * (range[1] - range[0]) * directionInfo.pixel / directionInfo.pixelLength; + }), + scrollMove: makeMover(function (range, axisModel, coordSysInfo, coordSysMainType, controller, e) { + var directionInfo = getDirectionInfo[coordSysMainType]([0, 0], [e.scrollDelta, e.scrollDelta], axisModel, controller, coordSysInfo); + return directionInfo.signal * (range[1] - range[0]) * e.scrollDelta; + }) + }; + function makeMover(getPercentDelta) { + return function (coordSysInfo, coordSysMainType, controller, e) { + var lastRange = this.range; + var range = lastRange.slice(); + // Calculate transform by the first axis. + var axisModel = coordSysInfo.axisModels[0]; + if (!axisModel) { + return; + } + var percentDelta = getPercentDelta(range, axisModel, coordSysInfo, coordSysMainType, controller, e); + sliderMove(percentDelta, range, [0, 100], 'all'); + this.range = range; + if (lastRange[0] !== range[0] || lastRange[1] !== range[1]) { + return range; + } + }; + } + var getDirectionInfo = { + grid: function (oldPoint, newPoint, axisModel, controller, coordSysInfo) { + var axis = axisModel.axis; + var ret = {}; + var rect = coordSysInfo.model.coordinateSystem.getRect(); + oldPoint = oldPoint || [0, 0]; + if (axis.dim === 'x') { + ret.pixel = newPoint[0] - oldPoint[0]; + ret.pixelLength = rect.width; + ret.pixelStart = rect.x; + ret.signal = axis.inverse ? 1 : -1; + } else { + // axis.dim === 'y' + ret.pixel = newPoint[1] - oldPoint[1]; + ret.pixelLength = rect.height; + ret.pixelStart = rect.y; + ret.signal = axis.inverse ? -1 : 1; + } + return ret; + }, + polar: function (oldPoint, newPoint, axisModel, controller, coordSysInfo) { + var axis = axisModel.axis; + var ret = {}; + var polar = coordSysInfo.model.coordinateSystem; + var radiusExtent = polar.getRadiusAxis().getExtent(); + var angleExtent = polar.getAngleAxis().getExtent(); + oldPoint = oldPoint ? polar.pointToCoord(oldPoint) : [0, 0]; + newPoint = polar.pointToCoord(newPoint); + if (axisModel.mainType === 'radiusAxis') { + ret.pixel = newPoint[0] - oldPoint[0]; + // ret.pixelLength = Math.abs(radiusExtent[1] - radiusExtent[0]); + // ret.pixelStart = Math.min(radiusExtent[0], radiusExtent[1]); + ret.pixelLength = radiusExtent[1] - radiusExtent[0]; + ret.pixelStart = radiusExtent[0]; + ret.signal = axis.inverse ? 1 : -1; + } else { + // 'angleAxis' + ret.pixel = newPoint[1] - oldPoint[1]; + // ret.pixelLength = Math.abs(angleExtent[1] - angleExtent[0]); + // ret.pixelStart = Math.min(angleExtent[0], angleExtent[1]); + ret.pixelLength = angleExtent[1] - angleExtent[0]; + ret.pixelStart = angleExtent[0]; + ret.signal = axis.inverse ? -1 : 1; + } + return ret; + }, + singleAxis: function (oldPoint, newPoint, axisModel, controller, coordSysInfo) { + var axis = axisModel.axis; + var rect = coordSysInfo.model.coordinateSystem.getRect(); + var ret = {}; + oldPoint = oldPoint || [0, 0]; + if (axis.orient === 'horizontal') { + ret.pixel = newPoint[0] - oldPoint[0]; + ret.pixelLength = rect.width; + ret.pixelStart = rect.x; + ret.signal = axis.inverse ? 1 : -1; + } else { + // 'vertical' + ret.pixel = newPoint[1] - oldPoint[1]; + ret.pixelLength = rect.height; + ret.pixelStart = rect.y; + ret.signal = axis.inverse ? -1 : 1; + } + return ret; + } + }; + + function install$K(registers) { + installCommon(registers); + registers.registerComponentModel(InsideZoomModel); + registers.registerComponentView(InsideZoomView); + installDataZoomRoamProcessor(registers); + } + + var SliderZoomModel = /** @class */function (_super) { + __extends(SliderZoomModel, _super); + function SliderZoomModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = SliderZoomModel.type; + return _this; + } + SliderZoomModel.type = 'dataZoom.slider'; + SliderZoomModel.layoutMode = 'box'; + SliderZoomModel.defaultOption = inheritDefaultOption(DataZoomModel.defaultOption, { + show: true, + // deault value can only be drived in view stage. + right: 'ph', + top: 'ph', + width: 'ph', + height: 'ph', + left: null, + bottom: null, + borderColor: '#d2dbee', + borderRadius: 3, + backgroundColor: 'rgba(47,69,84,0)', + // dataBackgroundColor: '#ddd', + 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 + } + }, + // Color of selected window. + 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', + // Percent of the slider height + 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: true, + showDataShadow: 'auto', + realtime: true, + zoomLock: false, + textStyle: { + color: '#6E7079' + }, + brushSelect: true, + brushStyle: { + color: 'rgba(135,175,274,0.15)' + }, + emphasis: { + handleStyle: { + borderColor: '#8FB0F7' + }, + moveHandleStyle: { + color: '#8FB0F7' + } + } + }); + return SliderZoomModel; + }(DataZoomModel); + + var Rect$2 = Rect; + // Constants + var DEFAULT_LOCATION_EDGE_GAP = 7; + var DEFAULT_FRAME_BORDER_WIDTH = 1; + var DEFAULT_FILLER_SIZE = 30; + var DEFAULT_MOVE_HANDLE_SIZE = 7; + var HORIZONTAL = 'horizontal'; + var VERTICAL = 'vertical'; + var LABEL_GAP = 5; + var SHOW_DATA_SHADOW_SERIES_TYPE = ['line', 'bar', 'candlestick', 'scatter']; + var REALTIME_ANIMATION_CONFIG = { + easing: 'cubicOut', + duration: 100, + delay: 0 + }; + var SliderZoomView = /** @class */function (_super) { + __extends(SliderZoomView, _super); + function SliderZoomView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = SliderZoomView.type; + _this._displayables = {}; + return _this; + } + SliderZoomView.prototype.init = function (ecModel, api) { + this.api = api; + // A unique handler for each dataZoom component + this._onBrush = bind(this._onBrush, this); + this._onBrushEnd = bind(this._onBrushEnd, this); + }; + SliderZoomView.prototype.render = function (dataZoomModel, ecModel, api, payload) { + _super.prototype.render.apply(this, arguments); + createOrUpdate(this, '_dispatchZoomAction', dataZoomModel.get('throttle'), 'fixRate'); + this._orient = dataZoomModel.getOrient(); + if (dataZoomModel.get('show') === false) { + this.group.removeAll(); + return; + } + if (dataZoomModel.noTarget()) { + this._clear(); + this.group.removeAll(); + return; + } + // Notice: this._resetInterval() should not be executed when payload.type + // is 'dataZoom', origin this._range should be maintained, otherwise 'pan' + // or 'zoom' info will be missed because of 'throttle' of this.dispatchAction, + if (!payload || payload.type !== 'dataZoom' || payload.from !== this.uid) { + this._buildView(); + } + this._updateView(); + }; + SliderZoomView.prototype.dispose = function () { + this._clear(); + _super.prototype.dispose.apply(this, arguments); + }; + SliderZoomView.prototype._clear = function () { + clear(this, '_dispatchZoomAction'); + var zr = this.api.getZr(); + zr.off('mousemove', this._onBrush); + zr.off('mouseup', this._onBrushEnd); + }; + SliderZoomView.prototype._buildView = function () { + var thisGroup = this.group; + thisGroup.removeAll(); + this._brushing = false; + this._displayables.brushRect = null; + this._resetLocation(); + this._resetInterval(); + var barGroup = this._displayables.sliderGroup = new Group(); + this._renderBackground(); + this._renderHandle(); + this._renderDataShadow(); + thisGroup.add(barGroup); + this._positionGroup(); + }; + SliderZoomView.prototype._resetLocation = function () { + var dataZoomModel = this.dataZoomModel; + var api = this.api; + var showMoveHandle = dataZoomModel.get('brushSelect'); + var moveHandleSize = showMoveHandle ? DEFAULT_MOVE_HANDLE_SIZE : 0; + // If some of x/y/width/height are not specified, + // auto-adapt according to target grid. + var coordRect = this._findCoordRect(); + var ecSize = { + width: api.getWidth(), + height: api.getHeight() + }; + // Default align by coordinate system rect. + var positionInfo = this._orient === HORIZONTAL ? { + // Why using 'right', because right should be used in vertical, + // and it is better to be consistent for dealing with position param merge. + right: ecSize.width - coordRect.x - coordRect.width, + top: ecSize.height - DEFAULT_FILLER_SIZE - DEFAULT_LOCATION_EDGE_GAP - moveHandleSize, + width: coordRect.width, + height: DEFAULT_FILLER_SIZE + } : { + right: DEFAULT_LOCATION_EDGE_GAP, + top: coordRect.y, + width: DEFAULT_FILLER_SIZE, + height: coordRect.height + }; + // Do not write back to option and replace value 'ph', because + // the 'ph' value should be recalculated when resize. + var layoutParams = getLayoutParams(dataZoomModel.option); + // Replace the placeholder value. + each(['right', 'top', 'width', 'height'], function (name) { + if (layoutParams[name] === 'ph') { + layoutParams[name] = positionInfo[name]; + } + }); + var layoutRect = getLayoutRect(layoutParams, ecSize); + this._location = { + x: layoutRect.x, + y: layoutRect.y + }; + this._size = [layoutRect.width, layoutRect.height]; + this._orient === VERTICAL && this._size.reverse(); + }; + SliderZoomView.prototype._positionGroup = function () { + var thisGroup = this.group; + var location = this._location; + var orient = this._orient; + // Just use the first axis to determine mapping. + var targetAxisModel = this.dataZoomModel.getFirstTargetAxisModel(); + var inverse = targetAxisModel && targetAxisModel.get('inverse'); + var sliderGroup = this._displayables.sliderGroup; + var otherAxisInverse = (this._dataShadowInfo || {}).otherAxisInverse; + // Transform barGroup. + sliderGroup.attr(orient === HORIZONTAL && !inverse ? { + scaleY: otherAxisInverse ? 1 : -1, + scaleX: 1 + } : orient === HORIZONTAL && inverse ? { + scaleY: otherAxisInverse ? 1 : -1, + scaleX: -1 + } : orient === VERTICAL && !inverse ? { + scaleY: otherAxisInverse ? -1 : 1, + scaleX: 1, + rotation: Math.PI / 2 + } + // Don't use Math.PI, considering shadow direction. + : { + scaleY: otherAxisInverse ? -1 : 1, + scaleX: -1, + rotation: Math.PI / 2 + }); + // Position barGroup + var rect = thisGroup.getBoundingRect([sliderGroup]); + thisGroup.x = location.x - rect.x; + thisGroup.y = location.y - rect.y; + thisGroup.markRedraw(); + }; + SliderZoomView.prototype._getViewExtent = function () { + return [0, this._size[0]]; + }; + SliderZoomView.prototype._renderBackground = function () { + var dataZoomModel = this.dataZoomModel; + var size = this._size; + var barGroup = this._displayables.sliderGroup; + var brushSelect = dataZoomModel.get('brushSelect'); + barGroup.add(new Rect$2({ + silent: true, + shape: { + x: 0, + y: 0, + width: size[0], + height: size[1] + }, + style: { + fill: dataZoomModel.get('backgroundColor') + }, + z2: -40 + })); + // Click panel, over shadow, below handles. + var clickPanel = new Rect$2({ + shape: { + x: 0, + y: 0, + width: size[0], + height: size[1] + }, + style: { + fill: 'transparent' + }, + z2: 0, + onclick: bind(this._onClickPanel, this) + }); + var zr = this.api.getZr(); + if (brushSelect) { + clickPanel.on('mousedown', this._onBrushStart, this); + clickPanel.cursor = 'crosshair'; + zr.on('mousemove', this._onBrush); + zr.on('mouseup', this._onBrushEnd); + } else { + zr.off('mousemove', this._onBrush); + zr.off('mouseup', this._onBrushEnd); + } + barGroup.add(clickPanel); + }; + SliderZoomView.prototype._renderDataShadow = function () { + var info = this._dataShadowInfo = this._prepareDataShadowInfo(); + this._displayables.dataShadowSegs = []; + if (!info) { + return; + } + var size = this._size; + var oldSize = this._shadowSize || []; + var seriesModel = info.series; + var data = seriesModel.getRawData(); + var candlestickDim = seriesModel.getShadowDim && seriesModel.getShadowDim(); + var otherDim = candlestickDim && data.getDimensionInfo(candlestickDim) ? seriesModel.getShadowDim() // @see candlestick + : info.otherDim; + if (otherDim == null) { + return; + } + var polygonPts = this._shadowPolygonPts; + var polylinePts = this._shadowPolylinePts; + // Not re-render if data doesn't change. + if (data !== this._shadowData || otherDim !== this._shadowDim || size[0] !== oldSize[0] || size[1] !== oldSize[1]) { + var otherDataExtent_1 = data.getDataExtent(otherDim); + // Nice extent. + var otherOffset = (otherDataExtent_1[1] - otherDataExtent_1[0]) * 0.3; + otherDataExtent_1 = [otherDataExtent_1[0] - otherOffset, otherDataExtent_1[1] + otherOffset]; + var otherShadowExtent_1 = [0, size[1]]; + var thisShadowExtent = [0, size[0]]; + var areaPoints_1 = [[size[0], 0], [0, 0]]; + var linePoints_1 = []; + var step_1 = thisShadowExtent[1] / (data.count() - 1); + var thisCoord_1 = 0; + // Optimize for large data shadow + var stride_1 = Math.round(data.count() / size[0]); + var lastIsEmpty_1; + data.each([otherDim], function (value, index) { + if (stride_1 > 0 && index % stride_1) { + thisCoord_1 += step_1; + return; + } + // FIXME + // Should consider axis.min/axis.max when drawing dataShadow. + // FIXME + // 应该使用统一的空判断?还是在list里进行空判断? + var isEmpty = value == null || isNaN(value) || value === ''; + // See #4235. + var otherCoord = isEmpty ? 0 : linearMap(value, otherDataExtent_1, otherShadowExtent_1, true); + // Attempt to draw data shadow precisely when there are empty value. + if (isEmpty && !lastIsEmpty_1 && index) { + areaPoints_1.push([areaPoints_1[areaPoints_1.length - 1][0], 0]); + linePoints_1.push([linePoints_1[linePoints_1.length - 1][0], 0]); + } else if (!isEmpty && lastIsEmpty_1) { + areaPoints_1.push([thisCoord_1, 0]); + linePoints_1.push([thisCoord_1, 0]); + } + areaPoints_1.push([thisCoord_1, otherCoord]); + linePoints_1.push([thisCoord_1, otherCoord]); + thisCoord_1 += step_1; + lastIsEmpty_1 = isEmpty; + }); + polygonPts = this._shadowPolygonPts = areaPoints_1; + polylinePts = this._shadowPolylinePts = linePoints_1; + } + this._shadowData = data; + this._shadowDim = otherDim; + this._shadowSize = [size[0], size[1]]; + var dataZoomModel = this.dataZoomModel; + function createDataShadowGroup(isSelectedArea) { + var model = dataZoomModel.getModel(isSelectedArea ? 'selectedDataBackground' : 'dataBackground'); + var group = new Group(); + var polygon = new Polygon({ + shape: { + points: polygonPts + }, + segmentIgnoreThreshold: 1, + style: model.getModel('areaStyle').getAreaStyle(), + silent: true, + z2: -20 + }); + var polyline = new Polyline({ + shape: { + points: polylinePts + }, + segmentIgnoreThreshold: 1, + style: model.getModel('lineStyle').getLineStyle(), + silent: true, + z2: -19 + }); + group.add(polygon); + group.add(polyline); + return group; + } + // let dataBackgroundModel = dataZoomModel.getModel('dataBackground'); + for (var i = 0; i < 3; i++) { + var group = createDataShadowGroup(i === 1); + this._displayables.sliderGroup.add(group); + this._displayables.dataShadowSegs.push(group); + } + }; + SliderZoomView.prototype._prepareDataShadowInfo = function () { + var dataZoomModel = this.dataZoomModel; + var showDataShadow = dataZoomModel.get('showDataShadow'); + if (showDataShadow === false) { + return; + } + // Find a representative series. + var result; + var ecModel = this.ecModel; + dataZoomModel.eachTargetAxis(function (axisDim, axisIndex) { + var seriesModels = dataZoomModel.getAxisProxy(axisDim, axisIndex).getTargetSeriesModels(); + each(seriesModels, function (seriesModel) { + if (result) { + return; + } + if (showDataShadow !== true && indexOf(SHOW_DATA_SHADOW_SERIES_TYPE, seriesModel.get('type')) < 0) { + return; + } + var thisAxis = ecModel.getComponent(getAxisMainType(axisDim), axisIndex).axis; + var otherDim = getOtherDim(axisDim); + var otherAxisInverse; + var coordSys = seriesModel.coordinateSystem; + if (otherDim != null && coordSys.getOtherAxis) { + otherAxisInverse = coordSys.getOtherAxis(thisAxis).inverse; + } + otherDim = seriesModel.getData().mapDimension(otherDim); + result = { + thisAxis: thisAxis, + series: seriesModel, + thisDim: axisDim, + otherDim: otherDim, + otherAxisInverse: otherAxisInverse + }; + }, this); + }, this); + return result; + }; + SliderZoomView.prototype._renderHandle = function () { + var thisGroup = this.group; + var displayables = this._displayables; + var handles = displayables.handles = [null, null]; + var handleLabels = displayables.handleLabels = [null, null]; + var sliderGroup = this._displayables.sliderGroup; + var size = this._size; + var dataZoomModel = this.dataZoomModel; + var api = this.api; + var borderRadius = dataZoomModel.get('borderRadius') || 0; + var brushSelect = dataZoomModel.get('brushSelect'); + var filler = displayables.filler = new Rect$2({ + silent: brushSelect, + style: { + fill: dataZoomModel.get('fillerColor') + }, + textConfig: { + position: 'inside' + } + }); + sliderGroup.add(filler); + // Frame border. + sliderGroup.add(new Rect$2({ + silent: true, + subPixelOptimize: true, + shape: { + x: 0, + y: 0, + width: size[0], + height: size[1], + r: borderRadius + }, + style: { + // deprecated option + stroke: dataZoomModel.get('dataBackgroundColor') || dataZoomModel.get('borderColor'), + lineWidth: DEFAULT_FRAME_BORDER_WIDTH, + fill: 'rgba(0,0,0,0)' + } + })); + // Left and right handle to resize + each([0, 1], function (handleIndex) { + var iconStr = dataZoomModel.get('handleIcon'); + if (!symbolBuildProxies[iconStr] && iconStr.indexOf('path://') < 0 && iconStr.indexOf('image://') < 0) { + // Compatitable with the old icon parsers. Which can use a path string without path:// + iconStr = 'path://' + iconStr; + if ("development" !== 'production') { + deprecateLog('handleIcon now needs \'path://\' prefix when using a path string'); + } + } + var path = createSymbol(iconStr, -1, 0, 2, 2, null, true); + path.attr({ + cursor: getCursor(this._orient), + draggable: true, + drift: bind(this._onDragMove, this, handleIndex), + ondragend: bind(this._onDragEnd, this), + onmouseover: bind(this._showDataInfo, this, true), + onmouseout: bind(this._showDataInfo, this, false), + z2: 5 + }); + var bRect = path.getBoundingRect(); + var handleSize = dataZoomModel.get('handleSize'); + this._handleHeight = parsePercent$1(handleSize, this._size[1]); + this._handleWidth = bRect.width / bRect.height * this._handleHeight; + path.setStyle(dataZoomModel.getModel('handleStyle').getItemStyle()); + path.style.strokeNoScale = true; + path.rectHover = true; + path.ensureState('emphasis').style = dataZoomModel.getModel(['emphasis', 'handleStyle']).getItemStyle(); + enableHoverEmphasis(path); + var handleColor = dataZoomModel.get('handleColor'); // deprecated option + // Compatitable with previous version + if (handleColor != null) { + path.style.fill = handleColor; + } + sliderGroup.add(handles[handleIndex] = path); + var textStyleModel = dataZoomModel.getModel('textStyle'); + thisGroup.add(handleLabels[handleIndex] = new ZRText({ + silent: true, + invisible: true, + style: createTextStyle(textStyleModel, { + x: 0, + y: 0, + text: '', + verticalAlign: 'middle', + align: 'center', + fill: textStyleModel.getTextColor(), + font: textStyleModel.getFont() + }), + z2: 10 + })); + }, this); + // Handle to move. Only visible when brushSelect is set true. + var actualMoveZone = filler; + if (brushSelect) { + var moveHandleHeight = parsePercent$1(dataZoomModel.get('moveHandleSize'), size[1]); + var moveHandle_1 = displayables.moveHandle = new Rect({ + style: dataZoomModel.getModel('moveHandleStyle').getItemStyle(), + silent: true, + shape: { + r: [0, 0, 2, 2], + y: size[1] - 0.5, + height: moveHandleHeight + } + }); + var iconSize = moveHandleHeight * 0.8; + var moveHandleIcon = displayables.moveHandleIcon = createSymbol(dataZoomModel.get('moveHandleIcon'), -iconSize / 2, -iconSize / 2, iconSize, iconSize, '#fff', true); + moveHandleIcon.silent = true; + moveHandleIcon.y = size[1] + moveHandleHeight / 2 - 0.5; + moveHandle_1.ensureState('emphasis').style = dataZoomModel.getModel(['emphasis', 'moveHandleStyle']).getItemStyle(); + var moveZoneExpandSize = Math.min(size[1] / 2, Math.max(moveHandleHeight, 10)); + actualMoveZone = displayables.moveZone = new Rect({ + invisible: true, + shape: { + y: size[1] - moveZoneExpandSize, + height: moveHandleHeight + moveZoneExpandSize + } + }); + actualMoveZone.on('mouseover', function () { + api.enterEmphasis(moveHandle_1); + }).on('mouseout', function () { + api.leaveEmphasis(moveHandle_1); + }); + sliderGroup.add(moveHandle_1); + sliderGroup.add(moveHandleIcon); + sliderGroup.add(actualMoveZone); + } + actualMoveZone.attr({ + draggable: true, + cursor: getCursor(this._orient), + drift: bind(this._onDragMove, this, 'all'), + ondragstart: bind(this._showDataInfo, this, true), + ondragend: bind(this._onDragEnd, this), + onmouseover: bind(this._showDataInfo, this, true), + onmouseout: bind(this._showDataInfo, this, false) + }); + }; + SliderZoomView.prototype._resetInterval = function () { + var range = this._range = this.dataZoomModel.getPercentRange(); + var viewExtent = this._getViewExtent(); + this._handleEnds = [linearMap(range[0], [0, 100], viewExtent, true), linearMap(range[1], [0, 100], viewExtent, true)]; + }; + SliderZoomView.prototype._updateInterval = function (handleIndex, delta) { + var dataZoomModel = this.dataZoomModel; + var handleEnds = this._handleEnds; + var viewExtend = this._getViewExtent(); + var minMaxSpan = dataZoomModel.findRepresentativeAxisProxy().getMinMaxSpan(); + var percentExtent = [0, 100]; + sliderMove(delta, handleEnds, viewExtend, dataZoomModel.get('zoomLock') ? 'all' : handleIndex, minMaxSpan.minSpan != null ? linearMap(minMaxSpan.minSpan, percentExtent, viewExtend, true) : null, minMaxSpan.maxSpan != null ? linearMap(minMaxSpan.maxSpan, percentExtent, viewExtend, true) : null); + var lastRange = this._range; + var range = this._range = asc([linearMap(handleEnds[0], viewExtend, percentExtent, true), linearMap(handleEnds[1], viewExtend, percentExtent, true)]); + return !lastRange || lastRange[0] !== range[0] || lastRange[1] !== range[1]; + }; + SliderZoomView.prototype._updateView = function (nonRealtime) { + var displaybles = this._displayables; + var handleEnds = this._handleEnds; + var handleInterval = asc(handleEnds.slice()); + var size = this._size; + each([0, 1], function (handleIndex) { + // Handles + var handle = displaybles.handles[handleIndex]; + var handleHeight = this._handleHeight; + handle.attr({ + scaleX: handleHeight / 2, + scaleY: handleHeight / 2, + // This is a trick, by adding an extra tiny offset to let the default handle's end point align to the drag window. + // NOTE: It may affect some custom shapes a bit. But we prefer to have better result by default. + x: handleEnds[handleIndex] + (handleIndex ? -1 : 1), + y: size[1] / 2 - handleHeight / 2 + }); + }, this); + // Filler + displaybles.filler.setShape({ + x: handleInterval[0], + y: 0, + width: handleInterval[1] - handleInterval[0], + height: size[1] + }); + var viewExtent = { + x: handleInterval[0], + width: handleInterval[1] - handleInterval[0] + }; + // Move handle + if (displaybles.moveHandle) { + displaybles.moveHandle.setShape(viewExtent); + displaybles.moveZone.setShape(viewExtent); + // Force update path on the invisible object + displaybles.moveZone.getBoundingRect(); + displaybles.moveHandleIcon && displaybles.moveHandleIcon.attr('x', viewExtent.x + viewExtent.width / 2); + } + // update clip path of shadow. + var dataShadowSegs = displaybles.dataShadowSegs; + var segIntervals = [0, handleInterval[0], handleInterval[1], size[0]]; + for (var i = 0; i < dataShadowSegs.length; i++) { + var segGroup = dataShadowSegs[i]; + var clipPath = segGroup.getClipPath(); + if (!clipPath) { + clipPath = new Rect(); + segGroup.setClipPath(clipPath); + } + clipPath.setShape({ + x: segIntervals[i], + y: 0, + width: segIntervals[i + 1] - segIntervals[i], + height: size[1] + }); + } + this._updateDataInfo(nonRealtime); + }; + SliderZoomView.prototype._updateDataInfo = function (nonRealtime) { + var dataZoomModel = this.dataZoomModel; + var displaybles = this._displayables; + var handleLabels = displaybles.handleLabels; + var orient = this._orient; + var labelTexts = ['', '']; + // FIXME + // date型,支持formatter,autoformatter(ec2 date.getAutoFormatter) + if (dataZoomModel.get('showDetail')) { + var axisProxy = dataZoomModel.findRepresentativeAxisProxy(); + if (axisProxy) { + var axis = axisProxy.getAxisModel().axis; + var range = this._range; + var dataInterval = nonRealtime + // See #4434, data and axis are not processed and reset yet in non-realtime mode. + ? axisProxy.calculateDataWindow({ + start: range[0], + end: range[1] + }).valueWindow : axisProxy.getDataValueWindow(); + labelTexts = [this._formatLabel(dataInterval[0], axis), this._formatLabel(dataInterval[1], axis)]; + } + } + var orderedHandleEnds = asc(this._handleEnds.slice()); + setLabel.call(this, 0); + setLabel.call(this, 1); + function setLabel(handleIndex) { + // Label + // Text should not transform by barGroup. + // Ignore handlers transform + var barTransform = getTransform(displaybles.handles[handleIndex].parent, this.group); + var direction = transformDirection(handleIndex === 0 ? 'right' : 'left', barTransform); + var offset = this._handleWidth / 2 + LABEL_GAP; + var textPoint = applyTransform$1([orderedHandleEnds[handleIndex] + (handleIndex === 0 ? -offset : offset), this._size[1] / 2], barTransform); + handleLabels[handleIndex].setStyle({ + x: textPoint[0], + y: textPoint[1], + verticalAlign: orient === HORIZONTAL ? 'middle' : direction, + align: orient === HORIZONTAL ? direction : 'center', + text: labelTexts[handleIndex] + }); + } + }; + SliderZoomView.prototype._formatLabel = function (value, axis) { + var dataZoomModel = this.dataZoomModel; + var labelFormatter = dataZoomModel.get('labelFormatter'); + var labelPrecision = dataZoomModel.get('labelPrecision'); + if (labelPrecision == null || labelPrecision === 'auto') { + labelPrecision = axis.getPixelPrecision(); + } + var valueStr = value == null || isNaN(value) ? '' + // FIXME Glue code + : axis.type === 'category' || axis.type === 'time' ? axis.scale.getLabel({ + value: Math.round(value) + }) + // param of toFixed should less then 20. + : value.toFixed(Math.min(labelPrecision, 20)); + return isFunction(labelFormatter) ? labelFormatter(value, valueStr) : isString(labelFormatter) ? labelFormatter.replace('{value}', valueStr) : valueStr; + }; + /** + * @param showOrHide true: show, false: hide + */ + SliderZoomView.prototype._showDataInfo = function (showOrHide) { + // Always show when drgging. + showOrHide = this._dragging || showOrHide; + var displayables = this._displayables; + var handleLabels = displayables.handleLabels; + handleLabels[0].attr('invisible', !showOrHide); + handleLabels[1].attr('invisible', !showOrHide); + // Highlight move handle + displayables.moveHandle && this.api[showOrHide ? 'enterEmphasis' : 'leaveEmphasis'](displayables.moveHandle, 1); + }; + SliderZoomView.prototype._onDragMove = function (handleIndex, dx, dy, event) { + this._dragging = true; + // For mobile device, prevent screen slider on the button. + stop(event.event); + // Transform dx, dy to bar coordination. + var barTransform = this._displayables.sliderGroup.getLocalTransform(); + var vertex = applyTransform$1([dx, dy], barTransform, true); + var changed = this._updateInterval(handleIndex, vertex[0]); + var realtime = this.dataZoomModel.get('realtime'); + this._updateView(!realtime); + // Avoid dispatch dataZoom repeatly but range not changed, + // which cause bad visual effect when progressive enabled. + changed && realtime && this._dispatchZoomAction(true); + }; + SliderZoomView.prototype._onDragEnd = function () { + this._dragging = false; + this._showDataInfo(false); + // While in realtime mode and stream mode, dispatch action when + // drag end will cause the whole view rerender, which is unnecessary. + var realtime = this.dataZoomModel.get('realtime'); + !realtime && this._dispatchZoomAction(false); + }; + SliderZoomView.prototype._onClickPanel = function (e) { + var size = this._size; + var localPoint = this._displayables.sliderGroup.transformCoordToLocal(e.offsetX, e.offsetY); + if (localPoint[0] < 0 || localPoint[0] > size[0] || localPoint[1] < 0 || localPoint[1] > size[1]) { + return; + } + var handleEnds = this._handleEnds; + var center = (handleEnds[0] + handleEnds[1]) / 2; + var changed = this._updateInterval('all', localPoint[0] - center); + this._updateView(); + changed && this._dispatchZoomAction(false); + }; + SliderZoomView.prototype._onBrushStart = function (e) { + var x = e.offsetX; + var y = e.offsetY; + this._brushStart = new Point(x, y); + this._brushing = true; + this._brushStartTime = +new Date(); + // this._updateBrushRect(x, y); + }; + + SliderZoomView.prototype._onBrushEnd = function (e) { + if (!this._brushing) { + return; + } + var brushRect = this._displayables.brushRect; + this._brushing = false; + if (!brushRect) { + return; + } + brushRect.attr('ignore', true); + var brushShape = brushRect.shape; + var brushEndTime = +new Date(); + // console.log(brushEndTime - this._brushStartTime); + if (brushEndTime - this._brushStartTime < 200 && Math.abs(brushShape.width) < 5) { + // Will treat it as a click + return; + } + var viewExtend = this._getViewExtent(); + var percentExtent = [0, 100]; + this._range = asc([linearMap(brushShape.x, viewExtend, percentExtent, true), linearMap(brushShape.x + brushShape.width, viewExtend, percentExtent, true)]); + this._handleEnds = [brushShape.x, brushShape.x + brushShape.width]; + this._updateView(); + this._dispatchZoomAction(false); + }; + SliderZoomView.prototype._onBrush = function (e) { + if (this._brushing) { + // For mobile device, prevent screen slider on the button. + stop(e.event); + this._updateBrushRect(e.offsetX, e.offsetY); + } + }; + SliderZoomView.prototype._updateBrushRect = function (mouseX, mouseY) { + var displayables = this._displayables; + var dataZoomModel = this.dataZoomModel; + var brushRect = displayables.brushRect; + if (!brushRect) { + brushRect = displayables.brushRect = new Rect$2({ + silent: true, + style: dataZoomModel.getModel('brushStyle').getItemStyle() + }); + displayables.sliderGroup.add(brushRect); + } + brushRect.attr('ignore', false); + var brushStart = this._brushStart; + var sliderGroup = this._displayables.sliderGroup; + var endPoint = sliderGroup.transformCoordToLocal(mouseX, mouseY); + var startPoint = sliderGroup.transformCoordToLocal(brushStart.x, brushStart.y); + var size = this._size; + endPoint[0] = Math.max(Math.min(size[0], endPoint[0]), 0); + brushRect.setShape({ + x: startPoint[0], + y: 0, + width: endPoint[0] - startPoint[0], + height: size[1] + }); + }; + /** + * This action will be throttled. + */ + SliderZoomView.prototype._dispatchZoomAction = function (realtime) { + var range = this._range; + this.api.dispatchAction({ + type: 'dataZoom', + from: this.uid, + dataZoomId: this.dataZoomModel.id, + animation: realtime ? REALTIME_ANIMATION_CONFIG : null, + start: range[0], + end: range[1] + }); + }; + SliderZoomView.prototype._findCoordRect = function () { + // Find the grid corresponding to the first axis referred by dataZoom. + var rect; + var coordSysInfoList = collectReferCoordSysModelInfo(this.dataZoomModel).infoList; + if (!rect && coordSysInfoList.length) { + var coordSys = coordSysInfoList[0].model.coordinateSystem; + rect = coordSys.getRect && coordSys.getRect(); + } + if (!rect) { + var width = this.api.getWidth(); + var height = this.api.getHeight(); + rect = { + x: width * 0.2, + y: height * 0.2, + width: width * 0.6, + height: height * 0.6 + }; + } + return rect; + }; + SliderZoomView.type = 'dataZoom.slider'; + return SliderZoomView; + }(DataZoomView); + function getOtherDim(thisDim) { + // FIXME + // 这个逻辑和getOtherAxis里一致,但是写在这里是否不好 + var map = { + x: 'y', + y: 'x', + radius: 'angle', + angle: 'radius' + }; + return map[thisDim]; + } + function getCursor(orient) { + return orient === 'vertical' ? 'ns-resize' : 'ew-resize'; + } + + function install$L(registers) { + registers.registerComponentModel(SliderZoomModel); + registers.registerComponentView(SliderZoomView); + installCommon(registers); + } + + function install$M(registers) { + use(install$K); + use(install$L); + // Do not install './dataZoomSelect', + // since it only work for toolbox dataZoom. + } + + var visualDefault = { + /** + * @public + */ + get: function (visualType, key, isCategory) { + var value = clone((defaultOption$1[visualType] || {})[key]); + return isCategory ? isArray(value) ? value[value.length - 1] : value : value; + } + }; + var defaultOption$1 = { + color: { + active: ['#006edd', '#e0ffff'], + inactive: ['rgba(0,0,0,0)'] + }, + colorHue: { + active: [0, 360], + inactive: [0, 0] + }, + colorSaturation: { + active: [0.3, 1], + inactive: [0, 0] + }, + colorLightness: { + active: [0.9, 0.5], + inactive: [0, 0] + }, + colorAlpha: { + active: [0.3, 1], + inactive: [0, 0] + }, + opacity: { + active: [0.3, 1], + inactive: [0, 0] + }, + symbol: { + active: ['circle', 'roundRect', 'diamond'], + inactive: ['none'] + }, + symbolSize: { + active: [10, 50], + inactive: [0, 0] + } + }; + + var mapVisual$1 = VisualMapping.mapVisual; + var eachVisual = VisualMapping.eachVisual; + var isArray$1 = isArray; + var each$d = each; + var asc$2 = asc; + var linearMap$1 = linearMap; + var VisualMapModel = /** @class */function (_super) { + __extends(VisualMapModel, _super); + function VisualMapModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = VisualMapModel.type; + _this.stateList = ['inRange', 'outOfRange']; + _this.replacableOptionKeys = ['inRange', 'outOfRange', 'target', 'controller', 'color']; + _this.layoutMode = { + type: 'box', + ignoreSize: true + }; + /** + * [lowerBound, upperBound] + */ + _this.dataBound = [-Infinity, Infinity]; + _this.targetVisuals = {}; + _this.controllerVisuals = {}; + return _this; + } + VisualMapModel.prototype.init = function (option, parentModel, ecModel) { + this.mergeDefaultAndTheme(option, ecModel); + }; + /** + * @protected + */ + VisualMapModel.prototype.optionUpdated = function (newOption, isInit) { + var thisOption = this.option; + !isInit && replaceVisualOption(thisOption, newOption, this.replacableOptionKeys); + this.textStyleModel = this.getModel('textStyle'); + this.resetItemSize(); + this.completeVisualOption(); + }; + /** + * @protected + */ + VisualMapModel.prototype.resetVisual = function (supplementVisualOption) { + var stateList = this.stateList; + supplementVisualOption = bind(supplementVisualOption, this); + this.controllerVisuals = createVisualMappings(this.option.controller, stateList, supplementVisualOption); + this.targetVisuals = createVisualMappings(this.option.target, stateList, supplementVisualOption); + }; + /** + * @public + */ + VisualMapModel.prototype.getItemSymbol = function () { + return null; + }; + /** + * @protected + * @return {Array.<number>} An array of series indices. + */ + VisualMapModel.prototype.getTargetSeriesIndices = function () { + var optionSeriesIndex = this.option.seriesIndex; + var seriesIndices = []; + if (optionSeriesIndex == null || optionSeriesIndex === 'all') { + this.ecModel.eachSeries(function (seriesModel, index) { + seriesIndices.push(index); + }); + } else { + seriesIndices = normalizeToArray(optionSeriesIndex); + } + return seriesIndices; + }; + /** + * @public + */ + VisualMapModel.prototype.eachTargetSeries = function (callback, context) { + each(this.getTargetSeriesIndices(), function (seriesIndex) { + var seriesModel = this.ecModel.getSeriesByIndex(seriesIndex); + if (seriesModel) { + callback.call(context, seriesModel); + } + }, this); + }; + /** + * @pubilc + */ + VisualMapModel.prototype.isTargetSeries = function (seriesModel) { + var is = false; + this.eachTargetSeries(function (model) { + model === seriesModel && (is = true); + }); + return is; + }; + /** + * @example + * this.formatValueText(someVal); // format single numeric value to text. + * this.formatValueText(someVal, true); // format single category value to text. + * this.formatValueText([min, max]); // format numeric min-max to text. + * this.formatValueText([this.dataBound[0], max]); // using data lower bound. + * this.formatValueText([min, this.dataBound[1]]); // using data upper bound. + * + * @param value Real value, or this.dataBound[0 or 1]. + * @param isCategory Only available when value is number. + * @param edgeSymbols Open-close symbol when value is interval. + * @protected + */ + VisualMapModel.prototype.formatValueText = function (value, isCategory, edgeSymbols) { + var option = this.option; + var precision = option.precision; + var dataBound = this.dataBound; + var formatter = option.formatter; + var isMinMax; + edgeSymbols = edgeSymbols || ['<', '>']; + if (isArray(value)) { + value = value.slice(); + isMinMax = true; + } + var textValue = isCategory ? value // Value is string when isCategory + : isMinMax ? [toFixed(value[0]), toFixed(value[1])] : toFixed(value); + if (isString(formatter)) { + return formatter.replace('{value}', isMinMax ? textValue[0] : textValue).replace('{value2}', isMinMax ? textValue[1] : textValue); + } else if (isFunction(formatter)) { + return isMinMax ? formatter(value[0], value[1]) : formatter(value); + } + if (isMinMax) { + if (value[0] === dataBound[0]) { + return edgeSymbols[0] + ' ' + textValue[1]; + } else if (value[1] === dataBound[1]) { + return edgeSymbols[1] + ' ' + textValue[0]; + } else { + return textValue[0] + ' - ' + textValue[1]; + } + } else { + // Format single value (includes category case). + return textValue; + } + function toFixed(val) { + return val === dataBound[0] ? 'min' : val === dataBound[1] ? 'max' : (+val).toFixed(Math.min(precision, 20)); + } + }; + /** + * @protected + */ + VisualMapModel.prototype.resetExtent = function () { + var thisOption = this.option; + // Can not calculate data extent by data here. + // Because series and data may be modified in processing stage. + // So we do not support the feature "auto min/max". + var extent = asc$2([thisOption.min, thisOption.max]); + this._dataExtent = extent; + }; + /** + * PENDING: + * delete this method if no outer usage. + * + * Return Concrete dimension. If null/undefined is returned, no dimension is used. + */ + // getDataDimension(data: SeriesData) { + // const optDim = this.option.dimension; + // if (optDim != null) { + // return data.getDimension(optDim); + // } + // const dimNames = data.dimensions; + // for (let i = dimNames.length - 1; i >= 0; i--) { + // const dimName = dimNames[i]; + // const dimInfo = data.getDimensionInfo(dimName); + // if (!dimInfo.isCalculationCoord) { + // return dimName; + // } + // } + // } + VisualMapModel.prototype.getDataDimensionIndex = function (data) { + var optDim = this.option.dimension; + if (optDim != null) { + return data.getDimensionIndex(optDim); + } + var dimNames = data.dimensions; + for (var i = dimNames.length - 1; i >= 0; i--) { + var dimName = dimNames[i]; + var dimInfo = data.getDimensionInfo(dimName); + if (!dimInfo.isCalculationCoord) { + return dimInfo.storeDimIndex; + } + } + }; + VisualMapModel.prototype.getExtent = function () { + return this._dataExtent.slice(); + }; + VisualMapModel.prototype.completeVisualOption = function () { + var ecModel = this.ecModel; + var thisOption = this.option; + var base = { + inRange: thisOption.inRange, + outOfRange: thisOption.outOfRange + }; + var target = thisOption.target || (thisOption.target = {}); + var controller = thisOption.controller || (thisOption.controller = {}); + merge(target, base); // Do not override + merge(controller, base); // Do not override + var isCategory = this.isCategory(); + completeSingle.call(this, target); + completeSingle.call(this, controller); + completeInactive.call(this, target, 'inRange', 'outOfRange'); + // completeInactive.call(this, target, 'outOfRange', 'inRange'); + completeController.call(this, controller); + function completeSingle(base) { + // Compatible with ec2 dataRange.color. + // The mapping order of dataRange.color is: [high value, ..., low value] + // whereas inRange.color and outOfRange.color is [low value, ..., high value] + // Notice: ec2 has no inverse. + if (isArray$1(thisOption.color) + // If there has been inRange: {symbol: ...}, adding color is a mistake. + // So adding color only when no inRange defined. + && !base.inRange) { + base.inRange = { + color: thisOption.color.slice().reverse() + }; + } + // Compatible with previous logic, always give a default color, otherwise + // simple config with no inRange and outOfRange will not work. + // Originally we use visualMap.color as the default color, but setOption at + // the second time the default color will be erased. So we change to use + // constant DEFAULT_COLOR. + // If user do not want the default color, set inRange: {color: null}. + base.inRange = base.inRange || { + color: ecModel.get('gradientColor') + }; + } + function completeInactive(base, stateExist, stateAbsent) { + var optExist = base[stateExist]; + var optAbsent = base[stateAbsent]; + if (optExist && !optAbsent) { + optAbsent = base[stateAbsent] = {}; + each$d(optExist, function (visualData, visualType) { + if (!VisualMapping.isValidType(visualType)) { + return; + } + var defa = visualDefault.get(visualType, 'inactive', isCategory); + if (defa != null) { + optAbsent[visualType] = defa; + // Compatibable with ec2: + // Only inactive color to rgba(0,0,0,0) can not + // make label transparent, so use opacity also. + if (visualType === 'color' && !optAbsent.hasOwnProperty('opacity') && !optAbsent.hasOwnProperty('colorAlpha')) { + optAbsent.opacity = [0, 0]; + } + } + }); + } + } + function completeController(controller) { + var symbolExists = (controller.inRange || {}).symbol || (controller.outOfRange || {}).symbol; + var symbolSizeExists = (controller.inRange || {}).symbolSize || (controller.outOfRange || {}).symbolSize; + var inactiveColor = this.get('inactiveColor'); + var itemSymbol = this.getItemSymbol(); + var defaultSymbol = itemSymbol || 'roundRect'; + each$d(this.stateList, function (state) { + var itemSize = this.itemSize; + var visuals = controller[state]; + // Set inactive color for controller if no other color + // attr (like colorAlpha) specified. + if (!visuals) { + visuals = controller[state] = { + color: isCategory ? inactiveColor : [inactiveColor] + }; + } + // Consistent symbol and symbolSize if not specified. + if (visuals.symbol == null) { + visuals.symbol = symbolExists && clone(symbolExists) || (isCategory ? defaultSymbol : [defaultSymbol]); + } + if (visuals.symbolSize == null) { + visuals.symbolSize = symbolSizeExists && clone(symbolSizeExists) || (isCategory ? itemSize[0] : [itemSize[0], itemSize[0]]); + } + // Filter none + visuals.symbol = mapVisual$1(visuals.symbol, function (symbol) { + return symbol === 'none' ? defaultSymbol : symbol; + }); + // Normalize symbolSize + var symbolSize = visuals.symbolSize; + if (symbolSize != null) { + var max_1 = -Infinity; + // symbolSize can be object when categories defined. + eachVisual(symbolSize, function (value) { + value > max_1 && (max_1 = value); + }); + visuals.symbolSize = mapVisual$1(symbolSize, function (value) { + return linearMap$1(value, [0, max_1], [0, itemSize[0]], true); + }); + } + }, this); + } + }; + VisualMapModel.prototype.resetItemSize = function () { + this.itemSize = [parseFloat(this.get('itemWidth')), parseFloat(this.get('itemHeight'))]; + }; + VisualMapModel.prototype.isCategory = function () { + return !!this.option.categories; + }; + /** + * @public + * @abstract + */ + VisualMapModel.prototype.setSelected = function (selected) {}; + VisualMapModel.prototype.getSelected = function () { + return null; + }; + /** + * @public + * @abstract + */ + VisualMapModel.prototype.getValueState = function (value) { + return null; + }; + /** + * FIXME + * Do not publish to thirt-part-dev temporarily + * util the interface is stable. (Should it return + * a function but not visual meta?) + * + * @pubilc + * @abstract + * @param getColorVisual + * params: value, valueState + * return: color + * @return {Object} visualMeta + * should includes {stops, outerColors} + * outerColor means [colorBeyondMinValue, colorBeyondMaxValue] + */ + VisualMapModel.prototype.getVisualMeta = function (getColorVisual) { + return null; + }; + VisualMapModel.type = 'visualMap'; + VisualMapModel.dependencies = ['series']; + VisualMapModel.defaultOption = { + show: true, + // zlevel: 0, + z: 4, + seriesIndex: 'all', + min: 0, + max: 200, + left: 0, + right: null, + top: null, + bottom: 0, + itemWidth: null, + itemHeight: null, + inverse: false, + orient: 'vertical', + backgroundColor: 'rgba(0,0,0,0)', + borderColor: '#ccc', + contentColor: '#5793f3', + inactiveColor: '#aaa', + borderWidth: 0, + padding: 5, + // 接受数组分别设定上右下左边距,同css + textGap: 10, + precision: 0, + textStyle: { + color: '#333' // 值域文字颜色 + } + }; + + return VisualMapModel; + }(ComponentModel); + + // Constant + var DEFAULT_BAR_BOUND = [20, 140]; + var ContinuousModel = /** @class */function (_super) { + __extends(ContinuousModel, _super); + function ContinuousModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = ContinuousModel.type; + return _this; + } + /** + * @override + */ + ContinuousModel.prototype.optionUpdated = function (newOption, isInit) { + _super.prototype.optionUpdated.apply(this, arguments); + this.resetExtent(); + this.resetVisual(function (mappingOption) { + mappingOption.mappingMethod = 'linear'; + mappingOption.dataExtent = this.getExtent(); + }); + this._resetRange(); + }; + /** + * @protected + * @override + */ + ContinuousModel.prototype.resetItemSize = function () { + _super.prototype.resetItemSize.apply(this, arguments); + var itemSize = this.itemSize; + (itemSize[0] == null || isNaN(itemSize[0])) && (itemSize[0] = DEFAULT_BAR_BOUND[0]); + (itemSize[1] == null || isNaN(itemSize[1])) && (itemSize[1] = DEFAULT_BAR_BOUND[1]); + }; + /** + * @private + */ + ContinuousModel.prototype._resetRange = function () { + var dataExtent = this.getExtent(); + var range = this.option.range; + if (!range || range.auto) { + // `range` should always be array (so we don't use other + // value like 'auto') for user-friend. (consider getOption). + dataExtent.auto = 1; + this.option.range = dataExtent; + } else if (isArray(range)) { + if (range[0] > range[1]) { + range.reverse(); + } + range[0] = Math.max(range[0], dataExtent[0]); + range[1] = Math.min(range[1], dataExtent[1]); + } + }; + /** + * @protected + * @override + */ + ContinuousModel.prototype.completeVisualOption = function () { + _super.prototype.completeVisualOption.apply(this, arguments); + each(this.stateList, function (state) { + var symbolSize = this.option.controller[state].symbolSize; + if (symbolSize && symbolSize[0] !== symbolSize[1]) { + symbolSize[0] = symbolSize[1] / 3; // For good looking. + } + }, this); + }; + /** + * @override + */ + ContinuousModel.prototype.setSelected = function (selected) { + this.option.range = selected.slice(); + this._resetRange(); + }; + /** + * @public + */ + ContinuousModel.prototype.getSelected = function () { + var dataExtent = this.getExtent(); + var dataInterval = asc((this.get('range') || []).slice()); + // Clamp + dataInterval[0] > dataExtent[1] && (dataInterval[0] = dataExtent[1]); + dataInterval[1] > dataExtent[1] && (dataInterval[1] = dataExtent[1]); + dataInterval[0] < dataExtent[0] && (dataInterval[0] = dataExtent[0]); + dataInterval[1] < dataExtent[0] && (dataInterval[1] = dataExtent[0]); + return dataInterval; + }; + /** + * @override + */ + ContinuousModel.prototype.getValueState = function (value) { + var range = this.option.range; + var dataExtent = this.getExtent(); + // When range[0] === dataExtent[0], any value larger than dataExtent[0] maps to 'inRange'. + // range[1] is processed likewise. + return (range[0] <= dataExtent[0] || range[0] <= value) && (range[1] >= dataExtent[1] || value <= range[1]) ? 'inRange' : 'outOfRange'; + }; + ContinuousModel.prototype.findTargetDataIndices = function (range) { + var result = []; + this.eachTargetSeries(function (seriesModel) { + var dataIndices = []; + var data = seriesModel.getData(); + data.each(this.getDataDimensionIndex(data), function (value, dataIndex) { + range[0] <= value && value <= range[1] && dataIndices.push(dataIndex); + }, this); + result.push({ + seriesId: seriesModel.id, + dataIndex: dataIndices + }); + }, this); + return result; + }; + /** + * @implement + */ + ContinuousModel.prototype.getVisualMeta = function (getColorVisual) { + var oVals = getColorStopValues(this, 'outOfRange', this.getExtent()); + var iVals = getColorStopValues(this, 'inRange', this.option.range.slice()); + var stops = []; + function setStop(value, valueState) { + stops.push({ + value: value, + color: getColorVisual(value, valueState) + }); + } + // Format to: outOfRange -- inRange -- outOfRange. + var iIdx = 0; + var oIdx = 0; + var iLen = iVals.length; + var oLen = oVals.length; + for (; oIdx < oLen && (!iVals.length || oVals[oIdx] <= iVals[0]); oIdx++) { + // If oVal[oIdx] === iVals[iIdx], oVal[oIdx] should be ignored. + if (oVals[oIdx] < iVals[iIdx]) { + setStop(oVals[oIdx], 'outOfRange'); + } + } + for (var first = 1; iIdx < iLen; iIdx++, first = 0) { + // If range is full, value beyond min, max will be clamped. + // make a singularity + first && stops.length && setStop(iVals[iIdx], 'outOfRange'); + setStop(iVals[iIdx], 'inRange'); + } + for (var first = 1; oIdx < oLen; oIdx++) { + if (!iVals.length || iVals[iVals.length - 1] < oVals[oIdx]) { + // make a singularity + if (first) { + stops.length && setStop(stops[stops.length - 1].value, 'outOfRange'); + first = 0; + } + setStop(oVals[oIdx], 'outOfRange'); + } + } + var stopsLen = stops.length; + return { + stops: stops, + outerColors: [stopsLen ? stops[0].color : 'transparent', stopsLen ? stops[stopsLen - 1].color : 'transparent'] + }; + }; + ContinuousModel.type = 'visualMap.continuous'; + ContinuousModel.defaultOption = inheritDefaultOption(VisualMapModel.defaultOption, { + align: 'auto', + calculable: false, + hoverLink: true, + realtime: true, + handleIcon: 'path://M-11.39,9.77h0a3.5,3.5,0,0,1-3.5,3.5h-22a3.5,3.5,0,0,1-3.5-3.5h0a3.5,3.5,0,0,1,3.5-3.5h22A3.5,3.5,0,0,1-11.39,9.77Z', + handleSize: '120%', + handleStyle: { + borderColor: '#fff', + borderWidth: 1 + }, + indicatorIcon: 'circle', + indicatorSize: '50%', + indicatorStyle: { + borderColor: '#fff', + borderWidth: 2, + shadowBlur: 2, + shadowOffsetX: 1, + shadowOffsetY: 1, + shadowColor: 'rgba(0,0,0,0.2)' + } + // emphasis: { + // handleStyle: { + // shadowBlur: 3, + // shadowOffsetX: 1, + // shadowOffsetY: 1, + // shadowColor: 'rgba(0,0,0,0.2)' + // } + // } + }); + + return ContinuousModel; + }(VisualMapModel); + function getColorStopValues(visualMapModel, valueState, dataExtent) { + if (dataExtent[0] === dataExtent[1]) { + return dataExtent.slice(); + } + // When using colorHue mapping, it is not linear color any more. + // Moreover, canvas gradient seems not to be accurate linear. + // FIXME + // Should be arbitrary value 100? or based on pixel size? + var count = 200; + var step = (dataExtent[1] - dataExtent[0]) / count; + var value = dataExtent[0]; + var stopValues = []; + for (var i = 0; i <= count && value < dataExtent[1]; i++) { + stopValues.push(value); + value += step; + } + stopValues.push(dataExtent[1]); + return stopValues; + } + + var VisualMapView = /** @class */function (_super) { + __extends(VisualMapView, _super); + function VisualMapView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = VisualMapView.type; + _this.autoPositionValues = { + left: 1, + right: 1, + top: 1, + bottom: 1 + }; + return _this; + } + VisualMapView.prototype.init = function (ecModel, api) { + this.ecModel = ecModel; + this.api = api; + }; + /** + * @protected + */ + VisualMapView.prototype.render = function (visualMapModel, ecModel, api, payload // TODO: TYPE + ) { + this.visualMapModel = visualMapModel; + if (visualMapModel.get('show') === false) { + this.group.removeAll(); + return; + } + this.doRender(visualMapModel, ecModel, api, payload); + }; + /** + * @protected + */ + VisualMapView.prototype.renderBackground = function (group) { + var visualMapModel = this.visualMapModel; + var padding = normalizeCssArray$1(visualMapModel.get('padding') || 0); + var rect = group.getBoundingRect(); + group.add(new Rect({ + z2: -1, + silent: true, + shape: { + x: rect.x - padding[3], + y: rect.y - padding[0], + width: rect.width + padding[3] + padding[1], + height: rect.height + padding[0] + padding[2] + }, + style: { + fill: visualMapModel.get('backgroundColor'), + stroke: visualMapModel.get('borderColor'), + lineWidth: visualMapModel.get('borderWidth') + } + })); + }; + /** + * @protected + * @param targetValue can be Infinity or -Infinity + * @param visualCluster Only can be 'color' 'opacity' 'symbol' 'symbolSize' + * @param opts + * @param opts.forceState Specify state, instead of using getValueState method. + * @param opts.convertOpacityToAlpha For color gradient in controller widget. + * @return {*} Visual value. + */ + VisualMapView.prototype.getControllerVisual = function (targetValue, visualCluster, opts) { + opts = opts || {}; + var forceState = opts.forceState; + var visualMapModel = this.visualMapModel; + var visualObj = {}; + // Default values. + if (visualCluster === 'color') { + var defaultColor = visualMapModel.get('contentColor'); + visualObj.color = defaultColor; + } + function getter(key) { + return visualObj[key]; + } + function setter(key, value) { + visualObj[key] = value; + } + var mappings = visualMapModel.controllerVisuals[forceState || visualMapModel.getValueState(targetValue)]; + var visualTypes = VisualMapping.prepareVisualTypes(mappings); + each(visualTypes, function (type) { + var visualMapping = mappings[type]; + if (opts.convertOpacityToAlpha && type === 'opacity') { + type = 'colorAlpha'; + visualMapping = mappings.__alphaForOpacity; + } + if (VisualMapping.dependsOn(type, visualCluster)) { + visualMapping && visualMapping.applyVisual(targetValue, getter, setter); + } + }); + return visualObj[visualCluster]; + }; + VisualMapView.prototype.positionGroup = function (group) { + var model = this.visualMapModel; + var api = this.api; + positionElement(group, model.getBoxLayoutParams(), { + width: api.getWidth(), + height: api.getHeight() + }); + }; + VisualMapView.prototype.doRender = function (visualMapModel, ecModel, api, payload) {}; + VisualMapView.type = 'visualMap'; + return VisualMapView; + }(ComponentView); + + var paramsSet = [['left', 'right', 'width'], ['top', 'bottom', 'height']]; + /** + * @param visualMapModel + * @param api + * @param itemSize always [short, long] + * @return {string} 'left' or 'right' or 'top' or 'bottom' + */ + function getItemAlign(visualMapModel, api, itemSize) { + var modelOption = visualMapModel.option; + var itemAlign = modelOption.align; + if (itemAlign != null && itemAlign !== 'auto') { + return itemAlign; + } + // Auto decision align. + var ecSize = { + width: api.getWidth(), + height: api.getHeight() + }; + var realIndex = modelOption.orient === 'horizontal' ? 1 : 0; + var reals = paramsSet[realIndex]; + var fakeValue = [0, null, 10]; + var layoutInput = {}; + for (var i = 0; i < 3; i++) { + layoutInput[paramsSet[1 - realIndex][i]] = fakeValue[i]; + layoutInput[reals[i]] = i === 2 ? itemSize[0] : modelOption[reals[i]]; + } + var rParam = [['x', 'width', 3], ['y', 'height', 0]][realIndex]; + var rect = getLayoutRect(layoutInput, ecSize, modelOption.padding); + return reals[(rect.margin[rParam[2]] || 0) + rect[rParam[0]] + rect[rParam[1]] * 0.5 < ecSize[rParam[1]] * 0.5 ? 0 : 1]; + } + /** + * Prepare dataIndex for outside usage, where dataIndex means rawIndex, and + * dataIndexInside means filtered index. + */ + // TODO: TYPE more specified payload types. + function makeHighDownBatch(batch, visualMapModel) { + each(batch || [], function (batchItem) { + if (batchItem.dataIndex != null) { + batchItem.dataIndexInside = batchItem.dataIndex; + batchItem.dataIndex = null; + } + batchItem.highlightKey = 'visualMap' + (visualMapModel ? visualMapModel.componentIndex : ''); + }); + return batch; + } + + var linearMap$2 = linearMap; + var each$e = each; + var mathMin$a = Math.min; + var mathMax$a = Math.max; + // Arbitrary value + var HOVER_LINK_SIZE = 12; + var HOVER_LINK_OUT = 6; + // Notice: + // Any "interval" should be by the order of [low, high]. + // "handle0" (handleIndex === 0) maps to + // low data value: this._dataInterval[0] and has low coord. + // "handle1" (handleIndex === 1) maps to + // high data value: this._dataInterval[1] and has high coord. + // The logic of transform is implemented in this._createBarGroup. + var ContinuousView = /** @class */function (_super) { + __extends(ContinuousView, _super); + function ContinuousView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = ContinuousView.type; + _this._shapes = {}; + _this._dataInterval = []; + _this._handleEnds = []; + _this._hoverLinkDataIndices = []; + return _this; + } + ContinuousView.prototype.init = function (ecModel, api) { + _super.prototype.init.call(this, ecModel, api); + this._hoverLinkFromSeriesMouseOver = bind(this._hoverLinkFromSeriesMouseOver, this); + this._hideIndicator = bind(this._hideIndicator, this); + }; + ContinuousView.prototype.doRender = function (visualMapModel, ecModel, api, payload) { + if (!payload || payload.type !== 'selectDataRange' || payload.from !== this.uid) { + this._buildView(); + } + }; + ContinuousView.prototype._buildView = function () { + this.group.removeAll(); + var visualMapModel = this.visualMapModel; + var thisGroup = this.group; + this._orient = visualMapModel.get('orient'); + this._useHandle = visualMapModel.get('calculable'); + this._resetInterval(); + this._renderBar(thisGroup); + var dataRangeText = visualMapModel.get('text'); + this._renderEndsText(thisGroup, dataRangeText, 0); + this._renderEndsText(thisGroup, dataRangeText, 1); + // Do this for background size calculation. + this._updateView(true); + // After updating view, inner shapes is built completely, + // and then background can be rendered. + this.renderBackground(thisGroup); + // Real update view + this._updateView(); + this._enableHoverLinkToSeries(); + this._enableHoverLinkFromSeries(); + this.positionGroup(thisGroup); + }; + ContinuousView.prototype._renderEndsText = function (group, dataRangeText, endsIndex) { + if (!dataRangeText) { + return; + } + // Compatible with ec2, text[0] map to high value, text[1] map low value. + var text = dataRangeText[1 - endsIndex]; + text = text != null ? text + '' : ''; + var visualMapModel = this.visualMapModel; + var textGap = visualMapModel.get('textGap'); + var itemSize = visualMapModel.itemSize; + var barGroup = this._shapes.mainGroup; + var position = this._applyTransform([itemSize[0] / 2, endsIndex === 0 ? -textGap : itemSize[1] + textGap], barGroup); + var align = this._applyTransform(endsIndex === 0 ? 'bottom' : 'top', barGroup); + var orient = this._orient; + var textStyleModel = this.visualMapModel.textStyleModel; + this.group.add(new ZRText({ + style: createTextStyle(textStyleModel, { + x: position[0], + y: position[1], + verticalAlign: orient === 'horizontal' ? 'middle' : align, + align: orient === 'horizontal' ? align : 'center', + text: text + }) + })); + }; + ContinuousView.prototype._renderBar = function (targetGroup) { + var visualMapModel = this.visualMapModel; + var shapes = this._shapes; + var itemSize = visualMapModel.itemSize; + var orient = this._orient; + var useHandle = this._useHandle; + var itemAlign = getItemAlign(visualMapModel, this.api, itemSize); + var mainGroup = shapes.mainGroup = this._createBarGroup(itemAlign); + var gradientBarGroup = new Group(); + mainGroup.add(gradientBarGroup); + // Bar + gradientBarGroup.add(shapes.outOfRange = createPolygon()); + gradientBarGroup.add(shapes.inRange = createPolygon(null, useHandle ? getCursor$1(this._orient) : null, bind(this._dragHandle, this, 'all', false), bind(this._dragHandle, this, 'all', true))); + // A border radius clip. + gradientBarGroup.setClipPath(new Rect({ + shape: { + x: 0, + y: 0, + width: itemSize[0], + height: itemSize[1], + r: 3 + } + })); + var textRect = visualMapModel.textStyleModel.getTextRect('国'); + var textSize = mathMax$a(textRect.width, textRect.height); + // Handle + if (useHandle) { + shapes.handleThumbs = []; + shapes.handleLabels = []; + shapes.handleLabelPoints = []; + this._createHandle(visualMapModel, mainGroup, 0, itemSize, textSize, orient); + this._createHandle(visualMapModel, mainGroup, 1, itemSize, textSize, orient); + } + this._createIndicator(visualMapModel, mainGroup, itemSize, textSize, orient); + targetGroup.add(mainGroup); + }; + ContinuousView.prototype._createHandle = function (visualMapModel, mainGroup, handleIndex, itemSize, textSize, orient) { + var onDrift = bind(this._dragHandle, this, handleIndex, false); + var onDragEnd = bind(this._dragHandle, this, handleIndex, true); + var handleSize = parsePercent(visualMapModel.get('handleSize'), itemSize[0]); + var handleThumb = createSymbol(visualMapModel.get('handleIcon'), -handleSize / 2, -handleSize / 2, handleSize, handleSize, null, true); + var cursor = getCursor$1(this._orient); + handleThumb.attr({ + cursor: cursor, + draggable: true, + drift: onDrift, + ondragend: onDragEnd, + onmousemove: function (e) { + stop(e.event); + } + }); + handleThumb.x = itemSize[0] / 2; + handleThumb.useStyle(visualMapModel.getModel('handleStyle').getItemStyle()); + handleThumb.setStyle({ + strokeNoScale: true, + strokeFirst: true + }); + handleThumb.style.lineWidth *= 2; + handleThumb.ensureState('emphasis').style = visualMapModel.getModel(['emphasis', 'handleStyle']).getItemStyle(); + setAsHighDownDispatcher(handleThumb, true); + mainGroup.add(handleThumb); + // Text is always horizontal layout but should not be effected by + // transform (orient/inverse). So label is built separately but not + // use zrender/graphic/helper/RectText, and is located based on view + // group (according to handleLabelPoint) but not barGroup. + var textStyleModel = this.visualMapModel.textStyleModel; + var handleLabel = new ZRText({ + cursor: cursor, + draggable: true, + drift: onDrift, + onmousemove: function (e) { + // For mobile device, prevent screen slider on the button. + stop(e.event); + }, + ondragend: onDragEnd, + style: createTextStyle(textStyleModel, { + x: 0, + y: 0, + text: '' + }) + }); + handleLabel.ensureState('blur').style = { + opacity: 0.1 + }; + handleLabel.stateTransition = { + duration: 200 + }; + this.group.add(handleLabel); + var handleLabelPoint = [handleSize, 0]; + var shapes = this._shapes; + shapes.handleThumbs[handleIndex] = handleThumb; + shapes.handleLabelPoints[handleIndex] = handleLabelPoint; + shapes.handleLabels[handleIndex] = handleLabel; + }; + ContinuousView.prototype._createIndicator = function (visualMapModel, mainGroup, itemSize, textSize, orient) { + var scale = parsePercent(visualMapModel.get('indicatorSize'), itemSize[0]); + var indicator = createSymbol(visualMapModel.get('indicatorIcon'), -scale / 2, -scale / 2, scale, scale, null, true); + indicator.attr({ + cursor: 'move', + invisible: true, + silent: true, + x: itemSize[0] / 2 + }); + var indicatorStyle = visualMapModel.getModel('indicatorStyle').getItemStyle(); + if (indicator instanceof ZRImage) { + var pathStyle = indicator.style; + indicator.useStyle(extend({ + // TODO other properties like x, y ? + image: pathStyle.image, + x: pathStyle.x, + y: pathStyle.y, + width: pathStyle.width, + height: pathStyle.height + }, indicatorStyle)); + } else { + indicator.useStyle(indicatorStyle); + } + mainGroup.add(indicator); + var textStyleModel = this.visualMapModel.textStyleModel; + var indicatorLabel = new ZRText({ + silent: true, + invisible: true, + style: createTextStyle(textStyleModel, { + x: 0, + y: 0, + text: '' + }) + }); + this.group.add(indicatorLabel); + var indicatorLabelPoint = [(orient === 'horizontal' ? textSize / 2 : HOVER_LINK_OUT) + itemSize[0] / 2, 0]; + var shapes = this._shapes; + shapes.indicator = indicator; + shapes.indicatorLabel = indicatorLabel; + shapes.indicatorLabelPoint = indicatorLabelPoint; + this._firstShowIndicator = true; + }; + ContinuousView.prototype._dragHandle = function (handleIndex, isEnd, + // dx is event from ondragend if isEnd is true. It's not used + dx, dy) { + if (!this._useHandle) { + return; + } + this._dragging = !isEnd; + if (!isEnd) { + // Transform dx, dy to bar coordination. + var vertex = this._applyTransform([dx, dy], this._shapes.mainGroup, true); + this._updateInterval(handleIndex, vertex[1]); + this._hideIndicator(); + // Considering realtime, update view should be executed + // before dispatch action. + this._updateView(); + } + // dragEnd do not dispatch action when realtime. + if (isEnd === !this.visualMapModel.get('realtime')) { + // jshint ignore:line + this.api.dispatchAction({ + type: 'selectDataRange', + from: this.uid, + visualMapId: this.visualMapModel.id, + selected: this._dataInterval.slice() + }); + } + if (isEnd) { + !this._hovering && this._clearHoverLinkToSeries(); + } else if (useHoverLinkOnHandle(this.visualMapModel)) { + this._doHoverLinkToSeries(this._handleEnds[handleIndex], false); + } + }; + ContinuousView.prototype._resetInterval = function () { + var visualMapModel = this.visualMapModel; + var dataInterval = this._dataInterval = visualMapModel.getSelected(); + var dataExtent = visualMapModel.getExtent(); + var sizeExtent = [0, visualMapModel.itemSize[1]]; + this._handleEnds = [linearMap$2(dataInterval[0], dataExtent, sizeExtent, true), linearMap$2(dataInterval[1], dataExtent, sizeExtent, true)]; + }; + /** + * @private + * @param {(number|string)} handleIndex 0 or 1 or 'all' + * @param {number} dx + * @param {number} dy + */ + ContinuousView.prototype._updateInterval = function (handleIndex, delta) { + delta = delta || 0; + var visualMapModel = this.visualMapModel; + var handleEnds = this._handleEnds; + var sizeExtent = [0, visualMapModel.itemSize[1]]; + sliderMove(delta, handleEnds, sizeExtent, handleIndex, + // cross is forbidden + 0); + var dataExtent = visualMapModel.getExtent(); + // Update data interval. + this._dataInterval = [linearMap$2(handleEnds[0], sizeExtent, dataExtent, true), linearMap$2(handleEnds[1], sizeExtent, dataExtent, true)]; + }; + ContinuousView.prototype._updateView = function (forSketch) { + var visualMapModel = this.visualMapModel; + var dataExtent = visualMapModel.getExtent(); + var shapes = this._shapes; + var outOfRangeHandleEnds = [0, visualMapModel.itemSize[1]]; + var inRangeHandleEnds = forSketch ? outOfRangeHandleEnds : this._handleEnds; + var visualInRange = this._createBarVisual(this._dataInterval, dataExtent, inRangeHandleEnds, 'inRange'); + var visualOutOfRange = this._createBarVisual(dataExtent, dataExtent, outOfRangeHandleEnds, 'outOfRange'); + shapes.inRange.setStyle({ + fill: visualInRange.barColor + // opacity: visualInRange.opacity + }).setShape('points', visualInRange.barPoints); + shapes.outOfRange.setStyle({ + fill: visualOutOfRange.barColor + // opacity: visualOutOfRange.opacity + }).setShape('points', visualOutOfRange.barPoints); + this._updateHandle(inRangeHandleEnds, visualInRange); + }; + ContinuousView.prototype._createBarVisual = function (dataInterval, dataExtent, handleEnds, forceState) { + var opts = { + forceState: forceState, + convertOpacityToAlpha: true + }; + var colorStops = this._makeColorGradient(dataInterval, opts); + var symbolSizes = [this.getControllerVisual(dataInterval[0], 'symbolSize', opts), this.getControllerVisual(dataInterval[1], 'symbolSize', opts)]; + var barPoints = this._createBarPoints(handleEnds, symbolSizes); + return { + barColor: new LinearGradient(0, 0, 0, 1, colorStops), + barPoints: barPoints, + handlesColor: [colorStops[0].color, colorStops[colorStops.length - 1].color] + }; + }; + ContinuousView.prototype._makeColorGradient = function (dataInterval, opts) { + // Considering colorHue, which is not linear, so we have to sample + // to calculate gradient color stops, but not only calculate head + // and tail. + var sampleNumber = 100; // Arbitrary value. + var colorStops = []; + var step = (dataInterval[1] - dataInterval[0]) / sampleNumber; + colorStops.push({ + color: this.getControllerVisual(dataInterval[0], 'color', opts), + offset: 0 + }); + for (var i = 1; i < sampleNumber; i++) { + var currValue = dataInterval[0] + step * i; + if (currValue > dataInterval[1]) { + break; + } + colorStops.push({ + color: this.getControllerVisual(currValue, 'color', opts), + offset: i / sampleNumber + }); + } + colorStops.push({ + color: this.getControllerVisual(dataInterval[1], 'color', opts), + offset: 1 + }); + return colorStops; + }; + ContinuousView.prototype._createBarPoints = function (handleEnds, symbolSizes) { + var itemSize = this.visualMapModel.itemSize; + return [[itemSize[0] - symbolSizes[0], handleEnds[0]], [itemSize[0], handleEnds[0]], [itemSize[0], handleEnds[1]], [itemSize[0] - symbolSizes[1], handleEnds[1]]]; + }; + ContinuousView.prototype._createBarGroup = function (itemAlign) { + var orient = this._orient; + var inverse = this.visualMapModel.get('inverse'); + return new Group(orient === 'horizontal' && !inverse ? { + scaleX: itemAlign === 'bottom' ? 1 : -1, + rotation: Math.PI / 2 + } : orient === 'horizontal' && inverse ? { + scaleX: itemAlign === 'bottom' ? -1 : 1, + rotation: -Math.PI / 2 + } : orient === 'vertical' && !inverse ? { + scaleX: itemAlign === 'left' ? 1 : -1, + scaleY: -1 + } : { + scaleX: itemAlign === 'left' ? 1 : -1 + }); + }; + ContinuousView.prototype._updateHandle = function (handleEnds, visualInRange) { + if (!this._useHandle) { + return; + } + var shapes = this._shapes; + var visualMapModel = this.visualMapModel; + var handleThumbs = shapes.handleThumbs; + var handleLabels = shapes.handleLabels; + var itemSize = visualMapModel.itemSize; + var dataExtent = visualMapModel.getExtent(); + each$e([0, 1], function (handleIndex) { + var handleThumb = handleThumbs[handleIndex]; + handleThumb.setStyle('fill', visualInRange.handlesColor[handleIndex]); + handleThumb.y = handleEnds[handleIndex]; + var val = linearMap$2(handleEnds[handleIndex], [0, itemSize[1]], dataExtent, true); + var symbolSize = this.getControllerVisual(val, 'symbolSize'); + handleThumb.scaleX = handleThumb.scaleY = symbolSize / itemSize[0]; + handleThumb.x = itemSize[0] - symbolSize / 2; + // Update handle label position. + var textPoint = applyTransform$1(shapes.handleLabelPoints[handleIndex], getTransform(handleThumb, this.group)); + handleLabels[handleIndex].setStyle({ + x: textPoint[0], + y: textPoint[1], + text: visualMapModel.formatValueText(this._dataInterval[handleIndex]), + verticalAlign: 'middle', + align: this._orient === 'vertical' ? this._applyTransform('left', shapes.mainGroup) : 'center' + }); + }, this); + }; + ContinuousView.prototype._showIndicator = function (cursorValue, textValue, rangeSymbol, halfHoverLinkSize) { + var visualMapModel = this.visualMapModel; + var dataExtent = visualMapModel.getExtent(); + var itemSize = visualMapModel.itemSize; + var sizeExtent = [0, itemSize[1]]; + var shapes = this._shapes; + var indicator = shapes.indicator; + if (!indicator) { + return; + } + indicator.attr('invisible', false); + var opts = { + convertOpacityToAlpha: true + }; + var color = this.getControllerVisual(cursorValue, 'color', opts); + var symbolSize = this.getControllerVisual(cursorValue, 'symbolSize'); + var y = linearMap$2(cursorValue, dataExtent, sizeExtent, true); + var x = itemSize[0] - symbolSize / 2; + var oldIndicatorPos = { + x: indicator.x, + y: indicator.y + }; + // Update handle label position. + indicator.y = y; + indicator.x = x; + var textPoint = applyTransform$1(shapes.indicatorLabelPoint, getTransform(indicator, this.group)); + var indicatorLabel = shapes.indicatorLabel; + indicatorLabel.attr('invisible', false); + var align = this._applyTransform('left', shapes.mainGroup); + var orient = this._orient; + var isHorizontal = orient === 'horizontal'; + indicatorLabel.setStyle({ + text: (rangeSymbol ? rangeSymbol : '') + visualMapModel.formatValueText(textValue), + verticalAlign: isHorizontal ? align : 'middle', + align: isHorizontal ? 'center' : align + }); + var indicatorNewProps = { + x: x, + y: y, + style: { + fill: color + } + }; + var labelNewProps = { + style: { + x: textPoint[0], + y: textPoint[1] + } + }; + if (visualMapModel.ecModel.isAnimationEnabled() && !this._firstShowIndicator) { + var animationCfg = { + duration: 100, + easing: 'cubicInOut', + additive: true + }; + indicator.x = oldIndicatorPos.x; + indicator.y = oldIndicatorPos.y; + indicator.animateTo(indicatorNewProps, animationCfg); + indicatorLabel.animateTo(labelNewProps, animationCfg); + } else { + indicator.attr(indicatorNewProps); + indicatorLabel.attr(labelNewProps); + } + this._firstShowIndicator = false; + var handleLabels = this._shapes.handleLabels; + if (handleLabels) { + for (var i = 0; i < handleLabels.length; i++) { + // Fade out handle labels. + // NOTE: Must use api enter/leave on emphasis/blur/select state. Or the global states manager will change it. + this.api.enterBlur(handleLabels[i]); + } + } + }; + ContinuousView.prototype._enableHoverLinkToSeries = function () { + var self = this; + this._shapes.mainGroup.on('mousemove', function (e) { + self._hovering = true; + if (!self._dragging) { + var itemSize = self.visualMapModel.itemSize; + var pos = self._applyTransform([e.offsetX, e.offsetY], self._shapes.mainGroup, true, true); + // For hover link show when hover handle, which might be + // below or upper than sizeExtent. + pos[1] = mathMin$a(mathMax$a(0, pos[1]), itemSize[1]); + self._doHoverLinkToSeries(pos[1], 0 <= pos[0] && pos[0] <= itemSize[0]); + } + }).on('mouseout', function () { + // When mouse is out of handle, hoverLink still need + // to be displayed when realtime is set as false. + self._hovering = false; + !self._dragging && self._clearHoverLinkToSeries(); + }); + }; + ContinuousView.prototype._enableHoverLinkFromSeries = function () { + var zr = this.api.getZr(); + if (this.visualMapModel.option.hoverLink) { + zr.on('mouseover', this._hoverLinkFromSeriesMouseOver, this); + zr.on('mouseout', this._hideIndicator, this); + } else { + this._clearHoverLinkFromSeries(); + } + }; + ContinuousView.prototype._doHoverLinkToSeries = function (cursorPos, hoverOnBar) { + var visualMapModel = this.visualMapModel; + var itemSize = visualMapModel.itemSize; + if (!visualMapModel.option.hoverLink) { + return; + } + var sizeExtent = [0, itemSize[1]]; + var dataExtent = visualMapModel.getExtent(); + // For hover link show when hover handle, which might be below or upper than sizeExtent. + cursorPos = mathMin$a(mathMax$a(sizeExtent[0], cursorPos), sizeExtent[1]); + var halfHoverLinkSize = getHalfHoverLinkSize(visualMapModel, dataExtent, sizeExtent); + var hoverRange = [cursorPos - halfHoverLinkSize, cursorPos + halfHoverLinkSize]; + var cursorValue = linearMap$2(cursorPos, sizeExtent, dataExtent, true); + var valueRange = [linearMap$2(hoverRange[0], sizeExtent, dataExtent, true), linearMap$2(hoverRange[1], sizeExtent, dataExtent, true)]; + // Consider data range is out of visualMap range, see test/visualMap-continuous.html, + // where china and india has very large population. + hoverRange[0] < sizeExtent[0] && (valueRange[0] = -Infinity); + hoverRange[1] > sizeExtent[1] && (valueRange[1] = Infinity); + // Do not show indicator when mouse is over handle, + // otherwise labels overlap, especially when dragging. + if (hoverOnBar) { + if (valueRange[0] === -Infinity) { + this._showIndicator(cursorValue, valueRange[1], '< ', halfHoverLinkSize); + } else if (valueRange[1] === Infinity) { + this._showIndicator(cursorValue, valueRange[0], '> ', halfHoverLinkSize); + } else { + this._showIndicator(cursorValue, cursorValue, '≈ ', halfHoverLinkSize); + } + } + // When realtime is set as false, handles, which are in barGroup, + // also trigger hoverLink, which help user to realize where they + // focus on when dragging. (see test/heatmap-large.html) + // When realtime is set as true, highlight will not show when hover + // handle, because the label on handle, which displays a exact value + // but not range, might mislead users. + var oldBatch = this._hoverLinkDataIndices; + var newBatch = []; + if (hoverOnBar || useHoverLinkOnHandle(visualMapModel)) { + newBatch = this._hoverLinkDataIndices = visualMapModel.findTargetDataIndices(valueRange); + } + var resultBatches = compressBatches(oldBatch, newBatch); + this._dispatchHighDown('downplay', makeHighDownBatch(resultBatches[0], visualMapModel)); + this._dispatchHighDown('highlight', makeHighDownBatch(resultBatches[1], visualMapModel)); + }; + ContinuousView.prototype._hoverLinkFromSeriesMouseOver = function (e) { + var ecData; + findEventDispatcher(e.target, function (target) { + var currECData = getECData(target); + if (currECData.dataIndex != null) { + ecData = currECData; + return true; + } + }, true); + if (!ecData) { + return; + } + var dataModel = this.ecModel.getSeriesByIndex(ecData.seriesIndex); + var visualMapModel = this.visualMapModel; + if (!visualMapModel.isTargetSeries(dataModel)) { + return; + } + var data = dataModel.getData(ecData.dataType); + var value = data.getStore().get(visualMapModel.getDataDimensionIndex(data), ecData.dataIndex); + if (!isNaN(value)) { + this._showIndicator(value, value); + } + }; + ContinuousView.prototype._hideIndicator = function () { + var shapes = this._shapes; + shapes.indicator && shapes.indicator.attr('invisible', true); + shapes.indicatorLabel && shapes.indicatorLabel.attr('invisible', true); + var handleLabels = this._shapes.handleLabels; + if (handleLabels) { + for (var i = 0; i < handleLabels.length; i++) { + // Fade out handle labels. + // NOTE: Must use api enter/leave on emphasis/blur/select state. Or the global states manager will change it. + this.api.leaveBlur(handleLabels[i]); + } + } + }; + ContinuousView.prototype._clearHoverLinkToSeries = function () { + this._hideIndicator(); + var indices = this._hoverLinkDataIndices; + this._dispatchHighDown('downplay', makeHighDownBatch(indices, this.visualMapModel)); + indices.length = 0; + }; + ContinuousView.prototype._clearHoverLinkFromSeries = function () { + this._hideIndicator(); + var zr = this.api.getZr(); + zr.off('mouseover', this._hoverLinkFromSeriesMouseOver); + zr.off('mouseout', this._hideIndicator); + }; + ContinuousView.prototype._applyTransform = function (vertex, element, inverse, global) { + var transform = getTransform(element, global ? null : this.group); + return isArray(vertex) ? applyTransform$1(vertex, transform, inverse) : transformDirection(vertex, transform, inverse); + }; + // TODO: TYPE more specified payload types. + ContinuousView.prototype._dispatchHighDown = function (type, batch) { + batch && batch.length && this.api.dispatchAction({ + type: type, + batch: batch + }); + }; + /** + * @override + */ + ContinuousView.prototype.dispose = function () { + this._clearHoverLinkFromSeries(); + this._clearHoverLinkToSeries(); + }; + ContinuousView.type = 'visualMap.continuous'; + return ContinuousView; + }(VisualMapView); + function createPolygon(points, cursor, onDrift, onDragEnd) { + return new Polygon({ + shape: { + points: points + }, + draggable: !!onDrift, + cursor: cursor, + drift: onDrift, + onmousemove: function (e) { + // For mobile device, prevent screen slider on the button. + stop(e.event); + }, + ondragend: onDragEnd + }); + } + function getHalfHoverLinkSize(visualMapModel, dataExtent, sizeExtent) { + var halfHoverLinkSize = HOVER_LINK_SIZE / 2; + var hoverLinkDataSize = visualMapModel.get('hoverLinkDataSize'); + if (hoverLinkDataSize) { + halfHoverLinkSize = linearMap$2(hoverLinkDataSize, dataExtent, sizeExtent, true) / 2; + } + return halfHoverLinkSize; + } + function useHoverLinkOnHandle(visualMapModel) { + var hoverLinkOnHandle = visualMapModel.get('hoverLinkOnHandle'); + return !!(hoverLinkOnHandle == null ? visualMapModel.get('realtime') : hoverLinkOnHandle); + } + function getCursor$1(orient) { + return orient === 'vertical' ? 'ns-resize' : 'ew-resize'; + } + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + + /** + * AUTO-GENERATED FILE. DO NOT MODIFY. + */ + + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + var visualMapActionInfo = { + type: 'selectDataRange', + event: 'dataRangeSelected', + // FIXME use updateView appears wrong + update: 'update' + }; + var visualMapActionHander = function (payload, ecModel) { + ecModel.eachComponent({ + mainType: 'visualMap', + query: payload + }, function (model) { + model.setSelected(payload.selected); + }); + }; + + var visualMapEncodingHandlers = [{ + createOnAllSeries: true, + reset: function (seriesModel, ecModel) { + var resetDefines = []; + ecModel.eachComponent('visualMap', function (visualMapModel) { + var pipelineContext = seriesModel.pipelineContext; + if (!visualMapModel.isTargetSeries(seriesModel) || pipelineContext && pipelineContext.large) { + return; + } + resetDefines.push(incrementalApplyVisual(visualMapModel.stateList, visualMapModel.targetVisuals, bind(visualMapModel.getValueState, visualMapModel), visualMapModel.getDataDimensionIndex(seriesModel.getData()))); + }); + return resetDefines; + } + }, + // Only support color. + { + createOnAllSeries: true, + reset: function (seriesModel, ecModel) { + var data = seriesModel.getData(); + var visualMetaList = []; + ecModel.eachComponent('visualMap', function (visualMapModel) { + if (visualMapModel.isTargetSeries(seriesModel)) { + var visualMeta = visualMapModel.getVisualMeta(bind(getColorVisual, null, seriesModel, visualMapModel)) || { + stops: [], + outerColors: [] + }; + var dimIdx = visualMapModel.getDataDimensionIndex(data); + if (dimIdx >= 0) { + // visualMeta.dimension should be dimension index, but not concrete dimension. + visualMeta.dimension = dimIdx; + visualMetaList.push(visualMeta); + } + } + }); + // console.log(JSON.stringify(visualMetaList.map(a => a.stops))); + seriesModel.getData().setVisual('visualMeta', visualMetaList); + } + }]; + // FIXME + // performance and export for heatmap? + // value can be Infinity or -Infinity + function getColorVisual(seriesModel, visualMapModel, value, valueState) { + var mappings = visualMapModel.targetVisuals[valueState]; + var visualTypes = VisualMapping.prepareVisualTypes(mappings); + var resultVisual = { + color: getVisualFromData(seriesModel.getData(), 'color') // default color. + }; + + for (var i = 0, len = visualTypes.length; i < len; i++) { + var type = visualTypes[i]; + var mapping = mappings[type === 'opacity' ? '__alphaForOpacity' : type]; + mapping && mapping.applyVisual(value, getVisual, setVisual); + } + return resultVisual.color; + function getVisual(key) { + return resultVisual[key]; + } + function setVisual(key, value) { + resultVisual[key] = value; + } + } + + var each$f = each; + function visualMapPreprocessor(option) { + var visualMap = option && option.visualMap; + if (!isArray(visualMap)) { + visualMap = visualMap ? [visualMap] : []; + } + each$f(visualMap, function (opt) { + if (!opt) { + return; + } + // rename splitList to pieces + if (has$1(opt, 'splitList') && !has$1(opt, 'pieces')) { + opt.pieces = opt.splitList; + delete opt.splitList; + } + var pieces = opt.pieces; + if (pieces && isArray(pieces)) { + each$f(pieces, function (piece) { + if (isObject(piece)) { + if (has$1(piece, 'start') && !has$1(piece, 'min')) { + piece.min = piece.start; + } + if (has$1(piece, 'end') && !has$1(piece, 'max')) { + piece.max = piece.end; + } + } + }); + } + }); + } + function has$1(obj, name) { + return obj && obj.hasOwnProperty && obj.hasOwnProperty(name); + } + + var installed$1 = false; + function installCommon$1(registers) { + if (installed$1) { + return; + } + installed$1 = true; + registers.registerSubTypeDefaulter('visualMap', function (option) { + // Compatible with ec2, when splitNumber === 0, continuous visualMap will be used. + return !option.categories && (!(option.pieces ? option.pieces.length > 0 : option.splitNumber > 0) || option.calculable) ? 'continuous' : 'piecewise'; + }); + registers.registerAction(visualMapActionInfo, visualMapActionHander); + each(visualMapEncodingHandlers, function (handler) { + registers.registerVisual(registers.PRIORITY.VISUAL.COMPONENT, handler); + }); + registers.registerPreprocessor(visualMapPreprocessor); + } + + function install$N(registers) { + registers.registerComponentModel(ContinuousModel); + registers.registerComponentView(ContinuousView); + installCommon$1(registers); + } + + var PiecewiseModel = /** @class */function (_super) { + __extends(PiecewiseModel, _super); + function PiecewiseModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = PiecewiseModel.type; + /** + * The order is always [low, ..., high]. + * [{text: string, interval: Array.<number>}, ...] + */ + _this._pieceList = []; + return _this; + } + PiecewiseModel.prototype.optionUpdated = function (newOption, isInit) { + _super.prototype.optionUpdated.apply(this, arguments); + this.resetExtent(); + var mode = this._mode = this._determineMode(); + this._pieceList = []; + resetMethods[this._mode].call(this, this._pieceList); + this._resetSelected(newOption, isInit); + var categories = this.option.categories; + this.resetVisual(function (mappingOption, state) { + if (mode === 'categories') { + mappingOption.mappingMethod = 'category'; + mappingOption.categories = clone(categories); + } else { + mappingOption.dataExtent = this.getExtent(); + mappingOption.mappingMethod = 'piecewise'; + mappingOption.pieceList = map(this._pieceList, function (piece) { + piece = clone(piece); + if (state !== 'inRange') { + // FIXME + // outOfRange do not support special visual in pieces. + piece.visual = null; + } + return piece; + }); + } + }); + }; + /** + * @protected + * @override + */ + PiecewiseModel.prototype.completeVisualOption = function () { + // Consider this case: + // visualMap: { + // pieces: [{symbol: 'circle', lt: 0}, {symbol: 'rect', gte: 0}] + // } + // where no inRange/outOfRange set but only pieces. So we should make + // default inRange/outOfRange for this case, otherwise visuals that only + // appear in `pieces` will not be taken into account in visual encoding. + var option = this.option; + var visualTypesInPieces = {}; + var visualTypes = VisualMapping.listVisualTypes(); + var isCategory = this.isCategory(); + each(option.pieces, function (piece) { + each(visualTypes, function (visualType) { + if (piece.hasOwnProperty(visualType)) { + visualTypesInPieces[visualType] = 1; + } + }); + }); + each(visualTypesInPieces, function (v, visualType) { + var exists = false; + each(this.stateList, function (state) { + exists = exists || has(option, state, visualType) || has(option.target, state, visualType); + }, this); + !exists && each(this.stateList, function (state) { + (option[state] || (option[state] = {}))[visualType] = visualDefault.get(visualType, state === 'inRange' ? 'active' : 'inactive', isCategory); + }); + }, this); + function has(obj, state, visualType) { + return obj && obj[state] && obj[state].hasOwnProperty(visualType); + } + _super.prototype.completeVisualOption.apply(this, arguments); + }; + PiecewiseModel.prototype._resetSelected = function (newOption, isInit) { + var thisOption = this.option; + var pieceList = this._pieceList; + // Selected do not merge but all override. + var selected = (isInit ? thisOption : newOption).selected || {}; + thisOption.selected = selected; + // Consider 'not specified' means true. + each(pieceList, function (piece, index) { + var key = this.getSelectedMapKey(piece); + if (!selected.hasOwnProperty(key)) { + selected[key] = true; + } + }, this); + if (thisOption.selectedMode === 'single') { + // Ensure there is only one selected. + var hasSel_1 = false; + each(pieceList, function (piece, index) { + var key = this.getSelectedMapKey(piece); + if (selected[key]) { + hasSel_1 ? selected[key] = false : hasSel_1 = true; + } + }, this); + } + // thisOption.selectedMode === 'multiple', default: all selected. + }; + /** + * @public + */ + PiecewiseModel.prototype.getItemSymbol = function () { + return this.get('itemSymbol'); + }; + /** + * @public + */ + PiecewiseModel.prototype.getSelectedMapKey = function (piece) { + return this._mode === 'categories' ? piece.value + '' : piece.index + ''; + }; + /** + * @public + */ + PiecewiseModel.prototype.getPieceList = function () { + return this._pieceList; + }; + /** + * @return {string} + */ + PiecewiseModel.prototype._determineMode = function () { + var option = this.option; + return option.pieces && option.pieces.length > 0 ? 'pieces' : this.option.categories ? 'categories' : 'splitNumber'; + }; + /** + * @override + */ + PiecewiseModel.prototype.setSelected = function (selected) { + this.option.selected = clone(selected); + }; + /** + * @override + */ + PiecewiseModel.prototype.getValueState = function (value) { + var index = VisualMapping.findPieceIndex(value, this._pieceList); + return index != null ? this.option.selected[this.getSelectedMapKey(this._pieceList[index])] ? 'inRange' : 'outOfRange' : 'outOfRange'; + }; + /** + * @public + * @param pieceIndex piece index in visualMapModel.getPieceList() + */ + PiecewiseModel.prototype.findTargetDataIndices = function (pieceIndex) { + var result = []; + var pieceList = this._pieceList; + this.eachTargetSeries(function (seriesModel) { + var dataIndices = []; + var data = seriesModel.getData(); + data.each(this.getDataDimensionIndex(data), function (value, dataIndex) { + // Should always base on model pieceList, because it is order sensitive. + var pIdx = VisualMapping.findPieceIndex(value, pieceList); + pIdx === pieceIndex && dataIndices.push(dataIndex); + }, this); + result.push({ + seriesId: seriesModel.id, + dataIndex: dataIndices + }); + }, this); + return result; + }; + /** + * @private + * @param piece piece.value or piece.interval is required. + * @return Can be Infinity or -Infinity + */ + PiecewiseModel.prototype.getRepresentValue = function (piece) { + var representValue; + if (this.isCategory()) { + representValue = piece.value; + } else { + if (piece.value != null) { + representValue = piece.value; + } else { + var pieceInterval = piece.interval || []; + representValue = pieceInterval[0] === -Infinity && pieceInterval[1] === Infinity ? 0 : (pieceInterval[0] + pieceInterval[1]) / 2; + } + } + return representValue; + }; + PiecewiseModel.prototype.getVisualMeta = function (getColorVisual) { + // Do not support category. (category axis is ordinal, numerical) + if (this.isCategory()) { + return; + } + var stops = []; + var outerColors = ['', '']; + var visualMapModel = this; + function setStop(interval, valueState) { + var representValue = visualMapModel.getRepresentValue({ + interval: interval + }); // Not category + if (!valueState) { + valueState = visualMapModel.getValueState(representValue); + } + var color = getColorVisual(representValue, valueState); + if (interval[0] === -Infinity) { + outerColors[0] = color; + } else if (interval[1] === Infinity) { + outerColors[1] = color; + } else { + stops.push({ + value: interval[0], + color: color + }, { + value: interval[1], + color: color + }); + } + } + // Suplement + var pieceList = this._pieceList.slice(); + if (!pieceList.length) { + pieceList.push({ + interval: [-Infinity, Infinity] + }); + } else { + var edge = pieceList[0].interval[0]; + edge !== -Infinity && pieceList.unshift({ + interval: [-Infinity, edge] + }); + edge = pieceList[pieceList.length - 1].interval[1]; + edge !== Infinity && pieceList.push({ + interval: [edge, Infinity] + }); + } + var curr = -Infinity; + each(pieceList, function (piece) { + var interval = piece.interval; + if (interval) { + // Fulfill gap. + interval[0] > curr && setStop([curr, interval[0]], 'outOfRange'); + setStop(interval.slice()); + curr = interval[1]; + } + }, this); + return { + stops: stops, + outerColors: outerColors + }; + }; + PiecewiseModel.type = 'visualMap.piecewise'; + PiecewiseModel.defaultOption = inheritDefaultOption(VisualMapModel.defaultOption, { + selected: null, + minOpen: false, + maxOpen: false, + align: 'auto', + itemWidth: 20, + itemHeight: 14, + itemSymbol: 'roundRect', + pieces: null, + categories: null, + splitNumber: 5, + selectedMode: 'multiple', + itemGap: 10, + hoverLink: true // Enable hover highlight. + }); + + return PiecewiseModel; + }(VisualMapModel); + /** + * Key is this._mode + * @type {Object} + * @this {module:echarts/component/viusalMap/PiecewiseMode} + */ + var resetMethods = { + splitNumber: function (outPieceList) { + var thisOption = this.option; + var precision = Math.min(thisOption.precision, 20); + var dataExtent = this.getExtent(); + var splitNumber = thisOption.splitNumber; + splitNumber = Math.max(parseInt(splitNumber, 10), 1); + thisOption.splitNumber = splitNumber; + var splitStep = (dataExtent[1] - dataExtent[0]) / splitNumber; + // Precision auto-adaption + while (+splitStep.toFixed(precision) !== splitStep && precision < 5) { + precision++; + } + thisOption.precision = precision; + splitStep = +splitStep.toFixed(precision); + if (thisOption.minOpen) { + outPieceList.push({ + interval: [-Infinity, dataExtent[0]], + close: [0, 0] + }); + } + for (var index = 0, curr = dataExtent[0]; index < splitNumber; curr += splitStep, index++) { + var max = index === splitNumber - 1 ? dataExtent[1] : curr + splitStep; + outPieceList.push({ + interval: [curr, max], + close: [1, 1] + }); + } + if (thisOption.maxOpen) { + outPieceList.push({ + interval: [dataExtent[1], Infinity], + close: [0, 0] + }); + } + reformIntervals(outPieceList); + each(outPieceList, function (piece, index) { + piece.index = index; + piece.text = this.formatValueText(piece.interval); + }, this); + }, + categories: function (outPieceList) { + var thisOption = this.option; + each(thisOption.categories, function (cate) { + // FIXME category模式也使用pieceList,但在visualMapping中不是使用pieceList。 + // 是否改一致。 + outPieceList.push({ + text: this.formatValueText(cate, true), + value: cate + }); + }, this); + // See "Order Rule". + normalizeReverse(thisOption, outPieceList); + }, + pieces: function (outPieceList) { + var thisOption = this.option; + each(thisOption.pieces, function (pieceListItem, index) { + if (!isObject(pieceListItem)) { + pieceListItem = { + value: pieceListItem + }; + } + var item = { + text: '', + index: index + }; + if (pieceListItem.label != null) { + item.text = pieceListItem.label; + } + if (pieceListItem.hasOwnProperty('value')) { + var value = item.value = pieceListItem.value; + item.interval = [value, value]; + item.close = [1, 1]; + } else { + // `min` `max` is legacy option. + // `lt` `gt` `lte` `gte` is recommended. + var interval = item.interval = []; + var close_1 = item.close = [0, 0]; + var closeList = [1, 0, 1]; + var infinityList = [-Infinity, Infinity]; + var useMinMax = []; + for (var lg = 0; lg < 2; lg++) { + var names = [['gte', 'gt', 'min'], ['lte', 'lt', 'max']][lg]; + for (var i = 0; i < 3 && interval[lg] == null; i++) { + interval[lg] = pieceListItem[names[i]]; + close_1[lg] = closeList[i]; + useMinMax[lg] = i === 2; + } + interval[lg] == null && (interval[lg] = infinityList[lg]); + } + useMinMax[0] && interval[1] === Infinity && (close_1[0] = 0); + useMinMax[1] && interval[0] === -Infinity && (close_1[1] = 0); + if ("development" !== 'production') { + if (interval[0] > interval[1]) { + console.warn('Piece ' + index + 'is illegal: ' + interval + ' lower bound should not greater then uppper bound.'); + } + } + if (interval[0] === interval[1] && close_1[0] && close_1[1]) { + // Consider: [{min: 5, max: 5, visual: {...}}, {min: 0, max: 5}], + // we use value to lift the priority when min === max + item.value = interval[0]; + } + } + item.visual = VisualMapping.retrieveVisuals(pieceListItem); + outPieceList.push(item); + }, this); + // See "Order Rule". + normalizeReverse(thisOption, outPieceList); + // Only pieces + reformIntervals(outPieceList); + each(outPieceList, function (piece) { + var close = piece.close; + var edgeSymbols = [['<', '≤'][close[1]], ['>', '≥'][close[0]]]; + piece.text = piece.text || this.formatValueText(piece.value != null ? piece.value : piece.interval, false, edgeSymbols); + }, this); + } + }; + function normalizeReverse(thisOption, pieceList) { + var inverse = thisOption.inverse; + if (thisOption.orient === 'vertical' ? !inverse : inverse) { + pieceList.reverse(); + } + } + + var PiecewiseVisualMapView = /** @class */function (_super) { + __extends(PiecewiseVisualMapView, _super); + function PiecewiseVisualMapView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = PiecewiseVisualMapView.type; + return _this; + } + PiecewiseVisualMapView.prototype.doRender = function () { + var thisGroup = this.group; + thisGroup.removeAll(); + var visualMapModel = this.visualMapModel; + var textGap = visualMapModel.get('textGap'); + var textStyleModel = visualMapModel.textStyleModel; + var textFont = textStyleModel.getFont(); + var textFill = textStyleModel.getTextColor(); + var itemAlign = this._getItemAlign(); + var itemSize = visualMapModel.itemSize; + var viewData = this._getViewData(); + var endsText = viewData.endsText; + var showLabel = retrieve(visualMapModel.get('showLabel', true), !endsText); + endsText && this._renderEndsText(thisGroup, endsText[0], itemSize, showLabel, itemAlign); + each(viewData.viewPieceList, function (item) { + var piece = item.piece; + var itemGroup = new Group(); + itemGroup.onclick = bind(this._onItemClick, this, piece); + this._enableHoverLink(itemGroup, item.indexInModelPieceList); + // TODO Category + var representValue = visualMapModel.getRepresentValue(piece); + this._createItemSymbol(itemGroup, representValue, [0, 0, itemSize[0], itemSize[1]]); + if (showLabel) { + var visualState = this.visualMapModel.getValueState(representValue); + itemGroup.add(new ZRText({ + style: { + x: itemAlign === 'right' ? -textGap : itemSize[0] + textGap, + y: itemSize[1] / 2, + text: piece.text, + verticalAlign: 'middle', + align: itemAlign, + font: textFont, + fill: textFill, + opacity: visualState === 'outOfRange' ? 0.5 : 1 + } + })); + } + thisGroup.add(itemGroup); + }, this); + endsText && this._renderEndsText(thisGroup, endsText[1], itemSize, showLabel, itemAlign); + box(visualMapModel.get('orient'), thisGroup, visualMapModel.get('itemGap')); + this.renderBackground(thisGroup); + this.positionGroup(thisGroup); + }; + PiecewiseVisualMapView.prototype._enableHoverLink = function (itemGroup, pieceIndex) { + var _this = this; + itemGroup.on('mouseover', function () { + return onHoverLink('highlight'); + }).on('mouseout', function () { + return onHoverLink('downplay'); + }); + var onHoverLink = function (method) { + var visualMapModel = _this.visualMapModel; + // TODO: TYPE More detailed action types + visualMapModel.option.hoverLink && _this.api.dispatchAction({ + type: method, + batch: makeHighDownBatch(visualMapModel.findTargetDataIndices(pieceIndex), visualMapModel) + }); + }; + }; + PiecewiseVisualMapView.prototype._getItemAlign = function () { + var visualMapModel = this.visualMapModel; + var modelOption = visualMapModel.option; + if (modelOption.orient === 'vertical') { + return getItemAlign(visualMapModel, this.api, visualMapModel.itemSize); + } else { + // horizontal, most case left unless specifying right. + var align = modelOption.align; + if (!align || align === 'auto') { + align = 'left'; + } + return align; + } + }; + PiecewiseVisualMapView.prototype._renderEndsText = function (group, text, itemSize, showLabel, itemAlign) { + if (!text) { + return; + } + var itemGroup = new Group(); + var textStyleModel = this.visualMapModel.textStyleModel; + itemGroup.add(new ZRText({ + style: createTextStyle(textStyleModel, { + x: showLabel ? itemAlign === 'right' ? itemSize[0] : 0 : itemSize[0] / 2, + y: itemSize[1] / 2, + verticalAlign: 'middle', + align: showLabel ? itemAlign : 'center', + text: text + }) + })); + group.add(itemGroup); + }; + /** + * @private + * @return {Object} {peiceList, endsText} The order is the same as screen pixel order. + */ + PiecewiseVisualMapView.prototype._getViewData = function () { + var visualMapModel = this.visualMapModel; + var viewPieceList = map(visualMapModel.getPieceList(), function (piece, index) { + return { + piece: piece, + indexInModelPieceList: index + }; + }); + var endsText = visualMapModel.get('text'); + // Consider orient and inverse. + var orient = visualMapModel.get('orient'); + var inverse = visualMapModel.get('inverse'); + // Order of model pieceList is always [low, ..., high] + if (orient === 'horizontal' ? inverse : !inverse) { + viewPieceList.reverse(); + } + // Origin order of endsText is [high, low] + else if (endsText) { + endsText = endsText.slice().reverse(); + } + return { + viewPieceList: viewPieceList, + endsText: endsText + }; + }; + PiecewiseVisualMapView.prototype._createItemSymbol = function (group, representValue, shapeParam) { + group.add(createSymbol( + // symbol will be string + this.getControllerVisual(representValue, 'symbol'), shapeParam[0], shapeParam[1], shapeParam[2], shapeParam[3], + // color will be string + this.getControllerVisual(representValue, 'color'))); + }; + PiecewiseVisualMapView.prototype._onItemClick = function (piece) { + var visualMapModel = this.visualMapModel; + var option = visualMapModel.option; + var selectedMode = option.selectedMode; + if (!selectedMode) { + return; + } + var selected = clone(option.selected); + var newKey = visualMapModel.getSelectedMapKey(piece); + if (selectedMode === 'single' || selectedMode === true) { + selected[newKey] = true; + each(selected, function (o, key) { + selected[key] = key === newKey; + }); + } else { + selected[newKey] = !selected[newKey]; + } + this.api.dispatchAction({ + type: 'selectDataRange', + from: this.uid, + visualMapId: this.visualMapModel.id, + selected: selected + }); + }; + PiecewiseVisualMapView.type = 'visualMap.piecewise'; + return PiecewiseVisualMapView; + }(VisualMapView); + + function install$O(registers) { + registers.registerComponentModel(PiecewiseModel); + registers.registerComponentView(PiecewiseVisualMapView); + installCommon$1(registers); + } + + function install$P(registers) { + use(install$N); + use(install$O); + // Do not install './dataZoomSelect', + // since it only work for toolbox dataZoom. + } + + var DEFAULT_OPTION = { + label: { + enabled: true + }, + decal: { + show: false + } + }; + var inner$l = makeInner(); + var decalPaletteScope = {}; + function ariaVisual(ecModel, api) { + var ariaModel = ecModel.getModel('aria'); + // See "area enabled" detection code in `GlobalModel.ts`. + if (!ariaModel.get('enabled')) { + return; + } + var defaultOption = clone(DEFAULT_OPTION); + merge(defaultOption.label, ecModel.getLocaleModel().get('aria'), false); + merge(ariaModel.option, defaultOption, false); + setDecal(); + setLabel(); + function setDecal() { + var decalModel = ariaModel.getModel('decal'); + var useDecal = decalModel.get('show'); + if (useDecal) { + // Each type of series use one scope. + // Pie and funnel are using different scopes. + var paletteScopeGroupByType_1 = createHashMap(); + ecModel.eachSeries(function (seriesModel) { + if (seriesModel.isColorBySeries()) { + return; + } + var decalScope = paletteScopeGroupByType_1.get(seriesModel.type); + if (!decalScope) { + decalScope = {}; + paletteScopeGroupByType_1.set(seriesModel.type, decalScope); + } + inner$l(seriesModel).scope = decalScope; + }); + ecModel.eachRawSeries(function (seriesModel) { + if (ecModel.isSeriesFiltered(seriesModel)) { + return; + } + if (isFunction(seriesModel.enableAriaDecal)) { + // Let series define how to use decal palette on data + seriesModel.enableAriaDecal(); + return; + } + var data = seriesModel.getData(); + if (!seriesModel.isColorBySeries()) { + var dataAll_1 = seriesModel.getRawData(); + var idxMap_1 = {}; + var decalScope_1 = inner$l(seriesModel).scope; + data.each(function (idx) { + var rawIdx = data.getRawIndex(idx); + idxMap_1[rawIdx] = idx; + }); + var dataCount_1 = dataAll_1.count(); + dataAll_1.each(function (rawIdx) { + var idx = idxMap_1[rawIdx]; + var name = dataAll_1.getName(rawIdx) || rawIdx + ''; + var paletteDecal = getDecalFromPalette(seriesModel.ecModel, name, decalScope_1, dataCount_1); + var specifiedDecal = data.getItemVisual(idx, 'decal'); + data.setItemVisual(idx, 'decal', mergeDecal(specifiedDecal, paletteDecal)); + }); + } else { + var paletteDecal = getDecalFromPalette(seriesModel.ecModel, seriesModel.name, decalPaletteScope, ecModel.getSeriesCount()); + var specifiedDecal = data.getVisual('decal'); + data.setVisual('decal', mergeDecal(specifiedDecal, paletteDecal)); + } + function mergeDecal(specifiedDecal, paletteDecal) { + // Merge decal from palette to decal from itemStyle. + // User do not need to specify all of the decal props. + var resultDecal = specifiedDecal ? extend(extend({}, paletteDecal), specifiedDecal) : paletteDecal; + resultDecal.dirty = true; + return resultDecal; + } + }); + } + } + function setLabel() { + var labelLocale = ecModel.getLocaleModel().get('aria'); + var labelModel = ariaModel.getModel('label'); + labelModel.option = defaults(labelModel.option, labelLocale); + if (!labelModel.get('enabled')) { + return; + } + var dom = api.getZr().dom; + if (labelModel.get('description')) { + dom.setAttribute('aria-label', labelModel.get('description')); + return; + } + var seriesCnt = ecModel.getSeriesCount(); + var maxDataCnt = labelModel.get(['data', 'maxCount']) || 10; + var maxSeriesCnt = labelModel.get(['series', 'maxCount']) || 10; + var displaySeriesCnt = Math.min(seriesCnt, maxSeriesCnt); + var ariaLabel; + if (seriesCnt < 1) { + // No series, no aria label + return; + } else { + var title = getTitle(); + if (title) { + var withTitle = labelModel.get(['general', 'withTitle']); + ariaLabel = replace(withTitle, { + title: title + }); + } else { + ariaLabel = labelModel.get(['general', 'withoutTitle']); + } + var seriesLabels_1 = []; + var prefix = seriesCnt > 1 ? labelModel.get(['series', 'multiple', 'prefix']) : labelModel.get(['series', 'single', 'prefix']); + ariaLabel += replace(prefix, { + seriesCount: seriesCnt + }); + ecModel.eachSeries(function (seriesModel, idx) { + if (idx < displaySeriesCnt) { + var seriesLabel = void 0; + var seriesName = seriesModel.get('name'); + var withName = seriesName ? 'withName' : 'withoutName'; + seriesLabel = seriesCnt > 1 ? labelModel.get(['series', 'multiple', withName]) : labelModel.get(['series', 'single', withName]); + seriesLabel = replace(seriesLabel, { + seriesId: seriesModel.seriesIndex, + seriesName: seriesModel.get('name'), + seriesType: getSeriesTypeName(seriesModel.subType) + }); + var data = seriesModel.getData(); + if (data.count() > maxDataCnt) { + // Show part of data + var partialLabel = labelModel.get(['data', 'partialData']); + seriesLabel += replace(partialLabel, { + displayCnt: maxDataCnt + }); + } else { + seriesLabel += labelModel.get(['data', 'allData']); + } + var middleSeparator_1 = labelModel.get(['data', 'separator', 'middle']); + var endSeparator_1 = labelModel.get(['data', 'separator', 'end']); + var dataLabels = []; + for (var i = 0; i < data.count(); i++) { + if (i < maxDataCnt) { + var name_1 = data.getName(i); + var value = data.getValues(i); + var dataLabel = labelModel.get(['data', name_1 ? 'withName' : 'withoutName']); + dataLabels.push(replace(dataLabel, { + name: name_1, + value: value.join(middleSeparator_1) + })); + } + } + seriesLabel += dataLabels.join(middleSeparator_1) + endSeparator_1; + seriesLabels_1.push(seriesLabel); + } + }); + var separatorModel = labelModel.getModel(['series', 'multiple', 'separator']); + var middleSeparator = separatorModel.get('middle'); + var endSeparator = separatorModel.get('end'); + ariaLabel += seriesLabels_1.join(middleSeparator) + endSeparator; + dom.setAttribute('aria-label', ariaLabel); + } + } + function replace(str, keyValues) { + if (!isString(str)) { + return str; + } + var result = str; + each(keyValues, function (value, key) { + result = result.replace(new RegExp('\\{\\s*' + key + '\\s*\\}', 'g'), value); + }); + return result; + } + function getTitle() { + var title = ecModel.get('title'); + if (title && title.length) { + title = title[0]; + } + return title && title.text; + } + function getSeriesTypeName(type) { + var typeNames = ecModel.getLocaleModel().get(['series', 'typeNames']); + return typeNames[type] || typeNames.chart; + } + } + + function ariaPreprocessor(option) { + if (!option || !option.aria) { + return; + } + var aria = option.aria; + // aria.show is deprecated and should use aria.enabled instead + if (aria.show != null) { + aria.enabled = aria.show; + } + aria.label = aria.label || {}; + // move description, general, series, data to be under aria.label + each(['description', 'general', 'series', 'data'], function (name) { + if (aria[name] != null) { + aria.label[name] = aria[name]; + } + }); + } + + function install$Q(registers) { + registers.registerPreprocessor(ariaPreprocessor); + registers.registerVisual(registers.PRIORITY.VISUAL.ARIA, ariaVisual); + } + + var RELATIONAL_EXPRESSION_OP_ALIAS_MAP = { + value: 'eq', + // PENDING: not good for literal semantic? + '<': 'lt', + '<=': 'lte', + '>': 'gt', + '>=': 'gte', + '=': 'eq', + '!=': 'ne', + '<>': 'ne' + // Might be misleading for sake of the difference between '==' and '===', + // so don't support them. + // '==': 'eq', + // '===': 'seq', + // '!==': 'sne' + // PENDING: Whether support some common alias "ge", "le", "neq"? + // ge: 'gte', + // le: 'lte', + // neq: 'ne', + }; + // type RelationalExpressionOpEvaluate = (tarVal: unknown, condVal: unknown) => boolean; + var RegExpEvaluator = /** @class */function () { + function RegExpEvaluator(rVal) { + // Support condVal: RegExp | string + var condValue = this._condVal = isString(rVal) ? new RegExp(rVal) : isRegExp(rVal) ? rVal : null; + if (condValue == null) { + var errMsg = ''; + if ("development" !== 'production') { + errMsg = makePrintable('Illegal regexp', rVal, 'in'); + } + throwError(errMsg); + } + } + RegExpEvaluator.prototype.evaluate = function (lVal) { + var type = typeof lVal; + return isString(type) ? this._condVal.test(lVal) : isNumber(type) ? this._condVal.test(lVal + '') : false; + }; + return RegExpEvaluator; + }(); + var ConstConditionInternal = /** @class */function () { + function ConstConditionInternal() {} + ConstConditionInternal.prototype.evaluate = function () { + return this.value; + }; + return ConstConditionInternal; + }(); + var AndConditionInternal = /** @class */function () { + function AndConditionInternal() {} + AndConditionInternal.prototype.evaluate = function () { + var children = this.children; + for (var i = 0; i < children.length; i++) { + if (!children[i].evaluate()) { + return false; + } + } + return true; + }; + return AndConditionInternal; + }(); + var OrConditionInternal = /** @class */function () { + function OrConditionInternal() {} + OrConditionInternal.prototype.evaluate = function () { + var children = this.children; + for (var i = 0; i < children.length; i++) { + if (children[i].evaluate()) { + return true; + } + } + return false; + }; + return OrConditionInternal; + }(); + var NotConditionInternal = /** @class */function () { + function NotConditionInternal() {} + NotConditionInternal.prototype.evaluate = function () { + return !this.child.evaluate(); + }; + return NotConditionInternal; + }(); + var RelationalConditionInternal = /** @class */function () { + function RelationalConditionInternal() {} + RelationalConditionInternal.prototype.evaluate = function () { + var needParse = !!this.valueParser; + // Call getValue with no `this`. + var getValue = this.getValue; + var tarValRaw = getValue(this.valueGetterParam); + var tarValParsed = needParse ? this.valueParser(tarValRaw) : null; + // Relational cond follow "and" logic internally. + for (var i = 0; i < this.subCondList.length; i++) { + if (!this.subCondList[i].evaluate(needParse ? tarValParsed : tarValRaw)) { + return false; + } + } + return true; + }; + return RelationalConditionInternal; + }(); + function parseOption(exprOption, getters) { + if (exprOption === true || exprOption === false) { + var cond = new ConstConditionInternal(); + cond.value = exprOption; + return cond; + } + var errMsg = ''; + if (!isObjectNotArray(exprOption)) { + if ("development" !== 'production') { + errMsg = makePrintable('Illegal config. Expect a plain object but actually', exprOption); + } + throwError(errMsg); + } + if (exprOption.and) { + return parseAndOrOption('and', exprOption, getters); + } else if (exprOption.or) { + return parseAndOrOption('or', exprOption, getters); + } else if (exprOption.not) { + return parseNotOption(exprOption, getters); + } + return parseRelationalOption(exprOption, getters); + } + function parseAndOrOption(op, exprOption, getters) { + var subOptionArr = exprOption[op]; + var errMsg = ''; + if ("development" !== 'production') { + errMsg = makePrintable('"and"/"or" condition should only be `' + op + ': [...]` and must not be empty array.', 'Illegal condition:', exprOption); + } + if (!isArray(subOptionArr)) { + throwError(errMsg); + } + if (!subOptionArr.length) { + throwError(errMsg); + } + var cond = op === 'and' ? new AndConditionInternal() : new OrConditionInternal(); + cond.children = map(subOptionArr, function (subOption) { + return parseOption(subOption, getters); + }); + if (!cond.children.length) { + throwError(errMsg); + } + return cond; + } + function parseNotOption(exprOption, getters) { + var subOption = exprOption.not; + var errMsg = ''; + if ("development" !== 'production') { + errMsg = makePrintable('"not" condition should only be `not: {}`.', 'Illegal condition:', exprOption); + } + if (!isObjectNotArray(subOption)) { + throwError(errMsg); + } + var cond = new NotConditionInternal(); + cond.child = parseOption(subOption, getters); + if (!cond.child) { + throwError(errMsg); + } + return cond; + } + function parseRelationalOption(exprOption, getters) { + var errMsg = ''; + var valueGetterParam = getters.prepareGetValue(exprOption); + var subCondList = []; + var exprKeys = keys(exprOption); + var parserName = exprOption.parser; + var valueParser = parserName ? getRawValueParser(parserName) : null; + for (var i = 0; i < exprKeys.length; i++) { + var keyRaw = exprKeys[i]; + if (keyRaw === 'parser' || getters.valueGetterAttrMap.get(keyRaw)) { + continue; + } + var op = hasOwn(RELATIONAL_EXPRESSION_OP_ALIAS_MAP, keyRaw) ? RELATIONAL_EXPRESSION_OP_ALIAS_MAP[keyRaw] : keyRaw; + var condValueRaw = exprOption[keyRaw]; + var condValueParsed = valueParser ? valueParser(condValueRaw) : condValueRaw; + var evaluator = createFilterComparator(op, condValueParsed) || op === 'reg' && new RegExpEvaluator(condValueParsed); + if (!evaluator) { + if ("development" !== 'production') { + errMsg = makePrintable('Illegal relational operation: "' + keyRaw + '" in condition:', exprOption); + } + throwError(errMsg); + } + subCondList.push(evaluator); + } + if (!subCondList.length) { + if ("development" !== 'production') { + errMsg = makePrintable('Relational condition must have at least one operator.', 'Illegal condition:', exprOption); + } + // No relational operator always disabled in case of dangers result. + throwError(errMsg); + } + var cond = new RelationalConditionInternal(); + cond.valueGetterParam = valueGetterParam; + cond.valueParser = valueParser; + cond.getValue = getters.getValue; + cond.subCondList = subCondList; + return cond; + } + function isObjectNotArray(val) { + return isObject(val) && !isArrayLike(val); + } + var ConditionalExpressionParsed = /** @class */function () { + function ConditionalExpressionParsed(exprOption, getters) { + this._cond = parseOption(exprOption, getters); + } + ConditionalExpressionParsed.prototype.evaluate = function () { + return this._cond.evaluate(); + }; + return ConditionalExpressionParsed; + }(); + function parseConditionalExpression(exprOption, getters) { + return new ConditionalExpressionParsed(exprOption, getters); + } + + var filterTransform = { + type: 'echarts:filter', + // PENDING: enhance to filter by index rather than create new data + transform: function (params) { + // [Caveat] Fail-Fast: + // Do not return the whole dataset unless user config indicates it explicitly. + // For example, if no condition is specified by mistake, returning an empty result + // is better than returning the entire raw source for the user to find the mistake. + var upstream = params.upstream; + var rawItem; + var condition = parseConditionalExpression(params.config, { + valueGetterAttrMap: createHashMap({ + dimension: true + }), + prepareGetValue: function (exprOption) { + var errMsg = ''; + var dimLoose = exprOption.dimension; + if (!hasOwn(exprOption, 'dimension')) { + if ("development" !== 'production') { + errMsg = makePrintable('Relation condition must has prop "dimension" specified.', 'Illegal condition:', exprOption); + } + throwError(errMsg); + } + var dimInfo = upstream.getDimensionInfo(dimLoose); + if (!dimInfo) { + if ("development" !== 'production') { + errMsg = makePrintable('Can not find dimension info via: ' + dimLoose + '.\n', 'Existing dimensions: ', upstream.cloneAllDimensionInfo(), '.\n', 'Illegal condition:', exprOption, '.\n'); + } + throwError(errMsg); + } + return { + dimIdx: dimInfo.index + }; + }, + getValue: function (param) { + return upstream.retrieveValueFromItem(rawItem, param.dimIdx); + } + }); + var resultData = []; + for (var i = 0, len = upstream.count(); i < len; i++) { + rawItem = upstream.getRawDataItem(i); + if (condition.evaluate()) { + resultData.push(rawItem); + } + } + return { + data: resultData + }; + } + }; + + var sampleLog = ''; + if ("development" !== 'production') { + sampleLog = ['Valid config is like:', '{ dimension: "age", order: "asc" }', 'or [{ dimension: "age", order: "asc"], { dimension: "date", order: "desc" }]'].join(' '); + } + var sortTransform = { + type: 'echarts:sort', + transform: function (params) { + var upstream = params.upstream; + var config = params.config; + var errMsg = ''; + // Normalize + // const orderExprList: OrderExpression[] = isArray(config[0]) + // ? config as OrderExpression[] + // : [config as OrderExpression]; + var orderExprList = normalizeToArray(config); + if (!orderExprList.length) { + if ("development" !== 'production') { + errMsg = 'Empty `config` in sort transform.'; + } + throwError(errMsg); + } + var orderDefList = []; + each(orderExprList, function (orderExpr) { + var dimLoose = orderExpr.dimension; + var order = orderExpr.order; + var parserName = orderExpr.parser; + var incomparable = orderExpr.incomparable; + if (dimLoose == null) { + if ("development" !== 'production') { + errMsg = 'Sort transform config must has "dimension" specified.' + sampleLog; + } + throwError(errMsg); + } + if (order !== 'asc' && order !== 'desc') { + if ("development" !== 'production') { + errMsg = 'Sort transform config must has "order" specified.' + sampleLog; + } + throwError(errMsg); + } + if (incomparable && incomparable !== 'min' && incomparable !== 'max') { + var errMsg_1 = ''; + if ("development" !== 'production') { + errMsg_1 = 'incomparable must be "min" or "max" rather than "' + incomparable + '".'; + } + throwError(errMsg_1); + } + if (order !== 'asc' && order !== 'desc') { + var errMsg_2 = ''; + if ("development" !== 'production') { + errMsg_2 = 'order must be "asc" or "desc" rather than "' + order + '".'; + } + throwError(errMsg_2); + } + var dimInfo = upstream.getDimensionInfo(dimLoose); + if (!dimInfo) { + if ("development" !== 'production') { + errMsg = makePrintable('Can not find dimension info via: ' + dimLoose + '.\n', 'Existing dimensions: ', upstream.cloneAllDimensionInfo(), '.\n', 'Illegal config:', orderExpr, '.\n'); + } + throwError(errMsg); + } + var parser = parserName ? getRawValueParser(parserName) : null; + if (parserName && !parser) { + if ("development" !== 'production') { + errMsg = makePrintable('Invalid parser name ' + parserName + '.\n', 'Illegal config:', orderExpr, '.\n'); + } + throwError(errMsg); + } + orderDefList.push({ + dimIdx: dimInfo.index, + parser: parser, + comparator: new SortOrderComparator(order, incomparable) + }); + }); + // TODO: support it? + var sourceFormat = upstream.sourceFormat; + if (sourceFormat !== SOURCE_FORMAT_ARRAY_ROWS && sourceFormat !== SOURCE_FORMAT_OBJECT_ROWS) { + if ("development" !== 'production') { + errMsg = 'sourceFormat "' + sourceFormat + '" is not supported yet'; + } + throwError(errMsg); + } + // Other upstream format are all array. + var resultData = []; + for (var i = 0, len = upstream.count(); i < len; i++) { + resultData.push(upstream.getRawDataItem(i)); + } + resultData.sort(function (item0, item1) { + for (var i = 0; i < orderDefList.length; i++) { + var orderDef = orderDefList[i]; + var val0 = upstream.retrieveValueFromItem(item0, orderDef.dimIdx); + var val1 = upstream.retrieveValueFromItem(item1, orderDef.dimIdx); + if (orderDef.parser) { + val0 = orderDef.parser(val0); + val1 = orderDef.parser(val1); + } + var result = orderDef.comparator.evaluate(val0, val1); + if (result !== 0) { + return result; + } + } + return 0; + }); + return { + data: resultData + }; + } + }; + + function install$R(registers) { + registers.registerTransform(filterTransform); + registers.registerTransform(sortTransform); + } + + var DatasetModel = /** @class */function (_super) { + __extends(DatasetModel, _super); + function DatasetModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = 'dataset'; + return _this; + } + DatasetModel.prototype.init = function (option, parentModel, ecModel) { + _super.prototype.init.call(this, option, parentModel, ecModel); + this._sourceManager = new SourceManager(this); + disableTransformOptionMerge(this); + }; + DatasetModel.prototype.mergeOption = function (newOption, ecModel) { + _super.prototype.mergeOption.call(this, newOption, ecModel); + disableTransformOptionMerge(this); + }; + DatasetModel.prototype.optionUpdated = function () { + this._sourceManager.dirty(); + }; + DatasetModel.prototype.getSourceManager = function () { + return this._sourceManager; + }; + DatasetModel.type = 'dataset'; + DatasetModel.defaultOption = { + seriesLayoutBy: SERIES_LAYOUT_BY_COLUMN + }; + return DatasetModel; + }(ComponentModel); + var DatasetView = /** @class */function (_super) { + __extends(DatasetView, _super); + function DatasetView() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = 'dataset'; + return _this; + } + DatasetView.type = 'dataset'; + return DatasetView; + }(ComponentView); + function install$S(registers) { + registers.registerComponentModel(DatasetModel); + registers.registerComponentView(DatasetView); + } + + var CMD$4 = PathProxy.CMD; + function aroundEqual(a, b) { + return Math.abs(a - b) < 1e-5; + } + function pathToBezierCurves(path) { + var data = path.data; + var len = path.len(); + var bezierArrayGroups = []; + var currentSubpath; + var xi = 0; + var yi = 0; + var x0 = 0; + var y0 = 0; + function createNewSubpath(x, y) { + if (currentSubpath && currentSubpath.length > 2) { + bezierArrayGroups.push(currentSubpath); + } + currentSubpath = [x, y]; + } + function addLine(x0, y0, x1, y1) { + if (!(aroundEqual(x0, x1) && aroundEqual(y0, y1))) { + currentSubpath.push(x0, y0, x1, y1, x1, y1); + } + } + function addArc(startAngle, endAngle, cx, cy, rx, ry) { + var delta = Math.abs(endAngle - startAngle); + var len = Math.tan(delta / 4) * 4 / 3; + var dir = endAngle < startAngle ? -1 : 1; + var c1 = Math.cos(startAngle); + var s1 = Math.sin(startAngle); + var c2 = Math.cos(endAngle); + var s2 = Math.sin(endAngle); + var x1 = c1 * rx + cx; + var y1 = s1 * ry + cy; + var x4 = c2 * rx + cx; + var y4 = s2 * ry + cy; + var hx = rx * len * dir; + var hy = ry * len * dir; + currentSubpath.push(x1 - hx * s1, y1 + hy * c1, x4 + hx * s2, y4 - hy * c2, x4, y4); + } + var x1; + var y1; + var x2; + var y2; + for (var i = 0; i < len;) { + var cmd = data[i++]; + var isFirst = i === 1; + if (isFirst) { + xi = data[i]; + yi = data[i + 1]; + x0 = xi; + y0 = yi; + if (cmd === CMD$4.L || cmd === CMD$4.C || cmd === CMD$4.Q) { + currentSubpath = [x0, y0]; + } + } + switch (cmd) { + case CMD$4.M: + xi = x0 = data[i++]; + yi = y0 = data[i++]; + createNewSubpath(x0, y0); + break; + case CMD$4.L: + x1 = data[i++]; + y1 = data[i++]; + addLine(xi, yi, x1, y1); + xi = x1; + yi = y1; + break; + case CMD$4.C: + currentSubpath.push(data[i++], data[i++], data[i++], data[i++], xi = data[i++], yi = data[i++]); + break; + case CMD$4.Q: + x1 = data[i++]; + y1 = data[i++]; + x2 = data[i++]; + y2 = data[i++]; + currentSubpath.push(xi + 2 / 3 * (x1 - xi), yi + 2 / 3 * (y1 - yi), x2 + 2 / 3 * (x1 - x2), y2 + 2 / 3 * (y1 - y2), x2, y2); + xi = x2; + yi = y2; + break; + case CMD$4.A: + var cx = data[i++]; + var cy = data[i++]; + var rx = data[i++]; + var ry = data[i++]; + var startAngle = data[i++]; + var endAngle = data[i++] + startAngle; + i += 1; + var anticlockwise = !data[i++]; + x1 = Math.cos(startAngle) * rx + cx; + y1 = Math.sin(startAngle) * ry + cy; + if (isFirst) { + x0 = x1; + y0 = y1; + createNewSubpath(x0, y0); + } + else { + addLine(xi, yi, x1, y1); + } + xi = Math.cos(endAngle) * rx + cx; + yi = Math.sin(endAngle) * ry + cy; + var step = (anticlockwise ? -1 : 1) * Math.PI / 2; + for (var angle = startAngle; anticlockwise ? angle > endAngle : angle < endAngle; angle += step) { + var nextAngle = anticlockwise ? Math.max(angle + step, endAngle) + : Math.min(angle + step, endAngle); + addArc(angle, nextAngle, cx, cy, rx, ry); + } + break; + case CMD$4.R: + x0 = xi = data[i++]; + y0 = yi = data[i++]; + x1 = x0 + data[i++]; + y1 = y0 + data[i++]; + createNewSubpath(x1, y0); + addLine(x1, y0, x1, y1); + addLine(x1, y1, x0, y1); + addLine(x0, y1, x0, y0); + addLine(x0, y0, x1, y0); + break; + case CMD$4.Z: + currentSubpath && addLine(xi, yi, x0, y0); + xi = x0; + yi = y0; + break; + } + } + if (currentSubpath && currentSubpath.length > 2) { + bezierArrayGroups.push(currentSubpath); + } + return bezierArrayGroups; + } + function adpativeBezier(x0, y0, x1, y1, x2, y2, x3, y3, out, scale) { + if (aroundEqual(x0, x1) && aroundEqual(y0, y1) && aroundEqual(x2, x3) && aroundEqual(y2, y3)) { + out.push(x3, y3); + return; + } + var PIXEL_DISTANCE = 2 / scale; + var PIXEL_DISTANCE_SQR = PIXEL_DISTANCE * PIXEL_DISTANCE; + var dx = x3 - x0; + var dy = y3 - y0; + var d = Math.sqrt(dx * dx + dy * dy); + dx /= d; + dy /= d; + var dx1 = x1 - x0; + var dy1 = y1 - y0; + var dx2 = x2 - x3; + var dy2 = y2 - y3; + var cp1LenSqr = dx1 * dx1 + dy1 * dy1; + var cp2LenSqr = dx2 * dx2 + dy2 * dy2; + if (cp1LenSqr < PIXEL_DISTANCE_SQR && cp2LenSqr < PIXEL_DISTANCE_SQR) { + out.push(x3, y3); + return; + } + var projLen1 = dx * dx1 + dy * dy1; + var projLen2 = -dx * dx2 - dy * dy2; + var d1Sqr = cp1LenSqr - projLen1 * projLen1; + var d2Sqr = cp2LenSqr - projLen2 * projLen2; + if (d1Sqr < PIXEL_DISTANCE_SQR && projLen1 >= 0 + && d2Sqr < PIXEL_DISTANCE_SQR && projLen2 >= 0) { + out.push(x3, y3); + return; + } + var tmpSegX = []; + var tmpSegY = []; + cubicSubdivide(x0, x1, x2, x3, 0.5, tmpSegX); + cubicSubdivide(y0, y1, y2, y3, 0.5, tmpSegY); + adpativeBezier(tmpSegX[0], tmpSegY[0], tmpSegX[1], tmpSegY[1], tmpSegX[2], tmpSegY[2], tmpSegX[3], tmpSegY[3], out, scale); + adpativeBezier(tmpSegX[4], tmpSegY[4], tmpSegX[5], tmpSegY[5], tmpSegX[6], tmpSegY[6], tmpSegX[7], tmpSegY[7], out, scale); + } + function pathToPolygons(path, scale) { + var bezierArrayGroups = pathToBezierCurves(path); + var polygons = []; + scale = scale || 1; + for (var i = 0; i < bezierArrayGroups.length; i++) { + var beziers = bezierArrayGroups[i]; + var polygon = []; + var x0 = beziers[0]; + var y0 = beziers[1]; + polygon.push(x0, y0); + for (var k = 2; k < beziers.length;) { + var x1 = beziers[k++]; + var y1 = beziers[k++]; + var x2 = beziers[k++]; + var y2 = beziers[k++]; + var x3 = beziers[k++]; + var y3 = beziers[k++]; + adpativeBezier(x0, y0, x1, y1, x2, y2, x3, y3, polygon, scale); + x0 = x3; + y0 = y3; + } + polygons.push(polygon); + } + return polygons; + } + + function getDividingGrids(dimSize, rowDim, count) { + var rowSize = dimSize[rowDim]; + var columnSize = dimSize[1 - rowDim]; + var ratio = Math.abs(rowSize / columnSize); + var rowCount = Math.ceil(Math.sqrt(ratio * count)); + var columnCount = Math.floor(count / rowCount); + if (columnCount === 0) { + columnCount = 1; + rowCount = count; + } + var grids = []; + for (var i = 0; i < rowCount; i++) { + grids.push(columnCount); + } + var currentCount = rowCount * columnCount; + var remained = count - currentCount; + if (remained > 0) { + for (var i = 0; i < remained; i++) { + grids[i % rowCount] += 1; + } + } + return grids; + } + function divideSector(sectorShape, count, outShapes) { + var r0 = sectorShape.r0; + var r = sectorShape.r; + var startAngle = sectorShape.startAngle; + var endAngle = sectorShape.endAngle; + var angle = Math.abs(endAngle - startAngle); + var arcLen = angle * r; + var deltaR = r - r0; + var isAngleRow = arcLen > Math.abs(deltaR); + var grids = getDividingGrids([arcLen, deltaR], isAngleRow ? 0 : 1, count); + var rowSize = (isAngleRow ? angle : deltaR) / grids.length; + for (var row = 0; row < grids.length; row++) { + var columnSize = (isAngleRow ? deltaR : angle) / grids[row]; + for (var column = 0; column < grids[row]; column++) { + var newShape = {}; + if (isAngleRow) { + newShape.startAngle = startAngle + rowSize * row; + newShape.endAngle = startAngle + rowSize * (row + 1); + newShape.r0 = r0 + columnSize * column; + newShape.r = r0 + columnSize * (column + 1); + } + else { + newShape.startAngle = startAngle + columnSize * column; + newShape.endAngle = startAngle + columnSize * (column + 1); + newShape.r0 = r0 + rowSize * row; + newShape.r = r0 + rowSize * (row + 1); + } + newShape.clockwise = sectorShape.clockwise; + newShape.cx = sectorShape.cx; + newShape.cy = sectorShape.cy; + outShapes.push(newShape); + } + } + } + function divideRect(rectShape, count, outShapes) { + var width = rectShape.width; + var height = rectShape.height; + var isHorizontalRow = width > height; + var grids = getDividingGrids([width, height], isHorizontalRow ? 0 : 1, count); + var rowSizeDim = isHorizontalRow ? 'width' : 'height'; + var columnSizeDim = isHorizontalRow ? 'height' : 'width'; + var rowDim = isHorizontalRow ? 'x' : 'y'; + var columnDim = isHorizontalRow ? 'y' : 'x'; + var rowSize = rectShape[rowSizeDim] / grids.length; + for (var row = 0; row < grids.length; row++) { + var columnSize = rectShape[columnSizeDim] / grids[row]; + for (var column = 0; column < grids[row]; column++) { + var newShape = {}; + newShape[rowDim] = row * rowSize; + newShape[columnDim] = column * columnSize; + newShape[rowSizeDim] = rowSize; + newShape[columnSizeDim] = columnSize; + newShape.x += rectShape.x; + newShape.y += rectShape.y; + outShapes.push(newShape); + } + } + } + function crossProduct2d$1(x1, y1, x2, y2) { + return x1 * y2 - x2 * y1; + } + function lineLineIntersect$1(a1x, a1y, a2x, a2y, b1x, b1y, b2x, b2y) { + var mx = a2x - a1x; + var my = a2y - a1y; + var nx = b2x - b1x; + var ny = b2y - b1y; + var nmCrossProduct = crossProduct2d$1(nx, ny, mx, my); + if (Math.abs(nmCrossProduct) < 1e-6) { + return null; + } + var b1a1x = a1x - b1x; + var b1a1y = a1y - b1y; + var p = crossProduct2d$1(b1a1x, b1a1y, nx, ny) / nmCrossProduct; + if (p < 0 || p > 1) { + return null; + } + return new Point(p * mx + a1x, p * my + a1y); + } + function projPtOnLine(pt, lineA, lineB) { + var dir = new Point(); + Point.sub(dir, lineB, lineA); + dir.normalize(); + var dir2 = new Point(); + Point.sub(dir2, pt, lineA); + var len = dir2.dot(dir); + return len; + } + function addToPoly(poly, pt) { + var last = poly[poly.length - 1]; + if (last && last[0] === pt[0] && last[1] === pt[1]) { + return; + } + poly.push(pt); + } + function splitPolygonByLine(points, lineA, lineB) { + var len = points.length; + var intersections = []; + for (var i = 0; i < len; i++) { + var p0 = points[i]; + var p1 = points[(i + 1) % len]; + var intersectionPt = lineLineIntersect$1(p0[0], p0[1], p1[0], p1[1], lineA.x, lineA.y, lineB.x, lineB.y); + if (intersectionPt) { + intersections.push({ + projPt: projPtOnLine(intersectionPt, lineA, lineB), + pt: intersectionPt, + idx: i + }); + } + } + if (intersections.length < 2) { + return [{ points: points }, { points: points }]; + } + intersections.sort(function (a, b) { + return a.projPt - b.projPt; + }); + var splitPt0 = intersections[0]; + var splitPt1 = intersections[intersections.length - 1]; + if (splitPt1.idx < splitPt0.idx) { + var tmp = splitPt0; + splitPt0 = splitPt1; + splitPt1 = tmp; + } + var splitPt0Arr = [splitPt0.pt.x, splitPt0.pt.y]; + var splitPt1Arr = [splitPt1.pt.x, splitPt1.pt.y]; + var newPolyA = [splitPt0Arr]; + var newPolyB = [splitPt1Arr]; + for (var i = splitPt0.idx + 1; i <= splitPt1.idx; i++) { + addToPoly(newPolyA, points[i].slice()); + } + addToPoly(newPolyA, splitPt1Arr); + addToPoly(newPolyA, splitPt0Arr); + for (var i = splitPt1.idx + 1; i <= splitPt0.idx + len; i++) { + addToPoly(newPolyB, points[i % len].slice()); + } + addToPoly(newPolyB, splitPt0Arr); + addToPoly(newPolyB, splitPt1Arr); + return [{ + points: newPolyA + }, { + points: newPolyB + }]; + } + function binaryDividePolygon(polygonShape) { + var points = polygonShape.points; + var min = []; + var max = []; + fromPoints(points, min, max); + var boundingRect = new BoundingRect(min[0], min[1], max[0] - min[0], max[1] - min[1]); + var width = boundingRect.width; + var height = boundingRect.height; + var x = boundingRect.x; + var y = boundingRect.y; + var pt0 = new Point(); + var pt1 = new Point(); + if (width > height) { + pt0.x = pt1.x = x + width / 2; + pt0.y = y; + pt1.y = y + height; + } + else { + pt0.y = pt1.y = y + height / 2; + pt0.x = x; + pt1.x = x + width; + } + return splitPolygonByLine(points, pt0, pt1); + } + function binaryDivideRecursive(divider, shape, count, out) { + if (count === 1) { + out.push(shape); + } + else { + var mid = Math.floor(count / 2); + var sub = divider(shape); + binaryDivideRecursive(divider, sub[0], mid, out); + binaryDivideRecursive(divider, sub[1], count - mid, out); + } + return out; + } + function clone$4(path, count) { + var paths = []; + for (var i = 0; i < count; i++) { + paths.push(clonePath(path)); + } + return paths; + } + function copyPathProps(source, target) { + target.setStyle(source.style); + target.z = source.z; + target.z2 = source.z2; + target.zlevel = source.zlevel; + } + function polygonConvert(points) { + var out = []; + for (var i = 0; i < points.length;) { + out.push([points[i++], points[i++]]); + } + return out; + } + function split(path, count) { + var outShapes = []; + var shape = path.shape; + var OutShapeCtor; + switch (path.type) { + case 'rect': + divideRect(shape, count, outShapes); + OutShapeCtor = Rect; + break; + case 'sector': + divideSector(shape, count, outShapes); + OutShapeCtor = Sector; + break; + case 'circle': + divideSector({ + r0: 0, r: shape.r, startAngle: 0, endAngle: Math.PI * 2, + cx: shape.cx, cy: shape.cy + }, count, outShapes); + OutShapeCtor = Sector; + break; + default: + var m = path.getComputedTransform(); + var scale = m ? Math.sqrt(Math.max(m[0] * m[0] + m[1] * m[1], m[2] * m[2] + m[3] * m[3])) : 1; + var polygons = map(pathToPolygons(path.getUpdatedPathProxy(), scale), function (poly) { return polygonConvert(poly); }); + var polygonCount = polygons.length; + if (polygonCount === 0) { + binaryDivideRecursive(binaryDividePolygon, { + points: polygons[0] + }, count, outShapes); + } + else if (polygonCount === count) { + for (var i = 0; i < polygonCount; i++) { + outShapes.push({ + points: polygons[i] + }); + } + } + else { + var totalArea_1 = 0; + var items = map(polygons, function (poly) { + var min = []; + var max = []; + fromPoints(poly, min, max); + var area = (max[1] - min[1]) * (max[0] - min[0]); + totalArea_1 += area; + return { poly: poly, area: area }; + }); + items.sort(function (a, b) { return b.area - a.area; }); + var left = count; + for (var i = 0; i < polygonCount; i++) { + var item = items[i]; + if (left <= 0) { + break; + } + var selfCount = i === polygonCount - 1 + ? left + : Math.ceil(item.area / totalArea_1 * count); + if (selfCount < 0) { + continue; + } + binaryDivideRecursive(binaryDividePolygon, { + points: item.poly + }, selfCount, outShapes); + left -= selfCount; + } + } + OutShapeCtor = Polygon; + break; + } + if (!OutShapeCtor) { + return clone$4(path, count); + } + var out = []; + for (var i = 0; i < outShapes.length; i++) { + var subPath = new OutShapeCtor(); + subPath.setShape(outShapes[i]); + copyPathProps(path, subPath); + out.push(subPath); + } + return out; + } + + function alignSubpath(subpath1, subpath2) { + var len1 = subpath1.length; + var len2 = subpath2.length; + if (len1 === len2) { + return [subpath1, subpath2]; + } + var tmpSegX = []; + var tmpSegY = []; + var shorterPath = len1 < len2 ? subpath1 : subpath2; + var shorterLen = Math.min(len1, len2); + var diff = Math.abs(len2 - len1) / 6; + var shorterBezierCount = (shorterLen - 2) / 6; + var eachCurveSubDivCount = Math.ceil(diff / shorterBezierCount) + 1; + var newSubpath = [shorterPath[0], shorterPath[1]]; + var remained = diff; + for (var i = 2; i < shorterLen;) { + var x0 = shorterPath[i - 2]; + var y0 = shorterPath[i - 1]; + var x1 = shorterPath[i++]; + var y1 = shorterPath[i++]; + var x2 = shorterPath[i++]; + var y2 = shorterPath[i++]; + var x3 = shorterPath[i++]; + var y3 = shorterPath[i++]; + if (remained <= 0) { + newSubpath.push(x1, y1, x2, y2, x3, y3); + continue; + } + var actualSubDivCount = Math.min(remained, eachCurveSubDivCount - 1) + 1; + for (var k = 1; k <= actualSubDivCount; k++) { + var p = k / actualSubDivCount; + cubicSubdivide(x0, x1, x2, x3, p, tmpSegX); + cubicSubdivide(y0, y1, y2, y3, p, tmpSegY); + x0 = tmpSegX[3]; + y0 = tmpSegY[3]; + newSubpath.push(tmpSegX[1], tmpSegY[1], tmpSegX[2], tmpSegY[2], x0, y0); + x1 = tmpSegX[5]; + y1 = tmpSegY[5]; + x2 = tmpSegX[6]; + y2 = tmpSegY[6]; + } + remained -= actualSubDivCount - 1; + } + return shorterPath === subpath1 ? [newSubpath, subpath2] : [subpath1, newSubpath]; + } + function createSubpath(lastSubpathSubpath, otherSubpath) { + var len = lastSubpathSubpath.length; + var lastX = lastSubpathSubpath[len - 2]; + var lastY = lastSubpathSubpath[len - 1]; + var newSubpath = []; + for (var i = 0; i < otherSubpath.length;) { + newSubpath[i++] = lastX; + newSubpath[i++] = lastY; + } + return newSubpath; + } + function alignBezierCurves(array1, array2) { + var _a; + var lastSubpath1; + var lastSubpath2; + var newArray1 = []; + var newArray2 = []; + for (var i = 0; i < Math.max(array1.length, array2.length); i++) { + var subpath1 = array1[i]; + var subpath2 = array2[i]; + var newSubpath1 = void 0; + var newSubpath2 = void 0; + if (!subpath1) { + newSubpath1 = createSubpath(lastSubpath1 || subpath2, subpath2); + newSubpath2 = subpath2; + } + else if (!subpath2) { + newSubpath2 = createSubpath(lastSubpath2 || subpath1, subpath1); + newSubpath1 = subpath1; + } + else { + _a = alignSubpath(subpath1, subpath2), newSubpath1 = _a[0], newSubpath2 = _a[1]; + lastSubpath1 = newSubpath1; + lastSubpath2 = newSubpath2; + } + newArray1.push(newSubpath1); + newArray2.push(newSubpath2); + } + return [newArray1, newArray2]; + } + function centroid$1(array) { + var signedArea = 0; + var cx = 0; + var cy = 0; + var len = array.length; + for (var i = 0, j = len - 2; i < len; j = i, i += 2) { + var x0 = array[j]; + var y0 = array[j + 1]; + var x1 = array[i]; + var y1 = array[i + 1]; + var a = x0 * y1 - x1 * y0; + signedArea += a; + cx += (x0 + x1) * a; + cy += (y0 + y1) * a; + } + if (signedArea === 0) { + return [array[0] || 0, array[1] || 0]; + } + return [cx / signedArea / 3, cy / signedArea / 3, signedArea]; + } + function findBestRingOffset(fromSubBeziers, toSubBeziers, fromCp, toCp) { + var bezierCount = (fromSubBeziers.length - 2) / 6; + var bestScore = Infinity; + var bestOffset = 0; + var len = fromSubBeziers.length; + var len2 = len - 2; + for (var offset = 0; offset < bezierCount; offset++) { + var cursorOffset = offset * 6; + var score = 0; + for (var k = 0; k < len; k += 2) { + var idx = k === 0 ? cursorOffset : ((cursorOffset + k - 2) % len2 + 2); + var x0 = fromSubBeziers[idx] - fromCp[0]; + var y0 = fromSubBeziers[idx + 1] - fromCp[1]; + var x1 = toSubBeziers[k] - toCp[0]; + var y1 = toSubBeziers[k + 1] - toCp[1]; + var dx = x1 - x0; + var dy = y1 - y0; + score += dx * dx + dy * dy; + } + if (score < bestScore) { + bestScore = score; + bestOffset = offset; + } + } + return bestOffset; + } + function reverse(array) { + var newArr = []; + var len = array.length; + for (var i = 0; i < len; i += 2) { + newArr[i] = array[len - i - 2]; + newArr[i + 1] = array[len - i - 1]; + } + return newArr; + } + function findBestMorphingRotation(fromArr, toArr, searchAngleIteration, searchAngleRange) { + var result = []; + var fromNeedsReverse; + for (var i = 0; i < fromArr.length; i++) { + var fromSubpathBezier = fromArr[i]; + var toSubpathBezier = toArr[i]; + var fromCp = centroid$1(fromSubpathBezier); + var toCp = centroid$1(toSubpathBezier); + if (fromNeedsReverse == null) { + fromNeedsReverse = fromCp[2] < 0 !== toCp[2] < 0; + } + var newFromSubpathBezier = []; + var newToSubpathBezier = []; + var bestAngle = 0; + var bestScore = Infinity; + var tmpArr = []; + var len = fromSubpathBezier.length; + if (fromNeedsReverse) { + fromSubpathBezier = reverse(fromSubpathBezier); + } + var offset = findBestRingOffset(fromSubpathBezier, toSubpathBezier, fromCp, toCp) * 6; + var len2 = len - 2; + for (var k = 0; k < len2; k += 2) { + var idx = (offset + k) % len2 + 2; + newFromSubpathBezier[k + 2] = fromSubpathBezier[idx] - fromCp[0]; + newFromSubpathBezier[k + 3] = fromSubpathBezier[idx + 1] - fromCp[1]; + } + newFromSubpathBezier[0] = fromSubpathBezier[offset] - fromCp[0]; + newFromSubpathBezier[1] = fromSubpathBezier[offset + 1] - fromCp[1]; + if (searchAngleIteration > 0) { + var step = searchAngleRange / searchAngleIteration; + for (var angle = -searchAngleRange / 2; angle <= searchAngleRange / 2; angle += step) { + var sa = Math.sin(angle); + var ca = Math.cos(angle); + var score = 0; + for (var k = 0; k < fromSubpathBezier.length; k += 2) { + var x0 = newFromSubpathBezier[k]; + var y0 = newFromSubpathBezier[k + 1]; + var x1 = toSubpathBezier[k] - toCp[0]; + var y1 = toSubpathBezier[k + 1] - toCp[1]; + var newX1 = x1 * ca - y1 * sa; + var newY1 = x1 * sa + y1 * ca; + tmpArr[k] = newX1; + tmpArr[k + 1] = newY1; + var dx = newX1 - x0; + var dy = newY1 - y0; + score += dx * dx + dy * dy; + } + if (score < bestScore) { + bestScore = score; + bestAngle = angle; + for (var m = 0; m < tmpArr.length; m++) { + newToSubpathBezier[m] = tmpArr[m]; + } + } + } + } + else { + for (var i_1 = 0; i_1 < len; i_1 += 2) { + newToSubpathBezier[i_1] = toSubpathBezier[i_1] - toCp[0]; + newToSubpathBezier[i_1 + 1] = toSubpathBezier[i_1 + 1] - toCp[1]; + } + } + result.push({ + from: newFromSubpathBezier, + to: newToSubpathBezier, + fromCp: fromCp, + toCp: toCp, + rotation: -bestAngle + }); + } + return result; + } + function isCombineMorphing(path) { + return path.__isCombineMorphing; + } + var SAVED_METHOD_PREFIX = '__mOriginal_'; + function saveAndModifyMethod(obj, methodName, modifiers) { + var savedMethodName = SAVED_METHOD_PREFIX + methodName; + var originalMethod = obj[savedMethodName] || obj[methodName]; + if (!obj[savedMethodName]) { + obj[savedMethodName] = obj[methodName]; + } + var replace = modifiers.replace; + var after = modifiers.after; + var before = modifiers.before; + obj[methodName] = function () { + var args = arguments; + var res; + before && before.apply(this, args); + if (replace) { + res = replace.apply(this, args); + } + else { + res = originalMethod.apply(this, args); + } + after && after.apply(this, args); + return res; + }; + } + function restoreMethod(obj, methodName) { + var savedMethodName = SAVED_METHOD_PREFIX + methodName; + if (obj[savedMethodName]) { + obj[methodName] = obj[savedMethodName]; + obj[savedMethodName] = null; + } + } + function applyTransformOnBeziers(bezierCurves, mm) { + for (var i = 0; i < bezierCurves.length; i++) { + var subBeziers = bezierCurves[i]; + for (var k = 0; k < subBeziers.length;) { + var x = subBeziers[k]; + var y = subBeziers[k + 1]; + subBeziers[k++] = mm[0] * x + mm[2] * y + mm[4]; + subBeziers[k++] = mm[1] * x + mm[3] * y + mm[5]; + } + } + } + function prepareMorphPath(fromPath, toPath) { + var fromPathProxy = fromPath.getUpdatedPathProxy(); + var toPathProxy = toPath.getUpdatedPathProxy(); + var _a = alignBezierCurves(pathToBezierCurves(fromPathProxy), pathToBezierCurves(toPathProxy)), fromBezierCurves = _a[0], toBezierCurves = _a[1]; + var fromPathTransform = fromPath.getComputedTransform(); + var toPathTransform = toPath.getComputedTransform(); + function updateIdentityTransform() { + this.transform = null; + } + fromPathTransform && applyTransformOnBeziers(fromBezierCurves, fromPathTransform); + toPathTransform && applyTransformOnBeziers(toBezierCurves, toPathTransform); + saveAndModifyMethod(toPath, 'updateTransform', { replace: updateIdentityTransform }); + toPath.transform = null; + var morphingData = findBestMorphingRotation(fromBezierCurves, toBezierCurves, 10, Math.PI); + var tmpArr = []; + saveAndModifyMethod(toPath, 'buildPath', { replace: function (path) { + var t = toPath.__morphT; + var onet = 1 - t; + var newCp = []; + for (var i = 0; i < morphingData.length; i++) { + var item = morphingData[i]; + var from = item.from; + var to = item.to; + var angle = item.rotation * t; + var fromCp = item.fromCp; + var toCp = item.toCp; + var sa = Math.sin(angle); + var ca = Math.cos(angle); + lerp(newCp, fromCp, toCp, t); + for (var m = 0; m < from.length; m += 2) { + var x0_1 = from[m]; + var y0_1 = from[m + 1]; + var x1 = to[m]; + var y1 = to[m + 1]; + var x = x0_1 * onet + x1 * t; + var y = y0_1 * onet + y1 * t; + tmpArr[m] = (x * ca - y * sa) + newCp[0]; + tmpArr[m + 1] = (x * sa + y * ca) + newCp[1]; + } + var x0 = tmpArr[0]; + var y0 = tmpArr[1]; + path.moveTo(x0, y0); + for (var m = 2; m < from.length;) { + var x1 = tmpArr[m++]; + var y1 = tmpArr[m++]; + var x2 = tmpArr[m++]; + var y2 = tmpArr[m++]; + var x3 = tmpArr[m++]; + var y3 = tmpArr[m++]; + if (x0 === x1 && y0 === y1 && x2 === x3 && y2 === y3) { + path.lineTo(x3, y3); + } + else { + path.bezierCurveTo(x1, y1, x2, y2, x3, y3); + } + x0 = x3; + y0 = y3; + } + } + } }); + } + function morphPath(fromPath, toPath, animationOpts) { + if (!fromPath || !toPath) { + return toPath; + } + var oldDone = animationOpts.done; + var oldDuring = animationOpts.during; + prepareMorphPath(fromPath, toPath); + toPath.__morphT = 0; + function restoreToPath() { + restoreMethod(toPath, 'buildPath'); + restoreMethod(toPath, 'updateTransform'); + toPath.__morphT = -1; + toPath.createPathProxy(); + toPath.dirtyShape(); + } + toPath.animateTo({ + __morphT: 1 + }, defaults({ + during: function (p) { + toPath.dirtyShape(); + oldDuring && oldDuring(p); + }, + done: function () { + restoreToPath(); + oldDone && oldDone(); + } + }, animationOpts)); + return toPath; + } + function hilbert(x, y, minX, minY, maxX, maxY) { + var bits = 16; + x = (maxX === minX) ? 0 : Math.round(32767 * (x - minX) / (maxX - minX)); + y = (maxY === minY) ? 0 : Math.round(32767 * (y - minY) / (maxY - minY)); + var d = 0; + var tmp; + for (var s = (1 << bits) / 2; s > 0; s /= 2) { + var rx = 0; + var ry = 0; + if ((x & s) > 0) { + rx = 1; + } + if ((y & s) > 0) { + ry = 1; + } + d += s * s * ((3 * rx) ^ ry); + if (ry === 0) { + if (rx === 1) { + x = s - 1 - x; + y = s - 1 - y; + } + tmp = x; + x = y; + y = tmp; + } + } + return d; + } + function sortPaths(pathList) { + var xMin = Infinity; + var yMin = Infinity; + var xMax = -Infinity; + var yMax = -Infinity; + var cps = map(pathList, function (path) { + var rect = path.getBoundingRect(); + var m = path.getComputedTransform(); + var x = rect.x + rect.width / 2 + (m ? m[4] : 0); + var y = rect.y + rect.height / 2 + (m ? m[5] : 0); + xMin = Math.min(x, xMin); + yMin = Math.min(y, yMin); + xMax = Math.max(x, xMax); + yMax = Math.max(y, yMax); + return [x, y]; + }); + var items = map(cps, function (cp, idx) { + return { + cp: cp, + z: hilbert(cp[0], cp[1], xMin, yMin, xMax, yMax), + path: pathList[idx] + }; + }); + return items.sort(function (a, b) { return a.z - b.z; }).map(function (item) { return item.path; }); + } + function defaultDividePath(param) { + return split(param.path, param.count); + } + function createEmptyReturn() { + return { + fromIndividuals: [], + toIndividuals: [], + count: 0 + }; + } + function combineMorph(fromList, toPath, animationOpts) { + var fromPathList = []; + function addFromPath(fromList) { + for (var i = 0; i < fromList.length; i++) { + var from = fromList[i]; + if (isCombineMorphing(from)) { + addFromPath(from.childrenRef()); + } + else if (from instanceof Path) { + fromPathList.push(from); + } + } + } + addFromPath(fromList); + var separateCount = fromPathList.length; + if (!separateCount) { + return createEmptyReturn(); + } + var dividePath = animationOpts.dividePath || defaultDividePath; + var toSubPathList = dividePath({ + path: toPath, count: separateCount + }); + if (toSubPathList.length !== separateCount) { + console.error('Invalid morphing: unmatched splitted path'); + return createEmptyReturn(); + } + fromPathList = sortPaths(fromPathList); + toSubPathList = sortPaths(toSubPathList); + var oldDone = animationOpts.done; + var oldDuring = animationOpts.during; + var individualDelay = animationOpts.individualDelay; + var identityTransform = new Transformable(); + for (var i = 0; i < separateCount; i++) { + var from = fromPathList[i]; + var to = toSubPathList[i]; + to.parent = toPath; + to.copyTransform(identityTransform); + if (!individualDelay) { + prepareMorphPath(from, to); + } + } + toPath.__isCombineMorphing = true; + toPath.childrenRef = function () { + return toSubPathList; + }; + function addToSubPathListToZr(zr) { + for (var i = 0; i < toSubPathList.length; i++) { + toSubPathList[i].addSelfToZr(zr); + } + } + saveAndModifyMethod(toPath, 'addSelfToZr', { + after: function (zr) { + addToSubPathListToZr(zr); + } + }); + saveAndModifyMethod(toPath, 'removeSelfFromZr', { + after: function (zr) { + for (var i = 0; i < toSubPathList.length; i++) { + toSubPathList[i].removeSelfFromZr(zr); + } + } + }); + function restoreToPath() { + toPath.__isCombineMorphing = false; + toPath.__morphT = -1; + toPath.childrenRef = null; + restoreMethod(toPath, 'addSelfToZr'); + restoreMethod(toPath, 'removeSelfFromZr'); + } + var toLen = toSubPathList.length; + if (individualDelay) { + var animating_1 = toLen; + var eachDone = function () { + animating_1--; + if (animating_1 === 0) { + restoreToPath(); + oldDone && oldDone(); + } + }; + for (var i = 0; i < toLen; i++) { + var indivdualAnimationOpts = individualDelay ? defaults({ + delay: (animationOpts.delay || 0) + individualDelay(i, toLen, fromPathList[i], toSubPathList[i]), + done: eachDone + }, animationOpts) : animationOpts; + morphPath(fromPathList[i], toSubPathList[i], indivdualAnimationOpts); + } + } + else { + toPath.__morphT = 0; + toPath.animateTo({ + __morphT: 1 + }, defaults({ + during: function (p) { + for (var i = 0; i < toLen; i++) { + var child = toSubPathList[i]; + child.__morphT = toPath.__morphT; + child.dirtyShape(); + } + oldDuring && oldDuring(p); + }, + done: function () { + restoreToPath(); + for (var i = 0; i < fromList.length; i++) { + restoreMethod(fromList[i], 'updateTransform'); + } + oldDone && oldDone(); + } + }, animationOpts)); + } + if (toPath.__zr) { + addToSubPathListToZr(toPath.__zr); + } + return { + fromIndividuals: fromPathList, + toIndividuals: toSubPathList, + count: toLen + }; + } + function separateMorph(fromPath, toPathList, animationOpts) { + var toLen = toPathList.length; + var fromPathList = []; + var dividePath = animationOpts.dividePath || defaultDividePath; + function addFromPath(fromList) { + for (var i = 0; i < fromList.length; i++) { + var from = fromList[i]; + if (isCombineMorphing(from)) { + addFromPath(from.childrenRef()); + } + else if (from instanceof Path) { + fromPathList.push(from); + } + } + } + if (isCombineMorphing(fromPath)) { + addFromPath(fromPath.childrenRef()); + var fromLen = fromPathList.length; + if (fromLen < toLen) { + var k = 0; + for (var i = fromLen; i < toLen; i++) { + fromPathList.push(clonePath(fromPathList[k++ % fromLen])); + } + } + fromPathList.length = toLen; + } + else { + fromPathList = dividePath({ path: fromPath, count: toLen }); + var fromPathTransform = fromPath.getComputedTransform(); + for (var i = 0; i < fromPathList.length; i++) { + fromPathList[i].setLocalTransform(fromPathTransform); + } + if (fromPathList.length !== toLen) { + console.error('Invalid morphing: unmatched splitted path'); + return createEmptyReturn(); + } + } + fromPathList = sortPaths(fromPathList); + toPathList = sortPaths(toPathList); + var individualDelay = animationOpts.individualDelay; + for (var i = 0; i < toLen; i++) { + var indivdualAnimationOpts = individualDelay ? defaults({ + delay: (animationOpts.delay || 0) + individualDelay(i, toLen, fromPathList[i], toPathList[i]) + }, animationOpts) : animationOpts; + morphPath(fromPathList[i], toPathList[i], indivdualAnimationOpts); + } + return { + fromIndividuals: fromPathList, + toIndividuals: toPathList, + count: toPathList.length + }; + } + + function isMultiple(elements) { + return isArray(elements[0]); + } + function prepareMorphBatches(one, many) { + var batches = []; + var batchCount = one.length; + for (var i = 0; i < batchCount; i++) { + batches.push({ + one: one[i], + many: [] + }); + } + for (var i = 0; i < many.length; i++) { + var len = many[i].length; + var k = void 0; + for (k = 0; k < len; k++) { + batches[k % batchCount].many.push(many[i][k]); + } + } + var off = 0; + // If one has more paths than each one of many. average them. + for (var i = batchCount - 1; i >= 0; i--) { + if (!batches[i].many.length) { + var moveFrom = batches[off].many; + if (moveFrom.length <= 1) { + // Not enough + // Start from the first one. + if (off) { + off = 0; + } else { + return batches; + } + } + var len = moveFrom.length; + var mid = Math.ceil(len / 2); + batches[i].many = moveFrom.slice(mid, len); + batches[off].many = moveFrom.slice(0, mid); + off++; + } + } + return batches; + } + var pathDividers = { + clone: function (params) { + var ret = []; + // Fitting the alpha + var approxOpacity = 1 - Math.pow(1 - params.path.style.opacity, 1 / params.count); + for (var i = 0; i < params.count; i++) { + var cloned = clonePath(params.path); + cloned.setStyle('opacity', approxOpacity); + ret.push(cloned); + } + return ret; + }, + // Use the default divider + split: null + }; + function applyMorphAnimation(from, to, divideShape, seriesModel, dataIndex, animateOtherProps) { + if (!from.length || !to.length) { + return; + } + var updateAnimationCfg = getAnimationConfig('update', seriesModel, dataIndex); + if (!(updateAnimationCfg && updateAnimationCfg.duration > 0)) { + return; + } + var animationDelay = seriesModel.getModel('universalTransition').get('delay'); + var animationCfg = Object.assign({ + // Need to setToFinal so the further calculation based on the style can be correct. + // Like emphasis color. + setToFinal: true + }, updateAnimationCfg); + var many; + var one; + if (isMultiple(from)) { + // manyToOne + many = from; + one = to; + } + if (isMultiple(to)) { + // oneToMany + many = to; + one = from; + } + function morphOneBatch(batch, fromIsMany, animateIndex, animateCount, forceManyOne) { + var batchMany = batch.many; + var batchOne = batch.one; + if (batchMany.length === 1 && !forceManyOne) { + // Is one to one + var batchFrom = fromIsMany ? batchMany[0] : batchOne; + var batchTo = fromIsMany ? batchOne : batchMany[0]; + if (isCombineMorphing(batchFrom)) { + // Keep doing combine animation. + morphOneBatch({ + many: [batchFrom], + one: batchTo + }, true, animateIndex, animateCount, true); + } else { + var individualAnimationCfg = animationDelay ? defaults({ + delay: animationDelay(animateIndex, animateCount) + }, animationCfg) : animationCfg; + morphPath(batchFrom, batchTo, individualAnimationCfg); + animateOtherProps(batchFrom, batchTo, batchFrom, batchTo, individualAnimationCfg); + } + } else { + var separateAnimationCfg = defaults({ + dividePath: pathDividers[divideShape], + individualDelay: animationDelay && function (idx, count, fromPath, toPath) { + return animationDelay(idx + animateIndex, animateCount); + } + }, animationCfg); + var _a = fromIsMany ? combineMorph(batchMany, batchOne, separateAnimationCfg) : separateMorph(batchOne, batchMany, separateAnimationCfg), + fromIndividuals = _a.fromIndividuals, + toIndividuals = _a.toIndividuals; + var count = fromIndividuals.length; + for (var k = 0; k < count; k++) { + var individualAnimationCfg = animationDelay ? defaults({ + delay: animationDelay(k, count) + }, animationCfg) : animationCfg; + animateOtherProps(fromIndividuals[k], toIndividuals[k], fromIsMany ? batchMany[k] : batch.one, fromIsMany ? batch.one : batchMany[k], individualAnimationCfg); + } + } + } + var fromIsMany = many ? many === from + // Is one to one. If the path number not match. also needs do merge and separate morphing. + : from.length > to.length; + var morphBatches = many ? prepareMorphBatches(one, many) : prepareMorphBatches(fromIsMany ? to : from, [fromIsMany ? from : to]); + var animateCount = 0; + for (var i = 0; i < morphBatches.length; i++) { + animateCount += morphBatches[i].many.length; + } + var animateIndex = 0; + for (var i = 0; i < morphBatches.length; i++) { + morphOneBatch(morphBatches[i], fromIsMany, animateIndex, animateCount); + animateIndex += morphBatches[i].many.length; + } + } + function getPathList(elements) { + if (!elements) { + return []; + } + if (isArray(elements)) { + var pathList_1 = []; + for (var i = 0; i < elements.length; i++) { + pathList_1.push(getPathList(elements[i])); + } + return pathList_1; + } + var pathList = []; + elements.traverse(function (el) { + if (el instanceof Path && !el.disableMorphing && !el.invisible && !el.ignore) { + pathList.push(el); + } + }); + return pathList; + } + + var DATA_COUNT_THRESHOLD = 1e4; + var TRANSITION_NONE = 0; + var TRANSITION_P2C = 1; + var TRANSITION_C2P = 2; + var getUniversalTransitionGlobalStore = makeInner(); + function getDimension(data, visualDimension) { + var dimensions = data.dimensions; + for (var i = 0; i < dimensions.length; i++) { + var dimInfo = data.getDimensionInfo(dimensions[i]); + if (dimInfo && dimInfo.otherDims[visualDimension] === 0) { + return dimensions[i]; + } + } + } + // get value by dimension. (only get value of itemGroupId or childGroupId, so convert it to string) + function getValueByDimension(data, dataIndex, dimension) { + var dimInfo = data.getDimensionInfo(dimension); + var dimOrdinalMeta = dimInfo && dimInfo.ordinalMeta; + if (dimInfo) { + var value = data.get(dimInfo.name, dataIndex); + if (dimOrdinalMeta) { + return dimOrdinalMeta.categories[value] || value + ''; + } + return value + ''; + } + } + function getGroupId(data, dataIndex, dataGroupId, isChild) { + // try to get groupId from encode + var visualDimension = isChild ? 'itemChildGroupId' : 'itemGroupId'; + var groupIdDim = getDimension(data, visualDimension); + if (groupIdDim) { + var groupId = getValueByDimension(data, dataIndex, groupIdDim); + return groupId; + } + // try to get groupId from raw data item + var rawDataItem = data.getRawDataItem(dataIndex); + var property = isChild ? 'childGroupId' : 'groupId'; + if (rawDataItem && rawDataItem[property]) { + return rawDataItem[property] + ''; + } + // fallback + if (isChild) { + return; + } + // try to use series.dataGroupId as groupId, otherwise use dataItem's id as groupId + return dataGroupId || data.getId(dataIndex); + } + // flatten all data items from different serieses into one arrary + function flattenDataDiffItems(list) { + var items = []; + each(list, function (seriesInfo) { + var data = seriesInfo.data; + var dataGroupId = seriesInfo.dataGroupId; + if (data.count() > DATA_COUNT_THRESHOLD) { + if ("development" !== 'production') { + warn('Universal transition is disabled on large data > 10k.'); + } + return; + } + var indices = data.getIndices(); + for (var dataIndex = 0; dataIndex < indices.length; dataIndex++) { + items.push({ + data: data, + groupId: getGroupId(data, dataIndex, dataGroupId, false), + childGroupId: getGroupId(data, dataIndex, dataGroupId, true), + divide: seriesInfo.divide, + dataIndex: dataIndex + }); + } + }); + return items; + } + function fadeInElement(newEl, newSeries, newIndex) { + newEl.traverse(function (el) { + if (el instanceof Path) { + // TODO use fade in animation for target element. + initProps(el, { + style: { + opacity: 0 + } + }, newSeries, { + dataIndex: newIndex, + isFrom: true + }); + } + }); + } + function removeEl$1(el) { + if (el.parent) { + // Bake parent transform to element. + // So it can still have proper transform to transition after it's removed. + var computedTransform = el.getComputedTransform(); + el.setLocalTransform(computedTransform); + el.parent.remove(el); + } + } + function stopAnimation(el) { + el.stopAnimation(); + if (el.isGroup) { + el.traverse(function (child) { + child.stopAnimation(); + }); + } + } + function animateElementStyles(el, dataIndex, seriesModel) { + var animationConfig = getAnimationConfig('update', seriesModel, dataIndex); + animationConfig && el.traverse(function (child) { + if (child instanceof Displayable) { + var oldStyle = getOldStyle(child); + if (oldStyle) { + child.animateFrom({ + style: oldStyle + }, animationConfig); + } + } + }); + } + function isAllIdSame(oldDiffItems, newDiffItems) { + var len = oldDiffItems.length; + if (len !== newDiffItems.length) { + return false; + } + for (var i = 0; i < len; i++) { + var oldItem = oldDiffItems[i]; + var newItem = newDiffItems[i]; + if (oldItem.data.getId(oldItem.dataIndex) !== newItem.data.getId(newItem.dataIndex)) { + return false; + } + } + return true; + } + function transitionBetween(oldList, newList, api) { + var oldDiffItems = flattenDataDiffItems(oldList); + var newDiffItems = flattenDataDiffItems(newList); + function updateMorphingPathProps(from, to, rawFrom, rawTo, animationCfg) { + if (rawFrom || from) { + to.animateFrom({ + style: rawFrom && rawFrom !== from + // dividingMethod like clone may override the style(opacity) + // So extend it to raw style. + ? extend(extend({}, rawFrom.style), from.style) : from.style + }, animationCfg); + } + } + var hasMorphAnimation = false; + /** + * With groupId and childGroupId, we can build parent-child relationships between dataItems. + * However, we should mind the parent-child "direction" between old and new options. + * + * For example, suppose we have two dataItems from two series.data: + * + * dataA: [ dataB: [ + * { { + * value: 5, value: 3, + * groupId: 'creatures', groupId: 'animals', + * childGroupId: 'animals' childGroupId: 'dogs' + * }, }, + * ... ... + * ] ] + * + * where dataA is belong to optionA and dataB is belong to optionB. + * + * When we `setOption(optionB)` from optionA, we choose childGroupId of dataItemA and groupId of + * dataItemB as keys so the two keys are matched (both are 'animals'), then universalTransition + * will work. This derection is "parent -> child". + * + * If we `setOption(optionA)` from optionB, we also choose groupId of dataItemB and childGroupId + * of dataItemA as keys and universalTransition will work. This derection is "child -> parent". + * + * If there is no childGroupId specified, which means no multiLevelDrillDown/Up is needed and no + * parent-child relationship exists. This direction is "none". + * + * So we need to know whether to use groupId or childGroupId as the key when we call the keyGetter + * functions. Thus, we need to decide the direction first. + * + * The rule is: + * + * if (all childGroupIds in oldDiffItems and all groupIds in newDiffItems have common value) { + * direction = 'parent -> child'; + * } else if (all groupIds in oldDiffItems and all childGroupIds in newDiffItems have common value) { + * direction = 'child -> parent'; + * } else { + * direction = 'none'; + * } + */ + var direction = TRANSITION_NONE; + // find all groupIds and childGroupIds from oldDiffItems + var oldGroupIds = createHashMap(); + var oldChildGroupIds = createHashMap(); + oldDiffItems.forEach(function (item) { + item.groupId && oldGroupIds.set(item.groupId, true); + item.childGroupId && oldChildGroupIds.set(item.childGroupId, true); + }); + // traverse newDiffItems and decide the direction according to the rule + for (var i = 0; i < newDiffItems.length; i++) { + var newGroupId = newDiffItems[i].groupId; + if (oldChildGroupIds.get(newGroupId)) { + direction = TRANSITION_P2C; + break; + } + var newChildGroupId = newDiffItems[i].childGroupId; + if (newChildGroupId && oldGroupIds.get(newChildGroupId)) { + direction = TRANSITION_C2P; + break; + } + } + function createKeyGetter(isOld, onlyGetId) { + return function (diffItem) { + var data = diffItem.data; + var dataIndex = diffItem.dataIndex; + // TODO if specified dim + if (onlyGetId) { + return data.getId(dataIndex); + } + if (isOld) { + return direction === TRANSITION_P2C ? diffItem.childGroupId : diffItem.groupId; + } else { + return direction === TRANSITION_C2P ? diffItem.childGroupId : diffItem.groupId; + } + }; + } + // Use id if it's very likely to be an one to one animation + // It's more robust than groupId + // TODO Check if key dimension is specified. + var useId = isAllIdSame(oldDiffItems, newDiffItems); + var isElementStillInChart = {}; + if (!useId) { + // We may have different diff strategy with basicTransition if we use other dimension as key. + // If so, we can't simply check if oldEl is same with newEl. We need a map to check if oldEl is still being used in the new chart. + // We can't use the elements that already being morphed. Let it keep it's original basic transition. + for (var i = 0; i < newDiffItems.length; i++) { + var newItem = newDiffItems[i]; + var el = newItem.data.getItemGraphicEl(newItem.dataIndex); + if (el) { + isElementStillInChart[el.id] = true; + } + } + } + function updateOneToOne(newIndex, oldIndex) { + var oldItem = oldDiffItems[oldIndex]; + var newItem = newDiffItems[newIndex]; + var newSeries = newItem.data.hostModel; + // TODO Mark this elements is morphed and don't morph them anymore + var oldEl = oldItem.data.getItemGraphicEl(oldItem.dataIndex); + var newEl = newItem.data.getItemGraphicEl(newItem.dataIndex); + // Can't handle same elements. + if (oldEl === newEl) { + newEl && animateElementStyles(newEl, newItem.dataIndex, newSeries); + return; + } + if ( + // We can't use the elements that already being morphed + oldEl && isElementStillInChart[oldEl.id]) { + return; + } + if (newEl) { + // TODO: If keep animating the group in case + // some of the elements don't want to be morphed. + // TODO Label? + stopAnimation(newEl); + if (oldEl) { + stopAnimation(oldEl); + // If old element is doing leaving animation. stop it and remove it immediately. + removeEl$1(oldEl); + hasMorphAnimation = true; + applyMorphAnimation(getPathList(oldEl), getPathList(newEl), newItem.divide, newSeries, newIndex, updateMorphingPathProps); + } else { + fadeInElement(newEl, newSeries, newIndex); + } + } + // else keep oldEl leaving animation. + } + + new DataDiffer(oldDiffItems, newDiffItems, createKeyGetter(true, useId), createKeyGetter(false, useId), null, 'multiple').update(updateOneToOne).updateManyToOne(function (newIndex, oldIndices) { + var newItem = newDiffItems[newIndex]; + var newData = newItem.data; + var newSeries = newData.hostModel; + var newEl = newData.getItemGraphicEl(newItem.dataIndex); + var oldElsList = filter(map(oldIndices, function (idx) { + return oldDiffItems[idx].data.getItemGraphicEl(oldDiffItems[idx].dataIndex); + }), function (oldEl) { + return oldEl && oldEl !== newEl && !isElementStillInChart[oldEl.id]; + }); + if (newEl) { + stopAnimation(newEl); + if (oldElsList.length) { + // If old element is doing leaving animation. stop it and remove it immediately. + each(oldElsList, function (oldEl) { + stopAnimation(oldEl); + removeEl$1(oldEl); + }); + hasMorphAnimation = true; + applyMorphAnimation(getPathList(oldElsList), getPathList(newEl), newItem.divide, newSeries, newIndex, updateMorphingPathProps); + } else { + fadeInElement(newEl, newSeries, newItem.dataIndex); + } + } + // else keep oldEl leaving animation. + }).updateOneToMany(function (newIndices, oldIndex) { + var oldItem = oldDiffItems[oldIndex]; + var oldEl = oldItem.data.getItemGraphicEl(oldItem.dataIndex); + // We can't use the elements that already being morphed + if (oldEl && isElementStillInChart[oldEl.id]) { + return; + } + var newElsList = filter(map(newIndices, function (idx) { + return newDiffItems[idx].data.getItemGraphicEl(newDiffItems[idx].dataIndex); + }), function (el) { + return el && el !== oldEl; + }); + var newSeris = newDiffItems[newIndices[0]].data.hostModel; + if (newElsList.length) { + each(newElsList, function (newEl) { + return stopAnimation(newEl); + }); + if (oldEl) { + stopAnimation(oldEl); + // If old element is doing leaving animation. stop it and remove it immediately. + removeEl$1(oldEl); + hasMorphAnimation = true; + applyMorphAnimation(getPathList(oldEl), getPathList(newElsList), oldItem.divide, + // Use divide on old. + newSeris, newIndices[0], updateMorphingPathProps); + } else { + each(newElsList, function (newEl) { + return fadeInElement(newEl, newSeris, newIndices[0]); + }); + } + } + // else keep oldEl leaving animation. + }).updateManyToMany(function (newIndices, oldIndices) { + // If two data are same and both have groupId. + // Normally they should be diff by id. + new DataDiffer(oldIndices, newIndices, function (rawIdx) { + return oldDiffItems[rawIdx].data.getId(oldDiffItems[rawIdx].dataIndex); + }, function (rawIdx) { + return newDiffItems[rawIdx].data.getId(newDiffItems[rawIdx].dataIndex); + }).update(function (newIndex, oldIndex) { + // Use the original index + updateOneToOne(newIndices[newIndex], oldIndices[oldIndex]); + }).execute(); + }).execute(); + if (hasMorphAnimation) { + each(newList, function (_a) { + var data = _a.data; + var seriesModel = data.hostModel; + var view = seriesModel && api.getViewOfSeriesModel(seriesModel); + var animationCfg = getAnimationConfig('update', seriesModel, 0); // use 0 index. + if (view && seriesModel.isAnimationEnabled() && animationCfg && animationCfg.duration > 0) { + view.group.traverse(function (el) { + if (el instanceof Path && !el.animators.length) { + // We can't accept there still exists element that has no animation + // if universalTransition is enabled + el.animateFrom({ + style: { + opacity: 0 + } + }, animationCfg); + } + }); + } + }); + } + } + function getSeriesTransitionKey(series) { + var seriesKey = series.getModel('universalTransition').get('seriesKey'); + if (!seriesKey) { + // Use series id by default. + return series.id; + } + return seriesKey; + } + function convertArraySeriesKeyToString(seriesKey) { + if (isArray(seriesKey)) { + // Order independent. + return seriesKey.sort().join(','); + } + return seriesKey; + } + function getDivideShapeFromData(data) { + if (data.hostModel) { + return data.hostModel.getModel('universalTransition').get('divideShape'); + } + } + function findTransitionSeriesBatches(globalStore, params) { + var updateBatches = createHashMap(); + var oldDataMap = createHashMap(); + // Map that only store key in array seriesKey. + // Which is used to query the old data when transition from one to multiple series. + var oldDataMapForSplit = createHashMap(); + each(globalStore.oldSeries, function (series, idx) { + var oldDataGroupId = globalStore.oldDataGroupIds[idx]; + var oldData = globalStore.oldData[idx]; + var transitionKey = getSeriesTransitionKey(series); + var transitionKeyStr = convertArraySeriesKeyToString(transitionKey); + oldDataMap.set(transitionKeyStr, { + dataGroupId: oldDataGroupId, + data: oldData + }); + if (isArray(transitionKey)) { + // Same key can't in different array seriesKey. + each(transitionKey, function (key) { + oldDataMapForSplit.set(key, { + key: transitionKeyStr, + dataGroupId: oldDataGroupId, + data: oldData + }); + }); + } + }); + function checkTransitionSeriesKeyDuplicated(transitionKeyStr) { + if (updateBatches.get(transitionKeyStr)) { + warn("Duplicated seriesKey in universalTransition " + transitionKeyStr); + } + } + each(params.updatedSeries, function (series) { + if (series.isUniversalTransitionEnabled() && series.isAnimationEnabled()) { + var newDataGroupId = series.get('dataGroupId'); + var newData = series.getData(); + var transitionKey = getSeriesTransitionKey(series); + var transitionKeyStr = convertArraySeriesKeyToString(transitionKey); + // Only transition between series with same id. + var oldData = oldDataMap.get(transitionKeyStr); + // string transition key is the best match. + if (oldData) { + if ("development" !== 'production') { + checkTransitionSeriesKeyDuplicated(transitionKeyStr); + } + // TODO check if data is same? + updateBatches.set(transitionKeyStr, { + oldSeries: [{ + dataGroupId: oldData.dataGroupId, + divide: getDivideShapeFromData(oldData.data), + data: oldData.data + }], + newSeries: [{ + dataGroupId: newDataGroupId, + divide: getDivideShapeFromData(newData), + data: newData + }] + }); + } else { + // Transition from multiple series. + // e.g. 'female', 'male' -> ['female', 'male'] + if (isArray(transitionKey)) { + if ("development" !== 'production') { + checkTransitionSeriesKeyDuplicated(transitionKeyStr); + } + var oldSeries_1 = []; + each(transitionKey, function (key) { + var oldData = oldDataMap.get(key); + if (oldData.data) { + oldSeries_1.push({ + dataGroupId: oldData.dataGroupId, + divide: getDivideShapeFromData(oldData.data), + data: oldData.data + }); + } + }); + if (oldSeries_1.length) { + updateBatches.set(transitionKeyStr, { + oldSeries: oldSeries_1, + newSeries: [{ + dataGroupId: newDataGroupId, + data: newData, + divide: getDivideShapeFromData(newData) + }] + }); + } + } else { + // Try transition to multiple series. + // e.g. ['female', 'male'] -> 'female', 'male' + var oldData_1 = oldDataMapForSplit.get(transitionKey); + if (oldData_1) { + var batch = updateBatches.get(oldData_1.key); + if (!batch) { + batch = { + oldSeries: [{ + dataGroupId: oldData_1.dataGroupId, + data: oldData_1.data, + divide: getDivideShapeFromData(oldData_1.data) + }], + newSeries: [] + }; + updateBatches.set(oldData_1.key, batch); + } + batch.newSeries.push({ + dataGroupId: newDataGroupId, + data: newData, + divide: getDivideShapeFromData(newData) + }); + } + } + } + } + }); + return updateBatches; + } + function querySeries(series, finder) { + for (var i = 0; i < series.length; i++) { + var found = finder.seriesIndex != null && finder.seriesIndex === series[i].seriesIndex || finder.seriesId != null && finder.seriesId === series[i].id; + if (found) { + return i; + } + } + } + function transitionSeriesFromOpt(transitionOpt, globalStore, params, api) { + var from = []; + var to = []; + each(normalizeToArray(transitionOpt.from), function (finder) { + var idx = querySeries(globalStore.oldSeries, finder); + if (idx >= 0) { + from.push({ + dataGroupId: globalStore.oldDataGroupIds[idx], + data: globalStore.oldData[idx], + // TODO can specify divideShape in transition. + divide: getDivideShapeFromData(globalStore.oldData[idx]), + groupIdDim: finder.dimension + }); + } + }); + each(normalizeToArray(transitionOpt.to), function (finder) { + var idx = querySeries(params.updatedSeries, finder); + if (idx >= 0) { + var data = params.updatedSeries[idx].getData(); + to.push({ + dataGroupId: globalStore.oldDataGroupIds[idx], + data: data, + divide: getDivideShapeFromData(data), + groupIdDim: finder.dimension + }); + } + }); + if (from.length > 0 && to.length > 0) { + transitionBetween(from, to, api); + } + } + function installUniversalTransition(registers) { + registers.registerUpdateLifecycle('series:beforeupdate', function (ecMOdel, api, params) { + each(normalizeToArray(params.seriesTransition), function (transOpt) { + each(normalizeToArray(transOpt.to), function (finder) { + var series = params.updatedSeries; + for (var i = 0; i < series.length; i++) { + if (finder.seriesIndex != null && finder.seriesIndex === series[i].seriesIndex || finder.seriesId != null && finder.seriesId === series[i].id) { + series[i][SERIES_UNIVERSAL_TRANSITION_PROP] = true; + } + } + }); + }); + }); + registers.registerUpdateLifecycle('series:transition', function (ecModel, api, params) { + // TODO api provide an namespace that can save stuff per instance + var globalStore = getUniversalTransitionGlobalStore(api); + // TODO multiple to multiple series. + if (globalStore.oldSeries && params.updatedSeries && params.optionChanged) { + // TODO transitionOpt was used in an old implementation and can be removed now + // Use give transition config if its' give; + var transitionOpt = params.seriesTransition; + if (transitionOpt) { + each(normalizeToArray(transitionOpt), function (opt) { + transitionSeriesFromOpt(opt, globalStore, params, api); + }); + } else { + // Else guess from series based on transition series key. + var updateBatches_1 = findTransitionSeriesBatches(globalStore, params); + each(updateBatches_1.keys(), function (key) { + var batch = updateBatches_1.get(key); + transitionBetween(batch.oldSeries, batch.newSeries, api); + }); + } + // Reset + each(params.updatedSeries, function (series) { + // Reset; + if (series[SERIES_UNIVERSAL_TRANSITION_PROP]) { + series[SERIES_UNIVERSAL_TRANSITION_PROP] = false; + } + }); + } + // Save all series of current update. Not only the updated one. + var allSeries = ecModel.getSeries(); + var savedSeries = globalStore.oldSeries = []; + var savedDataGroupIds = globalStore.oldDataGroupIds = []; + var savedData = globalStore.oldData = []; + for (var i = 0; i < allSeries.length; i++) { + var data = allSeries[i].getData(); + // Only save the data that can have transition. + // Avoid large data costing too much extra memory + if (data.count() < DATA_COUNT_THRESHOLD) { + savedSeries.push(allSeries[i]); + savedDataGroupIds.push(allSeries[i].get('dataGroupId')); + savedData.push(data); + } + } + }); + } + + // ----------------- + // Render engines + // ----------------- + // Render via Canvas. + // echarts.init(dom, null, { renderer: 'canvas' }) + use([install$1]); + // Render via SVG. + // echarts.init(dom, null, { renderer: 'svg' }) + use([install]); + // ---------------- + // Charts (series) + // ---------------- + // All of the series types, for example: + // chart.setOption({ + // series: [{ + // type: 'line' // or 'bar', 'pie', ... + // }] + // }); + use([install$2, install$3, install$4, install$6, install$8, install$a, install$b, install$c, install$d, install$e, install$f, install$h, install$i, install$j, install$k, install$l, install$m, install$n, install$o, install$p, install$q, install$r]); + // ------------------- + // Coordinate systems + // ------------------- + // All of the axis modules have been included in the + // coordinate system module below, do not need to + // make extra import. + // `cartesian` coordinate system. For some historical + // reasons, it is named as grid, for example: + // chart.setOption({ + // grid: {...}, + // xAxis: {...}, + // yAxis: {...}, + // series: [{...}] + // }); + use(install$t); + // `polar` coordinate system, for example: + // chart.setOption({ + // polar: {...}, + // radiusAxis: {...}, + // angleAxis: {...}, + // series: [{ + // coordinateSystem: 'polar' + // }] + // }); + use(install$u); + // `geo` coordinate system, for example: + // chart.setOption({ + // geo: {...}, + // series: [{ + // coordinateSystem: 'geo' + // }] + // }); + use(install$9); + // `singleAxis` coordinate system (notice, it is a coordinate system + // with only one axis, work for chart like theme river), for example: + // chart.setOption({ + // singleAxis: {...} + // series: [{type: 'themeRiver', ...}] + // }); + use(install$v); + // `parallel` coordinate system, only work for parallel series, for example: + // chart.setOption({ + // parallel: {...}, + // parallelAxis: [{...}, ...], + // series: [{ + // type: 'parallel' + // }] + // }); + use(install$g); + // `calendar` coordinate system. for example, + // chart.setOption({ + // calendar: {...}, + // series: [{ + // coordinateSystem: 'calendar' + // }] + // ); + use(install$w); + // ------------------ + // Other components + // ------------------ + // `graphic` component, for example: + // chart.setOption({ + // graphic: {...} + // }); + use(install$x); + // `toolbox` component, for example: + // chart.setOption({ + // toolbox: {...} + // }); + use(install$z); + // `tooltip` component, for example: + // chart.setOption({ + // tooltip: {...} + // }); + use(install$A); + // `axisPointer` component, for example: + // chart.setOption({ + // tooltip: {axisPointer: {...}, ...} + // }); + // Or + // chart.setOption({ + // axisPointer: {...} + // }); + use(install$s); + // `brush` component, for example: + // chart.setOption({ + // brush: {...} + // }); + // Or + // chart.setOption({ + // tooltip: {feature: {brush: {...}} + // }) + use(install$B); + // `title` component, for example: + // chart.setOption({ + // title: {...} + // }); + use(install$C); + // `timeline` component, for example: + // chart.setOption({ + // timeline: {...} + // }); + use(install$D); + // `markPoint` component, for example: + // chart.setOption({ + // series: [{markPoint: {...}}] + // }); + use(install$E); + // `markLine` component, for example: + // chart.setOption({ + // series: [{markLine: {...}}] + // }); + use(install$F); + // `markArea` component, for example: + // chart.setOption({ + // series: [{markArea: {...}}] + // }); + use(install$G); + // `legend` component not scrollable. for example: + // chart.setOption({ + // legend: {...} + // }); + use(install$J); + // `dataZoom` component including both `dataZoomInside` and `dataZoomSlider`. + use(install$M); + // `dataZoom` component providing drag, pinch, wheel behaviors + // inside coordinate system, for example: + // chart.setOption({ + // dataZoom: {type: 'inside'} + // }); + use(install$K); + // `dataZoom` component providing a slider bar, for example: + // chart.setOption({ + // dataZoom: {type: 'slider'} + // }); + use(install$L); + // `visualMap` component including both `visualMapContinuous` and `visualMapPiecewise`. + use(install$P); + // `visualMap` component providing continuous bar, for example: + // chart.setOption({ + // visualMap: {type: 'continuous'} + // }); + use(install$N); + // `visualMap` component providing pieces bar, for example: + // chart.setOption({ + // visualMap: {type: 'piecewise'} + // }); + use(install$O); + // `aria` component providing aria, for example: + // chart.setOption({ + // aria: {...} + // }); + use(install$Q); + // dataset transform + // chart.setOption({ + // dataset: { + // transform: [] + // } + // }); + use(install$R); + use(install$S); + // universal transition + // chart.setOption({ + // series: { + // universalTransition: { enabled: true } + // } + // }) + use(installUniversalTransition); + // label layout + // chart.setOption({ + // series: { + // labelLayout: { hideOverlap: true } + // } + // }) + use(installLabelLayout); + + exports.Axis = Axis; + exports.ChartView = ChartView; + exports.ComponentModel = ComponentModel; + exports.ComponentView = ComponentView; + exports.List = SeriesData; + exports.Model = Model; + exports.PRIORITY = PRIORITY; + exports.SeriesModel = SeriesModel; + exports.color = color; + exports.connect = connect; + exports.dataTool = dataTool; + exports.dependencies = dependencies; + exports.disConnect = disConnect; + exports.disconnect = disconnect; + exports.dispose = dispose$1; + exports.env = env; + exports.extendChartView = extendChartView; + exports.extendComponentModel = extendComponentModel; + exports.extendComponentView = extendComponentView; + exports.extendSeriesModel = extendSeriesModel; + exports.format = format$1; + exports.getCoordinateSystemDimensions = getCoordinateSystemDimensions; + exports.getInstanceByDom = getInstanceByDom; + exports.getInstanceById = getInstanceById; + exports.getMap = getMap; + exports.graphic = graphic$1; + exports.helper = helper; + exports.init = init$1; + exports.innerDrawElementOnCanvas = brushSingle; + exports.matrix = matrix; + exports.number = number; + exports.parseGeoJSON = parseGeoJSON; + exports.parseGeoJson = parseGeoJSON; + exports.registerAction = registerAction; + exports.registerCoordinateSystem = registerCoordinateSystem; + exports.registerLayout = registerLayout; + exports.registerLoading = registerLoading; + exports.registerLocale = registerLocale; + exports.registerMap = registerMap; + exports.registerPostInit = registerPostInit; + exports.registerPostUpdate = registerPostUpdate; + exports.registerPreprocessor = registerPreprocessor; + exports.registerProcessor = registerProcessor; + exports.registerTheme = registerTheme; + exports.registerTransform = registerTransform; + exports.registerUpdateLifecycle = registerUpdateLifecycle; + exports.registerVisual = registerVisual; + exports.setCanvasCreator = setCanvasCreator; + exports.setPlatformAPI = setPlatformAPI; + exports.throttle = throttle; + exports.time = time; + exports.use = use; + exports.util = util$1; + exports.vector = vector; + exports.version = version$1; + exports.zrUtil = util; + exports.zrender = zrender; + + Object.defineProperty(exports, '__esModule', { value: true }); + +}))); +//# sourceMappingURL=echarts.js.map diff --git a/src/assets/echarts.min.js b/src/assets/echarts.min.js new file mode 100644 index 0000000..80094ac --- /dev/null +++ b/src/assets/echarts.min.js @@ -0,0 +1,45 @@ + +/* +* Licensed to the Apache Software Foundation (ASF) under one +* or more contributor license agreements. See the NOTICE file +* distributed with this work for additional information +* regarding copyright ownership. The ASF licenses this file +* to you under the Apache License, Version 2.0 (the +* "License"); you may not use this file except in compliance +* with the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. See the License for the +* specific language governing permissions and limitations +* under the License. +*/ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).echarts={})}(this,(function(t){"use strict"; +/*! ***************************************************************************** + 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 e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])})(t,n)};function n(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}var i=function(){this.firefox=!1,this.ie=!1,this.edge=!1,this.newEdge=!1,this.weChat=!1},r=new function(){this.browser=new i,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="undefined"!=typeof window};"object"==typeof wx&&"function"==typeof wx.getSystemInfoSync?(r.wxa=!0,r.touchEventsSupported=!0):"undefined"==typeof document&&"undefined"!=typeof self?r.worker=!0:"undefined"==typeof navigator?(r.node=!0,r.svgSupported=!0):function(t,e){var n=e.browser,i=t.match(/Firefox\/([\d.]+)/),r=t.match(/MSIE\s([\d.]+)/)||t.match(/Trident\/.+?rv:(([\d.]+))/),o=t.match(/Edge?\/([\d.]+)/),a=/micromessenger/i.test(t);i&&(n.firefox=!0,n.version=i[1]);r&&(n.ie=!0,n.version=r[1]);o&&(n.edge=!0,n.version=o[1],n.newEdge=+o[1].split(".")[0]>18);a&&(n.weChat=!0);e.svgSupported="undefined"!=typeof SVGRect,e.touchEventsSupported="ontouchstart"in window&&!n.ie&&!n.edge,e.pointerEventsSupported="onpointerdown"in window&&(n.edge||n.ie&&+n.version>=11),e.domSupported="undefined"!=typeof document;var s=document.documentElement.style;e.transform3dSupported=(n.ie&&"transition"in s||n.edge||"WebKitCSSMatrix"in window&&"m11"in new WebKitCSSMatrix||"MozPerspective"in s)&&!("OTransition"in s),e.transformSupported=e.transform3dSupported||n.ie&&+n.version>=9}(navigator.userAgent,r);var o="sans-serif",a="12px sans-serif";var s,l,u=function(t){var e={};if("undefined"==typeof JSON)return e;for(var n=0;n<t.length;n++){var i=String.fromCharCode(n+32),r=(t.charCodeAt(n)-20)/100;e[i]=r}return e}("007LLmW'55;N0500LLLLLLLLLL00NNNLzWW\\\\WQb\\0FWLg\\bWb\\WQ\\WrWWQ000CL5LLFLL0LL**F*gLLLL5F0LF\\FFF5.5N"),h={createCanvas:function(){return"undefined"!=typeof document&&document.createElement("canvas")},measureText:function(t,e){if(!s){var n=h.createCanvas();s=n&&n.getContext("2d")}if(s)return l!==e&&(l=s.font=e||a),s.measureText(t);t=t||"";var i=/^([0-9]*?)px$/.exec(e=e||a),r=+(i&&i[1])||12,o=0;if(e.indexOf("mono")>=0)o=r*t.length;else for(var c=0;c<t.length;c++){var p=u[t[c]];o+=null==p?r:p*r}return{width:o}},loadImage:function(t,e,n){var i=new Image;return i.onload=e,i.onerror=n,i.src=t,i}};function c(t){for(var e in h)t[e]&&(h[e]=t[e])}var p=V(["Function","RegExp","Date","Error","CanvasGradient","CanvasPattern","Image","Canvas"],(function(t,e){return t["[object "+e+"]"]=!0,t}),{}),d=V(["Int8","Uint8","Uint8Clamped","Int16","Uint16","Int32","Uint32","Float32","Float64"],(function(t,e){return t["[object "+e+"Array]"]=!0,t}),{}),f=Object.prototype.toString,g=Array.prototype,y=g.forEach,v=g.filter,m=g.slice,x=g.map,_=function(){}.constructor,b=_?_.prototype:null,w="__proto__",S=2311;function M(){return S++}function I(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];"undefined"!=typeof console&&console.error.apply(console,t)}function T(t){if(null==t||"object"!=typeof t)return t;var e=t,n=f.call(t);if("[object Array]"===n){if(!pt(t)){e=[];for(var i=0,r=t.length;i<r;i++)e[i]=T(t[i])}}else if(d[n]){if(!pt(t)){var o=t.constructor;if(o.from)e=o.from(t);else{e=new o(t.length);for(i=0,r=t.length;i<r;i++)e[i]=t[i]}}}else if(!p[n]&&!pt(t)&&!J(t))for(var a in e={},t)t.hasOwnProperty(a)&&a!==w&&(e[a]=T(t[a]));return e}function C(t,e,n){if(!q(e)||!q(t))return n?T(e):t;for(var i in e)if(e.hasOwnProperty(i)&&i!==w){var r=t[i],o=e[i];!q(o)||!q(r)||Y(o)||Y(r)||J(o)||J(r)||K(o)||K(r)||pt(o)||pt(r)?!n&&i in t||(t[i]=T(e[i])):C(r,o,n)}return t}function D(t,e){for(var n=t[0],i=1,r=t.length;i<r;i++)n=C(n,t[i],e);return n}function A(t,e){if(Object.assign)Object.assign(t,e);else for(var n in e)e.hasOwnProperty(n)&&n!==w&&(t[n]=e[n]);return t}function k(t,e,n){for(var i=G(e),r=0;r<i.length;r++){var o=i[r];(n?null!=e[o]:null==t[o])&&(t[o]=e[o])}return t}var L=h.createCanvas;function P(t,e){if(t){if(t.indexOf)return t.indexOf(e);for(var n=0,i=t.length;n<i;n++)if(t[n]===e)return n}return-1}function O(t,e){var n=t.prototype;function i(){}for(var r in i.prototype=e.prototype,t.prototype=new i,n)n.hasOwnProperty(r)&&(t.prototype[r]=n[r]);t.prototype.constructor=t,t.superClass=e}function R(t,e,n){if(t="prototype"in t?t.prototype:t,e="prototype"in e?e.prototype:e,Object.getOwnPropertyNames)for(var i=Object.getOwnPropertyNames(e),r=0;r<i.length;r++){var o=i[r];"constructor"!==o&&(n?null!=e[o]:null==t[o])&&(t[o]=e[o])}else k(t,e,n)}function N(t){return!!t&&("string"!=typeof t&&"number"==typeof t.length)}function E(t,e,n){if(t&&e)if(t.forEach&&t.forEach===y)t.forEach(e,n);else if(t.length===+t.length)for(var i=0,r=t.length;i<r;i++)e.call(n,t[i],i,t);else for(var o in t)t.hasOwnProperty(o)&&e.call(n,t[o],o,t)}function z(t,e,n){if(!t)return[];if(!e)return at(t);if(t.map&&t.map===x)return t.map(e,n);for(var i=[],r=0,o=t.length;r<o;r++)i.push(e.call(n,t[r],r,t));return i}function V(t,e,n,i){if(t&&e){for(var r=0,o=t.length;r<o;r++)n=e.call(i,n,t[r],r,t);return n}}function B(t,e,n){if(!t)return[];if(!e)return at(t);if(t.filter&&t.filter===v)return t.filter(e,n);for(var i=[],r=0,o=t.length;r<o;r++)e.call(n,t[r],r,t)&&i.push(t[r]);return i}function F(t,e,n){if(t&&e)for(var i=0,r=t.length;i<r;i++)if(e.call(n,t[i],i,t))return t[i]}function G(t){if(!t)return[];if(Object.keys)return Object.keys(t);var e=[];for(var n in t)t.hasOwnProperty(n)&&e.push(n);return e}var W=b&&U(b.bind)?b.call.bind(b.bind):function(t,e){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];return function(){return t.apply(e,n.concat(m.call(arguments)))}};function H(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];return function(){return t.apply(this,e.concat(m.call(arguments)))}}function Y(t){return Array.isArray?Array.isArray(t):"[object Array]"===f.call(t)}function U(t){return"function"==typeof t}function X(t){return"string"==typeof t}function Z(t){return"[object String]"===f.call(t)}function j(t){return"number"==typeof t}function q(t){var e=typeof t;return"function"===e||!!t&&"object"===e}function K(t){return!!p[f.call(t)]}function $(t){return!!d[f.call(t)]}function J(t){return"object"==typeof t&&"number"==typeof t.nodeType&&"object"==typeof t.ownerDocument}function Q(t){return null!=t.colorStops}function tt(t){return null!=t.image}function et(t){return"[object RegExp]"===f.call(t)}function nt(t){return t!=t}function it(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];for(var n=0,i=t.length;n<i;n++)if(null!=t[n])return t[n]}function rt(t,e){return null!=t?t:e}function ot(t,e,n){return null!=t?t:null!=e?e:n}function at(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];return m.apply(t,e)}function st(t){if("number"==typeof t)return[t,t,t,t];var e=t.length;return 2===e?[t[0],t[1],t[0],t[1]]:3===e?[t[0],t[1],t[2],t[1]]:t}function lt(t,e){if(!t)throw new Error(e)}function ut(t){return null==t?null:"function"==typeof t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")}var ht="__ec_primitive__";function ct(t){t[ht]=!0}function pt(t){return t[ht]}var dt=function(){function t(e){this.data={};var n=Y(e);this.data={};var i=this;function r(t,e){n?i.set(t,e):i.set(e,t)}e instanceof t?e.each(r):e&&E(e,r)}return t.prototype.get=function(t){return this.data.hasOwnProperty(t)?this.data[t]:null},t.prototype.set=function(t,e){return this.data[t]=e},t.prototype.each=function(t,e){for(var n in this.data)this.data.hasOwnProperty(n)&&t.call(e,this.data[n],n)},t.prototype.keys=function(){return G(this.data)},t.prototype.removeKey=function(t){delete this.data[t]},t}();function ft(t){return new dt(t)}function gt(t,e){for(var n=new t.constructor(t.length+e.length),i=0;i<t.length;i++)n[i]=t[i];var r=t.length;for(i=0;i<e.length;i++)n[i+r]=e[i];return n}function yt(t,e){var n;if(Object.create)n=Object.create(t);else{var i=function(){};i.prototype=t,n=new i}return e&&A(n,e),n}function vt(t){var e=t.style;e.webkitUserSelect="none",e.userSelect="none",e.webkitTapHighlightColor="rgba(0,0,0,0)",e["-webkit-touch-callout"]="none"}function mt(t,e){return t.hasOwnProperty(e)}function xt(){}var _t=180/Math.PI,bt=Object.freeze({__proto__:null,guid:M,logError:I,clone:T,merge:C,mergeAll:D,extend:A,defaults:k,createCanvas:L,indexOf:P,inherits:O,mixin:R,isArrayLike:N,each:E,map:z,reduce:V,filter:B,find:F,keys:G,bind:W,curry:H,isArray:Y,isFunction:U,isString:X,isStringSafe:Z,isNumber:j,isObject:q,isBuiltInObject:K,isTypedArray:$,isDom:J,isGradientObject:Q,isImagePatternObject:tt,isRegExp:et,eqNaN:nt,retrieve:it,retrieve2:rt,retrieve3:ot,slice:at,normalizeCssArray:st,assert:lt,trim:ut,setAsPrimitive:ct,isPrimitive:pt,HashMap:dt,createHashMap:ft,concatArray:gt,createObject:yt,disableUserSelect:vt,hasOwn:mt,noop:xt,RADIAN_TO_DEGREE:_t});function wt(t,e){return null==t&&(t=0),null==e&&(e=0),[t,e]}function St(t,e){return t[0]=e[0],t[1]=e[1],t}function Mt(t){return[t[0],t[1]]}function It(t,e,n){return t[0]=e,t[1]=n,t}function Tt(t,e,n){return t[0]=e[0]+n[0],t[1]=e[1]+n[1],t}function Ct(t,e,n,i){return t[0]=e[0]+n[0]*i,t[1]=e[1]+n[1]*i,t}function Dt(t,e,n){return t[0]=e[0]-n[0],t[1]=e[1]-n[1],t}function At(t){return Math.sqrt(Lt(t))}var kt=At;function Lt(t){return t[0]*t[0]+t[1]*t[1]}var Pt=Lt;function Ot(t,e,n){return t[0]=e[0]*n,t[1]=e[1]*n,t}function Rt(t,e){var n=At(e);return 0===n?(t[0]=0,t[1]=0):(t[0]=e[0]/n,t[1]=e[1]/n),t}function Nt(t,e){return Math.sqrt((t[0]-e[0])*(t[0]-e[0])+(t[1]-e[1])*(t[1]-e[1]))}var Et=Nt;function zt(t,e){return(t[0]-e[0])*(t[0]-e[0])+(t[1]-e[1])*(t[1]-e[1])}var Vt=zt;function Bt(t,e,n,i){return t[0]=e[0]+i*(n[0]-e[0]),t[1]=e[1]+i*(n[1]-e[1]),t}function Ft(t,e,n){var i=e[0],r=e[1];return t[0]=n[0]*i+n[2]*r+n[4],t[1]=n[1]*i+n[3]*r+n[5],t}function Gt(t,e,n){return t[0]=Math.min(e[0],n[0]),t[1]=Math.min(e[1],n[1]),t}function Wt(t,e,n){return t[0]=Math.max(e[0],n[0]),t[1]=Math.max(e[1],n[1]),t}var Ht=Object.freeze({__proto__:null,create:wt,copy:St,clone:Mt,set:It,add:Tt,scaleAndAdd:Ct,sub:Dt,len:At,length:kt,lenSquare:Lt,lengthSquare:Pt,mul:function(t,e,n){return t[0]=e[0]*n[0],t[1]=e[1]*n[1],t},div:function(t,e,n){return t[0]=e[0]/n[0],t[1]=e[1]/n[1],t},dot:function(t,e){return t[0]*e[0]+t[1]*e[1]},scale:Ot,normalize:Rt,distance:Nt,dist:Et,distanceSquare:zt,distSquare:Vt,negate:function(t,e){return t[0]=-e[0],t[1]=-e[1],t},lerp:Bt,applyTransform:Ft,min:Gt,max:Wt}),Yt=function(t,e){this.target=t,this.topTarget=e&&e.topTarget},Ut=function(){function t(t){this.handler=t,t.on("mousedown",this._dragStart,this),t.on("mousemove",this._drag,this),t.on("mouseup",this._dragEnd,this)}return t.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 Yt(e,t),"dragstart",t.event))},t.prototype._drag=function(t){var e=this._draggingTarget;if(e){var n=t.offsetX,i=t.offsetY,r=n-this._x,o=i-this._y;this._x=n,this._y=i,e.drift(r,o,t),this.handler.dispatchToElement(new Yt(e,t),"drag",t.event);var a=this.handler.findHover(n,i,e).target,s=this._dropTarget;this._dropTarget=a,e!==a&&(s&&a!==s&&this.handler.dispatchToElement(new Yt(s,t),"dragleave",t.event),a&&a!==s&&this.handler.dispatchToElement(new Yt(a,t),"dragenter",t.event))}},t.prototype._dragEnd=function(t){var e=this._draggingTarget;e&&(e.dragging=!1),this.handler.dispatchToElement(new Yt(e,t),"dragend",t.event),this._dropTarget&&this.handler.dispatchToElement(new Yt(this._dropTarget,t),"drop",t.event),this._draggingTarget=null,this._dropTarget=null},t}(),Xt=function(){function t(t){t&&(this._$eventProcessor=t)}return t.prototype.on=function(t,e,n,i){this._$handlers||(this._$handlers={});var r=this._$handlers;if("function"==typeof e&&(i=n,n=e,e=null),!n||!t)return this;var o=this._$eventProcessor;null!=e&&o&&o.normalizeQuery&&(e=o.normalizeQuery(e)),r[t]||(r[t]=[]);for(var a=0;a<r[t].length;a++)if(r[t][a].h===n)return this;var s={h:n,query:e,ctx:i||this,callAtLast:n.zrEventfulCallAtLast},l=r[t].length-1,u=r[t][l];return u&&u.callAtLast?r[t].splice(l,0,s):r[t].push(s),this},t.prototype.isSilent=function(t){var e=this._$handlers;return!e||!e[t]||!e[t].length},t.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=[],r=0,o=n[t].length;r<o;r++)n[t][r].h!==e&&i.push(n[t][r]);n[t]=i}n[t]&&0===n[t].length&&delete n[t]}else delete n[t];return this},t.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],r=this._$eventProcessor;if(i)for(var o=e.length,a=i.length,s=0;s<a;s++){var l=i[s];if(!r||!r.filter||null==l.query||r.filter(t,l.query))switch(o){case 0:l.h.call(l.ctx);break;case 1:l.h.call(l.ctx,e[0]);break;case 2:l.h.call(l.ctx,e[0],e[1]);break;default:l.h.apply(l.ctx,e)}}return r&&r.afterTrigger&&r.afterTrigger(t),this},t.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],r=this._$eventProcessor;if(i)for(var o=e.length,a=e[o-1],s=i.length,l=0;l<s;l++){var u=i[l];if(!r||!r.filter||null==u.query||r.filter(t,u.query))switch(o){case 0:u.h.call(a);break;case 1:u.h.call(a,e[0]);break;case 2:u.h.call(a,e[0],e[1]);break;default:u.h.apply(a,e.slice(1,o-1))}}return r&&r.afterTrigger&&r.afterTrigger(t),this},t}(),Zt=Math.log(2);function jt(t,e,n,i,r,o){var a=i+"-"+r,s=t.length;if(o.hasOwnProperty(a))return o[a];if(1===e){var l=Math.round(Math.log((1<<s)-1&~r)/Zt);return t[n][l]}for(var u=i|1<<n,h=n+1;i&1<<h;)h++;for(var c=0,p=0,d=0;p<s;p++){var f=1<<p;f&r||(c+=(d%2?-1:1)*t[n][p]*jt(t,e-1,h,u,r|f,o),d++)}return o[a]=c,c}function qt(t,e){var n=[[t[0],t[1],1,0,0,0,-e[0]*t[0],-e[0]*t[1]],[0,0,0,t[0],t[1],1,-e[1]*t[0],-e[1]*t[1]],[t[2],t[3],1,0,0,0,-e[2]*t[2],-e[2]*t[3]],[0,0,0,t[2],t[3],1,-e[3]*t[2],-e[3]*t[3]],[t[4],t[5],1,0,0,0,-e[4]*t[4],-e[4]*t[5]],[0,0,0,t[4],t[5],1,-e[5]*t[4],-e[5]*t[5]],[t[6],t[7],1,0,0,0,-e[6]*t[6],-e[6]*t[7]],[0,0,0,t[6],t[7],1,-e[7]*t[6],-e[7]*t[7]]],i={},r=jt(n,8,0,0,0,i);if(0!==r){for(var o=[],a=0;a<8;a++)for(var s=0;s<8;s++)null==o[s]&&(o[s]=0),o[s]+=((a+s)%2?-1:1)*jt(n,7,0===a?1:0,1<<a,1<<s,i)/r*e[a];return function(t,e,n){var i=e*o[6]+n*o[7]+1;t[0]=(e*o[0]+n*o[1]+o[2])/i,t[1]=(e*o[3]+n*o[4]+o[5])/i}}}var Kt=[];function $t(t,e,n,i,o){if(e.getBoundingClientRect&&r.domSupported&&!Jt(e)){var a=e.___zrEVENTSAVED||(e.___zrEVENTSAVED={}),s=function(t,e,n){for(var i=n?"invTrans":"trans",r=e[i],o=e.srcCoords,a=[],s=[],l=!0,u=0;u<4;u++){var h=t[u].getBoundingClientRect(),c=2*u,p=h.left,d=h.top;a.push(p,d),l=l&&o&&p===o[c]&&d===o[c+1],s.push(t[u].offsetLeft,t[u].offsetTop)}return l&&r?r:(e.srcCoords=a,e[i]=n?qt(s,a):qt(a,s))}(function(t,e){var n=e.markers;if(n)return n;n=e.markers=[];for(var i=["left","right"],r=["top","bottom"],o=0;o<4;o++){var a=document.createElement("div"),s=o%2,l=(o>>1)%2;a.style.cssText=["position: absolute","visibility: hidden","padding: 0","margin: 0","border-width: 0","user-select: none","width:0","height:0",i[s]+":0",r[l]+":0",i[1-s]+":auto",r[1-l]+":auto",""].join("!important;"),t.appendChild(a),n.push(a)}return n}(e,a),a,o);if(s)return s(t,n,i),!0}return!1}function Jt(t){return"CANVAS"===t.nodeName.toUpperCase()}var Qt=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,te=[],ee=r.browser.firefox&&+r.browser.version.split(".")[0]<39;function ne(t,e,n,i){return n=n||{},i?ie(t,e,n):ee&&null!=e.layerX&&e.layerX!==e.offsetX?(n.zrX=e.layerX,n.zrY=e.layerY):null!=e.offsetX?(n.zrX=e.offsetX,n.zrY=e.offsetY):ie(t,e,n),n}function ie(t,e,n){if(r.domSupported&&t.getBoundingClientRect){var i=e.clientX,o=e.clientY;if(Jt(t)){var a=t.getBoundingClientRect();return n.zrX=i-a.left,void(n.zrY=o-a.top)}if($t(te,t,i,o))return n.zrX=te[0],void(n.zrY=te[1])}n.zrX=n.zrY=0}function re(t){return t||window.event}function oe(t,e,n){if(null!=(e=re(e)).zrX)return e;var i=e.type;if(i&&i.indexOf("touch")>=0){var r="touchend"!==i?e.targetTouches[0]:e.changedTouches[0];r&&ne(t,r,e,n)}else{ne(t,e,e,n);var o=function(t){var e=t.wheelDelta;if(e)return e;var n=t.deltaX,i=t.deltaY;if(null==n||null==i)return e;return 3*(0!==i?Math.abs(i):Math.abs(n))*(i>0?-1:i<0?1:n>0?-1:1)}(e);e.zrDelta=o?o/120:-(e.detail||0)/3}var a=e.button;return null==e.which&&void 0!==a&&Qt.test(e.type)&&(e.which=1&a?1:2&a?3:4&a?2:0),e}function ae(t,e,n,i){t.addEventListener(e,n,i)}var se=function(t){t.preventDefault(),t.stopPropagation(),t.cancelBubble=!0};function le(t){return 2===t.which||3===t.which}var ue=function(){function t(){this._track=[]}return t.prototype.recognize=function(t,e,n){return this._doTrack(t,e,n),this._recognize(t)},t.prototype.clear=function(){return this._track.length=0,this},t.prototype._doTrack=function(t,e,n){var i=t.touches;if(i){for(var r={points:[],touches:[],target:e,event:t},o=0,a=i.length;o<a;o++){var s=i[o],l=ne(n,s,{});r.points.push([l.zrX,l.zrY]),r.touches.push(s)}this._track.push(r)}},t.prototype._recognize=function(t){for(var e in ce)if(ce.hasOwnProperty(e)){var n=ce[e](this._track,t);if(n)return n}},t}();function he(t){var e=t[1][0]-t[0][0],n=t[1][1]-t[0][1];return Math.sqrt(e*e+n*n)}var ce={pinch:function(t,e){var n=t.length;if(n){var i,r=(t[n-1]||{}).points,o=(t[n-2]||{}).points||r;if(o&&o.length>1&&r&&r.length>1){var a=he(r)/he(o);!isFinite(a)&&(a=1),e.pinchScale=a;var s=[((i=r)[0][0]+i[1][0])/2,(i[0][1]+i[1][1])/2];return e.pinchX=s[0],e.pinchY=s[1],{type:"pinch",target:t[0].target,event:e}}}}},pe="silent";function de(){se(this.event)}var fe=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.handler=null,e}return n(e,t),e.prototype.dispose=function(){},e.prototype.setCursor=function(){},e}(Xt),ge=function(t,e){this.x=t,this.y=e},ye=["click","dblclick","mousewheel","mouseout","mouseup","mousedown","mousemove","contextmenu"],ve=function(t){function e(e,n,i,r){var o=t.call(this)||this;return o._hovered=new ge(0,0),o.storage=e,o.painter=n,o.painterRoot=r,i=i||new fe,o.proxy=null,o.setHandlerProxy(i),o._draggingMgr=new Ut(o),o}return n(e,t),e.prototype.setHandlerProxy=function(t){this.proxy&&this.proxy.dispose(),t&&(E(ye,(function(e){t.on&&t.on(e,this[e],this)}),this),t.handler=this),this.proxy=t},e.prototype.mousemove=function(t){var e=t.zrX,n=t.zrY,i=xe(this,e,n),r=this._hovered,o=r.target;o&&!o.__zr&&(o=(r=this.findHover(r.x,r.y)).target);var a=this._hovered=i?new ge(e,n):this.findHover(e,n),s=a.target,l=this.proxy;l.setCursor&&l.setCursor(s?s.cursor:"default"),o&&s!==o&&this.dispatchToElement(r,"mouseout",t),this.dispatchToElement(a,"mousemove",t),s&&s!==o&&this.dispatchToElement(a,"mouseover",t)},e.prototype.mouseout=function(t){var e=t.zrEventControl;"only_globalout"!==e&&this.dispatchToElement(this._hovered,"mouseout",t),"no_globalout"!==e&&this.trigger("globalout",{type:"globalout",event:t})},e.prototype.resize=function(){this._hovered=new ge(0,0)},e.prototype.dispatch=function(t,e){var n=this[t];n&&n.call(this,e)},e.prototype.dispose=function(){this.proxy.dispose(),this.storage=null,this.proxy=null,this.painter=null},e.prototype.setCursorStyle=function(t){var e=this.proxy;e.setCursor&&e.setCursor(t)},e.prototype.dispatchToElement=function(t,e,n){var i=(t=t||{}).target;if(!i||!i.silent){for(var r="on"+e,o=function(t,e,n){return{type:t,event:n,target:e.target,topTarget:e.topTarget,cancelBubble:!1,offsetX:n.zrX,offsetY:n.zrY,gestureEvent:n.gestureEvent,pinchX:n.pinchX,pinchY:n.pinchY,pinchScale:n.pinchScale,wheelDelta:n.zrDelta,zrByTouch:n.zrByTouch,which:n.which,stop:de}}(e,t,n);i&&(i[r]&&(o.cancelBubble=!!i[r].call(i,o)),i.trigger(e,o),i=i.__hostTarget?i.__hostTarget:i.parent,!o.cancelBubble););o.cancelBubble||(this.trigger(e,o),this.painter&&this.painter.eachOtherLayer&&this.painter.eachOtherLayer((function(t){"function"==typeof t[r]&&t[r].call(t,o),t.trigger&&t.trigger(e,o)})))}},e.prototype.findHover=function(t,e,n){for(var i=this.storage.getDisplayList(),r=new ge(t,e),o=i.length-1;o>=0;o--){var a=void 0;if(i[o]!==n&&!i[o].ignore&&(a=me(i[o],t,e))&&(!r.topTarget&&(r.topTarget=i[o]),a!==pe)){r.target=i[o];break}}return r},e.prototype.processGesture=function(t,e){this._gestureMgr||(this._gestureMgr=new ue);var n=this._gestureMgr;"start"===e&&n.clear();var i=n.recognize(t,this.findHover(t.zrX,t.zrY,null).target,this.proxy.dom);if("end"===e&&n.clear(),i){var r=i.type;t.gestureEvent=r;var o=new ge;o.target=i.target,this.dispatchToElement(o,r,i.event)}},e}(Xt);function me(t,e,n){if(t[t.rectHover?"rectContain":"contain"](e,n)){for(var i=t,r=void 0,o=!1;i;){if(i.ignoreClip&&(o=!0),!o){var a=i.getClipPath();if(a&&!a.contain(e,n))return!1;i.silent&&(r=!0)}var s=i.__hostTarget;i=s||i.parent}return!r||pe}return!1}function xe(t,e,n){var i=t.painter;return e<0||e>i.getWidth()||n<0||n>i.getHeight()}E(["click","mousedown","mouseup","mousewheel","dblclick","contextmenu"],(function(t){ve.prototype[t]=function(e){var n,i,r=e.zrX,o=e.zrY,a=xe(this,r,o);if("mouseup"===t&&a||(i=(n=this.findHover(r,o)).target),"mousedown"===t)this._downEl=i,this._downPoint=[e.zrX,e.zrY],this._upEl=i;else if("mouseup"===t)this._upEl=i;else if("click"===t){if(this._downEl!==this._upEl||!this._downPoint||Et(this._downPoint,[e.zrX,e.zrY])>4)return;this._downPoint=null}this.dispatchToElement(n,t,e)}}));function _e(t,e,n,i){var r=e+1;if(r===n)return 1;if(i(t[r++],t[e])<0){for(;r<n&&i(t[r],t[r-1])<0;)r++;!function(t,e,n){n--;for(;e<n;){var i=t[e];t[e++]=t[n],t[n--]=i}}(t,e,r)}else for(;r<n&&i(t[r],t[r-1])>=0;)r++;return r-e}function be(t,e,n,i,r){for(i===e&&i++;i<n;i++){for(var o,a=t[i],s=e,l=i;s<l;)r(a,t[o=s+l>>>1])<0?l=o:s=o+1;var u=i-s;switch(u){case 3:t[s+3]=t[s+2];case 2:t[s+2]=t[s+1];case 1:t[s+1]=t[s];break;default:for(;u>0;)t[s+u]=t[s+u-1],u--}t[s]=a}}function we(t,e,n,i,r,o){var a=0,s=0,l=1;if(o(t,e[n+r])>0){for(s=i-r;l<s&&o(t,e[n+r+l])>0;)a=l,(l=1+(l<<1))<=0&&(l=s);l>s&&(l=s),a+=r,l+=r}else{for(s=r+1;l<s&&o(t,e[n+r-l])<=0;)a=l,(l=1+(l<<1))<=0&&(l=s);l>s&&(l=s);var u=a;a=r-l,l=r-u}for(a++;a<l;){var h=a+(l-a>>>1);o(t,e[n+h])>0?a=h+1:l=h}return l}function Se(t,e,n,i,r,o){var a=0,s=0,l=1;if(o(t,e[n+r])<0){for(s=r+1;l<s&&o(t,e[n+r-l])<0;)a=l,(l=1+(l<<1))<=0&&(l=s);l>s&&(l=s);var u=a;a=r-l,l=r-u}else{for(s=i-r;l<s&&o(t,e[n+r+l])>=0;)a=l,(l=1+(l<<1))<=0&&(l=s);l>s&&(l=s),a+=r,l+=r}for(a++;a<l;){var h=a+(l-a>>>1);o(t,e[n+h])<0?l=h:a=h+1}return l}function Me(t,e){var n,i,r=7,o=0;t.length;var a=[];function s(s){var l=n[s],u=i[s],h=n[s+1],c=i[s+1];i[s]=u+c,s===o-3&&(n[s+1]=n[s+2],i[s+1]=i[s+2]),o--;var p=Se(t[h],t,l,u,0,e);l+=p,0!==(u-=p)&&0!==(c=we(t[l+u-1],t,h,c,c-1,e))&&(u<=c?function(n,i,o,s){var l=0;for(l=0;l<i;l++)a[l]=t[n+l];var u=0,h=o,c=n;if(t[c++]=t[h++],0==--s){for(l=0;l<i;l++)t[c+l]=a[u+l];return}if(1===i){for(l=0;l<s;l++)t[c+l]=t[h+l];return void(t[c+s]=a[u])}var p,d,f,g=r;for(;;){p=0,d=0,f=!1;do{if(e(t[h],a[u])<0){if(t[c++]=t[h++],d++,p=0,0==--s){f=!0;break}}else if(t[c++]=a[u++],p++,d=0,1==--i){f=!0;break}}while((p|d)<g);if(f)break;do{if(0!==(p=Se(t[h],a,u,i,0,e))){for(l=0;l<p;l++)t[c+l]=a[u+l];if(c+=p,u+=p,(i-=p)<=1){f=!0;break}}if(t[c++]=t[h++],0==--s){f=!0;break}if(0!==(d=we(a[u],t,h,s,0,e))){for(l=0;l<d;l++)t[c+l]=t[h+l];if(c+=d,h+=d,0===(s-=d)){f=!0;break}}if(t[c++]=a[u++],1==--i){f=!0;break}g--}while(p>=7||d>=7);if(f)break;g<0&&(g=0),g+=2}if((r=g)<1&&(r=1),1===i){for(l=0;l<s;l++)t[c+l]=t[h+l];t[c+s]=a[u]}else{if(0===i)throw new Error;for(l=0;l<i;l++)t[c+l]=a[u+l]}}(l,u,h,c):function(n,i,o,s){var l=0;for(l=0;l<s;l++)a[l]=t[o+l];var u=n+i-1,h=s-1,c=o+s-1,p=0,d=0;if(t[c--]=t[u--],0==--i){for(p=c-(s-1),l=0;l<s;l++)t[p+l]=a[l];return}if(1===s){for(d=(c-=i)+1,p=(u-=i)+1,l=i-1;l>=0;l--)t[d+l]=t[p+l];return void(t[c]=a[h])}var f=r;for(;;){var g=0,y=0,v=!1;do{if(e(a[h],t[u])<0){if(t[c--]=t[u--],g++,y=0,0==--i){v=!0;break}}else if(t[c--]=a[h--],y++,g=0,1==--s){v=!0;break}}while((g|y)<f);if(v)break;do{if(0!==(g=i-Se(a[h],t,n,i,i-1,e))){for(i-=g,d=(c-=g)+1,p=(u-=g)+1,l=g-1;l>=0;l--)t[d+l]=t[p+l];if(0===i){v=!0;break}}if(t[c--]=a[h--],1==--s){v=!0;break}if(0!==(y=s-we(t[u],a,0,s,s-1,e))){for(s-=y,d=(c-=y)+1,p=(h-=y)+1,l=0;l<y;l++)t[d+l]=a[p+l];if(s<=1){v=!0;break}}if(t[c--]=t[u--],0==--i){v=!0;break}f--}while(g>=7||y>=7);if(v)break;f<0&&(f=0),f+=2}(r=f)<1&&(r=1);if(1===s){for(d=(c-=i)+1,p=(u-=i)+1,l=i-1;l>=0;l--)t[d+l]=t[p+l];t[c]=a[h]}else{if(0===s)throw new Error;for(p=c-(s-1),l=0;l<s;l++)t[p+l]=a[l]}}(l,u,h,c))}return n=[],i=[],{mergeRuns:function(){for(;o>1;){var t=o-2;if(t>=1&&i[t-1]<=i[t]+i[t+1]||t>=2&&i[t-2]<=i[t]+i[t-1])i[t-1]<i[t+1]&&t--;else if(i[t]>i[t+1])break;s(t)}},forceMergeRuns:function(){for(;o>1;){var t=o-2;t>0&&i[t-1]<i[t+1]&&t--,s(t)}},pushRun:function(t,e){n[o]=t,i[o]=e,o+=1}}}function Ie(t,e,n,i){n||(n=0),i||(i=t.length);var r=i-n;if(!(r<2)){var o=0;if(r<32)be(t,n,i,n+(o=_e(t,n,i,e)),e);else{var a=Me(t,e),s=function(t){for(var e=0;t>=32;)e|=1&t,t>>=1;return t+e}(r);do{if((o=_e(t,n,i,e))<s){var l=r;l>s&&(l=s),be(t,n,n+l,n+o,e),o=l}a.pushRun(n,o),a.mergeRuns(),r-=o,n+=o}while(0!==r);a.forceMergeRuns()}}}var Te=!1;function Ce(){Te||(Te=!0,console.warn("z / z2 / zlevel of displayable is invalid, which may cause unexpected errors"))}function De(t,e){return t.zlevel===e.zlevel?t.z===e.z?t.z2-e.z2:t.z-e.z:t.zlevel-e.zlevel}var Ae=function(){function t(){this._roots=[],this._displayList=[],this._displayListLen=0,this.displayableSortFunc=De}return t.prototype.traverse=function(t,e){for(var n=0;n<this._roots.length;n++)this._roots[n].traverse(t,e)},t.prototype.getDisplayList=function(t,e){e=e||!1;var n=this._displayList;return!t&&n.length||this.updateDisplayList(e),n},t.prototype.updateDisplayList=function(t){this._displayListLen=0;for(var e=this._roots,n=this._displayList,i=0,r=e.length;i<r;i++)this._updateAndAddDisplayable(e[i],null,t);n.length=this._displayListLen,Ie(n,De)},t.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():[];for(var r=i,o=t;r;)r.parent=o,r.updateTransform(),e.push(r),o=r,r=r.getClipPath()}if(t.childrenRef){for(var a=t.childrenRef(),s=0;s<a.length;s++){var l=a[s];t.__dirty&&(l.__dirty|=1),this._updateAndAddDisplayable(l,e,n)}t.__dirty=0}else{var u=t;e&&e.length?u.__clipPaths=e:u.__clipPaths&&u.__clipPaths.length>0&&(u.__clipPaths=[]),isNaN(u.z)&&(Ce(),u.z=0),isNaN(u.z2)&&(Ce(),u.z2=0),isNaN(u.zlevel)&&(Ce(),u.zlevel=0),this._displayList[this._displayListLen++]=u}var h=t.getDecalElement&&t.getDecalElement();h&&this._updateAndAddDisplayable(h,e,n);var c=t.getTextGuideLine();c&&this._updateAndAddDisplayable(c,e,n);var p=t.getTextContent();p&&this._updateAndAddDisplayable(p,e,n)}},t.prototype.addRoot=function(t){t.__zr&&t.__zr.storage===this||this._roots.push(t)},t.prototype.delRoot=function(t){if(t instanceof Array)for(var e=0,n=t.length;e<n;e++)this.delRoot(t[e]);else{var i=P(this._roots,t);i>=0&&this._roots.splice(i,1)}},t.prototype.delAllRoots=function(){this._roots=[],this._displayList=[],this._displayListLen=0},t.prototype.getRoots=function(){return this._roots},t.prototype.dispose=function(){this._displayList=null,this._roots=null},t}(),ke=r.hasGlobalWindow&&(window.requestAnimationFrame&&window.requestAnimationFrame.bind(window)||window.msRequestAnimationFrame&&window.msRequestAnimationFrame.bind(window)||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame)||function(t){return setTimeout(t,16)},Le={linear:function(t){return t},quadraticIn:function(t){return t*t},quadraticOut:function(t){return t*(2-t)},quadraticInOut:function(t){return(t*=2)<1?.5*t*t:-.5*(--t*(t-2)-1)},cubicIn:function(t){return t*t*t},cubicOut:function(t){return--t*t*t+1},cubicInOut:function(t){return(t*=2)<1?.5*t*t*t:.5*((t-=2)*t*t+2)},quarticIn:function(t){return t*t*t*t},quarticOut:function(t){return 1- --t*t*t*t},quarticInOut:function(t){return(t*=2)<1?.5*t*t*t*t:-.5*((t-=2)*t*t*t-2)},quinticIn:function(t){return t*t*t*t*t},quinticOut:function(t){return--t*t*t*t*t+1},quinticInOut:function(t){return(t*=2)<1?.5*t*t*t*t*t:.5*((t-=2)*t*t*t*t+2)},sinusoidalIn:function(t){return 1-Math.cos(t*Math.PI/2)},sinusoidalOut:function(t){return Math.sin(t*Math.PI/2)},sinusoidalInOut:function(t){return.5*(1-Math.cos(Math.PI*t))},exponentialIn:function(t){return 0===t?0:Math.pow(1024,t-1)},exponentialOut:function(t){return 1===t?1:1-Math.pow(2,-10*t)},exponentialInOut:function(t){return 0===t?0:1===t?1:(t*=2)<1?.5*Math.pow(1024,t-1):.5*(2-Math.pow(2,-10*(t-1)))},circularIn:function(t){return 1-Math.sqrt(1-t*t)},circularOut:function(t){return Math.sqrt(1- --t*t)},circularInOut:function(t){return(t*=2)<1?-.5*(Math.sqrt(1-t*t)-1):.5*(Math.sqrt(1-(t-=2)*t)+1)},elasticIn:function(t){var e,n=.1;return 0===t?0:1===t?1:(!n||n<1?(n=1,e=.1):e=.4*Math.asin(1/n)/(2*Math.PI),-n*Math.pow(2,10*(t-=1))*Math.sin((t-e)*(2*Math.PI)/.4))},elasticOut:function(t){var e,n=.1;return 0===t?0:1===t?1:(!n||n<1?(n=1,e=.1):e=.4*Math.asin(1/n)/(2*Math.PI),n*Math.pow(2,-10*t)*Math.sin((t-e)*(2*Math.PI)/.4)+1)},elasticInOut:function(t){var e,n=.1,i=.4;return 0===t?0:1===t?1:(!n||n<1?(n=1,e=.1):e=i*Math.asin(1/n)/(2*Math.PI),(t*=2)<1?n*Math.pow(2,10*(t-=1))*Math.sin((t-e)*(2*Math.PI)/i)*-.5:n*Math.pow(2,-10*(t-=1))*Math.sin((t-e)*(2*Math.PI)/i)*.5+1)},backIn:function(t){var e=1.70158;return t*t*((e+1)*t-e)},backOut:function(t){var e=1.70158;return--t*t*((e+1)*t+e)+1},backInOut:function(t){var e=2.5949095;return(t*=2)<1?t*t*((e+1)*t-e)*.5:.5*((t-=2)*t*((e+1)*t+e)+2)},bounceIn:function(t){return 1-Le.bounceOut(1-t)},bounceOut:function(t){return t<1/2.75?7.5625*t*t:t<2/2.75?7.5625*(t-=1.5/2.75)*t+.75:t<2.5/2.75?7.5625*(t-=2.25/2.75)*t+.9375:7.5625*(t-=2.625/2.75)*t+.984375},bounceInOut:function(t){return t<.5?.5*Le.bounceIn(2*t):.5*Le.bounceOut(2*t-1)+.5}},Pe=Math.pow,Oe=Math.sqrt,Re=1e-8,Ne=1e-4,Ee=Oe(3),ze=1/3,Ve=wt(),Be=wt(),Fe=wt();function Ge(t){return t>-1e-8&&t<Re}function We(t){return t>Re||t<-1e-8}function He(t,e,n,i,r){var o=1-r;return o*o*(o*t+3*r*e)+r*r*(r*i+3*o*n)}function Ye(t,e,n,i,r){var o=1-r;return 3*(((e-t)*o+2*(n-e)*r)*o+(i-n)*r*r)}function Ue(t,e,n,i,r,o){var a=i+3*(e-n)-t,s=3*(n-2*e+t),l=3*(e-t),u=t-r,h=s*s-3*a*l,c=s*l-9*a*u,p=l*l-3*s*u,d=0;if(Ge(h)&&Ge(c)){if(Ge(s))o[0]=0;else(M=-l/s)>=0&&M<=1&&(o[d++]=M)}else{var f=c*c-4*h*p;if(Ge(f)){var g=c/h,y=-g/2;(M=-s/a+g)>=0&&M<=1&&(o[d++]=M),y>=0&&y<=1&&(o[d++]=y)}else if(f>0){var v=Oe(f),m=h*s+1.5*a*(-c+v),x=h*s+1.5*a*(-c-v);(M=(-s-((m=m<0?-Pe(-m,ze):Pe(m,ze))+(x=x<0?-Pe(-x,ze):Pe(x,ze))))/(3*a))>=0&&M<=1&&(o[d++]=M)}else{var _=(2*h*s-3*a*c)/(2*Oe(h*h*h)),b=Math.acos(_)/3,w=Oe(h),S=Math.cos(b),M=(-s-2*w*S)/(3*a),I=(y=(-s+w*(S+Ee*Math.sin(b)))/(3*a),(-s+w*(S-Ee*Math.sin(b)))/(3*a));M>=0&&M<=1&&(o[d++]=M),y>=0&&y<=1&&(o[d++]=y),I>=0&&I<=1&&(o[d++]=I)}}return d}function Xe(t,e,n,i,r){var o=6*n-12*e+6*t,a=9*e+3*i-3*t-9*n,s=3*e-3*t,l=0;if(Ge(a)){if(We(o))(h=-s/o)>=0&&h<=1&&(r[l++]=h)}else{var u=o*o-4*a*s;if(Ge(u))r[0]=-o/(2*a);else if(u>0){var h,c=Oe(u),p=(-o-c)/(2*a);(h=(-o+c)/(2*a))>=0&&h<=1&&(r[l++]=h),p>=0&&p<=1&&(r[l++]=p)}}return l}function Ze(t,e,n,i,r,o){var a=(e-t)*r+t,s=(n-e)*r+e,l=(i-n)*r+n,u=(s-a)*r+a,h=(l-s)*r+s,c=(h-u)*r+u;o[0]=t,o[1]=a,o[2]=u,o[3]=c,o[4]=c,o[5]=h,o[6]=l,o[7]=i}function je(t,e,n,i,r,o,a,s,l,u,h){var c,p,d,f,g,y=.005,v=1/0;Ve[0]=l,Ve[1]=u;for(var m=0;m<1;m+=.05)Be[0]=He(t,n,r,a,m),Be[1]=He(e,i,o,s,m),(f=Vt(Ve,Be))<v&&(c=m,v=f);v=1/0;for(var x=0;x<32&&!(y<Ne);x++)p=c-y,d=c+y,Be[0]=He(t,n,r,a,p),Be[1]=He(e,i,o,s,p),f=Vt(Be,Ve),p>=0&&f<v?(c=p,v=f):(Fe[0]=He(t,n,r,a,d),Fe[1]=He(e,i,o,s,d),g=Vt(Fe,Ve),d<=1&&g<v?(c=d,v=g):y*=.5);return h&&(h[0]=He(t,n,r,a,c),h[1]=He(e,i,o,s,c)),Oe(v)}function qe(t,e,n,i,r,o,a,s,l){for(var u=t,h=e,c=0,p=1/l,d=1;d<=l;d++){var f=d*p,g=He(t,n,r,a,f),y=He(e,i,o,s,f),v=g-u,m=y-h;c+=Math.sqrt(v*v+m*m),u=g,h=y}return c}function Ke(t,e,n,i){var r=1-i;return r*(r*t+2*i*e)+i*i*n}function $e(t,e,n,i){return 2*((1-i)*(e-t)+i*(n-e))}function Je(t,e,n){var i=t+n-2*e;return 0===i?.5:(t-e)/i}function Qe(t,e,n,i,r){var o=(e-t)*i+t,a=(n-e)*i+e,s=(a-o)*i+o;r[0]=t,r[1]=o,r[2]=s,r[3]=s,r[4]=a,r[5]=n}function tn(t,e,n,i,r,o,a,s,l){var u,h=.005,c=1/0;Ve[0]=a,Ve[1]=s;for(var p=0;p<1;p+=.05){Be[0]=Ke(t,n,r,p),Be[1]=Ke(e,i,o,p),(y=Vt(Ve,Be))<c&&(u=p,c=y)}c=1/0;for(var d=0;d<32&&!(h<Ne);d++){var f=u-h,g=u+h;Be[0]=Ke(t,n,r,f),Be[1]=Ke(e,i,o,f);var y=Vt(Be,Ve);if(f>=0&&y<c)u=f,c=y;else{Fe[0]=Ke(t,n,r,g),Fe[1]=Ke(e,i,o,g);var v=Vt(Fe,Ve);g<=1&&v<c?(u=g,c=v):h*=.5}}return l&&(l[0]=Ke(t,n,r,u),l[1]=Ke(e,i,o,u)),Oe(c)}function en(t,e,n,i,r,o,a){for(var s=t,l=e,u=0,h=1/a,c=1;c<=a;c++){var p=c*h,d=Ke(t,n,r,p),f=Ke(e,i,o,p),g=d-s,y=f-l;u+=Math.sqrt(g*g+y*y),s=d,l=f}return u}var nn=/cubic-bezier\(([0-9,\.e ]+)\)/;function rn(t){var e=t&&nn.exec(t);if(e){var n=e[1].split(","),i=+ut(n[0]),r=+ut(n[1]),o=+ut(n[2]),a=+ut(n[3]);if(isNaN(i+r+o+a))return;var s=[];return function(t){return t<=0?0:t>=1?1:Ue(0,i,o,1,t,s)&&He(0,r,a,1,s[0])}}}var on=function(){function t(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||xt,this.ondestroy=t.ondestroy||xt,this.onrestart=t.onrestart||xt,t.easing&&this.setEasing(t.easing)}return t.prototype.step=function(t,e){if(this._inited||(this._startTime=t+this._delay,this._inited=!0),!this._paused){var n=this._life,i=t-this._startTime-this._pausedTime,r=i/n;r<0&&(r=0),r=Math.min(r,1);var o=this.easingFunc,a=o?o(r):r;if(this.onframe(a),1===r){if(!this.loop)return!0;var s=i%n;this._startTime=t-s,this._pausedTime=0,this.onrestart()}return!1}this._pausedTime+=e},t.prototype.pause=function(){this._paused=!0},t.prototype.resume=function(){this._paused=!1},t.prototype.setEasing=function(t){this.easing=t,this.easingFunc=U(t)?t:Le[t]||rn(t)},t}(),an=function(t){this.value=t},sn=function(){function t(){this._len=0}return t.prototype.insert=function(t){var e=new an(t);return this.insertEntry(e),e},t.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++},t.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--},t.prototype.len=function(){return this._len},t.prototype.clear=function(){this.head=this.tail=null,this._len=0},t}(),ln=function(){function t(t){this._list=new sn,this._maxSize=10,this._map={},this._maxSize=t}return t.prototype.put=function(t,e){var n=this._list,i=this._map,r=null;if(null==i[t]){var o=n.len(),a=this._lastRemovedEntry;if(o>=this._maxSize&&o>0){var s=n.head;n.remove(s),delete i[s.key],r=s.value,this._lastRemovedEntry=s}a?a.value=e:a=new an(e),a.key=t,n.insertEntry(a),i[t]=a}return r},t.prototype.get=function(t){var e=this._map[t],n=this._list;if(null!=e)return e!==n.tail&&(n.remove(e),n.insertEntry(e)),e.value},t.prototype.clear=function(){this._list.clear(),this._map={}},t.prototype.len=function(){return this._list.len()},t}(),un={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 hn(t){return(t=Math.round(t))<0?0:t>255?255:t}function cn(t){return t<0?0:t>1?1:t}function pn(t){var e=t;return e.length&&"%"===e.charAt(e.length-1)?hn(parseFloat(e)/100*255):hn(parseInt(e,10))}function dn(t){var e=t;return e.length&&"%"===e.charAt(e.length-1)?cn(parseFloat(e)/100):cn(parseFloat(e))}function fn(t,e,n){return n<0?n+=1:n>1&&(n-=1),6*n<1?t+(e-t)*n*6:2*n<1?e:3*n<2?t+(e-t)*(2/3-n)*6:t}function gn(t,e,n){return t+(e-t)*n}function yn(t,e,n,i,r){return t[0]=e,t[1]=n,t[2]=i,t[3]=r,t}function vn(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t}var mn=new ln(20),xn=null;function _n(t,e){xn&&vn(xn,e),xn=mn.put(t,xn||e.slice())}function bn(t,e){if(t){e=e||[];var n=mn.get(t);if(n)return vn(e,n);var i=(t+="").replace(/ /g,"").toLowerCase();if(i in un)return vn(e,un[i]),_n(t,e),e;var r,o=i.length;if("#"===i.charAt(0))return 4===o||5===o?(r=parseInt(i.slice(1,4),16))>=0&&r<=4095?(yn(e,(3840&r)>>4|(3840&r)>>8,240&r|(240&r)>>4,15&r|(15&r)<<4,5===o?parseInt(i.slice(4),16)/15:1),_n(t,e),e):void yn(e,0,0,0,1):7===o||9===o?(r=parseInt(i.slice(1,7),16))>=0&&r<=16777215?(yn(e,(16711680&r)>>16,(65280&r)>>8,255&r,9===o?parseInt(i.slice(7),16)/255:1),_n(t,e),e):void yn(e,0,0,0,1):void 0;var a=i.indexOf("("),s=i.indexOf(")");if(-1!==a&&s+1===o){var l=i.substr(0,a),u=i.substr(a+1,s-(a+1)).split(","),h=1;switch(l){case"rgba":if(4!==u.length)return 3===u.length?yn(e,+u[0],+u[1],+u[2],1):yn(e,0,0,0,1);h=dn(u.pop());case"rgb":return 3!==u.length?void yn(e,0,0,0,1):(yn(e,pn(u[0]),pn(u[1]),pn(u[2]),h),_n(t,e),e);case"hsla":return 4!==u.length?void yn(e,0,0,0,1):(u[3]=dn(u[3]),wn(u,e),_n(t,e),e);case"hsl":return 3!==u.length?void yn(e,0,0,0,1):(wn(u,e),_n(t,e),e);default:return}}yn(e,0,0,0,1)}}function wn(t,e){var n=(parseFloat(t[0])%360+360)%360/360,i=dn(t[1]),r=dn(t[2]),o=r<=.5?r*(i+1):r+i-r*i,a=2*r-o;return yn(e=e||[],hn(255*fn(a,o,n+1/3)),hn(255*fn(a,o,n)),hn(255*fn(a,o,n-1/3)),1),4===t.length&&(e[3]=t[3]),e}function Sn(t,e){var n=bn(t);if(n){for(var i=0;i<3;i++)n[i]=e<0?n[i]*(1-e)|0:(255-n[i])*e+n[i]|0,n[i]>255?n[i]=255:n[i]<0&&(n[i]=0);return kn(n,4===n.length?"rgba":"rgb")}}function Mn(t,e,n){if(e&&e.length&&t>=0&&t<=1){n=n||[];var i=t*(e.length-1),r=Math.floor(i),o=Math.ceil(i),a=e[r],s=e[o],l=i-r;return n[0]=hn(gn(a[0],s[0],l)),n[1]=hn(gn(a[1],s[1],l)),n[2]=hn(gn(a[2],s[2],l)),n[3]=cn(gn(a[3],s[3],l)),n}}var In=Mn;function Tn(t,e,n){if(e&&e.length&&t>=0&&t<=1){var i=t*(e.length-1),r=Math.floor(i),o=Math.ceil(i),a=bn(e[r]),s=bn(e[o]),l=i-r,u=kn([hn(gn(a[0],s[0],l)),hn(gn(a[1],s[1],l)),hn(gn(a[2],s[2],l)),cn(gn(a[3],s[3],l))],"rgba");return n?{color:u,leftIndex:r,rightIndex:o,value:i}:u}}var Cn=Tn;function Dn(t,e,n,i){var r=bn(t);if(t)return r=function(t){if(t){var e,n,i=t[0]/255,r=t[1]/255,o=t[2]/255,a=Math.min(i,r,o),s=Math.max(i,r,o),l=s-a,u=(s+a)/2;if(0===l)e=0,n=0;else{n=u<.5?l/(s+a):l/(2-s-a);var h=((s-i)/6+l/2)/l,c=((s-r)/6+l/2)/l,p=((s-o)/6+l/2)/l;i===s?e=p-c:r===s?e=1/3+h-p:o===s&&(e=2/3+c-h),e<0&&(e+=1),e>1&&(e-=1)}var d=[360*e,n,u];return null!=t[3]&&d.push(t[3]),d}}(r),null!=e&&(r[0]=function(t){return(t=Math.round(t))<0?0:t>360?360:t}(e)),null!=n&&(r[1]=dn(n)),null!=i&&(r[2]=dn(i)),kn(wn(r),"rgba")}function An(t,e){var n=bn(t);if(n&&null!=e)return n[3]=cn(e),kn(n,"rgba")}function kn(t,e){if(t&&t.length){var n=t[0]+","+t[1]+","+t[2];return"rgba"!==e&&"hsva"!==e&&"hsla"!==e||(n+=","+t[3]),e+"("+n+")"}}function Ln(t,e){var n=bn(t);return n?(.299*n[0]+.587*n[1]+.114*n[2])*n[3]/255+(1-n[3])*e:0}var Pn=Object.freeze({__proto__:null,parse:bn,lift:Sn,toHex:function(t){var e=bn(t);if(e)return((1<<24)+(e[0]<<16)+(e[1]<<8)+ +e[2]).toString(16).slice(1)},fastLerp:Mn,fastMapToColor:In,lerp:Tn,mapToColor:Cn,modifyHSL:Dn,modifyAlpha:An,stringify:kn,lum:Ln,random:function(){return kn([Math.round(255*Math.random()),Math.round(255*Math.random()),Math.round(255*Math.random())],"rgb")}}),On=Math.round;function Rn(t){var e;if(t&&"transparent"!==t){if("string"==typeof t&&t.indexOf("rgba")>-1){var n=bn(t);n&&(t="rgb("+n[0]+","+n[1]+","+n[2]+")",e=n[3])}}else t="none";return{color:t,opacity:null==e?1:e}}var Nn=1e-4;function En(t){return t<Nn&&t>-1e-4}function zn(t){return On(1e3*t)/1e3}function Vn(t){return On(1e4*t)/1e4}var Bn={left:"start",right:"end",center:"middle",middle:"middle"};function Fn(t){return t&&!!t.image}function Gn(t){return"linear"===t.type}function Wn(t){return"radial"===t.type}function Hn(t){return"url(#"+t+")"}function Yn(t){var e=t.getGlobalScale(),n=Math.max(e[0],e[1]);return Math.max(Math.ceil(Math.log(n)/Math.log(10)),1)}function Un(t){var e=t.x||0,n=t.y||0,i=(t.rotation||0)*_t,r=rt(t.scaleX,1),o=rt(t.scaleY,1),a=t.skewX||0,s=t.skewY||0,l=[];return(e||n)&&l.push("translate("+e+"px,"+n+"px)"),i&&l.push("rotate("+i+")"),1===r&&1===o||l.push("scale("+r+","+o+")"),(a||s)&&l.push("skew("+On(a*_t)+"deg, "+On(s*_t)+"deg)"),l.join(" ")}var Xn=r.hasGlobalWindow&&U(window.btoa)?function(t){return window.btoa(unescape(t))}:"undefined"!=typeof Buffer?function(t){return Buffer.from(t).toString("base64")}:function(t){return null},Zn=Array.prototype.slice;function jn(t,e,n){return(e-t)*n+t}function qn(t,e,n,i){for(var r=e.length,o=0;o<r;o++)t[o]=jn(e[o],n[o],i);return t}function Kn(t,e,n,i){for(var r=e.length,o=0;o<r;o++)t[o]=e[o]+n[o]*i;return t}function $n(t,e,n,i){for(var r=e.length,o=r&&e[0].length,a=0;a<r;a++){t[a]||(t[a]=[]);for(var s=0;s<o;s++)t[a][s]=e[a][s]+n[a][s]*i}return t}function Jn(t,e){for(var n=t.length,i=e.length,r=n>i?e:t,o=Math.min(n,i),a=r[o-1]||{color:[0,0,0,0],offset:0},s=o;s<Math.max(n,i);s++)r.push({offset:a.offset,color:a.color.slice()})}function Qn(t,e,n){var i=t,r=e;if(i.push&&r.push){var o=i.length,a=r.length;if(o!==a)if(o>a)i.length=a;else for(var s=o;s<a;s++)i.push(1===n?r[s]:Zn.call(r[s]));var l=i[0]&&i[0].length;for(s=0;s<i.length;s++)if(1===n)isNaN(i[s])&&(i[s]=r[s]);else for(var u=0;u<l;u++)isNaN(i[s][u])&&(i[s][u]=r[s][u])}}function ti(t){if(N(t)){var e=t.length;if(N(t[0])){for(var n=[],i=0;i<e;i++)n.push(Zn.call(t[i]));return n}return Zn.call(t)}return t}function ei(t){return t[0]=Math.floor(t[0])||0,t[1]=Math.floor(t[1])||0,t[2]=Math.floor(t[2])||0,t[3]=null==t[3]?1:t[3],"rgba("+t.join(",")+")"}function ni(t){return 4===t||5===t}function ii(t){return 1===t||2===t}var ri=[0,0,0,0],oi=function(){function t(t){this.keyframes=[],this.discrete=!1,this._invalid=!1,this._needsSort=!1,this._lastFr=0,this._lastFrP=0,this.propName=t}return t.prototype.isFinished=function(){return this._finished},t.prototype.setFinished=function(){this._finished=!0,this._additiveTrack&&this._additiveTrack.setFinished()},t.prototype.needsAnimate=function(){return this.keyframes.length>=1},t.prototype.getAdditiveTrack=function(){return this._additiveTrack},t.prototype.addKeyframe=function(t,e,n){this._needsSort=!0;var i=this.keyframes,r=i.length,o=!1,a=6,s=e;if(N(e)){var l=function(t){return N(t&&t[0])?2:1}(e);a=l,(1===l&&!j(e[0])||2===l&&!j(e[0][0]))&&(o=!0)}else if(j(e)&&!nt(e))a=0;else if(X(e))if(isNaN(+e)){var u=bn(e);u&&(s=u,a=3)}else a=0;else if(Q(e)){var h=A({},s);h.colorStops=z(e.colorStops,(function(t){return{offset:t.offset,color:bn(t.color)}})),Gn(e)?a=4:Wn(e)&&(a=5),s=h}0===r?this.valType=a:a===this.valType&&6!==a||(o=!0),this.discrete=this.discrete||o;var c={time:t,value:s,rawValue:e,percent:0};return n&&(c.easing=n,c.easingFunc=U(n)?n:Le[n]||rn(n)),i.push(c),c},t.prototype.prepare=function(t,e){var n=this.keyframes;this._needsSort&&n.sort((function(t,e){return t.time-e.time}));for(var i=this.valType,r=n.length,o=n[r-1],a=this.discrete,s=ii(i),l=ni(i),u=0;u<r;u++){var h=n[u],c=h.value,p=o.value;h.percent=h.time/t,a||(s&&u!==r-1?Qn(c,p,i):l&&Jn(c.colorStops,p.colorStops))}if(!a&&5!==i&&e&&this.needsAnimate()&&e.needsAnimate()&&i===e.valType&&!e._finished){this._additiveTrack=e;var d=n[0].value;for(u=0;u<r;u++)0===i?n[u].additiveValue=n[u].value-d:3===i?n[u].additiveValue=Kn([],n[u].value,d,-1):ii(i)&&(n[u].additiveValue=1===i?Kn([],n[u].value,d,-1):$n([],n[u].value,d,-1))}},t.prototype.step=function(t,e){if(!this._finished){this._additiveTrack&&this._additiveTrack._finished&&(this._additiveTrack=null);var n,i,r,o=null!=this._additiveTrack,a=o?"additiveValue":"value",s=this.valType,l=this.keyframes,u=l.length,h=this.propName,c=3===s,p=this._lastFr,d=Math.min;if(1===u)i=r=l[0];else{if(e<0)n=0;else if(e<this._lastFrP){for(n=d(p+1,u-1);n>=0&&!(l[n].percent<=e);n--);n=d(n,u-2)}else{for(n=p;n<u&&!(l[n].percent>e);n++);n=d(n-1,u-2)}r=l[n+1],i=l[n]}if(i&&r){this._lastFr=n,this._lastFrP=e;var f=r.percent-i.percent,g=0===f?1:d((e-i.percent)/f,1);r.easingFunc&&(g=r.easingFunc(g));var y=o?this._additiveValue:c?ri:t[h];if(!ii(s)&&!c||y||(y=this._additiveValue=[]),this.discrete)t[h]=g<1?i.rawValue:r.rawValue;else if(ii(s))1===s?qn(y,i[a],r[a],g):function(t,e,n,i){for(var r=e.length,o=r&&e[0].length,a=0;a<r;a++){t[a]||(t[a]=[]);for(var s=0;s<o;s++)t[a][s]=jn(e[a][s],n[a][s],i)}}(y,i[a],r[a],g);else if(ni(s)){var v=i[a],m=r[a],x=4===s;t[h]={type:x?"linear":"radial",x:jn(v.x,m.x,g),y:jn(v.y,m.y,g),colorStops:z(v.colorStops,(function(t,e){var n=m.colorStops[e];return{offset:jn(t.offset,n.offset,g),color:ei(qn([],t.color,n.color,g))}})),global:m.global},x?(t[h].x2=jn(v.x2,m.x2,g),t[h].y2=jn(v.y2,m.y2,g)):t[h].r=jn(v.r,m.r,g)}else if(c)qn(y,i[a],r[a],g),o||(t[h]=ei(y));else{var _=jn(i[a],r[a],g);o?this._additiveValue=_:t[h]=_}o&&this._addToTarget(t)}}},t.prototype._addToTarget=function(t){var e=this.valType,n=this.propName,i=this._additiveValue;0===e?t[n]=t[n]+i:3===e?(bn(t[n],ri),Kn(ri,ri,i,1),t[n]=ei(ri)):1===e?Kn(t[n],t[n],i,1):2===e&&$n(t[n],t[n],i,1)},t}(),ai=function(){function t(t,e,n,i){this._tracks={},this._trackKeys=[],this._maxTime=0,this._started=0,this._clip=null,this._target=t,this._loop=e,e&&i?I("Can' use additive animation on looped animation."):(this._additiveAnimators=i,this._allowDiscrete=n)}return t.prototype.getMaxTime=function(){return this._maxTime},t.prototype.getDelay=function(){return this._delay},t.prototype.getLoop=function(){return this._loop},t.prototype.getTarget=function(){return this._target},t.prototype.changeTarget=function(t){this._target=t},t.prototype.when=function(t,e,n){return this.whenWithKeys(t,e,G(e),n)},t.prototype.whenWithKeys=function(t,e,n,i){for(var r=this._tracks,o=0;o<n.length;o++){var a=n[o],s=r[a];if(!s){s=r[a]=new oi(a);var l=void 0,u=this._getAdditiveTrack(a);if(u){var h=u.keyframes,c=h[h.length-1];l=c&&c.value,3===u.valType&&l&&(l=ei(l))}else l=this._target[a];if(null==l)continue;t>0&&s.addKeyframe(0,ti(l),i),this._trackKeys.push(a)}s.addKeyframe(t,ti(e[a]),i)}return this._maxTime=Math.max(this._maxTime,t),this},t.prototype.pause=function(){this._clip.pause(),this._paused=!0},t.prototype.resume=function(){this._clip.resume(),this._paused=!1},t.prototype.isPaused=function(){return!!this._paused},t.prototype.duration=function(t){return this._maxTime=t,this._force=!0,this},t.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)},t.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)},t.prototype._setTracksFinished=function(){for(var t=this._tracks,e=this._trackKeys,n=0;n<e.length;n++)t[e[n]].setFinished()},t.prototype._getAdditiveTrack=function(t){var e,n=this._additiveAnimators;if(n)for(var i=0;i<n.length;i++){var r=n[i].getTrack(t);r&&(e=r)}return e},t.prototype.start=function(t){if(!(this._started>0)){this._started=1;for(var e=this,n=[],i=this._maxTime||0,r=0;r<this._trackKeys.length;r++){var o=this._trackKeys[r],a=this._tracks[o],s=this._getAdditiveTrack(o),l=a.keyframes,u=l.length;if(a.prepare(i,s),a.needsAnimate())if(!this._allowDiscrete&&a.discrete){var h=l[u-1];h&&(e._target[a.propName]=h.rawValue),a.setFinished()}else n.push(a)}if(n.length||this._force){var c=new on({life:i,loop:this._loop,delay:this._delay||0,onframe:function(t){e._started=2;var i=e._additiveAnimators;if(i){for(var r=!1,o=0;o<i.length;o++)if(i[o]._clip){r=!0;break}r||(e._additiveAnimators=null)}for(o=0;o<n.length;o++)n[o].step(e._target,t);var a=e._onframeCbs;if(a)for(o=0;o<a.length;o++)a[o](e._target,t)},ondestroy:function(){e._doneCallback()}});this._clip=c,this.animation&&this.animation.addClip(c),t&&c.setEasing(t)}else this._doneCallback();return this}},t.prototype.stop=function(t){if(this._clip){var e=this._clip;t&&e.onframe(1),this._abortedCallback()}},t.prototype.delay=function(t){return this._delay=t,this},t.prototype.during=function(t){return t&&(this._onframeCbs||(this._onframeCbs=[]),this._onframeCbs.push(t)),this},t.prototype.done=function(t){return t&&(this._doneCbs||(this._doneCbs=[]),this._doneCbs.push(t)),this},t.prototype.aborted=function(t){return t&&(this._abortedCbs||(this._abortedCbs=[]),this._abortedCbs.push(t)),this},t.prototype.getClip=function(){return this._clip},t.prototype.getTrack=function(t){return this._tracks[t]},t.prototype.getTracks=function(){var t=this;return z(this._trackKeys,(function(e){return t._tracks[e]}))},t.prototype.stopTracks=function(t,e){if(!t.length||!this._clip)return!0;for(var n=this._tracks,i=this._trackKeys,r=0;r<t.length;r++){var o=n[t[r]];o&&!o.isFinished()&&(e?o.step(this._target,1):1===this._started&&o.step(this._target,0),o.setFinished())}var a=!0;for(r=0;r<i.length;r++)if(!n[i[r]].isFinished()){a=!1;break}return a&&this._abortedCallback(),a},t.prototype.saveTo=function(t,e,n){if(t){e=e||this._trackKeys;for(var i=0;i<e.length;i++){var r=e[i],o=this._tracks[r];if(o&&!o.isFinished()){var a=o.keyframes,s=a[n?0:a.length-1];s&&(t[r]=ti(s.rawValue))}}}},t.prototype.__changeFinalValue=function(t,e){e=e||G(t);for(var n=0;n<e.length;n++){var i=e[n],r=this._tracks[i];if(r){var o=r.keyframes;if(o.length>1){var a=o.pop();r.addKeyframe(a.time,t[i]),r.prepare(this._maxTime,r.getAdditiveTrack())}}}},t}();function si(){return(new Date).getTime()}var li,ui,hi=function(t){function e(e){var n=t.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 n(e,t),e.prototype.addClip=function(t){t.animation&&this.removeClip(t),this._head?(this._tail.next=t,t.prev=this._tail,t.next=null,this._tail=t):this._head=this._tail=t,t.animation=this},e.prototype.addAnimator=function(t){t.animation=this;var e=t.getClip();e&&this.addClip(e)},e.prototype.removeClip=function(t){if(t.animation){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=t.animation=null}},e.prototype.removeAnimator=function(t){var e=t.getClip();e&&this.removeClip(e),t.animation=null},e.prototype.update=function(t){for(var e=si()-this._pausedTime,n=e-this._time,i=this._head;i;){var r=i.next;i.step(e,n)?(i.ondestroy(),this.removeClip(i),i=r):i=r}this._time=e,t||(this.trigger("frame",n),this.stage.update&&this.stage.update())},e.prototype._startLoop=function(){var t=this;this._running=!0,ke((function e(){t._running&&(ke(e),!t._paused&&t.update())}))},e.prototype.start=function(){this._running||(this._time=si(),this._pausedTime=0,this._startLoop())},e.prototype.stop=function(){this._running=!1},e.prototype.pause=function(){this._paused||(this._pauseStart=si(),this._paused=!0)},e.prototype.resume=function(){this._paused&&(this._pausedTime+=si()-this._pauseStart,this._paused=!1)},e.prototype.clear=function(){for(var t=this._head;t;){var e=t.next;t.prev=t.next=t.animation=null,t=e}this._head=this._tail=null},e.prototype.isFinished=function(){return null==this._head},e.prototype.animate=function(t,e){e=e||{},this.start();var n=new ai(t,e.loop);return this.addAnimator(n),n},e}(Xt),ci=r.domSupported,pi=(ui={pointerdown:1,pointerup:1,pointermove:1,pointerout:1},{mouse:li=["click","dblclick","mousewheel","wheel","mouseout","mouseup","mousedown","mousemove","contextmenu"],touch:["touchstart","touchend","touchmove"],pointer:z(li,(function(t){var e=t.replace("mouse","pointer");return ui.hasOwnProperty(e)?e:t}))}),di=["mousemove","mouseup"],fi=["pointermove","pointerup"],gi=!1;function yi(t){var e=t.pointerType;return"pen"===e||"touch"===e}function vi(t){t&&(t.zrByTouch=!0)}function mi(t,e){for(var n=e,i=!1;n&&9!==n.nodeType&&!(i=n.domBelongToZr||n!==e&&n===t.painterRoot);)n=n.parentNode;return i}var xi=function(t,e){this.stopPropagation=xt,this.stopImmediatePropagation=xt,this.preventDefault=xt,this.type=e.type,this.target=this.currentTarget=t.dom,this.pointerType=e.pointerType,this.clientX=e.clientX,this.clientY=e.clientY},_i={mousedown:function(t){t=oe(this.dom,t),this.__mayPointerCapture=[t.zrX,t.zrY],this.trigger("mousedown",t)},mousemove:function(t){t=oe(this.dom,t);var e=this.__mayPointerCapture;!e||t.zrX===e[0]&&t.zrY===e[1]||this.__togglePointerCapture(!0),this.trigger("mousemove",t)},mouseup:function(t){t=oe(this.dom,t),this.__togglePointerCapture(!1),this.trigger("mouseup",t)},mouseout:function(t){mi(this,(t=oe(this.dom,t)).toElement||t.relatedTarget)||(this.__pointerCapturing&&(t.zrEventControl="no_globalout"),this.trigger("mouseout",t))},wheel:function(t){gi=!0,t=oe(this.dom,t),this.trigger("mousewheel",t)},mousewheel:function(t){gi||(t=oe(this.dom,t),this.trigger("mousewheel",t))},touchstart:function(t){vi(t=oe(this.dom,t)),this.__lastTouchMoment=new Date,this.handler.processGesture(t,"start"),_i.mousemove.call(this,t),_i.mousedown.call(this,t)},touchmove:function(t){vi(t=oe(this.dom,t)),this.handler.processGesture(t,"change"),_i.mousemove.call(this,t)},touchend:function(t){vi(t=oe(this.dom,t)),this.handler.processGesture(t,"end"),_i.mouseup.call(this,t),+new Date-+this.__lastTouchMoment<300&&_i.click.call(this,t)},pointerdown:function(t){_i.mousedown.call(this,t)},pointermove:function(t){yi(t)||_i.mousemove.call(this,t)},pointerup:function(t){_i.mouseup.call(this,t)},pointerout:function(t){yi(t)||_i.mouseout.call(this,t)}};E(["click","dblclick","contextmenu"],(function(t){_i[t]=function(e){e=oe(this.dom,e),this.trigger(t,e)}}));var bi={pointermove:function(t){yi(t)||bi.mousemove.call(this,t)},pointerup:function(t){bi.mouseup.call(this,t)},mousemove:function(t){this.trigger("mousemove",t)},mouseup:function(t){var e=this.__pointerCapturing;this.__togglePointerCapture(!1),this.trigger("mouseup",t),e&&(t.zrEventControl="only_globalout",this.trigger("mouseout",t))}};function wi(t,e){var n=e.domHandlers;r.pointerEventsSupported?E(pi.pointer,(function(i){Mi(e,i,(function(e){n[i].call(t,e)}))})):(r.touchEventsSupported&&E(pi.touch,(function(i){Mi(e,i,(function(r){n[i].call(t,r),function(t){t.touching=!0,null!=t.touchTimer&&(clearTimeout(t.touchTimer),t.touchTimer=null),t.touchTimer=setTimeout((function(){t.touching=!1,t.touchTimer=null}),700)}(e)}))})),E(pi.mouse,(function(i){Mi(e,i,(function(r){r=re(r),e.touching||n[i].call(t,r)}))})))}function Si(t,e){function n(n){Mi(e,n,(function(i){i=re(i),mi(t,i.target)||(i=function(t,e){return oe(t.dom,new xi(t,e),!0)}(t,i),e.domHandlers[n].call(t,i))}),{capture:!0})}r.pointerEventsSupported?E(fi,n):r.touchEventsSupported||E(di,n)}function Mi(t,e,n,i){t.mounted[e]=n,t.listenerOpts[e]=i,ae(t.domTarget,e,n,i)}function Ii(t){var e,n,i,r,o=t.mounted;for(var a in o)o.hasOwnProperty(a)&&(e=t.domTarget,n=a,i=o[a],r=t.listenerOpts[a],e.removeEventListener(n,i,r));t.mounted={}}var Ti=function(t,e){this.mounted={},this.listenerOpts={},this.touching=!1,this.domTarget=t,this.domHandlers=e},Ci=function(t){function e(e,n){var i=t.call(this)||this;return i.__pointerCapturing=!1,i.dom=e,i.painterRoot=n,i._localHandlerScope=new Ti(e,_i),ci&&(i._globalHandlerScope=new Ti(document,bi)),wi(i,i._localHandlerScope),i}return n(e,t),e.prototype.dispose=function(){Ii(this._localHandlerScope),ci&&Ii(this._globalHandlerScope)},e.prototype.setCursor=function(t){this.dom.style&&(this.dom.style.cursor=t||"default")},e.prototype.__togglePointerCapture=function(t){if(this.__mayPointerCapture=null,ci&&+this.__pointerCapturing^+t){this.__pointerCapturing=t;var e=this._globalHandlerScope;t?Si(this,e):Ii(e)}},e}(Xt),Di=1;r.hasGlobalWindow&&(Di=Math.max(window.devicePixelRatio||window.screen&&window.screen.deviceXDPI/window.screen.logicalXDPI||1,1));var Ai=Di,ki="#333",Li="#ccc";function Pi(){return[1,0,0,1,0,0]}function Oi(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t[4]=0,t[5]=0,t}function Ri(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t}function Ni(t,e,n){var i=e[0]*n[0]+e[2]*n[1],r=e[1]*n[0]+e[3]*n[1],o=e[0]*n[2]+e[2]*n[3],a=e[1]*n[2]+e[3]*n[3],s=e[0]*n[4]+e[2]*n[5]+e[4],l=e[1]*n[4]+e[3]*n[5]+e[5];return t[0]=i,t[1]=r,t[2]=o,t[3]=a,t[4]=s,t[5]=l,t}function Ei(t,e,n){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4]+n[0],t[5]=e[5]+n[1],t}function zi(t,e,n){var i=e[0],r=e[2],o=e[4],a=e[1],s=e[3],l=e[5],u=Math.sin(n),h=Math.cos(n);return t[0]=i*h+a*u,t[1]=-i*u+a*h,t[2]=r*h+s*u,t[3]=-r*u+h*s,t[4]=h*o+u*l,t[5]=h*l-u*o,t}function Vi(t,e,n){var i=n[0],r=n[1];return t[0]=e[0]*i,t[1]=e[1]*r,t[2]=e[2]*i,t[3]=e[3]*r,t[4]=e[4]*i,t[5]=e[5]*r,t}function Bi(t,e){var n=e[0],i=e[2],r=e[4],o=e[1],a=e[3],s=e[5],l=n*a-o*i;return l?(l=1/l,t[0]=a*l,t[1]=-o*l,t[2]=-i*l,t[3]=n*l,t[4]=(i*s-a*r)*l,t[5]=(o*r-n*s)*l,t):null}function Fi(t){var e=[1,0,0,1,0,0];return Ri(e,t),e}var Gi=Object.freeze({__proto__:null,create:Pi,identity:Oi,copy:Ri,mul:Ni,translate:Ei,rotate:zi,scale:Vi,invert:Bi,clone:Fi}),Wi=Oi,Hi=5e-5;function Yi(t){return t>Hi||t<-5e-5}var Ui=[],Xi=[],Zi=[1,0,0,1,0,0],ji=Math.abs,qi=function(){function t(){}return t.prototype.getLocalTransform=function(e){return t.getLocalTransform(this,e)},t.prototype.setPosition=function(t){this.x=t[0],this.y=t[1]},t.prototype.setScale=function(t){this.scaleX=t[0],this.scaleY=t[1]},t.prototype.setSkew=function(t){this.skewX=t[0],this.skewY=t[1]},t.prototype.setOrigin=function(t){this.originX=t[0],this.originY=t[1]},t.prototype.needLocalTransform=function(){return Yi(this.rotation)||Yi(this.x)||Yi(this.y)||Yi(this.scaleX-1)||Yi(this.scaleY-1)||Yi(this.skewX)||Yi(this.skewY)},t.prototype.updateTransform=function(){var t=this.parent&&this.parent.transform,e=this.needLocalTransform(),n=this.transform;e||t?(n=n||[1,0,0,1,0,0],e?this.getLocalTransform(n):Wi(n),t&&(e?Ni(n,t,n):Ri(n,t)),this.transform=n,this._resolveGlobalScaleRatio(n)):n&&Wi(n)},t.prototype._resolveGlobalScaleRatio=function(t){var e=this.globalScaleRatio;if(null!=e&&1!==e){this.getGlobalScale(Ui);var n=Ui[0]<0?-1:1,i=Ui[1]<0?-1:1,r=((Ui[0]-n)*e+n)/Ui[0]||0,o=((Ui[1]-i)*e+i)/Ui[1]||0;t[0]*=r,t[1]*=r,t[2]*=o,t[3]*=o}this.invTransform=this.invTransform||[1,0,0,1,0,0],Bi(this.invTransform,t)},t.prototype.getComputedTransform=function(){for(var t=this,e=[];t;)e.push(t),t=t.parent;for(;t=e.pop();)t.updateTransform();return this.transform},t.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]),r=Math.PI/2+i-Math.atan2(t[3],t[2]);n=Math.sqrt(n)*Math.cos(r),e=Math.sqrt(e),this.skewX=r,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}},t.prototype.decomposeTransform=function(){if(this.transform){var t=this.parent,e=this.transform;t&&t.transform&&(Ni(Xi,t.invTransform,e),e=Xi);var n=this.originX,i=this.originY;(n||i)&&(Zi[4]=n,Zi[5]=i,Ni(Xi,e,Zi),Xi[4]-=n,Xi[5]-=i,e=Xi),this.setLocalTransform(e)}},t.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)},t.prototype.transformCoordToLocal=function(t,e){var n=[t,e],i=this.invTransform;return i&&Ft(n,n,i),n},t.prototype.transformCoordToGlobal=function(t,e){var n=[t,e],i=this.transform;return i&&Ft(n,n,i),n},t.prototype.getLineScale=function(){var t=this.transform;return t&&ji(t[0]-1)>1e-10&&ji(t[3]-1)>1e-10?Math.sqrt(ji(t[0]*t[3]-t[2]*t[1])):1},t.prototype.copyTransform=function(t){$i(this,t)},t.getLocalTransform=function(t,e){e=e||[];var n=t.originX||0,i=t.originY||0,r=t.scaleX,o=t.scaleY,a=t.anchorX,s=t.anchorY,l=t.rotation||0,u=t.x,h=t.y,c=t.skewX?Math.tan(t.skewX):0,p=t.skewY?Math.tan(-t.skewY):0;if(n||i||a||s){var d=n+a,f=i+s;e[4]=-d*r-c*f*o,e[5]=-f*o-p*d*r}else e[4]=e[5]=0;return e[0]=r,e[3]=o,e[1]=p*r,e[2]=c*o,l&&zi(e,e,l),e[4]+=n+u,e[5]+=i+h,e},t.initDefaultProps=function(){var e=t.prototype;e.scaleX=e.scaleY=e.globalScaleRatio=1,e.x=e.y=e.originX=e.originY=e.skewX=e.skewY=e.rotation=e.anchorX=e.anchorY=0}(),t}(),Ki=["x","y","originX","originY","anchorX","anchorY","rotation","scaleX","scaleY","skewX","skewY"];function $i(t,e){for(var n=0;n<Ki.length;n++){var i=Ki[n];t[i]=e[i]}}var Ji=function(){function t(t,e){this.x=t||0,this.y=e||0}return t.prototype.copy=function(t){return this.x=t.x,this.y=t.y,this},t.prototype.clone=function(){return new t(this.x,this.y)},t.prototype.set=function(t,e){return this.x=t,this.y=e,this},t.prototype.equal=function(t){return t.x===this.x&&t.y===this.y},t.prototype.add=function(t){return this.x+=t.x,this.y+=t.y,this},t.prototype.scale=function(t){this.x*=t,this.y*=t},t.prototype.scaleAndAdd=function(t,e){this.x+=t.x*e,this.y+=t.y*e},t.prototype.sub=function(t){return this.x-=t.x,this.y-=t.y,this},t.prototype.dot=function(t){return this.x*t.x+this.y*t.y},t.prototype.len=function(){return Math.sqrt(this.x*this.x+this.y*this.y)},t.prototype.lenSquare=function(){return this.x*this.x+this.y*this.y},t.prototype.normalize=function(){var t=this.len();return this.x/=t,this.y/=t,this},t.prototype.distance=function(t){var e=this.x-t.x,n=this.y-t.y;return Math.sqrt(e*e+n*n)},t.prototype.distanceSquare=function(t){var e=this.x-t.x,n=this.y-t.y;return e*e+n*n},t.prototype.negate=function(){return this.x=-this.x,this.y=-this.y,this},t.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}},t.prototype.toArray=function(t){return t[0]=this.x,t[1]=this.y,t},t.prototype.fromArray=function(t){this.x=t[0],this.y=t[1]},t.set=function(t,e,n){t.x=e,t.y=n},t.copy=function(t,e){t.x=e.x,t.y=e.y},t.len=function(t){return Math.sqrt(t.x*t.x+t.y*t.y)},t.lenSquare=function(t){return t.x*t.x+t.y*t.y},t.dot=function(t,e){return t.x*e.x+t.y*e.y},t.add=function(t,e,n){t.x=e.x+n.x,t.y=e.y+n.y},t.sub=function(t,e,n){t.x=e.x-n.x,t.y=e.y-n.y},t.scale=function(t,e,n){t.x=e.x*n,t.y=e.y*n},t.scaleAndAdd=function(t,e,n,i){t.x=e.x+n.x*i,t.y=e.y+n.y*i},t.lerp=function(t,e,n,i){var r=1-i;t.x=r*e.x+i*n.x,t.y=r*e.y+i*n.y},t}(),Qi=Math.min,tr=Math.max,er=new Ji,nr=new Ji,ir=new Ji,rr=new Ji,or=new Ji,ar=new Ji,sr=function(){function t(t,e,n,i){n<0&&(t+=n,n=-n),i<0&&(e+=i,i=-i),this.x=t,this.y=e,this.width=n,this.height=i}return t.prototype.union=function(t){var e=Qi(t.x,this.x),n=Qi(t.y,this.y);isFinite(this.x)&&isFinite(this.width)?this.width=tr(t.x+t.width,this.x+this.width)-e:this.width=t.width,isFinite(this.y)&&isFinite(this.height)?this.height=tr(t.y+t.height,this.y+this.height)-n:this.height=t.height,this.x=e,this.y=n},t.prototype.applyTransform=function(e){t.applyTransform(this,this,e)},t.prototype.calculateTransform=function(t){var e=this,n=t.width/e.width,i=t.height/e.height,r=[1,0,0,1,0,0];return Ei(r,r,[-e.x,-e.y]),Vi(r,r,[n,i]),Ei(r,r,[t.x,t.y]),r},t.prototype.intersect=function(e,n){if(!e)return!1;e instanceof t||(e=t.create(e));var i=this,r=i.x,o=i.x+i.width,a=i.y,s=i.y+i.height,l=e.x,u=e.x+e.width,h=e.y,c=e.y+e.height,p=!(o<l||u<r||s<h||c<a);if(n){var d=1/0,f=0,g=Math.abs(o-l),y=Math.abs(u-r),v=Math.abs(s-h),m=Math.abs(c-a),x=Math.min(g,y),_=Math.min(v,m);o<l||u<r?x>f&&(f=x,g<y?Ji.set(ar,-g,0):Ji.set(ar,y,0)):x<d&&(d=x,g<y?Ji.set(or,g,0):Ji.set(or,-y,0)),s<h||c<a?_>f&&(f=_,v<m?Ji.set(ar,0,-v):Ji.set(ar,0,m)):x<d&&(d=x,v<m?Ji.set(or,0,v):Ji.set(or,0,-m))}return n&&Ji.copy(n,p?or:ar),p},t.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},t.prototype.clone=function(){return new t(this.x,this.y,this.width,this.height)},t.prototype.copy=function(e){t.copy(this,e)},t.prototype.plain=function(){return{x:this.x,y:this.y,width:this.width,height:this.height}},t.prototype.isFinite=function(){return isFinite(this.x)&&isFinite(this.y)&&isFinite(this.width)&&isFinite(this.height)},t.prototype.isZero=function(){return 0===this.width||0===this.height},t.create=function(e){return new t(e.x,e.y,e.width,e.height)},t.copy=function(t,e){t.x=e.x,t.y=e.y,t.width=e.width,t.height=e.height},t.applyTransform=function(e,n,i){if(i){if(i[1]<1e-5&&i[1]>-1e-5&&i[2]<1e-5&&i[2]>-1e-5){var r=i[0],o=i[3],a=i[4],s=i[5];return e.x=n.x*r+a,e.y=n.y*o+s,e.width=n.width*r,e.height=n.height*o,e.width<0&&(e.x+=e.width,e.width=-e.width),void(e.height<0&&(e.y+=e.height,e.height=-e.height))}er.x=ir.x=n.x,er.y=rr.y=n.y,nr.x=rr.x=n.x+n.width,nr.y=ir.y=n.y+n.height,er.transform(i),rr.transform(i),nr.transform(i),ir.transform(i),e.x=Qi(er.x,nr.x,ir.x,rr.x),e.y=Qi(er.y,nr.y,ir.y,rr.y);var l=tr(er.x,nr.x,ir.x,rr.x),u=tr(er.y,nr.y,ir.y,rr.y);e.width=l-e.x,e.height=u-e.y}else e!==n&&t.copy(e,n)},t}(),lr={};function ur(t,e){var n=lr[e=e||a];n||(n=lr[e]=new ln(500));var i=n.get(t);return null==i&&(i=h.measureText(t,e).width,n.put(t,i)),i}function hr(t,e,n,i){var r=ur(t,e),o=fr(e),a=pr(0,r,n),s=dr(0,o,i);return new sr(a,s,r,o)}function cr(t,e,n,i){var r=((t||"")+"").split("\n");if(1===r.length)return hr(r[0],e,n,i);for(var o=new sr(0,0,0,0),a=0;a<r.length;a++){var s=hr(r[a],e,n,i);0===a?o.copy(s):o.union(s)}return o}function pr(t,e,n){return"right"===n?t-=e:"center"===n&&(t-=e/2),t}function dr(t,e,n){return"middle"===n?t-=e/2:"bottom"===n&&(t-=e),t}function fr(t){return ur("国",t)}function gr(t,e){return"string"==typeof t?t.lastIndexOf("%")>=0?parseFloat(t)/100*e:parseFloat(t):t}function yr(t,e,n){var i=e.position||"inside",r=null!=e.distance?e.distance:5,o=n.height,a=n.width,s=o/2,l=n.x,u=n.y,h="left",c="top";if(i instanceof Array)l+=gr(i[0],n.width),u+=gr(i[1],n.height),h=null,c=null;else switch(i){case"left":l-=r,u+=s,h="right",c="middle";break;case"right":l+=r+a,u+=s,c="middle";break;case"top":l+=a/2,u-=r,h="center",c="bottom";break;case"bottom":l+=a/2,u+=o+r,h="center";break;case"inside":l+=a/2,u+=s,h="center",c="middle";break;case"insideLeft":l+=r,u+=s,c="middle";break;case"insideRight":l+=a-r,u+=s,h="right",c="middle";break;case"insideTop":l+=a/2,u+=r,h="center";break;case"insideBottom":l+=a/2,u+=o-r,h="center",c="bottom";break;case"insideTopLeft":l+=r,u+=r;break;case"insideTopRight":l+=a-r,u+=r,h="right";break;case"insideBottomLeft":l+=r,u+=o-r,c="bottom";break;case"insideBottomRight":l+=a-r,u+=o-r,h="right",c="bottom"}return(t=t||{}).x=l,t.y=u,t.align=h,t.verticalAlign=c,t}var vr="__zr_normal__",mr=Ki.concat(["ignore"]),xr=V(Ki,(function(t,e){return t[e]=!0,t}),{ignore:!1}),_r={},br=new sr(0,0,0,0),wr=function(){function t(t){this.id=M(),this.animators=[],this.currentStates=[],this.states={},this._init(t)}return t.prototype._init=function(t){this.attr(t)},t.prototype.drift=function(t,e,n){switch(this.draggable){case"horizontal":e=0;break;case"vertical":t=0}var i=this.transform;i||(i=this.transform=[1,0,0,1,0,0]),i[4]+=t,i[5]+=e,this.decomposeTransform(),this.markRedraw()},t.prototype.beforeUpdate=function(){},t.prototype.afterUpdate=function(){},t.prototype.update=function(){this.updateTransform(),this.__dirty&&this.updateInnerText()},t.prototype.updateInnerText=function(t){var e=this._textContent;if(e&&(!e.ignore||t)){this.textConfig||(this.textConfig={});var n=this.textConfig,i=n.local,r=e.innerTransformable,o=void 0,a=void 0,s=!1;r.parent=i?this:null;var l=!1;if(r.copyTransform(e),null!=n.position){var u=br;n.layoutRect?u.copy(n.layoutRect):u.copy(this.getBoundingRect()),i||u.applyTransform(this.transform),this.calculateTextPosition?this.calculateTextPosition(_r,n,u):yr(_r,n,u),r.x=_r.x,r.y=_r.y,o=_r.align,a=_r.verticalAlign;var h=n.origin;if(h&&null!=n.rotation){var c=void 0,p=void 0;"center"===h?(c=.5*u.width,p=.5*u.height):(c=gr(h[0],u.width),p=gr(h[1],u.height)),l=!0,r.originX=-r.x+c+(i?0:u.x),r.originY=-r.y+p+(i?0:u.y)}}null!=n.rotation&&(r.rotation=n.rotation);var d=n.offset;d&&(r.x+=d[0],r.y+=d[1],l||(r.originX=-d[0],r.originY=-d[1]));var f=null==n.inside?"string"==typeof n.position&&n.position.indexOf("inside")>=0:n.inside,g=this._innerTextDefaultStyle||(this._innerTextDefaultStyle={}),y=void 0,v=void 0,m=void 0;f&&this.canBeInsideText()?(y=n.insideFill,v=n.insideStroke,null!=y&&"auto"!==y||(y=this.getInsideTextFill()),null!=v&&"auto"!==v||(v=this.getInsideTextStroke(y),m=!0)):(y=n.outsideFill,v=n.outsideStroke,null!=y&&"auto"!==y||(y=this.getOutsideFill()),null!=v&&"auto"!==v||(v=this.getOutsideStroke(y),m=!0)),(y=y||"#000")===g.fill&&v===g.stroke&&m===g.autoStroke&&o===g.align&&a===g.verticalAlign||(s=!0,g.fill=y,g.stroke=v,g.autoStroke=m,g.align=o,g.verticalAlign=a,e.setDefaultTextStyle(g)),e.__dirty|=1,s&&e.dirtyStyle(!0)}},t.prototype.canBeInsideText=function(){return!0},t.prototype.getInsideTextFill=function(){return"#fff"},t.prototype.getInsideTextStroke=function(t){return"#000"},t.prototype.getOutsideFill=function(){return this.__zr&&this.__zr.isDarkMode()?Li:ki},t.prototype.getOutsideStroke=function(t){var e=this.__zr&&this.__zr.getBackgroundColor(),n="string"==typeof e&&bn(e);n||(n=[255,255,255,1]);for(var i=n[3],r=this.__zr.isDarkMode(),o=0;o<3;o++)n[o]=n[o]*i+(r?0:255)*(1-i);return n[3]=1,kn(n,"rgba")},t.prototype.traverse=function(t,e){},t.prototype.attrKV=function(t,e){"textConfig"===t?this.setTextConfig(e):"textContent"===t?this.setTextContent(e):"clipPath"===t?this.setClipPath(e):"extra"===t?(this.extra=this.extra||{},A(this.extra,e)):this[t]=e},t.prototype.hide=function(){this.ignore=!0,this.markRedraw()},t.prototype.show=function(){this.ignore=!1,this.markRedraw()},t.prototype.attr=function(t,e){if("string"==typeof t)this.attrKV(t,e);else if(q(t))for(var n=G(t),i=0;i<n.length;i++){var r=n[i];this.attrKV(r,t[r])}return this.markRedraw(),this},t.prototype.saveCurrentToNormalState=function(t){this._innerSaveToNormal(t);for(var e=this._normalState,n=0;n<this.animators.length;n++){var i=this.animators[n],r=i.__fromStateTransition;if(!(i.getLoop()||r&&r!==vr)){var o=i.targetName,a=o?e[o]:e;i.saveTo(a)}}},t.prototype._innerSaveToNormal=function(t){var e=this._normalState;e||(e=this._normalState={}),t.textConfig&&!e.textConfig&&(e.textConfig=this.textConfig),this._savePrimaryToNormal(t,e,mr)},t.prototype._savePrimaryToNormal=function(t,e,n){for(var i=0;i<n.length;i++){var r=n[i];null==t[r]||r in e||(e[r]=this[r])}},t.prototype.hasState=function(){return this.currentStates.length>0},t.prototype.getState=function(t){return this.states[t]},t.prototype.ensureState=function(t){var e=this.states;return e[t]||(e[t]={}),e[t]},t.prototype.clearStates=function(t){this.useState(vr,!1,t)},t.prototype.useState=function(t,e,n,i){var r=t===vr;if(this.hasState()||!r){var o=this.currentStates,a=this.stateTransition;if(!(P(o,t)>=0)||!e&&1!==o.length){var s;if(this.stateProxy&&!r&&(s=this.stateProxy(t)),s||(s=this.states&&this.states[t]),s||r){r||this.saveCurrentToNormalState(s);var l=!!(s&&s.hoverLayer||i);l&&this._toggleHoverLayerFlag(!0),this._applyStateObj(t,s,this._normalState,e,!n&&!this.__inHover&&a&&a.duration>0,a);var u=this._textContent,h=this._textGuide;return u&&u.useState(t,e,n,l),h&&h.useState(t,e,n,l),r?(this.currentStates=[],this._normalState={}):e?this.currentStates.push(t):this.currentStates=[t],this._updateAnimationTargets(),this.markRedraw(),!l&&this.__inHover&&(this._toggleHoverLayerFlag(!1),this.__dirty&=-2),s}I("State "+t+" not exists.")}}},t.prototype.useStates=function(t,e,n){if(t.length){var i=[],r=this.currentStates,o=t.length,a=o===r.length;if(a)for(var s=0;s<o;s++)if(t[s]!==r[s]){a=!1;break}if(a)return;for(s=0;s<o;s++){var l=t[s],u=void 0;this.stateProxy&&(u=this.stateProxy(l,t)),u||(u=this.states[l]),u&&i.push(u)}var h=i[o-1],c=!!(h&&h.hoverLayer||n);c&&this._toggleHoverLayerFlag(!0);var p=this._mergeStates(i),d=this.stateTransition;this.saveCurrentToNormalState(p),this._applyStateObj(t.join(","),p,this._normalState,!1,!e&&!this.__inHover&&d&&d.duration>0,d);var f=this._textContent,g=this._textGuide;f&&f.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&=-2)}else this.clearStates()},t.prototype._updateAnimationTargets=function(){for(var t=0;t<this.animators.length;t++){var e=this.animators[t];e.targetName&&e.changeTarget(this[e.targetName])}},t.prototype.removeState=function(t){var e=P(this.currentStates,t);if(e>=0){var n=this.currentStates.slice();n.splice(e,1),this.useStates(n)}},t.prototype.replaceState=function(t,e,n){var i=this.currentStates.slice(),r=P(i,t),o=P(i,e)>=0;r>=0?o?i.splice(r,1):i[r]=e:n&&!o&&i.push(e),this.useStates(i)},t.prototype.toggleState=function(t,e){e?this.useState(t,!0):this.removeState(t)},t.prototype._mergeStates=function(t){for(var e,n={},i=0;i<t.length;i++){var r=t[i];A(n,r),r.textConfig&&A(e=e||{},r.textConfig)}return e&&(n.textConfig=e),n},t.prototype._applyStateObj=function(t,e,n,i,r,o){var a=!(e&&i);e&&e.textConfig?(this.textConfig=A({},i?this.textConfig:n.textConfig),A(this.textConfig,e.textConfig)):a&&n.textConfig&&(this.textConfig=n.textConfig);for(var s={},l=!1,u=0;u<mr.length;u++){var h=mr[u],c=r&&xr[h];e&&null!=e[h]?c?(l=!0,s[h]=e[h]):this[h]=e[h]:a&&null!=n[h]&&(c?(l=!0,s[h]=n[h]):this[h]=n[h])}if(!r)for(u=0;u<this.animators.length;u++){var p=this.animators[u],d=p.targetName;p.getLoop()||p.__changeFinalValue(d?(e||n)[d]:e||n)}l&&this._transitionState(t,s,o)},t.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}},t.prototype._detachComponent=function(t){t.__zr&&t.removeSelfFromZr(t.__zr),t.__zr=null,t.__hostTarget=null},t.prototype.getClipPath=function(){return this._clipPath},t.prototype.setClipPath=function(t){this._clipPath&&this._clipPath!==t&&this.removeClipPath(),this._attachComponent(t),this._clipPath=t,this.markRedraw()},t.prototype.removeClipPath=function(){var t=this._clipPath;t&&(this._detachComponent(t),this._clipPath=null,this.markRedraw())},t.prototype.getTextContent=function(){return this._textContent},t.prototype.setTextContent=function(t){var e=this._textContent;e!==t&&(e&&e!==t&&this.removeTextContent(),t.innerTransformable=new qi,this._attachComponent(t),this._textContent=t,this.markRedraw())},t.prototype.setTextConfig=function(t){this.textConfig||(this.textConfig={}),A(this.textConfig,t),this.markRedraw()},t.prototype.removeTextConfig=function(){this.textConfig=null,this.markRedraw()},t.prototype.removeTextContent=function(){var t=this._textContent;t&&(t.innerTransformable=null,this._detachComponent(t),this._textContent=null,this._innerTextDefaultStyle=null,this.markRedraw())},t.prototype.getTextGuideLine=function(){return this._textGuide},t.prototype.setTextGuideLine=function(t){this._textGuide&&this._textGuide!==t&&this.removeTextGuideLine(),this._attachComponent(t),this._textGuide=t,this.markRedraw()},t.prototype.removeTextGuideLine=function(){var t=this._textGuide;t&&(this._detachComponent(t),this._textGuide=null,this.markRedraw())},t.prototype.markRedraw=function(){this.__dirty|=1;var t=this.__zr;t&&(this.__inHover?t.refreshHover():t.refresh()),this.__hostTarget&&this.__hostTarget.markRedraw()},t.prototype.dirty=function(){this.markRedraw()},t.prototype._toggleHoverLayerFlag=function(t){this.__inHover=t;var e=this._textContent,n=this._textGuide;e&&(e.__inHover=t),n&&(n.__inHover=t)},t.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)}},t.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)}},t.prototype.animate=function(t,e,n){var i=t?this[t]:this;var r=new ai(i,e,n);return t&&(r.targetName=t),this.addAnimator(r,t),r},t.prototype.addAnimator=function(t,e){var n=this.__zr,i=this;t.during((function(){i.updateDuringAnimation(e)})).done((function(){var e=i.animators,n=P(e,t);n>=0&&e.splice(n,1)})),this.animators.push(t),n&&n.animation.addAnimator(t),n&&n.wakeUp()},t.prototype.updateDuringAnimation=function(t){this.markRedraw()},t.prototype.stopAnimation=function(t,e){for(var n=this.animators,i=n.length,r=[],o=0;o<i;o++){var a=n[o];t&&t!==a.scope?r.push(a):a.stop(e)}return this.animators=r,this},t.prototype.animateTo=function(t,e,n){Sr(this,t,e,n)},t.prototype.animateFrom=function(t,e,n){Sr(this,t,e,n,!0)},t.prototype._transitionState=function(t,e,n,i){for(var r=Sr(this,e,n,i),o=0;o<r.length;o++)r[o].__fromStateTransition=t},t.prototype.getBoundingRect=function(){return null},t.prototype.getPaintRect=function(){return null},t.initDefaultProps=function(){var e=t.prototype;e.type="element",e.name="",e.ignore=e.silent=e.isGroup=e.draggable=e.dragging=e.ignoreClip=e.__inHover=!1,e.__dirty=1;function n(t,n,i,r){function o(t,e){Object.defineProperty(e,0,{get:function(){return t[i]},set:function(e){t[i]=e}}),Object.defineProperty(e,1,{get:function(){return t[r]},set:function(e){t[r]=e}})}Object.defineProperty(e,t,{get:function(){this[n]||o(this,this[n]=[]);return this[n]},set:function(t){this[i]=t[0],this[r]=t[1],this[n]=t,o(this,t)}})}Object.defineProperty&&(n("position","_legacyPos","x","y"),n("scale","_legacyScale","scaleX","scaleY"),n("origin","_legacyOrigin","originX","originY"))}(),t}();function Sr(t,e,n,i,r){var o=[];Tr(t,"",t,e,n=n||{},i,o,r);var a=o.length,s=!1,l=n.done,u=n.aborted,h=function(){s=!0,--a<=0&&(s?l&&l():u&&u())},c=function(){--a<=0&&(s?l&&l():u&&u())};a||l&&l(),o.length>0&&n.during&&o[0].during((function(t,e){n.during(e)}));for(var p=0;p<o.length;p++){var d=o[p];h&&d.done(h),c&&d.aborted(c),n.force&&d.duration(n.duration),d.start(n.easing)}return o}function Mr(t,e,n){for(var i=0;i<n;i++)t[i]=e[i]}function Ir(t,e,n){if(N(e[n]))if(N(t[n])||(t[n]=[]),$(e[n])){var i=e[n].length;t[n].length!==i&&(t[n]=new e[n].constructor(i),Mr(t[n],e[n],i))}else{var r=e[n],o=t[n],a=r.length;if(N(r[0]))for(var s=r[0].length,l=0;l<a;l++)o[l]?Mr(o[l],r[l],s):o[l]=Array.prototype.slice.call(r[l]);else Mr(o,r,a);o.length=r.length}else t[n]=e[n]}function Tr(t,e,n,i,r,o,a,s){for(var l=G(i),u=r.duration,h=r.delay,c=r.additive,p=r.setToFinal,d=!q(o),f=t.animators,g=[],y=0;y<l.length;y++){var v=l[y],m=i[v];if(null!=m&&null!=n[v]&&(d||o[v]))if(!q(m)||N(m)||Q(m))g.push(v);else{if(e){s||(n[v]=m,t.updateDuringAnimation(e));continue}Tr(t,v,n[v],m,r,o&&o[v],a,s)}else s||(n[v]=m,t.updateDuringAnimation(e),g.push(v))}var x=g.length;if(!c&&x)for(var _=0;_<f.length;_++){if((w=f[_]).targetName===e)if(w.stopTracks(g)){var b=P(f,w);f.splice(b,1)}}if(r.force||(x=(g=B(g,(function(t){return e=i[t],r=n[t],!(e===r||N(e)&&N(r)&&function(t,e){var n=t.length;if(n!==e.length)return!1;for(var i=0;i<n;i++)if(t[i]!==e[i])return!1;return!0}(e,r));var e,r}))).length),x>0||r.force&&!a.length){var w,S=void 0,M=void 0,I=void 0;if(s){M={},p&&(S={});for(_=0;_<x;_++){M[v=g[_]]=n[v],p?S[v]=i[v]:n[v]=i[v]}}else if(p){I={};for(_=0;_<x;_++){I[v=g[_]]=ti(n[v]),Ir(n,i,v)}}(w=new ai(n,!1,!1,c?B(f,(function(t){return t.targetName===e})):null)).targetName=e,r.scope&&(w.scope=r.scope),p&&S&&w.whenWithKeys(0,S,g),I&&w.whenWithKeys(0,I,g),w.whenWithKeys(null==u?500:u,s?M:i,g).delay(h||0),t.addAnimator(w,e),a.push(w)}}R(wr,Xt),R(wr,qi);var Cr=function(t){function e(e){var n=t.call(this)||this;return n.isGroup=!0,n._children=[],n.attr(e),n}return n(e,t),e.prototype.childrenRef=function(){return this._children},e.prototype.children=function(){return this._children.slice()},e.prototype.childAt=function(t){return this._children[t]},e.prototype.childOfName=function(t){for(var e=this._children,n=0;n<e.length;n++)if(e[n].name===t)return e[n]},e.prototype.childCount=function(){return this._children.length},e.prototype.add=function(t){return t&&t!==this&&t.parent!==this&&(this._children.push(t),this._doAdd(t)),this},e.prototype.addBefore=function(t,e){if(t&&t!==this&&t.parent!==this&&e&&e.parent===this){var n=this._children,i=n.indexOf(e);i>=0&&(n.splice(i,0,t),this._doAdd(t))}return this},e.prototype.replace=function(t,e){var n=P(this._children,t);return n>=0&&this.replaceAt(e,n),this},e.prototype.replaceAt=function(t,e){var n=this._children,i=n[e];if(t&&t!==this&&t.parent!==this&&t!==i){n[e]=t,i.parent=null;var r=this.__zr;r&&i.removeSelfFromZr(r),this._doAdd(t)}return this},e.prototype._doAdd=function(t){t.parent&&t.parent.remove(t),t.parent=this;var e=this.__zr;e&&e!==t.__zr&&t.addSelfToZr(e),e&&e.refresh()},e.prototype.remove=function(t){var e=this.__zr,n=this._children,i=P(n,t);return i<0||(n.splice(i,1),t.parent=null,e&&t.removeSelfFromZr(e),e&&e.refresh()),this},e.prototype.removeAll=function(){for(var t=this._children,e=this.__zr,n=0;n<t.length;n++){var i=t[n];e&&i.removeSelfFromZr(e),i.parent=null}return t.length=0,this},e.prototype.eachChild=function(t,e){for(var n=this._children,i=0;i<n.length;i++){var r=n[i];t.call(e,r,i)}return this},e.prototype.traverse=function(t,e){for(var n=0;n<this._children.length;n++){var i=this._children[n],r=t.call(e,i);i.isGroup&&!r&&i.traverse(t,e)}return this},e.prototype.addSelfToZr=function(e){t.prototype.addSelfToZr.call(this,e);for(var n=0;n<this._children.length;n++){this._children[n].addSelfToZr(e)}},e.prototype.removeSelfFromZr=function(e){t.prototype.removeSelfFromZr.call(this,e);for(var n=0;n<this._children.length;n++){this._children[n].removeSelfFromZr(e)}},e.prototype.getBoundingRect=function(t){for(var e=new sr(0,0,0,0),n=t||this._children,i=[],r=null,o=0;o<n.length;o++){var a=n[o];if(!a.ignore&&!a.invisible){var s=a.getBoundingRect(),l=a.getLocalTransform(i);l?(sr.applyTransform(e,s,l),(r=r||e.clone()).union(e)):(r=r||s.clone()).union(s)}}return r||e},e}(wr);Cr.prototype.type="group"; +/*! + * 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 Dr={},Ar={};var kr=function(){function t(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 o=new Ae,a=n.renderer||"canvas";Dr[a]||(a=G(Dr)[0]),n.useDirtyRect=null!=n.useDirtyRect&&n.useDirtyRect;var s=new Dr[a](e,o,n,t),l=n.ssr||s.ssrOnly;this.storage=o,this.painter=s;var u=r.node||r.worker||l?null:new Ci(s.getViewportRoot(),s.root);this.handler=new ve(o,s,u,s.root),this.animation=new hi({stage:{update:l?null:function(){return i._flush(!0)}}}),l||this.animation.start()}return t.prototype.add=function(t){t&&(this.storage.addRoot(t),t.addSelfToZr(this),this.refresh())},t.prototype.remove=function(t){t&&(this.storage.delRoot(t),t.removeSelfFromZr(this),this.refresh())},t.prototype.configLayer=function(t,e){this.painter.configLayer&&this.painter.configLayer(t,e),this.refresh()},t.prototype.setBackgroundColor=function(t){this.painter.setBackgroundColor&&this.painter.setBackgroundColor(t),this.refresh(),this._backgroundColor=t,this._darkMode=function(t){if(!t)return!1;if("string"==typeof t)return Ln(t,1)<.4;if(t.colorStops){for(var e=t.colorStops,n=0,i=e.length,r=0;r<i;r++)n+=Ln(e[r].color,1);return(n/=i)<.4}return!1}(t)},t.prototype.getBackgroundColor=function(){return this._backgroundColor},t.prototype.setDarkMode=function(t){this._darkMode=t},t.prototype.isDarkMode=function(){return this._darkMode},t.prototype.refreshImmediately=function(t){t||this.animation.update(!0),this._needsRefresh=!1,this.painter.refresh(),this._needsRefresh=!1},t.prototype.refresh=function(){this._needsRefresh=!0,this.animation.start()},t.prototype.flush=function(){this._flush(!1)},t.prototype._flush=function(t){var e,n=si();this._needsRefresh&&(e=!0,this.refreshImmediately(t)),this._needsRefreshHover&&(e=!0,this.refreshHoverImmediately());var i=si();e?(this._stillFrameAccum=0,this.trigger("rendered",{elapsedTime:i-n})):this._sleepAfterStill>0&&(this._stillFrameAccum++,this._stillFrameAccum>this._sleepAfterStill&&this.animation.stop())},t.prototype.setSleepAfterStill=function(t){this._sleepAfterStill=t},t.prototype.wakeUp=function(){this.animation.start(),this._stillFrameAccum=0},t.prototype.refreshHover=function(){this._needsRefreshHover=!0},t.prototype.refreshHoverImmediately=function(){this._needsRefreshHover=!1,this.painter.refreshHover&&"canvas"===this.painter.getType()&&this.painter.refreshHover()},t.prototype.resize=function(t){t=t||{},this.painter.resize(t.width,t.height),this.handler.resize()},t.prototype.clearAnimation=function(){this.animation.clear()},t.prototype.getWidth=function(){return this.painter.getWidth()},t.prototype.getHeight=function(){return this.painter.getHeight()},t.prototype.setCursorStyle=function(t){this.handler.setCursorStyle(t)},t.prototype.findHover=function(t,e){return this.handler.findHover(t,e)},t.prototype.on=function(t,e,n){return this.handler.on(t,e,n),this},t.prototype.off=function(t,e){this.handler.off(t,e)},t.prototype.trigger=function(t,e){this.handler.trigger(t,e)},t.prototype.clear=function(){for(var t=this.storage.getRoots(),e=0;e<t.length;e++)t[e]instanceof Cr&&t[e].removeSelfFromZr(this);this.storage.delAllRoots(),this.painter.clear()},t.prototype.dispose=function(){var t;this.animation.stop(),this.clear(),this.storage.dispose(),this.painter.dispose(),this.handler.dispose(),this.animation=this.storage=this.painter=this.handler=null,t=this.id,delete Ar[t]},t}();function Lr(t,e){var n=new kr(M(),t,e);return Ar[n.id]=n,n}function Pr(t,e){Dr[t]=e}var Or=Object.freeze({__proto__:null,init:Lr,dispose:function(t){t.dispose()},disposeAll:function(){for(var t in Ar)Ar.hasOwnProperty(t)&&Ar[t].dispose();Ar={}},getInstance:function(t){return Ar[t]},registerPainter:Pr,version:"5.3.0"}),Rr=1e-4;function Nr(t,e,n,i){var r=e[0],o=e[1],a=n[0],s=n[1],l=o-r,u=s-a;if(0===l)return 0===u?a:(a+s)/2;if(i)if(l>0){if(t<=r)return a;if(t>=o)return s}else{if(t>=r)return a;if(t<=o)return s}else{if(t===r)return a;if(t===o)return s}return(t-r)/l*u+a}function Er(t,e){switch(t){case"center":case"middle":t="50%";break;case"left":case"top":t="0%";break;case"right":case"bottom":t="100%"}return X(t)?(n=t,n.replace(/^\s+|\s+$/g,"")).match(/%$/)?parseFloat(t)/100*e:parseFloat(t):null==t?NaN:+t;var n}function zr(t,e,n){return null==e&&(e=10),e=Math.min(Math.max(0,e),20),t=(+t).toFixed(e),n?t:+t}function Vr(t){return t.sort((function(t,e){return t-e})),t}function Br(t){if(t=+t,isNaN(t))return 0;if(t>1e-14)for(var e=1,n=0;n<15;n++,e*=10)if(Math.round(t*e)/e===t)return n;return Fr(t)}function Fr(t){var e=t.toString().toLowerCase(),n=e.indexOf("e"),i=n>0?+e.slice(n+1):0,r=n>0?n:e.length,o=e.indexOf("."),a=o<0?0:r-1-o;return Math.max(0,a-i)}function Gr(t,e){var n=Math.log,i=Math.LN10,r=Math.floor(n(t[1]-t[0])/i),o=Math.round(n(Math.abs(e[1]-e[0]))/i),a=Math.min(Math.max(-r+o,0),20);return isFinite(a)?a:20}function Wr(t,e,n){if(!t[e])return 0;var i=V(t,(function(t,e){return t+(isNaN(e)?0:e)}),0);if(0===i)return 0;for(var r=Math.pow(10,n),o=z(t,(function(t){return(isNaN(t)?0:t)/i*r*100})),a=100*r,s=z(o,(function(t){return Math.floor(t)})),l=V(s,(function(t,e){return t+e}),0),u=z(o,(function(t,e){return t-s[e]}));l<a;){for(var h=Number.NEGATIVE_INFINITY,c=null,p=0,d=u.length;p<d;++p)u[p]>h&&(h=u[p],c=p);++s[c],u[c]=0,++l}return s[e]/r}function Hr(t,e){var n=Math.max(Br(t),Br(e)),i=t+e;return n>20?i:zr(i,n)}var Yr=9007199254740991;function Ur(t){var e=2*Math.PI;return(t%e+e)%e}function Xr(t){return t>-1e-4&&t<Rr}var Zr=/^(?:(\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 jr(t){if(t instanceof Date)return t;if(X(t)){var e=Zr.exec(t);if(!e)return new Date(NaN);if(e[8]){var n=+e[4]||0;return"Z"!==e[8].toUpperCase()&&(n-=+e[8].slice(0,3)),new Date(Date.UTC(+e[1],+(e[2]||1)-1,+e[3]||1,n,+(e[5]||0),+e[6]||0,e[7]?+e[7].substring(0,3):0))}return new Date(+e[1],+(e[2]||1)-1,+e[3]||1,+e[4]||0,+(e[5]||0),+e[6]||0,e[7]?+e[7].substring(0,3):0)}return null==t?new Date(NaN):new Date(Math.round(t))}function qr(t){return Math.pow(10,Kr(t))}function Kr(t){if(0===t)return 0;var e=Math.floor(Math.log(t)/Math.LN10);return t/Math.pow(10,e)>=10&&e++,e}function $r(t,e){var n=Kr(t),i=Math.pow(10,n),r=t/i;return t=(e?r<1.5?1:r<2.5?2:r<4?3:r<7?5:10:r<1?1:r<2?2:r<3?3:r<5?5:10)*i,n>=-20?+t.toFixed(n<0?-n:0):t}function Jr(t,e){var n=(t.length-1)*e+1,i=Math.floor(n),r=+t[i-1],o=n-i;return o?r+o*(t[i]-r):r}function Qr(t){t.sort((function(t,e){return s(t,e,0)?-1:1}));for(var e=-1/0,n=1,i=0;i<t.length;){for(var r=t[i].interval,o=t[i].close,a=0;a<2;a++)r[a]<=e&&(r[a]=e,o[a]=a?1:1-n),e=r[a],n=o[a];r[0]===r[1]&&o[0]*o[1]!=1?t.splice(i,1):i++}return t;function s(t,e,n){return t.interval[n]<e.interval[n]||t.interval[n]===e.interval[n]&&(t.close[n]-e.close[n]==(n?-1:1)||!n&&s(t,e,1))}}function to(t){var e=parseFloat(t);return e==t&&(0!==e||!X(t)||t.indexOf("x")<=0)?e:NaN}function eo(t){return!isNaN(to(t))}function no(){return Math.round(9*Math.random())}function io(t,e){return 0===e?t:io(e,t%e)}function ro(t,e){return null==t?e:null==e?t:t*e/io(t,e)}"undefined"!=typeof console&&console.warn&&console.log;function oo(t){0}function ao(t){throw new Error(t)}function so(t,e,n){return(e-t)*n+t}var lo="series\0",uo="\0_ec_\0";function ho(t){return t instanceof Array?t:null==t?[]:[t]}function co(t,e,n){if(t){t[e]=t[e]||{},t.emphasis=t.emphasis||{},t.emphasis[e]=t.emphasis[e]||{};for(var i=0,r=n.length;i<r;i++){var o=n[i];!t.emphasis[e].hasOwnProperty(o)&&t[e].hasOwnProperty(o)&&(t.emphasis[e][o]=t[e][o])}}}var po=["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 fo(t){return!q(t)||Y(t)||t instanceof Date?t:t.value}function go(t){return q(t)&&!(t instanceof Array)}function yo(t,e,n){var i="normalMerge"===n,r="replaceMerge"===n,o="replaceAll"===n;t=t||[],e=(e||[]).slice();var a=ft();E(e,(function(t,n){q(t)||(e[n]=null)}));var s,l,u=function(t,e,n){var i=[];if("replaceAll"===n)return i;for(var r=0;r<t.length;r++){var o=t[r];o&&null!=o.id&&e.set(o.id,r),i.push({existing:"replaceMerge"===n||bo(o)?null:o,newOption:null,keyInfo:null,brandNew:null})}return i}(t,a,n);return(i||r)&&function(t,e,n,i){E(i,(function(r,o){if(r&&null!=r.id){var a=mo(r.id),s=n.get(a);if(null!=s){var l=t[s];lt(!l.newOption,'Duplicated option on id "'+a+'".'),l.newOption=r,l.existing=e[s],i[o]=null}}}))}(u,t,a,e),i&&function(t,e){E(e,(function(n,i){if(n&&null!=n.name)for(var r=0;r<t.length;r++){var o=t[r].existing;if(!t[r].newOption&&o&&(null==o.id||null==n.id)&&!bo(n)&&!bo(o)&&vo("name",o,n))return t[r].newOption=n,void(e[i]=null)}}))}(u,e),i||r?function(t,e,n){E(e,(function(e){if(e){for(var i,r=0;(i=t[r])&&(i.newOption||bo(i.existing)||i.existing&&null!=e.id&&!vo("id",e,i.existing));)r++;i?(i.newOption=e,i.brandNew=n):t.push({newOption:e,brandNew:n,existing:null,keyInfo:null}),r++}}))}(u,e,r):o&&function(t,e){E(e,(function(e){t.push({newOption:e,brandNew:!0,existing:null,keyInfo:null})}))}(u,e),s=u,l=ft(),E(s,(function(t){var e=t.existing;e&&l.set(e.id,t)})),E(s,(function(t){var e=t.newOption;lt(!e||null==e.id||!l.get(e.id)||l.get(e.id)===t,"id duplicates: "+(e&&e.id)),e&&null!=e.id&&l.set(e.id,t),!t.keyInfo&&(t.keyInfo={})})),E(s,(function(t,e){var n=t.existing,i=t.newOption,r=t.keyInfo;if(q(i)){if(r.name=null!=i.name?mo(i.name):n?n.name:lo+e,n)r.id=mo(n.id);else if(null!=i.id)r.id=mo(i.id);else{var o=0;do{r.id="\0"+r.name+"\0"+o++}while(l.get(r.id))}l.set(r.id,t)}})),u}function vo(t,e,n){var i=xo(e[t],null),r=xo(n[t],null);return null!=i&&null!=r&&i===r}function mo(t){return xo(t,"")}function xo(t,e){return null==t?e:X(t)?t:j(t)||Z(t)?t+"":e}function _o(t){var e=t.name;return!(!e||!e.indexOf(lo))}function bo(t){return t&&null!=t.id&&0===mo(t.id).indexOf(uo)}function wo(t,e){return null!=e.dataIndexInside?e.dataIndexInside:null!=e.dataIndex?Y(e.dataIndex)?z(e.dataIndex,(function(e){return t.indexOfRawIndex(e)})):t.indexOfRawIndex(e.dataIndex):null!=e.name?Y(e.name)?z(e.name,(function(e){return t.indexOfName(e)})):t.indexOfName(e.name):void 0}function So(){var t="__ec_inner_"+Mo++;return function(e){return e[t]||(e[t]={})}}var Mo=no();function Io(t,e,n){var i=To(e,n),r=i.mainTypeSpecified,o=i.queryOptionMap,a=i.others,s=n?n.defaultMainType:null;return!r&&s&&o.set(s,{}),o.each((function(e,i){var r=Ao(t,i,e,{useDefault:s===i,enableAll:!n||null==n.enableAll||n.enableAll,enableNone:!n||null==n.enableNone||n.enableNone});a[i+"Models"]=r.models,a[i+"Model"]=r.models[0]})),a}function To(t,e){var n;if(X(t)){var i={};i[t+"Index"]=0,n=i}else n=t;var r=ft(),o={},a=!1;return E(n,(function(t,n){if("dataIndex"!==n&&"dataIndexInside"!==n){var i=n.match(/^(\w+)(Index|Id|Name)$/)||[],s=i[1],l=(i[2]||"").toLowerCase();if(s&&l&&!(e&&e.includeMainTypes&&P(e.includeMainTypes,s)<0))a=a||!!s,(r.get(s)||r.set(s,{}))[l]=t}else o[n]=t})),{mainTypeSpecified:a,queryOptionMap:r,others:o}}var Co={useDefault:!0,enableAll:!1,enableNone:!1},Do={useDefault:!1,enableAll:!0,enableNone:!0};function Ao(t,e,n,i){i=i||Co;var r=n.index,o=n.id,a=n.name,s={models:null,specified:null!=r||null!=o||null!=a};if(!s.specified){var l=void 0;return s.models=i.useDefault&&(l=t.getComponent(e))?[l]:[],s}return"none"===r||!1===r?(lt(i.enableNone,'`"none"` or `false` is not a valid value on index option.'),s.models=[],s):("all"===r&&(lt(i.enableAll,'`"all"` is not a valid value on index option.'),r=o=a=null),s.models=t.queryComponents({mainType:e,index:r,id:o,name:a}),s)}function ko(t,e,n){t.setAttribute?t.setAttribute(e,n):t[e]=n}function Lo(t,e){var n=ft(),i=[];return E(t,(function(t){var r=e(t);(n.get(r)||(i.push(r),n.set(r,[]))).push(t)})),{keys:i,buckets:n}}function Po(t,e,n,i,r){var o=null==e||"auto"===e;if(null==i)return i;if(j(i))return zr(f=so(n||0,i,r),o?Math.max(Br(n||0),Br(i)):e);if(X(i))return r<1?n:i;for(var a=[],s=n,l=i,u=Math.max(s?s.length:0,l.length),h=0;h<u;++h){var c=t.getDimensionInfo(h);if(c&&"ordinal"===c.type)a[h]=(r<1&&s?s:l)[h];else{var p=s&&s[h]?s[h]:0,d=l[h],f=so(p,d,r);a[h]=zr(f,o?Math.max(Br(p),Br(d)):e)}}return a}var Oo="___EC__COMPONENT__CONTAINER___",Ro="___EC__EXTENDED_CLASS___";function No(t){var e={main:"",sub:""};if(t){var n=t.split(".");e.main=n[0]||"",e.sub=n[1]||""}return e}function Eo(t,e){t.$constructor=t,t.extend=function(t){var e,i,r=this;return U(i=r)&&/^class\s/.test(Function.prototype.toString.call(i))?e=function(t){function e(){return t.apply(this,arguments)||this}return n(e,t),e}(r):O(e=function(){(t.$constructor||r).apply(this,arguments)},this),A(e.prototype,t),e[Ro]=!0,e.extend=this.extend,e.superCall=Bo,e.superApply=Fo,e.superClass=r,e}}function zo(t,e){t.extend=e.extend}var Vo=Math.round(10*Math.random());function Bo(t,e){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];return this.superClass.prototype[e].apply(t,n)}function Fo(t,e,n){return this.superClass.prototype[e].apply(t,n)}function Go(t){var e={};t.registerClass=function(t){var n,i=t.type||t.prototype.type;if(i){lt(/^[a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)?$/.test(n=i),'componentType "'+n+'" illegal'),t.prototype.type=i;var r=No(i);if(r.sub){if(r.sub!==Oo){(function(t){var n=e[t.main];n&&n[Oo]||((n=e[t.main]={})[Oo]=!0);return n}(r))[r.sub]=t}}else e[r.main]=t}return t},t.getClass=function(t,n,i){var r=e[t];if(r&&r[Oo]&&(r=n?r[n]:null),i&&!r)throw new Error(n?"Component "+t+"."+(n||"")+" is used but not imported.":t+".type should be specified.");return r},t.getClassesByMainType=function(t){var n=No(t),i=[],r=e[n.main];return r&&r[Oo]?E(r,(function(t,e){e!==Oo&&i.push(t)})):i.push(r),i},t.hasClass=function(t){var n=No(t);return!!e[n.main]},t.getAllClassMainTypes=function(){var t=[];return E(e,(function(e,n){t.push(n)})),t},t.hasSubTypes=function(t){var n=No(t),i=e[n.main];return i&&i[Oo]}}function Wo(t,e){for(var n=0;n<t.length;n++)t[n][1]||(t[n][1]=t[n][0]);return e=e||!1,function(n,i,r){for(var o={},a=0;a<t.length;a++){var s=t[a][1];if(!(i&&P(i,s)>=0||r&&P(r,s)<0)){var l=n.getShallow(s,e);null!=l&&(o[t[a][0]]=l)}}return o}}var Ho=Wo([["fill","color"],["shadowBlur"],["shadowOffsetX"],["shadowOffsetY"],["opacity"],["shadowColor"]]),Yo=function(){function t(){}return t.prototype.getAreaStyle=function(t,e){return Ho(this,t,e)},t}(),Uo=new ln(50);function Xo(t){if("string"==typeof t){var e=Uo.get(t);return e&&e.image}return t}function Zo(t,e,n,i,r){if(t){if("string"==typeof t){if(e&&e.__zrImageSrc===t||!n)return e;var o=Uo.get(t),a={hostEl:n,cb:i,cbPayload:r};if(o)!qo(e=o.image)&&o.pending.push(a);else{var s=h.loadImage(t,jo,jo);s.__zrImageSrc=t,Uo.put(t,s.__cachedImgObj={image:s,pending:[a]})}return e}return t}return e}function jo(){var t=this.__cachedImgObj;this.onload=this.onerror=this.__cachedImgObj=null;for(var e=0;e<t.pending.length;e++){var n=t.pending[e],i=n.cb;i&&i(this,n.cbPayload),n.hostEl.dirty()}t.pending.length=0}function qo(t){return t&&t.width&&t.height}var Ko=/\{([a-zA-Z0-9_]+)\|([^}]*)\}/g;function $o(t,e,n,i,r){if(!e)return"";var o=(t+"").split("\n");r=Jo(e,n,i,r);for(var a=0,s=o.length;a<s;a++)o[a]=Qo(o[a],r);return o.join("\n")}function Jo(t,e,n,i){var r=A({},i=i||{});r.font=e,n=rt(n,"..."),r.maxIterations=rt(i.maxIterations,2);var o=r.minChar=rt(i.minChar,0);r.cnCharWidth=ur("国",e);var a=r.ascCharWidth=ur("a",e);r.placeholder=rt(i.placeholder,"");for(var s=t=Math.max(0,t-1),l=0;l<o&&s>=a;l++)s-=a;var u=ur(n,e);return u>s&&(n="",u=0),s=t-u,r.ellipsis=n,r.ellipsisWidth=u,r.contentWidth=s,r.containerWidth=t,r}function Qo(t,e){var n=e.containerWidth,i=e.font,r=e.contentWidth;if(!n)return"";var o=ur(t,i);if(o<=n)return t;for(var a=0;;a++){if(o<=r||a>=e.maxIterations){t+=e.ellipsis;break}var s=0===a?ta(t,r,e.ascCharWidth,e.cnCharWidth):o>0?Math.floor(t.length*r/o):0;o=ur(t=t.substr(0,s),i)}return""===t&&(t=e.placeholder),t}function ta(t,e,n,i){for(var r=0,o=0,a=t.length;o<a&&r<e;o++){var s=t.charCodeAt(o);r+=0<=s&&s<=127?n:i}return o}var ea=function(){},na=function(t){this.tokens=[],t&&(this.tokens=t)},ia=function(){this.width=0,this.height=0,this.contentWidth=0,this.contentHeight=0,this.outerWidth=0,this.outerHeight=0,this.lines=[]};function ra(t,e,n,i,r){var o,a,s=""===e,l=r&&n.rich[r]||{},u=t.lines,h=l.font||n.font,c=!1;if(i){var p=l.padding,d=p?p[1]+p[3]:0;if(null!=l.width&&"auto"!==l.width){var f=gr(l.width,i.width)+d;u.length>0&&f+i.accumWidth>i.width&&(o=e.split("\n"),c=!0),i.accumWidth=f}else{var g=sa(e,h,i.width,i.breakAll,i.accumWidth);i.accumWidth=g.accumWidth+d,a=g.linesWidths,o=g.lines}}else o=e.split("\n");for(var y=0;y<o.length;y++){var v=o[y],m=new ea;if(m.styleName=r,m.text=v,m.isLineHolder=!v&&!s,"number"==typeof l.width?m.width=l.width:m.width=a?a[y]:ur(v,h),y||c)u.push(new na([m]));else{var x=(u[u.length-1]||(u[0]=new na)).tokens,_=x.length;1===_&&x[0].isLineHolder?x[0]=m:(v||!_||s)&&x.push(m)}}}var oa=V(",&?/;] ".split(""),(function(t,e){return t[e]=!0,t}),{});function aa(t){return!function(t){var e=t.charCodeAt(0);return e>=33&&e<=383}(t)||!!oa[t]}function sa(t,e,n,i,r){for(var o=[],a=[],s="",l="",u=0,h=0,c=0;c<t.length;c++){var p=t.charAt(c);if("\n"!==p){var d=ur(p,e),f=!i&&!aa(p);(o.length?h+d>n:r+h+d>n)?h?(s||l)&&(f?(s||(s=l,l="",h=u=0),o.push(s),a.push(h-u),l+=p,s="",h=u+=d):(l&&(s+=l,l="",u=0),o.push(s),a.push(h),s=p,h=d)):f?(o.push(l),a.push(u),l=p,u=d):(o.push(p),a.push(d)):(h+=d,f?(l+=p,u+=d):(l&&(s+=l,l="",u=0),s+=p))}else l&&(s+=l,h+=u),o.push(s),a.push(h),s="",l="",u=0,h=0}return o.length||s||(s=t,l="",u=0),l&&(s+=l),s&&(o.push(s),a.push(h)),1===o.length&&(h+=r),{accumWidth:h,lines:o,linesWidths:a}}var la="__zr_style_"+Math.round(10*Math.random()),ua={shadowBlur:0,shadowOffsetX:0,shadowOffsetY:0,shadowColor:"#000",opacity:1,blend:"source-over"},ha={style:{shadowBlur:!0,shadowOffsetX:!0,shadowOffsetY:!0,shadowColor:!0,opacity:!0}};ua[la]=!0;var ca=["z","z2","invisible"],pa=["invisible"],da=function(t){function e(e){return t.call(this,e)||this}var i;return n(e,t),e.prototype._init=function(e){for(var n=G(e),i=0;i<n.length;i++){var r=n[i];"style"===r?this.useStyle(e[r]):t.prototype.attrKV.call(this,r,e[r])}this.style||this.useStyle({})},e.prototype.beforeBrush=function(){},e.prototype.afterBrush=function(){},e.prototype.innerBeforeBrush=function(){},e.prototype.innerAfterBrush=function(){},e.prototype.shouldBePainted=function(t,e,n,i){var r=this.transform;if(this.ignore||this.invisible||0===this.style.opacity||this.culling&&function(t,e,n){fa.copy(t.getBoundingRect()),t.transform&&fa.applyTransform(t.transform);return ga.width=e,ga.height=n,!fa.intersect(ga)}(this,t,e)||r&&!r[0]&&!r[3])return!1;if(n&&this.__clipPaths)for(var o=0;o<this.__clipPaths.length;++o)if(this.__clipPaths[o].isZeroArea())return!1;if(i&&this.parent)for(var a=this.parent;a;){if(a.ignore)return!1;a=a.parent}return!0},e.prototype.contain=function(t,e){return this.rectContain(t,e)},e.prototype.traverse=function(t,e){t.call(e,this)},e.prototype.rectContain=function(t,e){var n=this.transformCoordToLocal(t,e);return this.getBoundingRect().contain(n[0],n[1])},e.prototype.getPaintRect=function(){var t=this._paintRect;if(!this._paintRect||this.__dirty){var e=this.transform,n=this.getBoundingRect(),i=this.style,r=i.shadowBlur||0,o=i.shadowOffsetX||0,a=i.shadowOffsetY||0;t=this._paintRect||(this._paintRect=new sr(0,0,0,0)),e?sr.applyTransform(t,n,e):t.copy(n),(r||o||a)&&(t.width+=2*r+Math.abs(o),t.height+=2*r+Math.abs(a),t.x=Math.min(t.x,t.x+o-r),t.y=Math.min(t.y,t.y+a-r));var s=this.dirtyRectTolerance;t.isZero()||(t.x=Math.floor(t.x-s),t.y=Math.floor(t.y-s),t.width=Math.ceil(t.width+1+2*s),t.height=Math.ceil(t.height+1+2*s))}return t},e.prototype.setPrevPaintRect=function(t){t?(this._prevPaintRect=this._prevPaintRect||new sr(0,0,0,0),this._prevPaintRect.copy(t)):this._prevPaintRect=null},e.prototype.getPrevPaintRect=function(){return this._prevPaintRect},e.prototype.animateStyle=function(t){return this.animate("style",t)},e.prototype.updateDuringAnimation=function(t){"style"===t?this.dirtyStyle():this.markRedraw()},e.prototype.attrKV=function(e,n){"style"!==e?t.prototype.attrKV.call(this,e,n):this.style?this.setStyle(n):this.useStyle(n)},e.prototype.setStyle=function(t,e){return"string"==typeof t?this.style[t]=e:A(this.style,t),this.dirtyStyle(),this},e.prototype.dirtyStyle=function(t){t||this.markRedraw(),this.__dirty|=2,this._rect&&(this._rect=null)},e.prototype.dirty=function(){this.dirtyStyle()},e.prototype.styleChanged=function(){return!!(2&this.__dirty)},e.prototype.styleUpdated=function(){this.__dirty&=-3},e.prototype.createStyle=function(t){return yt(ua,t)},e.prototype.useStyle=function(t){t[la]||(t=this.createStyle(t)),this.__inHover?this.__hoverStyle=t:this.style=t,this.dirtyStyle()},e.prototype.isStyleObject=function(t){return t[la]},e.prototype._innerSaveToNormal=function(e){t.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,ca)},e.prototype._applyStateObj=function(e,n,i,r,o,a){t.prototype._applyStateObj.call(this,e,n,i,r,o,a);var s,l=!(n&&r);if(n&&n.style?o?r?s=n.style:(s=this._mergeStyle(this.createStyle(),i.style),this._mergeStyle(s,n.style)):(s=this._mergeStyle(this.createStyle(),r?this.style:i.style),this._mergeStyle(s,n.style)):l&&(s=i.style),s)if(o){var u=this.style;if(this.style=this.createStyle(l?{}:u),l)for(var h=G(u),c=0;c<h.length;c++){(d=h[c])in s&&(s[d]=s[d],this.style[d]=u[d])}var p=G(s);for(c=0;c<p.length;c++){var d=p[c];this.style[d]=this.style[d]}this._transitionState(e,{style:s},a,this.getAnimationStyleProps())}else this.useStyle(s);var f=this.__inHover?pa:ca;for(c=0;c<f.length;c++){d=f[c];n&&null!=n[d]?this[d]=n[d]:l&&null!=i[d]&&(this[d]=i[d])}},e.prototype._mergeStates=function(e){for(var n,i=t.prototype._mergeStates.call(this,e),r=0;r<e.length;r++){var o=e[r];o.style&&(n=n||{},this._mergeStyle(n,o.style))}return n&&(i.style=n),i},e.prototype._mergeStyle=function(t,e){return A(t,e),t},e.prototype.getAnimationStyleProps=function(){return ha},e.initDefaultProps=((i=e.prototype).type="displayable",i.invisible=!1,i.z=0,i.z2=0,i.zlevel=0,i.culling=!1,i.cursor="pointer",i.rectHover=!1,i.incremental=!1,i._rect=null,i.dirtyRectTolerance=0,void(i.__dirty=3)),e}(wr),fa=new sr(0,0,0,0),ga=new sr(0,0,0,0);var ya=Math.min,va=Math.max,ma=Math.sin,xa=Math.cos,_a=2*Math.PI,ba=wt(),wa=wt(),Sa=wt();function Ma(t,e,n){if(0!==t.length){for(var i=t[0],r=i[0],o=i[0],a=i[1],s=i[1],l=1;l<t.length;l++)i=t[l],r=ya(r,i[0]),o=va(o,i[0]),a=ya(a,i[1]),s=va(s,i[1]);e[0]=r,e[1]=a,n[0]=o,n[1]=s}}function Ia(t,e,n,i,r,o){r[0]=ya(t,n),r[1]=ya(e,i),o[0]=va(t,n),o[1]=va(e,i)}var Ta=[],Ca=[];function Da(t,e,n,i,r,o,a,s,l,u){var h=Xe,c=He,p=h(t,n,r,a,Ta);l[0]=1/0,l[1]=1/0,u[0]=-1/0,u[1]=-1/0;for(var d=0;d<p;d++){var f=c(t,n,r,a,Ta[d]);l[0]=ya(f,l[0]),u[0]=va(f,u[0])}p=h(e,i,o,s,Ca);for(d=0;d<p;d++){var g=c(e,i,o,s,Ca[d]);l[1]=ya(g,l[1]),u[1]=va(g,u[1])}l[0]=ya(t,l[0]),u[0]=va(t,u[0]),l[0]=ya(a,l[0]),u[0]=va(a,u[0]),l[1]=ya(e,l[1]),u[1]=va(e,u[1]),l[1]=ya(s,l[1]),u[1]=va(s,u[1])}function Aa(t,e,n,i,r,o,a,s){var l=Je,u=Ke,h=va(ya(l(t,n,r),1),0),c=va(ya(l(e,i,o),1),0),p=u(t,n,r,h),d=u(e,i,o,c);a[0]=ya(t,r,p),a[1]=ya(e,o,d),s[0]=va(t,r,p),s[1]=va(e,o,d)}function ka(t,e,n,i,r,o,a,s,l){var u=Gt,h=Wt,c=Math.abs(r-o);if(c%_a<1e-4&&c>1e-4)return s[0]=t-n,s[1]=e-i,l[0]=t+n,void(l[1]=e+i);if(ba[0]=xa(r)*n+t,ba[1]=ma(r)*i+e,wa[0]=xa(o)*n+t,wa[1]=ma(o)*i+e,u(s,ba,wa),h(l,ba,wa),(r%=_a)<0&&(r+=_a),(o%=_a)<0&&(o+=_a),r>o&&!a?o+=_a:r<o&&a&&(r+=_a),a){var p=o;o=r,r=p}for(var d=0;d<o;d+=Math.PI/2)d>r&&(Sa[0]=xa(d)*n+t,Sa[1]=ma(d)*i+e,u(s,Sa,s),h(l,Sa,l))}var La={M:1,L:2,C:3,Q:4,A:5,Z:6,R:7},Pa=[],Oa=[],Ra=[],Na=[],Ea=[],za=[],Va=Math.min,Ba=Math.max,Fa=Math.cos,Ga=Math.sin,Wa=Math.abs,Ha=Math.PI,Ya=2*Ha,Ua="undefined"!=typeof Float32Array,Xa=[];function Za(t){return Math.round(t/Ha*1e8)/1e8%2*Ha}var ja=function(){function t(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 t.prototype.increaseVersion=function(){this._version++},t.prototype.getVersion=function(){return this._version},t.prototype.setScale=function(t,e,n){(n=n||0)>0&&(this._ux=Wa(n/Ai/t)||0,this._uy=Wa(n/Ai/e)||0)},t.prototype.setDPR=function(t){this.dpr=t},t.prototype.setContext=function(t){this._ctx=t},t.prototype.getContext=function(){return this._ctx},t.prototype.beginPath=function(){return this._ctx&&this._ctx.beginPath(),this.reset(),this},t.prototype.reset=function(){this._saveData&&(this._len=0),this._pathSegLen&&(this._pathSegLen=null,this._pathLen=0),this._version++},t.prototype.moveTo=function(t,e){return this._drawPendingPt(),this.addData(La.M,t,e),this._ctx&&this._ctx.moveTo(t,e),this._x0=t,this._y0=e,this._xi=t,this._yi=e,this},t.prototype.lineTo=function(t,e){var n=Wa(t-this._xi),i=Wa(e-this._yi),r=n>this._ux||i>this._uy;if(this.addData(La.L,t,e),this._ctx&&r&&this._ctx.lineTo(t,e),r)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},t.prototype.bezierCurveTo=function(t,e,n,i,r,o){return this._drawPendingPt(),this.addData(La.C,t,e,n,i,r,o),this._ctx&&this._ctx.bezierCurveTo(t,e,n,i,r,o),this._xi=r,this._yi=o,this},t.prototype.quadraticCurveTo=function(t,e,n,i){return this._drawPendingPt(),this.addData(La.Q,t,e,n,i),this._ctx&&this._ctx.quadraticCurveTo(t,e,n,i),this._xi=n,this._yi=i,this},t.prototype.arc=function(t,e,n,i,r,o){this._drawPendingPt(),Xa[0]=i,Xa[1]=r,function(t,e){var n=Za(t[0]);n<0&&(n+=Ya);var i=n-t[0],r=t[1];r+=i,!e&&r-n>=Ya?r=n+Ya:e&&n-r>=Ya?r=n-Ya:!e&&n>r?r=n+(Ya-Za(n-r)):e&&n<r&&(r=n-(Ya-Za(r-n))),t[0]=n,t[1]=r}(Xa,o),i=Xa[0];var a=(r=Xa[1])-i;return this.addData(La.A,t,e,n,n,i,a,0,o?0:1),this._ctx&&this._ctx.arc(t,e,n,i,r,o),this._xi=Fa(r)*n+t,this._yi=Ga(r)*n+e,this},t.prototype.arcTo=function(t,e,n,i,r){return this._drawPendingPt(),this._ctx&&this._ctx.arcTo(t,e,n,i,r),this},t.prototype.rect=function(t,e,n,i){return this._drawPendingPt(),this._ctx&&this._ctx.rect(t,e,n,i),this.addData(La.R,t,e,n,i),this},t.prototype.closePath=function(){this._drawPendingPt(),this.addData(La.Z);var t=this._ctx,e=this._x0,n=this._y0;return t&&t.closePath(),this._xi=e,this._yi=n,this},t.prototype.fill=function(t){t&&t.fill(),this.toStatic()},t.prototype.stroke=function(t){t&&t.stroke(),this.toStatic()},t.prototype.len=function(){return this._len},t.prototype.setData=function(t){var e=t.length;this.data&&this.data.length===e||!Ua||(this.data=new Float32Array(e));for(var n=0;n<e;n++)this.data[n]=t[n];this._len=e},t.prototype.appendPath=function(t){t instanceof Array||(t=[t]);for(var e=t.length,n=0,i=this._len,r=0;r<e;r++)n+=t[r].len();Ua&&this.data instanceof Float32Array&&(this.data=new Float32Array(i+n));for(r=0;r<e;r++)for(var o=t[r].data,a=0;a<o.length;a++)this.data[i++]=o[a];this._len=i},t.prototype.addData=function(t,e,n,i,r,o,a,s,l){if(this._saveData){var u=this.data;this._len+arguments.length>u.length&&(this._expandData(),u=this.data);for(var h=0;h<arguments.length;h++)u[this._len++]=arguments[h]}},t.prototype._drawPendingPt=function(){this._pendingPtDist>0&&(this._ctx&&this._ctx.lineTo(this._pendingPtX,this._pendingPtY),this._pendingPtDist=0)},t.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}},t.prototype.toStatic=function(){if(this._saveData){this._drawPendingPt();var t=this.data;t instanceof Array&&(t.length=this._len,Ua&&this._len>11&&(this.data=new Float32Array(t)))}},t.prototype.getBoundingRect=function(){Ra[0]=Ra[1]=Ea[0]=Ea[1]=Number.MAX_VALUE,Na[0]=Na[1]=za[0]=za[1]=-Number.MAX_VALUE;var t,e=this.data,n=0,i=0,r=0,o=0;for(t=0;t<this._len;){var a=e[t++],s=1===t;switch(s&&(r=n=e[t],o=i=e[t+1]),a){case La.M:n=r=e[t++],i=o=e[t++],Ea[0]=r,Ea[1]=o,za[0]=r,za[1]=o;break;case La.L:Ia(n,i,e[t],e[t+1],Ea,za),n=e[t++],i=e[t++];break;case La.C:Da(n,i,e[t++],e[t++],e[t++],e[t++],e[t],e[t+1],Ea,za),n=e[t++],i=e[t++];break;case La.Q:Aa(n,i,e[t++],e[t++],e[t],e[t+1],Ea,za),n=e[t++],i=e[t++];break;case La.A:var l=e[t++],u=e[t++],h=e[t++],c=e[t++],p=e[t++],d=e[t++]+p;t+=1;var f=!e[t++];s&&(r=Fa(p)*h+l,o=Ga(p)*c+u),ka(l,u,h,c,p,d,f,Ea,za),n=Fa(d)*h+l,i=Ga(d)*c+u;break;case La.R:Ia(r=n=e[t++],o=i=e[t++],r+e[t++],o+e[t++],Ea,za);break;case La.Z:n=r,i=o}Gt(Ra,Ra,Ea),Wt(Na,Na,za)}return 0===t&&(Ra[0]=Ra[1]=Na[0]=Na[1]=0),new sr(Ra[0],Ra[1],Na[0]-Ra[0],Na[1]-Ra[1])},t.prototype._calculateLength=function(){var t=this.data,e=this._len,n=this._ux,i=this._uy,r=0,o=0,a=0,s=0;this._pathSegLen||(this._pathSegLen=[]);for(var l=this._pathSegLen,u=0,h=0,c=0;c<e;){var p=t[c++],d=1===c;d&&(a=r=t[c],s=o=t[c+1]);var f=-1;switch(p){case La.M:r=a=t[c++],o=s=t[c++];break;case La.L:var g=t[c++],y=(x=t[c++])-o;(Wa(A=g-r)>n||Wa(y)>i||c===e-1)&&(f=Math.sqrt(A*A+y*y),r=g,o=x);break;case La.C:var v=t[c++],m=t[c++],x=(g=t[c++],t[c++]),_=t[c++],b=t[c++];f=qe(r,o,v,m,g,x,_,b,10),r=_,o=b;break;case La.Q:f=en(r,o,v=t[c++],m=t[c++],g=t[c++],x=t[c++],10),r=g,o=x;break;case La.A:var w=t[c++],S=t[c++],M=t[c++],I=t[c++],T=t[c++],C=t[c++],D=C+T;c+=1;t[c++];d&&(a=Fa(T)*M+w,s=Ga(T)*I+S),f=Ba(M,I)*Va(Ya,Math.abs(C)),r=Fa(D)*M+w,o=Ga(D)*I+S;break;case La.R:a=r=t[c++],s=o=t[c++],f=2*t[c++]+2*t[c++];break;case La.Z:var A=a-r;y=s-o;f=Math.sqrt(A*A+y*y),r=a,o=s}f>=0&&(l[h++]=f,u+=f)}return this._pathLen=u,u},t.prototype.rebuildPath=function(t,e){var n,i,r,o,a,s,l,u,h,c,p=this.data,d=this._ux,f=this._uy,g=this._len,y=e<1,v=0,m=0,x=0;if(!y||(this._pathSegLen||this._calculateLength(),l=this._pathSegLen,u=e*this._pathLen))t:for(var _=0;_<g;){var b=p[_++],w=1===_;switch(w&&(n=r=p[_],i=o=p[_+1]),b!==La.L&&x>0&&(t.lineTo(h,c),x=0),b){case La.M:n=r=p[_++],i=o=p[_++],t.moveTo(r,o);break;case La.L:a=p[_++],s=p[_++];var S=Wa(a-r),M=Wa(s-o);if(S>d||M>f){if(y){if(v+(j=l[m++])>u){var I=(u-v)/j;t.lineTo(r*(1-I)+a*I,o*(1-I)+s*I);break t}v+=j}t.lineTo(a,s),r=a,o=s,x=0}else{var T=S*S+M*M;T>x&&(h=a,c=s,x=T)}break;case La.C:var C=p[_++],D=p[_++],A=p[_++],k=p[_++],L=p[_++],P=p[_++];if(y){if(v+(j=l[m++])>u){Ze(r,C,A,L,I=(u-v)/j,Pa),Ze(o,D,k,P,I,Oa),t.bezierCurveTo(Pa[1],Oa[1],Pa[2],Oa[2],Pa[3],Oa[3]);break t}v+=j}t.bezierCurveTo(C,D,A,k,L,P),r=L,o=P;break;case La.Q:C=p[_++],D=p[_++],A=p[_++],k=p[_++];if(y){if(v+(j=l[m++])>u){Qe(r,C,A,I=(u-v)/j,Pa),Qe(o,D,k,I,Oa),t.quadraticCurveTo(Pa[1],Oa[1],Pa[2],Oa[2]);break t}v+=j}t.quadraticCurveTo(C,D,A,k),r=A,o=k;break;case La.A:var O=p[_++],R=p[_++],N=p[_++],E=p[_++],z=p[_++],V=p[_++],B=p[_++],F=!p[_++],G=N>E?N:E,W=Wa(N-E)>.001,H=z+V,Y=!1;if(y)v+(j=l[m++])>u&&(H=z+V*(u-v)/j,Y=!0),v+=j;if(W&&t.ellipse?t.ellipse(O,R,N,E,B,z,H,F):t.arc(O,R,G,z,H,F),Y)break t;w&&(n=Fa(z)*N+O,i=Ga(z)*E+R),r=Fa(H)*N+O,o=Ga(H)*E+R;break;case La.R:n=r=p[_],i=o=p[_+1],a=p[_++],s=p[_++];var U=p[_++],X=p[_++];if(y){if(v+(j=l[m++])>u){var Z=u-v;t.moveTo(a,s),t.lineTo(a+Va(Z,U),s),(Z-=U)>0&&t.lineTo(a+U,s+Va(Z,X)),(Z-=X)>0&&t.lineTo(a+Ba(U-Z,0),s+X),(Z-=U)>0&&t.lineTo(a,s+Ba(X-Z,0));break t}v+=j}t.rect(a,s,U,X);break;case La.Z:if(y){var j;if(v+(j=l[m++])>u){I=(u-v)/j;t.lineTo(r*(1-I)+n*I,o*(1-I)+i*I);break t}v+=j}t.closePath(),r=n,o=i}}},t.prototype.clone=function(){var e=new t,n=this.data;return e.data=n.slice?n.slice():Array.prototype.slice.call(n),e._len=this._len,e},t.CMD=La,t.initDefaultProps=function(){var e=t.prototype;e._saveData=!0,e._ux=0,e._uy=0,e._pendingPtDist=0,e._version=0}(),t}();function qa(t,e,n,i,r,o,a){if(0===r)return!1;var s=r,l=0;if(a>e+s&&a>i+s||a<e-s&&a<i-s||o>t+s&&o>n+s||o<t-s&&o<n-s)return!1;if(t===n)return Math.abs(o-t)<=s/2;var u=(l=(e-i)/(t-n))*o-a+(t*i-n*e)/(t-n);return u*u/(l*l+1)<=s/2*s/2}function Ka(t,e,n,i,r,o,a,s,l,u,h){if(0===l)return!1;var c=l;return!(h>e+c&&h>i+c&&h>o+c&&h>s+c||h<e-c&&h<i-c&&h<o-c&&h<s-c||u>t+c&&u>n+c&&u>r+c&&u>a+c||u<t-c&&u<n-c&&u<r-c&&u<a-c)&&je(t,e,n,i,r,o,a,s,u,h,null)<=c/2}function $a(t,e,n,i,r,o,a,s,l){if(0===a)return!1;var u=a;return!(l>e+u&&l>i+u&&l>o+u||l<e-u&&l<i-u&&l<o-u||s>t+u&&s>n+u&&s>r+u||s<t-u&&s<n-u&&s<r-u)&&tn(t,e,n,i,r,o,s,l,null)<=u/2}var Ja=2*Math.PI;function Qa(t){return(t%=Ja)<0&&(t+=Ja),t}var ts=2*Math.PI;function es(t,e,n,i,r,o,a,s,l){if(0===a)return!1;var u=a;s-=t,l-=e;var h=Math.sqrt(s*s+l*l);if(h-u>n||h+u<n)return!1;if(Math.abs(i-r)%ts<1e-4)return!0;if(o){var c=i;i=Qa(r),r=Qa(c)}else i=Qa(i),r=Qa(r);i>r&&(r+=ts);var p=Math.atan2(l,s);return p<0&&(p+=ts),p>=i&&p<=r||p+ts>=i&&p+ts<=r}function ns(t,e,n,i,r,o){if(o>e&&o>i||o<e&&o<i)return 0;if(i===e)return 0;var a=(o-e)/(i-e),s=i<e?1:-1;1!==a&&0!==a||(s=i<e?.5:-.5);var l=a*(n-t)+t;return l===r?1/0:l>r?s:0}var is=ja.CMD,rs=2*Math.PI;var os=[-1,-1,-1],as=[-1,-1];function ss(t,e,n,i,r,o,a,s,l,u){if(u>e&&u>i&&u>o&&u>s||u<e&&u<i&&u<o&&u<s)return 0;var h,c=Ue(e,i,o,s,u,os);if(0===c)return 0;for(var p=0,d=-1,f=void 0,g=void 0,y=0;y<c;y++){var v=os[y],m=0===v||1===v?.5:1;He(t,n,r,a,v)<l||(d<0&&(d=Xe(e,i,o,s,as),as[1]<as[0]&&d>1&&(h=void 0,h=as[0],as[0]=as[1],as[1]=h),f=He(e,i,o,s,as[0]),d>1&&(g=He(e,i,o,s,as[1]))),2===d?v<as[0]?p+=f<e?m:-m:v<as[1]?p+=g<f?m:-m:p+=s<g?m:-m:v<as[0]?p+=f<e?m:-m:p+=s<f?m:-m)}return p}function ls(t,e,n,i,r,o,a,s){if(s>e&&s>i&&s>o||s<e&&s<i&&s<o)return 0;var l=function(t,e,n,i,r){var o=t-2*e+n,a=2*(e-t),s=t-i,l=0;if(Ge(o))We(a)&&(h=-s/a)>=0&&h<=1&&(r[l++]=h);else{var u=a*a-4*o*s;if(Ge(u))(h=-a/(2*o))>=0&&h<=1&&(r[l++]=h);else if(u>0){var h,c=Oe(u),p=(-a-c)/(2*o);(h=(-a+c)/(2*o))>=0&&h<=1&&(r[l++]=h),p>=0&&p<=1&&(r[l++]=p)}}return l}(e,i,o,s,os);if(0===l)return 0;var u=Je(e,i,o);if(u>=0&&u<=1){for(var h=0,c=Ke(e,i,o,u),p=0;p<l;p++){var d=0===os[p]||1===os[p]?.5:1;Ke(t,n,r,os[p])<a||(os[p]<u?h+=c<e?d:-d:h+=o<c?d:-d)}return h}d=0===os[0]||1===os[0]?.5:1;return Ke(t,n,r,os[0])<a?0:o<e?d:-d}function us(t,e,n,i,r,o,a,s){if((s-=e)>n||s<-n)return 0;var l=Math.sqrt(n*n-s*s);os[0]=-l,os[1]=l;var u=Math.abs(i-r);if(u<1e-4)return 0;if(u>=rs-1e-4){i=0,r=rs;var h=o?1:-1;return a>=os[0]+t&&a<=os[1]+t?h:0}if(i>r){var c=i;i=r,r=c}i<0&&(i+=rs,r+=rs);for(var p=0,d=0;d<2;d++){var f=os[d];if(f+t>a){var g=Math.atan2(s,f);h=o?1:-1;g<0&&(g=rs+g),(g>=i&&g<=r||g+rs>=i&&g+rs<=r)&&(g>Math.PI/2&&g<1.5*Math.PI&&(h=-h),p+=h)}}return p}function hs(t,e,n,i,r){for(var o,a,s,l,u=t.data,h=t.len(),c=0,p=0,d=0,f=0,g=0,y=0;y<h;){var v=u[y++],m=1===y;switch(v===is.M&&y>1&&(n||(c+=ns(p,d,f,g,i,r))),m&&(f=p=u[y],g=d=u[y+1]),v){case is.M:p=f=u[y++],d=g=u[y++];break;case is.L:if(n){if(qa(p,d,u[y],u[y+1],e,i,r))return!0}else c+=ns(p,d,u[y],u[y+1],i,r)||0;p=u[y++],d=u[y++];break;case is.C:if(n){if(Ka(p,d,u[y++],u[y++],u[y++],u[y++],u[y],u[y+1],e,i,r))return!0}else c+=ss(p,d,u[y++],u[y++],u[y++],u[y++],u[y],u[y+1],i,r)||0;p=u[y++],d=u[y++];break;case is.Q:if(n){if($a(p,d,u[y++],u[y++],u[y],u[y+1],e,i,r))return!0}else c+=ls(p,d,u[y++],u[y++],u[y],u[y+1],i,r)||0;p=u[y++],d=u[y++];break;case is.A:var x=u[y++],_=u[y++],b=u[y++],w=u[y++],S=u[y++],M=u[y++];y+=1;var I=!!(1-u[y++]);o=Math.cos(S)*b+x,a=Math.sin(S)*w+_,m?(f=o,g=a):c+=ns(p,d,o,a,i,r);var T=(i-x)*w/b+x;if(n){if(es(x,_,w,S,S+M,I,e,T,r))return!0}else c+=us(x,_,w,S,S+M,I,T,r);p=Math.cos(S+M)*b+x,d=Math.sin(S+M)*w+_;break;case is.R:if(f=p=u[y++],g=d=u[y++],o=f+u[y++],a=g+u[y++],n){if(qa(f,g,o,g,e,i,r)||qa(o,g,o,a,e,i,r)||qa(o,a,f,a,e,i,r)||qa(f,a,f,g,e,i,r))return!0}else c+=ns(o,g,o,a,i,r),c+=ns(f,a,f,g,i,r);break;case is.Z:if(n){if(qa(p,d,f,g,e,i,r))return!0}else c+=ns(p,d,f,g,i,r);p=f,d=g}}return n||(s=d,l=g,Math.abs(s-l)<1e-4)||(c+=ns(p,d,f,g,i,r)||0),0!==c}var cs=k({fill:"#000",stroke:null,strokePercent:1,fillOpacity:1,strokeOpacity:1,lineDashOffset:0,lineWidth:1,lineCap:"butt",miterLimit:10,strokeNoScale:!1,strokeFirst:!1},ua),ps={style:k({fill:!0,stroke:!0,strokePercent:!0,fillOpacity:!0,strokeOpacity:!0,lineDashOffset:!0,lineWidth:!0,miterLimit:!0},ha.style)},ds=Ki.concat(["invisible","culling","z","z2","zlevel","parent"]),fs=function(t){function e(e){return t.call(this,e)||this}var i;return n(e,t),e.prototype.update=function(){var n=this;t.prototype.update.call(this);var i=this.style;if(i.decal){var r=this._decalEl=this._decalEl||new e;r.buildPath===e.prototype.buildPath&&(r.buildPath=function(t){n.buildPath(t,n.shape)}),r.silent=!0;var o=r.style;for(var a in i)o[a]!==i[a]&&(o[a]=i[a]);o.fill=i.fill?i.decal:null,o.decal=null,o.shadowColor=null,i.strokeFirst&&(o.stroke=null);for(var s=0;s<ds.length;++s)r[ds[s]]=this[ds[s]];r.__dirty|=1}else this._decalEl&&(this._decalEl=null)},e.prototype.getDecalElement=function(){return this._decalEl},e.prototype._init=function(e){var n=G(e);this.shape=this.getDefaultShape();var i=this.getDefaultStyle();i&&this.useStyle(i);for(var r=0;r<n.length;r++){var o=n[r],a=e[o];"style"===o?this.style?A(this.style,a):this.useStyle(a):"shape"===o?A(this.shape,a):t.prototype.attrKV.call(this,o,a)}this.style||this.useStyle({})},e.prototype.getDefaultStyle=function(){return null},e.prototype.getDefaultShape=function(){return{}},e.prototype.canBeInsideText=function(){return this.hasFill()},e.prototype.getInsideTextFill=function(){var t=this.style.fill;if("none"!==t){if(X(t)){var e=Ln(t,0);return e>.5?ki:e>.2?"#eee":Li}if(t)return Li}return ki},e.prototype.getInsideTextStroke=function(t){var e=this.style.fill;if(X(e)){var n=this.__zr;if(!(!n||!n.isDarkMode())===Ln(t,0)<.4)return e}},e.prototype.buildPath=function(t,e,n){},e.prototype.pathUpdated=function(){this.__dirty&=-5},e.prototype.getUpdatedPathProxy=function(t){return!this.path&&this.createPathProxy(),this.path.beginPath(),this.buildPath(this.path,this.shape,t),this.path},e.prototype.createPathProxy=function(){this.path=new ja(!1)},e.prototype.hasStroke=function(){var t=this.style,e=t.stroke;return!(null==e||"none"===e||!(t.lineWidth>0))},e.prototype.hasFill=function(){var t=this.style.fill;return null!=t&&"none"!==t},e.prototype.getBoundingRect=function(){var t=this._rect,e=this.style,n=!t;if(n){var i=!1;this.path||(i=!0,this.createPathProxy());var r=this.path;(i||4&this.__dirty)&&(r.beginPath(),this.buildPath(r,this.shape,!1),this.pathUpdated()),t=r.getBoundingRect()}if(this._rect=t,this.hasStroke()&&this.path&&this.path.len()>0){var o=this._rectStroke||(this._rectStroke=t.clone());if(this.__dirty||n){o.copy(t);var a=e.strokeNoScale?this.getLineScale():1,s=e.lineWidth;if(!this.hasFill()){var l=this.strokeContainThreshold;s=Math.max(s,null==l?4:l)}a>1e-10&&(o.width+=s/a,o.height+=s/a,o.x-=s/a/2,o.y-=s/a/2)}return o}return t},e.prototype.contain=function(t,e){var n=this.transformCoordToLocal(t,e),i=this.getBoundingRect(),r=this.style;if(t=n[0],e=n[1],i.contain(t,e)){var o=this.path;if(this.hasStroke()){var a=r.lineWidth,s=r.strokeNoScale?this.getLineScale():1;if(s>1e-10&&(this.hasFill()||(a=Math.max(a,this.strokeContainThreshold)),function(t,e,n,i){return hs(t,e,!0,n,i)}(o,a/s,t,e)))return!0}if(this.hasFill())return function(t,e,n){return hs(t,0,!1,e,n)}(o,t,e)}return!1},e.prototype.dirtyShape=function(){this.__dirty|=4,this._rect&&(this._rect=null),this._decalEl&&this._decalEl.dirtyShape(),this.markRedraw()},e.prototype.dirty=function(){this.dirtyStyle(),this.dirtyShape()},e.prototype.animateShape=function(t){return this.animate("shape",t)},e.prototype.updateDuringAnimation=function(t){"style"===t?this.dirtyStyle():"shape"===t?this.dirtyShape():this.markRedraw()},e.prototype.attrKV=function(e,n){"shape"===e?this.setShape(n):t.prototype.attrKV.call(this,e,n)},e.prototype.setShape=function(t,e){var n=this.shape;return n||(n=this.shape={}),"string"==typeof t?n[t]=e:A(n,t),this.dirtyShape(),this},e.prototype.shapeChanged=function(){return!!(4&this.__dirty)},e.prototype.createStyle=function(t){return yt(cs,t)},e.prototype._innerSaveToNormal=function(e){t.prototype._innerSaveToNormal.call(this,e);var n=this._normalState;e.shape&&!n.shape&&(n.shape=A({},this.shape))},e.prototype._applyStateObj=function(e,n,i,r,o,a){t.prototype._applyStateObj.call(this,e,n,i,r,o,a);var s,l=!(n&&r);if(n&&n.shape?o?r?s=n.shape:(s=A({},i.shape),A(s,n.shape)):(s=A({},r?this.shape:i.shape),A(s,n.shape)):l&&(s=i.shape),s)if(o){this.shape=A({},this.shape);for(var u={},h=G(s),c=0;c<h.length;c++){var p=h[c];"object"==typeof s[p]?this.shape[p]=s[p]:u[p]=s[p]}this._transitionState(e,{shape:u},a)}else this.shape=s,this.dirtyShape()},e.prototype._mergeStates=function(e){for(var n,i=t.prototype._mergeStates.call(this,e),r=0;r<e.length;r++){var o=e[r];o.shape&&(n=n||{},this._mergeStyle(n,o.shape))}return n&&(i.shape=n),i},e.prototype.getAnimationStyleProps=function(){return ps},e.prototype.isZeroArea=function(){return!1},e.extend=function(t){var i=function(e){function i(n){var i=e.call(this,n)||this;return t.init&&t.init.call(i,n),i}return n(i,e),i.prototype.getDefaultStyle=function(){return T(t.style)},i.prototype.getDefaultShape=function(){return T(t.shape)},i}(e);for(var r in t)"function"==typeof t[r]&&(i.prototype[r]=t[r]);return i},e.initDefaultProps=((i=e.prototype).type="path",i.strokeContainThreshold=5,i.segmentIgnoreThreshold=0,i.subPixelOptimize=!1,i.autoBatch=!1,void(i.__dirty=7)),e}(da),gs=k({strokeFirst:!0,font:a,x:0,y:0,textAlign:"left",textBaseline:"top",miterLimit:2},cs),ys=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.hasStroke=function(){var t=this.style,e=t.stroke;return null!=e&&"none"!==e&&t.lineWidth>0},e.prototype.hasFill=function(){var t=this.style.fill;return null!=t&&"none"!==t},e.prototype.createStyle=function(t){return yt(gs,t)},e.prototype.setBoundingRect=function(t){this._rect=t},e.prototype.getBoundingRect=function(){var t=this.style;if(!this._rect){var e=t.text;null!=e?e+="":e="";var n=cr(e,t.font,t.textAlign,t.textBaseline);if(n.x+=t.x||0,n.y+=t.y||0,this.hasStroke()){var i=t.lineWidth;n.x-=i/2,n.y-=i/2,n.width+=i,n.height+=i}this._rect=n}return this._rect},e.initDefaultProps=void(e.prototype.dirtyRectTolerance=10),e}(da);ys.prototype.type="tspan";var vs=k({x:0,y:0},ua),ms={style:k({x:!0,y:!0,width:!0,height:!0,sx:!0,sy:!0,sWidth:!0,sHeight:!0},ha.style)};var xs=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.createStyle=function(t){return yt(vs,t)},e.prototype._getSize=function(t){var e=this.style,n=e[t];if(null!=n)return n;var i,r=(i=e.image)&&"string"!=typeof i&&i.width&&i.height?e.image:this.__image;if(!r)return 0;var o="width"===t?"height":"width",a=e[o];return null==a?r[t]:r[t]/r[o]*a},e.prototype.getWidth=function(){return this._getSize("width")},e.prototype.getHeight=function(){return this._getSize("height")},e.prototype.getAnimationStyleProps=function(){return ms},e.prototype.getBoundingRect=function(){var t=this.style;return this._rect||(this._rect=new sr(t.x||0,t.y||0,this.getWidth(),this.getHeight())),this._rect},e}(da);xs.prototype.type="image";var _s=Math.round;function bs(t,e,n){if(e){var i=e.x1,r=e.x2,o=e.y1,a=e.y2;t.x1=i,t.x2=r,t.y1=o,t.y2=a;var s=n&&n.lineWidth;return s?(_s(2*i)===_s(2*r)&&(t.x1=t.x2=Ss(i,s,!0)),_s(2*o)===_s(2*a)&&(t.y1=t.y2=Ss(o,s,!0)),t):t}}function ws(t,e,n){if(e){var i=e.x,r=e.y,o=e.width,a=e.height;t.x=i,t.y=r,t.width=o,t.height=a;var s=n&&n.lineWidth;return s?(t.x=Ss(i,s,!0),t.y=Ss(r,s,!0),t.width=Math.max(Ss(i+o,s,!1)-t.x,0===o?0:1),t.height=Math.max(Ss(r+a,s,!1)-t.y,0===a?0:1),t):t}}function Ss(t,e,n){if(!e)return t;var i=_s(2*t);return(i+_s(e))%2==0?i/2:(i+(n?1:-1))/2}var Ms=function(){this.x=0,this.y=0,this.width=0,this.height=0},Is={},Ts=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultShape=function(){return new Ms},e.prototype.buildPath=function(t,e){var n,i,r,o;if(this.subPixelOptimize){var a=ws(Is,e,this.style);n=a.x,i=a.y,r=a.width,o=a.height,a.r=e.r,e=a}else n=e.x,i=e.y,r=e.width,o=e.height;e.r?function(t,e){var n,i,r,o,a,s=e.x,l=e.y,u=e.width,h=e.height,c=e.r;u<0&&(s+=u,u=-u),h<0&&(l+=h,h=-h),"number"==typeof c?n=i=r=o=c:c instanceof Array?1===c.length?n=i=r=o=c[0]:2===c.length?(n=r=c[0],i=o=c[1]):3===c.length?(n=c[0],i=o=c[1],r=c[2]):(n=c[0],i=c[1],r=c[2],o=c[3]):n=i=r=o=0,n+i>u&&(n*=u/(a=n+i),i*=u/a),r+o>u&&(r*=u/(a=r+o),o*=u/a),i+r>h&&(i*=h/(a=i+r),r*=h/a),n+o>h&&(n*=h/(a=n+o),o*=h/a),t.moveTo(s+n,l),t.lineTo(s+u-i,l),0!==i&&t.arc(s+u-i,l+i,i,-Math.PI/2,0),t.lineTo(s+u,l+h-r),0!==r&&t.arc(s+u-r,l+h-r,r,0,Math.PI/2),t.lineTo(s+o,l+h),0!==o&&t.arc(s+o,l+h-o,o,Math.PI/2,Math.PI),t.lineTo(s,l+n),0!==n&&t.arc(s+n,l+n,n,Math.PI,1.5*Math.PI)}(t,e):t.rect(n,i,r,o)},e.prototype.isZeroArea=function(){return!this.shape.width||!this.shape.height},e}(fs);Ts.prototype.type="rect";var Cs={fill:"#000"},Ds={style:k({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},ha.style)},As=function(t){function e(e){var n=t.call(this)||this;return n.type="text",n._children=[],n._defaultStyle=Cs,n.attr(e),n}return n(e,t),e.prototype.childrenRef=function(){return this._children},e.prototype.update=function(){t.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}},e.prototype.updateTransform=function(){var e=this.innerTransformable;e?(e.updateTransform(),e.transform&&(this.transform=e.transform)):t.prototype.updateTransform.call(this)},e.prototype.getLocalTransform=function(e){var n=this.innerTransformable;return n?n.getLocalTransform(e):t.prototype.getLocalTransform.call(this,e)},e.prototype.getComputedTransform=function(){return this.__hostTarget&&(this.__hostTarget.getComputedTransform(),this.__hostTarget.updateInnerText(!0)),t.prototype.getComputedTransform.call(this)},e.prototype._updateSubTexts=function(){var t;this._childCursor=0,Es(t=this.style),E(t.rich,Es),this.style.rich?this._updateRichTexts():this._updatePlainTexts(),this._children.length=this._childCursor,this.styleUpdated()},e.prototype.addSelfToZr=function(e){t.prototype.addSelfToZr.call(this,e);for(var n=0;n<this._children.length;n++)this._children[n].__zr=e},e.prototype.removeSelfFromZr=function(e){t.prototype.removeSelfFromZr.call(this,e);for(var n=0;n<this._children.length;n++)this._children[n].__zr=null},e.prototype.getBoundingRect=function(){if(this.styleChanged()&&this._updateSubTexts(),!this._rect){for(var t=new sr(0,0,0,0),e=this._children,n=[],i=null,r=0;r<e.length;r++){var o=e[r],a=o.getBoundingRect(),s=o.getLocalTransform(n);s?(t.copy(a),t.applyTransform(s),(i=i||t.clone()).union(t)):(i=i||a.clone()).union(a)}this._rect=i||t}return this._rect},e.prototype.setDefaultTextStyle=function(t){this._defaultStyle=t||Cs},e.prototype.setTextContent=function(t){0},e.prototype._mergeStyle=function(t,e){if(!e)return t;var n=e.rich,i=t.rich||n&&{};return A(t,e),n&&i?(this._mergeRich(i,n),t.rich=i):i&&(t.rich=i),t},e.prototype._mergeRich=function(t,e){for(var n=G(e),i=0;i<n.length;i++){var r=n[i];t[r]=t[r]||{},A(t[r],e[r])}},e.prototype.getAnimationStyleProps=function(){return Ds},e.prototype._getOrCreateChild=function(t){var e=this._children[this._childCursor];return e&&e instanceof t||(e=new t),this._children[this._childCursor++]=e,e.__zr=this.__zr,e.parent=this,e},e.prototype._updatePlainTexts=function(){var t=this.style,e=t.font||a,n=t.padding,i=function(t,e){null!=t&&(t+="");var n,i=e.overflow,r=e.padding,o=e.font,a="truncate"===i,s=fr(o),l=rt(e.lineHeight,s),u=!!e.backgroundColor,h="truncate"===e.lineOverflow,c=e.width,p=(n=null==c||"break"!==i&&"breakAll"!==i?t?t.split("\n"):[]:t?sa(t,e.font,c,"breakAll"===i,0).lines:[]).length*l,d=rt(e.height,p);if(p>d&&h){var f=Math.floor(d/l);n=n.slice(0,f)}if(t&&a&&null!=c)for(var g=Jo(c,o,e.ellipsis,{minChar:e.truncateMinChar,placeholder:e.placeholder}),y=0;y<n.length;y++)n[y]=Qo(n[y],g);var v=d,m=0;for(y=0;y<n.length;y++)m=Math.max(ur(n[y],o),m);null==c&&(c=m);var x=m;return r&&(v+=r[0]+r[2],x+=r[1]+r[3],c+=r[1]+r[3]),u&&(x=c),{lines:n,height:d,outerWidth:x,outerHeight:v,lineHeight:l,calculatedLineHeight:s,contentWidth:m,contentHeight:p,width:c}}(Fs(t),t),r=Gs(t),o=!!t.backgroundColor,s=i.outerHeight,l=i.outerWidth,u=i.contentWidth,h=i.lines,c=i.lineHeight,p=this._defaultStyle,d=t.x||0,f=t.y||0,g=t.align||p.align||"left",y=t.verticalAlign||p.verticalAlign||"top",v=d,m=dr(f,i.contentHeight,y);if(r||n){var x=pr(d,l,g),_=dr(f,s,y);r&&this._renderBackground(t,t,x,_,l,s)}m+=c/2,n&&(v=Bs(d,g,n),"top"===y?m+=n[0]:"bottom"===y&&(m-=n[2]));for(var b=0,w=!1,S=(Vs("fill"in t?t.fill:(w=!0,p.fill))),M=(zs("stroke"in t?t.stroke:o||p.autoStroke&&!w?null:(b=2,p.stroke))),I=t.textShadowBlur>0,T=null!=t.width&&("truncate"===t.overflow||"break"===t.overflow||"breakAll"===t.overflow),C=i.calculatedLineHeight,D=0;D<h.length;D++){var A=this._getOrCreateChild(ys),k=A.createStyle();A.useStyle(k),k.text=h[D],k.x=v,k.y=m,g&&(k.textAlign=g),k.textBaseline="middle",k.opacity=t.opacity,k.strokeFirst=!0,I&&(k.shadowBlur=t.textShadowBlur||0,k.shadowColor=t.textShadowColor||"transparent",k.shadowOffsetX=t.textShadowOffsetX||0,k.shadowOffsetY=t.textShadowOffsetY||0),k.stroke=M,k.fill=S,M&&(k.lineWidth=t.lineWidth||b,k.lineDash=t.lineDash,k.lineDashOffset=t.lineDashOffset||0),k.font=e,Rs(k,t),m+=c,T&&A.setBoundingRect(new sr(pr(k.x,t.width,k.textAlign),dr(k.y,C,k.textBaseline),u,C))}},e.prototype._updateRichTexts=function(){var t=this.style,e=function(t,e){var n=new ia;if(null!=t&&(t+=""),!t)return n;for(var i,r=e.width,o=e.height,a=e.overflow,s="break"!==a&&"breakAll"!==a||null==r?null:{width:r,accumWidth:0,breakAll:"breakAll"===a},l=Ko.lastIndex=0;null!=(i=Ko.exec(t));){var u=i.index;u>l&&ra(n,t.substring(l,u),e,s),ra(n,i[2],e,s,i[1]),l=Ko.lastIndex}l<t.length&&ra(n,t.substring(l,t.length),e,s);var h=[],c=0,p=0,d=e.padding,f="truncate"===a,g="truncate"===e.lineOverflow;function y(t,e,n){t.width=e,t.lineHeight=n,c+=n,p=Math.max(p,e)}t:for(var v=0;v<n.lines.length;v++){for(var m=n.lines[v],x=0,_=0,b=0;b<m.tokens.length;b++){var w=(P=m.tokens[b]).styleName&&e.rich[P.styleName]||{},S=P.textPadding=w.padding,M=S?S[1]+S[3]:0,I=P.font=w.font||e.font;P.contentHeight=fr(I);var T=rt(w.height,P.contentHeight);if(P.innerHeight=T,S&&(T+=S[0]+S[2]),P.height=T,P.lineHeight=ot(w.lineHeight,e.lineHeight,T),P.align=w&&w.align||e.align,P.verticalAlign=w&&w.verticalAlign||"middle",g&&null!=o&&c+P.lineHeight>o){b>0?(m.tokens=m.tokens.slice(0,b),y(m,_,x),n.lines=n.lines.slice(0,v+1)):n.lines=n.lines.slice(0,v);break t}var C=w.width,D=null==C||"auto"===C;if("string"==typeof C&&"%"===C.charAt(C.length-1))P.percentWidth=C,h.push(P),P.contentWidth=ur(P.text,I);else{if(D){var A=w.backgroundColor,k=A&&A.image;k&&qo(k=Xo(k))&&(P.width=Math.max(P.width,k.width*T/k.height))}var L=f&&null!=r?r-_:null;null!=L&&L<P.width?!D||L<M?(P.text="",P.width=P.contentWidth=0):(P.text=$o(P.text,L-M,I,e.ellipsis,{minChar:e.truncateMinChar}),P.width=P.contentWidth=ur(P.text,I)):P.contentWidth=ur(P.text,I)}P.width+=M,_+=P.width,w&&(x=Math.max(x,P.lineHeight))}y(m,_,x)}for(n.outerWidth=n.width=rt(r,p),n.outerHeight=n.height=rt(o,c),n.contentHeight=c,n.contentWidth=p,d&&(n.outerWidth+=d[1]+d[3],n.outerHeight+=d[0]+d[2]),v=0;v<h.length;v++){var P,O=(P=h[v]).percentWidth;P.width=parseInt(O,10)/100*n.width}return n}(Fs(t),t),n=e.width,i=e.outerWidth,r=e.outerHeight,o=t.padding,a=t.x||0,s=t.y||0,l=this._defaultStyle,u=t.align||l.align,h=t.verticalAlign||l.verticalAlign,c=pr(a,i,u),p=dr(s,r,h),d=c,f=p;o&&(d+=o[3],f+=o[0]);var g=d+n;Gs(t)&&this._renderBackground(t,t,c,p,i,r);for(var y=!!t.backgroundColor,v=0;v<e.lines.length;v++){for(var m=e.lines[v],x=m.tokens,_=x.length,b=m.lineHeight,w=m.width,S=0,M=d,I=g,T=_-1,C=void 0;S<_&&(!(C=x[S]).align||"left"===C.align);)this._placeToken(C,t,b,f,M,"left",y),w-=C.width,M+=C.width,S++;for(;T>=0&&"right"===(C=x[T]).align;)this._placeToken(C,t,b,f,I,"right",y),w-=C.width,I-=C.width,T--;for(M+=(n-(M-d)-(g-I)-w)/2;S<=T;)C=x[S],this._placeToken(C,t,b,f,M+C.width/2,"center",y),M+=C.width,S++;f+=b}},e.prototype._placeToken=function(t,e,n,i,r,o,s){var l=e.rich[t.styleName]||{};l.text=t.text;var u=t.verticalAlign,h=i+n/2;"top"===u?h=i+t.height/2:"bottom"===u&&(h=i+n-t.height/2),!t.isLineHolder&&Gs(l)&&this._renderBackground(l,e,"right"===o?r-t.width:"center"===o?r-t.width/2:r,h-t.height/2,t.width,t.height);var c=!!l.backgroundColor,p=t.textPadding;p&&(r=Bs(r,o,p),h-=t.height/2-p[0]-t.innerHeight/2);var d=this._getOrCreateChild(ys),f=d.createStyle();d.useStyle(f);var g=this._defaultStyle,y=!1,v=0,m=Vs("fill"in l?l.fill:"fill"in e?e.fill:(y=!0,g.fill)),x=zs("stroke"in l?l.stroke:"stroke"in e?e.stroke:c||s||g.autoStroke&&!y?null:(v=2,g.stroke)),_=l.textShadowBlur>0||e.textShadowBlur>0;f.text=t.text,f.x=r,f.y=h,_&&(f.shadowBlur=l.textShadowBlur||e.textShadowBlur||0,f.shadowColor=l.textShadowColor||e.textShadowColor||"transparent",f.shadowOffsetX=l.textShadowOffsetX||e.textShadowOffsetX||0,f.shadowOffsetY=l.textShadowOffsetY||e.textShadowOffsetY||0),f.textAlign=o,f.textBaseline="middle",f.font=t.font||a,f.opacity=ot(l.opacity,e.opacity,1),Rs(f,l),x&&(f.lineWidth=ot(l.lineWidth,e.lineWidth,v),f.lineDash=rt(l.lineDash,e.lineDash),f.lineDashOffset=e.lineDashOffset||0,f.stroke=x),m&&(f.fill=m);var b=t.contentWidth,w=t.contentHeight;d.setBoundingRect(new sr(pr(f.x,b,f.textAlign),dr(f.y,w,f.textBaseline),b,w))},e.prototype._renderBackground=function(t,e,n,i,r,o){var a,s,l,u=t.backgroundColor,h=t.borderWidth,c=t.borderColor,p=u&&u.image,d=u&&!p,f=t.borderRadius,g=this;if(d||t.lineHeight||h&&c){(a=this._getOrCreateChild(Ts)).useStyle(a.createStyle()),a.style.fill=null;var y=a.shape;y.x=n,y.y=i,y.width=r,y.height=o,y.r=f,a.dirtyShape()}if(d)(l=a.style).fill=u||null,l.fillOpacity=rt(t.fillOpacity,1);else if(p){(s=this._getOrCreateChild(xs)).onload=function(){g.dirtyStyle()};var v=s.style;v.image=u.image,v.x=n,v.y=i,v.width=r,v.height=o}h&&c&&((l=a.style).lineWidth=h,l.stroke=c,l.strokeOpacity=rt(t.strokeOpacity,1),l.lineDash=t.borderDash,l.lineDashOffset=t.borderDashOffset||0,a.strokeContainThreshold=0,a.hasFill()&&a.hasStroke()&&(l.strokeFirst=!0,l.lineWidth*=2));var m=(a||s).style;m.shadowBlur=t.shadowBlur||0,m.shadowColor=t.shadowColor||"transparent",m.shadowOffsetX=t.shadowOffsetX||0,m.shadowOffsetY=t.shadowOffsetY||0,m.opacity=ot(t.opacity,e.opacity,1)},e.makeFont=function(t){var e="";return Ns(t)&&(e=[t.fontStyle,t.fontWeight,Os(t.fontSize),t.fontFamily||"sans-serif"].join(" ")),e&&ut(e)||t.textFont||t.font},e}(da),ks={left:!0,right:1,center:1},Ls={top:1,bottom:1,middle:1},Ps=["fontStyle","fontWeight","fontSize","fontFamily"];function Os(t){return"string"!=typeof t||-1===t.indexOf("px")&&-1===t.indexOf("rem")&&-1===t.indexOf("em")?isNaN(+t)?"12px":t+"px":t}function Rs(t,e){for(var n=0;n<Ps.length;n++){var i=Ps[n],r=e[i];null!=r&&(t[i]=r)}}function Ns(t){return null!=t.fontSize||t.fontFamily||t.fontWeight}function Es(t){if(t){t.font=As.makeFont(t);var e=t.align;"middle"===e&&(e="center"),t.align=null==e||ks[e]?e:"left";var n=t.verticalAlign;"center"===n&&(n="middle"),t.verticalAlign=null==n||Ls[n]?n:"top",t.padding&&(t.padding=st(t.padding))}}function zs(t,e){return null==t||e<=0||"transparent"===t||"none"===t?null:t.image||t.colorStops?"#000":t}function Vs(t){return null==t||"none"===t?null:t.image||t.colorStops?"#000":t}function Bs(t,e,n){return"right"===e?t-n[1]:"center"===e?t+n[3]/2-n[1]/2:t+n[3]}function Fs(t){var e=t.text;return null!=e&&(e+=""),e}function Gs(t){return!!(t.backgroundColor||t.lineHeight||t.borderWidth&&t.borderColor)}var Ws=So(),Hs=function(t,e,n,i){if(i){var r=Ws(i);r.dataIndex=n,r.dataType=e,r.seriesIndex=t,"group"===i.type&&i.traverse((function(i){var r=Ws(i);r.seriesIndex=t,r.dataIndex=n,r.dataType=e}))}},Ys=1,Us={},Xs=So(),Zs=So(),js=["emphasis","blur","select"],qs=["normal","emphasis","blur","select"],Ks=10,$s="highlight",Js="downplay",Qs="select",tl="unselect",el="toggleSelect";function nl(t){return null!=t&&"none"!==t}var il=new ln(100);function rl(t){if(X(t)){var e=il.get(t);return e||(e=Sn(t,-.1),il.put(t,e)),e}if(Q(t)){var n=A({},t);return n.colorStops=z(t.colorStops,(function(t){return{offset:t.offset,color:Sn(t.color,-.1)}})),n}return t}function ol(t,e,n){t.onHoverStateChange&&(t.hoverState||0)!==n&&t.onHoverStateChange(e),t.hoverState=n}function al(t){ol(t,"emphasis",2)}function sl(t){2===t.hoverState&&ol(t,"normal",0)}function ll(t){ol(t,"blur",1)}function ul(t){1===t.hoverState&&ol(t,"normal",0)}function hl(t){t.selected=!0}function cl(t){t.selected=!1}function pl(t,e,n){e(t,n)}function dl(t,e,n){pl(t,e,n),t.isGroup&&t.traverse((function(t){pl(t,e,n)}))}function fl(t,e){switch(e){case"emphasis":t.hoverState=2;break;case"normal":t.hoverState=0;break;case"blur":t.hoverState=1;break;case"select":t.selected=!0}}function gl(t,e){var n=this.states[t];if(this.style){if("emphasis"===t)return function(t,e,n,i){var r=n&&P(n,"select")>=0,o=!1;if(t instanceof fs){var a=Xs(t),s=r&&a.selectFill||a.normalFill,l=r&&a.selectStroke||a.normalStroke;if(nl(s)||nl(l)){var u=(i=i||{}).style||{};"inherit"===u.fill?(o=!0,i=A({},i),(u=A({},u)).fill=s):!nl(u.fill)&&nl(s)?(o=!0,i=A({},i),(u=A({},u)).fill=rl(s)):!nl(u.stroke)&&nl(l)&&(o||(i=A({},i),u=A({},u)),u.stroke=rl(l)),i.style=u}}if(i&&null==i.z2){o||(i=A({},i));var h=t.z2EmphasisLift;i.z2=t.z2+(null!=h?h:Ks)}return i}(this,0,e,n);if("blur"===t)return function(t,e,n){var i=P(t.currentStates,e)>=0,r=t.style.opacity,o=i?null:function(t,e,n,i){for(var r=t.style,o={},a=0;a<e.length;a++){var s=e[a],l=r[s];o[s]=null==l?i&&i[s]:l}for(a=0;a<t.animators.length;a++){var u=t.animators[a];u.__fromStateTransition&&u.__fromStateTransition.indexOf(n)<0&&"style"===u.targetName&&u.saveTo(o,e)}return o}(t,["opacity"],e,{opacity:1}),a=(n=n||{}).style||{};return null==a.opacity&&(n=A({},n),a=A({opacity:i?r:.1*o.opacity},a),n.style=a),n}(this,t,n);if("select"===t)return function(t,e,n){if(n&&null==n.z2){n=A({},n);var i=t.z2SelectLift;n.z2=t.z2+(null!=i?i:9)}return n}(this,0,n)}return n}function yl(t){t.stateProxy=gl;var e=t.getTextContent(),n=t.getTextGuideLine();e&&(e.stateProxy=gl),n&&(n.stateProxy=gl)}function vl(t,e){!Il(t,e)&&!t.__highByOuter&&dl(t,al)}function ml(t,e){!Il(t,e)&&!t.__highByOuter&&dl(t,sl)}function xl(t,e){t.__highByOuter|=1<<(e||0),dl(t,al)}function _l(t,e){!(t.__highByOuter&=~(1<<(e||0)))&&dl(t,sl)}function bl(t){dl(t,ll)}function wl(t){dl(t,ul)}function Sl(t){dl(t,hl)}function Ml(t){dl(t,cl)}function Il(t,e){return t.__highDownSilentOnTouch&&e.zrByTouch}function Tl(t){t.getModel().eachComponent((function(e,n){var i=Zs(n);i.isBlured&&("series"===e?t.getViewOfSeriesModel(n):t.getViewOfComponentModel(n)).group.traverse((function(t){ul(t)}));i.isBlured=!1}))}function Cl(t,e,n,i){var r=i.getModel();function o(t,e){for(var n=0;n<e.length;n++){var i=t.getItemGraphicEl(e[n]);i&&wl(i)}}if(n=n||"coordinateSystem",null!=t&&e&&"none"!==e){var a=r.getSeriesByIndex(t),s=a.coordinateSystem;s&&s.master&&(s=s.master);var l=[];r.eachSeries((function(t){var r=a===t,u=t.coordinateSystem;if(u&&u.master&&(u=u.master),!("series"===n&&!r||"coordinateSystem"===n&&!(u&&s?u===s:r)||"series"===e&&r)){if(i.getViewOfSeriesModel(t).group.traverse((function(t){ll(t)})),N(e))o(t.getData(),e);else if(q(e))for(var h=G(e),c=0;c<h.length;c++)o(t.getData(h[c]),e[h[c]]);l.push(t),Zs(t).isBlured=!0}})),r.eachComponent((function(t,e){if("series"!==t){var n=i.getViewOfComponentModel(e);n&&n.blurSeries&&n.blurSeries(l,r)}}))}}function Dl(t,e,n){if(null!=t&&null!=e){var i=n.getModel().getComponent(t,e);if(i){Zs(i).isBlured=!0;var r=n.getViewOfComponentModel(i);r&&r.focusBlurEnabled&&r.group.traverse((function(t){ll(t)}))}}}function Al(t,e,n,i){var r={focusSelf:!1,dispatchers:null};if(null==t||"series"===t||null==e||null==n)return r;var o=i.getModel().getComponent(t,e);if(!o)return r;var a=i.getViewOfComponentModel(o);if(!a||!a.findHighDownDispatchers)return r;for(var s,l=a.findHighDownDispatchers(n),u=0;u<l.length;u++)if("self"===Ws(l[u]).focus){s=!0;break}return{focusSelf:s,dispatchers:l}}function kl(t){E(t.getAllData(),(function(e){var n=e.data,i=e.type;n.eachItemGraphicEl((function(e,n){t.isSelected(n,i)?Sl(e):Ml(e)}))}))}function Ll(t){var e=[];return t.eachSeries((function(t){E(t.getAllData(),(function(n){n.data;var i=n.type,r=t.getSelectedDataIndices();if(r.length>0){var o={dataIndex:r,seriesIndex:t.seriesIndex};null!=i&&(o.dataType=i),e.push(o)}}))})),e}function Pl(t,e,n){Vl(t,!0),dl(t,yl),Rl(t,e,n)}function Ol(t,e,n,i){i?function(t){Vl(t,!1)}(t):Pl(t,e,n)}function Rl(t,e,n){var i=Ws(t);null!=e?(i.focus=e,i.blurScope=n):i.focus&&(i.focus=null)}var Nl=["emphasis","blur","select"],El={itemStyle:"getItemStyle",lineStyle:"getLineStyle",areaStyle:"getAreaStyle"};function zl(t,e,n,i){n=n||"itemStyle";for(var r=0;r<Nl.length;r++){var o=Nl[r],a=e.getModel([o,n]);t.ensureState(o).style=i?i(a):a[El[n]]()}}function Vl(t,e){var n=!1===e,i=t;t.highDownSilentOnTouch&&(i.__highDownSilentOnTouch=t.highDownSilentOnTouch),n&&!i.__highDownDispatcher||(i.__highByOuter=i.__highByOuter||0,i.__highDownDispatcher=!n)}function Bl(t){return!(!t||!t.__highDownDispatcher)}function Fl(t){var e=t.type;return e===Qs||e===tl||e===el}function Gl(t){var e=t.type;return e===$s||e===Js}var Wl=ja.CMD,Hl=[[],[],[]],Yl=Math.sqrt,Ul=Math.atan2;function Xl(t,e){if(e){var n,i,r,o,a,s,l=t.data,u=t.len(),h=Wl.M,c=Wl.C,p=Wl.L,d=Wl.R,f=Wl.A,g=Wl.Q;for(r=0,o=0;r<u;){switch(n=l[r++],o=r,i=0,n){case h:case p:i=1;break;case c:i=3;break;case g:i=2;break;case f:var y=e[4],v=e[5],m=Yl(e[0]*e[0]+e[1]*e[1]),x=Yl(e[2]*e[2]+e[3]*e[3]),_=Ul(-e[1]/x,e[0]/m);l[r]*=m,l[r++]+=y,l[r]*=x,l[r++]+=v,l[r++]*=m,l[r++]*=x,l[r++]+=_,l[r++]+=_,o=r+=2;break;case d:s[0]=l[r++],s[1]=l[r++],Ft(s,s,e),l[o++]=s[0],l[o++]=s[1],s[0]+=l[r++],s[1]+=l[r++],Ft(s,s,e),l[o++]=s[0],l[o++]=s[1]}for(a=0;a<i;a++){var b=Hl[a];b[0]=l[r++],b[1]=l[r++],Ft(b,b,e),l[o++]=b[0],l[o++]=b[1]}}t.increaseVersion()}}var Zl=Math.sqrt,jl=Math.sin,ql=Math.cos,Kl=Math.PI;function $l(t){return Math.sqrt(t[0]*t[0]+t[1]*t[1])}function Jl(t,e){return(t[0]*e[0]+t[1]*e[1])/($l(t)*$l(e))}function Ql(t,e){return(t[0]*e[1]<t[1]*e[0]?-1:1)*Math.acos(Jl(t,e))}function tu(t,e,n,i,r,o,a,s,l,u,h){var c=l*(Kl/180),p=ql(c)*(t-n)/2+jl(c)*(e-i)/2,d=-1*jl(c)*(t-n)/2+ql(c)*(e-i)/2,f=p*p/(a*a)+d*d/(s*s);f>1&&(a*=Zl(f),s*=Zl(f));var g=(r===o?-1:1)*Zl((a*a*(s*s)-a*a*(d*d)-s*s*(p*p))/(a*a*(d*d)+s*s*(p*p)))||0,y=g*a*d/s,v=g*-s*p/a,m=(t+n)/2+ql(c)*y-jl(c)*v,x=(e+i)/2+jl(c)*y+ql(c)*v,_=Ql([1,0],[(p-y)/a,(d-v)/s]),b=[(p-y)/a,(d-v)/s],w=[(-1*p-y)/a,(-1*d-v)/s],S=Ql(b,w);if(Jl(b,w)<=-1&&(S=Kl),Jl(b,w)>=1&&(S=0),S<0){var M=Math.round(S/Kl*1e6)/1e6;S=2*Kl+M%2*Kl}h.addData(u,m,x,a,s,_,S,c,o)}var eu=/([mlvhzcqtsa])([^mlvhzcqtsa]*)/gi,nu=/-?([0-9]*\.)?[0-9]+([eE]-?[0-9]+)?/g;var iu=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.applyTransform=function(t){},e}(fs);function ru(t){return null!=t.setData}function ou(t,e){var n=function(t){var e=new ja;if(!t)return e;var n,i=0,r=0,o=i,a=r,s=ja.CMD,l=t.match(eu);if(!l)return e;for(var u=0;u<l.length;u++){for(var h=l[u],c=h.charAt(0),p=void 0,d=h.match(nu)||[],f=d.length,g=0;g<f;g++)d[g]=parseFloat(d[g]);for(var y=0;y<f;){var v=void 0,m=void 0,x=void 0,_=void 0,b=void 0,w=void 0,S=void 0,M=i,I=r,T=void 0,C=void 0;switch(c){case"l":i+=d[y++],r+=d[y++],p=s.L,e.addData(p,i,r);break;case"L":i=d[y++],r=d[y++],p=s.L,e.addData(p,i,r);break;case"m":i+=d[y++],r+=d[y++],p=s.M,e.addData(p,i,r),o=i,a=r,c="l";break;case"M":i=d[y++],r=d[y++],p=s.M,e.addData(p,i,r),o=i,a=r,c="L";break;case"h":i+=d[y++],p=s.L,e.addData(p,i,r);break;case"H":i=d[y++],p=s.L,e.addData(p,i,r);break;case"v":r+=d[y++],p=s.L,e.addData(p,i,r);break;case"V":r=d[y++],p=s.L,e.addData(p,i,r);break;case"C":p=s.C,e.addData(p,d[y++],d[y++],d[y++],d[y++],d[y++],d[y++]),i=d[y-2],r=d[y-1];break;case"c":p=s.C,e.addData(p,d[y++]+i,d[y++]+r,d[y++]+i,d[y++]+r,d[y++]+i,d[y++]+r),i+=d[y-2],r+=d[y-1];break;case"S":v=i,m=r,T=e.len(),C=e.data,n===s.C&&(v+=i-C[T-4],m+=r-C[T-3]),p=s.C,M=d[y++],I=d[y++],i=d[y++],r=d[y++],e.addData(p,v,m,M,I,i,r);break;case"s":v=i,m=r,T=e.len(),C=e.data,n===s.C&&(v+=i-C[T-4],m+=r-C[T-3]),p=s.C,M=i+d[y++],I=r+d[y++],i+=d[y++],r+=d[y++],e.addData(p,v,m,M,I,i,r);break;case"Q":M=d[y++],I=d[y++],i=d[y++],r=d[y++],p=s.Q,e.addData(p,M,I,i,r);break;case"q":M=d[y++]+i,I=d[y++]+r,i+=d[y++],r+=d[y++],p=s.Q,e.addData(p,M,I,i,r);break;case"T":v=i,m=r,T=e.len(),C=e.data,n===s.Q&&(v+=i-C[T-4],m+=r-C[T-3]),i=d[y++],r=d[y++],p=s.Q,e.addData(p,v,m,i,r);break;case"t":v=i,m=r,T=e.len(),C=e.data,n===s.Q&&(v+=i-C[T-4],m+=r-C[T-3]),i+=d[y++],r+=d[y++],p=s.Q,e.addData(p,v,m,i,r);break;case"A":x=d[y++],_=d[y++],b=d[y++],w=d[y++],S=d[y++],tu(M=i,I=r,i=d[y++],r=d[y++],w,S,x,_,b,p=s.A,e);break;case"a":x=d[y++],_=d[y++],b=d[y++],w=d[y++],S=d[y++],tu(M=i,I=r,i+=d[y++],r+=d[y++],w,S,x,_,b,p=s.A,e)}}"z"!==c&&"Z"!==c||(p=s.Z,e.addData(p),i=o,r=a),n=p}return e.toStatic(),e}(t),i=A({},e);return i.buildPath=function(t){if(ru(t)){t.setData(n.data),(e=t.getContext())&&t.rebuildPath(e,1)}else{var e=t;n.rebuildPath(e,1)}},i.applyTransform=function(t){Xl(n,t),this.dirtyShape()},i}function au(t,e){return new iu(ou(t,e))}function su(t,e){e=e||{};var n=new fs;return t.shape&&n.setShape(t.shape),n.setStyle(t.style),e.bakeTransform?Xl(n.path,t.getComputedTransform()):e.toLocal?n.setLocalTransform(t.getComputedTransform()):n.copyTransform(t),n.buildPath=t.buildPath,n.applyTransform=n.applyTransform,n.z=t.z,n.z2=t.z2,n.zlevel=t.zlevel,n}var lu=function(){this.cx=0,this.cy=0,this.r=0},uu=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultShape=function(){return new lu},e.prototype.buildPath=function(t,e){t.moveTo(e.cx+e.r,e.cy),t.arc(e.cx,e.cy,e.r,0,2*Math.PI)},e}(fs);uu.prototype.type="circle";var hu=function(){this.cx=0,this.cy=0,this.rx=0,this.ry=0},cu=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultShape=function(){return new hu},e.prototype.buildPath=function(t,e){var n=.5522848,i=e.cx,r=e.cy,o=e.rx,a=e.ry,s=o*n,l=a*n;t.moveTo(i-o,r),t.bezierCurveTo(i-o,r-l,i-s,r-a,i,r-a),t.bezierCurveTo(i+s,r-a,i+o,r-l,i+o,r),t.bezierCurveTo(i+o,r+l,i+s,r+a,i,r+a),t.bezierCurveTo(i-s,r+a,i-o,r+l,i-o,r),t.closePath()},e}(fs);cu.prototype.type="ellipse";var pu=Math.PI,du=2*pu,fu=Math.sin,gu=Math.cos,yu=Math.acos,vu=Math.atan2,mu=Math.abs,xu=Math.sqrt,_u=Math.max,bu=Math.min,wu=1e-4;function Su(t,e,n,i,r,o,a){var s=t-n,l=e-i,u=(a?o:-o)/xu(s*s+l*l),h=u*l,c=-u*s,p=t+h,d=e+c,f=n+h,g=i+c,y=(p+f)/2,v=(d+g)/2,m=f-p,x=g-d,_=m*m+x*x,b=r-o,w=p*g-f*d,S=(x<0?-1:1)*xu(_u(0,b*b*_-w*w)),M=(w*x-m*S)/_,I=(-w*m-x*S)/_,T=(w*x+m*S)/_,C=(-w*m+x*S)/_,D=M-y,A=I-v,k=T-y,L=C-v;return D*D+A*A>k*k+L*L&&(M=T,I=C),{cx:M,cy:I,x0:-h,y0:-c,x1:M*(r/b-1),y1:I*(r/b-1)}}function Mu(t,e){var n,i=_u(e.r,0),r=_u(e.r0||0,0),o=i>0;if(o||r>0){if(o||(i=r,r=0),r>i){var a=i;i=r,r=a}var s=e.startAngle,l=e.endAngle;if(!isNaN(s)&&!isNaN(l)){var u=e.cx,h=e.cy,c=!!e.clockwise,p=mu(l-s),d=p>du&&p%du;if(d>wu&&(p=d),i>wu)if(p>du-wu)t.moveTo(u+i*gu(s),h+i*fu(s)),t.arc(u,h,i,s,l,!c),r>wu&&(t.moveTo(u+r*gu(l),h+r*fu(l)),t.arc(u,h,r,l,s,c));else{var f=void 0,g=void 0,y=void 0,v=void 0,m=void 0,x=void 0,_=void 0,b=void 0,w=void 0,S=void 0,M=void 0,I=void 0,T=void 0,C=void 0,D=void 0,A=void 0,k=i*gu(s),L=i*fu(s),P=r*gu(l),O=r*fu(l),R=p>wu;if(R){var N=e.cornerRadius;N&&(f=(n=function(t){var e;if(Y(t)){var n=t.length;if(!n)return t;e=1===n?[t[0],t[0],0,0]:2===n?[t[0],t[0],t[1],t[1]]:3===n?t.concat(t[2]):t}else e=[t,t,t,t];return e}(N))[0],g=n[1],y=n[2],v=n[3]);var E=mu(i-r)/2;if(m=bu(E,y),x=bu(E,v),_=bu(E,f),b=bu(E,g),M=w=_u(m,x),I=S=_u(_,b),(w>wu||S>wu)&&(T=i*gu(l),C=i*fu(l),D=r*gu(s),A=r*fu(s),p<pu)){var z=function(t,e,n,i,r,o,a,s){var l=n-t,u=i-e,h=a-r,c=s-o,p=c*l-h*u;if(!(p*p<wu))return[t+(p=(h*(e-o)-c*(t-r))/p)*l,e+p*u]}(k,L,D,A,T,C,P,O);if(z){var V=k-z[0],B=L-z[1],F=T-z[0],G=C-z[1],W=1/fu(yu((V*F+B*G)/(xu(V*V+B*B)*xu(F*F+G*G)))/2),H=xu(z[0]*z[0]+z[1]*z[1]);M=bu(w,(i-H)/(W+1)),I=bu(S,(r-H)/(W-1))}}}if(R)if(M>wu){var U=bu(y,M),X=bu(v,M),Z=Su(D,A,k,L,i,U,c),j=Su(T,C,P,O,i,X,c);t.moveTo(u+Z.cx+Z.x0,h+Z.cy+Z.y0),M<w&&U===X?t.arc(u+Z.cx,h+Z.cy,M,vu(Z.y0,Z.x0),vu(j.y0,j.x0),!c):(U>0&&t.arc(u+Z.cx,h+Z.cy,U,vu(Z.y0,Z.x0),vu(Z.y1,Z.x1),!c),t.arc(u,h,i,vu(Z.cy+Z.y1,Z.cx+Z.x1),vu(j.cy+j.y1,j.cx+j.x1),!c),X>0&&t.arc(u+j.cx,h+j.cy,X,vu(j.y1,j.x1),vu(j.y0,j.x0),!c))}else t.moveTo(u+k,h+L),t.arc(u,h,i,s,l,!c);else t.moveTo(u+k,h+L);if(r>wu&&R)if(I>wu){U=bu(f,I),Z=Su(P,O,T,C,r,-(X=bu(g,I)),c),j=Su(k,L,D,A,r,-U,c);t.lineTo(u+Z.cx+Z.x0,h+Z.cy+Z.y0),I<S&&U===X?t.arc(u+Z.cx,h+Z.cy,I,vu(Z.y0,Z.x0),vu(j.y0,j.x0),!c):(X>0&&t.arc(u+Z.cx,h+Z.cy,X,vu(Z.y0,Z.x0),vu(Z.y1,Z.x1),!c),t.arc(u,h,r,vu(Z.cy+Z.y1,Z.cx+Z.x1),vu(j.cy+j.y1,j.cx+j.x1),c),U>0&&t.arc(u+j.cx,h+j.cy,U,vu(j.y1,j.x1),vu(j.y0,j.x0),!c))}else t.lineTo(u+P,h+O),t.arc(u,h,r,l,s,c);else t.lineTo(u+P,h+O)}else t.moveTo(u,h);t.closePath()}}}var Iu=function(){this.cx=0,this.cy=0,this.r0=0,this.r=0,this.startAngle=0,this.endAngle=2*Math.PI,this.clockwise=!0,this.cornerRadius=0},Tu=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultShape=function(){return new Iu},e.prototype.buildPath=function(t,e){Mu(t,e)},e.prototype.isZeroArea=function(){return this.shape.startAngle===this.shape.endAngle||this.shape.r===this.shape.r0},e}(fs);Tu.prototype.type="sector";var Cu=function(){this.cx=0,this.cy=0,this.r=0,this.r0=0},Du=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultShape=function(){return new Cu},e.prototype.buildPath=function(t,e){var n=e.cx,i=e.cy,r=2*Math.PI;t.moveTo(n+e.r,i),t.arc(n,i,e.r,0,r,!1),t.moveTo(n+e.r0,i),t.arc(n,i,e.r0,0,r,!0)},e}(fs);function Au(t,e,n){var i=e.smooth,r=e.points;if(r&&r.length>=2){if(i){var o=function(t,e,n,i){var r,o,a,s,l=[],u=[],h=[],c=[];if(i){a=[1/0,1/0],s=[-1/0,-1/0];for(var p=0,d=t.length;p<d;p++)Gt(a,a,t[p]),Wt(s,s,t[p]);Gt(a,a,i[0]),Wt(s,s,i[1])}for(p=0,d=t.length;p<d;p++){var f=t[p];if(n)r=t[p?p-1:d-1],o=t[(p+1)%d];else{if(0===p||p===d-1){l.push(Mt(t[p]));continue}r=t[p-1],o=t[p+1]}Dt(u,o,r),Ot(u,u,e);var g=Nt(f,r),y=Nt(f,o),v=g+y;0!==v&&(g/=v,y/=v),Ot(h,u,-g),Ot(c,u,y);var m=Tt([],f,h),x=Tt([],f,c);i&&(Wt(m,m,a),Gt(m,m,s),Wt(x,x,a),Gt(x,x,s)),l.push(m),l.push(x)}return n&&l.push(l.shift()),l}(r,i,n,e.smoothConstraint);t.moveTo(r[0][0],r[0][1]);for(var a=r.length,s=0;s<(n?a:a-1);s++){var l=o[2*s],u=o[2*s+1],h=r[(s+1)%a];t.bezierCurveTo(l[0],l[1],u[0],u[1],h[0],h[1])}}else{t.moveTo(r[0][0],r[0][1]);s=1;for(var c=r.length;s<c;s++)t.lineTo(r[s][0],r[s][1])}n&&t.closePath()}}Du.prototype.type="ring";var ku=function(){this.points=null,this.smooth=0,this.smoothConstraint=null},Lu=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultShape=function(){return new ku},e.prototype.buildPath=function(t,e){Au(t,e,!0)},e}(fs);Lu.prototype.type="polygon";var Pu=function(){this.points=null,this.percent=1,this.smooth=0,this.smoothConstraint=null},Ou=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},e.prototype.getDefaultShape=function(){return new Pu},e.prototype.buildPath=function(t,e){Au(t,e,!1)},e}(fs);Ou.prototype.type="polyline";var Ru={},Nu=function(){this.x1=0,this.y1=0,this.x2=0,this.y2=0,this.percent=1},Eu=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},e.prototype.getDefaultShape=function(){return new Nu},e.prototype.buildPath=function(t,e){var n,i,r,o;if(this.subPixelOptimize){var a=bs(Ru,e,this.style);n=a.x1,i=a.y1,r=a.x2,o=a.y2}else n=e.x1,i=e.y1,r=e.x2,o=e.y2;var s=e.percent;0!==s&&(t.moveTo(n,i),s<1&&(r=n*(1-s)+r*s,o=i*(1-s)+o*s),t.lineTo(r,o))},e.prototype.pointAt=function(t){var e=this.shape;return[e.x1*(1-t)+e.x2*t,e.y1*(1-t)+e.y2*t]},e}(fs);Eu.prototype.type="line";var zu=[],Vu=function(){this.x1=0,this.y1=0,this.x2=0,this.y2=0,this.cpx1=0,this.cpy1=0,this.percent=1};function Bu(t,e,n){var i=t.cpx2,r=t.cpy2;return null!=i||null!=r?[(n?Ye:He)(t.x1,t.cpx1,t.cpx2,t.x2,e),(n?Ye:He)(t.y1,t.cpy1,t.cpy2,t.y2,e)]:[(n?$e:Ke)(t.x1,t.cpx1,t.x2,e),(n?$e:Ke)(t.y1,t.cpy1,t.y2,e)]}var Fu=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},e.prototype.getDefaultShape=function(){return new Vu},e.prototype.buildPath=function(t,e){var n=e.x1,i=e.y1,r=e.x2,o=e.y2,a=e.cpx1,s=e.cpy1,l=e.cpx2,u=e.cpy2,h=e.percent;0!==h&&(t.moveTo(n,i),null==l||null==u?(h<1&&(Qe(n,a,r,h,zu),a=zu[1],r=zu[2],Qe(i,s,o,h,zu),s=zu[1],o=zu[2]),t.quadraticCurveTo(a,s,r,o)):(h<1&&(Ze(n,a,l,r,h,zu),a=zu[1],l=zu[2],r=zu[3],Ze(i,s,u,o,h,zu),s=zu[1],u=zu[2],o=zu[3]),t.bezierCurveTo(a,s,l,u,r,o)))},e.prototype.pointAt=function(t){return Bu(this.shape,t,!1)},e.prototype.tangentAt=function(t){var e=Bu(this.shape,t,!0);return Rt(e,e)},e}(fs);Fu.prototype.type="bezier-curve";var Gu=function(){this.cx=0,this.cy=0,this.r=0,this.startAngle=0,this.endAngle=2*Math.PI,this.clockwise=!0},Wu=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},e.prototype.getDefaultShape=function(){return new Gu},e.prototype.buildPath=function(t,e){var n=e.cx,i=e.cy,r=Math.max(e.r,0),o=e.startAngle,a=e.endAngle,s=e.clockwise,l=Math.cos(o),u=Math.sin(o);t.moveTo(l*r+n,u*r+i),t.arc(n,i,r,o,a,!s)},e}(fs);Wu.prototype.type="arc";var Hu=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.type="compound",e}return n(e,t),e.prototype._updatePathDirty=function(){for(var t=this.shape.paths,e=this.shapeChanged(),n=0;n<t.length;n++)e=e||t[n].shapeChanged();e&&this.dirtyShape()},e.prototype.beforeBrush=function(){this._updatePathDirty();for(var t=this.shape.paths||[],e=this.getGlobalScale(),n=0;n<t.length;n++)t[n].path||t[n].createPathProxy(),t[n].path.setScale(e[0],e[1],t[n].segmentIgnoreThreshold)},e.prototype.buildPath=function(t,e){for(var n=e.paths||[],i=0;i<n.length;i++)n[i].buildPath(t,n[i].shape,!0)},e.prototype.afterBrush=function(){for(var t=this.shape.paths||[],e=0;e<t.length;e++)t[e].pathUpdated()},e.prototype.getBoundingRect=function(){return this._updatePathDirty.call(this),fs.prototype.getBoundingRect.call(this)},e}(fs),Yu=function(){function t(t){this.colorStops=t||[]}return t.prototype.addColorStop=function(t,e){this.colorStops.push({offset:t,color:e})},t}(),Uu=function(t){function e(e,n,i,r,o,a){var s=t.call(this,o)||this;return s.x=null==e?0:e,s.y=null==n?0:n,s.x2=null==i?1:i,s.y2=null==r?0:r,s.type="linear",s.global=a||!1,s}return n(e,t),e}(Yu),Xu=function(t){function e(e,n,i,r,o){var a=t.call(this,r)||this;return a.x=null==e?.5:e,a.y=null==n?.5:n,a.r=null==i?.5:i,a.type="radial",a.global=o||!1,a}return n(e,t),e}(Yu),Zu=[0,0],ju=[0,0],qu=new Ji,Ku=new Ji,$u=function(){function t(t,e){this._corners=[],this._axes=[],this._origin=[0,0];for(var n=0;n<4;n++)this._corners[n]=new Ji;for(n=0;n<2;n++)this._axes[n]=new Ji;t&&this.fromBoundingRect(t,e)}return t.prototype.fromBoundingRect=function(t,e){var n=this._corners,i=this._axes,r=t.x,o=t.y,a=r+t.width,s=o+t.height;if(n[0].set(r,o),n[1].set(a,o),n[2].set(a,s),n[3].set(r,s),e)for(var l=0;l<4;l++)n[l].transform(e);Ji.sub(i[0],n[1],n[0]),Ji.sub(i[1],n[3],n[0]),i[0].normalize(),i[1].normalize();for(l=0;l<2;l++)this._origin[l]=i[l].dot(n[0])},t.prototype.intersect=function(t,e){var n=!0,i=!e;return qu.set(1/0,1/0),Ku.set(0,0),!this._intersectCheckOneSide(this,t,qu,Ku,i,1)&&(n=!1,i)||!this._intersectCheckOneSide(t,this,qu,Ku,i,-1)&&(n=!1,i)||i||Ji.copy(e,n?qu:Ku),n},t.prototype._intersectCheckOneSide=function(t,e,n,i,r,o){for(var a=!0,s=0;s<2;s++){var l=this._axes[s];if(this._getProjMinMaxOnAxis(s,t._corners,Zu),this._getProjMinMaxOnAxis(s,e._corners,ju),Zu[1]<ju[0]||Zu[0]>ju[1]){if(a=!1,r)return a;var u=Math.abs(ju[0]-Zu[1]),h=Math.abs(Zu[0]-ju[1]);Math.min(u,h)>i.len()&&(u<h?Ji.scale(i,l,-u*o):Ji.scale(i,l,h*o))}else if(n){u=Math.abs(ju[0]-Zu[1]),h=Math.abs(Zu[0]-ju[1]);Math.min(u,h)<n.len()&&(u<h?Ji.scale(n,l,u*o):Ji.scale(n,l,-h*o))}}return a},t.prototype._getProjMinMaxOnAxis=function(t,e,n){for(var i=this._axes[t],r=this._origin,o=e[0].dot(i)+r[t],a=o,s=o,l=1;l<e.length;l++){var u=e[l].dot(i)+r[t];a=Math.min(u,a),s=Math.max(u,s)}n[0]=a,n[1]=s},t}(),Ju=[],Qu=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.notClear=!0,e.incremental=!0,e._displayables=[],e._temporaryDisplayables=[],e._cursor=0,e}return n(e,t),e.prototype.traverse=function(t,e){t.call(e,this)},e.prototype.useStyle=function(){this.style={}},e.prototype.getCursor=function(){return this._cursor},e.prototype.innerAfterBrush=function(){this._cursor=this._displayables.length},e.prototype.clearDisplaybles=function(){this._displayables=[],this._temporaryDisplayables=[],this._cursor=0,this.markRedraw(),this.notClear=!1},e.prototype.clearTemporalDisplayables=function(){this._temporaryDisplayables=[]},e.prototype.addDisplayable=function(t,e){e?this._temporaryDisplayables.push(t):this._displayables.push(t),this.markRedraw()},e.prototype.addDisplayables=function(t,e){e=e||!1;for(var n=0;n<t.length;n++)this.addDisplayable(t[n],e)},e.prototype.getDisplayables=function(){return this._displayables},e.prototype.getTemporalDisplayables=function(){return this._temporaryDisplayables},e.prototype.eachPendingDisplayable=function(t){for(var e=this._cursor;e<this._displayables.length;e++)t&&t(this._displayables[e]);for(e=0;e<this._temporaryDisplayables.length;e++)t&&t(this._temporaryDisplayables[e])},e.prototype.update=function(){this.updateTransform();for(var t=this._cursor;t<this._displayables.length;t++){(e=this._displayables[t]).parent=this,e.update(),e.parent=null}for(t=0;t<this._temporaryDisplayables.length;t++){var e;(e=this._temporaryDisplayables[t]).parent=this,e.update(),e.parent=null}},e.prototype.getBoundingRect=function(){if(!this._rect){for(var t=new sr(1/0,1/0,-1/0,-1/0),e=0;e<this._displayables.length;e++){var n=this._displayables[e],i=n.getBoundingRect().clone();n.needLocalTransform()&&i.applyTransform(n.getLocalTransform(Ju)),t.union(i)}this._rect=t}return this._rect},e.prototype.contain=function(t,e){var n=this.transformCoordToLocal(t,e);if(this.getBoundingRect().contain(n[0],n[1]))for(var i=0;i<this._displayables.length;i++){if(this._displayables[i].contain(t,e))return!0}return!1},e}(da),th=So();function eh(t,e,n,i,r){var o;if(e&&e.ecModel){var a=e.ecModel.getUpdatePayload();o=a&&a.animation}var s="update"===t;if(e&&e.isAnimationEnabled()){var l=void 0,u=void 0,h=void 0;return i?(l=rt(i.duration,200),u=rt(i.easing,"cubicOut"),h=0):(l=e.getShallow(s?"animationDurationUpdate":"animationDuration"),u=e.getShallow(s?"animationEasingUpdate":"animationEasing"),h=e.getShallow(s?"animationDelayUpdate":"animationDelay")),o&&(null!=o.duration&&(l=o.duration),null!=o.easing&&(u=o.easing),null!=o.delay&&(h=o.delay)),U(h)&&(h=h(n,r)),U(l)&&(l=l(n)),{duration:l||0,delay:h,easing:u}}return null}function nh(t,e,n,i,r,o,a){var s,l=!1;U(r)?(a=o,o=r,r=null):q(r)&&(o=r.cb,a=r.during,l=r.isFrom,s=r.removeOpt,r=r.dataIndex);var u="leave"===t;u||e.stopAnimation("leave");var h=eh(t,i,r,u?s||{}:null,i&&i.getAnimationDelayParams?i.getAnimationDelayParams(e,r):null);if(h&&h.duration>0){var c={duration:h.duration,delay:h.delay||0,easing:h.easing,done:o,force:!!o||!!a,setToFinal:!u,scope:t,during:a};l?e.animateFrom(n,c):e.animateTo(n,c)}else e.stopAnimation(),!l&&e.attr(n),a&&a(1),o&&o()}function ih(t,e,n,i,r,o){nh("update",t,e,n,i,r,o)}function rh(t,e,n,i,r,o){nh("enter",t,e,n,i,r,o)}function oh(t){if(!t.__zr)return!0;for(var e=0;e<t.animators.length;e++){if("leave"===t.animators[e].scope)return!0}return!1}function ah(t,e,n,i,r,o){oh(t)||nh("leave",t,e,n,i,r,o)}function sh(t,e,n,i){t.removeTextContent(),t.removeTextGuideLine(),ah(t,{style:{opacity:0}},e,n,i)}function lh(t,e,n){function i(){t.parent&&t.parent.remove(t)}t.isGroup?t.traverse((function(t){t.isGroup||sh(t,e,n,i)})):sh(t,e,n,i)}function uh(t){th(t).oldStyle=t.style}var hh=Math.max,ch=Math.min,ph={};function dh(t){return fs.extend(t)}var fh=function(t,e){var i=ou(t,e);return function(t){function e(e){var n=t.call(this,e)||this;return n.applyTransform=i.applyTransform,n.buildPath=i.buildPath,n}return n(e,t),e}(iu)};function gh(t,e){return fh(t,e)}function yh(t,e){ph[t]=e}function vh(t){if(ph.hasOwnProperty(t))return ph[t]}function mh(t,e,n,i){var r=au(t,e);return n&&("center"===i&&(n=_h(n,r.getBoundingRect())),wh(r,n)),r}function xh(t,e,n){var i=new xs({style:{image:t,x:e.x,y:e.y,width:e.width,height:e.height},onload:function(t){if("center"===n){var r={width:t.width,height:t.height};i.setStyle(_h(e,r))}}});return i}function _h(t,e){var n,i=e.width/e.height,r=t.height*i;return n=r<=t.width?t.height:(r=t.width)/i,{x:t.x+t.width/2-r/2,y:t.y+t.height/2-n/2,width:r,height:n}}var bh=function(t,e){for(var n=[],i=t.length,r=0;r<i;r++){var o=t[r];n.push(o.getUpdatedPathProxy(!0))}var a=new fs(e);return a.createPathProxy(),a.buildPath=function(t){if(ru(t)){t.appendPath(n);var e=t.getContext();e&&t.rebuildPath(e,1)}},a};function wh(t,e){if(t.applyTransform){var n=t.getBoundingRect().calculateTransform(e);t.applyTransform(n)}}var Sh=Ss;function Mh(t,e){for(var n=Oi([]);t&&t!==e;)Ni(n,t.getLocalTransform(),n),t=t.parent;return n}function Ih(t,e,n){return e&&!N(e)&&(e=qi.getLocalTransform(e)),n&&(e=Bi([],e)),Ft([],t,e)}function Th(t,e,n){var i=0===e[4]||0===e[5]||0===e[0]?1:Math.abs(2*e[4]/e[0]),r=0===e[4]||0===e[5]||0===e[2]?1:Math.abs(2*e[4]/e[2]),o=["left"===t?-i:"right"===t?i:0,"top"===t?-r:"bottom"===t?r:0];return o=Ih(o,e,n),Math.abs(o[0])>Math.abs(o[1])?o[0]>0?"right":"left":o[1]>0?"bottom":"top"}function Ch(t){return!t.isGroup}function Dh(t,e,n){if(t&&e){var i,r=(i={},t.traverse((function(t){Ch(t)&&t.anid&&(i[t.anid]=t)})),i);e.traverse((function(t){if(Ch(t)&&t.anid){var e=r[t.anid];if(e){var i=o(t);t.attr(o(e)),ih(t,i,n,Ws(t).dataIndex)}}}))}function o(t){var e={x:t.x,y:t.y,rotation:t.rotation};return function(t){return null!=t.shape}(t)&&(e.shape=A({},t.shape)),e}}function Ah(t,e){return z(t,(function(t){var n=t[0];n=hh(n,e.x),n=ch(n,e.x+e.width);var i=t[1];return i=hh(i,e.y),[n,i=ch(i,e.y+e.height)]}))}function kh(t,e){var n=hh(t.x,e.x),i=ch(t.x+t.width,e.x+e.width),r=hh(t.y,e.y),o=ch(t.y+t.height,e.y+e.height);if(i>=n&&o>=r)return{x:n,y:r,width:i-n,height:o-r}}function Lh(t,e,n){var i=A({rectHover:!0},e),r=i.style={strokeNoScale:!0};if(n=n||{x:-1,y:-1,width:2,height:2},t)return 0===t.indexOf("image://")?(r.image=t.slice(8),k(r,n),new xs(i)):mh(t.replace("path://",""),i,n,"center")}function Ph(t,e,n,i,r){for(var o=0,a=r[r.length-1];o<r.length;o++){var s=r[o];if(Oh(t,e,n,i,s[0],s[1],a[0],a[1]))return!0;a=s}}function Oh(t,e,n,i,r,o,a,s){var l,u=n-t,h=i-e,c=a-r,p=s-o,d=Rh(c,p,u,h);if((l=d)<=1e-6&&l>=-1e-6)return!1;var f=t-r,g=e-o,y=Rh(f,g,u,h)/d;if(y<0||y>1)return!1;var v=Rh(f,g,c,p)/d;return!(v<0||v>1)}function Rh(t,e,n,i){return t*i-n*e}function Nh(t){var e=t.itemTooltipOption,n=t.componentModel,i=t.itemName,r=X(e)?{formatter:e}:e,o=n.mainType,a=n.componentIndex,s={componentType:o,name:i,$vars:["name"]};s[o+"Index"]=a;var l=t.formatterParamsExtra;l&&E(G(l),(function(t){mt(s,t)||(s[t]=l[t],s.$vars.push(t))}));var u=Ws(t.el);u.componentMainType=o,u.componentIndex=a,u.tooltipConfig={name:i,option:k({content:i,formatterParams:s},r)}}function Eh(t,e){var n;t.isGroup&&(n=e(t)),n||t.traverse(e)}function zh(t,e){if(t)if(Y(t))for(var n=0;n<t.length;n++)Eh(t[n],e);else Eh(t,e)}yh("circle",uu),yh("ellipse",cu),yh("sector",Tu),yh("ring",Du),yh("polygon",Lu),yh("polyline",Ou),yh("rect",Ts),yh("line",Eu),yh("bezierCurve",Fu),yh("arc",Wu);var Vh=Object.freeze({__proto__:null,updateProps:ih,initProps:rh,removeElement:ah,removeElementWithFadeOut:lh,isElementRemoved:oh,extendShape:dh,extendPath:gh,registerShape:yh,getShapeClass:vh,makePath:mh,makeImage:xh,mergePath:bh,resizePath:wh,subPixelOptimizeLine:function(t){return bs(t.shape,t.shape,t.style),t},subPixelOptimizeRect:function(t){return ws(t.shape,t.shape,t.style),t},subPixelOptimize:Sh,getTransform:Mh,applyTransform:Ih,transformDirection:Th,groupTransition:Dh,clipPointsByRect:Ah,clipRectByRect:kh,createIcon:Lh,linePolygonIntersect:Ph,lineLineIntersect:Oh,setTooltipConfig:Nh,traverseElements:zh,Group:Cr,Image:xs,Text:As,Circle:uu,Ellipse:cu,Sector:Tu,Ring:Du,Polygon:Lu,Polyline:Ou,Rect:Ts,Line:Eu,BezierCurve:Fu,Arc:Wu,IncrementalDisplayable:Qu,CompoundPath:Hu,LinearGradient:Uu,RadialGradient:Xu,BoundingRect:sr,OrientedBoundingRect:$u,Point:Ji,Path:fs}),Bh={};function Fh(t,e){for(var n=0;n<js.length;n++){var i=js[n],r=e[i],o=t.ensureState(i);o.style=o.style||{},o.style.text=r}var a=t.currentStates.slice();t.clearStates(!0),t.setStyle({text:e.normal}),t.useStates(a,!0)}function Gh(t,e,n){var i,r=t.labelFetcher,o=t.labelDataIndex,a=t.labelDimIndex,s=e.normal;r&&(i=r.getFormattedLabel(o,"normal",null,a,s&&s.get("formatter"),null!=n?{interpolatedValue:n}:null)),null==i&&(i=U(t.defaultText)?t.defaultText(o,t,n):t.defaultText);for(var l={normal:i},u=0;u<js.length;u++){var h=js[u],c=e[h];l[h]=rt(r?r.getFormattedLabel(o,h,null,a,c&&c.get("formatter")):null,i)}return l}function Wh(t,e,n,i){n=n||Bh;for(var r=t instanceof As,o=!1,a=0;a<qs.length;a++){if((p=e[qs[a]])&&p.getShallow("show")){o=!0;break}}var s=r?t:t.getTextContent();if(o){r||(s||(s=new As,t.setTextContent(s)),t.stateProxy&&(s.stateProxy=t.stateProxy));var l=Gh(n,e),u=e.normal,h=!!u.getShallow("show"),c=Yh(u,i&&i.normal,n,!1,!r);c.text=l.normal,r||t.setTextConfig(Uh(u,n,!1));for(a=0;a<js.length;a++){var p,d=js[a];if(p=e[d]){var f=s.ensureState(d),g=!!rt(p.getShallow("show"),h);if(g!==h&&(f.ignore=!g),f.style=Yh(p,i&&i[d],n,!0,!r),f.style.text=l[d],!r)t.ensureState(d).textConfig=Uh(p,n,!0)}}s.silent=!!u.getShallow("silent"),null!=s.style.x&&(c.x=s.style.x),null!=s.style.y&&(c.y=s.style.y),s.ignore=!h,s.useStyle(c),s.dirty(),n.enableTextSetter&&($h(s).setLabelText=function(t){var i=Gh(n,e,t);Fh(s,i)})}else s&&(s.ignore=!0);t.dirty()}function Hh(t,e){e=e||"label";for(var n={normal:t.getModel(e)},i=0;i<js.length;i++){var r=js[i];n[r]=t.getModel([r,e])}return n}function Yh(t,e,n,i,r){var o={};return function(t,e,n,i,r){n=n||Bh;var o,a=e.ecModel,s=a&&a.option.textStyle,l=function(t){var e;for(;t&&t!==t.ecModel;){var n=(t.option||Bh).rich;if(n){e=e||{};for(var i=G(n),r=0;r<i.length;r++){e[i[r]]=1}}t=t.parentModel}return e}(e);if(l)for(var u in o={},l)if(l.hasOwnProperty(u)){var h=e.getModel(["rich",u]);qh(o[u]={},h,s,n,i,r,!1,!0)}o&&(t.rich=o);var c=e.get("overflow");c&&(t.overflow=c);var p=e.get("minMargin");null!=p&&(t.margin=p);qh(t,e,s,n,i,r,!0,!1)}(o,t,n,i,r),e&&A(o,e),o}function Uh(t,e,n){e=e||{};var i,r={},o=t.getShallow("rotate"),a=rt(t.getShallow("distance"),n?null:5),s=t.getShallow("offset");return"outside"===(i=t.getShallow("position")||(n?null:"inside"))&&(i=e.defaultOutsidePosition||"top"),null!=i&&(r.position=i),null!=s&&(r.offset=s),null!=o&&(o*=Math.PI/180,r.rotation=o),null!=a&&(r.distance=a),r.outsideFill="inherit"===t.get("color")?e.inheritColor||null:"auto",r}var Xh=["fontStyle","fontWeight","fontSize","fontFamily","textShadowColor","textShadowBlur","textShadowOffsetX","textShadowOffsetY"],Zh=["align","lineHeight","width","height","tag","verticalAlign"],jh=["padding","borderWidth","borderRadius","borderDashOffset","backgroundColor","borderColor","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY"];function qh(t,e,n,i,r,o,a,s){n=!r&&n||Bh;var l=i&&i.inheritColor,u=e.getShallow("color"),h=e.getShallow("textBorderColor"),c=rt(e.getShallow("opacity"),n.opacity);"inherit"!==u&&"auto"!==u||(u=l||null),"inherit"!==h&&"auto"!==h||(h=l||null),o||(u=u||n.color,h=h||n.textBorderColor),null!=u&&(t.fill=u),null!=h&&(t.stroke=h);var p=rt(e.getShallow("textBorderWidth"),n.textBorderWidth);null!=p&&(t.lineWidth=p);var d=rt(e.getShallow("textBorderType"),n.textBorderType);null!=d&&(t.lineDash=d);var f=rt(e.getShallow("textBorderDashOffset"),n.textBorderDashOffset);null!=f&&(t.lineDashOffset=f),r||null!=c||s||(c=i&&i.defaultOpacity),null!=c&&(t.opacity=c),r||o||null==t.fill&&i.inheritColor&&(t.fill=i.inheritColor);for(var g=0;g<Xh.length;g++){var y=Xh[g];null!=(m=rt(e.getShallow(y),n[y]))&&(t[y]=m)}for(g=0;g<Zh.length;g++){y=Zh[g];null!=(m=e.getShallow(y))&&(t[y]=m)}if(null==t.verticalAlign){var v=e.getShallow("baseline");null!=v&&(t.verticalAlign=v)}if(!a||!i.disableBox){for(g=0;g<jh.length;g++){var m;y=jh[g];null!=(m=e.getShallow(y))&&(t[y]=m)}var x=e.getShallow("borderType");null!=x&&(t.borderDash=x),"auto"!==t.backgroundColor&&"inherit"!==t.backgroundColor||!l||(t.backgroundColor=l),"auto"!==t.borderColor&&"inherit"!==t.borderColor||!l||(t.borderColor=l)}}function Kh(t,e){var n=e&&e.getModel("textStyle");return ut([t.fontStyle||n&&n.getShallow("fontStyle")||"",t.fontWeight||n&&n.getShallow("fontWeight")||"",(t.fontSize||n&&n.getShallow("fontSize")||12)+"px",t.fontFamily||n&&n.getShallow("fontFamily")||"sans-serif"].join(" "))}var $h=So();function Jh(t,e,n,i){if(t){var r=$h(t);r.prevValue=r.value,r.value=n;var o=e.normal;r.valueAnimation=o.get("valueAnimation"),r.valueAnimation&&(r.precision=o.get("precision"),r.defaultInterpolatedText=i,r.statesModels=e)}}function Qh(t,e,n,i,r){var o=$h(t);if(o.valueAnimation&&o.prevValue!==o.value){var a=o.defaultInterpolatedText,s=rt(o.interpolatedValue,o.prevValue),l=o.value;t.percent=0,(null==o.prevValue?rh:ih)(t,{percent:1},i,e,null,(function(i){var u=Po(n,o.precision,s,l,i);o.interpolatedValue=1===i?null:u;var h=Gh({labelDataIndex:e,labelFetcher:r,defaultText:a?a(u):u+""},o.statesModels,u);Fh(t,h)}))}}var tc,ec,nc=["textStyle","color"],ic=["fontStyle","fontWeight","fontSize","fontFamily","padding","lineHeight","rich","width","height","overflow"],rc=new As,oc=function(){function t(){}return t.prototype.getTextColor=function(t){var e=this.ecModel;return this.getShallow("color")||(!t&&e?e.get(nc):null)},t.prototype.getFont=function(){return Kh({fontStyle:this.getShallow("fontStyle"),fontWeight:this.getShallow("fontWeight"),fontSize:this.getShallow("fontSize"),fontFamily:this.getShallow("fontFamily")},this.ecModel)},t.prototype.getTextRect=function(t){for(var e={text:t,verticalAlign:this.getShallow("verticalAlign")||this.getShallow("baseline")},n=0;n<ic.length;n++)e[ic[n]]=this.getShallow(ic[n]);return rc.useStyle(e),rc.update(),rc.getBoundingRect()},t}(),ac=[["lineWidth","width"],["stroke","color"],["opacity"],["shadowBlur"],["shadowOffsetX"],["shadowOffsetY"],["shadowColor"],["lineDash","type"],["lineDashOffset","dashOffset"],["lineCap","cap"],["lineJoin","join"],["miterLimit"]],sc=Wo(ac),lc=function(){function t(){}return t.prototype.getLineStyle=function(t){return sc(this,t)},t}(),uc=[["fill","color"],["stroke","borderColor"],["lineWidth","borderWidth"],["opacity"],["shadowBlur"],["shadowOffsetX"],["shadowOffsetY"],["shadowColor"],["lineDash","borderType"],["lineDashOffset","borderDashOffset"],["lineCap","borderCap"],["lineJoin","borderJoin"],["miterLimit","borderMiterLimit"]],hc=Wo(uc),cc=function(){function t(){}return t.prototype.getItemStyle=function(t,e){return hc(this,t,e)},t}(),pc=function(){function t(t,e,n){this.parentModel=e,this.ecModel=n,this.option=t}return t.prototype.init=function(t,e,n){for(var i=[],r=3;r<arguments.length;r++)i[r-3]=arguments[r]},t.prototype.mergeOption=function(t,e){C(this.option,t,!0)},t.prototype.get=function(t,e){return null==t?this.option:this._doGet(this.parsePath(t),!e&&this.parentModel)},t.prototype.getShallow=function(t,e){var n=this.option,i=null==n?n:n[t];if(null==i&&!e){var r=this.parentModel;r&&(i=r.getShallow(t))}return i},t.prototype.getModel=function(e,n){var i=null!=e,r=i?this.parsePath(e):null;return new t(i?this._doGet(r):this.option,n=n||this.parentModel&&this.parentModel.getModel(this.resolveParentPath(r)),this.ecModel)},t.prototype.isEmpty=function(){return null==this.option},t.prototype.restoreData=function(){},t.prototype.clone=function(){return new(0,this.constructor)(T(this.option))},t.prototype.parsePath=function(t){return"string"==typeof t?t.split("."):t},t.prototype.resolveParentPath=function(t){return t},t.prototype.isAnimationEnabled=function(){if(!r.node&&this.option){if(null!=this.option.animation)return!!this.option.animation;if(this.parentModel)return this.parentModel.isAnimationEnabled()}},t.prototype._doGet=function(t,e){var n=this.option;if(!t)return n;for(var i=0;i<t.length&&(!t[i]||null!=(n=n&&"object"==typeof n?n[t[i]]:null));i++);return null==n&&e&&(n=e._doGet(this.resolveParentPath(t),e.parentModel)),n},t}();Eo(pc),tc=pc,ec=["__\0is_clz",Vo++].join("_"),tc.prototype[ec]=!0,tc.isInstance=function(t){return!(!t||!t[ec])},R(pc,lc),R(pc,cc),R(pc,Yo),R(pc,oc);var dc=Math.round(10*Math.random());function fc(t){return[t||"",dc++].join("_")}function gc(t,e){return C(C({},t,!0),e,!0)}var yc="ZH",vc="EN",mc=vc,xc={},_c={},bc=r.domSupported&&(document.documentElement.lang||navigator.language||navigator.browserLanguage).toUpperCase().indexOf(yc)>-1?yc:mc;function wc(t,e){t=t.toUpperCase(),_c[t]=new pc(e),xc[t]=e}function Sc(t){return _c[t]}wc(vc,{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:". "}}}}),wc(yc,{time:{month:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],monthAbbr:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],dayOfWeek:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],dayOfWeekAbbr:["日","一","二","三","四","五","六"]},legend:{selector:{all:"全选",inverse:"反选"}},toolbox:{brush:{title:{rect:"矩形选择",polygon:"圈选",lineX:"横向选择",lineY:"纵向选择",keep:"保持选择",clear:"清除选择"}},dataView:{title:"数据视图",lang:["数据视图","关闭","刷新"]},dataZoom:{title:{zoom:"区域缩放",back:"区域缩放还原"}},magicType:{title:{line:"切换为折线图",bar:"切换为柱状图",stack:"切换为堆叠",tiled:"切换为平铺"}},restore:{title:"还原"},saveAsImage:{title:"保存为图片",lang:["右键另存为图片"]}},series:{typeNames:{pie:"饼图",bar:"柱状图",line:"折线图",scatter:"散点图",effectScatter:"涟漪散点图",radar:"雷达图",tree:"树图",treemap:"矩形树图",boxplot:"箱型图",candlestick:"K线图",k:"K线图",heatmap:"热力图",map:"地图",parallel:"平行坐标图",lines:"线图",graph:"关系图",sankey:"桑基图",funnel:"漏斗图",gauge:"仪表盘图",pictorialBar:"象形柱图",themeRiver:"主题河流图",sunburst:"旭日图"}},aria:{general:{withTitle:"这是一个关于“{title}”的图表。",withoutTitle:"这是一个图表,"},series:{single:{prefix:"",withName:"图表类型是{seriesType},表示{seriesName}。",withoutName:"图表类型是{seriesType}。"},multiple:{prefix:"它由{seriesCount}个图表系列组成。",withName:"第{seriesId}个系列是一个表示{seriesName}的{seriesType},",withoutName:"第{seriesId}个系列是一个{seriesType},",separator:{middle:";",end:"。"}}},data:{allData:"其数据是——",partialData:"其中,前{displayCnt}项是——",withName:"{name}的数据是{value}",withoutName:"{value}",separator:{middle:",",end:""}}}});var Mc=1e3,Ic=6e4,Tc=36e5,Cc=864e5,Dc=31536e6,Ac={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}"},kc="{yyyy}-{MM}-{dd}",Lc={year:"{yyyy}",month:"{yyyy}-{MM}",day:kc,hour:"{yyyy}-{MM}-{dd} "+Ac.hour,minute:"{yyyy}-{MM}-{dd} "+Ac.minute,second:"{yyyy}-{MM}-{dd} "+Ac.second,millisecond:Ac.none},Pc=["year","month","day","hour","minute","second","millisecond"],Oc=["year","half-year","quarter","month","week","half-week","day","half-day","quarter-day","hour","minute","second","millisecond"];function Rc(t,e){return"0000".substr(0,e-(t+="").length)+t}function Nc(t){switch(t){case"half-year":case"quarter":return"month";case"week":case"half-week":return"day";case"half-day":case"quarter-day":return"hour";default:return t}}function Ec(t){return t===Nc(t)}function zc(t,e,n,i){var r=jr(t),o=r[Fc(n)](),a=r[Gc(n)]()+1,s=Math.floor((a-1)/4)+1,l=r[Wc(n)](),u=r["get"+(n?"UTC":"")+"Day"](),h=r[Hc(n)](),c=(h-1)%12+1,p=r[Yc(n)](),d=r[Uc(n)](),f=r[Xc(n)](),g=(i instanceof pc?i:Sc(i||bc)||_c.EN).getModel("time"),y=g.get("month"),v=g.get("monthAbbr"),m=g.get("dayOfWeek"),x=g.get("dayOfWeekAbbr");return(e||"").replace(/{yyyy}/g,o+"").replace(/{yy}/g,o%100+"").replace(/{Q}/g,s+"").replace(/{MMMM}/g,y[a-1]).replace(/{MMM}/g,v[a-1]).replace(/{MM}/g,Rc(a,2)).replace(/{M}/g,a+"").replace(/{dd}/g,Rc(l,2)).replace(/{d}/g,l+"").replace(/{eeee}/g,m[u]).replace(/{ee}/g,x[u]).replace(/{e}/g,u+"").replace(/{HH}/g,Rc(h,2)).replace(/{H}/g,h+"").replace(/{hh}/g,Rc(c+"",2)).replace(/{h}/g,c+"").replace(/{mm}/g,Rc(p,2)).replace(/{m}/g,p+"").replace(/{ss}/g,Rc(d,2)).replace(/{s}/g,d+"").replace(/{SSS}/g,Rc(f,3)).replace(/{S}/g,f+"")}function Vc(t,e){var n=jr(t),i=n[Gc(e)]()+1,r=n[Wc(e)](),o=n[Hc(e)](),a=n[Yc(e)](),s=n[Uc(e)](),l=0===n[Xc(e)](),u=l&&0===s,h=u&&0===a,c=h&&0===o,p=c&&1===r;return p&&1===i?"year":p?"month":c?"day":h?"hour":u?"minute":l?"second":"millisecond"}function Bc(t,e,n){var i=j(t)?jr(t):t;switch(e=e||Vc(t,n)){case"year":return i[Fc(n)]();case"half-year":return i[Gc(n)]()>=6?1:0;case"quarter":return Math.floor((i[Gc(n)]()+1)/4);case"month":return i[Gc(n)]();case"day":return i[Wc(n)]();case"half-day":return i[Hc(n)]()/24;case"hour":return i[Hc(n)]();case"minute":return i[Yc(n)]();case"second":return i[Uc(n)]();case"millisecond":return i[Xc(n)]()}}function Fc(t){return t?"getUTCFullYear":"getFullYear"}function Gc(t){return t?"getUTCMonth":"getMonth"}function Wc(t){return t?"getUTCDate":"getDate"}function Hc(t){return t?"getUTCHours":"getHours"}function Yc(t){return t?"getUTCMinutes":"getMinutes"}function Uc(t){return t?"getUTCSeconds":"getSeconds"}function Xc(t){return t?"getUTCMilliseconds":"getMilliseconds"}function Zc(t){return t?"setUTCFullYear":"setFullYear"}function jc(t){return t?"setUTCMonth":"setMonth"}function qc(t){return t?"setUTCDate":"setDate"}function Kc(t){return t?"setUTCHours":"setHours"}function $c(t){return t?"setUTCMinutes":"setMinutes"}function Jc(t){return t?"setUTCSeconds":"setSeconds"}function Qc(t){return t?"setUTCMilliseconds":"setMilliseconds"}function tp(t){if(!eo(t))return X(t)?t:"-";var e=(t+"").split(".");return e[0].replace(/(\d{1,3})(?=(?:\d{3})+(?!\d))/g,"$1,")+(e.length>1?"."+e[1]:"")}function ep(t,e){return t=(t||"").toLowerCase().replace(/-(.)/g,(function(t,e){return e.toUpperCase()})),e&&t&&(t=t.charAt(0).toUpperCase()+t.slice(1)),t}var np=st,ip=/([&<>"'])/g,rp={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"};function op(t){return null==t?"":(t+"").replace(ip,(function(t,e){return rp[e]}))}function ap(t,e,n){function i(t){return t&&ut(t)?t:"-"}function r(t){return!(null==t||isNaN(t)||!isFinite(t))}var o="time"===e,a=t instanceof Date;if(o||a){var s=o?jr(t):t;if(!isNaN(+s))return zc(s,"{yyyy}-{MM}-{dd} {HH}:{mm}:{ss}",n);if(a)return"-"}if("ordinal"===e)return Z(t)?i(t):j(t)&&r(t)?t+"":"-";var l=to(t);return r(l)?tp(l):Z(t)?i(t):"boolean"==typeof t?t+"":"-"}var sp=["a","b","c","d","e","f","g"],lp=function(t,e){return"{"+t+(null==e?"":e)+"}"};function up(t,e,n){Y(e)||(e=[e]);var i=e.length;if(!i)return"";for(var r=e[0].$vars||[],o=0;o<r.length;o++){var a=sp[o];t=t.replace(lp(a),lp(a,0))}for(var s=0;s<i;s++)for(var l=0;l<r.length;l++){var u=e[s][r[l]];t=t.replace(lp(sp[l],s),n?op(u):u)}return t}function hp(t,e){var n=X(t)?{color:t,extraCssText:e}:t||{},i=n.color,r=n.type;e=n.extraCssText;var o=n.renderMode||"html";return i?"html"===o?"subItem"===r?'<span style="display:inline-block;vertical-align:middle;margin-right:8px;margin-left:3px;border-radius:4px;width:4px;height:4px;background-color:'+op(i)+";"+(e||"")+'"></span>':'<span style="display:inline-block;margin-right:4px;border-radius:10px;width:10px;height:10px;background-color:'+op(i)+";"+(e||"")+'"></span>':{renderMode:o,content:"{"+(n.markerId||"markerX")+"|} ",style:"subItem"===r?{width:4,height:4,borderRadius:2,backgroundColor:i}:{width:10,height:10,borderRadius:5,backgroundColor:i}}:""}function cp(t,e){return e=e||"transparent",X(t)?t:q(t)&&t.colorStops&&(t.colorStops[0]||{}).color||e}function pp(t,e){if("_blank"===e||"blank"===e){var n=window.open();n.opener=null,n.location.href=t}else window.open(t,e)}var dp=E,fp=["left","right","top","bottom","width","height"],gp=[["width","left","right"],["height","top","bottom"]];function yp(t,e,n,i,r){var o=0,a=0;null==i&&(i=1/0),null==r&&(r=1/0);var s=0;e.eachChild((function(l,u){var h,c,p=l.getBoundingRect(),d=e.childAt(u+1),f=d&&d.getBoundingRect();if("horizontal"===t){var g=p.width+(f?-f.x+p.x:0);(h=o+g)>i||l.newline?(o=0,h=g,a+=s+n,s=p.height):s=Math.max(s,p.height)}else{var y=p.height+(f?-f.y+p.y:0);(c=a+y)>r||l.newline?(o+=s+n,a=0,c=y,s=p.width):s=Math.max(s,p.width)}l.newline||(l.x=o,l.y=a,l.markRedraw(),"horizontal"===t?o=h+n:a=c+n)}))}var vp=yp;H(yp,"vertical"),H(yp,"horizontal");function mp(t,e,n){n=np(n||0);var i=e.width,r=e.height,o=Er(t.left,i),a=Er(t.top,r),s=Er(t.right,i),l=Er(t.bottom,r),u=Er(t.width,i),h=Er(t.height,r),c=n[2]+n[0],p=n[1]+n[3],d=t.aspect;switch(isNaN(u)&&(u=i-s-p-o),isNaN(h)&&(h=r-l-c-a),null!=d&&(isNaN(u)&&isNaN(h)&&(d>i/r?u=.8*i:h=.8*r),isNaN(u)&&(u=d*h),isNaN(h)&&(h=u/d)),isNaN(o)&&(o=i-s-u-p),isNaN(a)&&(a=r-l-h-c),t.left||t.right){case"center":o=i/2-u/2-n[3];break;case"right":o=i-u-p}switch(t.top||t.bottom){case"middle":case"center":a=r/2-h/2-n[0];break;case"bottom":a=r-h-c}o=o||0,a=a||0,isNaN(u)&&(u=i-p-o-(s||0)),isNaN(h)&&(h=r-c-a-(l||0));var f=new sr(o+n[3],a+n[0],u,h);return f.margin=n,f}function xp(t,e,n,i,r,o){var a,s=!r||!r.hv||r.hv[0],l=!r||!r.hv||r.hv[1],u=r&&r.boundingMode||"all";if((o=o||t).x=t.x,o.y=t.y,!s&&!l)return!1;if("raw"===u)a="group"===t.type?new sr(0,0,+e.width||0,+e.height||0):t.getBoundingRect();else if(a=t.getBoundingRect(),t.needLocalTransform()){var h=t.getLocalTransform();(a=a.clone()).applyTransform(h)}var c=mp(k({width:a.width,height:a.height},e),n,i),p=s?c.x-a.x:0,d=l?c.y-a.y:0;return"raw"===u?(o.x=p,o.y=d):(o.x+=p,o.y+=d),o===t&&t.markRedraw(),!0}function _p(t){var e=t.layoutMode||t.constructor.layoutMode;return q(e)?e:e?{type:e}:null}function bp(t,e,n){var i=n&&n.ignoreSize;!Y(i)&&(i=[i,i]);var r=a(gp[0],0),o=a(gp[1],1);function a(n,r){var o={},a=0,u={},h=0;if(dp(n,(function(e){u[e]=t[e]})),dp(n,(function(t){s(e,t)&&(o[t]=u[t]=e[t]),l(o,t)&&a++,l(u,t)&&h++})),i[r])return l(e,n[1])?u[n[2]]=null:l(e,n[2])&&(u[n[1]]=null),u;if(2!==h&&a){if(a>=2)return o;for(var c=0;c<n.length;c++){var p=n[c];if(!s(o,p)&&s(t,p)){o[p]=t[p];break}}return o}return u}function s(t,e){return t.hasOwnProperty(e)}function l(t,e){return null!=t[e]&&"auto"!==t[e]}function u(t,e,n){dp(t,(function(t){e[t]=n[t]}))}u(gp[0],t,r),u(gp[1],t,o)}function wp(t){return Sp({},t)}function Sp(t,e){return e&&t&&dp(fp,(function(n){e.hasOwnProperty(n)&&(t[n]=e[n])})),t}var Mp=So(),Ip=function(t){function e(e,n,i){var r=t.call(this,e,n,i)||this;return r.uid=fc("ec_cpt_model"),r}return n(e,t),e.prototype.init=function(t,e,n){this.mergeDefaultAndTheme(t,n)},e.prototype.mergeDefaultAndTheme=function(t,e){var n=_p(this),i=n?wp(t):{};C(t,e.getTheme().get(this.mainType)),C(t,this.getDefaultOption()),n&&bp(t,i,n)},e.prototype.mergeOption=function(t,e){C(this.option,t,!0);var n=_p(this);n&&bp(this.option,t,n)},e.prototype.optionUpdated=function(t,e){},e.prototype.getDefaultOption=function(){var t=this.constructor;if(!function(t){return!(!t||!t[Ro])}(t))return t.defaultOption;var e=Mp(this);if(!e.defaultOption){for(var n=[],i=t;i;){var r=i.prototype.defaultOption;r&&n.push(r),i=i.superClass}for(var o={},a=n.length-1;a>=0;a--)o=C(o,n[a],!0);e.defaultOption=o}return e.defaultOption},e.prototype.getReferringComponents=function(t,e){var n=t+"Index",i=t+"Id";return Ao(this.ecModel,t,{index:this.get(n,!0),id:this.get(i,!0)},e)},e.prototype.getBoxLayoutParams=function(){var t=this;return{left:t.get("left"),top:t.get("top"),right:t.get("right"),bottom:t.get("bottom"),width:t.get("width"),height:t.get("height")}},e.prototype.getZLevelKey=function(){return""},e.prototype.setZLevel=function(t){this.option.zlevel=t},e.protoInitialize=function(){var t=e.prototype;t.type="component",t.id="",t.name="",t.mainType="",t.subType="",t.componentIndex=0}(),e}(pc);zo(Ip,pc),Go(Ip),function(t){var e={};t.registerSubTypeDefaulter=function(t,n){var i=No(t);e[i.main]=n},t.determineSubType=function(n,i){var r=i.type;if(!r){var o=No(n).main;t.hasSubTypes(n)&&e[o]&&(r=e[o](i))}return r}}(Ip),function(t,e){function n(t,e){return t[e]||(t[e]={predecessor:[],successor:[]}),t[e]}t.topologicalTravel=function(t,i,r,o){if(t.length){var a=function(t){var i={},r=[];return E(t,(function(o){var a=n(i,o),s=function(t,e){var n=[];return E(t,(function(t){P(e,t)>=0&&n.push(t)})),n}(a.originalDeps=e(o),t);a.entryCount=s.length,0===a.entryCount&&r.push(o),E(s,(function(t){P(a.predecessor,t)<0&&a.predecessor.push(t);var e=n(i,t);P(e.successor,t)<0&&e.successor.push(o)}))})),{graph:i,noEntryList:r}}(i),s=a.graph,l=a.noEntryList,u={};for(E(t,(function(t){u[t]=!0}));l.length;){var h=l.pop(),c=s[h],p=!!u[h];p&&(r.call(o,h,c.originalDeps.slice()),delete u[h]),E(c.successor,p?f:d)}E(u,(function(){var t="";throw new Error(t)}))}function d(t){s[t].entryCount--,0===s[t].entryCount&&l.push(t)}function f(t){u[t]=!0,d(t)}}}(Ip,(function(t){var e=[];E(Ip.getClassesByMainType(t),(function(t){e=e.concat(t.dependencies||t.prototype.dependencies||[])})),e=z(e,(function(t){return No(t).main})),"dataset"!==t&&P(e,"dataset")<=0&&e.unshift("dataset");return e}));var Tp="";"undefined"!=typeof navigator&&(Tp=navigator.platform||"");var Cp="rgba(0, 0, 0, 0.2)",Dp={darkMode:"auto",colorBy:"series",color:["#5470c6","#91cc75","#fac858","#ee6666","#73c0de","#3ba272","#fc8452","#9a60b4","#ea7ccc"],gradientColor:["#f6efa6","#d88273","#bf444c"],aria:{decal:{decals:[{color:Cp,dashArrayX:[1,0],dashArrayY:[2,5],symbolSize:1,rotation:Math.PI/6},{color:Cp,symbol:"circle",dashArrayX:[[8,8],[0,8,8,0]],dashArrayY:[6,0],symbolSize:.8},{color:Cp,dashArrayX:[1,0],dashArrayY:[4,3],rotation:-Math.PI/4},{color:Cp,dashArrayX:[[6,6],[0,6,6,0]],dashArrayY:[6,0]},{color:Cp,dashArrayX:[[1,0],[1,6]],dashArrayY:[1,0,6,0],rotation:Math.PI/4},{color:Cp,symbol:"triangle",dashArrayX:[[9,9],[0,9,9,0]],dashArrayY:[7,2],symbolSize:.75}]}},textStyle:{fontFamily:Tp.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},Ap=ft(["tooltip","label","itemName","itemId","itemGroupId","seriesName"]),kp="original",Lp="arrayRows",Pp="objectRows",Op="keyedColumns",Rp="typedArray",Np="unknown",Ep="column",zp="row",Vp=1,Bp=2,Fp=3,Gp=So();function Wp(t,e,n){var i={},r=Yp(e);if(!r||!t)return i;var o,a,s=[],l=[],u=e.ecModel,h=Gp(u).datasetMap,c=r.uid+"_"+n.seriesLayoutBy;E(t=t.slice(),(function(e,n){var r=q(e)?e:t[n]={name:e};"ordinal"===r.type&&null==o&&(o=n,a=f(r)),i[r.name]=[]}));var p=h.get(c)||h.set(c,{categoryWayDim:a,valueWayDim:0});function d(t,e,n){for(var i=0;i<n;i++)t.push(e+i)}function f(t){var e=t.dimsDef;return e?e.length:1}return E(t,(function(t,e){var n=t.name,r=f(t);if(null==o){var a=p.valueWayDim;d(i[n],a,r),d(l,a,r),p.valueWayDim+=r}else if(o===e)d(i[n],0,r),d(s,0,r);else{a=p.categoryWayDim;d(i[n],a,r),d(l,a,r),p.categoryWayDim+=r}})),s.length&&(i.itemName=s),l.length&&(i.seriesName=l),i}function Hp(t,e,n){var i={};if(!Yp(t))return i;var r,o=e.sourceFormat,a=e.dimensionsDefine;o!==Pp&&o!==Op||E(a,(function(t,e){"name"===(q(t)?t.name:t)&&(r=e)}));var s=function(){for(var t={},i={},s=[],l=0,u=Math.min(5,n);l<u;l++){var h=Xp(e.data,o,e.seriesLayoutBy,a,e.startIndex,l);s.push(h);var c=h===Fp;if(c&&null==t.v&&l!==r&&(t.v=l),(null==t.n||t.n===t.v||!c&&s[t.n]===Fp)&&(t.n=l),p(t)&&s[t.n]!==Fp)return t;c||(h===Bp&&null==i.v&&l!==r&&(i.v=l),null!=i.n&&i.n!==i.v||(i.n=l))}function p(t){return null!=t.v&&null!=t.n}return p(t)?t:p(i)?i:null}();if(s){i.value=[s.v];var l=null!=r?r:s.n;i.itemName=[l],i.seriesName=[l]}return i}function Yp(t){if(!t.get("data",!0))return Ao(t.ecModel,"dataset",{index:t.get("datasetIndex",!0),id:t.get("datasetId",!0)},Co).models[0]}function Up(t,e){return Xp(t.data,t.sourceFormat,t.seriesLayoutBy,t.dimensionsDefine,t.startIndex,e)}function Xp(t,e,n,i,r,o){var a,s,l;if($(t))return Fp;if(i){var u=i[o];q(u)?(s=u.name,l=u.type):X(u)&&(s=u)}if(null!=l)return"ordinal"===l?Vp:Fp;if(e===Lp){var h=t;if(n===zp){for(var c=h[o],p=0;p<(c||[]).length&&p<5;p++)if(null!=(a=m(c[r+p])))return a}else for(p=0;p<h.length&&p<5;p++){var d=h[r+p];if(d&&null!=(a=m(d[o])))return a}}else if(e===Pp){var f=t;if(!s)return Fp;for(p=0;p<f.length&&p<5;p++){if((y=f[p])&&null!=(a=m(y[s])))return a}}else if(e===Op){if(!s)return Fp;if(!(c=t[s])||$(c))return Fp;for(p=0;p<c.length&&p<5;p++)if(null!=(a=m(c[p])))return a}else if(e===kp){var g=t;for(p=0;p<g.length&&p<5;p++){var y,v=fo(y=g[p]);if(!Y(v))return Fp;if(null!=(a=m(v[o])))return a}}function m(t){var e=X(t);return null!=t&&isFinite(t)&&""!==t?e?Bp:Fp:e&&"-"!==t?Vp:void 0}return Fp}var Zp=ft();var jp,qp,Kp,$p=So(),Jp=So(),Qp=function(){function t(){}return t.prototype.getColorFromPalette=function(t,e,n){var i=ho(this.get("color",!0)),r=this.get("colorLayer",!0);return ed(this,$p,i,r,t,e,n)},t.prototype.clearColorPalette=function(){!function(t,e){e(t).paletteIdx=0,e(t).paletteNameMap={}}(this,$p)},t}();function td(t,e,n,i){var r=ho(t.get(["aria","decal","decals"]));return ed(t,Jp,r,null,e,n,i)}function ed(t,e,n,i,r,o,a){var s=e(o=o||t),l=s.paletteIdx||0,u=s.paletteNameMap=s.paletteNameMap||{};if(u.hasOwnProperty(r))return u[r];var h=null!=a&&i?function(t,e){for(var n=t.length,i=0;i<n;i++)if(t[i].length>e)return t[i];return t[n-1]}(i,a):n;if((h=h||n)&&h.length){var c=h[l];return r&&(u[r]=c),s.paletteIdx=(l+1)%h.length,c}}var nd=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.init=function(t,e,n,i,r,o){i=i||{},this.option=null,this._theme=new pc(i),this._locale=new pc(r),this._optionManager=o},e.prototype.setOption=function(t,e,n){var i=od(e);this._optionManager.setOption(t,n,i),this._resetOption(null,i)},e.prototype.resetOption=function(t,e){return this._resetOption(t,od(e))},e.prototype._resetOption=function(t,e){var n=!1,i=this._optionManager;if(!t||"recreate"===t){var r=i.mountOption("recreate"===t);0,this.option&&"recreate"!==t?(this.restoreData(),this._mergeOption(r,e)):Kp(this,r),n=!0}if("timeline"!==t&&"media"!==t||this.restoreData(),!t||"recreate"===t||"timeline"===t){var o=i.getTimelineOption(this);o&&(n=!0,this._mergeOption(o,e))}if(!t||"recreate"===t||"media"===t){var a=i.getMediaOption(this);a.length&&E(a,(function(t){n=!0,this._mergeOption(t,e)}),this)}return n},e.prototype.mergeOption=function(t){this._mergeOption(t,null)},e.prototype._mergeOption=function(t,e){var n=this.option,i=this._componentsMap,r=this._componentsCount,o=[],a=ft(),s=e&&e.replaceMergeMainTypeMap;Gp(this).datasetMap=ft(),E(t,(function(t,e){null!=t&&(Ip.hasClass(e)?e&&(o.push(e),a.set(e,!0)):n[e]=null==n[e]?T(t):C(n[e],t,!0))})),s&&s.each((function(t,e){Ip.hasClass(e)&&!a.get(e)&&(o.push(e),a.set(e,!0))})),Ip.topologicalTravel(o,Ip.getAllClassMainTypes(),(function(e){var o=function(t,e,n){var i=Zp.get(e);if(!i)return n;var r=i(t);return r?n.concat(r):n}(this,e,ho(t[e])),a=i.get(e),l=a?s&&s.get(e)?"replaceMerge":"normalMerge":"replaceAll",u=yo(a,o,l);(function(t,e,n){E(t,(function(t){var i=t.newOption;q(i)&&(t.keyInfo.mainType=e,t.keyInfo.subType=function(t,e,n,i){return e.type?e.type:n?n.subType:i.determineSubType(t,e)}(e,i,t.existing,n))}))})(u,e,Ip),n[e]=null,i.set(e,null),r.set(e,0);var h,c=[],p=[],d=0;E(u,(function(t,n){var i=t.existing,r=t.newOption;if(r){var o="series"===e,a=Ip.getClass(e,t.keyInfo.subType,!o);if(!a)return;if("tooltip"===e){if(h)return void 0;h=!0}if(i&&i.constructor===a)i.name=t.keyInfo.name,i.mergeOption(r,this),i.optionUpdated(r,!1);else{var s=A({componentIndex:n},t.keyInfo);A(i=new a(r,this,this,s),s),t.brandNew&&(i.__requireNewView=!0),i.init(r,this,this),i.optionUpdated(null,!0)}}else i&&(i.mergeOption({},this),i.optionUpdated({},!1));i?(c.push(i.option),p.push(i),d++):(c.push(void 0),p.push(void 0))}),this),n[e]=c,i.set(e,p),r.set(e,d),"series"===e&&jp(this)}),this),this._seriesIndices||jp(this)},e.prototype.getOption=function(){var t=T(this.option);return E(t,(function(e,n){if(Ip.hasClass(n)){for(var i=ho(e),r=i.length,o=!1,a=r-1;a>=0;a--)i[a]&&!bo(i[a])?o=!0:(i[a]=null,!o&&r--);i.length=r,t[n]=i}})),delete t["\0_ec_inner"],t},e.prototype.getTheme=function(){return this._theme},e.prototype.getLocaleModel=function(){return this._locale},e.prototype.setUpdatePayload=function(t){this._payload=t},e.prototype.getUpdatePayload=function(){return this._payload},e.prototype.getComponent=function(t,e){var n=this._componentsMap.get(t);if(n){var i=n[e||0];if(i)return i;if(null==e)for(var r=0;r<n.length;r++)if(n[r])return n[r]}},e.prototype.queryComponents=function(t){var e=t.mainType;if(!e)return[];var n,i=t.index,r=t.id,o=t.name,a=this._componentsMap.get(e);return a&&a.length?(null!=i?(n=[],E(ho(i),(function(t){a[t]&&n.push(a[t])}))):n=null!=r?id("id",r,a):null!=o?id("name",o,a):B(a,(function(t){return!!t})),rd(n,t)):[]},e.prototype.findComponents=function(t){var e,n,i,r,o,a=t.query,s=t.mainType,l=(n=s+"Index",i=s+"Id",r=s+"Name",!(e=a)||null==e[n]&&null==e[i]&&null==e[r]?null:{mainType:s,index:e[n],id:e[i],name:e[r]}),u=l?this.queryComponents(l):B(this._componentsMap.get(s),(function(t){return!!t}));return o=rd(u,t),t.filter?B(o,t.filter):o},e.prototype.eachComponent=function(t,e,n){var i=this._componentsMap;if(U(t)){var r=e,o=t;i.each((function(t,e){for(var n=0;t&&n<t.length;n++){var i=t[n];i&&o.call(r,e,i,i.componentIndex)}}))}else for(var a=X(t)?i.get(t):q(t)?this.findComponents(t):null,s=0;a&&s<a.length;s++){var l=a[s];l&&e.call(n,l,l.componentIndex)}},e.prototype.getSeriesByName=function(t){var e=xo(t,null);return B(this._componentsMap.get("series"),(function(t){return!!t&&null!=e&&t.name===e}))},e.prototype.getSeriesByIndex=function(t){return this._componentsMap.get("series")[t]},e.prototype.getSeriesByType=function(t){return B(this._componentsMap.get("series"),(function(e){return!!e&&e.subType===t}))},e.prototype.getSeries=function(){return B(this._componentsMap.get("series"),(function(t){return!!t}))},e.prototype.getSeriesCount=function(){return this._componentsCount.get("series")},e.prototype.eachSeries=function(t,e){qp(this),E(this._seriesIndices,(function(n){var i=this._componentsMap.get("series")[n];t.call(e,i,n)}),this)},e.prototype.eachRawSeries=function(t,e){E(this._componentsMap.get("series"),(function(n){n&&t.call(e,n,n.componentIndex)}))},e.prototype.eachSeriesByType=function(t,e,n){qp(this),E(this._seriesIndices,(function(i){var r=this._componentsMap.get("series")[i];r.subType===t&&e.call(n,r,i)}),this)},e.prototype.eachRawSeriesByType=function(t,e,n){return E(this.getSeriesByType(t),e,n)},e.prototype.isSeriesFiltered=function(t){return qp(this),null==this._seriesIndicesMap.get(t.componentIndex)},e.prototype.getCurrentSeriesIndices=function(){return(this._seriesIndices||[]).slice()},e.prototype.filterSeries=function(t,e){qp(this);var n=[];E(this._seriesIndices,(function(i){var r=this._componentsMap.get("series")[i];t.call(e,r,i)&&n.push(i)}),this),this._seriesIndices=n,this._seriesIndicesMap=ft(n)},e.prototype.restoreData=function(t){jp(this);var e=this._componentsMap,n=[];e.each((function(t,e){Ip.hasClass(e)&&n.push(e)})),Ip.topologicalTravel(n,Ip.getAllClassMainTypes(),(function(n){E(e.get(n),(function(e){!e||"series"===n&&function(t,e){if(e){var n=e.seriesIndex,i=e.seriesId,r=e.seriesName;return null!=n&&t.componentIndex!==n||null!=i&&t.id!==i||null!=r&&t.name!==r}}(e,t)||e.restoreData()}))}))},e.internalField=(jp=function(t){var e=t._seriesIndices=[];E(t._componentsMap.get("series"),(function(t){t&&e.push(t.componentIndex)})),t._seriesIndicesMap=ft(e)},qp=function(t){},void(Kp=function(t,e){t.option={},t.option["\0_ec_inner"]=1,t._componentsMap=ft({series:[]}),t._componentsCount=ft();var n=e.aria;q(n)&&null==n.enabled&&(n.enabled=!0),function(t,e){var n=t.color&&!t.colorLayer;E(e,(function(e,i){"colorLayer"===i&&n||Ip.hasClass(i)||("object"==typeof e?t[i]=t[i]?C(t[i],e,!1):T(e):null==t[i]&&(t[i]=e))}))}(e,t._theme.option),C(e,Dp,!1),t._mergeOption(e,null)})),e}(pc);function id(t,e,n){if(Y(e)){var i=ft();return E(e,(function(t){null!=t&&(null!=xo(t,null)&&i.set(t,!0))})),B(n,(function(e){return e&&i.get(e[t])}))}var r=xo(e,null);return B(n,(function(e){return e&&null!=r&&e[t]===r}))}function rd(t,e){return e.hasOwnProperty("subType")?B(t,(function(t){return t&&t.subType===e.subType})):t}function od(t){var e=ft();return t&&E(ho(t.replaceMerge),(function(t){e.set(t,!0)})),{replaceMergeMainTypeMap:e}}R(nd,Qp);var ad=["getDom","getZr","getWidth","getHeight","getDevicePixelRatio","dispatchAction","isSSR","isDisposed","on","off","getDataURL","getConnectedDataURL","getOption","getId","updateLabelLayout"],sd=function(t){E(ad,(function(e){this[e]=W(t[e],t)}),this)},ld={},ud=function(){function t(){this._coordinateSystems=[]}return t.prototype.create=function(t,e){var n=[];E(ld,(function(i,r){var o=i.create(t,e);n=n.concat(o||[])})),this._coordinateSystems=n},t.prototype.update=function(t,e){E(this._coordinateSystems,(function(n){n.update&&n.update(t,e)}))},t.prototype.getCoordinateSystems=function(){return this._coordinateSystems.slice()},t.register=function(t,e){ld[t]=e},t.get=function(t){return ld[t]},t}(),hd=/^(min|max)?(.+)$/,cd=function(){function t(t){this._timelineOptions=[],this._mediaList=[],this._currentMediaIndices=[],this._api=t}return t.prototype.setOption=function(t,e,n){t&&(E(ho(t.series),(function(t){t&&t.data&&$(t.data)&&ct(t.data)})),E(ho(t.dataset),(function(t){t&&t.source&&$(t.source)&&ct(t.source)}))),t=T(t);var i=this._optionBackup,r=function(t,e,n){var i,r,o=[],a=t.baseOption,s=t.timeline,l=t.options,u=t.media,h=!!t.media,c=!!(l||s||a&&a.timeline);a?(r=a).timeline||(r.timeline=s):((c||h)&&(t.options=t.media=null),r=t);h&&Y(u)&&E(u,(function(t){t&&t.option&&(t.query?o.push(t):i||(i=t))}));function p(t){E(e,(function(e){e(t,n)}))}return p(r),E(l,(function(t){return p(t)})),E(o,(function(t){return p(t.option)})),{baseOption:r,timelineOptions:l||[],mediaDefault:i,mediaList:o}}(t,e,!i);this._newBaseOption=r.baseOption,i?(r.timelineOptions.length&&(i.timelineOptions=r.timelineOptions),r.mediaList.length&&(i.mediaList=r.mediaList),r.mediaDefault&&(i.mediaDefault=r.mediaDefault)):this._optionBackup=r},t.prototype.mountOption=function(t){var e=this._optionBackup;return this._timelineOptions=e.timelineOptions,this._mediaList=e.mediaList,this._mediaDefault=e.mediaDefault,this._currentMediaIndices=[],T(t?e.baseOption:this._newBaseOption)},t.prototype.getTimelineOption=function(t){var e,n=this._timelineOptions;if(n.length){var i=t.getComponent("timeline");i&&(e=T(n[i.getCurrentIndex()]))}return e},t.prototype.getMediaOption=function(t){var e,n,i=this._api.getWidth(),r=this._api.getHeight(),o=this._mediaList,a=this._mediaDefault,s=[],l=[];if(!o.length&&!a)return l;for(var u=0,h=o.length;u<h;u++)pd(o[u].query,i,r)&&s.push(u);return!s.length&&a&&(s=[-1]),s.length&&(e=s,n=this._currentMediaIndices,e.join(",")!==n.join(","))&&(l=z(s,(function(t){return T(-1===t?a.option:o[t].option)}))),this._currentMediaIndices=s,l},t}();function pd(t,e,n){var i={width:e,height:n,aspectratio:e/n},r=!0;return E(t,(function(t,e){var n=e.match(hd);if(n&&n[1]&&n[2]){var o=n[1],a=n[2].toLowerCase();(function(t,e,n){return"min"===n?t>=e:"max"===n?t<=e:t===e})(i[a],t,o)||(r=!1)}})),r}var dd=E,fd=q,gd=["areaStyle","lineStyle","nodeStyle","linkStyle","chordStyle","label","labelLine"];function yd(t){var e=t&&t.itemStyle;if(e)for(var n=0,i=gd.length;n<i;n++){var r=gd[n],o=e.normal,a=e.emphasis;o&&o[r]&&(t[r]=t[r]||{},t[r].normal?C(t[r].normal,o[r]):t[r].normal=o[r],o[r]=null),a&&a[r]&&(t[r]=t[r]||{},t[r].emphasis?C(t[r].emphasis,a[r]):t[r].emphasis=a[r],a[r]=null)}}function vd(t,e,n){if(t&&t[e]&&(t[e].normal||t[e].emphasis)){var i=t[e].normal,r=t[e].emphasis;i&&(n?(t[e].normal=t[e].emphasis=null,k(t[e],i)):t[e]=i),r&&(t.emphasis=t.emphasis||{},t.emphasis[e]=r,r.focus&&(t.emphasis.focus=r.focus),r.blurScope&&(t.emphasis.blurScope=r.blurScope))}}function md(t){vd(t,"itemStyle"),vd(t,"lineStyle"),vd(t,"areaStyle"),vd(t,"label"),vd(t,"labelLine"),vd(t,"upperLabel"),vd(t,"edgeLabel")}function xd(t,e){var n=fd(t)&&t[e],i=fd(n)&&n.textStyle;if(i){0;for(var r=0,o=po.length;r<o;r++){var a=po[r];i.hasOwnProperty(a)&&(n[a]=i[a])}}}function _d(t){t&&(md(t),xd(t,"label"),t.emphasis&&xd(t.emphasis,"label"))}function bd(t){return Y(t)?t:t?[t]:[]}function wd(t){return(Y(t)?t[0]:t)||{}}function Sd(t,e){dd(bd(t.series),(function(t){fd(t)&&function(t){if(fd(t)){yd(t),md(t),xd(t,"label"),xd(t,"upperLabel"),xd(t,"edgeLabel"),t.emphasis&&(xd(t.emphasis,"label"),xd(t.emphasis,"upperLabel"),xd(t.emphasis,"edgeLabel"));var e=t.markPoint;e&&(yd(e),_d(e));var n=t.markLine;n&&(yd(n),_d(n));var i=t.markArea;i&&_d(i);var r=t.data;if("graph"===t.type){r=r||t.nodes;var o=t.links||t.edges;if(o&&!$(o))for(var a=0;a<o.length;a++)_d(o[a]);E(t.categories,(function(t){md(t)}))}if(r&&!$(r))for(a=0;a<r.length;a++)_d(r[a]);if((e=t.markPoint)&&e.data){var s=e.data;for(a=0;a<s.length;a++)_d(s[a])}if((n=t.markLine)&&n.data){var l=n.data;for(a=0;a<l.length;a++)Y(l[a])?(_d(l[a][0]),_d(l[a][1])):_d(l[a])}"gauge"===t.type?(xd(t,"axisLabel"),xd(t,"title"),xd(t,"detail")):"treemap"===t.type?(vd(t.breadcrumb,"itemStyle"),E(t.levels,(function(t){md(t)}))):"tree"===t.type&&md(t.leaves)}}(t)}));var n=["xAxis","yAxis","radiusAxis","angleAxis","singleAxis","parallelAxis","radar"];e&&n.push("valueAxis","categoryAxis","logAxis","timeAxis"),dd(n,(function(e){dd(bd(t[e]),(function(t){t&&(xd(t,"axisLabel"),xd(t.axisPointer,"label"))}))})),dd(bd(t.parallel),(function(t){var e=t&&t.parallelAxisDefault;xd(e,"axisLabel"),xd(e&&e.axisPointer,"label")})),dd(bd(t.calendar),(function(t){vd(t,"itemStyle"),xd(t,"dayLabel"),xd(t,"monthLabel"),xd(t,"yearLabel")})),dd(bd(t.radar),(function(t){xd(t,"name"),t.name&&null==t.axisName&&(t.axisName=t.name,delete t.name),null!=t.nameGap&&null==t.axisNameGap&&(t.axisNameGap=t.nameGap,delete t.nameGap)})),dd(bd(t.geo),(function(t){fd(t)&&(_d(t),dd(bd(t.regions),(function(t){_d(t)})))})),dd(bd(t.timeline),(function(t){_d(t),vd(t,"label"),vd(t,"itemStyle"),vd(t,"controlStyle",!0);var e=t.data;Y(e)&&E(e,(function(t){q(t)&&(vd(t,"label"),vd(t,"itemStyle"))}))})),dd(bd(t.toolbox),(function(t){vd(t,"iconStyle"),dd(t.feature,(function(t){vd(t,"iconStyle")}))})),xd(wd(t.axisPointer),"label"),xd(wd(t.tooltip).axisPointer,"label")}function Md(t){t&&E(Id,(function(e){e[0]in t&&!(e[1]in t)&&(t[e[1]]=t[e[0]])}))}var Id=[["x","left"],["y","top"],["x2","right"],["y2","bottom"]],Td=["grid","geo","parallel","legend","toolbox","title","visualMap","dataZoom","timeline"],Cd=[["borderRadius","barBorderRadius"],["borderColor","barBorderColor"],["borderWidth","barBorderWidth"]];function Dd(t){var e=t&&t.itemStyle;if(e)for(var n=0;n<Cd.length;n++){var i=Cd[n][1],r=Cd[n][0];null!=e[i]&&(e[r]=e[i])}}function Ad(t){t&&"edge"===t.alignTo&&null!=t.margin&&null==t.edgeDistance&&(t.edgeDistance=t.margin)}function kd(t){t&&t.downplay&&!t.blur&&(t.blur=t.downplay)}function Ld(t,e){if(t)for(var n=0;n<t.length;n++)e(t[n]),t[n]&&Ld(t[n].children,e)}function Pd(t,e){Sd(t,e),t.series=ho(t.series),E(t.series,(function(t){if(q(t)){var e=t.type;if("line"===e)null!=t.clipOverflow&&(t.clip=t.clipOverflow);else if("pie"===e||"gauge"===e){if(null!=t.clockWise&&(t.clockwise=t.clockWise),Ad(t.label),(r=t.data)&&!$(r))for(var n=0;n<r.length;n++)Ad(r[n]);null!=t.hoverOffset&&(t.emphasis=t.emphasis||{},(t.emphasis.scaleSize=null)&&(t.emphasis.scaleSize=t.hoverOffset))}else if("gauge"===e){var i=function(t,e){for(var n=e.split(","),i=t,r=0;r<n.length&&null!=(i=i&&i[n[r]]);r++);return i}(t,"pointer.color");null!=i&&function(t,e,n,i){for(var r,o=e.split(","),a=t,s=0;s<o.length-1;s++)null==a[r=o[s]]&&(a[r]={}),a=a[r];(i||null==a[o[s]])&&(a[o[s]]=n)}(t,"itemStyle.color",i)}else if("bar"===e){var r;if(Dd(t),Dd(t.backgroundStyle),Dd(t.emphasis),(r=t.data)&&!$(r))for(n=0;n<r.length;n++)"object"==typeof r[n]&&(Dd(r[n]),Dd(r[n]&&r[n].emphasis))}else if("sunburst"===e){var o=t.highlightPolicy;o&&(t.emphasis=t.emphasis||{},t.emphasis.focus||(t.emphasis.focus=o)),kd(t),Ld(t.data,kd)}else"graph"===e||"sankey"===e?function(t){t&&null!=t.focusNodeAdjacency&&(t.emphasis=t.emphasis||{},null==t.emphasis.focus&&(t.emphasis.focus="adjacency"))}(t):"map"===e&&(t.mapType&&!t.map&&(t.map=t.mapType),t.mapLocation&&k(t,t.mapLocation));null!=t.hoverAnimation&&(t.emphasis=t.emphasis||{},t.emphasis&&null==t.emphasis.scale&&(t.emphasis.scale=t.hoverAnimation)),Md(t)}})),t.dataRange&&(t.visualMap=t.dataRange),E(Td,(function(e){var n=t[e];n&&(Y(n)||(n=[n]),E(n,(function(t){Md(t)})))}))}function Od(t){E(t,(function(e,n){var i=[],r=[NaN,NaN],o=[e.stackResultDimension,e.stackedOverDimension],a=e.data,s=e.isStackedByIndex;a.modify(o,(function(o,l,u){var h,c,p=a.get(e.stackedDimension,u);if(isNaN(p))return r;s?c=a.getRawIndex(u):h=a.get(e.stackedByDimension,u);for(var d=NaN,f=n-1;f>=0;f--){var g=t[f];if(s||(c=g.data.rawIndexOf(g.stackedByDimension,h)),c>=0){var y=g.data.getByRawIndex(g.stackResultDimension,c);if(p>=0&&y>0||p<=0&&y<0){p=Hr(p,y),d=y;break}}}return i[0]=p,i[1]=d,i}))}))}var Rd,Nd,Ed,zd,Vd,Bd=function(t){this.data=t.data||(t.sourceFormat===Op?{}:[]),this.sourceFormat=t.sourceFormat||Np,this.seriesLayoutBy=t.seriesLayoutBy||Ep,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];null==i.type&&Up(this,n)===Vp&&(i.type="ordinal")}};function Fd(t){return t instanceof Bd}function Gd(t,e,n){n=n||Hd(t);var i=e.seriesLayoutBy,r=function(t,e,n,i,r){var o,a;if(!t)return{dimensionsDefine:Yd(r),startIndex:a,dimensionsDetectedCount:o};if(e===Lp){var s=t;"auto"===i||null==i?Ud((function(t){null!=t&&"-"!==t&&(X(t)?null==a&&(a=1):a=0)}),n,s,10):a=j(i)?i:i?1:0,r||1!==a||(r=[],Ud((function(t,e){r[e]=null!=t?t+"":""}),n,s,1/0)),o=r?r.length:n===zp?s.length:s[0]?s[0].length:null}else if(e===Pp)r||(r=function(t){var e,n=0;for(;n<t.length&&!(e=t[n++]););if(e){var i=[];return E(e,(function(t,e){i.push(e)})),i}}(t));else if(e===Op)r||(r=[],E(t,(function(t,e){r.push(e)})));else if(e===kp){var l=fo(t[0]);o=Y(l)&&l.length||1}return{startIndex:a,dimensionsDefine:Yd(r),dimensionsDetectedCount:o}}(t,n,i,e.sourceHeader,e.dimensions);return new Bd({data:t,sourceFormat:n,seriesLayoutBy:i,dimensionsDefine:r.dimensionsDefine,startIndex:r.startIndex,dimensionsDetectedCount:r.dimensionsDetectedCount,metaRawOption:T(e)})}function Wd(t){return new Bd({data:t,sourceFormat:$(t)?Rp:kp})}function Hd(t){var e=Np;if($(t))e=Rp;else if(Y(t)){0===t.length&&(e=Lp);for(var n=0,i=t.length;n<i;n++){var r=t[n];if(null!=r){if(Y(r)){e=Lp;break}if(q(r)){e=Pp;break}}}}else if(q(t))for(var o in t)if(mt(t,o)&&N(t[o])){e=Op;break}return e}function Yd(t){if(t){var e=ft();return z(t,(function(t,n){var i={name:(t=q(t)?t:{name:t}).name,displayName:t.displayName,type:t.type};if(null==i.name)return i;i.name+="",null==i.displayName&&(i.displayName=i.name);var r=e.get(i.name);return r?i.name+="-"+r.count++:e.set(i.name,{count:1}),i}))}}function Ud(t,e,n,i){if(e===zp)for(var r=0;r<n.length&&r<i;r++)t(n[r]?n[r][0]:null,r);else{var o=n[0]||[];for(r=0;r<o.length&&r<i;r++)t(o[r],r)}}function Xd(t){var e=t.sourceFormat;return e===Pp||e===Op}var Zd=function(){function t(t,e){var n=Fd(t)?t:Wd(t);this._source=n;var i=this._data=n.data;n.sourceFormat===Rp&&(this._offset=0,this._dimSize=e,this._data=i),Vd(this,i,n)}return t.prototype.getSource=function(){return this._source},t.prototype.count=function(){return 0},t.prototype.getItem=function(t,e){},t.prototype.appendData=function(t){},t.prototype.clean=function(){},t.protoInitialize=function(){var e=t.prototype;e.pure=!1,e.persistent=!0}(),t.internalField=function(){var t;Vd=function(t,r,o){var a=o.sourceFormat,s=o.seriesLayoutBy,l=o.startIndex,u=o.dimensionsDefine,h=zd[rf(a,s)];if(A(t,h),a===Rp)t.getItem=e,t.count=i,t.fillStorage=n;else{var c=Kd(a,s);t.getItem=W(c,null,r,l,u);var p=Qd(a,s);t.count=W(p,null,r,l,u)}};var e=function(t,e){t-=this._offset,e=e||[];for(var n=this._data,i=this._dimSize,r=i*t,o=0;o<i;o++)e[o]=n[r+o];return e},n=function(t,e,n,i){for(var r=this._data,o=this._dimSize,a=0;a<o;a++){for(var s=i[a],l=null==s[0]?1/0:s[0],u=null==s[1]?-1/0:s[1],h=e-t,c=n[a],p=0;p<h;p++){var d=r[p*o+a];c[t+p]=d,d<l&&(l=d),d>u&&(u=d)}s[0]=l,s[1]=u}},i=function(){return this._data?this._data.length/this._dimSize:0};function r(t){for(var e=0;e<t.length;e++)this._data.push(t[e])}(t={}).arrayRows_column={pure:!0,appendData:r},t.arrayRows_row={pure:!0,appendData:function(){throw new Error('Do not support appendData when set seriesLayoutBy: "row".')}},t.objectRows={pure:!0,appendData:r},t.keyedColumns={pure:!0,appendData:function(t){var e=this._data;E(t,(function(t,n){for(var i=e[n]||(e[n]=[]),r=0;r<(t||[]).length;r++)i.push(t[r])}))}},t.original={appendData:r},t.typedArray={persistent:!1,pure:!0,appendData:function(t){this._data=t},clean:function(){this._offset+=this.count(),this._data=null}},zd=t}(),t}(),jd=function(t,e,n,i){return t[i]},qd=((Rd={}).arrayRows_column=function(t,e,n,i){return t[i+e]},Rd.arrayRows_row=function(t,e,n,i,r){i+=e;for(var o=r||[],a=t,s=0;s<a.length;s++){var l=a[s];o[s]=l?l[i]:null}return o},Rd.objectRows=jd,Rd.keyedColumns=function(t,e,n,i,r){for(var o=r||[],a=0;a<n.length;a++){var s=n[a].name;0;var l=t[s];o[a]=l?l[i]:null}return o},Rd.original=jd,Rd);function Kd(t,e){var n=qd[rf(t,e)];return n}var $d=function(t,e,n){return t.length},Jd=((Nd={}).arrayRows_column=function(t,e,n){return Math.max(0,t.length-e)},Nd.arrayRows_row=function(t,e,n){var i=t[0];return i?Math.max(0,i.length-e):0},Nd.objectRows=$d,Nd.keyedColumns=function(t,e,n){var i=n[0].name;var r=t[i];return r?r.length:0},Nd.original=$d,Nd);function Qd(t,e){var n=Jd[rf(t,e)];return n}var tf=function(t,e,n){return t[e]},ef=((Ed={}).arrayRows=tf,Ed.objectRows=function(t,e,n){return t[n]},Ed.keyedColumns=tf,Ed.original=function(t,e,n){var i=fo(t);return i instanceof Array?i[e]:i},Ed.typedArray=tf,Ed);function nf(t){var e=ef[t];return e}function rf(t,e){return t===Lp?t+"_"+e:t}function of(t,e,n){if(t){var i=t.getRawDataItem(e);if(null!=i){var r=t.getStore(),o=r.getSource().sourceFormat;if(null!=n){var a=t.getDimensionIndex(n),s=r.getDimensionProperty(a);return nf(o)(i,a,s)}var l=i;return o===kp&&(l=fo(i)),l}}}var af=/\{@(.+?)\}/g,sf=function(){function t(){}return t.prototype.getDataParams=function(t,e){var n=this.getData(e),i=this.getRawValue(t,e),r=n.getRawIndex(t),o=n.getName(t),a=n.getRawDataItem(t),s=n.getItemVisual(t,"style"),l=s&&s[n.getItemVisual(t,"drawType")||"fill"],u=s&&s.stroke,h=this.mainType,c="series"===h,p=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:r,data:a,dataType:e,value:i,color:l,borderColor:u,dimensionNames:p?p.fullDimensions:null,encode:p?p.encode:null,$vars:["seriesName","name","value"]}},t.prototype.getFormattedLabel=function(t,e,n,i,r,o){e=e||"normal";var a=this.getData(n),s=this.getDataParams(t,n);(o&&(s.value=o.interpolatedValue),null!=i&&Y(s.value)&&(s.value=s.value[i]),r)||(r=a.getItemModel(t).get("normal"===e?["label","formatter"]:[e,"label","formatter"]));return U(r)?(s.status=e,s.dimensionIndex=i,r(s)):X(r)?up(r,s).replace(af,(function(e,n){var i=n.length,r=n;"["===r.charAt(0)&&"]"===r.charAt(i-1)&&(r=+r.slice(1,i-1));var s=of(a,t,r);if(o&&Y(o.interpolatedValue)){var l=a.getDimensionIndex(r);l>=0&&(s=o.interpolatedValue[l])}return null!=s?s+"":""})):void 0},t.prototype.getRawValue=function(t,e){return of(this.getData(e),t)},t.prototype.formatTooltip=function(t,e,n){},t}();function lf(t){var e,n;return q(t)?t.type&&(n=t):e=t,{text:e,frag:n}}function uf(t){return new hf(t)}var hf=function(){function t(t){t=t||{},this._reset=t.reset,this._plan=t.plan,this._count=t.count,this._onDirty=t.onDirty,this._dirty=!0}return t.prototype.perform=function(t){var e,n=this._upstream,i=t&&t.skip;if(this._dirty&&n){var r=this.context;r.data=r.outputData=n.context.outputData}this.__pipeline&&(this.__pipeline.currentTask=this),this._plan&&!i&&(e=this._plan(this.context));var o,a=h(this._modBy),s=this._modDataCount||0,l=h(t&&t.modBy),u=t&&t.modDataCount||0;function h(t){return!(t>=1)&&(t=1),t}a===l&&s===u||(e="reset"),(this._dirty||"reset"===e)&&(this._dirty=!1,o=this._doReset(i)),this._modBy=l,this._modDataCount=u;var c=t&&t.step;if(this._dueEnd=n?n._outputDueEnd:this._count?this._count(this.context):1/0,this._progress){var p=this._dueIndex,d=Math.min(null!=c?this._dueIndex+c:1/0,this._dueEnd);if(!i&&(o||p<d)){var f=this._progress;if(Y(f))for(var g=0;g<f.length;g++)this._doProgress(f[g],p,d,l,u);else this._doProgress(f,p,d,l,u)}this._dueIndex=d;var y=null!=this._settedOutputEnd?this._settedOutputEnd:d;0,this._outputDueEnd=y}else this._dueIndex=this._outputDueEnd=null!=this._settedOutputEnd?this._settedOutputEnd:this._dueEnd;return this.unfinished()},t.prototype.dirty=function(){this._dirty=!0,this._onDirty&&this._onDirty(this.context)},t.prototype._doProgress=function(t,e,n,i,r){cf.reset(e,n,i,r),this._callingProgress=t,this._callingProgress({start:e,end:n,count:n-e,next:cf.next},this.context)},t.prototype._doReset=function(t){var e,n;this._dueIndex=this._outputDueEnd=this._dueEnd=0,this._settedOutputEnd=null,!t&&this._reset&&((e=this._reset(this.context))&&e.progress&&(n=e.forceFirstProgress,e=e.progress),Y(e)&&!e.length&&(e=null)),this._progress=e,this._modBy=this._modDataCount=null;var i=this._downstream;return i&&i.dirty(),n},t.prototype.unfinished=function(){return this._progress&&this._dueIndex<this._dueEnd},t.prototype.pipe=function(t){(this._downstream!==t||this._dirty)&&(this._downstream=t,t._upstream=this,t.dirty())},t.prototype.dispose=function(){this._disposed||(this._upstream&&(this._upstream._downstream=null),this._downstream&&(this._downstream._upstream=null),this._dirty=!1,this._disposed=!0)},t.prototype.getUpstream=function(){return this._upstream},t.prototype.getDownstream=function(){return this._downstream},t.prototype.setOutputEnd=function(t){this._outputDueEnd=this._settedOutputEnd=t},t}(),cf=function(){var t,e,n,i,r,o={reset:function(l,u,h,c){e=l,t=u,n=h,i=c,r=Math.ceil(i/n),o.next=n>1&&i>0?s:a}};return o;function a(){return e<t?e++:null}function s(){var o=e%r*n+Math.ceil(e/r),a=e>=t?null:o<i?o:e;return e++,a}}();function pf(t,e){var n=e&&e.type;return"ordinal"===n?t:("time"!==n||j(t)||null==t||"-"===t||(t=+jr(t)),null==t||""===t?NaN:+t)}var df=ft({number:function(t){return parseFloat(t)},time:function(t){return+jr(t)},trim:function(t){return X(t)?ut(t):t}});function ff(t){return df.get(t)}var gf={lt:function(t,e){return t<e},lte:function(t,e){return t<=e},gt:function(t,e){return t>e},gte:function(t,e){return t>=e}},yf=function(){function t(t,e){if(!j(e)){var n="";0,ao(n)}this._opFn=gf[t],this._rvalFloat=to(e)}return t.prototype.evaluate=function(t){return j(t)?this._opFn(t,this._rvalFloat):this._opFn(to(t),this._rvalFloat)},t}(),vf=function(){function t(t,e){var n="desc"===t;this._resultLT=n?1:-1,null==e&&(e=n?"min":"max"),this._incomparable="min"===e?-1/0:1/0}return t.prototype.evaluate=function(t,e){var n=j(t)?t:to(t),i=j(e)?e:to(e),r=isNaN(n),o=isNaN(i);if(r&&(n=this._incomparable),o&&(i=this._incomparable),r&&o){var a=X(t),s=X(e);a&&(n=s?t:0),s&&(i=a?e:0)}return n<i?this._resultLT:n>i?-this._resultLT:0},t}(),mf=function(){function t(t,e){this._rval=e,this._isEQ=t,this._rvalTypeof=typeof e,this._rvalFloat=to(e)}return t.prototype.evaluate=function(t){var e=t===this._rval;if(!e){var n=typeof t;n===this._rvalTypeof||"number"!==n&&"number"!==this._rvalTypeof||(e=to(t)===this._rvalFloat)}return this._isEQ?e:!e},t}();function xf(t,e){return"eq"===t||"ne"===t?new mf("eq"===t,e):mt(gf,t)?new yf(t,e):null}var _f=function(){function t(){}return t.prototype.getRawData=function(){throw new Error("not supported")},t.prototype.getRawDataItem=function(t){throw new Error("not supported")},t.prototype.cloneRawData=function(){},t.prototype.getDimensionInfo=function(t){},t.prototype.cloneAllDimensionInfo=function(){},t.prototype.count=function(){},t.prototype.retrieveValue=function(t,e){},t.prototype.retrieveValueFromItem=function(t,e){},t.prototype.convertValue=function(t,e){return pf(t,e)},t}();function bf(t){var e=t.sourceFormat;if(!Cf(e)){var n="";0,ao(n)}return t.data}function wf(t){var e=t.sourceFormat,n=t.data;if(!Cf(e)){var i="";0,ao(i)}if(e===Lp){for(var r=[],o=0,a=n.length;o<a;o++)r.push(n[o].slice());return r}if(e===Pp){for(r=[],o=0,a=n.length;o<a;o++)r.push(A({},n[o]));return r}}function Sf(t,e,n){if(null!=n)return j(n)||!isNaN(n)&&!mt(e,n)?t[n]:mt(e,n)?e[n]:void 0}function Mf(t){return T(t)}var If=ft();function Tf(t,e,n,i){var r="";e.length||ao(r),q(t)||ao(r);var o=t.type,a=If.get(o);a||ao(r);var s=z(e,(function(t){return function(t,e){var n=new _f,i=t.data,r=n.sourceFormat=t.sourceFormat,o=t.startIndex,a="";t.seriesLayoutBy!==Ep&&ao(a);var s=[],l={},u=t.dimensionsDefine;if(u)E(u,(function(t,e){var n=t.name,i={index:e,name:n,displayName:t.displayName};if(s.push(i),null!=n){var r="";mt(l,n)&&ao(r),l[n]=i}}));else for(var h=0;h<t.dimensionsDetectedCount;h++)s.push({index:h});var c=Kd(r,Ep);e.__isBuiltIn&&(n.getRawDataItem=function(t){return c(i,o,s,t)},n.getRawData=W(bf,null,t)),n.cloneRawData=W(wf,null,t);var p=Qd(r,Ep);n.count=W(p,null,i,o,s);var d=nf(r);n.retrieveValue=function(t,e){var n=c(i,o,s,t);return f(n,e)};var f=n.retrieveValueFromItem=function(t,e){if(null!=t){var n=s[e];return n?d(t,e,n.name):void 0}};return n.getDimensionInfo=W(Sf,null,s,l),n.cloneAllDimensionInfo=W(Mf,null,s),n}(t,a)})),l=ho(a.transform({upstream:s[0],upstreamList:s,config:T(t.config)}));return z(l,(function(t,n){var i,r="";q(t)||ao(r),t.data||ao(r),Cf(Hd(t.data))||ao(r);var o=e[0];if(o&&0===n&&!t.dimensions){var a=o.startIndex;a&&(t.data=o.data.slice(0,a).concat(t.data)),i={seriesLayoutBy:Ep,sourceHeader:a,dimensions:o.metaRawOption.dimensions}}else i={seriesLayoutBy:Ep,sourceHeader:0,dimensions:t.dimensions};return Gd(t.data,i,null)}))}function Cf(t){return t===Lp||t===Pp}var Df,Af="undefined",kf=typeof Uint32Array===Af?Array:Uint32Array,Lf=typeof Uint16Array===Af?Array:Uint16Array,Pf=typeof Int32Array===Af?Array:Int32Array,Of=typeof Float64Array===Af?Array:Float64Array,Rf={float:Of,int:Pf,ordinal:Array,number:Array,time:Of};function Nf(t){return t>65535?kf:Lf}function Ef(t,e,n,i,r){var o=Rf[n||"float"];if(r){var a=t[e],s=a&&a.length;if(s!==i){for(var l=new o(i),u=0;u<s;u++)l[u]=a[u];t[e]=l}}else t[e]=new o(i)}var zf=function(){function t(){this._chunks=[],this._rawExtent=[],this._extent=[],this._count=0,this._rawCount=0,this._calcDimNameToIdx=ft()}return t.prototype.initData=function(t,e,n){this._provider=t,this._chunks=[],this._indices=null,this.getRawIndex=this._getRawIdxIdentity;var i=t.getSource(),r=this.defaultDimValueGetter=Df[i.sourceFormat];this._dimValueGetter=n||r,this._rawExtent=[];Xd(i);this._dimensions=z(e,(function(t){return{type:t.type,property:t.property}})),this._initDataFromProvider(0,t.count())},t.prototype.getProvider=function(){return this._provider},t.prototype.getSource=function(){return this._provider.getSource()},t.prototype.ensureCalculationDimension=function(t,e){var n=this._calcDimNameToIdx,i=this._dimensions,r=n.get(t);if(null!=r){if(i[r].type===e)return r}else r=i.length;return i[r]={type:e},n.set(t,r),this._chunks[r]=new Rf[e||"float"](this._rawCount),this._rawExtent[r]=[1/0,-1/0],r},t.prototype.collectOrdinalMeta=function(t,e){var n=this._chunks[t],i=this._dimensions[t],r=this._rawExtent,o=i.ordinalOffset||0,a=n.length;0===o&&(r[t]=[1/0,-1/0]);for(var s=r[t],l=o;l<a;l++){var u=n[l]=e.parseAndCollect(n[l]);s[0]=Math.min(u,s[0]),s[1]=Math.max(u,s[1])}i.ordinalMeta=e,i.ordinalOffset=a,i.type="ordinal"},t.prototype.getOrdinalMeta=function(t){return this._dimensions[t].ordinalMeta},t.prototype.getDimensionProperty=function(t){var e=this._dimensions[t];return e&&e.property},t.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]},t.prototype.appendValues=function(t,e){for(var n=this._chunks,i=this._dimensions,r=i.length,o=this._rawExtent,a=this.count(),s=a+Math.max(t.length,e||0),l=0;l<r;l++){Ef(n,l,(d=i[l]).type,s,!0)}for(var u=[],h=a;h<s;h++)for(var c=h-a,p=0;p<r;p++){var d=i[p],f=Df.arrayRows.call(this,t[c]||u,d.property,c,p);n[p][h]=f;var g=o[p];f<g[0]&&(g[0]=f),f>g[1]&&(g[1]=f)}return this._rawCount=this._count=s,{start:a,end:s}},t.prototype._initDataFromProvider=function(t,e,n){for(var i=this._provider,r=this._chunks,o=this._dimensions,a=o.length,s=this._rawExtent,l=z(o,(function(t){return t.property})),u=0;u<a;u++){var h=o[u];s[u]||(s[u]=[1/0,-1/0]),Ef(r,u,h.type,e,n)}if(i.fillStorage)i.fillStorage(t,e,r,s);else for(var c=[],p=t;p<e;p++){c=i.getItem(p,c);for(var d=0;d<a;d++){var f=r[d],g=this._dimValueGetter(c,l[d],p,d);f[p]=g;var y=s[d];g<y[0]&&(y[0]=g),g>y[1]&&(y[1]=g)}}!i.persistent&&i.clean&&i.clean(),this._rawCount=this._count=e,this._extent=[]},t.prototype.count=function(){return this._count},t.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},t.prototype.getValues=function(t,e){var n=[],i=[];if(null==e){e=t,t=[];for(var r=0;r<this._dimensions.length;r++)i.push(r)}else i=t;r=0;for(var o=i.length;r<o;r++)n.push(this.get(i[r],e));return n},t.prototype.getByRawIndex=function(t,e){if(!(e>=0&&e<this._rawCount))return NaN;var n=this._chunks[t];return n?n[e]:NaN},t.prototype.getSum=function(t){var e=0;if(this._chunks[t])for(var n=0,i=this.count();n<i;n++){var r=this.get(t,n);isNaN(r)||(e+=r)}return e},t.prototype.getMedian=function(t){var e=[];this.each([t],(function(t){isNaN(t)||e.push(t)}));var n=e.sort((function(t,e){return t-e})),i=this.count();return 0===i?0:i%2==1?n[(i-1)/2]:(n[i/2]+n[i/2-1])/2},t.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(null!=n&&n<this._count&&n===t)return t;for(var i=0,r=this._count-1;i<=r;){var o=(i+r)/2|0;if(e[o]<t)i=o+1;else{if(!(e[o]>t))return o;r=o-1}}return-1},t.prototype.indicesOfNearest=function(t,e,n){var i=this._chunks[t],r=[];if(!i)return r;null==n&&(n=1/0);for(var o=1/0,a=-1,s=0,l=0,u=this.count();l<u;l++){var h=e-i[this.getRawIndex(l)],c=Math.abs(h);c<=n&&((c<o||c===o&&h>=0&&a<0)&&(o=c,a=h,s=0),h===a&&(r[s++]=l))}return r.length=s,r},t.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 r=0;r<i;r++)t[r]=e[r]}else t=new n(e.buffer,0,i)}else{t=new(n=Nf(this._rawCount))(this.count());for(r=0;r<t.length;r++)t[r]=r}return t},t.prototype.filter=function(t,e){if(!this._count)return this;for(var n=this.clone(),i=n.count(),r=new(Nf(n._rawCount))(i),o=[],a=t.length,s=0,l=t[0],u=n._chunks,h=0;h<i;h++){var c=void 0,p=n.getRawIndex(h);if(0===a)c=e(h);else if(1===a){c=e(u[l][p],h)}else{for(var d=0;d<a;d++)o[d]=u[t[d]][p];o[d]=h,c=e.apply(null,o)}c&&(r[s++]=p)}return s<i&&(n._indices=r),n._count=s,n._extent=[],n._updateGetRawIdx(),n},t.prototype.selectRange=function(t){var e=this.clone(),n=e._count;if(!n)return this;var i=G(t),r=i.length;if(!r)return this;var o=e.count(),a=new(Nf(e._rawCount))(o),s=0,l=i[0],u=t[l][0],h=t[l][1],c=e._chunks,p=!1;if(!e._indices){var d=0;if(1===r){for(var f=c[i[0]],g=0;g<n;g++){((x=f[g])>=u&&x<=h||isNaN(x))&&(a[s++]=d),d++}p=!0}else if(2===r){f=c[i[0]];var y=c[i[1]],v=t[i[1]][0],m=t[i[1]][1];for(g=0;g<n;g++){var x=f[g],_=y[g];(x>=u&&x<=h||isNaN(x))&&(_>=v&&_<=m||isNaN(_))&&(a[s++]=d),d++}p=!0}}if(!p)if(1===r)for(g=0;g<o;g++){var b=e.getRawIndex(g);((x=c[i[0]][b])>=u&&x<=h||isNaN(x))&&(a[s++]=b)}else for(g=0;g<o;g++){for(var w=!0,S=(b=e.getRawIndex(g),0);S<r;S++){var M=i[S];((x=c[M][b])<t[M][0]||x>t[M][1])&&(w=!1)}w&&(a[s++]=e.getRawIndex(g))}return s<o&&(e._indices=a),e._count=s,e._extent=[],e._updateGetRawIdx(),e},t.prototype.map=function(t,e){var n=this.clone(t);return this._updateDims(n,t,e),n},t.prototype.modify=function(t,e){this._updateDims(this,t,e)},t.prototype._updateDims=function(t,e,n){for(var i=t._chunks,r=[],o=e.length,a=t.count(),s=[],l=t._rawExtent,u=0;u<e.length;u++)l[e[u]]=[1/0,-1/0];for(var h=0;h<a;h++){for(var c=t.getRawIndex(h),p=0;p<o;p++)s[p]=i[e[p]][c];s[o]=h;var d=n&&n.apply(null,s);if(null!=d){"object"!=typeof d&&(r[0]=d,d=r);for(u=0;u<d.length;u++){var f=e[u],g=d[u],y=l[f],v=i[f];v&&(v[c]=g),g<y[0]&&(y[0]=g),g>y[1]&&(y[1]=g)}}}},t.prototype.lttbDownSample=function(t,e){var n,i,r,o=this.clone([t],!0),a=o._chunks[t],s=this.count(),l=0,u=Math.floor(1/e),h=this.getRawIndex(0),c=new(Nf(this._rawCount))(Math.min(2*(Math.ceil(s/u)+2),s));c[l++]=h;for(var p=1;p<s-1;p+=u){for(var d=Math.min(p+u,s-1),f=Math.min(p+2*u,s),g=(f+d)/2,y=0,v=d;v<f;v++){var m=a[I=this.getRawIndex(v)];isNaN(m)||(y+=m)}y/=f-d;var x=p,_=Math.min(p+u,s),b=p-1,w=a[h];n=-1,r=x;var S=-1,M=0;for(v=x;v<_;v++){var I;m=a[I=this.getRawIndex(v)];isNaN(m)?(M++,S<0&&(S=I)):(i=Math.abs((b-g)*(m-w)-(b-v)*(y-w)))>n&&(n=i,r=I)}M>0&&M<_-x&&(c[l++]=Math.min(S,r),r=Math.max(S,r)),c[l++]=r,h=r}return c[l++]=this.getRawIndex(s-1),o._count=l,o._indices=c,o.getRawIndex=this._getRawIdx,o},t.prototype.downSample=function(t,e,n,i){for(var r=this.clone([t],!0),o=r._chunks,a=[],s=Math.floor(1/e),l=o[t],u=this.count(),h=r._rawExtent[t]=[1/0,-1/0],c=new(Nf(this._rawCount))(Math.ceil(u/s)),p=0,d=0;d<u;d+=s){s>u-d&&(s=u-d,a.length=s);for(var f=0;f<s;f++){var g=this.getRawIndex(d+f);a[f]=l[g]}var y=n(a),v=this.getRawIndex(Math.min(d+i(a,y)||0,u-1));l[v]=y,y<h[0]&&(h[0]=y),y>h[1]&&(h[1]=y),c[p++]=v}return r._count=p,r._indices=c,r._updateGetRawIdx(),r},t.prototype.each=function(t,e){if(this._count)for(var n=t.length,i=this._chunks,r=0,o=this.count();r<o;r++){var a=this.getRawIndex(r);switch(n){case 0:e(r);break;case 1:e(i[t[0]][a],r);break;case 2:e(i[t[0]][a],i[t[1]][a],r);break;default:for(var s=0,l=[];s<n;s++)l[s]=i[t[s]][a];l[s]=r,e.apply(null,l)}}},t.prototype.getDataExtent=function(t){var e=this._chunks[t],n=[1/0,-1/0];if(!e)return n;var i,r=this.count();if(!this._indices)return this._rawExtent[t].slice();if(i=this._extent[t])return i.slice();for(var o=(i=n)[0],a=i[1],s=0;s<r;s++){var l=e[this.getRawIndex(s)];l<o&&(o=l),l>a&&(a=l)}return i=[o,a],this._extent[t]=i,i},t.prototype.getRawDataItem=function(t){var e=this.getRawIndex(t);if(this._provider.persistent)return this._provider.getItem(e);for(var n=[],i=this._chunks,r=0;r<i.length;r++)n.push(i[r][e]);return n},t.prototype.clone=function(e,n){var i,r,o=new t,a=this._chunks,s=e&&V(e,(function(t,e){return t[e]=!0,t}),{});if(s)for(var l=0;l<a.length;l++)o._chunks[l]=s[l]?(i=a[l],r=void 0,(r=i.constructor)===Array?i.slice():new r(i)):a[l];else o._chunks=a;return this._copyCommonProps(o),n||(o._indices=this._cloneIndices()),o._updateGetRawIdx(),o},t.prototype._copyCommonProps=function(t){t._count=this._count,t._rawCount=this._rawCount,t._provider=this._provider,t._dimensions=this._dimensions,t._extent=T(this._extent),t._rawExtent=T(this._rawExtent)},t.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},t.prototype._getRawIdxIdentity=function(t){return t},t.prototype._getRawIdx=function(t){return t<this._count&&t>=0?this._indices[t]:-1},t.prototype._updateGetRawIdx=function(){this.getRawIndex=this._indices?this._getRawIdx:this._getRawIdxIdentity},t.internalField=function(){function t(t,e,n,i){return pf(t[i],this._dimensions[i])}Df={arrayRows:t,objectRows:function(t,e,n,i){return pf(t[e],this._dimensions[i])},keyedColumns:t,original:function(t,e,n,i){var r=t&&(null==t.value?t:t.value);return pf(r instanceof Array?r[i]:r,this._dimensions[i])},typedArray:function(t,e,n,i){return t[i]}}}(),t}(),Vf=function(){function t(t){this._sourceList=[],this._storeList=[],this._upstreamSignList=[],this._versionSignBase=0,this._dirty=!0,this._sourceHost=t}return t.prototype.dirty=function(){this._setLocalSource([],[]),this._storeList=[],this._dirty=!0},t.prototype._setLocalSource=function(t,e){this._sourceList=t,this._upstreamSignList=e,this._versionSignBase++,this._versionSignBase>9e10&&(this._versionSignBase=0)},t.prototype._getVersionSign=function(){return this._sourceHost.uid+"_"+this._versionSignBase},t.prototype.prepareSource=function(){this._isDirty()&&(this._createSource(),this._dirty=!1)},t.prototype._createSource=function(){this._setLocalSource([],[]);var t,e,n=this._sourceHost,i=this._getUpstreamSourceManagers(),r=!!i.length;if(Ff(n)){var o=n,a=void 0,s=void 0,l=void 0;if(r){var u=i[0];u.prepareSource(),a=(l=u.getSource()).data,s=l.sourceFormat,e=[u._getVersionSign()]}else s=$(a=o.get("data",!0))?Rp:kp,e=[];var h=this._getSourceMetaRawOption()||{},c=l&&l.metaRawOption||{},p=rt(h.seriesLayoutBy,c.seriesLayoutBy)||null,d=rt(h.sourceHeader,c.sourceHeader),f=rt(h.dimensions,c.dimensions);t=p!==c.seriesLayoutBy||!!d!=!!c.sourceHeader||f?[Gd(a,{seriesLayoutBy:p,sourceHeader:d,dimensions:f},s)]:[]}else{var g=n;if(r){var y=this._applyTransform(i);t=y.sourceList,e=y.upstreamSignList}else{t=[Gd(g.get("source",!0),this._getSourceMetaRawOption(),null)],e=[]}}this._setLocalSource(t,e)},t.prototype._applyTransform=function(t){var e,n=this._sourceHost,i=n.get("transform",!0),r=n.get("fromTransformResult",!0);if(null!=r){var o="";1!==t.length&&Gf(o)}var a,s=[],l=[];return E(t,(function(t){t.prepareSource();var e=t.getSource(r||0),n="";null==r||e||Gf(n),s.push(e),l.push(t._getVersionSign())})),i?e=function(t,e,n){var i=ho(t),r=i.length,o="";r||ao(o);for(var a=0,s=r;a<s;a++)e=Tf(i[a],e),a!==s-1&&(e.length=Math.max(e.length,1));return e}(i,s,n.componentIndex):null!=r&&(e=[(a=s[0],new Bd({data:a.data,sourceFormat:a.sourceFormat,seriesLayoutBy:a.seriesLayoutBy,dimensionsDefine:T(a.dimensionsDefine),startIndex:a.startIndex,dimensionsDetectedCount:a.dimensionsDetectedCount}))]),{sourceList:e,upstreamSignList:l}},t.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}},t.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},t.prototype.getSharedDataStore=function(t){var e=t.makeStoreSchema();return this._innerGetDataStore(e.dimensions,t.source,e.hash)},t.prototype._innerGetDataStore=function(t,e,n){var i=this._storeList,r=i[0];r||(r=i[0]={});var o=r[n];if(!o){var a=this._getUpstreamSourceManagers()[0];Ff(this._sourceHost)&&a?o=a._innerGetDataStore(t,e,n):(o=new zf).initData(new Zd(e,t.length),t),r[n]=o}return o},t.prototype._getUpstreamSourceManagers=function(){var t=this._sourceHost;if(Ff(t)){var e=Yp(t);return e?[e.getSourceManager()]:[]}return z(function(t){return t.get("transform",!0)||t.get("fromTransformResult",!0)?Ao(t.ecModel,"dataset",{index:t.get("fromDatasetIndex",!0),id:t.get("fromDatasetId",!0)},Co).models:[]}(t),(function(t){return t.getSourceManager()}))},t.prototype._getSourceMetaRawOption=function(){var t,e,n,i=this._sourceHost;if(Ff(i))t=i.get("seriesLayoutBy",!0),e=i.get("sourceHeader",!0),n=i.get("dimensions",!0);else if(!this._getUpstreamSourceManagers().length){var r=i;t=r.get("seriesLayoutBy",!0),e=r.get("sourceHeader",!0),n=r.get("dimensions",!0)}return{seriesLayoutBy:t,sourceHeader:e,dimensions:n}},t}();function Bf(t){t.option.transform&&ct(t.option.transform)}function Ff(t){return"series"===t.mainType}function Gf(t){throw new Error(t)}function Wf(t,e){var n=t.color||"#6e7079",i=t.fontSize||12,r=t.fontWeight||"400",o=t.color||"#464646",a=t.fontSize||14,s=t.fontWeight||"900";return"html"===e?{nameStyle:"font-size:"+op(i+"")+"px;color:"+op(n)+";font-weight:"+op(r+""),valueStyle:"font-size:"+op(a+"")+"px;color:"+op(o)+";font-weight:"+op(s+"")}:{nameStyle:{fontSize:i,fill:n,fontWeight:r},valueStyle:{fontSize:a,fill:o,fontWeight:s}}}var Hf=[0,10,20,30],Yf=["","\n","\n\n","\n\n\n"];function Uf(t,e){return e.type=t,e}function Xf(t){return"section"===t.type}function Zf(t){return Xf(t)?qf:Kf}function jf(t){if(Xf(t)){var e=0,n=t.blocks.length,i=n>1||n>0&&!t.noHeader;return E(t.blocks,(function(t){var n=jf(t);n>=e&&(e=n+ +(i&&(!n||Xf(t)&&!t.noHeader)))})),e}return 0}function qf(t,e,n,i){var r,o=e.noHeader,a=(r=jf(e),{html:Hf[r],richText:Yf[r]}),s=[],l=e.blocks||[];lt(!l||Y(l)),l=l||[];var u=t.orderMode;if(e.sortBlocks&&u){l=l.slice();var h={valueAsc:"asc",valueDesc:"desc"};if(mt(h,u)){var c=new vf(h[u],null);l.sort((function(t,e){return c.evaluate(t.sortParam,e.sortParam)}))}else"seriesDesc"===u&&l.reverse()}E(l,(function(n,r){var o=e.valueFormatter,l=Zf(n)(o?A(A({},t),{valueFormatter:o}):t,n,r>0?a.html:0,i);null!=l&&s.push(l)}));var p="richText"===t.renderMode?s.join(a.richText):Jf(s.join(""),o?n:a.html);if(o)return p;var d=ap(e.header,"ordinal",t.useUTC),f=Wf(i,t.renderMode).nameStyle;return"richText"===t.renderMode?Qf(t,d,f)+a.richText+p:Jf('<div style="'+f+";"+'line-height:1;">'+op(d)+"</div>"+p,n)}function Kf(t,e,n,i){var r=t.renderMode,o=e.noName,a=e.noValue,s=!e.markerType,l=e.name,u=t.useUTC,h=e.valueFormatter||t.valueFormatter||function(t){return z(t=Y(t)?t:[t],(function(t,e){return ap(t,Y(d)?d[e]:d,u)}))};if(!o||!a){var c=s?"":t.markupStyleCreator.makeTooltipMarker(e.markerType,e.markerColor||"#333",r),p=o?"":ap(l,"ordinal",u),d=e.valueType,f=a?[]:h(e.value),g=!s||!o,y=!s&&o,v=Wf(i,r),m=v.nameStyle,x=v.valueStyle;return"richText"===r?(s?"":c)+(o?"":Qf(t,p,m))+(a?"":function(t,e,n,i,r){var o=[r],a=i?10:20;return n&&o.push({padding:[0,0,0,a],align:"right"}),t.markupStyleCreator.wrapRichTextStyle(Y(e)?e.join(" "):e,o)}(t,f,g,y,x)):Jf((s?"":c)+(o?"":function(t,e,n){return'<span style="'+n+";"+(e?"margin-left:2px":"")+'">'+op(t)+"</span>"}(p,!s,m))+(a?"":function(t,e,n,i){var r=n?"10px":"20px",o=e?"float:right;margin-left:"+r:"";return t=Y(t)?t:[t],'<span style="'+o+";"+i+'">'+z(t,(function(t){return op(t)})).join("&nbsp;&nbsp;")+"</span>"}(f,g,y,x)),n)}}function $f(t,e,n,i,r,o){if(t)return Zf(t)({useUTC:r,renderMode:n,orderMode:i,markupStyleCreator:e,valueFormatter:t.valueFormatter},t,0,o)}function Jf(t,e){return'<div style="'+("margin: "+e+"px 0 0")+";"+'line-height:1;">'+t+'<div style="clear:both"></div></div>'}function Qf(t,e,n){return t.markupStyleCreator.wrapRichTextStyle(e,n)}function tg(t,e){return cp(t.getData().getItemVisual(e,"style")[t.visualDrawType])}function eg(t,e){var n=t.get("padding");return null!=n?n:"richText"===e?[8,10]:10}var ng=function(){function t(){this.richTextStyles={},this._nextStyleNameId=no()}return t.prototype._generateStyleName=function(){return"__EC_aUTo_"+this._nextStyleNameId++},t.prototype.makeTooltipMarker=function(t,e,n){var i="richText"===n?this._generateStyleName():null,r=hp({color:e,type:t,renderMode:n,markerId:i});return X(r)?r:(this.richTextStyles[i]=r.style,r.content)},t.prototype.wrapRichTextStyle=function(t,e){var n={};Y(e)?E(e,(function(t){return A(n,t)})):A(n,e);var i=this._generateStyleName();return this.richTextStyles[i]=n,"{"+i+"|"+t+"}"},t}();function ig(t){var e,n,i,r,o=t.series,a=t.dataIndex,s=t.multipleSeries,l=o.getData(),u=l.mapDimensionsAll("defaultedTooltip"),h=u.length,c=o.getRawValue(a),p=Y(c),d=tg(o,a);if(h>1||p&&!h){var f=function(t,e,n,i,r){var o=e.getData(),a=V(t,(function(t,e,n){var i=o.getDimensionInfo(n);return t||i&&!1!==i.tooltip&&null!=i.displayName}),!1),s=[],l=[],u=[];function h(t,e){var n=o.getDimensionInfo(e);n&&!1!==n.otherDims.tooltip&&(a?u.push(Uf("nameValue",{markerType:"subItem",markerColor:r,name:n.displayName,value:t,valueType:n.type})):(s.push(t),l.push(n.type)))}return i.length?E(i,(function(t){h(of(o,n,t),t)})):E(t,h),{inlineValues:s,inlineValueTypes:l,blocks:u}}(c,o,a,u,d);e=f.inlineValues,n=f.inlineValueTypes,i=f.blocks,r=f.inlineValues[0]}else if(h){var g=l.getDimensionInfo(u[0]);r=e=of(l,a,u[0]),n=g.type}else r=e=p?c[0]:c;var y=_o(o),v=y&&o.name||"",m=l.getName(a),x=s?v:m;return Uf("section",{header:v,noHeader:s||!y,sortParam:r,blocks:[Uf("nameValue",{markerType:"item",markerColor:d,name:x,noName:!ut(x),value:e,valueType:n})].concat(i||[])})}var rg=So();function og(t,e){return t.getName(e)||t.getId(e)}var ag=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e._selectedDataIndicesMap={},e}return n(e,t),e.prototype.init=function(t,e,n){this.seriesIndex=this.componentIndex,this.dataTask=uf({count:lg,reset:ug}),this.dataTask.context={model:this},this.mergeDefaultAndTheme(t,n),(rg(this).sourceManager=new Vf(this)).prepareSource();var i=this.getInitialData(t,n);cg(i,this),this.dataTask.context.data=i,rg(this).dataBeforeProcessed=i,sg(this),this._initSelectedMapFromData(i)},e.prototype.mergeDefaultAndTheme=function(t,e){var n=_p(this),i=n?wp(t):{},r=this.subType;Ip.hasClass(r)&&(r+="Series"),C(t,e.getTheme().get(this.subType)),C(t,this.getDefaultOption()),co(t,"label",["show"]),this.fillDataTextStyle(t.data),n&&bp(t,i,n)},e.prototype.mergeOption=function(t,e){t=C(this.option,t,!0),this.fillDataTextStyle(t.data);var n=_p(this);n&&bp(this.option,t,n);var i=rg(this).sourceManager;i.dirty(),i.prepareSource();var r=this.getInitialData(t,e);cg(r,this),this.dataTask.dirty(),this.dataTask.context.data=r,rg(this).dataBeforeProcessed=r,sg(this),this._initSelectedMapFromData(r)},e.prototype.fillDataTextStyle=function(t){if(t&&!$(t))for(var e=["show"],n=0;n<t.length;n++)t[n]&&t[n].label&&co(t[n],"label",e)},e.prototype.getInitialData=function(t,e){},e.prototype.appendData=function(t){this.getRawData().appendData(t.data)},e.prototype.getData=function(t){var e=dg(this);if(e){var n=e.context.data;return null==t?n:n.getLinkedData(t)}return rg(this).data},e.prototype.getAllData=function(){var t=this.getData();return t&&t.getLinkedDataAll?t.getLinkedDataAll():[{data:t}]},e.prototype.setData=function(t){var e=dg(this);if(e){var n=e.context;n.outputData=t,e!==this.dataTask&&(n.data=t)}rg(this).data=t},e.prototype.getEncode=function(){var t=this.get("encode",!0);if(t)return ft(t)},e.prototype.getSourceManager=function(){return rg(this).sourceManager},e.prototype.getSource=function(){return this.getSourceManager().getSource()},e.prototype.getRawData=function(){return rg(this).dataBeforeProcessed},e.prototype.getColorBy=function(){return this.get("colorBy")||"series"},e.prototype.isColorBySeries=function(){return"series"===this.getColorBy()},e.prototype.getBaseAxis=function(){var t=this.coordinateSystem;return t&&t.getBaseAxis&&t.getBaseAxis()},e.prototype.formatTooltip=function(t,e,n){return ig({series:this,dataIndex:t,multipleSeries:e})},e.prototype.isAnimationEnabled=function(){var t=this.ecModel;if(r.node&&(!t||!t.ssr))return!1;var e=this.getShallow("animation");return e&&this.getData().count()>this.getShallow("animationThreshold")&&(e=!1),!!e},e.prototype.restoreData=function(){this.dataTask.dirty()},e.prototype.getColorFromPalette=function(t,e,n){var i=this.ecModel,r=Qp.prototype.getColorFromPalette.call(this,t,e,n);return r||(r=i.getColorFromPalette(t,e,n)),r},e.prototype.coordDimToDataDim=function(t){return this.getRawData().mapDimensionsAll(t)},e.prototype.getProgressive=function(){return this.get("progressive")},e.prototype.getProgressiveThreshold=function(){return this.get("progressiveThreshold")},e.prototype.select=function(t,e){this._innerSelect(this.getData(e),t)},e.prototype.unselect=function(t,e){var n=this.option.selectedMap;if(n){var i=this.option.selectedMode,r=this.getData(e);if("series"===i||"all"===n)return this.option.selectedMap={},void(this._selectedDataIndicesMap={});for(var o=0;o<t.length;o++){var a=og(r,t[o]);n[a]=!1,this._selectedDataIndicesMap[a]=-1}}},e.prototype.toggleSelect=function(t,e){for(var n=[],i=0;i<t.length;i++)n[0]=t[i],this.isSelected(t[i],e)?this.unselect(n,e):this.select(n,e)},e.prototype.getSelectedDataIndices=function(){if("all"===this.option.selectedMap)return[].slice.call(this.getData().getIndices());for(var t=this._selectedDataIndicesMap,e=G(t),n=[],i=0;i<e.length;i++){var r=t[e[i]];r>=0&&n.push(r)}return n},e.prototype.isSelected=function(t,e){var n=this.option.selectedMap;if(!n)return!1;var i=this.getData(e);return("all"===n||n[og(i,t)])&&!i.getItemModel(t).get(["select","disabled"])},e.prototype.isUniversalTransitionEnabled=function(){if(this.__universalTransitionEnabled)return!0;var t=this.option.universalTransition;return!!t&&(!0===t||t&&t.enabled)},e.prototype._innerSelect=function(t,e){var n,i,r=this.option,o=r.selectedMode,a=e.length;if(o&&a)if("series"===o)r.selectedMap="all";else if("multiple"===o){q(r.selectedMap)||(r.selectedMap={});for(var s=r.selectedMap,l=0;l<a;l++){var u=e[l];s[c=og(t,u)]=!0,this._selectedDataIndicesMap[c]=t.getRawIndex(u)}}else if("single"===o||!0===o){var h=e[a-1],c=og(t,h);r.selectedMap=((n={})[c]=!0,n),this._selectedDataIndicesMap=((i={})[c]=t.getRawIndex(h),i)}},e.prototype._initSelectedMapFromData=function(t){if(!this.option.selectedMap){var e=[];t.hasItemOption&&t.each((function(n){var i=t.getRawDataItem(n);i&&i.selected&&e.push(n)})),e.length>0&&this._innerSelect(t,e)}},e.registerClass=function(t){return Ip.registerClass(t)},e.protoInitialize=function(){var t=e.prototype;t.type="series.__base__",t.seriesIndex=0,t.ignoreStyleOnData=!1,t.hasSymbolVisual=!1,t.defaultSymbol="circle",t.visualStyleAccessPath="itemStyle",t.visualDrawType="fill"}(),e}(Ip);function sg(t){var e=t.name;_o(t)||(t.name=function(t){var e=t.getRawData(),n=e.mapDimensionsAll("seriesName"),i=[];return E(n,(function(t){var n=e.getDimensionInfo(t);n.displayName&&i.push(n.displayName)})),i.join(" ")}(t)||e)}function lg(t){return t.model.getRawData().count()}function ug(t){var e=t.model;return e.setData(e.getRawData().cloneShallow()),hg}function hg(t,e){e.outputData&&t.end>e.outputData.count()&&e.model.getRawData().cloneShallow(e.outputData)}function cg(t,e){E(gt(t.CHANGABLE_METHODS,t.DOWNSAMPLE_METHODS),(function(n){t.wrapMethod(n,H(pg,e))}))}function pg(t,e){var n=dg(t);return n&&n.setOutputEnd((e||this).count()),e}function dg(t){var e=(t.ecModel||{}).scheduler,n=e&&e.getPipeline(t.uid);if(n){var i=n.currentTask;if(i){var r=i.agentStubMap;r&&(i=r.get(t.uid))}return i}}R(ag,sf),R(ag,Qp),zo(ag,Ip);var fg=function(){function t(){this.group=new Cr,this.uid=fc("viewComponent")}return t.prototype.init=function(t,e){},t.prototype.render=function(t,e,n,i){},t.prototype.dispose=function(t,e){},t.prototype.updateView=function(t,e,n,i){},t.prototype.updateLayout=function(t,e,n,i){},t.prototype.updateVisual=function(t,e,n,i){},t.prototype.blurSeries=function(t,e){},t.prototype.eachRendered=function(t){var e=this.group;e&&e.traverse(t)},t}();function gg(){var t=So();return function(e){var n=t(e),i=e.pipelineContext,r=!!n.large,o=!!n.progressiveRender,a=n.large=!(!i||!i.large),s=n.progressiveRender=!(!i||!i.progressiveRender);return!(r===a&&o===s)&&"reset"}}Eo(fg),Go(fg);var yg=So(),vg=gg(),mg=function(){function t(){this.group=new Cr,this.uid=fc("viewChart"),this.renderTask=uf({plan:bg,reset:wg}),this.renderTask.context={view:this}}return t.prototype.init=function(t,e){},t.prototype.render=function(t,e,n,i){0},t.prototype.highlight=function(t,e,n,i){var r=t.getData(i&&i.dataType);r&&_g(r,i,"emphasis")},t.prototype.downplay=function(t,e,n,i){var r=t.getData(i&&i.dataType);r&&_g(r,i,"normal")},t.prototype.remove=function(t,e){this.group.removeAll()},t.prototype.dispose=function(t,e){},t.prototype.updateView=function(t,e,n,i){this.render(t,e,n,i)},t.prototype.updateLayout=function(t,e,n,i){this.render(t,e,n,i)},t.prototype.updateVisual=function(t,e,n,i){this.render(t,e,n,i)},t.prototype.eachRendered=function(t){zh(this.group,t)},t.markUpdateMethod=function(t,e){yg(t).updateMethod=e},t.protoInitialize=void(t.prototype.type="chart"),t}();function xg(t,e,n){t&&Bl(t)&&("emphasis"===e?xl:_l)(t,n)}function _g(t,e,n){var i=wo(t,e),r=e&&null!=e.highlightKey?function(t){var e=Us[t];return null==e&&Ys<=32&&(e=Us[t]=Ys++),e}(e.highlightKey):null;null!=i?E(ho(i),(function(e){xg(t.getItemGraphicEl(e),n,r)})):t.eachItemGraphicEl((function(t){xg(t,n,r)}))}function bg(t){return vg(t.model)}function wg(t){var e=t.model,n=t.ecModel,i=t.api,r=t.payload,o=e.pipelineContext.progressiveRender,a=t.view,s=r&&yg(r).updateMethod,l=o?"incrementalPrepareRender":s&&a[s]?s:"render";return"render"!==l&&a[l](e,n,i,r),Sg[l]}Eo(mg),Go(mg);var Sg={incrementalPrepareRender:{progress:function(t,e){e.view.incrementalRender(t,e.model,e.ecModel,e.api,e.payload)}},render:{forceFirstProgress:!0,progress:function(t,e){e.view.render(e.model,e.ecModel,e.api,e.payload)}}},Mg="\0__throttleOriginMethod",Ig="\0__throttleRate",Tg="\0__throttleType";function Cg(t,e,n){var i,r,o,a,s,l=0,u=0,h=null;function c(){u=(new Date).getTime(),h=null,t.apply(o,a||[])}e=e||0;var p=function(){for(var t=[],p=0;p<arguments.length;p++)t[p]=arguments[p];i=(new Date).getTime(),o=this,a=t;var d=s||e,f=s||n;s=null,r=i-(f?l:u)-d,clearTimeout(h),f?h=setTimeout(c,d):r>=0?c():h=setTimeout(c,-r),l=i};return p.clear=function(){h&&(clearTimeout(h),h=null)},p.debounceNextCall=function(t){s=t},p}function Dg(t,e,n,i){var r=t[e];if(r){var o=r[Mg]||r,a=r[Tg];if(r[Ig]!==n||a!==i){if(null==n||!i)return t[e]=o;(r=t[e]=Cg(o,n,"debounce"===i))[Mg]=o,r[Tg]=i,r[Ig]=n}return r}}function Ag(t,e){var n=t[e];n&&n[Mg]&&(n.clear&&n.clear(),t[e]=n[Mg])}var kg=So(),Lg={itemStyle:Wo(uc,!0),lineStyle:Wo(ac,!0)},Pg={lineStyle:"stroke",itemStyle:"fill"};function Og(t,e){var n=t.visualStyleMapper||Lg[e];return n||(console.warn("Unkown style type '"+e+"'."),Lg.itemStyle)}function Rg(t,e){var n=t.visualDrawType||Pg[e];return n||(console.warn("Unkown style type '"+e+"'."),"fill")}var Ng={createOnAllSeries:!0,performRawSeries:!0,reset:function(t,e){var n=t.getData(),i=t.visualStyleAccessPath||"itemStyle",r=t.getModel(i),o=Og(t,i)(r),a=r.getShallow("decal");a&&(n.setVisual("decal",a),a.dirty=!0);var s=Rg(t,i),l=o[s],u=U(l)?l:null,h="auto"===o.fill||"auto"===o.stroke;if(!o[s]||u||h){var c=t.getColorFromPalette(t.name,null,e.getSeriesCount());o[s]||(o[s]=c,n.setVisual("colorFromPalette",!0)),o.fill="auto"===o.fill||U(o.fill)?c:o.fill,o.stroke="auto"===o.stroke||U(o.stroke)?c:o.stroke}if(n.setVisual("style",o),n.setVisual("drawType",s),!e.isSeriesFiltered(t)&&u)return n.setVisual("colorFromPalette",!1),{dataEach:function(e,n){var i=t.getDataParams(n),r=A({},o);r[s]=u(i),e.setItemVisual(n,"style",r)}}}},Eg=new pc,zg={createOnAllSeries:!0,performRawSeries:!0,reset:function(t,e){if(!t.ignoreStyleOnData&&!e.isSeriesFiltered(t)){var n=t.getData(),i=t.visualStyleAccessPath||"itemStyle",r=Og(t,i),o=n.getVisual("drawType");return{dataEach:n.hasItemOption?function(t,e){var n=t.getRawDataItem(e);if(n&&n[i]){Eg.option=n[i];var a=r(Eg);A(t.ensureUniqueItemVisual(e,"style"),a),Eg.option.decal&&(t.setItemVisual(e,"decal",Eg.option.decal),Eg.option.decal.dirty=!0),o in a&&t.setItemVisual(e,"colorFromPalette",!1)}}:null}}}},Vg={performRawSeries:!0,overallReset:function(t){var e=ft();t.eachSeries((function(t){var n=t.getColorBy();if(!t.isColorBySeries()){var i=t.type+"-"+n,r=e.get(i);r||(r={},e.set(i,r)),kg(t).scope=r}})),t.eachSeries((function(e){if(!e.isColorBySeries()&&!t.isSeriesFiltered(e)){var n=e.getRawData(),i={},r=e.getData(),o=kg(e).scope,a=e.visualStyleAccessPath||"itemStyle",s=Rg(e,a);r.each((function(t){var e=r.getRawIndex(t);i[e]=t})),n.each((function(t){var a=i[t];if(r.getItemVisual(a,"colorFromPalette")){var l=r.ensureUniqueItemVisual(a,"style"),u=n.getName(t)||t+"",h=n.count();l[s]=e.getColorFromPalette(u,o,h)}}))}}))}},Bg=Math.PI;var Fg=function(){function t(t,e,n,i){this._stageTaskMap=ft(),this.ecInstance=t,this.api=e,n=this._dataProcessorHandlers=n.slice(),i=this._visualHandlers=i.slice(),this._allHandlers=n.concat(i)}return t.prototype.restoreData=function(t,e){t.restoreData(e),this._stageTaskMap.each((function(t){var e=t.overallTask;e&&e.dirty()}))},t.prototype.getPerformArgs=function(t,e){if(t.__pipeline){var n=this._pipelineMap.get(t.__pipeline.id),i=n.context,r=!e&&n.progressiveEnabled&&(!i||i.progressiveRender)&&t.__idxInPipeline>n.blockIndex?n.step:null,o=i&&i.modDataCount;return{step:r,modBy:null!=o?Math.ceil(o/r):null,modDataCount:o}}},t.prototype.getPipeline=function(t){return this._pipelineMap.get(t)},t.prototype.updateStreamModes=function(t,e){var n=this._pipelineMap.get(t.uid),i=t.getData().count(),r=n.progressiveEnabled&&e.incrementalPrepareRender&&i>=n.threshold,o=t.get("large")&&i>=t.get("largeThreshold"),a="mod"===t.get("progressiveChunkMode")?i:null;t.pipelineContext=n.context={progressiveRender:r,modDataCount:a,large:o}},t.prototype.restorePipelines=function(t){var e=this,n=e._pipelineMap=ft();t.eachSeries((function(t){var i=t.getProgressive(),r=t.uid;n.set(r,{id:r,head:null,tail:null,threshold:t.getProgressiveThreshold(),progressiveEnabled:i&&!(t.preventIncremental&&t.preventIncremental()),blockIndex:-1,step:Math.round(i||700),count:0}),e._pipe(t,t.dataTask)}))},t.prototype.prepareStageTasks=function(){var t=this._stageTaskMap,e=this.api.getModel(),n=this.api;E(this._allHandlers,(function(i){var r=t.get(i.uid)||t.set(i.uid,{}),o="";lt(!(i.reset&&i.overallReset),o),i.reset&&this._createSeriesStageTask(i,r,e,n),i.overallReset&&this._createOverallStageTask(i,r,e,n)}),this)},t.prototype.prepareView=function(t,e,n,i){var r=t.renderTask,o=r.context;o.model=e,o.ecModel=n,o.api=i,r.__block=!t.incrementalPrepareRender,this._pipe(e,r)},t.prototype.performDataProcessorTasks=function(t,e){this._performStageTasks(this._dataProcessorHandlers,t,e,{block:!0})},t.prototype.performVisualTasks=function(t,e,n){this._performStageTasks(this._visualHandlers,t,e,n)},t.prototype._performStageTasks=function(t,e,n,i){i=i||{};var r=!1,o=this;function a(t,e){return t.setDirty&&(!t.dirtyMap||t.dirtyMap.get(e.__pipeline.id))}E(t,(function(t,s){if(!i.visualType||i.visualType===t.visualType){var l=o._stageTaskMap.get(t.uid),u=l.seriesTaskMap,h=l.overallTask;if(h){var c,p=h.agentStubMap;p.each((function(t){a(i,t)&&(t.dirty(),c=!0)})),c&&h.dirty(),o.updatePayload(h,n);var d=o.getPerformArgs(h,i.block);p.each((function(t){t.perform(d)})),h.perform(d)&&(r=!0)}else u&&u.each((function(s,l){a(i,s)&&s.dirty();var u=o.getPerformArgs(s,i.block);u.skip=!t.performRawSeries&&e.isSeriesFiltered(s.context.model),o.updatePayload(s,n),s.perform(u)&&(r=!0)}))}})),this.unfinished=r||this.unfinished},t.prototype.performSeriesTasks=function(t){var e;t.eachSeries((function(t){e=t.dataTask.perform()||e})),this.unfinished=e||this.unfinished},t.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)}))},t.prototype.updatePayload=function(t,e){"remain"!==e&&(t.context.payload=e)},t.prototype._createSeriesStageTask=function(t,e,n,i){var r=this,o=e.seriesTaskMap,a=e.seriesTaskMap=ft(),s=t.seriesType,l=t.getTargetSeries;function u(e){var s=e.uid,l=a.set(s,o&&o.get(s)||uf({plan:Ug,reset:Xg,count:qg}));l.context={model:e,ecModel:n,api:i,useClearVisual:t.isVisual&&!t.isLayout,plan:t.plan,reset:t.reset,scheduler:r},r._pipe(e,l)}t.createOnAllSeries?n.eachRawSeries(u):s?n.eachRawSeriesByType(s,u):l&&l(n,i).each(u)},t.prototype._createOverallStageTask=function(t,e,n,i){var r=this,o=e.overallTask=e.overallTask||uf({reset:Gg});o.context={ecModel:n,api:i,overallReset:t.overallReset,scheduler:r};var a=o.agentStubMap,s=o.agentStubMap=ft(),l=t.seriesType,u=t.getTargetSeries,h=!0,c=!1,p="";function d(t){var e=t.uid,n=s.set(e,a&&a.get(e)||(c=!0,uf({reset:Wg,onDirty:Yg})));n.context={model:t,overallProgress:h},n.agent=o,n.__block=h,r._pipe(t,n)}lt(!t.createOnAllSeries,p),l?n.eachRawSeriesByType(l,d):u?u(n,i).each(d):(h=!1,E(n.getSeries(),d)),c&&o.dirty()},t.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},t.wrapStageHandler=function(t,e){return U(t)&&(t={overallReset:t,seriesType:Kg(t)}),t.uid=fc("stageHandler"),e&&(t.visualType=e),t},t}();function Gg(t){t.overallReset(t.ecModel,t.api,t.payload)}function Wg(t){return t.overallProgress&&Hg}function Hg(){this.agent.dirty(),this.getDownstream().dirty()}function Yg(){this.agent&&this.agent.dirty()}function Ug(t){return t.plan?t.plan(t.model,t.ecModel,t.api,t.payload):null}function Xg(t){t.useClearVisual&&t.data.clearAllVisual();var e=t.resetDefines=ho(t.reset(t.model,t.ecModel,t.api,t.payload));return e.length>1?z(e,(function(t,e){return jg(e)})):Zg}var Zg=jg(0);function jg(t){return function(e,n){var i=n.data,r=n.resetDefines[t];if(r&&r.dataEach)for(var o=e.start;o<e.end;o++)r.dataEach(i,o);else r&&r.progress&&r.progress(e,i)}}function qg(t){return t.data.count()}function Kg(t){$g=null;try{t(Jg,Qg)}catch(t){}return $g}var $g,Jg={},Qg={};function ty(t,e){for(var n in e.prototype)t[n]=xt}ty(Jg,nd),ty(Qg,sd),Jg.eachSeriesByType=Jg.eachRawSeriesByType=function(t){$g=t},Jg.eachComponent=function(t){"series"===t.mainType&&t.subType&&($g=t.subType)};var ey=["#37A2DA","#32C5E9","#67E0E3","#9FE6B8","#FFDB5C","#ff9f7f","#fb7293","#E062AE","#E690D1","#e7bcf3","#9d96f5","#8378EA","#96BFFF"],ny={color:ey,colorLayer:[["#37A2DA","#ffd85c","#fd7b5f"],["#37A2DA","#67E0E3","#FFDB5C","#ff9f7f","#E062AE","#9d96f5"],["#37A2DA","#32C5E9","#9FE6B8","#FFDB5C","#ff9f7f","#fb7293","#e7bcf3","#8378EA","#96BFFF"],ey]},iy="#B9B8CE",ry="#100C2A",oy=function(){return{axisLine:{lineStyle:{color:iy}},splitLine:{lineStyle:{color:"#484753"}},splitArea:{areaStyle:{color:["rgba(255,255,255,0.02)","rgba(255,255,255,0.05)"]}},minorSplitLine:{lineStyle:{color:"#20203B"}}}},ay=["#4992ff","#7cffb2","#fddd60","#ff6e76","#58d9f9","#05c091","#ff8a45","#8d48e3","#dd79ff"],sy={darkMode:!0,color:ay,backgroundColor:ry,axisPointer:{lineStyle:{color:"#817f91"},crossStyle:{color:"#817f91"},label:{color:"#fff"}},legend:{textStyle:{color:iy}},textStyle:{color:iy},title:{textStyle:{color:"#EEF1FA"},subtextStyle:{color:"#B9B8CE"}},toolbox:{iconStyle:{borderColor:iy}},dataZoom:{borderColor:"#71708A",textStyle:{color:iy},brushStyle:{color:"rgba(135,163,206,0.3)"},handleStyle:{color:"#353450",borderColor:"#C5CBE3"},moveHandleStyle:{color:"#B0B6C3",opacity:.3},fillerColor:"rgba(135,163,206,0.2)",emphasis:{handleStyle:{borderColor:"#91B7F2",color:"#4D587D"},moveHandleStyle:{color:"#636D9A",opacity:.7}},dataBackground:{lineStyle:{color:"#71708A",width:1},areaStyle:{color:"#71708A"}},selectedDataBackground:{lineStyle:{color:"#87A3CE"},areaStyle:{color:"#87A3CE"}}},visualMap:{textStyle:{color:iy}},timeline:{lineStyle:{color:iy},label:{color:iy},controlStyle:{color:iy,borderColor:iy}},calendar:{itemStyle:{color:ry},dayLabel:{color:iy},monthLabel:{color:iy},yearLabel:{color:iy}},timeAxis:oy(),logAxis:oy(),valueAxis:oy(),categoryAxis:oy(),line:{symbol:"circle"},graph:{color:ay},gauge:{title:{color:iy},axisLine:{lineStyle:{color:[[1,"rgba(207,212,219,0.2)"]]}},axisLabel:{color:iy},detail:{color:"#EEF1FA"}},candlestick:{itemStyle:{color:"#f64e56",color0:"#54ea92",borderColor:"#f64e56",borderColor0:"#54ea92"}}};sy.categoryAxis.splitLine.show=!1;var ly=function(){function t(){}return t.prototype.normalizeQuery=function(t){var e={},n={},i={};if(X(t)){var r=No(t);e.mainType=r.main||null,e.subType=r.sub||null}else{var o=["Index","Name","Id"],a={name:1,dataIndex:1,dataType:1};E(t,(function(t,r){for(var s=!1,l=0;l<o.length;l++){var u=o[l],h=r.lastIndexOf(u);if(h>0&&h===r.length-u.length){var c=r.slice(0,h);"data"!==c&&(e.mainType=c,e[u.toLowerCase()]=t,s=!0)}}a.hasOwnProperty(r)&&(n[r]=t,s=!0),s||(i[r]=t)}))}return{cptQuery:e,dataQuery:n,otherQuery:i}},t.prototype.filter=function(t,e){var n=this.eventInfo;if(!n)return!0;var i=n.targetEl,r=n.packedEvent,o=n.model,a=n.view;if(!o||!a)return!0;var s=e.cptQuery,l=e.dataQuery;return u(s,o,"mainType")&&u(s,o,"subType")&&u(s,o,"index","componentIndex")&&u(s,o,"name")&&u(s,o,"id")&&u(l,r,"name")&&u(l,r,"dataIndex")&&u(l,r,"dataType")&&(!a.filterForExposedEvent||a.filterForExposedEvent(t,e.otherQuery,i,r));function u(t,e,n,i){return null==t[n]||e[i||n]===t[n]}},t.prototype.afterTrigger=function(){this.eventInfo=null},t}(),uy=["symbol","symbolSize","symbolRotate","symbolOffset"],hy=uy.concat(["symbolKeepAspect"]),cy={createOnAllSeries:!0,performRawSeries:!0,reset:function(t,e){var n=t.getData();if(t.legendIcon&&n.setVisual("legendIcon",t.legendIcon),t.hasSymbolVisual){for(var i={},r={},o=!1,a=0;a<uy.length;a++){var s=uy[a],l=t.get(s);U(l)?(o=!0,r[s]=l):i[s]=l}if(i.symbol=i.symbol||t.defaultSymbol,n.setVisual(A({legendIcon:t.legendIcon||i.symbol,symbolKeepAspect:t.get("symbolKeepAspect")},i)),!e.isSeriesFiltered(t)){var u=G(r);return{dataEach:o?function(e,n){for(var i=t.getRawValue(n),o=t.getDataParams(n),a=0;a<u.length;a++){var s=u[a];e.setItemVisual(n,s,r[s](i,o))}}:null}}}}},py={createOnAllSeries:!0,performRawSeries:!0,reset:function(t,e){if(t.hasSymbolVisual&&!e.isSeriesFiltered(t))return{dataEach:t.getData().hasItemOption?function(t,e){for(var n=t.getItemModel(e),i=0;i<hy.length;i++){var r=hy[i],o=n.getShallow(r,!0);null!=o&&t.setItemVisual(e,r,o)}}:null}}};function dy(t,e,n){switch(n){case"color":return t.getItemVisual(e,"style")[t.getVisual("drawType")];case"opacity":return t.getItemVisual(e,"style").opacity;case"symbol":case"symbolSize":case"liftZ":return t.getItemVisual(e,n);default:0}}function fy(t,e){switch(e){case"color":return t.getVisual("style")[t.getVisual("drawType")];case"opacity":return t.getVisual("style").opacity;case"symbol":case"symbolSize":case"liftZ":return t.getVisual(e);default:0}}function gy(t,e,n,i){switch(n){case"color":t.ensureUniqueItemVisual(e,"style")[t.getVisual("drawType")]=i,t.setItemVisual(e,"colorFromPalette",!1);break;case"opacity":t.ensureUniqueItemVisual(e,"style").opacity=i;break;case"symbol":case"symbolSize":case"liftZ":t.setItemVisual(e,n,i);break;default:0}}function yy(t,e){function n(e,n){var i=[];return e.eachComponent({mainType:"series",subType:t,query:n},(function(t){i.push(t.seriesIndex)})),i}E([[t+"ToggleSelect","toggleSelect"],[t+"Select","select"],[t+"UnSelect","unselect"]],(function(t){e(t[0],(function(e,i,r){e=A({},e),r.dispatchAction(A(e,{type:t[1],seriesIndex:n(i,e)}))}))}))}function vy(t,e,n,i,r){var o=t+e;n.isSilent(o)||i.eachComponent({mainType:"series",subType:"pie"},(function(t){for(var e=t.seriesIndex,i=t.option.selectedMap,a=r.selected,s=0;s<a.length;s++)if(a[s].seriesIndex===e){var l=t.getData(),u=wo(l,r.fromActionPayload);n.trigger(o,{type:o,seriesId:t.id,name:Y(u)?l.getName(u[0]):l.getName(u),selected:X(i)?i:A({},i)})}}))}function my(t,e,n){for(var i;t&&(!e(t)||(i=t,!n));)t=t.__hostTarget||t.parent;return i}var xy=Math.round(9*Math.random()),_y="function"==typeof Object.defineProperty,by=function(){function t(){this._id="__ec_inner_"+xy++}return t.prototype.get=function(t){return this._guard(t)[this._id]},t.prototype.set=function(t,e){var n=this._guard(t);return _y?Object.defineProperty(n,this._id,{value:e,enumerable:!1,configurable:!0}):n[this._id]=e,this},t.prototype.delete=function(t){return!!this.has(t)&&(delete this._guard(t)[this._id],!0)},t.prototype.has=function(t){return!!this._guard(t)[this._id]},t.prototype._guard=function(t){if(t!==Object(t))throw TypeError("Value of WeakMap is not a non-null object.");return t},t}(),wy=fs.extend({type:"triangle",shape:{cx:0,cy:0,width:0,height:0},buildPath:function(t,e){var n=e.cx,i=e.cy,r=e.width/2,o=e.height/2;t.moveTo(n,i-o),t.lineTo(n+r,i+o),t.lineTo(n-r,i+o),t.closePath()}}),Sy=fs.extend({type:"diamond",shape:{cx:0,cy:0,width:0,height:0},buildPath:function(t,e){var n=e.cx,i=e.cy,r=e.width/2,o=e.height/2;t.moveTo(n,i-o),t.lineTo(n+r,i),t.lineTo(n,i+o),t.lineTo(n-r,i),t.closePath()}}),My=fs.extend({type:"pin",shape:{x:0,y:0,width:0,height:0},buildPath:function(t,e){var n=e.x,i=e.y,r=e.width/5*3,o=Math.max(r,e.height),a=r/2,s=a*a/(o-a),l=i-o+a+s,u=Math.asin(s/a),h=Math.cos(u)*a,c=Math.sin(u),p=Math.cos(u),d=.6*a,f=.7*a;t.moveTo(n-h,l+s),t.arc(n,l,a,Math.PI-u,2*Math.PI+u),t.bezierCurveTo(n+h-c*d,l+s+p*d,n,i-f,n,i),t.bezierCurveTo(n,i-f,n-h+c*d,l+s+p*d,n-h,l+s),t.closePath()}}),Iy=fs.extend({type:"arrow",shape:{x:0,y:0,width:0,height:0},buildPath:function(t,e){var n=e.height,i=e.width,r=e.x,o=e.y,a=i/3*2;t.moveTo(r,o),t.lineTo(r+a,o+n),t.lineTo(r,o+n/4*3),t.lineTo(r-a,o+n),t.lineTo(r,o),t.closePath()}}),Ty={line:function(t,e,n,i,r){r.x1=t,r.y1=e+i/2,r.x2=t+n,r.y2=e+i/2},rect:function(t,e,n,i,r){r.x=t,r.y=e,r.width=n,r.height=i},roundRect:function(t,e,n,i,r){r.x=t,r.y=e,r.width=n,r.height=i,r.r=Math.min(n,i)/4},square:function(t,e,n,i,r){var o=Math.min(n,i);r.x=t,r.y=e,r.width=o,r.height=o},circle:function(t,e,n,i,r){r.cx=t+n/2,r.cy=e+i/2,r.r=Math.min(n,i)/2},diamond:function(t,e,n,i,r){r.cx=t+n/2,r.cy=e+i/2,r.width=n,r.height=i},pin:function(t,e,n,i,r){r.x=t+n/2,r.y=e+i/2,r.width=n,r.height=i},arrow:function(t,e,n,i,r){r.x=t+n/2,r.y=e+i/2,r.width=n,r.height=i},triangle:function(t,e,n,i,r){r.cx=t+n/2,r.cy=e+i/2,r.width=n,r.height=i}},Cy={};E({line:Eu,rect:Ts,roundRect:Ts,square:Ts,circle:uu,diamond:Sy,pin:My,arrow:Iy,triangle:wy},(function(t,e){Cy[e]=new t}));var Dy=fs.extend({type:"symbol",shape:{symbolType:"",x:0,y:0,width:0,height:0},calculateTextPosition:function(t,e,n){var i=yr(t,e,n),r=this.shape;return r&&"pin"===r.symbolType&&"inside"===e.position&&(i.y=n.y+.4*n.height),i},buildPath:function(t,e,n){var i=e.symbolType;if("none"!==i){var r=Cy[i];r||(r=Cy[i="rect"]),Ty[i](e.x,e.y,e.width,e.height,r.shape),r.buildPath(t,r.shape,n)}}});function Ay(t,e){if("image"!==this.type){var n=this.style;this.__isEmptyBrush?(n.stroke=t,n.fill=e||"#fff",n.lineWidth=2):"line"===this.shape.symbolType?n.stroke=t:n.fill=t,this.markRedraw()}}function ky(t,e,n,i,r,o,a){var s,l=0===t.indexOf("empty");return l&&(t=t.substr(5,1).toLowerCase()+t.substr(6)),(s=0===t.indexOf("image://")?xh(t.slice(8),new sr(e,n,i,r),a?"center":"cover"):0===t.indexOf("path://")?mh(t.slice(7),{},new sr(e,n,i,r),a?"center":"cover"):new Dy({shape:{symbolType:t,x:e,y:n,width:i,height:r}})).__isEmptyBrush=l,s.setColor=Ay,o&&s.setColor(o),s}function Ly(t){return Y(t)||(t=[+t,+t]),[t[0]||0,t[1]||0]}function Py(t,e){if(null!=t)return Y(t)||(t=[t,t]),[Er(t[0],e[0])||0,Er(rt(t[1],t[0]),e[1])||0]}function Oy(t,e,n){for(var i="radial"===e.type?function(t,e,n){var i=n.width,r=n.height,o=Math.min(i,r),a=null==e.x?.5:e.x,s=null==e.y?.5:e.y,l=null==e.r?.5:e.r;return e.global||(a=a*i+n.x,s=s*r+n.y,l*=o),t.createRadialGradient(a,s,0,a,s,l)}(t,e,n):function(t,e,n){var i=null==e.x?0:e.x,r=null==e.x2?1:e.x2,o=null==e.y?0:e.y,a=null==e.y2?0:e.y2;return e.global||(i=i*n.width+n.x,r=r*n.width+n.x,o=o*n.height+n.y,a=a*n.height+n.y),i=isNaN(i)?0:i,r=isNaN(r)?1:r,o=isNaN(o)?0:o,a=isNaN(a)?0:a,t.createLinearGradient(i,o,r,a)}(t,e,n),r=e.colorStops,o=0;o<r.length;o++)i.addColorStop(r[o].offset,r[o].color);return i}function Ry(t){return parseInt(t,10)}function Ny(t,e,n){var i=["width","height"][e],r=["clientWidth","clientHeight"][e],o=["paddingLeft","paddingTop"][e],a=["paddingRight","paddingBottom"][e];if(null!=n[i]&&"auto"!==n[i])return parseFloat(n[i]);var s=document.defaultView.getComputedStyle(t);return(t[r]||Ry(s[i])||Ry(t.style[i]))-(Ry(s[o])||0)-(Ry(s[a])||0)|0}function Ey(t){var e,n,i=t.style,r=i.lineDash&&i.lineWidth>0&&(e=i.lineDash,n=i.lineWidth,e&&"solid"!==e&&n>0?"dashed"===e?[4*n,2*n]:"dotted"===e?[n]:j(e)?[e]:Y(e)?e:null:null),o=i.lineDashOffset;if(r){var a=i.strokeNoScale&&t.getLineScale?t.getLineScale():1;a&&1!==a&&(r=z(r,(function(t){return t/a})),o/=a)}return[r,o]}var zy=new ja(!0);function Vy(t){var e=t.stroke;return!(null==e||"none"===e||!(t.lineWidth>0))}function By(t){return"string"==typeof t&&"none"!==t}function Fy(t){var e=t.fill;return null!=e&&"none"!==e}function Gy(t,e){if(null!=e.fillOpacity&&1!==e.fillOpacity){var n=t.globalAlpha;t.globalAlpha=e.fillOpacity*e.opacity,t.fill(),t.globalAlpha=n}else t.fill()}function Wy(t,e){if(null!=e.strokeOpacity&&1!==e.strokeOpacity){var n=t.globalAlpha;t.globalAlpha=e.strokeOpacity*e.opacity,t.stroke(),t.globalAlpha=n}else t.stroke()}function Hy(t,e,n){var i=Zo(e.image,e.__image,n);if(qo(i)){var r=t.createPattern(i,e.repeat||"repeat");if("function"==typeof DOMMatrix&&r&&r.setTransform){var o=new DOMMatrix;o.translateSelf(e.x||0,e.y||0),o.rotateSelf(0,0,(e.rotation||0)*_t),o.scaleSelf(e.scaleX||1,e.scaleY||1),r.setTransform(o)}return r}}var Yy=["shadowBlur","shadowOffsetX","shadowOffsetY"],Uy=[["lineCap","butt"],["lineJoin","miter"],["miterLimit",10]];function Xy(t,e,n,i,r){var o=!1;if(!i&&e===(n=n||{}))return!1;if(i||e.opacity!==n.opacity){qy(t,r),o=!0;var a=Math.max(Math.min(e.opacity,1),0);t.globalAlpha=isNaN(a)?ua.opacity:a}(i||e.blend!==n.blend)&&(o||(qy(t,r),o=!0),t.globalCompositeOperation=e.blend||ua.blend);for(var s=0;s<Yy.length;s++){var l=Yy[s];(i||e[l]!==n[l])&&(o||(qy(t,r),o=!0),t[l]=t.dpr*(e[l]||0))}return(i||e.shadowColor!==n.shadowColor)&&(o||(qy(t,r),o=!0),t.shadowColor=e.shadowColor||ua.shadowColor),o}function Zy(t,e,n,i,r){var o=Ky(e,r.inHover),a=i?null:n&&Ky(n,r.inHover)||{};if(o===a)return!1;var s=Xy(t,o,a,i,r);if((i||o.fill!==a.fill)&&(s||(qy(t,r),s=!0),By(o.fill)&&(t.fillStyle=o.fill)),(i||o.stroke!==a.stroke)&&(s||(qy(t,r),s=!0),By(o.stroke)&&(t.strokeStyle=o.stroke)),(i||o.opacity!==a.opacity)&&(s||(qy(t,r),s=!0),t.globalAlpha=null==o.opacity?1:o.opacity),e.hasStroke()){var l=o.lineWidth/(o.strokeNoScale&&e.getLineScale?e.getLineScale():1);t.lineWidth!==l&&(s||(qy(t,r),s=!0),t.lineWidth=l)}for(var u=0;u<Uy.length;u++){var h=Uy[u],c=h[0];(i||o[c]!==a[c])&&(s||(qy(t,r),s=!0),t[c]=o[c]||h[1])}return s}function jy(t,e){var n=e.transform,i=t.dpr||1;n?t.setTransform(i*n[0],i*n[1],i*n[2],i*n[3],i*n[4],i*n[5]):t.setTransform(i,0,0,i,0,0)}function qy(t,e){e.batchFill&&t.fill(),e.batchStroke&&t.stroke(),e.batchFill="",e.batchStroke=""}function Ky(t,e){return e&&t.__hoverStyle||t.style}function $y(t,e){Jy(t,e,{inHover:!1,viewWidth:0,viewHeight:0},!0)}function Jy(t,e,n,i){var r=e.transform;if(!e.shouldBePainted(n.viewWidth,n.viewHeight,!1,!1))return e.__dirty&=-2,void(e.__isRendered=!1);var o=e.__clipPaths,s=n.prevElClipPaths,l=!1,u=!1;if(s&&!function(t,e){if(t===e||!t&&!e)return!1;if(!t||!e||t.length!==e.length)return!0;for(var n=0;n<t.length;n++)if(t[n]!==e[n])return!0;return!1}(o,s)||(s&&s.length&&(qy(t,n),t.restore(),u=l=!0,n.prevElClipPaths=null,n.allClipped=!1,n.prevEl=null),o&&o.length&&(qy(t,n),t.save(),function(t,e,n){for(var i=!1,r=0;r<t.length;r++){var o=t[r];i=i||o.isZeroArea(),jy(e,o),e.beginPath(),o.buildPath(e,o.shape),e.clip()}n.allClipped=i}(o,t,n),l=!0),n.prevElClipPaths=o),n.allClipped)e.__isRendered=!1;else{e.beforeBrush&&e.beforeBrush(),e.innerBeforeBrush();var h=n.prevEl;h||(u=l=!0);var c,p,d=e instanceof fs&&e.autoBatch&&function(t){var e=Fy(t),n=Vy(t);return!(t.lineDash||!(+e^+n)||e&&"string"!=typeof t.fill||n&&"string"!=typeof t.stroke||t.strokePercent<1||t.strokeOpacity<1||t.fillOpacity<1)}(e.style);l||(c=r,p=h.transform,c&&p?c[0]!==p[0]||c[1]!==p[1]||c[2]!==p[2]||c[3]!==p[3]||c[4]!==p[4]||c[5]!==p[5]:c||p)?(qy(t,n),jy(t,e)):d||qy(t,n);var f=Ky(e,n.inHover);e instanceof fs?(1!==n.lastDrawType&&(u=!0,n.lastDrawType=1),Zy(t,e,h,u,n),d&&(n.batchFill||n.batchStroke)||t.beginPath(),function(t,e,n,i){var r,o=Vy(n),a=Fy(n),s=n.strokePercent,l=s<1,u=!e.path;e.silent&&!l||!u||e.createPathProxy();var h=e.path||zy,c=e.__dirty;if(!i){var p=n.fill,d=n.stroke,f=a&&!!p.colorStops,g=o&&!!d.colorStops,y=a&&!!p.image,v=o&&!!d.image,m=void 0,x=void 0,_=void 0,b=void 0,w=void 0;(f||g)&&(w=e.getBoundingRect()),f&&(m=c?Oy(t,p,w):e.__canvasFillGradient,e.__canvasFillGradient=m),g&&(x=c?Oy(t,d,w):e.__canvasStrokeGradient,e.__canvasStrokeGradient=x),y&&(_=c||!e.__canvasFillPattern?Hy(t,p,e):e.__canvasFillPattern,e.__canvasFillPattern=_),v&&(b=c||!e.__canvasStrokePattern?Hy(t,d,e):e.__canvasStrokePattern,e.__canvasStrokePattern=_),f?t.fillStyle=m:y&&(_?t.fillStyle=_:a=!1),g?t.strokeStyle=x:v&&(b?t.strokeStyle=b:o=!1)}var S,M,I=e.getGlobalScale();h.setScale(I[0],I[1],e.segmentIgnoreThreshold),t.setLineDash&&n.lineDash&&(S=(r=Ey(e))[0],M=r[1]);var T=!0;(u||4&c)&&(h.setDPR(t.dpr),l?h.setContext(null):(h.setContext(t),T=!1),h.reset(),e.buildPath(h,e.shape,i),h.toStatic(),e.pathUpdated()),T&&h.rebuildPath(t,l?s:1),S&&(t.setLineDash(S),t.lineDashOffset=M),i||(n.strokeFirst?(o&&Wy(t,n),a&&Gy(t,n)):(a&&Gy(t,n),o&&Wy(t,n))),S&&t.setLineDash([])}(t,e,f,d),d&&(n.batchFill=f.fill||"",n.batchStroke=f.stroke||"")):e instanceof ys?(3!==n.lastDrawType&&(u=!0,n.lastDrawType=3),Zy(t,e,h,u,n),function(t,e,n){var i,r=n.text;if(null!=r&&(r+=""),r){t.font=n.font||a,t.textAlign=n.textAlign,t.textBaseline=n.textBaseline;var o=void 0,s=void 0;t.setLineDash&&n.lineDash&&(o=(i=Ey(e))[0],s=i[1]),o&&(t.setLineDash(o),t.lineDashOffset=s),n.strokeFirst?(Vy(n)&&t.strokeText(r,n.x,n.y),Fy(n)&&t.fillText(r,n.x,n.y)):(Fy(n)&&t.fillText(r,n.x,n.y),Vy(n)&&t.strokeText(r,n.x,n.y)),o&&t.setLineDash([])}}(t,e,f)):e instanceof xs?(2!==n.lastDrawType&&(u=!0,n.lastDrawType=2),function(t,e,n,i,r){Xy(t,Ky(e,r.inHover),n&&Ky(n,r.inHover),i,r)}(t,e,h,u,n),function(t,e,n){var i=e.__image=Zo(n.image,e.__image,e,e.onload);if(i&&qo(i)){var r=n.x||0,o=n.y||0,a=e.getWidth(),s=e.getHeight(),l=i.width/i.height;if(null==a&&null!=s?a=s*l:null==s&&null!=a?s=a/l:null==a&&null==s&&(a=i.width,s=i.height),n.sWidth&&n.sHeight){var u=n.sx||0,h=n.sy||0;t.drawImage(i,u,h,n.sWidth,n.sHeight,r,o,a,s)}else if(n.sx&&n.sy){var c=a-(u=n.sx),p=s-(h=n.sy);t.drawImage(i,u,h,c,p,r,o,a,s)}else t.drawImage(i,r,o,a,s)}}(t,e,f)):e.getTemporalDisplayables&&(4!==n.lastDrawType&&(u=!0,n.lastDrawType=4),function(t,e,n){var i=e.getDisplayables(),r=e.getTemporalDisplayables();t.save();var o,a,s={prevElClipPaths:null,prevEl:null,allClipped:!1,viewWidth:n.viewWidth,viewHeight:n.viewHeight,inHover:n.inHover};for(o=e.getCursor(),a=i.length;o<a;o++){(h=i[o]).beforeBrush&&h.beforeBrush(),h.innerBeforeBrush(),Jy(t,h,s,o===a-1),h.innerAfterBrush(),h.afterBrush&&h.afterBrush(),s.prevEl=h}for(var l=0,u=r.length;l<u;l++){var h;(h=r[l]).beforeBrush&&h.beforeBrush(),h.innerBeforeBrush(),Jy(t,h,s,l===u-1),h.innerAfterBrush(),h.afterBrush&&h.afterBrush(),s.prevEl=h}e.clearTemporalDisplayables(),e.notClear=!0,t.restore()}(t,e,n)),d&&i&&qy(t,n),e.innerAfterBrush(),e.afterBrush&&e.afterBrush(),n.prevEl=e,e.__dirty=0,e.__isRendered=!0}}var Qy=new by,tv=new ln(100),ev=["symbol","symbolSize","symbolKeepAspect","color","backgroundColor","dashArrayX","dashArrayY","maxTileWidth","maxTileHeight"];function nv(t,e){if("none"===t)return null;var n=e.getDevicePixelRatio(),i=e.getZr(),r="svg"===i.painter.type;t.dirty&&Qy.delete(t);var o=Qy.get(t);if(o)return o;var a=k(t,{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});"none"===a.backgroundColor&&(a.backgroundColor=null);var s={repeat:"repeat"};return function(t){for(var e,o=[n],s=!0,l=0;l<ev.length;++l){var u=a[ev[l]];if(null!=u&&!Y(u)&&!X(u)&&!j(u)&&"boolean"!=typeof u){s=!1;break}o.push(u)}if(s){e=o.join(",")+(r?"-svg":"");var c=tv.get(e);c&&(r?t.svgElement=c:t.image=c)}var p,d=rv(a.dashArrayX),f=function(t){if(!t||"object"==typeof t&&0===t.length)return[0,0];if(j(t)){var e=Math.ceil(t);return[e,e]}var n=z(t,(function(t){return Math.ceil(t)}));return t.length%2?n.concat(n):n}(a.dashArrayY),g=iv(a.symbol),y=(b=d,z(b,(function(t){return ov(t)}))),v=ov(f),m=!r&&h.createCanvas(),x=r&&{tag:"g",attrs:{},key:"dcl",children:[]},_=function(){for(var t=1,e=0,n=y.length;e<n;++e)t=ro(t,y[e]);var i=1;for(e=0,n=g.length;e<n;++e)i=ro(i,g[e].length);t*=i;var r=v*y.length*g.length;return{width:Math.max(1,Math.min(t,a.maxTileWidth)),height:Math.max(1,Math.min(r,a.maxTileHeight))}}();var b;m&&(m.width=_.width*n,m.height=_.height*n,p=m.getContext("2d"));(function(){p&&(p.clearRect(0,0,m.width,m.height),a.backgroundColor&&(p.fillStyle=a.backgroundColor,p.fillRect(0,0,m.width,m.height)));for(var t=0,e=0;e<f.length;++e)t+=f[e];if(t<=0)return;var o=-v,s=0,l=0,u=0;for(;o<_.height;){if(s%2==0){for(var h=l/2%g.length,c=0,y=0,b=0;c<2*_.width;){var w=0;for(e=0;e<d[u].length;++e)w+=d[u][e];if(w<=0)break;if(y%2==0){var S=.5*(1-a.symbolSize),M=c+d[u][y]*S,I=o+f[s]*S,T=d[u][y]*a.symbolSize,C=f[s]*a.symbolSize,D=b/2%g[h].length;A(M,I,T,C,g[h][D])}c+=d[u][y],++b,++y===d[u].length&&(y=0)}++u===d.length&&(u=0)}o+=f[s],++l,++s===f.length&&(s=0)}function A(t,e,o,s,l){var u=r?1:n,h=ky(l,t*u,e*u,o*u,s*u,a.color,a.symbolKeepAspect);if(r){var c=i.painter.renderOneToVNode(h);c&&x.children.push(c)}else $y(p,h)}})(),s&&tv.put(e,m||x);t.image=m,t.svgElement=x,t.svgWidth=_.width,t.svgHeight=_.height}(s),s.rotation=a.rotation,s.scaleX=s.scaleY=r?1:1/n,Qy.set(t,s),t.dirty=!1,s}function iv(t){if(!t||0===t.length)return[["rect"]];if(X(t))return[[t]];for(var e=!0,n=0;n<t.length;++n)if(!X(t[n])){e=!1;break}if(e)return iv([t]);var i=[];for(n=0;n<t.length;++n)X(t[n])?i.push([t[n]]):i.push(t[n]);return i}function rv(t){if(!t||0===t.length)return[[0,0]];if(j(t))return[[r=Math.ceil(t),r]];for(var e=!0,n=0;n<t.length;++n)if(!j(t[n])){e=!1;break}if(e)return rv([t]);var i=[];for(n=0;n<t.length;++n)if(j(t[n])){var r=Math.ceil(t[n]);i.push([r,r])}else{(r=z(t[n],(function(t){return Math.ceil(t)}))).length%2==1?i.push(r.concat(r)):i.push(r)}return i}function ov(t){for(var e=0,n=0;n<t.length;++n)e+=t[n];return t.length%2==1?2*e:e}var av=new Xt,sv={};function lv(t){return sv[t]}var uv="undefined"!=typeof window,hv=2e3,cv=4500,pv={PROCESSOR:{FILTER:1e3,SERIES_FILTER:800,STATISTIC:5e3},VISUAL:{LAYOUT:1e3,PROGRESSIVE_LAYOUT:1100,GLOBAL:hv,CHART:3e3,POST_CHART_LAYOUT:4600,COMPONENT:4e3,BRUSH:5e3,CHART_ITEM:cv,ARIA:6e3,DECAL:7e3}},dv=/^[a-zA-Z0-9_]+$/,fv="__connectUpdateStatus";function gv(t){return function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];if(!this.isDisposed())return vv(this,t,e);Gv(this.id)}}function yv(t){return function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return vv(this,t,e)}}function vv(t,e,n){return n[0]=n[0]&&n[0].toLowerCase(),Xt.prototype[e].apply(t,n)}var mv,xv,_v,bv,wv,Sv,Mv,Iv,Tv,Cv,Dv,Av,kv,Lv,Pv,Ov,Rv,Nv,Ev=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e}(Xt),zv=Ev.prototype;zv.on=yv("on"),zv.off=yv("off");var Vv=function(t){function e(e,n,i){var r=t.call(this,new ly)||this;r._chartsViews=[],r._chartsMap={},r._componentsViews=[],r._componentsMap={},r._pendingActions=[],i=i||{},X(n)&&(n=Zv[n]),r._dom=e;var o="canvas",a=!1,s=r._zr=Lr(e,{renderer:i.renderer||o,devicePixelRatio:i.devicePixelRatio,width:i.width,height:i.height,ssr:i.ssr,useDirtyRect:null==i.useDirtyRect?a:i.useDirtyRect});r._ssr=i.ssr,r._throttledZrFlush=Cg(W(s.flush,s),17),(n=T(n))&&Pd(n,!0),r._theme=n,r._locale=function(t){if(X(t)){var e=xc[t.toUpperCase()]||{};return t===yc||t===vc?T(e):C(T(e),T(xc.EN),!1)}return C(T(t),T(xc.EN),!1)}(i.locale||bc),r._coordSysMgr=new ud;var l=r._api=Pv(r);function u(t,e){return t.__prio-e.__prio}return Ie(Xv,u),Ie(Yv,u),r._scheduler=new Fg(r,l,Yv,Xv),r._messageCenter=new Ev,r._initEvents(),r.resize=W(r.resize,r),s.animation.on("frame",r._onframe,r),Cv(s,r),Dv(s,r),ct(r),r}return n(e,t),e.prototype._onframe=function(){if(!this._disposed){Nv(this);var t=this._scheduler;if(this.__pendingUpdate){var e=this.__pendingUpdate.silent;this.__flagInMainProcess=!0;try{mv(this),bv.update.call(this,null,this.__pendingUpdate.updateParams)}catch(t){throw this.__flagInMainProcess=!1,this.__pendingUpdate=null,t}this._zr.flush(),this.__flagInMainProcess=!1,this.__pendingUpdate=null,Iv.call(this,e),Tv.call(this,e)}else if(t.unfinished){var n=1,i=this._model,r=this._api;t.unfinished=!1;do{var o=+new Date;t.performSeriesTasks(i),t.performDataProcessorTasks(i),Sv(this,i),t.performVisualTasks(i),Lv(this,this._model,r,"remain",{}),n-=+new Date-o}while(n>0&&t.unfinished);t.unfinished||this._zr.flush()}}},e.prototype.getDom=function(){return this._dom},e.prototype.getId=function(){return this.id},e.prototype.getZr=function(){return this._zr},e.prototype.isSSR=function(){return this._ssr},e.prototype.setOption=function(t,e,n){if(!this.__flagInMainProcess)if(this._disposed)Gv(this.id);else{var i,r,o;if(q(e)&&(n=e.lazyUpdate,i=e.silent,r=e.replaceMerge,o=e.transition,e=e.notMerge),this.__flagInMainProcess=!0,!this._model||e){var a=new cd(this._api),s=this._theme,l=this._model=new nd;l.scheduler=this._scheduler,l.ssr=this._ssr,l.init(null,null,null,s,this._locale,a)}this._model.setOption(t,{replaceMerge:r},Uv);var u={seriesTransition:o,optionChanged:!0};if(n)this.__pendingUpdate={silent:i,updateParams:u},this.__flagInMainProcess=!1,this.getZr().wakeUp();else{try{mv(this),bv.update.call(this,null,u)}catch(t){throw this.__pendingUpdate=null,this.__flagInMainProcess=!1,t}this._ssr||this._zr.flush(),this.__pendingUpdate=null,this.__flagInMainProcess=!1,Iv.call(this,i),Tv.call(this,i)}}},e.prototype.setTheme=function(){oo()},e.prototype.getModel=function(){return this._model},e.prototype.getOption=function(){return this._model&&this._model.getOption()},e.prototype.getWidth=function(){return this._zr.getWidth()},e.prototype.getHeight=function(){return this._zr.getHeight()},e.prototype.getDevicePixelRatio=function(){return this._zr.painter.dpr||uv&&window.devicePixelRatio||1},e.prototype.getRenderedCanvas=function(t){return this.renderToCanvas(t)},e.prototype.renderToCanvas=function(t){t=t||{};var e=this._zr.painter;return e.getRenderedCanvas({backgroundColor:t.backgroundColor||this._model.get("backgroundColor"),pixelRatio:t.pixelRatio||this.getDevicePixelRatio()})},e.prototype.renderToSVGString=function(t){t=t||{};var e=this._zr.painter;return e.renderToString({useViewBox:t.useViewBox})},e.prototype.getSvgDataURL=function(){if(r.svgSupported){var t=this._zr;return E(t.storage.getDisplayList(),(function(t){t.stopAnimation(null,!0)})),t.painter.toDataURL()}},e.prototype.getDataURL=function(t){if(!this._disposed){var e=(t=t||{}).excludeComponents,n=this._model,i=[],r=this;E(e,(function(t){n.eachComponent({mainType:t},(function(t){var e=r._componentsMap[t.__viewId];e.group.ignore||(i.push(e),e.group.ignore=!0)}))}));var o="svg"===this._zr.painter.getType()?this.getSvgDataURL():this.renderToCanvas(t).toDataURL("image/"+(t&&t.type||"png"));return E(i,(function(t){t.group.ignore=!1})),o}Gv(this.id)},e.prototype.getConnectedDataURL=function(t){if(!this._disposed){var e="svg"===t.type,n=this.group,i=Math.min,r=Math.max,o=1/0;if(Kv[n]){var a=o,s=o,l=-1/0,u=-1/0,c=[],p=t&&t.pixelRatio||this.getDevicePixelRatio();E(qv,(function(o,h){if(o.group===n){var p=e?o.getZr().painter.getSvgDom().innerHTML:o.renderToCanvas(T(t)),d=o.getDom().getBoundingClientRect();a=i(d.left,a),s=i(d.top,s),l=r(d.right,l),u=r(d.bottom,u),c.push({dom:p,left:d.left,top:d.top})}}));var d=(l*=p)-(a*=p),f=(u*=p)-(s*=p),g=h.createCanvas(),y=Lr(g,{renderer:e?"svg":"canvas"});if(y.resize({width:d,height:f}),e){var v="";return E(c,(function(t){var e=t.left-a,n=t.top-s;v+='<g transform="translate('+e+","+n+')">'+t.dom+"</g>"})),y.painter.getSvgRoot().innerHTML=v,t.connectedBackgroundColor&&y.painter.setBackgroundColor(t.connectedBackgroundColor),y.refreshImmediately(),y.painter.toDataURL()}return t.connectedBackgroundColor&&y.add(new Ts({shape:{x:0,y:0,width:d,height:f},style:{fill:t.connectedBackgroundColor}})),E(c,(function(t){var e=new xs({style:{x:t.left*p-a,y:t.top*p-s,image:t.dom}});y.add(e)})),y.refreshImmediately(),g.toDataURL("image/"+(t&&t.type||"png"))}return this.getDataURL(t)}Gv(this.id)},e.prototype.convertToPixel=function(t,e){return wv(this,"convertToPixel",t,e)},e.prototype.convertFromPixel=function(t,e){return wv(this,"convertFromPixel",t,e)},e.prototype.containPixel=function(t,e){var n;if(!this._disposed)return E(Io(this._model,t),(function(t,i){i.indexOf("Models")>=0&&E(t,(function(t){var r=t.coordinateSystem;if(r&&r.containPoint)n=n||!!r.containPoint(e);else if("seriesModels"===i){var o=this._chartsMap[t.__viewId];o&&o.containPoint&&(n=n||o.containPoint(e,t))}else 0}),this)}),this),!!n;Gv(this.id)},e.prototype.getVisual=function(t,e){var n=Io(this._model,t,{defaultMainType:"series"}),i=n.seriesModel;var r=i.getData(),o=n.hasOwnProperty("dataIndexInside")?n.dataIndexInside:n.hasOwnProperty("dataIndex")?r.indexOfRawIndex(n.dataIndex):null;return null!=o?dy(r,o,e):fy(r,e)},e.prototype.getViewOfComponentModel=function(t){return this._componentsMap[t.__viewId]},e.prototype.getViewOfSeriesModel=function(t){return this._chartsMap[t.__viewId]},e.prototype._initEvents=function(){var t,e,n,i=this;E(Fv,(function(t){var e=function(e){var n,r=i.getModel(),o=e.target,a="globalout"===t;if(a?n={}:o&&my(o,(function(t){var e=Ws(t);if(e&&null!=e.dataIndex){var i=e.dataModel||r.getSeriesByIndex(e.seriesIndex);return n=i&&i.getDataParams(e.dataIndex,e.dataType)||{},!0}if(e.eventData)return n=A({},e.eventData),!0}),!0),n){var s=n.componentType,l=n.componentIndex;"markLine"!==s&&"markPoint"!==s&&"markArea"!==s||(s="series",l=n.seriesIndex);var u=s&&null!=l&&r.getComponent(s,l),h=u&&i["series"===u.mainType?"_chartsMap":"_componentsMap"][u.__viewId];0,n.event=e,n.type=t,i._$eventProcessor.eventInfo={targetEl:o,packedEvent:n,model:u,view:h},i.trigger(t,n)}};e.zrEventfulCallAtLast=!0,i._zr.on(t,e,i)})),E(Hv,(function(t,e){i._messageCenter.on(e,(function(t){this.trigger(e,t)}),i)})),E(["selectchanged"],(function(t){i._messageCenter.on(t,(function(e){this.trigger(t,e)}),i)})),t=this._messageCenter,e=this,n=this._api,t.on("selectchanged",(function(t){var i=n.getModel();t.isFromClick?(vy("map","selectchanged",e,i,t),vy("pie","selectchanged",e,i,t)):"select"===t.fromAction?(vy("map","selected",e,i,t),vy("pie","selected",e,i,t)):"unselect"===t.fromAction&&(vy("map","unselected",e,i,t),vy("pie","unselected",e,i,t))}))},e.prototype.isDisposed=function(){return this._disposed},e.prototype.clear=function(){this._disposed?Gv(this.id):this.setOption({series:[]},!0)},e.prototype.dispose=function(){if(this._disposed)Gv(this.id);else{this._disposed=!0,this.getDom()&&ko(this.getDom(),Qv,"");var t=this,e=t._api,n=t._model;E(t._componentsViews,(function(t){t.dispose(n,e)})),E(t._chartsViews,(function(t){t.dispose(n,e)})),t._zr.dispose(),t._dom=t._model=t._chartsMap=t._componentsMap=t._chartsViews=t._componentsViews=t._scheduler=t._api=t._zr=t._throttledZrFlush=t._theme=t._coordSysMgr=t._messageCenter=null,delete qv[t.id]}},e.prototype.resize=function(t){if(!this.__flagInMainProcess)if(this._disposed)Gv(this.id);else{this._zr.resize(t);var e=this._model;if(this._loadingFX&&this._loadingFX.resize(),e){var n=e.resetOption("media"),i=t&&t.silent;this.__pendingUpdate&&(null==i&&(i=this.__pendingUpdate.silent),n=!0,this.__pendingUpdate=null),this.__flagInMainProcess=!0;try{n&&mv(this),bv.update.call(this,{type:"resize",animation:A({duration:0},t&&t.animation)})}catch(t){throw this.__flagInMainProcess=!1,t}this.__flagInMainProcess=!1,Iv.call(this,i),Tv.call(this,i)}}},e.prototype.showLoading=function(t,e){if(this._disposed)Gv(this.id);else if(q(t)&&(e=t,t=""),t=t||"default",this.hideLoading(),jv[t]){var n=jv[t](this._api,e),i=this._zr;this._loadingFX=n,i.add(n)}},e.prototype.hideLoading=function(){this._disposed?Gv(this.id):(this._loadingFX&&this._zr.remove(this._loadingFX),this._loadingFX=null)},e.prototype.makeActionFromEvent=function(t){var e=A({},t);return e.type=Hv[t.type],e},e.prototype.dispatchAction=function(t,e){if(this._disposed)Gv(this.id);else if(q(e)||(e={silent:!!e}),Wv[t.type]&&this._model)if(this.__flagInMainProcess)this._pendingActions.push(t);else{var n=e.silent;Mv.call(this,t,n);var i=e.flush;i?this._zr.flush():!1!==i&&r.browser.weChat&&this._throttledZrFlush(),Iv.call(this,n),Tv.call(this,n)}},e.prototype.updateLabelLayout=function(){av.trigger("series:layoutlabels",this._model,this._api,{updatedSeries:[]})},e.prototype.appendData=function(t){if(this._disposed)Gv(this.id);else{var e=t.seriesIndex,n=this.getModel().getSeriesByIndex(e);0,n.appendData(t),this._scheduler.unfinished=!0,this.getZr().wakeUp()}},e.internalField=function(){function t(t){t.clearColorPalette(),t.eachSeries((function(t){t.clearColorPalette()}))}function e(t){for(var e=[],n=t.currentStates,i=0;i<n.length;i++){var r=n[i];"emphasis"!==r&&"blur"!==r&&"select"!==r&&e.push(r)}t.selected&&t.states.select&&e.push("select"),2===t.hoverState&&t.states.emphasis?e.push("emphasis"):1===t.hoverState&&t.states.blur&&e.push("blur"),t.useStates(e)}function i(t,e){if(!t.preventAutoZ){var n=t.get("z")||0,i=t.get("zlevel")||0;e.eachRendered((function(t){return o(t,n,i,-1/0),!0}))}}function o(t,e,n,i){var r=t.getTextContent(),a=t.getTextGuideLine();if(t.isGroup)for(var s=t.childrenRef(),l=0;l<s.length;l++)i=Math.max(o(s[l],e,n,i),i);else t.z=e,t.zlevel=n,i=Math.max(t.z2,i);if(r&&(r.z=e,r.zlevel=n,isFinite(i)&&(r.z2=i+2)),a){var u=t.textGuideLineConfig;a.z=e,a.zlevel=n,isFinite(i)&&(a.z2=i+(u&&u.showAbove?1:-1))}return i}function a(t,e){e.eachRendered((function(t){if(!oh(t)){var e=t.getTextContent(),n=t.getTextGuideLine();t.stateTransition&&(t.stateTransition=null),e&&e.stateTransition&&(e.stateTransition=null),n&&n.stateTransition&&(n.stateTransition=null),t.hasState()?(t.prevStates=t.currentStates,t.clearStates()):t.prevStates&&(t.prevStates=null)}}))}function s(t,n){var i=t.getModel("stateAnimation"),r=t.isAnimationEnabled(),o=i.get("duration"),a=o>0?{duration:o,delay:i.get("delay"),easing:i.get("easing")}:null;n.eachRendered((function(t){if(t.states&&t.states.emphasis){if(oh(t))return;if(t instanceof fs&&function(t){var e=Xs(t);e.normalFill=t.style.fill,e.normalStroke=t.style.stroke;var n=t.states.select||{};e.selectFill=n.style&&n.style.fill||null,e.selectStroke=n.style&&n.style.stroke||null}(t),t.__dirty){var n=t.prevStates;n&&t.useStates(n)}if(r){t.stateTransition=a;var i=t.getTextContent(),o=t.getTextGuideLine();i&&(i.stateTransition=a),o&&(o.stateTransition=a)}t.__dirty&&e(t)}}))}mv=function(t){var e=t._scheduler;e.restorePipelines(t._model),e.prepareStageTasks(),xv(t,!0),xv(t,!1),e.plan()},xv=function(t,e){for(var n=t._model,i=t._scheduler,r=e?t._componentsViews:t._chartsViews,o=e?t._componentsMap:t._chartsMap,a=t._zr,s=t._api,l=0;l<r.length;l++)r[l].__alive=!1;function u(t){var l=t.__requireNewView;t.__requireNewView=!1;var u="_ec_"+t.id+"_"+t.type,h=!l&&o[u];if(!h){var c=No(t.type),p=e?fg.getClass(c.main,c.sub):mg.getClass(c.sub);0,(h=new p).init(n,s),o[u]=h,r.push(h),a.add(h.group)}t.__viewId=h.__id=u,h.__alive=!0,h.__model=t,h.group.__ecComponentInfo={mainType:t.mainType,index:t.componentIndex},!e&&i.prepareView(h,t,n,s)}e?n.eachComponent((function(t,e){"series"!==t&&u(e)})):n.eachSeries(u);for(l=0;l<r.length;){var h=r[l];h.__alive?l++:(!e&&h.renderTask.dispose(),a.remove(h.group),h.dispose(n,s),r.splice(l,1),o[h.__id]===h&&delete o[h.__id],h.__id=h.group.__ecComponentInfo=null)}},_v=function(t,e,n,i,r){var o=t._model;if(o.setUpdatePayload(n),i){var a={};a[i+"Id"]=n[i+"Id"],a[i+"Index"]=n[i+"Index"],a[i+"Name"]=n[i+"Name"];var s={mainType:i,query:a};r&&(s.subType=r);var l,u=n.excludeSeriesId;null!=u&&(l=ft(),E(ho(u),(function(t){var e=xo(t,null);null!=e&&l.set(e,!0)}))),o&&o.eachComponent(s,(function(e){if(!(l&&null!==l.get(e.id)))if(Gl(n))if(e instanceof ag)n.type!==$s||n.notBlur||e.get(["emphasis","disabled"])||function(t,e,n){var i=t.seriesIndex,r=t.getData(e.dataType);if(r){var o=wo(r,e);o=(Y(o)?o[0]:o)||0;var a=r.getItemGraphicEl(o);if(!a)for(var s=r.count(),l=0;!a&&l<s;)a=r.getItemGraphicEl(l++);if(a){var u=Ws(a);Cl(i,u.focus,u.blurScope,n)}else{var h=t.get(["emphasis","focus"]),c=t.get(["emphasis","blurScope"]);null!=h&&Cl(i,h,c,n)}}}(e,n,t._api);else{var i=Al(e.mainType,e.componentIndex,n.name,t._api),r=i.focusSelf,o=i.dispatchers;n.type===$s&&r&&!n.notBlur&&Dl(e.mainType,e.componentIndex,t._api),o&&E(o,(function(t){n.type===$s?xl(t):_l(t)}))}else Fl(n)&&e instanceof ag&&(!function(t,e,n){if(Fl(e)){var i=e.dataType,r=wo(t.getData(i),e);Y(r)||(r=[r]),t[e.type===el?"toggleSelect":e.type===Qs?"select":"unselect"](r,i)}}(e,n,t._api),kl(e),Rv(t))}),t),o&&o.eachComponent(s,(function(e){l&&null!==l.get(e.id)||h(t["series"===i?"_chartsMap":"_componentsMap"][e.__viewId])}),t)}else E([].concat(t._componentsViews).concat(t._chartsViews),h);function h(i){i&&i.__alive&&i[e]&&i[e](i.__model,o,t._api,n)}},bv={prepareAndUpdate:function(t){mv(this),bv.update.call(this,t,{optionChanged:null!=t.newOption})},update:function(e,n){var i=this._model,r=this._api,o=this._zr,a=this._coordSysMgr,s=this._scheduler;if(i){i.setUpdatePayload(e),s.restoreData(i,e),s.performSeriesTasks(i),a.create(i,r),s.performDataProcessorTasks(i,e),Sv(this,i),a.update(i,r),t(i),s.performVisualTasks(i,e),Av(this,i,r,e,n);var l=i.get("backgroundColor")||"transparent",u=i.get("darkMode");o.setBackgroundColor(l),null!=u&&"auto"!==u&&o.setDarkMode(u),av.trigger("afterupdate",i,r)}},updateTransform:function(e){var n=this,i=this._model,r=this._api;if(i){i.setUpdatePayload(e);var o=[];i.eachComponent((function(t,a){if("series"!==t){var s=n.getViewOfComponentModel(a);if(s&&s.__alive)if(s.updateTransform){var l=s.updateTransform(a,i,r,e);l&&l.update&&o.push(s)}else o.push(s)}}));var a=ft();i.eachSeries((function(t){var o=n._chartsMap[t.__viewId];if(o.updateTransform){var s=o.updateTransform(t,i,r,e);s&&s.update&&a.set(t.uid,1)}else a.set(t.uid,1)})),t(i),this._scheduler.performVisualTasks(i,e,{setDirty:!0,dirtyMap:a}),Lv(this,i,r,e,{},a),av.trigger("afterupdate",i,r)}},updateView:function(e){var n=this._model;n&&(n.setUpdatePayload(e),mg.markUpdateMethod(e,"updateView"),t(n),this._scheduler.performVisualTasks(n,e,{setDirty:!0}),Av(this,n,this._api,e,{}),av.trigger("afterupdate",n,this._api))},updateVisual:function(e){var n=this,i=this._model;i&&(i.setUpdatePayload(e),i.eachSeries((function(t){t.getData().clearAllVisual()})),mg.markUpdateMethod(e,"updateVisual"),t(i),this._scheduler.performVisualTasks(i,e,{visualType:"visual",setDirty:!0}),i.eachComponent((function(t,r){if("series"!==t){var o=n.getViewOfComponentModel(r);o&&o.__alive&&o.updateVisual(r,i,n._api,e)}})),i.eachSeries((function(t){n._chartsMap[t.__viewId].updateVisual(t,i,n._api,e)})),av.trigger("afterupdate",i,this._api))},updateLayout:function(t){bv.update.call(this,t)}},wv=function(t,e,n,i){if(t._disposed)Gv(t.id);else{for(var r,o=t._model,a=t._coordSysMgr.getCoordinateSystems(),s=Io(o,n),l=0;l<a.length;l++){var u=a[l];if(u[e]&&null!=(r=u[e](o,s,i)))return r}0}},Sv=function(t,e){var n=t._chartsMap,i=t._scheduler;e.eachSeries((function(t){i.updateStreamModes(t,n[t.__viewId])}))},Mv=function(t,e){var n=this,i=this.getModel(),r=t.type,o=t.escapeConnect,a=Wv[r],s=a.actionInfo,l=(s.update||"update").split(":"),u=l.pop(),h=null!=l[0]&&No(l[0]);this.__flagInMainProcess=!0;var c=[t],p=!1;t.batch&&(p=!0,c=z(t.batch,(function(e){return(e=k(A({},e),t)).batch=null,e})));var d,f=[],g=Fl(t),y=Gl(t);if(y&&Tl(this._api),E(c,(function(e){if((d=(d=a.action(e,n._model,n._api))||A({},e)).type=s.event||d.type,f.push(d),y){var i=To(t),r=i.queryOptionMap,o=i.mainTypeSpecified?r.keys()[0]:"series";_v(n,u,e,o),Rv(n)}else g?(_v(n,u,e,"series"),Rv(n)):h&&_v(n,u,e,h.main,h.sub)})),"none"!==u&&!y&&!g&&!h)try{this.__pendingUpdate?(mv(this),bv.update.call(this,t),this.__pendingUpdate=null):bv[u].call(this,t)}catch(t){throw this.__flagInMainProcess=!1,t}if(d=p?{type:s.event||r,escapeConnect:o,batch:f}:f[0],this.__flagInMainProcess=!1,!e){var v=this._messageCenter;if(v.trigger(d.type,d),g){var m={type:"selectchanged",escapeConnect:o,selected:Ll(i),isFromClick:t.isFromClick||!1,fromAction:t.type,fromActionPayload:t};v.trigger(m.type,m)}}},Iv=function(t){for(var e=this._pendingActions;e.length;){var n=e.shift();Mv.call(this,n,t)}},Tv=function(t){!t&&this.trigger("updated")},Cv=function(t,e){t.on("rendered",(function(n){e.trigger("rendered",n),!t.animation.isFinished()||e.__pendingUpdate||e._scheduler.unfinished||e._pendingActions.length||e.trigger("finished")}))},Dv=function(t,e){t.on("mouseover",(function(t){var n=my(t.target,Bl);n&&(!function(t,e,n){var i=Ws(t),r=Al(i.componentMainType,i.componentIndex,i.componentHighDownName,n),o=r.dispatchers,a=r.focusSelf;o?(a&&Dl(i.componentMainType,i.componentIndex,n),E(o,(function(t){return vl(t,e)}))):(Cl(i.seriesIndex,i.focus,i.blurScope,n),"self"===i.focus&&Dl(i.componentMainType,i.componentIndex,n),vl(t,e))}(n,t,e._api),Rv(e))})).on("mouseout",(function(t){var n=my(t.target,Bl);n&&(!function(t,e,n){Tl(n);var i=Ws(t),r=Al(i.componentMainType,i.componentIndex,i.componentHighDownName,n).dispatchers;r?E(r,(function(t){return ml(t,e)})):ml(t,e)}(n,t,e._api),Rv(e))})).on("click",(function(t){var n=my(t.target,(function(t){return null!=Ws(t).dataIndex}),!0);if(n){var i=n.selected?"unselect":"select",r=Ws(n);e._api.dispatchAction({type:i,dataType:r.dataType,dataIndexInside:r.dataIndex,seriesIndex:r.seriesIndex,isFromClick:!0})}}))},Av=function(t,e,n,i,r){!function(t){var e=[],n=[],i=!1;if(t.eachComponent((function(t,r){var o=r.get("zlevel")||0,a=r.get("z")||0,s=r.getZLevelKey();i=i||!!s,("series"===t?n:e).push({zlevel:o,z:a,idx:r.componentIndex,type:t,key:s})})),i){var r,o,a=e.concat(n);Ie(a,(function(t,e){return t.zlevel===e.zlevel?t.z-e.z:t.zlevel-e.zlevel})),E(a,(function(e){var n=t.getComponent(e.type,e.idx),i=e.zlevel,a=e.key;null!=r&&(i=Math.max(r,i)),a?(i===r&&a!==o&&i++,o=a):o&&(i===r&&i++,o=""),r=i,n.setZLevel(i)}))}}(e),kv(t,e,n,i,r),E(t._chartsViews,(function(t){t.__alive=!1})),Lv(t,e,n,i,r),E(t._chartsViews,(function(t){t.__alive||t.remove(e,n)}))},kv=function(t,e,n,r,o,l){E(l||t._componentsViews,(function(t){var o=t.__model;a(o,t),t.render(o,e,n,r),i(o,t),s(o,t)}))},Lv=function(t,e,n,o,l,u){var h=t._scheduler;l=A(l||{},{updatedSeries:e.getSeries()}),av.trigger("series:beforeupdate",e,n,l);var c=!1;e.eachSeries((function(e){var n=t._chartsMap[e.__viewId];n.__alive=!0;var i=n.renderTask;h.updatePayload(i,o),a(e,n),u&&u.get(e.uid)&&i.dirty(),i.perform(h.getPerformArgs(i))&&(c=!0),n.group.silent=!!e.get("silent"),function(t,e){var n=t.get("blendMode")||null;e.eachRendered((function(t){t.isGroup||(t.style.blend=n)}))}(e,n),kl(e)})),h.unfinished=c||h.unfinished,av.trigger("series:layoutlabels",e,n,l),av.trigger("series:transition",e,n,l),e.eachSeries((function(e){var n=t._chartsMap[e.__viewId];i(e,n),s(e,n)})),function(t,e){var n=t._zr.storage,i=0;n.traverse((function(t){t.isGroup||i++})),i>e.get("hoverLayerThreshold")&&!r.node&&!r.worker&&e.eachSeries((function(e){if(!e.preventUsingHoverLayer){var n=t._chartsMap[e.__viewId];n.__alive&&n.eachRendered((function(t){t.states.emphasis&&(t.states.emphasis.hoverLayer=!0)}))}}))}(t,e),av.trigger("series:afterupdate",e,n,l)},Rv=function(t){t.__needsUpdateStatus=!0,t.getZr().wakeUp()},Nv=function(t){t.__needsUpdateStatus&&(t.getZr().storage.traverse((function(t){oh(t)||e(t)})),t.__needsUpdateStatus=!1)},Pv=function(t){return new(function(e){function i(){return null!==e&&e.apply(this,arguments)||this}return n(i,e),i.prototype.getCoordinateSystems=function(){return t._coordSysMgr.getCoordinateSystems()},i.prototype.getComponentByElement=function(e){for(;e;){var n=e.__ecComponentInfo;if(null!=n)return t._model.getComponent(n.mainType,n.index);e=e.parent}},i.prototype.enterEmphasis=function(e,n){xl(e,n),Rv(t)},i.prototype.leaveEmphasis=function(e,n){_l(e,n),Rv(t)},i.prototype.enterBlur=function(e){bl(e),Rv(t)},i.prototype.leaveBlur=function(e){wl(e),Rv(t)},i.prototype.enterSelect=function(e){Sl(e),Rv(t)},i.prototype.leaveSelect=function(e){Ml(e),Rv(t)},i.prototype.getModel=function(){return t.getModel()},i.prototype.getViewOfComponentModel=function(e){return t.getViewOfComponentModel(e)},i.prototype.getViewOfSeriesModel=function(e){return t.getViewOfSeriesModel(e)},i}(sd))(t)},Ov=function(t){function e(t,e){for(var n=0;n<t.length;n++){t[n][fv]=e}}E(Hv,(function(n,i){t._messageCenter.on(i,(function(n){if(Kv[t.group]&&0!==t[fv]){if(n&&n.escapeConnect)return;var i=t.makeActionFromEvent(n),r=[];E(qv,(function(e){e!==t&&e.group===t.group&&r.push(e)})),e(r,0),E(r,(function(t){1!==t[fv]&&t.dispatchAction(i)})),e(r,2)}}))}))}}(),e}(Xt),Bv=Vv.prototype;Bv.on=gv("on"),Bv.off=gv("off"),Bv.one=function(t,e,n){var i=this;oo(),this.on.call(this,t,(function n(){for(var r=[],o=0;o<arguments.length;o++)r[o]=arguments[o];e&&e.apply&&e.apply(this,r),i.off(t,n)}),n)};var Fv=["click","dblclick","mouseover","mouseout","mousemove","mousedown","mouseup","globalout","contextmenu"];function Gv(t){0}var Wv={},Hv={},Yv=[],Uv=[],Xv=[],Zv={},jv={},qv={},Kv={},$v=+new Date-0,Jv=+new Date-0,Qv="_echarts_instance_";function tm(t){Kv[t]=!1}var em=tm;function nm(t){return qv[function(t,e){return t.getAttribute?t.getAttribute(e):t[e]}(t,Qv)]}function im(t,e){Zv[t]=e}function rm(t){P(Uv,t)<0&&Uv.push(t)}function om(t,e){fm(Yv,t,e,2e3)}function am(t){lm("afterinit",t)}function sm(t){lm("afterupdate",t)}function lm(t,e){av.on(t,e)}function um(t,e,n){U(e)&&(n=e,e="");var i=q(t)?t.type:[t,t={event:e}][0];t.event=(t.event||i).toLowerCase(),e=t.event,Hv[e]||(lt(dv.test(i)&&dv.test(e)),Wv[i]||(Wv[i]={action:n,actionInfo:t}),Hv[e]=i)}function hm(t,e){ud.register(t,e)}function cm(t,e){fm(Xv,t,e,1e3,"layout")}function pm(t,e){fm(Xv,t,e,3e3,"visual")}var dm=[];function fm(t,e,n,i,r){if((U(e)||q(e))&&(n=e,e=i),!(P(dm,n)>=0)){dm.push(n);var o=Fg.wrapStageHandler(n,r);o.__prio=e,o.__raw=n,t.push(o)}}function gm(t,e){jv[t]=e}function ym(t,e,n){var i=lv("registerMap");i&&i(t,e,n)}var vm=function(t){var e=(t=T(t)).type,n="";e||ao(n);var i=e.split(":");2!==i.length&&ao(n);var r=!1;"echarts"===i[0]&&(e=i[1],r=!0),t.__isBuiltIn=r,If.set(e,t)};pm(hv,Ng),pm(cv,zg),pm(cv,Vg),pm(hv,cy),pm(cv,py),pm(7e3,(function(t,e){t.eachRawSeries((function(n){if(!t.isSeriesFiltered(n)){var i=n.getData();i.hasItemVisual()&&i.each((function(t){var n=i.getItemVisual(t,"decal");n&&(i.ensureUniqueItemVisual(t,"style").decal=nv(n,e))}));var r=i.getVisual("decal");if(r)i.getVisual("style").decal=nv(r,e)}}))})),rm(Pd),om(900,(function(t){var e=ft();t.eachSeries((function(t){var n=t.get("stack");if(n){var i=e.get(n)||e.set(n,[]),r=t.getData(),o={stackResultDimension:r.getCalculationInfo("stackResultDimension"),stackedOverDimension:r.getCalculationInfo("stackedOverDimension"),stackedDimension:r.getCalculationInfo("stackedDimension"),stackedByDimension:r.getCalculationInfo("stackedByDimension"),isStackedByIndex:r.getCalculationInfo("isStackedByIndex"),data:r,seriesModel:t};if(!o.stackedDimension||!o.isStackedByIndex&&!o.stackedByDimension)return;i.length&&r.setCalculationInfo("stackedOnSeries",i[i.length-1].seriesModel),i.push(o)}})),e.each(Od)})),gm("default",(function(t,e){k(e=e||{},{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 n=new Cr,i=new Ts({style:{fill:e.maskColor},zlevel:e.zlevel,z:1e4});n.add(i);var r,o=new As({style:{text:e.text,fill:e.textColor,fontSize:e.fontSize,fontWeight:e.fontWeight,fontStyle:e.fontStyle,fontFamily:e.fontFamily},zlevel:e.zlevel,z:10001}),a=new Ts({style:{fill:"none"},textContent:o,textConfig:{position:"right",distance:10},zlevel:e.zlevel,z:10001});return n.add(a),e.showSpinner&&((r=new Wu({shape:{startAngle:-Bg/2,endAngle:-Bg/2+.1,r:e.spinnerRadius},style:{stroke:e.color,lineCap:"round",lineWidth:e.lineWidth},zlevel:e.zlevel,z:10001})).animateShape(!0).when(1e3,{endAngle:3*Bg/2}).start("circularInOut"),r.animateShape(!0).when(1e3,{startAngle:3*Bg/2}).delay(300).start("circularInOut"),n.add(r)),n.resize=function(){var n=o.getBoundingRect().width,s=e.showSpinner?e.spinnerRadius:0,l=(t.getWidth()-2*s-(e.showSpinner&&n?10:0)-n)/2-(e.showSpinner&&n?0:5+n/2)+(e.showSpinner?0:n/2)+(n?0:s),u=t.getHeight()/2;e.showSpinner&&r.setShape({cx:l,cy:u}),a.setShape({x:l-s,y:u-s,width:2*s,height:2*s}),i.setShape({x:0,y:0,width:t.getWidth(),height:t.getHeight()})},n.resize(),n})),um({type:$s,event:$s,update:$s},xt),um({type:Js,event:Js,update:Js},xt),um({type:Qs,event:Qs,update:Qs},xt),um({type:tl,event:tl,update:tl},xt),um({type:el,event:el,update:el},xt),im("light",ny),im("dark",sy);var mm=[],xm={registerPreprocessor:rm,registerProcessor:om,registerPostInit:am,registerPostUpdate:sm,registerUpdateLifecycle:lm,registerAction:um,registerCoordinateSystem:hm,registerLayout:cm,registerVisual:pm,registerTransform:vm,registerLoading:gm,registerMap:ym,registerImpl:function(t,e){sv[t]=e},PRIORITY:pv,ComponentModel:Ip,ComponentView:fg,SeriesModel:ag,ChartView:mg,registerComponentModel:function(t){Ip.registerClass(t)},registerComponentView:function(t){fg.registerClass(t)},registerSeriesModel:function(t){ag.registerClass(t)},registerChartView:function(t){mg.registerClass(t)},registerSubTypeDefaulter:function(t,e){Ip.registerSubTypeDefaulter(t,e)},registerPainter:function(t,e){Pr(t,e)}};function _m(t){Y(t)?E(t,(function(t){_m(t)})):P(mm,t)>=0||(mm.push(t),U(t)&&(t={install:t}),t.install(xm))}function bm(t){return null==t?0:t.length||1}function wm(t){return t}var Sm=function(){function t(t,e,n,i,r,o){this._old=t,this._new=e,this._oldKeyGetter=n||wm,this._newKeyGetter=i||wm,this.context=r,this._diffModeMultiple="multiple"===o}return t.prototype.add=function(t){return this._add=t,this},t.prototype.update=function(t){return this._update=t,this},t.prototype.updateManyToOne=function(t){return this._updateManyToOne=t,this},t.prototype.updateOneToMany=function(t){return this._updateOneToMany=t,this},t.prototype.updateManyToMany=function(t){return this._updateManyToMany=t,this},t.prototype.remove=function(t){return this._remove=t,this},t.prototype.execute=function(){this[this._diffModeMultiple?"_executeMultiple":"_executeOneToOne"]()},t.prototype._executeOneToOne=function(){var t=this._old,e=this._new,n={},i=new Array(t.length),r=new Array(e.length);this._initIndexMap(t,null,i,"_oldKeyGetter"),this._initIndexMap(e,n,r,"_newKeyGetter");for(var o=0;o<t.length;o++){var a=i[o],s=n[a],l=bm(s);if(l>1){var u=s.shift();1===s.length&&(n[a]=s[0]),this._update&&this._update(u,o)}else 1===l?(n[a]=null,this._update&&this._update(s,o)):this._remove&&this._remove(o)}this._performRestAdd(r,n)},t.prototype._executeMultiple=function(){var t=this._old,e=this._new,n={},i={},r=[],o=[];this._initIndexMap(t,n,r,"_oldKeyGetter"),this._initIndexMap(e,i,o,"_newKeyGetter");for(var a=0;a<r.length;a++){var s=r[a],l=n[s],u=i[s],h=bm(l),c=bm(u);if(h>1&&1===c)this._updateManyToOne&&this._updateManyToOne(u,l),i[s]=null;else if(1===h&&c>1)this._updateOneToMany&&this._updateOneToMany(u,l),i[s]=null;else if(1===h&&1===c)this._update&&this._update(u,l),i[s]=null;else if(h>1&&c>1)this._updateManyToMany&&this._updateManyToMany(u,l),i[s]=null;else if(h>1)for(var p=0;p<h;p++)this._remove&&this._remove(l[p]);else this._remove&&this._remove(l)}this._performRestAdd(o,i)},t.prototype._performRestAdd=function(t,e){for(var n=0;n<t.length;n++){var i=t[n],r=e[i],o=bm(r);if(o>1)for(var a=0;a<o;a++)this._add&&this._add(r[a]);else 1===o&&this._add&&this._add(r);e[i]=null}},t.prototype._initIndexMap=function(t,e,n,i){for(var r=this._diffModeMultiple,o=0;o<t.length;o++){var a="_ec_"+this[i](t[o],o);if(r||(n[o]=a),e){var s=e[a],l=bm(s);0===l?(e[a]=o,r&&n.push(a)):1===l?e[a]=[s,o]:s.push(o)}}},t}(),Mm=function(){function t(t,e){this._encode=t,this._schema=e}return t.prototype.get=function(){return{fullDimensions:this._getFullDimensionNames(),encode:this._encode}},t.prototype._getFullDimensionNames=function(){return this._cachedDimNames||(this._cachedDimNames=this._schema?this._schema.makeOutputDimensionNames():[]),this._cachedDimNames},t}();function Im(t,e){return t.hasOwnProperty(e)||(t[e]=[]),t[e]}function Tm(t){return"category"===t?"ordinal":"time"===t?"time":"float"}var Cm=function(t){this.otherDims={},null!=t&&A(this,t)},Dm=So(),Am={float:"f",int:"i",ordinal:"o",number:"n",time:"t"},km=function(){function t(t){this.dimensions=t.dimensions,this._dimOmitted=t.dimensionOmitted,this.source=t.source,this._fullDimCount=t.fullDimensionCount,this._updateDimOmitted(t.dimensionOmitted)}return t.prototype.isDimensionOmitted=function(){return this._dimOmitted},t.prototype._updateDimOmitted=function(t){this._dimOmitted=t,t&&(this._dimNameMap||(this._dimNameMap=Om(this.source)))},t.prototype.getSourceDimensionIndex=function(t){return rt(this._dimNameMap.get(t),-1)},t.prototype.getSourceDimension=function(t){var e=this.source.dimensionsDefine;if(e)return e[t]},t.prototype.makeStoreSchema=function(){for(var t=this._fullDimCount,e=Xd(this.source),n=!Rm(t),i="",r=[],o=0,a=0;o<t;o++){var s=void 0,l=void 0,u=void 0,h=this.dimensions[a];if(h&&h.storeDimIndex===o)s=e?h.name:null,l=h.type,u=h.ordinalMeta,a++;else{var c=this.getSourceDimension(o);c&&(s=e?c.name:null,l=c.type)}r.push({property:s,type:l,ordinalMeta:u}),!e||null==s||h&&h.isCalculationCoord||(i+=n?s.replace(/\`/g,"`1").replace(/\$/g,"`2"):s),i+="$",i+=Am[l]||"f",u&&(i+=u.uid),i+="$"}var p=this.source;return{dimensions:r,hash:[p.seriesLayoutBy,p.startIndex,i].join("$$")}},t.prototype.makeOutputDimensionNames=function(){for(var t=[],e=0,n=0;e<this._fullDimCount;e++){var i=void 0,r=this.dimensions[n];if(r&&r.storeDimIndex===e)r.isCalculationCoord||(i=r.name),n++;else{var o=this.getSourceDimension(e);o&&(i=o.name)}t.push(i)}return t},t.prototype.appendCalculationDimension=function(t){this.dimensions.push(t),t.isCalculationCoord=!0,this._fullDimCount++,this._updateDimOmitted(!0)},t}();function Lm(t){return t instanceof km}function Pm(t){for(var e=ft(),n=0;n<(t||[]).length;n++){var i=t[n],r=q(i)?i.name:i;null!=r&&null==e.get(r)&&e.set(r,n)}return e}function Om(t){var e=Dm(t);return e.dimNameMap||(e.dimNameMap=Pm(t.dimensionsDefine))}function Rm(t){return t>30}var Nm,Em,zm,Vm,Bm,Fm,Gm,Wm=q,Hm=z,Ym="undefined"==typeof Int32Array?Array:Int32Array,Um=["hasItemOption","_nameList","_idList","_invertedIndicesMap","_dimSummary","userOutput","_rawData","_dimValueGetter","_nameDimIdx","_idDimIdx","_nameRepeatCount"],Xm=["_approximateExtent"],Zm=function(){function t(t,e){var n;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 i=!1;Lm(t)?(n=t.dimensions,this._dimOmitted=t.isDimensionOmitted(),this._schema=t):(i=!0,n=t),n=n||["x","y"];for(var r={},o=[],a={},s=!1,l={},u=0;u<n.length;u++){var h=n[u],c=X(h)?new Cm({name:h}):h instanceof Cm?h:new Cm(h),p=c.name;c.type=c.type||"float",c.coordDim||(c.coordDim=p,c.coordDimIndex=0);var d=c.otherDims=c.otherDims||{};o.push(p),r[p]=c,null!=l[p]&&(s=!0),c.createInvertedIndices&&(a[p]=[]),0===d.itemName&&(this._nameDimIdx=u),0===d.itemId&&(this._idDimIdx=u),i&&(c.storeDimIndex=u)}if(this.dimensions=o,this._dimInfos=r,this._initGetDimensionInfo(s),this.hostModel=e,this._invertedIndicesMap=a,this._dimOmitted){var f=this._dimIdxToName=ft();E(o,(function(t){f.set(r[t].storeDimIndex,t)}))}}return t.prototype.getDimension=function(t){var e=this._recognizeDimIndex(t);if(null==e)return t;if(e=t,!this._dimOmitted)return this.dimensions[e];var n=this._dimIdxToName.get(e);if(null!=n)return n;var i=this._schema.getSourceDimension(e);return i?i.name:void 0},t.prototype.getDimensionIndex=function(t){var e=this._recognizeDimIndex(t);if(null!=e)return e;if(null==t)return-1;var n=this._getDimInfo(t);return n?n.storeDimIndex:this._dimOmitted?this._schema.getSourceDimensionIndex(t):-1},t.prototype._recognizeDimIndex=function(t){if(j(t)||null!=t&&!isNaN(t)&&!this._getDimInfo(t)&&(!this._dimOmitted||this._schema.getSourceDimensionIndex(t)<0))return+t},t.prototype._getStoreDimIndex=function(t){var e=this.getDimensionIndex(t);return e},t.prototype.getDimensionInfo=function(t){return this._getDimInfo(this.getDimension(t))},t.prototype._initGetDimensionInfo=function(t){var e=this._dimInfos;this._getDimInfo=t?function(t){return e.hasOwnProperty(t)?e[t]:void 0}:function(t){return e[t]}},t.prototype.getDimensionsOnCoord=function(){return this._dimSummary.dataDimsOnCoord.slice()},t.prototype.mapDimension=function(t,e){var n=this._dimSummary;if(null==e)return n.encodeFirstDimNotExtra[t];var i=n.encode[t];return i?i[e]:null},t.prototype.mapDimensionsAll=function(t){return(this._dimSummary.encode[t]||[]).slice()},t.prototype.getStore=function(){return this._store},t.prototype.initData=function(t,e,n){var i,r=this;if(t instanceof zf&&(i=t),!i){var o=this.dimensions,a=Fd(t)||N(t)?new Zd(t,o.length):t;i=new zf;var s=Hm(o,(function(t){return{type:r._dimInfos[t].type,property:t}}));i.initData(a,s,n)}this._store=i,this._nameList=(e||[]).slice(),this._idList=[],this._nameRepeatCount={},this._doInit(0,i.count()),this._dimSummary=function(t,e){var n={},i=n.encode={},r=ft(),o=[],a=[],s={};E(t.dimensions,(function(e){var n,l=t.getDimensionInfo(e),u=l.coordDim;if(u){var h=l.coordDimIndex;Im(i,u)[h]=e,l.isExtraCoord||(r.set(u,1),"ordinal"!==(n=l.type)&&"time"!==n&&(o[0]=e),Im(s,u)[h]=t.getDimensionIndex(l.name)),l.defaultTooltip&&a.push(e)}Ap.each((function(t,e){var n=Im(i,e),r=l.otherDims[e];null!=r&&!1!==r&&(n[r]=l.name)}))}));var l=[],u={};r.each((function(t,e){var n=i[e];u[e]=n[0],l=l.concat(n)})),n.dataDimsOnCoord=l,n.dataDimIndicesOnCoord=z(l,(function(e){return t.getDimensionInfo(e).storeDimIndex})),n.encodeFirstDimNotExtra=u;var h=i.label;h&&h.length&&(o=h.slice());var c=i.tooltip;return c&&c.length?a=c.slice():a.length||(a=o.slice()),i.defaultedLabel=o,i.defaultedTooltip=a,n.userOutput=new Mm(s,e),n}(this,this._schema),this.userOutput=this._dimSummary.userOutput},t.prototype.appendData=function(t){var e=this._store.appendData(t);this._doInit(e[0],e[1])},t.prototype.appendValues=function(t,e){var n=this._store.appendValues(t,e.length),i=n.start,r=n.end,o=this._shouldMakeIdFromName();if(this._updateOrdinalMeta(),e)for(var a=i;a<r;a++){var s=a-i;this._nameList[a]=e[s],o&&Gm(this,a)}},t.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)}},t.prototype._shouldMakeIdFromName=function(){var t=this._store.getProvider();return null==this._idDimIdx&&t.getSource().sourceFormat!==Rp&&!t.fillStorage},t.prototype._doInit=function(t,e){if(!(t>=e)){var n=this._store.getProvider();this._updateOrdinalMeta();var i=this._nameList,r=this._idList;if(n.getSource().sourceFormat===kp&&!n.pure)for(var o=[],a=t;a<e;a++){var s=n.getItem(a,o);if(!this.hasItemOption&&go(s)&&(this.hasItemOption=!0),s){var l=s.name;null==i[a]&&null!=l&&(i[a]=xo(l,null));var u=s.id;null==r[a]&&null!=u&&(r[a]=xo(u,null))}}if(this._shouldMakeIdFromName())for(a=t;a<e;a++)Gm(this,a);Nm(this)}},t.prototype.getApproximateExtent=function(t){return this._approximateExtent[t]||this._store.getDataExtent(this._getStoreDimIndex(t))},t.prototype.setApproximateExtent=function(t,e){e=this.getDimension(e),this._approximateExtent[e]=t.slice()},t.prototype.getCalculationInfo=function(t){return this._calculationInfo[t]},t.prototype.setCalculationInfo=function(t,e){Wm(t)?A(this._calculationInfo,t):this._calculationInfo[t]=e},t.prototype.getName=function(t){var e=this.getRawIndex(t),n=this._nameList[e];return null==n&&null!=this._nameDimIdx&&(n=zm(this,this._nameDimIdx,e)),null==n&&(n=""),n},t.prototype._getCategory=function(t,e){var n=this._store.get(t,e),i=this._store.getOrdinalMeta(t);return i?i.categories[n]:n},t.prototype.getId=function(t){return Em(this,this.getRawIndex(t))},t.prototype.count=function(){return this._store.count()},t.prototype.get=function(t,e){var n=this._store,i=this._dimInfos[t];if(i)return n.get(i.storeDimIndex,e)},t.prototype.getByRawIndex=function(t,e){var n=this._store,i=this._dimInfos[t];if(i)return n.getByRawIndex(i.storeDimIndex,e)},t.prototype.getIndices=function(){return this._store.getIndices()},t.prototype.getDataExtent=function(t){return this._store.getDataExtent(this._getStoreDimIndex(t))},t.prototype.getSum=function(t){return this._store.getSum(this._getStoreDimIndex(t))},t.prototype.getMedian=function(t){return this._store.getMedian(this._getStoreDimIndex(t))},t.prototype.getValues=function(t,e){var n=this,i=this._store;return Y(t)?i.getValues(Hm(t,(function(t){return n._getStoreDimIndex(t)})),e):i.getValues(t)},t.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},t.prototype.indexOfName=function(t){for(var e=0,n=this._store.count();e<n;e++)if(this.getName(e)===t)return e;return-1},t.prototype.getRawIndex=function(t){return this._store.getRawIndex(t)},t.prototype.indexOfRawIndex=function(t){return this._store.indexOfRawIndex(t)},t.prototype.rawIndexOf=function(t,e){var n=t&&this._invertedIndicesMap[t];var i=n[e];return null==i||isNaN(i)?-1:i},t.prototype.indicesOfNearest=function(t,e,n){return this._store.indicesOfNearest(this._getStoreDimIndex(t),e,n)},t.prototype.each=function(t,e,n){U(t)&&(n=e,e=t,t=[]);var i=n||this,r=Hm(Vm(t),this._getStoreDimIndex,this);this._store.each(r,i?W(e,i):e)},t.prototype.filterSelf=function(t,e,n){U(t)&&(n=e,e=t,t=[]);var i=n||this,r=Hm(Vm(t),this._getStoreDimIndex,this);return this._store=this._store.filter(r,i?W(e,i):e),this},t.prototype.selectRange=function(t){var e=this,n={};return E(G(t),(function(i){var r=e._getStoreDimIndex(i);n[r]=t[i]})),this._store=this._store.selectRange(n),this},t.prototype.mapArray=function(t,e,n){U(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},t.prototype.map=function(t,e,n,i){var r=n||i||this,o=Hm(Vm(t),this._getStoreDimIndex,this),a=Fm(this);return a._store=this._store.map(o,r?W(e,r):e),a},t.prototype.modify=function(t,e,n,i){var r=n||i||this;var o=Hm(Vm(t),this._getStoreDimIndex,this);this._store.modify(o,r?W(e,r):e)},t.prototype.downSample=function(t,e,n,i){var r=Fm(this);return r._store=this._store.downSample(this._getStoreDimIndex(t),e,n,i),r},t.prototype.lttbDownSample=function(t,e){var n=Fm(this);return n._store=this._store.lttbDownSample(this._getStoreDimIndex(t),e),n},t.prototype.getRawDataItem=function(t){return this._store.getRawDataItem(t)},t.prototype.getItemModel=function(t){var e=this.hostModel,n=this.getRawDataItem(t);return new pc(n,e,e&&e.ecModel)},t.prototype.diff=function(t){var e=this;return new Sm(t?t.getStore().getIndices():[],this.getStore().getIndices(),(function(e){return Em(t,e)}),(function(t){return Em(e,t)}))},t.prototype.getVisual=function(t){var e=this._visual;return e&&e[t]},t.prototype.setVisual=function(t,e){this._visual=this._visual||{},Wm(t)?A(this._visual,t):this._visual[t]=e},t.prototype.getItemVisual=function(t,e){var n=this._itemVisuals[t],i=n&&n[e];return null==i?this.getVisual(e):i},t.prototype.hasItemVisual=function(){return this._itemVisuals.length>0},t.prototype.ensureUniqueItemVisual=function(t,e){var n=this._itemVisuals,i=n[t];i||(i=n[t]={});var r=i[e];return null==r&&(Y(r=this.getVisual(e))?r=r.slice():Wm(r)&&(r=A({},r)),i[e]=r),r},t.prototype.setItemVisual=function(t,e,n){var i=this._itemVisuals[t]||{};this._itemVisuals[t]=i,Wm(e)?A(i,e):i[e]=n},t.prototype.clearAllVisual=function(){this._visual={},this._itemVisuals=[]},t.prototype.setLayout=function(t,e){Wm(t)?A(this._layout,t):this._layout[t]=e},t.prototype.getLayout=function(t){return this._layout[t]},t.prototype.getItemLayout=function(t){return this._itemLayouts[t]},t.prototype.setItemLayout=function(t,e,n){this._itemLayouts[t]=n?A(this._itemLayouts[t]||{},e):e},t.prototype.clearItemLayouts=function(){this._itemLayouts.length=0},t.prototype.setItemGraphicEl=function(t,e){var n=this.hostModel&&this.hostModel.seriesIndex;Hs(n,this.dataType,t,e),this._graphicEls[t]=e},t.prototype.getItemGraphicEl=function(t){return this._graphicEls[t]},t.prototype.eachItemGraphicEl=function(t,e){E(this._graphicEls,(function(n,i){n&&t&&t.call(e,n,i)}))},t.prototype.cloneShallow=function(e){return e||(e=new t(this._schema?this._schema:Hm(this.dimensions,this._getDimInfo,this),this.hostModel)),Bm(e,this),e._store=this._store,e},t.prototype.wrapMethod=function(t,e){var n=this[t];U(n)&&(this.__wrappedMethods=this.__wrappedMethods||[],this.__wrappedMethods.push(t),this[t]=function(){var t=n.apply(this,arguments);return e.apply(this,[t].concat(at(arguments)))})},t.internalField=(Nm=function(t){var e=t._invertedIndicesMap;E(e,(function(n,i){var r=t._dimInfos[i],o=r.ordinalMeta,a=t._store;if(o){n=e[i]=new Ym(o.categories.length);for(var s=0;s<n.length;s++)n[s]=-1;for(s=0;s<a.count();s++)n[a.get(r.storeDimIndex,s)]=s}}))},zm=function(t,e,n){return xo(t._getCategory(e,n),null)},Em=function(t,e){var n=t._idList[e];return null==n&&null!=t._idDimIdx&&(n=zm(t,t._idDimIdx,e)),null==n&&(n="e\0\0"+e),n},Vm=function(t){return Y(t)||(t=null!=t?[t]:[]),t},Fm=function(e){var n=new t(e._schema?e._schema:Hm(e.dimensions,e._getDimInfo,e),e.hostModel);return Bm(n,e),n},Bm=function(t,e){E(Um.concat(e.__wrappedMethods||[]),(function(n){e.hasOwnProperty(n)&&(t[n]=e[n])})),t.__wrappedMethods=e.__wrappedMethods,E(Xm,(function(n){t[n]=T(e[n])})),t._calculationInfo=A({},e._calculationInfo)},void(Gm=function(t,e){var n=t._nameList,i=t._idList,r=t._nameDimIdx,o=t._idDimIdx,a=n[e],s=i[e];if(null==a&&null!=r&&(n[e]=a=zm(t,r,e)),null==s&&null!=o&&(i[e]=s=zm(t,o,e)),null==s&&null!=a){var l=t._nameRepeatCount,u=l[a]=(l[a]||0)+1;s=a,u>1&&(s+="__ec__"+u),i[e]=s}})),t}();function jm(t,e){Fd(t)||(t=Wd(t));var n=(e=e||{}).coordDimensions||[],i=e.dimensionsDefine||t.dimensionsDefine||[],r=ft(),o=[],a=function(t,e,n,i){var r=Math.max(t.dimensionsDetectedCount||1,e.length,n.length,i||0);return E(e,(function(t){var e;q(t)&&(e=t.dimsDef)&&(r=Math.max(r,e.length))})),r}(t,n,i,e.dimensionsCount),s=e.canOmitUnusedDimensions&&Rm(a),l=i===t.dimensionsDefine,u=l?Om(t):Pm(i),h=e.encodeDefine;!h&&e.encodeDefaulter&&(h=e.encodeDefaulter(t,a));for(var c=ft(h),p=new Pf(a),d=0;d<p.length;d++)p[d]=-1;function f(t){var e=p[t];if(e<0){var n=i[t],r=q(n)?n:{name:n},a=new Cm,s=r.name;null!=s&&null!=u.get(s)&&(a.name=a.displayName=s),null!=r.type&&(a.type=r.type),null!=r.displayName&&(a.displayName=r.displayName);var l=o.length;return p[t]=l,a.storeDimIndex=t,o.push(a),a}return o[e]}if(!s)for(d=0;d<a;d++)f(d);c.each((function(t,e){var n=ho(t).slice();if(1===n.length&&!X(n[0])&&n[0]<0)c.set(e,!1);else{var i=c.set(e,[]);E(n,(function(t,n){var r=X(t)?u.get(t):t;null!=r&&r<a&&(i[n]=r,y(f(r),e,n))}))}}));var g=0;function y(t,e,n){null!=Ap.get(e)?t.otherDims[e]=n:(t.coordDim=e,t.coordDimIndex=n,r.set(e,!0))}E(n,(function(t){var e,n,i,r;if(X(t))e=t,r={};else{e=(r=t).name;var o=r.ordinalMeta;r.ordinalMeta=null,(r=A({},r)).ordinalMeta=o,n=r.dimsDef,i=r.otherDims,r.name=r.coordDim=r.coordDimIndex=r.dimsDef=r.otherDims=null}var s=c.get(e);if(!1!==s){if(!(s=ho(s)).length)for(var u=0;u<(n&&n.length||1);u++){for(;g<a&&null!=f(g).coordDim;)g++;g<a&&s.push(g++)}E(s,(function(t,o){var a=f(t);if(l&&null!=r.type&&(a.type=r.type),y(k(a,r),e,o),null==a.name&&n){var s=n[o];!q(s)&&(s={name:s}),a.name=a.displayName=s.name,a.defaultTooltip=s.defaultTooltip}i&&k(a.otherDims,i)}))}}));var v=e.generateCoord,m=e.generateCoordCount,x=null!=m;m=v?m||1:0;var _=v||"value";function b(t){null==t.name&&(t.name=t.coordDim)}if(s)E(o,(function(t){b(t)})),o.sort((function(t,e){return t.storeDimIndex-e.storeDimIndex}));else for(var w=0;w<a;w++){var S=f(w);null==S.coordDim&&(S.coordDim=qm(_,r,x),S.coordDimIndex=0,(!v||m<=0)&&(S.isExtraCoord=!0),m--),b(S),null!=S.type||Up(t,w)!==Vp&&(!S.isExtraCoord||null==S.otherDims.itemName&&null==S.otherDims.seriesName)||(S.type="ordinal")}return function(t){for(var e=ft(),n=0;n<t.length;n++){var i=t[n],r=i.name,o=e.get(r)||0;o>0&&(i.name=r+(o-1)),o++,e.set(r,o)}}(o),new km({source:t,dimensions:o,fullDimensionCount:a,dimensionOmitted:s})}function qm(t,e,n){var i=e.data;if(n||i.hasOwnProperty(t)){for(var r=0;i.hasOwnProperty(t+r);)r++;t+=r}return e.set(t,!0),t}var Km=function(t){this.coordSysDims=[],this.axisMap=ft(),this.categoryAxisMap=ft(),this.coordSysName=t};var $m={cartesian2d:function(t,e,n,i){var r=t.getReferringComponents("xAxis",Co).models[0],o=t.getReferringComponents("yAxis",Co).models[0];e.coordSysDims=["x","y"],n.set("x",r),n.set("y",o),Jm(r)&&(i.set("x",r),e.firstCategoryDimIndex=0),Jm(o)&&(i.set("y",o),null==e.firstCategoryDimIndex&&(e.firstCategoryDimIndex=1))},singleAxis:function(t,e,n,i){var r=t.getReferringComponents("singleAxis",Co).models[0];e.coordSysDims=["single"],n.set("single",r),Jm(r)&&(i.set("single",r),e.firstCategoryDimIndex=0)},polar:function(t,e,n,i){var r=t.getReferringComponents("polar",Co).models[0],o=r.findAxisModel("radiusAxis"),a=r.findAxisModel("angleAxis");e.coordSysDims=["radius","angle"],n.set("radius",o),n.set("angle",a),Jm(o)&&(i.set("radius",o),e.firstCategoryDimIndex=0),Jm(a)&&(i.set("angle",a),null==e.firstCategoryDimIndex&&(e.firstCategoryDimIndex=1))},geo:function(t,e,n,i){e.coordSysDims=["lng","lat"]},parallel:function(t,e,n,i){var r=t.ecModel,o=r.getComponent("parallel",t.get("parallelIndex")),a=e.coordSysDims=o.dimensions.slice();E(o.parallelAxisIndex,(function(t,o){var s=r.getComponent("parallelAxis",t),l=a[o];n.set(l,s),Jm(s)&&(i.set(l,s),null==e.firstCategoryDimIndex&&(e.firstCategoryDimIndex=o))}))}};function Jm(t){return"category"===t.get("type")}function Qm(t,e,n){var i,r,o,a=(n=n||{}).byIndex,s=n.stackedCoordDimension;!function(t){return!Lm(t.schema)}(e)?(r=e.schema,i=r.dimensions,o=e.store):i=e;var l,u,h,c,p=!(!t||!t.get("stack"));if(E(i,(function(t,e){X(t)&&(i[e]=t={name:t}),p&&!t.isExtraCoord&&(a||l||!t.ordinalMeta||(l=t),u||"ordinal"===t.type||"time"===t.type||s&&s!==t.coordDim||(u=t))})),!u||a||l||(a=!0),u){h="__\0ecstackresult_"+t.id,c="__\0ecstackedover_"+t.id,l&&(l.createInvertedIndices=!0);var d=u.coordDim,f=u.type,g=0;E(i,(function(t){t.coordDim===d&&g++}));var y={name:h,coordDim:d,coordDimIndex:g,type:f,isExtraCoord:!0,isCalculationCoord:!0,storeDimIndex:i.length},v={name:c,coordDim:c,coordDimIndex:g+1,type:f,isExtraCoord:!0,isCalculationCoord:!0,storeDimIndex:i.length+1};r?(o&&(y.storeDimIndex=o.ensureCalculationDimension(c,f),v.storeDimIndex=o.ensureCalculationDimension(h,f)),r.appendCalculationDimension(y),r.appendCalculationDimension(v)):(i.push(y),i.push(v))}return{stackedDimension:u&&u.name,stackedByDimension:l&&l.name,isStackedByIndex:a,stackedOverDimension:c,stackResultDimension:h}}function tx(t,e){return!!e&&e===t.getCalculationInfo("stackedDimension")}function ex(t,e){return tx(t,e)?t.getCalculationInfo("stackResultDimension"):e}function nx(t,e,n){n=n||{};var i,r=e.getSourceManager(),o=!1;t?(o=!0,i=Wd(t)):o=(i=r.getSource()).sourceFormat===kp;var a=function(t){var e=t.get("coordinateSystem"),n=new Km(e),i=$m[e];if(i)return i(t,n,n.axisMap,n.categoryAxisMap),n}(e),s=function(t,e){var n,i=t.get("coordinateSystem"),r=ud.get(i);return e&&e.coordSysDims&&(n=z(e.coordSysDims,(function(t){var n={name:t},i=e.axisMap.get(t);if(i){var r=i.get("type");n.type=Tm(r)}return n}))),n||(n=r&&(r.getDimensionsInfo?r.getDimensionsInfo():r.dimensions.slice())||["x","y"]),n}(e,a),l=n.useEncodeDefaulter,u=U(l)?l:l?H(Wp,s,e):null,h=jm(i,{coordDimensions:s,generateCoord:n.generateCoord,encodeDefine:e.getEncode(),encodeDefaulter:u,canOmitUnusedDimensions:!o}),c=function(t,e,n){var i,r;return n&&E(t,(function(t,o){var a=t.coordDim,s=n.categoryAxisMap.get(a);s&&(null==i&&(i=o),t.ordinalMeta=s.getOrdinalMeta(),e&&(t.createInvertedIndices=!0)),null!=t.otherDims.itemName&&(r=!0)})),r||null==i||(t[i].otherDims.itemName=0),i}(h.dimensions,n.createInvertedIndices,a),p=o?null:r.getSharedDataStore(h),d=Qm(e,{schema:h,store:p}),f=new Zm(h,e);f.setCalculationInfo(d);var g=null!=c&&function(t){if(t.sourceFormat===kp){return!Y(fo(function(t){var e=0;for(;e<t.length&&null==t[e];)e++;return t[e]}(t.data||[])))}}(i)?function(t,e,n,i){return i===c?n:this.defaultDimValueGetter(t,e,n,i)}:null;return f.hasItemOption=!1,f.initData(o?i:p,null,g),f}var ix=function(){function t(t){this._setting=t||{},this._extent=[1/0,-1/0]}return t.prototype.getSetting=function(t){return this._setting[t]},t.prototype.unionExtent=function(t){var e=this._extent;t[0]<e[0]&&(e[0]=t[0]),t[1]>e[1]&&(e[1]=t[1])},t.prototype.unionExtentFromData=function(t,e){this.unionExtent(t.getApproximateExtent(e))},t.prototype.getExtent=function(){return this._extent.slice()},t.prototype.setExtent=function(t,e){var n=this._extent;isNaN(t)||(n[0]=t),isNaN(e)||(n[1]=e)},t.prototype.isInExtentRange=function(t){return this._extent[0]<=t&&this._extent[1]>=t},t.prototype.isBlank=function(){return this._isBlank},t.prototype.setBlank=function(t){this._isBlank=t},t}();Go(ix);var rx=0,ox=function(){function t(t){this.categories=t.categories||[],this._needCollect=t.needCollect,this._deduplication=t.deduplication,this.uid=++rx}return t.createByAxisModel=function(e){var n=e.option,i=n.data,r=i&&z(i,ax);return new t({categories:r,needCollect:!r,deduplication:!1!==n.dedplication})},t.prototype.getOrdinal=function(t){return this._getOrCreateMap().get(t)},t.prototype.parseAndCollect=function(t){var e,n=this._needCollect;if(!X(t)&&!n)return t;if(n&&!this._deduplication)return e=this.categories.length,this.categories[e]=t,e;var i=this._getOrCreateMap();return null==(e=i.get(t))&&(n?(e=this.categories.length,this.categories[e]=t,i.set(t,e)):e=NaN),e},t.prototype._getOrCreateMap=function(){return this._map||(this._map=ft(this.categories))},t}();function ax(t){return q(t)&&null!=t.value?t.value:t+""}function sx(t){return"interval"===t.type||"log"===t.type}function lx(t,e,n,i){var r={},o=t[1]-t[0],a=r.interval=$r(o/e,!0);null!=n&&a<n&&(a=r.interval=n),null!=i&&a>i&&(a=r.interval=i);var s=r.intervalPrecision=hx(a);return function(t,e){!isFinite(t[0])&&(t[0]=e[0]),!isFinite(t[1])&&(t[1]=e[1]),cx(t,0,e),cx(t,1,e),t[0]>t[1]&&(t[0]=t[1])}(r.niceTickExtent=[zr(Math.ceil(t[0]/a)*a,s),zr(Math.floor(t[1]/a)*a,s)],t),r}function ux(t){var e=Math.pow(10,Kr(t)),n=t/e;return n?2===n?n=3:3===n?n=5:n*=2:n=1,zr(n*e)}function hx(t){return Br(t)+2}function cx(t,e,n){t[e]=Math.max(Math.min(t[e],n[1]),n[0])}function px(t,e){return t>=e[0]&&t<=e[1]}function dx(t,e){return e[1]===e[0]?.5:(t-e[0])/(e[1]-e[0])}function fx(t,e){return t*(e[1]-e[0])+e[0]}var gx=function(t){function e(e){var n=t.call(this,e)||this;n.type="ordinal";var i=n.getSetting("ordinalMeta");return i||(i=new ox({})),Y(i)&&(i=new ox({categories:z(i,(function(t){return q(t)?t.value:t}))})),n._ordinalMeta=i,n._extent=n.getSetting("extent")||[0,i.categories.length-1],n}return n(e,t),e.prototype.parse=function(t){return X(t)?this._ordinalMeta.getOrdinal(t):Math.round(t)},e.prototype.contain=function(t){return px(t=this.parse(t),this._extent)&&null!=this._ordinalMeta.categories[t]},e.prototype.normalize=function(t){return dx(t=this._getTickNumber(this.parse(t)),this._extent)},e.prototype.scale=function(t){return t=Math.round(fx(t,this._extent)),this.getRawOrdinalNumber(t)},e.prototype.getTicks=function(){for(var t=[],e=this._extent,n=e[0];n<=e[1];)t.push({value:n}),n++;return t},e.prototype.getMinorTicks=function(t){},e.prototype.setSortInfo=function(t){if(null!=t){for(var e=t.ordinalNumbers,n=this._ordinalNumbersByTick=[],i=this._ticksByOrdinalNumber=[],r=0,o=this._ordinalMeta.categories.length,a=Math.min(o,e.length);r<a;++r){var s=e[r];n[r]=s,i[s]=r}for(var l=0;r<o;++r){for(;null!=i[l];)l++;n.push(l),i[l]=r}}else this._ordinalNumbersByTick=this._ticksByOrdinalNumber=null},e.prototype._getTickNumber=function(t){var e=this._ticksByOrdinalNumber;return e&&t>=0&&t<e.length?e[t]:t},e.prototype.getRawOrdinalNumber=function(t){var e=this._ordinalNumbersByTick;return e&&t>=0&&t<e.length?e[t]:t},e.prototype.getLabel=function(t){if(!this.isBlank()){var e=this.getRawOrdinalNumber(t.value),n=this._ordinalMeta.categories[e];return null==n?"":n+""}},e.prototype.count=function(){return this._extent[1]-this._extent[0]+1},e.prototype.unionExtentFromData=function(t,e){this.unionExtent(t.getApproximateExtent(e))},e.prototype.isInExtentRange=function(t){return t=this._getTickNumber(t),this._extent[0]<=t&&this._extent[1]>=t},e.prototype.getOrdinalMeta=function(){return this._ordinalMeta},e.prototype.calcNiceTicks=function(){},e.prototype.calcNiceExtent=function(){},e.type="ordinal",e}(ix);ix.registerClass(gx);var yx=zr,vx=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.type="interval",e._interval=0,e._intervalPrecision=2,e}return n(e,t),e.prototype.parse=function(t){return t},e.prototype.contain=function(t){return px(t,this._extent)},e.prototype.normalize=function(t){return dx(t,this._extent)},e.prototype.scale=function(t){return fx(t,this._extent)},e.prototype.setExtent=function(t,e){var n=this._extent;isNaN(t)||(n[0]=parseFloat(t)),isNaN(e)||(n[1]=parseFloat(e))},e.prototype.unionExtent=function(t){var e=this._extent;t[0]<e[0]&&(e[0]=t[0]),t[1]>e[1]&&(e[1]=t[1]),this.setExtent(e[0],e[1])},e.prototype.getInterval=function(){return this._interval},e.prototype.setInterval=function(t){this._interval=t,this._niceExtent=this._extent.slice(),this._intervalPrecision=hx(t)},e.prototype.getTicks=function(t){var e=this._interval,n=this._extent,i=this._niceExtent,r=this._intervalPrecision,o=[];if(!e)return o;n[0]<i[0]&&(t?o.push({value:yx(i[0]-e,r)}):o.push({value:n[0]}));for(var a=i[0];a<=i[1]&&(o.push({value:a}),(a=yx(a+e,r))!==o[o.length-1].value);)if(o.length>1e4)return[];var s=o.length?o[o.length-1].value:i[1];return n[1]>s&&(t?o.push({value:yx(s+e,r)}):o.push({value:n[1]})),o},e.prototype.getMinorTicks=function(t){for(var e=this.getTicks(!0),n=[],i=this.getExtent(),r=1;r<e.length;r++){for(var o=e[r],a=e[r-1],s=0,l=[],u=(o.value-a.value)/t;s<t-1;){var h=yx(a.value+(s+1)*u);h>i[0]&&h<i[1]&&l.push(h),s++}n.push(l)}return n},e.prototype.getLabel=function(t,e){if(null==t)return"";var n=e&&e.precision;return null==n?n=Br(t.value)||0:"auto"===n&&(n=this._intervalPrecision),tp(yx(t.value,n,!0))},e.prototype.calcNiceTicks=function(t,e,n){t=t||5;var i=this._extent,r=i[1]-i[0];if(isFinite(r)){r<0&&(r=-r,i.reverse());var o=lx(i,t,e,n);this._intervalPrecision=o.intervalPrecision,this._interval=o.interval,this._niceExtent=o.niceTickExtent}},e.prototype.calcNiceExtent=function(t){var e=this._extent;if(e[0]===e[1])if(0!==e[0]){var n=e[0];t.fixMax||(e[1]+=n/2),e[0]-=n/2}else e[1]=1;var i=e[1]-e[0];isFinite(i)||(e[0]=0,e[1]=1),this.calcNiceTicks(t.splitNumber,t.minInterval,t.maxInterval);var r=this._interval;t.fixMin||(e[0]=yx(Math.floor(e[0]/r)*r)),t.fixMax||(e[1]=yx(Math.ceil(e[1]/r)*r))},e.prototype.setNiceExtent=function(t,e){this._niceExtent=[t,e]},e.type="interval",e}(ix);ix.registerClass(vx);var mx="undefined"!=typeof Float32Array,xx=mx?Float32Array:Array;function _x(t){return Y(t)?mx?new Float32Array(t):t:new xx(t)}var bx="__ec_stack_";function Sx(t){return t.get("stack")||bx+t.seriesIndex}function Mx(t){return t.dim+t.index}function Ix(t,e){var n=[];return e.eachSeriesByType(t,(function(t){kx(t)&&n.push(t)})),n}function Tx(t){var e=function(t){var e={};E(t,(function(t){var n=t.coordinateSystem.getBaseAxis();if("time"===n.type||"value"===n.type)for(var i=t.getData(),r=n.dim+"_"+n.index,o=i.getDimensionIndex(i.mapDimension(n.dim)),a=i.getStore(),s=0,l=a.count();s<l;++s){var u=a.get(o,s);e[r]?e[r].push(u):e[r]=[u]}}));var n={};for(var i in e)if(e.hasOwnProperty(i)){var r=e[i];if(r){r.sort((function(t,e){return t-e}));for(var o=null,a=1;a<r.length;++a){var s=r[a]-r[a-1];s>0&&(o=null===o?s:Math.min(o,s))}n[i]=o}}return n}(t),n=[];return E(t,(function(t){var i,r=t.coordinateSystem.getBaseAxis(),o=r.getExtent();if("category"===r.type)i=r.getBandWidth();else if("value"===r.type||"time"===r.type){var a=r.dim+"_"+r.index,s=e[a],l=Math.abs(o[1]-o[0]),u=r.scale.getExtent(),h=Math.abs(u[1]-u[0]);i=s?l/h*s:l}else{var c=t.getData();i=Math.abs(o[1]-o[0])/c.count()}var p=Er(t.get("barWidth"),i),d=Er(t.get("barMaxWidth"),i),f=Er(t.get("barMinWidth")||(Lx(t)?.5:1),i),g=t.get("barGap"),y=t.get("barCategoryGap");n.push({bandWidth:i,barWidth:p,barMaxWidth:d,barMinWidth:f,barGap:g,barCategoryGap:y,axisKey:Mx(r),stackId:Sx(t)})})),Cx(n)}function Cx(t){var e={};E(t,(function(t,n){var i=t.axisKey,r=t.bandWidth,o=e[i]||{bandWidth:r,remainedWidth:r,autoWidthCount:0,categoryGap:null,gap:"20%",stacks:{}},a=o.stacks;e[i]=o;var s=t.stackId;a[s]||o.autoWidthCount++,a[s]=a[s]||{width:0,maxWidth:0};var l=t.barWidth;l&&!a[s].width&&(a[s].width=l,l=Math.min(o.remainedWidth,l),o.remainedWidth-=l);var u=t.barMaxWidth;u&&(a[s].maxWidth=u);var h=t.barMinWidth;h&&(a[s].minWidth=h);var c=t.barGap;null!=c&&(o.gap=c);var p=t.barCategoryGap;null!=p&&(o.categoryGap=p)}));var n={};return E(e,(function(t,e){n[e]={};var i=t.stacks,r=t.bandWidth,o=t.categoryGap;if(null==o){var a=G(i).length;o=Math.max(35-4*a,15)+"%"}var s=Er(o,r),l=Er(t.gap,1),u=t.remainedWidth,h=t.autoWidthCount,c=(u-s)/(h+(h-1)*l);c=Math.max(c,0),E(i,(function(t){var e=t.maxWidth,n=t.minWidth;if(t.width){i=t.width;e&&(i=Math.min(i,e)),n&&(i=Math.max(i,n)),t.width=i,u-=i+l*i,h--}else{var i=c;e&&e<i&&(i=Math.min(e,u)),n&&n>i&&(i=n),i!==c&&(t.width=i,u-=i+l*i,h--)}})),c=(u-s)/(h+(h-1)*l),c=Math.max(c,0);var p,d=0;E(i,(function(t,e){t.width||(t.width=c),p=t,d+=t.width*(1+l)})),p&&(d-=p.width*l);var f=-d/2;E(i,(function(t,i){n[e][i]=n[e][i]||{bandWidth:r,offset:f,width:t.width},f+=t.width*(1+l)}))})),n}function Dx(t,e){var n=Ix(t,e),i=Tx(n);E(n,(function(t){var e=t.getData(),n=t.coordinateSystem.getBaseAxis(),r=Sx(t),o=i[Mx(n)][r],a=o.offset,s=o.width;e.setLayout({bandWidth:o.bandWidth,offset:a,size:s})}))}function Ax(t){return{seriesType:t,plan:gg(),reset:function(t){if(kx(t)){var e=t.getData(),n=t.coordinateSystem,i=n.getBaseAxis(),r=n.getOtherAxis(i),o=e.getDimensionIndex(e.mapDimension(r.dim)),a=e.getDimensionIndex(e.mapDimension(i.dim)),s=t.get("showBackground",!0),l=e.mapDimension(r.dim),u=e.getCalculationInfo("stackResultDimension"),h=tx(e,l)&&!!e.getCalculationInfo("stackedOnSeries"),c=r.isHorizontal(),p=function(t,e){return e.toGlobalCoord(e.dataToCoord("log"===e.type?1:0))}(0,r),d=Lx(t),f=t.get("barMinHeight")||0,g=u&&e.getDimensionIndex(u),y=e.getLayout("size"),v=e.getLayout("offset");return{progress:function(t,e){for(var i,r=t.count,l=d&&_x(3*r),u=d&&s&&_x(3*r),m=d&&_x(r),x=n.master.getRect(),_=c?x.width:x.height,b=e.getStore(),w=0;null!=(i=t.next());){var S=b.get(h?g:o,i),M=b.get(a,i),I=p,T=void 0;h&&(T=+S-b.get(o,i));var C=void 0,D=void 0,A=void 0,k=void 0;if(c){var L=n.dataToPoint([S,M]);if(h)I=n.dataToPoint([T,M])[0];C=I,D=L[1]+v,A=L[0]-I,k=y,Math.abs(A)<f&&(A=(A<0?-1:1)*f)}else{L=n.dataToPoint([M,S]);if(h)I=n.dataToPoint([M,T])[1];C=L[0]+v,D=I,A=y,k=L[1]-I,Math.abs(k)<f&&(k=(k<=0?-1:1)*f)}d?(l[w]=C,l[w+1]=D,l[w+2]=c?A:k,u&&(u[w]=c?x.x:C,u[w+1]=c?D:x.y,u[w+2]=_),m[i]=i):e.setItemLayout(i,{x:C,y:D,width:A,height:k}),w+=3}d&&e.setLayout({largePoints:l,largeDataIndices:m,largeBackgroundPoints:u,valueAxisHorizontal:c})}}}}}}function kx(t){return t.coordinateSystem&&"cartesian2d"===t.coordinateSystem.type}function Lx(t){return t.pipelineContext&&t.pipelineContext.large}var Px=function(t){function e(e){var n=t.call(this,e)||this;return n.type="time",n}return n(e,t),e.prototype.getLabel=function(t){var e=this.getSetting("useUTC");return zc(t.value,Lc[function(t){switch(t){case"year":case"month":return"day";case"millisecond":return"millisecond";default:return"second"}}(Nc(this._minLevelUnit))]||Lc.second,e,this.getSetting("locale"))},e.prototype.getFormattedLabel=function(t,e,n){var i=this.getSetting("useUTC");return function(t,e,n,i,r){var o=null;if(X(n))o=n;else if(U(n))o=n(t.value,e,{level:t.level});else{var a=A({},Ac);if(t.level>0)for(var s=0;s<Pc.length;++s)a[Pc[s]]="{primary|"+a[Pc[s]]+"}";var l=n?!1===n.inherit?n:k(n,a):a,u=Vc(t.value,r);if(l[u])o=l[u];else if(l.inherit){for(s=Oc.indexOf(u)-1;s>=0;--s)if(l[u]){o=l[u];break}o=o||a.none}if(Y(o)){var h=null==t.level?0:t.level>=0?t.level:o.length+t.level;o=o[h=Math.min(h,o.length-1)]}}return zc(new Date(t.value),o,r,i)}(t,e,n,this.getSetting("locale"),i)},e.prototype.getTicks=function(){var t=this._interval,e=this._extent,n=[];if(!t)return n;n.push({value:e[0],level:0});var i=this.getSetting("useUTC"),r=function(t,e,n,i){var r=1e4,o=Oc,a=0;function s(t,e,n,r,o,a,s){for(var l=new Date(e),u=e,h=l[r]();u<n&&u<=i[1];)s.push({value:u}),h+=t,l[o](h),u=l.getTime();s.push({value:u,notAdd:!0})}function l(t,r,o){var a=[],l=!r.length;if(!function(t,e,n,i){var r=jr(e),o=jr(n),a=function(t){return Bc(r,t,i)===Bc(o,t,i)},s=function(){return a("year")},l=function(){return s()&&a("month")},u=function(){return l()&&a("day")},h=function(){return u()&&a("hour")},c=function(){return h()&&a("minute")},p=function(){return c()&&a("second")},d=function(){return p()&&a("millisecond")};switch(t){case"year":return s();case"month":return l();case"day":return u();case"hour":return h();case"minute":return c();case"second":return p();case"millisecond":return d()}}(Nc(t),i[0],i[1],n)){l&&(r=[{value:Bx(new Date(i[0]),t,n)},{value:i[1]}]);for(var u=0;u<r.length-1;u++){var h=r[u].value,c=r[u+1].value;if(h!==c){var p=void 0,d=void 0,f=void 0,g=!1;switch(t){case"year":p=Math.max(1,Math.round(e/Cc/365)),d=Fc(n),f=Zc(n);break;case"half-year":case"quarter":case"month":p=Nx(e),d=Gc(n),f=jc(n);break;case"week":case"half-week":case"day":p=Rx(e),d=Wc(n),f=qc(n),g=!0;break;case"half-day":case"quarter-day":case"hour":p=Ex(e),d=Hc(n),f=Kc(n);break;case"minute":p=zx(e,!0),d=Yc(n),f=$c(n);break;case"second":p=zx(e,!1),d=Uc(n),f=Jc(n);break;case"millisecond":p=Vx(e),d=Xc(n),f=Qc(n)}s(p,h,c,d,f,g,a),"year"===t&&o.length>1&&0===u&&o.unshift({value:o[0].value-p})}}for(u=0;u<a.length;u++)o.push(a[u]);return a}}for(var u=[],h=[],c=0,p=0,d=0;d<o.length&&a++<r;++d){var f=Nc(o[d]);if(Ec(o[d]))if(l(o[d],u[u.length-1]||[],h),f!==(o[d+1]?Nc(o[d+1]):null)){if(h.length){p=c,h.sort((function(t,e){return t.value-e.value}));for(var g=[],y=0;y<h.length;++y){var v=h[y].value;0!==y&&h[y-1].value===v||(g.push(h[y]),v>=i[0]&&v<=i[1]&&c++)}var m=(i[1]-i[0])/e;if(c>1.5*m&&p>m/1.5)break;if(u.push(g),c>m||t===o[d])break}h=[]}}0;var x=B(z(u,(function(t){return B(t,(function(t){return t.value>=i[0]&&t.value<=i[1]&&!t.notAdd}))})),(function(t){return t.length>0})),_=[],b=x.length-1;for(d=0;d<x.length;++d)for(var w=x[d],S=0;S<w.length;++S)_.push({value:w[S].value,level:b-d});_.sort((function(t,e){return t.value-e.value}));var M=[];for(d=0;d<_.length;++d)0!==d&&_[d].value===_[d-1].value||M.push(_[d]);return M}(this._minLevelUnit,this._approxInterval,i,e);return(n=n.concat(r)).push({value:e[1],level:0}),n},e.prototype.calcNiceExtent=function(t){var e=this._extent;if(e[0]===e[1]&&(e[0]-=Cc,e[1]+=Cc),e[1]===-1/0&&e[0]===1/0){var n=new Date;e[1]=+new Date(n.getFullYear(),n.getMonth(),n.getDate()),e[0]=e[1]-Cc}this.calcNiceTicks(t.splitNumber,t.minInterval,t.maxInterval)},e.prototype.calcNiceTicks=function(t,e,n){t=t||10;var i=this._extent,r=i[1]-i[0];this._approxInterval=r/t,null!=e&&this._approxInterval<e&&(this._approxInterval=e),null!=n&&this._approxInterval>n&&(this._approxInterval=n);var o=Ox.length,a=Math.min(function(t,e,n,i){for(;n<i;){var r=n+i>>>1;t[r][1]<e?n=r+1:i=r}return n}(Ox,this._approxInterval,0,o),o-1);this._interval=Ox[a][1],this._minLevelUnit=Ox[Math.max(a-1,0)][0]},e.prototype.parse=function(t){return j(t)?t:+jr(t)},e.prototype.contain=function(t){return px(this.parse(t),this._extent)},e.prototype.normalize=function(t){return dx(this.parse(t),this._extent)},e.prototype.scale=function(t){return fx(t,this._extent)},e.type="time",e}(vx),Ox=[["second",Mc],["minute",Ic],["hour",Tc],["quarter-day",216e5],["half-day",432e5],["day",10368e4],["half-week",3024e5],["week",6048e5],["month",26784e5],["quarter",8208e6],["half-year",Dc/2],["year",Dc]];function Rx(t,e){return(t/=Cc)>16?16:t>7.5?7:t>3.5?4:t>1.5?2:1}function Nx(t){return(t/=2592e6)>6?6:t>3?3:t>2?2:1}function Ex(t){return(t/=Tc)>12?12:t>6?6:t>3.5?4:t>2?2:1}function zx(t,e){return(t/=e?Ic:Mc)>30?30:t>20?20:t>15?15:t>10?10:t>5?5:t>2?2:1}function Vx(t){return $r(t,!0)}function Bx(t,e,n){var i=new Date(t);switch(Nc(e)){case"year":case"month":i[jc(n)](0);case"day":i[qc(n)](1);case"hour":i[Kc(n)](0);case"minute":i[$c(n)](0);case"second":i[Jc(n)](0),i[Qc(n)](0)}return i.getTime()}ix.registerClass(Px);var Fx=ix.prototype,Gx=vx.prototype,Wx=zr,Hx=Math.floor,Yx=Math.ceil,Ux=Math.pow,Xx=Math.log,Zx=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.type="log",e.base=10,e._originalScale=new vx,e._interval=0,e}return n(e,t),e.prototype.getTicks=function(t){var e=this._originalScale,n=this._extent,i=e.getExtent();return z(Gx.getTicks.call(this,t),(function(t){var e=t.value,r=zr(Ux(this.base,e));return r=e===n[0]&&this._fixMin?qx(r,i[0]):r,{value:r=e===n[1]&&this._fixMax?qx(r,i[1]):r}}),this)},e.prototype.setExtent=function(t,e){var n=this.base;t=Xx(t)/Xx(n),e=Xx(e)/Xx(n),Gx.setExtent.call(this,t,e)},e.prototype.getExtent=function(){var t=this.base,e=Fx.getExtent.call(this);e[0]=Ux(t,e[0]),e[1]=Ux(t,e[1]);var n=this._originalScale.getExtent();return this._fixMin&&(e[0]=qx(e[0],n[0])),this._fixMax&&(e[1]=qx(e[1],n[1])),e},e.prototype.unionExtent=function(t){this._originalScale.unionExtent(t);var e=this.base;t[0]=Xx(t[0])/Xx(e),t[1]=Xx(t[1])/Xx(e),Fx.unionExtent.call(this,t)},e.prototype.unionExtentFromData=function(t,e){this.unionExtent(t.getApproximateExtent(e))},e.prototype.calcNiceTicks=function(t){t=t||10;var e=this._extent,n=e[1]-e[0];if(!(n===1/0||n<=0)){var i=qr(n);for(t/n*i<=.5&&(i*=10);!isNaN(i)&&Math.abs(i)<1&&Math.abs(i)>0;)i*=10;var r=[zr(Yx(e[0]/i)*i),zr(Hx(e[1]/i)*i)];this._interval=i,this._niceExtent=r}},e.prototype.calcNiceExtent=function(t){Gx.calcNiceExtent.call(this,t),this._fixMin=t.fixMin,this._fixMax=t.fixMax},e.prototype.parse=function(t){return t},e.prototype.contain=function(t){return px(t=Xx(t)/Xx(this.base),this._extent)},e.prototype.normalize=function(t){return dx(t=Xx(t)/Xx(this.base),this._extent)},e.prototype.scale=function(t){return t=fx(t,this._extent),Ux(this.base,t)},e.type="log",e}(ix),jx=Zx.prototype;function qx(t,e){return Wx(t,Br(e))}jx.getMinorTicks=Gx.getMinorTicks,jx.getLabel=Gx.getLabel,ix.registerClass(Zx);var Kx=function(){function t(t,e,n){this._prepareParams(t,e,n)}return t.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="ordinal"===t.type;this._needCrossZero="interval"===t.type&&e.getNeedCrossZero&&e.getNeedCrossZero();var r=this._modelMinRaw=e.get("min",!0);U(r)?this._modelMinNum=t_(t,r({min:n[0],max:n[1]})):"dataMin"!==r&&(this._modelMinNum=t_(t,r));var o=this._modelMaxRaw=e.get("max",!0);if(U(o)?this._modelMaxNum=t_(t,o({min:n[0],max:n[1]})):"dataMax"!==o&&(this._modelMaxNum=t_(t,o)),i)this._axisDataLen=e.getCategories().length;else{var a=e.get("boundaryGap"),s=Y(a)?a:[a||0,a||0];"boolean"==typeof s[0]||"boolean"==typeof s[1]?this._boundaryGapInner=[0,0]:this._boundaryGapInner=[gr(s[0],1),gr(s[1],1)]}},t.prototype.calculate=function(){var t=this._isOrdinal,e=this._dataMin,n=this._dataMax,i=this._axisDataLen,r=this._boundaryGapInner,o=t?null:n-e||Math.abs(e),a="dataMin"===this._modelMinRaw?e:this._modelMinNum,s="dataMax"===this._modelMaxRaw?n:this._modelMaxNum,l=null!=a,u=null!=s;null==a&&(a=t?i?0:NaN:e-r[0]*o),null==s&&(s=t?i?i-1:NaN:n+r[1]*o),(null==a||!isFinite(a))&&(a=NaN),(null==s||!isFinite(s))&&(s=NaN);var h=nt(a)||nt(s)||t&&!i;this._needCrossZero&&(a>0&&s>0&&!l&&(a=0),a<0&&s<0&&!u&&(s=0));var c=this._determinedMin,p=this._determinedMax;return null!=c&&(a=c,l=!0),null!=p&&(s=p,u=!0),{min:a,max:s,minFixed:l,maxFixed:u,isBlank:h}},t.prototype.modifyDataMinMax=function(t,e){this[Jx[t]]=e},t.prototype.setDeterminedMinMax=function(t,e){var n=$x[t];this[n]=e},t.prototype.freeze=function(){this.frozen=!0},t}(),$x={min:"_determinedMin",max:"_determinedMax"},Jx={min:"_dataMin",max:"_dataMax"};function Qx(t,e,n){var i=t.rawExtentInfo;return i||(i=new Kx(t,e,n),t.rawExtentInfo=i,i)}function t_(t,e){return null==e?null:nt(e)?NaN:t.parse(e)}function e_(t,e){var n=t.type,i=Qx(t,e,t.getExtent()).calculate();t.setBlank(i.isBlank);var r=i.min,o=i.max,a=e.ecModel;if(a&&"time"===n){var s=Ix("bar",a),l=!1;if(E(s,(function(t){l=l||t.getBaseAxis()===e.axis})),l){var u=Tx(s),h=function(t,e,n,i){var r=n.axis.getExtent(),o=r[1]-r[0],a=function(t,e,n){if(t&&e){var i=t[Mx(e)];return null!=i&&null!=n?i[Sx(n)]:i}}(i,n.axis);if(void 0===a)return{min:t,max:e};var s=1/0;E(a,(function(t){s=Math.min(t.offset,s)}));var l=-1/0;E(a,(function(t){l=Math.max(t.offset+t.width,l)})),s=Math.abs(s),l=Math.abs(l);var u=s+l,h=e-t,c=h/(1-(s+l)/o)-h;return{min:t-=c*(s/u),max:e+=c*(l/u)}}(r,o,e,u);r=h.min,o=h.max}}return{extent:[r,o],fixMin:i.minFixed,fixMax:i.maxFixed}}function n_(t,e){var n=e,i=e_(t,n),r=i.extent,o=n.get("splitNumber");t instanceof Zx&&(t.base=n.get("logBase"));var a=t.type,s=n.get("interval"),l="interval"===a||"time"===a;t.setExtent(r[0],r[1]),t.calcNiceExtent({splitNumber:o,fixMin:i.fixMin,fixMax:i.fixMax,minInterval:l?n.get("minInterval"):null,maxInterval:l?n.get("maxInterval"):null}),null!=s&&t.setInterval&&t.setInterval(s)}function i_(t,e){if(e=e||t.get("type"))switch(e){case"category":return new gx({ordinalMeta:t.getOrdinalMeta?t.getOrdinalMeta():t.getCategories(),extent:[1/0,-1/0]});case"time":return new Px({locale:t.ecModel.getLocaleModel(),useUTC:t.ecModel.get("useUTC")});default:return new(ix.getClass(e)||vx)}}function r_(t){var e,n,i=t.getLabelModel().get("formatter"),r="category"===t.type?t.scale.getExtent()[0]:null;return"time"===t.scale.type?(n=i,function(e,i){return t.scale.getFormattedLabel(e,i,n)}):X(i)?function(e){return function(n){var i=t.scale.getLabel(n);return e.replace("{value}",null!=i?i:"")}}(i):U(i)?(e=i,function(n,i){return null!=r&&(i=n.value-r),e(o_(t,n),i,null!=n.level?{level:n.level}:null)}):function(e){return t.scale.getLabel(e)}}function o_(t,e){return"category"===t.type?t.scale.getLabel(e):e.value}function a_(t,e){var n=e*Math.PI/180,i=t.width,r=t.height,o=i*Math.abs(Math.cos(n))+Math.abs(r*Math.sin(n)),a=i*Math.abs(Math.sin(n))+Math.abs(r*Math.cos(n));return new sr(t.x,t.y,o,a)}function s_(t){var e=t.get("interval");return null==e?"auto":e}function l_(t){return"category"===t.type&&0===s_(t.getLabelModel())}function u_(t,e){var n={};return E(t.mapDimensionsAll(e),(function(e){n[ex(t,e)]=!0})),G(n)}var h_=function(){function t(){}return t.prototype.getNeedCrossZero=function(){return!this.option.scale},t.prototype.getCoordSysModel=function(){},t}();var c_={isDimensionStacked:tx,enableDataStack:Qm,getStackedDimension:ex};var p_=Object.freeze({__proto__:null,createList:function(t){return nx(null,t)},getLayoutRect:mp,dataStack:c_,createScale:function(t,e){var n=e;e instanceof pc||(n=new pc(e));var i=i_(n);return i.setExtent(t[0],t[1]),n_(i,n),i},mixinAxisModelCommonMethods:function(t){R(t,h_)},getECData:Ws,createTextStyle:function(t,e){return Yh(t,null,null,"normal"!==(e=e||{}).state)},createDimensions:function(t,e){return jm(t,e).dimensions},createSymbol:ky,enableHoverEmphasis:Pl});function d_(t,e){return Math.abs(t-e)<1e-8}function f_(t,e,n){var i=0,r=t[0];if(!r)return!1;for(var o=1;o<t.length;o++){var a=t[o];i+=ns(r[0],r[1],a[0],a[1],e,n),r=a}var s=t[0];return d_(r[0],s[0])&&d_(r[1],s[1])||(i+=ns(r[0],r[1],s[0],s[1],e,n)),0!==i}var g_=[];function y_(t,e){for(var n=0;n<t.length;n++)Ft(t[n],t[n],e)}function v_(t,e,n,i){for(var r=0;r<t.length;r++){var o=t[r];i&&(o=i.project(o)),o&&isFinite(o[0])&&isFinite(o[1])&&(Gt(e,e,o),Wt(n,n,o))}}var m_=function(){function t(t){this.name=t}return t.prototype.setCenter=function(t){this._center=t},t.prototype.getCenter=function(){var t=this._center;return t||(t=this._center=this.calcCenter()),t},t}(),x_=function(t,e){this.type="polygon",this.exterior=t,this.interiors=e},__=function(t){this.type="linestring",this.points=t},b_=function(t){function e(e,n,i){var r=t.call(this,e)||this;return r.type="geoJSON",r.geometries=n,r._center=i&&[i[0],i[1]],r}return n(e,t),e.prototype.calcCenter=function(){for(var t,e=this.geometries,n=0,i=0;i<e.length;i++){var r=e[i],o=r.exterior,a=o&&o.length;a>n&&(t=r,n=a)}if(t)return function(t){for(var e=0,n=0,i=0,r=t.length,o=t[r-1][0],a=t[r-1][1],s=0;s<r;s++){var l=t[s][0],u=t[s][1],h=o*u-l*a;e+=h,n+=(o+l)*h,i+=(a+u)*h,o=l,a=u}return e?[n/e/3,i/e/3,e]:[t[0][0]||0,t[0][1]||0]}(t.exterior);var s=this.getBoundingRect();return[s.x+s.width/2,s.y+s.height/2]},e.prototype.getBoundingRect=function(t){var e=this._rect;if(e&&!t)return e;var n=[1/0,1/0],i=[-1/0,-1/0];return E(this.geometries,(function(e){"polygon"===e.type?v_(e.exterior,n,i,t):E(e.points,(function(e){v_(e,n,i,t)}))})),isFinite(n[0])&&isFinite(n[1])&&isFinite(i[0])&&isFinite(i[1])||(n[0]=n[1]=i[0]=i[1]=0),e=new sr(n[0],n[1],i[0]-n[0],i[1]-n[1]),t||(this._rect=e),e},e.prototype.contain=function(t){var e=this.getBoundingRect(),n=this.geometries;if(!e.contain(t[0],t[1]))return!1;t:for(var i=0,r=n.length;i<r;i++){var o=n[i];if("polygon"===o.type){var a=o.exterior,s=o.interiors;if(f_(a,t[0],t[1])){for(var l=0;l<(s?s.length:0);l++)if(f_(s[l],t[0],t[1]))continue t;return!0}}}return!1},e.prototype.transformTo=function(t,e,n,i){var r=this.getBoundingRect(),o=r.width/r.height;n?i||(i=n/o):n=o*i;for(var a=new sr(t,e,n,i),s=r.calculateTransform(a),l=this.geometries,u=0;u<l.length;u++){var h=l[u];"polygon"===h.type?(y_(h.exterior,s),E(h.interiors,(function(t){y_(t,s)}))):E(h.points,(function(t){y_(t,s)}))}(r=this._rect).copy(a),this._center=[r.x+r.width/2,r.y+r.height/2]},e.prototype.cloneShallow=function(t){null==t&&(t=this.name);var n=new e(t,this.geometries,this._center);return n._rect=this._rect,n.transformTo=null,n},e}(m_),w_=function(t){function e(e,n){var i=t.call(this,e)||this;return i.type="geoSVG",i._elOnlyForCalculate=n,i}return n(e,t),e.prototype.calcCenter=function(){for(var t=this._elOnlyForCalculate,e=t.getBoundingRect(),n=[e.x+e.width/2,e.y+e.height/2],i=Oi(g_),r=t;r&&!r.isGeoSVGGraphicRoot;)Ni(i,r.getLocalTransform(),i),r=r.parent;return Bi(i,i),Ft(n,n,i),n},e}(m_);function S_(t,e,n){for(var i=0;i<t.length;i++)t[i]=M_(t[i],e[i],n)}function M_(t,e,n){for(var i=[],r=e[0],o=e[1],a=0;a<t.length;a+=2){var s=t.charCodeAt(a)-64,l=t.charCodeAt(a+1)-64;s=s>>1^-(1&s),l=l>>1^-(1&l),r=s+=r,o=l+=o,i.push([s/n,l/n])}return i}function I_(t,e){return z(B((t=function(t){if(!t.UTF8Encoding)return t;var e=t,n=e.UTF8Scale;return null==n&&(n=1024),E(e.features,(function(t){var e=t.geometry,i=e.encodeOffsets,r=e.coordinates;if(i)switch(e.type){case"LineString":e.coordinates=M_(r,i,n);break;case"Polygon":case"MultiLineString":S_(r,i,n);break;case"MultiPolygon":E(r,(function(t,e){return S_(t,i[e],n)}))}})),e.UTF8Encoding=!1,e}(t)).features,(function(t){return t.geometry&&t.properties&&t.geometry.coordinates.length>0})),(function(t){var n=t.properties,i=t.geometry,r=[];switch(i.type){case"Polygon":var o=i.coordinates;r.push(new x_(o[0],o.slice(1)));break;case"MultiPolygon":E(i.coordinates,(function(t){t[0]&&r.push(new x_(t[0],t.slice(1)))}));break;case"LineString":r.push(new __([i.coordinates]));break;case"MultiLineString":r.push(new __(i.coordinates))}var a=new b_(n[e||"name"],r,n.cp);return a.properties=n,a}))}var T_=Object.freeze({__proto__:null,linearMap:Nr,round:zr,asc:Vr,getPrecision:Br,getPrecisionSafe:Fr,getPixelPrecision:Gr,getPercentWithPrecision:Wr,MAX_SAFE_INTEGER:Yr,remRadian:Ur,isRadianAroundZero:Xr,parseDate:jr,quantity:qr,quantityExponent:Kr,nice:$r,quantile:Jr,reformIntervals:Qr,isNumeric:eo,numericToNumber:to}),C_=Object.freeze({__proto__:null,parse:jr,format:zc}),D_=Object.freeze({__proto__:null,extendShape:dh,extendPath:gh,makePath:mh,makeImage:xh,mergePath:bh,resizePath:wh,createIcon:Lh,updateProps:ih,initProps:rh,getTransform:Mh,clipPointsByRect:Ah,clipRectByRect:kh,registerShape:yh,getShapeClass:vh,Group:Cr,Image:xs,Text:As,Circle:uu,Ellipse:cu,Sector:Tu,Ring:Du,Polygon:Lu,Polyline:Ou,Rect:Ts,Line:Eu,BezierCurve:Fu,Arc:Wu,IncrementalDisplayable:Qu,CompoundPath:Hu,LinearGradient:Uu,RadialGradient:Xu,BoundingRect:sr}),A_=Object.freeze({__proto__:null,addCommas:tp,toCamelCase:ep,normalizeCssArray:np,encodeHTML:op,formatTpl:up,getTooltipMarker:hp,formatTime:function(t,e,n){"week"!==t&&"month"!==t&&"quarter"!==t&&"half-year"!==t&&"year"!==t||(t="MM-dd\nyyyy");var i=jr(e),r=n?"getUTC":"get",o=i[r+"FullYear"](),a=i[r+"Month"]()+1,s=i[r+"Date"](),l=i[r+"Hours"](),u=i[r+"Minutes"](),h=i[r+"Seconds"](),c=i[r+"Milliseconds"]();return t=t.replace("MM",Rc(a,2)).replace("M",a).replace("yyyy",o).replace("yy",o%100+"").replace("dd",Rc(s,2)).replace("d",s).replace("hh",Rc(l,2)).replace("h",l).replace("mm",Rc(u,2)).replace("m",u).replace("ss",Rc(h,2)).replace("s",h).replace("SSS",Rc(c,3))},capitalFirst:function(t){return t?t.charAt(0).toUpperCase()+t.substr(1):t},truncateText:$o,getTextRect:function(t,e,n,i,r,o,a,s){return new As({style:{text:t,font:e,align:n,verticalAlign:i,padding:r,rich:o,overflow:a?"truncate":null,lineHeight:s}}).getBoundingRect()}}),k_=Object.freeze({__proto__:null,map:z,each:E,indexOf:P,inherits:O,reduce:V,filter:B,bind:W,curry:H,isArray:Y,isString:X,isObject:q,isFunction:U,extend:A,defaults:k,clone:T,merge:C}),L_=So();function P_(t){return"category"===t.type?function(t){var e=t.getLabelModel(),n=R_(t,e);return!e.get("show")||t.scale.isBlank()?{labels:[],labelCategoryInterval:n.labelCategoryInterval}:n}(t):function(t){var e=t.scale.getTicks(),n=r_(t);return{labels:z(e,(function(e,i){return{level:e.level,formattedLabel:n(e,i),rawLabel:t.scale.getLabel(e),tickValue:e.value}}))}}(t)}function O_(t,e){return"category"===t.type?function(t,e){var n,i,r=N_(t,"ticks"),o=s_(e),a=E_(r,o);if(a)return a;e.get("show")&&!t.scale.isBlank()||(n=[]);if(U(o))n=B_(t,o,!0);else if("auto"===o){var s=R_(t,t.getLabelModel());i=s.labelCategoryInterval,n=z(s.labels,(function(t){return t.tickValue}))}else n=V_(t,i=o,!0);return z_(r,o,{ticks:n,tickCategoryInterval:i})}(t,e):{ticks:z(t.scale.getTicks(),(function(t){return t.value}))}}function R_(t,e){var n,i,r=N_(t,"labels"),o=s_(e),a=E_(r,o);return a||(U(o)?n=B_(t,o):(i="auto"===o?function(t){var e=L_(t).autoInterval;return null!=e?e:L_(t).autoInterval=t.calculateCategoryInterval()}(t):o,n=V_(t,i)),z_(r,o,{labels:n,labelCategoryInterval:i}))}function N_(t,e){return L_(t)[e]||(L_(t)[e]=[])}function E_(t,e){for(var n=0;n<t.length;n++)if(t[n].key===e)return t[n].value}function z_(t,e,n){return t.push({key:e,value:n}),n}function V_(t,e,n){var i=r_(t),r=t.scale,o=r.getExtent(),a=t.getLabelModel(),s=[],l=Math.max((e||0)+1,1),u=o[0],h=r.count();0!==u&&l>1&&h/l>2&&(u=Math.round(Math.ceil(u/l)*l));var c=l_(t),p=a.get("showMinLabel")||c,d=a.get("showMaxLabel")||c;p&&u!==o[0]&&g(o[0]);for(var f=u;f<=o[1];f+=l)g(f);function g(t){var e={value:t};s.push(n?t:{formattedLabel:i(e),rawLabel:r.getLabel(e),tickValue:t})}return d&&f-l!==o[1]&&g(o[1]),s}function B_(t,e,n){var i=t.scale,r=r_(t),o=[];return E(i.getTicks(),(function(t){var a=i.getLabel(t),s=t.value;e(t.value,a)&&o.push(n?s:{formattedLabel:r(t),rawLabel:a,tickValue:s})})),o}var F_=[0,1],G_=function(){function t(t,e,n){this.onBand=!1,this.inverse=!1,this.dim=t,this.scale=e,this._extent=n||[0,0]}return t.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},t.prototype.containData=function(t){return this.scale.contain(t)},t.prototype.getExtent=function(){return this._extent.slice()},t.prototype.getPixelPrecision=function(t){return Gr(t||this.scale.getExtent(),this._extent)},t.prototype.setExtent=function(t,e){var n=this._extent;n[0]=t,n[1]=e},t.prototype.dataToCoord=function(t,e){var n=this._extent,i=this.scale;return t=i.normalize(t),this.onBand&&"ordinal"===i.type&&W_(n=n.slice(),i.count()),Nr(t,F_,n,e)},t.prototype.coordToData=function(t,e){var n=this._extent,i=this.scale;this.onBand&&"ordinal"===i.type&&W_(n=n.slice(),i.count());var r=Nr(t,n,F_,e);return this.scale.scale(r)},t.prototype.pointToData=function(t,e){},t.prototype.getTicksCoords=function(t){var e=(t=t||{}).tickModel||this.getTickModel(),n=z(O_(this,e).ticks,(function(t){return{coord:this.dataToCoord("ordinal"===this.scale.type?this.scale.getRawOrdinalNumber(t):t),tickValue:t}}),this);return function(t,e,n,i){var r=e.length;if(!t.onBand||n||!r)return;var o,a,s=t.getExtent();if(1===r)e[0].coord=s[0],o=e[1]={coord:s[0]};else{var l=e[r-1].tickValue-e[0].tickValue,u=(e[r-1].coord-e[0].coord)/l;E(e,(function(t){t.coord-=u/2})),a=1+t.scale.getExtent()[1]-e[r-1].tickValue,o={coord:e[r-1].coord+u*a},e.push(o)}var h=s[0]>s[1];c(e[0].coord,s[0])&&(i?e[0].coord=s[0]:e.shift());i&&c(s[0],e[0].coord)&&e.unshift({coord:s[0]});c(s[1],o.coord)&&(i?o.coord=s[1]:e.pop());i&&c(o.coord,s[1])&&e.push({coord:s[1]});function c(t,e){return t=zr(t),e=zr(e),h?t>e:t<e}}(this,n,e.get("alignWithLabel"),t.clamp),n},t.prototype.getMinorTicksCoords=function(){if("ordinal"===this.scale.type)return[];var t=this.model.getModel("minorTick").get("splitNumber");return t>0&&t<100||(t=5),z(this.scale.getMinorTicks(t),(function(t){return z(t,(function(t){return{coord:this.dataToCoord(t),tickValue:t}}),this)}),this)},t.prototype.getViewLabels=function(){return P_(this).labels},t.prototype.getLabelModel=function(){return this.model.getModel("axisLabel")},t.prototype.getTickModel=function(){return this.model.getModel("axisTick")},t.prototype.getBandWidth=function(){var t=this._extent,e=this.scale.getExtent(),n=e[1]-e[0]+(this.onBand?1:0);0===n&&(n=1);var i=Math.abs(t[1]-t[0]);return Math.abs(i)/n},t.prototype.calculateCategoryInterval=function(){return function(t){var e=function(t){var e=t.getLabelModel();return{axisRotate:t.getRotate?t.getRotate():t.isHorizontal&&!t.isHorizontal()?90:0,labelRotate:e.get("rotate")||0,font:e.getFont()}}(t),n=r_(t),i=(e.axisRotate-e.labelRotate)/180*Math.PI,r=t.scale,o=r.getExtent(),a=r.count();if(o[1]-o[0]<1)return 0;var s=1;a>40&&(s=Math.max(1,Math.floor(a/40)));for(var l=o[0],u=t.dataToCoord(l+1)-t.dataToCoord(l),h=Math.abs(u*Math.cos(i)),c=Math.abs(u*Math.sin(i)),p=0,d=0;l<=o[1];l+=s){var f,g,y=cr(n({value:l}),e.font,"center","top");f=1.3*y.width,g=1.3*y.height,p=Math.max(p,f,7),d=Math.max(d,g,7)}var v=p/h,m=d/c;isNaN(v)&&(v=1/0),isNaN(m)&&(m=1/0);var x=Math.max(0,Math.floor(Math.min(v,m))),_=L_(t.model),b=t.getExtent(),w=_.lastAutoInterval,S=_.lastTickCount;return null!=w&&null!=S&&Math.abs(w-x)<=1&&Math.abs(S-a)<=1&&w>x&&_.axisExtent0===b[0]&&_.axisExtent1===b[1]?x=w:(_.lastTickCount=a,_.lastAutoInterval=x,_.axisExtent0=b[0],_.axisExtent1=b[1]),x}(this)},t}();function W_(t,e){var n=(t[1]-t[0])/e/2;t[0]+=n,t[1]-=n}var H_=2*Math.PI,Y_=ja.CMD,U_=["top","right","bottom","left"];function X_(t,e,n,i,r){var o=n.width,a=n.height;switch(t){case"top":i.set(n.x+o/2,n.y-e),r.set(0,-1);break;case"bottom":i.set(n.x+o/2,n.y+a+e),r.set(0,1);break;case"left":i.set(n.x-e,n.y+a/2),r.set(-1,0);break;case"right":i.set(n.x+o+e,n.y+a/2),r.set(1,0)}}function Z_(t,e,n,i,r,o,a,s,l){a-=t,s-=e;var u=Math.sqrt(a*a+s*s),h=(a/=u)*n+t,c=(s/=u)*n+e;if(Math.abs(i-r)%H_<1e-4)return l[0]=h,l[1]=c,u-n;if(o){var p=i;i=Qa(r),r=Qa(p)}else i=Qa(i),r=Qa(r);i>r&&(r+=H_);var d=Math.atan2(s,a);if(d<0&&(d+=H_),d>=i&&d<=r||d+H_>=i&&d+H_<=r)return l[0]=h,l[1]=c,u-n;var f=n*Math.cos(i)+t,g=n*Math.sin(i)+e,y=n*Math.cos(r)+t,v=n*Math.sin(r)+e,m=(f-a)*(f-a)+(g-s)*(g-s),x=(y-a)*(y-a)+(v-s)*(v-s);return m<x?(l[0]=f,l[1]=g,Math.sqrt(m)):(l[0]=y,l[1]=v,Math.sqrt(x))}function j_(t,e,n,i,r,o,a,s){var l=r-t,u=o-e,h=n-t,c=i-e,p=Math.sqrt(h*h+c*c),d=(l*(h/=p)+u*(c/=p))/p;s&&(d=Math.min(Math.max(d,0),1)),d*=p;var f=a[0]=t+d*h,g=a[1]=e+d*c;return Math.sqrt((f-r)*(f-r)+(g-o)*(g-o))}function q_(t,e,n,i,r,o,a){n<0&&(t+=n,n=-n),i<0&&(e+=i,i=-i);var s=t+n,l=e+i,u=a[0]=Math.min(Math.max(r,t),s),h=a[1]=Math.min(Math.max(o,e),l);return Math.sqrt((u-r)*(u-r)+(h-o)*(h-o))}var K_=[];function $_(t,e,n){var i=q_(e.x,e.y,e.width,e.height,t.x,t.y,K_);return n.set(K_[0],K_[1]),i}function J_(t,e,n){for(var i,r,o=0,a=0,s=0,l=0,u=1/0,h=e.data,c=t.x,p=t.y,d=0;d<h.length;){var f=h[d++];1===d&&(s=o=h[d],l=a=h[d+1]);var g=u;switch(f){case Y_.M:o=s=h[d++],a=l=h[d++];break;case Y_.L:g=j_(o,a,h[d],h[d+1],c,p,K_,!0),o=h[d++],a=h[d++];break;case Y_.C:g=je(o,a,h[d++],h[d++],h[d++],h[d++],h[d],h[d+1],c,p,K_),o=h[d++],a=h[d++];break;case Y_.Q:g=tn(o,a,h[d++],h[d++],h[d],h[d+1],c,p,K_),o=h[d++],a=h[d++];break;case Y_.A:var y=h[d++],v=h[d++],m=h[d++],x=h[d++],_=h[d++],b=h[d++];d+=1;var w=!!(1-h[d++]);i=Math.cos(_)*m+y,r=Math.sin(_)*x+v,d<=1&&(s=i,l=r),g=Z_(y,v,x,_,_+b,w,(c-y)*x/m+y,p,K_),o=Math.cos(_+b)*m+y,a=Math.sin(_+b)*x+v;break;case Y_.R:g=q_(s=o=h[d++],l=a=h[d++],h[d++],h[d++],c,p,K_);break;case Y_.Z:g=j_(o,a,s,l,c,p,K_,!0),o=s,a=l}g<u&&(u=g,n.set(K_[0],K_[1]))}return u}var Q_=new Ji,tb=new Ji,eb=new Ji,nb=new Ji,ib=new Ji;function rb(t,e){if(t){var n=t.getTextGuideLine(),i=t.getTextContent();if(i&&n){var r=t.textGuideLineConfig||{},o=[[0,0],[0,0],[0,0]],a=r.candidates||U_,s=i.getBoundingRect().clone();s.applyTransform(i.getComputedTransform());var l=1/0,u=r.anchor,h=t.getComputedTransform(),c=h&&Bi([],h),p=e.get("length2")||0;u&&eb.copy(u);for(var d=0;d<a.length;d++){X_(a[d],0,s,Q_,nb),Ji.scaleAndAdd(tb,Q_,nb,p),tb.transform(c);var f=t.getBoundingRect(),g=u?u.distance(tb):t instanceof fs?J_(tb,t.path,eb):$_(tb,f,eb);g<l&&(l=g,tb.transform(h),eb.transform(h),eb.toArray(o[0]),tb.toArray(o[1]),Q_.toArray(o[2]))}sb(o,e.get("minTurnAngle")),n.setShape({points:o})}}}var ob=[],ab=new Ji;function sb(t,e){if(e<=180&&e>0){e=e/180*Math.PI,Q_.fromArray(t[0]),tb.fromArray(t[1]),eb.fromArray(t[2]),Ji.sub(nb,Q_,tb),Ji.sub(ib,eb,tb);var n=nb.len(),i=ib.len();if(!(n<.001||i<.001)){nb.scale(1/n),ib.scale(1/i);var r=nb.dot(ib);if(Math.cos(e)<r){var o=j_(tb.x,tb.y,eb.x,eb.y,Q_.x,Q_.y,ob,!1);ab.fromArray(ob),ab.scaleAndAdd(ib,o/Math.tan(Math.PI-e));var a=eb.x!==tb.x?(ab.x-tb.x)/(eb.x-tb.x):(ab.y-tb.y)/(eb.y-tb.y);if(isNaN(a))return;a<0?Ji.copy(ab,tb):a>1&&Ji.copy(ab,eb),ab.toArray(t[1])}}}}function lb(t,e,n){if(n<=180&&n>0){n=n/180*Math.PI,Q_.fromArray(t[0]),tb.fromArray(t[1]),eb.fromArray(t[2]),Ji.sub(nb,tb,Q_),Ji.sub(ib,eb,tb);var i=nb.len(),r=ib.len();if(!(i<.001||r<.001))if(nb.scale(1/i),ib.scale(1/r),nb.dot(e)<Math.cos(n)){var o=j_(tb.x,tb.y,eb.x,eb.y,Q_.x,Q_.y,ob,!1);ab.fromArray(ob);var a=Math.PI/2,s=a+Math.acos(ib.dot(e))-n;if(s>=a)Ji.copy(ab,eb);else{ab.scaleAndAdd(ib,o/Math.tan(Math.PI/2-s));var l=eb.x!==tb.x?(ab.x-tb.x)/(eb.x-tb.x):(ab.y-tb.y)/(eb.y-tb.y);if(isNaN(l))return;l<0?Ji.copy(ab,tb):l>1&&Ji.copy(ab,eb)}ab.toArray(t[1])}}}function ub(t,e,n,i){var r="normal"===n,o=r?t:t.ensureState(n);o.ignore=e;var a=i.get("smooth");a&&!0===a&&(a=.3),o.shape=o.shape||{},a>0&&(o.shape.smooth=a);var s=i.getModel("lineStyle").getLineStyle();r?t.useStyle(s):o.style=s}function hb(t,e){var n=e.smooth,i=e.points;if(i)if(t.moveTo(i[0][0],i[0][1]),n>0&&i.length>=3){var r=Et(i[0],i[1]),o=Et(i[1],i[2]);if(!r||!o)return t.lineTo(i[1][0],i[1][1]),void t.lineTo(i[2][0],i[2][1]);var a=Math.min(r,o)*n,s=Bt([],i[1],i[0],a/r),l=Bt([],i[1],i[2],a/o),u=Bt([],s,l,.5);t.bezierCurveTo(s[0],s[1],s[0],s[1],u[0],u[1]),t.bezierCurveTo(l[0],l[1],l[0],l[1],i[2][0],i[2][1])}else for(var h=1;h<i.length;h++)t.lineTo(i[h][0],i[h][1])}function cb(t,e,n){var i=t.getTextGuideLine(),r=t.getTextContent();if(r){for(var o=e.normal,a=o.get("show"),s=r.ignore,l=0;l<qs.length;l++){var u=qs[l],h=e[u],c="normal"===u;if(h){var p=h.get("show");if((c?s:rt(r.states[u]&&r.states[u].ignore,s))||!rt(p,a)){var d=c?i:i&&i.states.normal;d&&(d.ignore=!0);continue}i||(i=new Ou,t.setTextGuideLine(i),c||!s&&a||ub(i,!0,"normal",e.normal),t.stateProxy&&(i.stateProxy=t.stateProxy)),ub(i,!1,u,h)}}if(i){k(i.style,n),i.style.fill=null;var f=o.get("showAbove");(t.textGuideLineConfig=t.textGuideLineConfig||{}).showAbove=f||!1,i.buildPath=hb}}else i&&t.removeTextGuideLine()}function pb(t,e){e=e||"labelLine";for(var n={normal:t.getModel(e)},i=0;i<js.length;i++){var r=js[i];n[r]=t.getModel([r,e])}return n}function db(t){for(var e=[],n=0;n<t.length;n++){var i=t[n];if(!i.defaultAttr.ignore){var r=i.label,o=r.getComputedTransform(),a=r.getBoundingRect(),s=!o||o[1]<1e-5&&o[2]<1e-5,l=r.style.margin||0,u=a.clone();u.applyTransform(o),u.x-=l/2,u.y-=l/2,u.width+=l,u.height+=l;var h=s?new $u(a,o):null;e.push({label:r,labelLine:i.labelLine,rect:u,localRect:a,obb:h,priority:i.priority,defaultAttr:i.defaultAttr,layoutOption:i.computedLayoutOption,axisAligned:s,transform:o})}}return e}function fb(t,e,n,i,r,o){var a=t.length;if(!(a<2)){t.sort((function(t,n){return t.rect[e]-n.rect[e]}));for(var s,l=0,u=!1,h=0,c=0;c<a;c++){var p=t[c],d=p.rect;(s=d[e]-l)<0&&(d[e]-=s,p.label[e]-=s,u=!0),h+=Math.max(-s,0),l=d[e]+d[n]}h>0&&o&&_(-h/a,0,a);var f,g,y=t[0],v=t[a-1];return m(),f<0&&b(-f,.8),g<0&&b(g,.8),m(),x(f,g,1),x(g,f,-1),m(),f<0&&w(-f),g<0&&w(g),u}function m(){f=y.rect[e]-i,g=r-v.rect[e]-v.rect[n]}function x(t,e,n){if(t<0){var i=Math.min(e,-t);if(i>0){_(i*n,0,a);var r=i+t;r<0&&b(-r*n,1)}else b(-t*n,1)}}function _(n,i,r){0!==n&&(u=!0);for(var o=i;o<r;o++){var a=t[o];a.rect[e]+=n,a.label[e]+=n}}function b(i,r){for(var o=[],s=0,l=1;l<a;l++){var u=t[l-1].rect,h=Math.max(t[l].rect[e]-u[e]-u[n],0);o.push(h),s+=h}if(s){var c=Math.min(Math.abs(i)/s,r);if(i>0)for(l=0;l<a-1;l++){_(o[l]*c,0,l+1)}else for(l=a-1;l>0;l--){_(-(o[l-1]*c),l,a)}}}function w(t){var e=t<0?-1:1;t=Math.abs(t);for(var n=Math.ceil(t/(a-1)),i=0;i<a-1;i++)if(e>0?_(n,0,i+1):_(-n,a-i-1,a),(t-=n)<=0)return}}function gb(t,e,n,i){return fb(t,"y","height",e,n,i)}function yb(t){var e=[];t.sort((function(t,e){return e.priority-t.priority}));var n=new sr(0,0,0,0);function i(t){if(!t.ignore){var e=t.ensureState("emphasis");null==e.ignore&&(e.ignore=!1)}t.ignore=!0}for(var r=0;r<t.length;r++){var o=t[r],a=o.axisAligned,s=o.localRect,l=o.transform,u=o.label,h=o.labelLine;n.copy(o.rect),n.width-=.1,n.height-=.1,n.x+=.05,n.y+=.05;for(var c=o.obb,p=!1,d=0;d<e.length;d++){var f=e[d];if(n.intersect(f.rect)){if(a&&f.axisAligned){p=!0;break}if(f.obb||(f.obb=new $u(f.localRect,f.transform)),c||(c=new $u(s,l)),c.intersect(f.obb)){p=!0;break}}}p?(i(u),h&&i(h)):(u.attr("ignore",o.defaultAttr.ignore),h&&h.attr("ignore",o.defaultAttr.labelGuideIgnore),e.push(o))}}function vb(t){if(t){for(var e=[],n=0;n<t.length;n++)e.push(t[n].slice());return e}}function mb(t,e){var n=t.label,i=e&&e.getTextGuideLine();return{dataIndex:t.dataIndex,dataType:t.dataType,seriesIndex:t.seriesModel.seriesIndex,text:t.label.style.text,rect:t.hostRect,labelRect:t.rect,align:n.style.align,verticalAlign:n.style.verticalAlign,labelLinePoints:vb(i&&i.shape.points)}}var xb=["align","verticalAlign","width","height","fontSize"],_b=new qi,bb=So(),wb=So();function Sb(t,e,n){for(var i=0;i<n.length;i++){var r=n[i];null!=e[r]&&(t[r]=e[r])}}var Mb=["x","y","rotation"],Ib=function(){function t(){this._labelList=[],this._chartViewList=[]}return t.prototype.clearLabels=function(){this._labelList=[],this._chartViewList=[]},t.prototype._addLabel=function(t,e,n,i,r){var o=i.style,a=i.__hostTarget.textConfig||{},s=i.getComputedTransform(),l=i.getBoundingRect().plain();sr.applyTransform(l,l,s),s?_b.setLocalTransform(s):(_b.x=_b.y=_b.rotation=_b.originX=_b.originY=0,_b.scaleX=_b.scaleY=1);var u,h=i.__hostTarget;if(h){u=h.getBoundingRect().plain();var c=h.getComputedTransform();sr.applyTransform(u,u,c)}var p=u&&h.getTextGuideLine();this._labelList.push({label:i,labelLine:p,seriesModel:n,dataIndex:t,dataType:e,layoutOption:r,computedLayoutOption:null,rect:l,hostRect:u,priority:u?u.width*u.height:0,defaultAttr:{ignore:i.ignore,labelGuideIgnore:p&&p.ignore,x:_b.x,y:_b.y,scaleX:_b.scaleX,scaleY:_b.scaleY,rotation:_b.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:a.position,attachedRot:a.rotation}})},t.prototype.addLabelsOfSeries=function(t){var e=this;this._chartViewList.push(t);var n=t.__model,i=n.get("labelLayout");(U(i)||G(i).length)&&t.group.traverse((function(t){if(t.ignore)return!0;var r=t.getTextContent(),o=Ws(t);r&&!r.disableLabelLayout&&e._addLabel(o.dataIndex,o.dataType,n,r,i)}))},t.prototype.updateLayoutConfig=function(t){var e=t.getWidth(),n=t.getHeight();function i(t,e){return function(){rb(t,e)}}for(var r=0;r<this._labelList.length;r++){var o=this._labelList[r],a=o.label,s=a.__hostTarget,l=o.defaultAttr,u=void 0;u=(u=U(o.layoutOption)?o.layoutOption(mb(o,s)):o.layoutOption)||{},o.computedLayoutOption=u;var h=Math.PI/180;s&&s.setTextConfig({local:!1,position:null!=u.x||null!=u.y?null:l.attachedPos,rotation:null!=u.rotate?u.rotate*h:l.attachedRot,offset:[u.dx||0,u.dy||0]});var c=!1;if(null!=u.x?(a.x=Er(u.x,e),a.setStyle("x",0),c=!0):(a.x=l.x,a.setStyle("x",l.style.x)),null!=u.y?(a.y=Er(u.y,n),a.setStyle("y",0),c=!0):(a.y=l.y,a.setStyle("y",l.style.y)),u.labelLinePoints){var p=s.getTextGuideLine();p&&(p.setShape({points:u.labelLinePoints}),c=!1)}bb(a).needsUpdateLabelLine=c,a.rotation=null!=u.rotate?u.rotate*h:l.rotation,a.scaleX=l.scaleX,a.scaleY=l.scaleY;for(var d=0;d<xb.length;d++){var f=xb[d];a.setStyle(f,null!=u[f]?u[f]:l.style[f])}if(u.draggable){if(a.draggable=!0,a.cursor="move",s){var g=o.seriesModel;if(null!=o.dataIndex)g=o.seriesModel.getData(o.dataType).getItemModel(o.dataIndex);a.on("drag",i(s,g.getModel("labelLine")))}}else a.off("drag"),a.cursor=l.cursor}},t.prototype.layout=function(t){var e,n=t.getWidth(),i=t.getHeight(),r=db(this._labelList),o=B(r,(function(t){return"shiftX"===t.layoutOption.moveOverlap})),a=B(r,(function(t){return"shiftY"===t.layoutOption.moveOverlap}));fb(o,"x","width",0,n,e),gb(a,0,i),yb(B(r,(function(t){return t.layoutOption.hideOverlap})))},t.prototype.processLabelsOverall=function(){var t=this;E(this._chartViewList,(function(e){var n=e.__model,i=e.ignoreLabelLineUpdate,r=n.isAnimationEnabled();e.group.traverse((function(e){if(e.ignore&&!e.forceLabelAnimation)return!0;var o=!i,a=e.getTextContent();!o&&a&&(o=bb(a).needsUpdateLabelLine),o&&t._updateLabelLine(e,n),r&&t._animateLabels(e,n)}))}))},t.prototype._updateLabelLine=function(t,e){var n=t.getTextContent(),i=Ws(t),r=i.dataIndex;if(n&&null!=r){var o=e.getData(i.dataType),a=o.getItemModel(r),s={},l=o.getItemVisual(r,"style"),u=o.getVisual("drawType");s.stroke=l[u];var h=a.getModel("labelLine");cb(t,pb(a),s),rb(t,h)}},t.prototype._animateLabels=function(t,e){var n=t.getTextContent(),i=t.getTextGuideLine();if(n&&(t.forceLabelAnimation||!n.ignore&&!n.invisible&&!t.disableLabelAnimation&&!oh(t))){var r=(d=bb(n)).oldLayout,o=Ws(t),a=o.dataIndex,s={x:n.x,y:n.y,rotation:n.rotation},l=e.getData(o.dataType);if(r){n.attr(r);var u=t.prevStates;u&&(P(u,"select")>=0&&n.attr(d.oldLayoutSelect),P(u,"emphasis")>=0&&n.attr(d.oldLayoutEmphasis)),ih(n,s,e,a)}else if(n.attr(s),!$h(n).valueAnimation){var h=rt(n.style.opacity,1);n.style.opacity=0,rh(n,{style:{opacity:h}},e,a)}if(d.oldLayout=s,n.states.select){var c=d.oldLayoutSelect={};Sb(c,s,Mb),Sb(c,n.states.select,Mb)}if(n.states.emphasis){var p=d.oldLayoutEmphasis={};Sb(p,s,Mb),Sb(p,n.states.emphasis,Mb)}Qh(n,a,l,e,e)}if(i&&!i.ignore&&!i.invisible){r=(d=wb(i)).oldLayout;var d,f={points:i.shape.points};r?(i.attr({shape:r}),ih(i,{shape:f},e)):(i.setShape(f),i.style.strokePercent=0,rh(i,{style:{strokePercent:1}},e)),d.oldLayout=f}},t}(),Tb=So();var Cb=Math.sin,Db=Math.cos,Ab=Math.PI,kb=2*Math.PI,Lb=180/Ab,Pb=function(){function t(){}return t.prototype.reset=function(t){this._start=!0,this._d=[],this._str="",this._p=Math.pow(10,t||4)},t.prototype.moveTo=function(t,e){this._add("M",t,e)},t.prototype.lineTo=function(t,e){this._add("L",t,e)},t.prototype.bezierCurveTo=function(t,e,n,i,r,o){this._add("C",t,e,n,i,r,o)},t.prototype.quadraticCurveTo=function(t,e,n,i){this._add("Q",t,e,n,i)},t.prototype.arc=function(t,e,n,i,r,o){this.ellipse(t,e,n,n,0,i,r,o)},t.prototype.ellipse=function(t,e,n,i,r,o,a,s){var l=a-o,u=!s,h=Math.abs(l),c=En(h-kb)||(u?l>=kb:-l>=kb),p=l>0?l%kb:l%kb+kb,d=!1;d=!!c||!En(h)&&p>=Ab==!!u;var f=t+n*Db(o),g=e+i*Cb(o);this._start&&this._add("M",f,g);var y=Math.round(r*Lb);if(c){var v=1/this._p,m=(u?1:-1)*(kb-v);this._add("A",n,i,y,1,+u,t+n*Db(o+m),e+i*Cb(o+m)),v>.01&&this._add("A",n,i,y,0,+u,f,g)}else{var x=t+n*Db(a),_=e+i*Cb(a);this._add("A",n,i,y,+d,+u,x,_)}},t.prototype.rect=function(t,e,n,i){this._add("M",t,e),this._add("l",n,0),this._add("l",0,i),this._add("l",-n,0),this._add("Z")},t.prototype.closePath=function(){this._d.length>0&&this._add("Z")},t.prototype._add=function(t,e,n,i,r,o,a,s,l){for(var u=[],h=this._p,c=1;c<arguments.length;c++){var p=arguments[c];if(isNaN(p))return void(this._invalid=!0);u.push(Math.round(p*h)/h)}this._d.push(t+u.join(" ")),this._start="Z"===t},t.prototype.generateStr=function(){this._str=this._invalid?"":this._d.join(""),this._d=[]},t.prototype.getStr=function(){return this._str},t}(),Ob="none",Rb=Math.round;var Nb=["lineCap","miterLimit","lineJoin"],Eb=z(Nb,(function(t){return"stroke-"+t.toLowerCase()}));function zb(t,e,n,i){var r=null==e.opacity?1:e.opacity;if(n instanceof xs)t("opacity",r);else{if(function(t){var e=t.fill;return null!=e&&e!==Ob}(e)){var o=Rn(e.fill);t("fill",o.color);var a=null!=e.fillOpacity?e.fillOpacity*o.opacity*r:o.opacity*r;(i||a<1)&&t("fill-opacity",a)}else t("fill",Ob);if(function(t){var e=t.stroke;return null!=e&&e!==Ob}(e)){var s=Rn(e.stroke);t("stroke",s.color);var l=e.strokeNoScale?n.getLineScale():1,u=l?(e.lineWidth||0)/l:0,h=null!=e.strokeOpacity?e.strokeOpacity*s.opacity*r:s.opacity*r,c=e.strokeFirst;if((i||1!==u)&&t("stroke-width",u),(i||c)&&t("paint-order",c?"stroke":"fill"),(i||h<1)&&t("stroke-opacity",h),e.lineDash){var p=Ey(n),d=p[0],f=p[1];d&&(f=Rb(f||0),t("stroke-dasharray",d.join(",")),(f||i)&&t("stroke-dashoffset",f))}else i&&t("stroke-dasharray",Ob);for(var g=0;g<Nb.length;g++){var y=Nb[g];if(i||e[y]!==cs[y]){var v=e[y]||cs[y];v&&t(Eb[g],v)}}}else i&&t("stroke",Ob)}}var Vb="http://www.w3.org/2000/svg",Bb="http://www.w3.org/1999/xlink";function Fb(t){return document.createElementNS(Vb,t)}function Gb(t,e,n,i,r){return{tag:t,attrs:n||{},children:i,text:r,key:e}}function Wb(t,e){var n=(e=e||{}).newline?"\n":"";return function t(e){var i=e.children,r=e.tag;return function(t,e){var n=[];if(e)for(var i in e){var r=e[i],o=i;!1!==r&&(!0!==r&&null!=r&&(o+='="'+r+'"'),n.push(o))}return"<"+t+" "+n.join(" ")+">"}(r,e.attrs)+(e.text||"")+(i?""+n+z(i,(function(e){return t(e)})).join(n)+n:"")+("</"+r+">")}(t)}function Hb(t){return{zrId:t,shadowCache:{},patternCache:{},gradientCache:{},clipPathCache:{},defs:{},cssNodes:{},cssAnims:{},cssClassIdx:0,cssAnimIdx:0,shadowIdx:0,gradientIdx:0,patternIdx:0,clipPathIdx:0}}function Yb(t,e,n,i){return Gb("svg","root",{width:t,height:e,xmlns:Vb,"xmlns:xlink":Bb,version:"1.1",baseProfile:"full",viewBox:!!i&&"0 0 "+t+" "+e},n)}var Ub={cubicIn:"0.32,0,0.67,0",cubicOut:"0.33,1,0.68,1",cubicInOut:"0.65,0,0.35,1",quadraticIn:"0.11,0,0.5,0",quadraticOut:"0.5,1,0.89,1",quadraticInOut:"0.45,0,0.55,1",quarticIn:"0.5,0,0.75,0",quarticOut:"0.25,1,0.5,1",quarticInOut:"0.76,0,0.24,1",quinticIn:"0.64,0,0.78,0",quinticOut:"0.22,1,0.36,1",quinticInOut:"0.83,0,0.17,1",sinusoidalIn:"0.12,0,0.39,0",sinusoidalOut:"0.61,1,0.88,1",sinusoidalInOut:"0.37,0,0.63,1",exponentialIn:"0.7,0,0.84,0",exponentialOut:"0.16,1,0.3,1",exponentialInOut:"0.87,0,0.13,1",circularIn:"0.55,0,1,0.45",circularOut:"0,0.55,0.45,1",circularInOut:"0.85,0,0.15,1"},Xb="transform-origin";function Zb(t,e,n){var i=A({},t.shape);A(i,e),t.buildPath(n,i);var r=new Pb;return r.reset(Yn(t)),n.rebuildPath(r,1),r.generateStr(),r.getStr()}function jb(t,e){var n=e.originX,i=e.originY;(n||i)&&(t[Xb]=n+"px "+i+"px")}var qb={fill:"fill",opacity:"opacity",lineWidth:"stroke-width",lineDashOffset:"stroke-dashoffset"};function Kb(t,e){var n=e.zrId+"-ani-"+e.cssAnimIdx++;return e.cssAnims[n]=t,n}function $b(t){return X(t)?Ub[t]?"cubic-bezier("+Ub[t]+")":rn(t)?t:"":""}function Jb(t,e,n,i){var r=t.animators,o=r.length,a=[];if(t instanceof Hu){if(y=function(t,e,n){var i,r,o=t.shape.paths,a={};if(E(o,(function(t){var e=Hb(n.zrId);e.animation=!0,Jb(t,{},e,!0);var o=e.cssAnims,s=e.cssNodes,l=G(o),u=l.length;if(u){var h=o[r=l[u-1]];for(var c in h){var p=h[c];a[c]=a[c]||{d:""},a[c].d+=p.d||""}for(var d in s){var f=s[d].animation;f.indexOf(r)>=0&&(i=f)}}})),i){e.d=!1;var s=Kb(a,n);return i.replace(r,s)}}(t,e,n))a.push(y);else if(!o)return}else if(!o)return;for(var s={},l=0;l<o;l++){var u=r[l],h=[u.getMaxTime()/1e3+"s"],c=$b(u.getClip().easing),p=u.getDelay();c?h.push(c):h.push("linear"),p&&h.push(p/1e3+"s"),u.getLoop()&&h.push("infinite");var d=h.join(" ");s[d]=s[d]||[d,[]],s[d][1].push(u)}function f(r){var o,a=r[1],s=a.length,l={},u={},h={};function c(t,e,n){for(var i=t.getTracks(),r=t.getMaxTime(),o=0;o<i.length;o++){var a=i[o];if(a.needsAnimate()){var s=a.keyframes,l=a.propName;if(n&&(l=n(l)),l)for(var u=0;u<s.length;u++){var h=s[u],c=Math.round(h.time/r*100)+"%",p=$b(h.easing),d=h.rawValue;(X(d)||j(d))&&(e[c]=e[c]||{},e[c][l]=h.rawValue,p&&(e[c]["animation-timing-function"]=p))}}}}for(var p=0;p<s;p++){(w=(b=a[p]).targetName)?"shape"===w&&c(b,u):!i&&c(b,l)}for(var d in l){var f={};$i(f,t),A(f,l[d]);var g=Un(f),y=l[d]["animation-timing-function"];h[d]=g?{transform:g}:{},jb(h[d],f),y&&(h[d]["animation-timing-function"]=y)}var v=!0;for(var d in u){h[d]=h[d]||{};var m=!o;y=u[d]["animation-timing-function"];m&&(o=new ja);var x=o.len();o.reset(),h[d].d=Zb(t,u[d],o);var _=o.len();if(!m&&x!==_){v=!1;break}y&&(h[d]["animation-timing-function"]=y)}if(!v)for(var d in h)delete h[d].d;if(!i)for(p=0;p<s;p++){var b,w;"style"===(w=(b=a[p]).targetName)&&c(b,h,(function(t){return qb[t]}))}var S,M=G(h),I=!0;for(p=1;p<M.length;p++){var T=M[p-1],C=M[p];if(h[T][Xb]!==h[C][Xb]){I=!1;break}S=h[T][Xb]}if(I&&S){for(var d in h)h[d][Xb]&&delete h[d][Xb];e[Xb]=S}if(B(M,(function(t){return G(h[t]).length>0})).length)return Kb(h,n)+" "+r[0]+" both"}for(var g in s){var y;(y=f(s[g]))&&a.push(y)}if(a.length){var v=n.zrId+"-cls-"+n.cssClassIdx++;n.cssNodes["."+v]={animation:a.join(",")},e.class=v}}var Qb=Math.round;function tw(t){return t&&X(t.src)}function ew(t){return t&&U(t.toDataURL)}function nw(t,e,n,i){zb((function(r,o){var a="fill"===r||"stroke"===r;a&&function(t){return t&&("linear"===t.type||"radial"===t.type)}(o)?function(t,e,n,i){var r,o=t[n],a={gradientUnits:o.global?"userSpaceOnUse":"objectBoundingBox"};if(Gn(o))r="linearGradient",a.x1=o.x,a.y1=o.y,a.x2=o.x2,a.y2=o.y2;else{if(!Wn(o))return void 0;r="radialGradient",a.cx=rt(o.x,.5),a.cy=rt(o.y,.5),a.r=rt(o.r,.5)}for(var s=o.colorStops,l=[],u=0,h=s.length;u<h;++u){var c=100*Vn(s[u].offset)+"%",p=Rn(s[u].color),d=p.color,f=p.opacity,g={offset:c};g["stop-color"]=d,f<1&&(g["stop-opacity"]=f),l.push(Gb("stop",u+"",g))}var y=Wb(Gb(r,"",a,l)),v=i.gradientCache,m=v[y];m||(m=i.zrId+"-g"+i.gradientIdx++,v[y]=m,a.id=m,i.defs[m]=Gb(r,m,a,l));e[n]=Hn(m)}(e,t,r,i):a&&function(t){return Fn(t)||function(t){return t&&!!t.svgElement}(t)}(o)?function(t,e,n,i){var r,o=t.style[n],a={patternUnits:"userSpaceOnUse"};if(Fn(o)){var s=o.imageWidth,l=o.imageHeight,u=void 0,h=o.image;if(X(h)?u=h:tw(h)?u=h.src:ew(h)&&(u=h.toDataURL()),"undefined"==typeof Image){var c="Image width/height must been given explictly in svg-ssr renderer.";lt(s,c),lt(l,c)}else if(null==s||null==l){var p=function(t,e){if(t){var n=t.elm,i=t.attrs.width=s||e.width,r=t.attrs.height=l||e.height;n&&(n.setAttribute("width",i),n.setAttribute("height",r))}},d=Zo(u,null,t,(function(t){p(f,t),p(r,t)}));d&&d.width&&d.height&&(s=s||d.width,l=l||d.height)}r=Gb("image","img",{href:u,width:s,height:l}),a.width=s,a.height=l}else o.svgElement&&(r=T(o.svgElement),a.width=o.svgWidth,a.height=o.svgHeight);if(!r)return;a.patternTransform=Un(o);var f=Gb("pattern","",a,[r]),g=Wb(f),y=i.patternCache,v=y[g];v||(v=i.zrId+"-p"+i.patternIdx++,y[g]=v,a.id=v,f=i.defs[v]=Gb("pattern",v,a,[r]));e[n]=Hn(v)}(n,t,r,i):t[r]=o}),e,n,!1),function(t,e,n){var i=t.style;if(function(t){return t&&(t.shadowBlur||t.shadowOffsetX||t.shadowOffsetY)}(i)){var r=function(t){var e=t.style,n=t.getGlobalScale();return[e.shadowColor,(e.shadowBlur||0).toFixed(2),(e.shadowOffsetX||0).toFixed(2),(e.shadowOffsetY||0).toFixed(2),n[0],n[1]].join(",")}(t),o=n.shadowCache,a=o[r];if(!a){var s=t.getGlobalScale(),l=s[0],u=s[1];if(!l||!u)return;var h=i.shadowOffsetX||0,c=i.shadowOffsetY||0,p=i.shadowBlur,d=Rn(i.shadowColor),f=d.opacity,g=d.color,y=p/2/l+" "+p/2/u;a=n.zrId+"-s"+n.shadowIdx++,n.defs[a]=Gb("filter",a,{id:a,x:"-100%",y:"-100%",width:"300%",height:"300%"},[Gb("feDropShadow","",{dx:h/l,dy:c/u,stdDeviation:y,"flood-color":g,"flood-opacity":f})]),o[r]=a}e.filter=Hn(a)}}(n,t,i)}function iw(t){return En(t[0]-1)&&En(t[1])&&En(t[2])&&En(t[3]-1)}function rw(t,e,n){if(e&&(!function(t){return En(t[4])&&En(t[5])}(e)||!iw(e))){var i=n?10:1e4;t.transform=iw(e)?"translate("+Qb(e[4]*i)/i+" "+Qb(e[5]*i)/i+")":function(t){return"matrix("+zn(t[0])+","+zn(t[1])+","+zn(t[2])+","+zn(t[3])+","+Vn(t[4])+","+Vn(t[5])+")"}(e)}}function ow(t,e,n){for(var i=t.points,r=[],o=0;o<i.length;o++)r.push(Qb(i[o][0]*n)/n),r.push(Qb(i[o][1]*n)/n);e.points=r.join(" ")}function aw(t){return!t.smooth}var sw,lw,uw={circle:[(sw=["cx","cy","r"],lw=z(sw,(function(t){return"string"==typeof t?[t,t]:t})),function(t,e,n){for(var i=0;i<lw.length;i++){var r=lw[i],o=t[r[0]];null!=o&&(e[r[1]]=Qb(o*n)/n)}})],polyline:[ow,aw],polygon:[ow,aw]};function hw(t,e){var n=t.style,i=t.shape,r=uw[t.type],o={},a=e.animation,s="path",l=t.style.strokePercent,u=e.compress&&Yn(t)||4;if(!r||e.willUpdate||r[1]&&!r[1](i)||a&&function(t){for(var e=t.animators,n=0;n<e.length;n++)if("shape"===e[n].targetName)return!0;return!1}(t)||l<1){t.path||t.createPathProxy();var h=t.path;t.shapeChanged()&&(h.beginPath(),t.buildPath(h,t.shape),t.pathUpdated());var c=h.getVersion(),p=t,d=p.__svgPathBuilder;p.__svgPathVersion===c&&d&&l===p.__svgPathStrokePercent||(d||(d=p.__svgPathBuilder=new Pb),d.reset(u),h.rebuildPath(d,l),d.generateStr(),p.__svgPathVersion=c,p.__svgPathStrokePercent=l),o.d=d.getStr()}else{s=t.type;var f=Math.pow(10,u);r[0](i,o,f)}return rw(o,t.transform),nw(o,n,t,e),e.animation&&Jb(t,o,e),Gb(s,t.id+"",o)}function cw(t,e){return t instanceof fs?hw(t,e):t instanceof xs?function(t,e){var n=t.style,i=n.image;if(i&&!X(i)&&(tw(i)?i=i.src:ew(i)&&(i=i.toDataURL())),i){var r=n.x||0,o=n.y||0,a={href:i,width:n.width,height:n.height};return r&&(a.x=r),o&&(a.y=o),rw(a,t.transform),nw(a,n,t,e),e.animation&&Jb(t,a,e),Gb("image",t.id+"",a)}}(t,e):t instanceof ys?function(t,e){var n=t.style,i=n.text;if(null!=i&&(i+=""),i&&!isNaN(n.x)&&!isNaN(n.y)){var r=n.font||a,s=n.x||0,l=function(t,e,n){return"top"===n?t+=e/2:"bottom"===n&&(t-=e/2),t}(n.y||0,fr(r),n.textBaseline),u={"dominant-baseline":"central","text-anchor":Bn[n.textAlign]||n.textAlign};if(Ns(n)){var h="",c=n.fontStyle,p=Os(n.fontSize);if(!parseFloat(p))return;var d=n.fontFamily||o,f=n.fontWeight;h+="font-size:"+p+";font-family:"+d+";",c&&"normal"!==c&&(h+="font-style:"+c+";"),f&&"normal"!==f&&(h+="font-weight:"+f+";"),u.style=h}else u.style="font: "+r;return i.match(/\s/)&&(u["xml:space"]="preserve"),s&&(u.x=s),l&&(u.y=l),rw(u,t.transform),nw(u,n,t,e),e.animation&&Jb(t,u,e),Gb("text",t.id+"",u,void 0,i)}}(t,e):void 0}function pw(t,e,n){var i=n.clipPathCache,r=n.defs,o=i[t.id];if(!o){var a={id:o=n.zrId+"-c"+n.clipPathIdx++};i[t.id]=o,r[o]=Gb("clipPath",o,a,[hw(t,n)])}e["clip-path"]=Hn(o)}function dw(t){return document.createTextNode(t)}function fw(t,e,n){t.insertBefore(e,n)}function gw(t,e){t.removeChild(e)}function yw(t,e){t.appendChild(e)}function vw(t){return t.parentNode}function mw(t){return t.nextSibling}function xw(t,e){t.textContent=e}var _w=Gb("","");function bw(t){return void 0===t}function ww(t){return void 0!==t}function Sw(t,e,n){for(var i={},r=e;r<=n;++r){var o=t[r].key;void 0!==o&&(i[o]=r)}return i}function Mw(t,e){var n=t.key===e.key;return t.tag===e.tag&&n}function Iw(t){var e,n=t.children,i=t.tag;if(ww(i)){var r=t.elm=Fb(i);if(Dw(_w,t),Y(n))for(e=0;e<n.length;++e){var o=n[e];null!=o&&yw(r,Iw(o))}else ww(t.text)&&!q(t.text)&&yw(r,dw(t.text))}else t.elm=dw(t.text);return t.elm}function Tw(t,e,n,i,r){for(;i<=r;++i){var o=n[i];null!=o&&fw(t,Iw(o),e)}}function Cw(t,e,n,i){for(;n<=i;++n){var r=e[n];if(null!=r)if(ww(r.tag))gw(vw(r.elm),r.elm);else gw(t,r.elm)}}function Dw(t,e){var n,i=e.elm,r=t&&t.attrs||{},o=e.attrs||{};if(r!==o){for(n in o){var a=o[n];r[n]!==a&&(!0===a?i.setAttribute(n,""):!1===a?i.removeAttribute(n):120!==n.charCodeAt(0)?i.setAttribute(n,a):"xmlns:xlink"===n||"xmlns"===n?i.setAttributeNS("http://www.w3.org/2000/xmlns/",n,a):58===n.charCodeAt(3)?i.setAttributeNS("http://www.w3.org/XML/1998/namespace",n,a):58===n.charCodeAt(5)?i.setAttributeNS(Bb,n,a):i.setAttribute(n,a))}for(n in r)n in o||i.removeAttribute(n)}}function Aw(t,e){var n=e.elm=t.elm,i=t.children,r=e.children;t!==e&&(Dw(t,e),bw(e.text)?ww(i)&&ww(r)?i!==r&&function(t,e,n){for(var i,r,o,a=0,s=0,l=e.length-1,u=e[0],h=e[l],c=n.length-1,p=n[0],d=n[c];a<=l&&s<=c;)null==u?u=e[++a]:null==h?h=e[--l]:null==p?p=n[++s]:null==d?d=n[--c]:Mw(u,p)?(Aw(u,p),u=e[++a],p=n[++s]):Mw(h,d)?(Aw(h,d),h=e[--l],d=n[--c]):Mw(u,d)?(Aw(u,d),fw(t,u.elm,mw(h.elm)),u=e[++a],d=n[--c]):Mw(h,p)?(Aw(h,p),fw(t,h.elm,u.elm),h=e[--l],p=n[++s]):(bw(i)&&(i=Sw(e,a,l)),bw(r=i[p.key])||(o=e[r]).tag!==p.tag?fw(t,Iw(p),u.elm):(Aw(o,p),e[r]=void 0,fw(t,o.elm,u.elm)),p=n[++s]);(a<=l||s<=c)&&(a>l?Tw(t,null==n[c+1]?null:n[c+1].elm,n,s,c):Cw(t,e,a,l))}(n,i,r):ww(r)?(ww(t.text)&&xw(n,""),Tw(n,null,r,0,r.length-1)):ww(i)?Cw(n,i,0,i.length-1):ww(t.text)&&xw(n,""):t.text!==e.text&&(ww(i)&&Cw(n,i,0,i.length-1),xw(n,e.text)))}var kw=0,Lw=function(){function t(t,e,n){if(this.type="svg",this.refreshHover=Pw("refreshHover"),this.configLayer=Pw("configLayer"),this.storage=e,this._opts=n=A({},n),this.root=t,this._id="zr"+kw++,this._oldVNode=Yb(n.width,n.height),t&&!n.ssr){var i=this._viewport=document.createElement("div");i.style.cssText="position:relative;overflow:hidden";var r=this._svgDom=this._oldVNode.elm=Fb("svg");Dw(null,this._oldVNode),i.appendChild(r),t.appendChild(i)}this.resize(n.width,n.height)}return t.prototype.getType=function(){return this.type},t.prototype.getViewportRoot=function(){return this._viewport},t.prototype.getViewportRootOffset=function(){var t=this.getViewportRoot();if(t)return{offsetLeft:t.offsetLeft||0,offsetTop:t.offsetTop||0}},t.prototype.getSvgDom=function(){return this._svgDom},t.prototype.refresh=function(){if(this.root){var t=this.renderToVNode({willUpdate:!0});t.attrs.style="position:absolute;left:0;top:0;user-select:none",function(t,e){if(Mw(t,e))Aw(t,e);else{var n=t.elm,i=vw(n);Iw(e),null!==i&&(fw(i,e.elm,mw(n)),Cw(i,[t],0,0))}}(this._oldVNode,t),this._oldVNode=t}},t.prototype.renderOneToVNode=function(t){return cw(t,Hb(this._id))},t.prototype.renderToVNode=function(t){t=t||{};var e=this.storage.getDisplayList(!0),n=this._backgroundColor,i=this._width,r=this._height,o=Hb(this._id);o.animation=t.animation,o.willUpdate=t.willUpdate,o.compress=t.compress;var a=[];if(n&&"none"!==n){var s=Rn(n),l=s.color,u=s.opacity;this._bgVNode=Gb("rect","bg",{width:i,height:r,x:"0",y:"0",id:"0",fill:l,"fill-opacity":u}),a.push(this._bgVNode)}else this._bgVNode=null;var h=t.compress?null:this._mainVNode=Gb("g","main",{},[]);this._paintList(e,o,h?h.children:a),h&&a.push(h);var c=z(G(o.defs),(function(t){return o.defs[t]}));if(c.length&&a.push(Gb("defs","defs",{},c)),t.animation){var p=function(t,e,n){var i=(n=n||{}).newline?"\n":"",r=" {"+i,o=i+"}",a=z(G(t),(function(e){return e+r+z(G(t[e]),(function(n){return n+":"+t[e][n]+";"})).join(i)+o})).join(i),s=z(G(e),(function(t){return"@keyframes "+t+r+z(G(e[t]),(function(n){return n+r+z(G(e[t][n]),(function(i){var r=e[t][n][i];return"d"===i&&(r='path("'+r+'")'),i+":"+r+";"})).join(i)+o})).join(i)+o})).join(i);return a||s?["<![CDATA[",a,s,"]]>"].join(i):""}(o.cssNodes,o.cssAnims,{newline:!0});if(p){var d=Gb("style","stl",{},[],p);a.push(d)}}return Yb(i,r,a,t.useViewBox)},t.prototype.renderToString=function(t){return t=t||{},Wb(this.renderToVNode({animation:rt(t.cssAnimation,!0),willUpdate:!1,compress:!0,useViewBox:rt(t.useViewBox,!0)}),{newline:!0})},t.prototype.setBackgroundColor=function(t){this._backgroundColor=t;var e=this._bgVNode;if(e&&e.elm){var n=Rn(t),i=n.color,r=n.opacity;e.elm.setAttribute("fill",i),r<1&&e.elm.setAttribute("fill-opacity",r)}},t.prototype.getSvgRoot=function(){return this._mainVNode&&this._mainVNode.elm},t.prototype._paintList=function(t,e,n){for(var i,r,o=t.length,a=[],s=0,l=0,u=0;u<o;u++){var h=t[u];if(!h.invisible){var c=h.__clipPaths,p=c&&c.length||0,d=r&&r.length||0,f=void 0;for(f=Math.max(p-1,d-1);f>=0&&(!c||!r||c[f]!==r[f]);f--);for(var g=d-1;g>f;g--)i=a[--s-1];for(var y=f+1;y<p;y++){var v={};pw(c[y],v,e);var m=Gb("g","clip-g-"+l++,v,[]);(i?i.children:n).push(m),a[s++]=m,i=m}r=c;var x=cw(h,e);x&&(i?i.children:n).push(x)}}},t.prototype.resize=function(t,e){var n=this._opts,i=this.root,r=this._viewport;if(null!=t&&(n.width=t),null!=e&&(n.height=e),i&&r&&(r.style.display="none",t=Ny(i,0,n),e=Ny(i,1,n),r.style.display=""),this._width!==t||this._height!==e){if(this._width=t,this._height=e,r){var o=r.style;o.width=t+"px",o.height=e+"px"}var a=this._svgDom;a&&(a.setAttribute("width",t),a.setAttribute("height",e))}},t.prototype.getWidth=function(){return this._width},t.prototype.getHeight=function(){return this._height},t.prototype.dispose=function(){this.root&&(this.root.innerHTML=""),this._svgDom=this._viewport=this.storage=this._oldVNode=this._bgVNode=this._mainVNode=null},t.prototype.clear=function(){this._svgDom&&(this._svgDom.innerHTML=null),this._oldVNode=null},t.prototype.toDataURL=function(t){var e=encodeURIComponent(this.renderToString()),n="data:image/svg+xml;";return t?(e=Xn(e))&&n+"base64,"+e:n+"charset=UTF-8,"+e},t}();function Pw(t){return function(){0}}function Ow(t,e,n){var i=h.createCanvas(),r=e.getWidth(),o=e.getHeight(),a=i.style;return a&&(a.position="absolute",a.left="0",a.top="0",a.width=r+"px",a.height=o+"px",i.setAttribute("data-zr-dom-id",t)),i.width=r*n,i.height=o*n,i}var Rw=function(t){function e(e,n,i){var r,o=t.call(this)||this;o.motionBlur=!1,o.lastFrameAlpha=.7,o.dpr=1,o.virtual=!1,o.config={},o.incremental=!1,o.zlevel=0,o.maxRepaintRectCount=5,o.__dirty=!0,o.__firstTimePaint=!0,o.__used=!1,o.__drawIndex=0,o.__startIndex=0,o.__endIndex=0,o.__prevStartIndex=null,o.__prevEndIndex=null,i=i||Ai,"string"==typeof e?r=Ow(e,n,i):q(e)&&(e=(r=e).id),o.id=e,o.dom=r;var a=r.style;return a&&(vt(r),r.onselectstart=function(){return!1},a.padding="0",a.margin="0",a.borderWidth="0"),o.painter=n,o.dpr=i,o}return n(e,t),e.prototype.getElementCount=function(){return this.__endIndex-this.__startIndex},e.prototype.afterBrush=function(){this.__prevStartIndex=this.__startIndex,this.__prevEndIndex=this.__endIndex},e.prototype.initContext=function(){this.ctx=this.dom.getContext("2d"),this.ctx.dpr=this.dpr},e.prototype.setUnpainted=function(){this.__firstTimePaint=!0},e.prototype.createBackBuffer=function(){var t=this.dpr;this.domBack=Ow("back-"+this.id,this.painter,t),this.ctxBack=this.domBack.getContext("2d"),1!==t&&this.ctxBack.scale(t,t)},e.prototype.createRepaintRects=function(t,e,n,i){if(this.__firstTimePaint)return this.__firstTimePaint=!1,null;var r,o=[],a=this.maxRepaintRectCount,s=!1,l=new sr(0,0,0,0);function u(t){if(t.isFinite()&&!t.isZero())if(0===o.length){(e=new sr(0,0,0,0)).copy(t),o.push(e)}else{for(var e,n=!1,i=1/0,r=0,u=0;u<o.length;++u){var h=o[u];if(h.intersect(t)){var c=new sr(0,0,0,0);c.copy(h),c.union(t),o[u]=c,n=!0;break}if(s){l.copy(t),l.union(h);var p=t.width*t.height,d=h.width*h.height,f=l.width*l.height-p-d;f<i&&(i=f,r=u)}}if(s&&(o[r].union(t),n=!0),!n)(e=new sr(0,0,0,0)).copy(t),o.push(e);s||(s=o.length>=a)}}for(var h=this.__startIndex;h<this.__endIndex;++h){if(d=t[h]){var c=d.shouldBePainted(n,i,!0,!0);(f=d.__isRendered&&(1&d.__dirty||!c)?d.getPrevPaintRect():null)&&u(f);var p=c&&(1&d.__dirty||!d.__isRendered)?d.getPaintRect():null;p&&u(p)}}for(h=this.__prevStartIndex;h<this.__prevEndIndex;++h){var d,f;c=(d=e[h]).shouldBePainted(n,i,!0,!0);if(d&&(!c||!d.__zr)&&d.__isRendered)(f=d.getPrevPaintRect())&&u(f)}do{r=!1;for(h=0;h<o.length;)if(o[h].isZero())o.splice(h,1);else{for(var g=h+1;g<o.length;)o[h].intersect(o[g])?(r=!0,o[h].union(o[g]),o.splice(g,1)):g++;h++}}while(r);return this._paintRects=o,o},e.prototype.debugGetPaintRects=function(){return(this._paintRects||[]).slice()},e.prototype.resize=function(t,e){var n=this.dpr,i=this.dom,r=i.style,o=this.domBack;r&&(r.width=t+"px",r.height=e+"px"),i.width=t*n,i.height=e*n,o&&(o.width=t*n,o.height=e*n,1!==n&&this.ctxBack.scale(n,n))},e.prototype.clear=function(t,e,n){var i=this.dom,r=this.ctx,o=i.width,a=i.height;e=e||this.clearColor;var s=this.motionBlur&&!t,l=this.lastFrameAlpha,u=this.dpr,h=this;s&&(this.domBack||this.createBackBuffer(),this.ctxBack.globalCompositeOperation="copy",this.ctxBack.drawImage(i,0,0,o/u,a/u));var c=this.domBack;function p(t,n,i,o){if(r.clearRect(t,n,i,o),e&&"transparent"!==e){var a=void 0;Q(e)?(a=e.__canvasGradient||Oy(r,e,{x:0,y:0,width:i,height:o}),e.__canvasGradient=a):tt(e)&&(a=Hy(r,e,{dirty:function(){h.setUnpainted(),h.__painter.refresh()}})),r.save(),r.fillStyle=a||e,r.fillRect(t,n,i,o),r.restore()}s&&(r.save(),r.globalAlpha=l,r.drawImage(c,t,n,i,o),r.restore())}!n||s?p(0,0,o,a):n.length&&E(n,(function(t){p(t.x*u,t.y*u,t.width*u,t.height*u)}))},e}(Xt),Nw=1e5,Ew=314159,zw=.01;var Vw=function(){function t(t,e,n,i){this.type="canvas",this._zlevelList=[],this._prevDisplayList=[],this._layers={},this._layerConfig={},this._needsManuallyCompositing=!1,this.type="canvas";var r=!t.nodeName||"CANVAS"===t.nodeName.toUpperCase();this._opts=n=A({},n||{}),this.dpr=n.devicePixelRatio||Ai,this._singleCanvas=r,this.root=t,t.style&&(vt(t),t.innerHTML=""),this.storage=e;var o=this._zlevelList;this._prevDisplayList=[];var a=this._layers;if(r){var s=t,l=s.width,u=s.height;null!=n.width&&(l=n.width),null!=n.height&&(u=n.height),this.dpr=n.devicePixelRatio||1,s.width=l*this.dpr,s.height=u*this.dpr,this._width=l,this._height=u;var h=new Rw(s,this,this.dpr);h.__builtin__=!0,h.initContext(),a[314159]=h,h.zlevel=Ew,o.push(Ew),this._domRoot=t}else{this._width=Ny(t,0,n),this._height=Ny(t,1,n);var c=this._domRoot=function(t,e){var n=document.createElement("div");return n.style.cssText=["position:relative","width:"+t+"px","height:"+e+"px","padding:0","margin:0","border-width:0"].join(";")+";",n}(this._width,this._height);t.appendChild(c)}}return t.prototype.getType=function(){return"canvas"},t.prototype.isSingleCanvas=function(){return this._singleCanvas},t.prototype.getViewportRoot=function(){return this._domRoot},t.prototype.getViewportRootOffset=function(){var t=this.getViewportRoot();if(t)return{offsetLeft:t.offsetLeft||0,offsetTop:t.offsetTop||0}},t.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 r=0;r<i.length;r++){var o=i[r],a=this._layers[o];if(!a.__builtin__&&a.refresh){var s=0===r?this._backgroundColor:null;a.refresh(s)}}return this._opts.useDirtyRect&&(this._prevDisplayList=e.slice()),this},t.prototype.refreshHover=function(){this._paintHoverList(this.storage.getDisplayList(!1))},t.prototype._paintHoverList=function(t){var e=t.length,n=this._hoverlayer;if(n&&n.clear(),e){for(var i,r={inHover:!0,viewWidth:this._width,viewHeight:this._height},o=0;o<e;o++){var a=t[o];a.__inHover&&(n||(n=this._hoverlayer=this.getLayer(Nw)),i||(i=n.ctx).save(),Jy(i,a,r,o===e-1))}i&&i.restore()}},t.prototype.getHoverLayer=function(){return this.getLayer(Nw)},t.prototype.paintOne=function(t,e){$y(t,e)},t.prototype._paintList=function(t,e,n,i){if(this._redrawId===i){n=n||!1,this._updateLayerStatus(t);var r=this._doPaintList(t,e,n),o=r.finished,a=r.needsRefreshHover;if(this._needsManuallyCompositing&&this._compositeManually(),a&&this._paintHoverList(t),o)this.eachLayer((function(t){t.afterBrush&&t.afterBrush()}));else{var s=this;ke((function(){s._paintList(t,e,n,i)}))}}},t.prototype._compositeManually=function(){var t=this.getLayer(Ew).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)}))},t.prototype._doPaintList=function(t,e,n){for(var i=this,o=[],a=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)&&o.push(u)}for(var h=!0,c=!1,p=function(r){var s,l=o[r],u=l.ctx,p=a&&l.createRepaintRects(t,e,d._width,d._height),f=n?l.__startIndex:l.__drawIndex,g=!n&&l.incremental&&Date.now,y=g&&Date.now(),v=l.zlevel===d._zlevelList[0]?d._backgroundColor:null;if(l.__startIndex===l.__endIndex)l.clear(!1,v,p);else if(f===l.__startIndex){var m=t[f];m.incremental&&m.notClear&&!n||l.clear(!1,v,p)}-1===f&&(console.error("For some unknown reason. drawIndex is -1"),f=l.__startIndex);var x=function(e){var n={inHover:!1,allClipped:!1,prevEl:null,viewWidth:i._width,viewHeight:i._height};for(s=f;s<l.__endIndex;s++){var r=t[s];if(r.__inHover&&(c=!0),i._doPaintEl(r,l,a,e,n,s===l.__endIndex-1),g)if(Date.now()-y>15)break}n.prevElClipPaths&&u.restore()};if(p)if(0===p.length)s=l.__endIndex;else for(var _=d.dpr,b=0;b<p.length;++b){var w=p[b];u.save(),u.beginPath(),u.rect(w.x*_,w.y*_,w.width*_,w.height*_),u.clip(),x(w),u.restore()}else u.save(),x(),u.restore();l.__drawIndex=s,l.__drawIndex<l.__endIndex&&(h=!1)},d=this,f=0;f<o.length;f++)p(f);return r.wxa&&E(this._layers,(function(t){t&&t.ctx&&t.ctx.draw&&t.ctx.draw()})),{finished:h,needsRefreshHover:c}},t.prototype._doPaintEl=function(t,e,n,i,r,o){var a=e.ctx;if(n){var s=t.getPaintRect();(!i||s&&s.intersect(i))&&(Jy(a,t,r,o),t.setPrevPaintRect(s))}else Jy(a,t,r,o)},t.prototype.getLayer=function(t,e){this._singleCanvas&&!this._needsManuallyCompositing&&(t=Ew);var n=this._layers[t];return n||((n=new Rw("zr_"+t,this,this.dpr)).zlevel=t,n.__builtin__=!0,this._layerConfig[t]?C(n,this._layerConfig[t],!0):this._layerConfig[t-zw]&&C(n,this._layerConfig[t-zw],!0),e&&(n.virtual=e),this.insertLayer(t,n),n.initContext()),n},t.prototype.insertLayer=function(t,e){var n=this._layers,i=this._zlevelList,r=i.length,o=this._domRoot,a=null,s=-1;if(!n[t]&&function(t){return!!t&&(!!t.__builtin__||"function"==typeof t.resize&&"function"==typeof t.refresh)}(e)){if(r>0&&t>i[0]){for(s=0;s<r-1&&!(i[s]<t&&i[s+1]>t);s++);a=n[i[s]]}if(i.splice(s+1,0,t),n[t]=e,!e.virtual)if(a){var l=a.dom;l.nextSibling?o.insertBefore(e.dom,l.nextSibling):o.appendChild(e.dom)}else o.firstChild?o.insertBefore(e.dom,o.firstChild):o.appendChild(e.dom);e.__painter=this}},t.prototype.eachLayer=function(t,e){for(var n=this._zlevelList,i=0;i<n.length;i++){var r=n[i];t.call(e,this._layers[r],r)}},t.prototype.eachBuiltinLayer=function(t,e){for(var n=this._zlevelList,i=0;i<n.length;i++){var r=n[i],o=this._layers[r];o.__builtin__&&t.call(e,o,r)}},t.prototype.eachOtherLayer=function(t,e){for(var n=this._zlevelList,i=0;i<n.length;i++){var r=n[i],o=this._layers[r];o.__builtin__||t.call(e,o,r)}},t.prototype.getLayers=function(){return this._layers},t.prototype._updateLayerStatus=function(t){function e(t){o&&(o.__endIndex!==t&&(o.__dirty=!0),o.__endIndex=t)}if(this.eachBuiltinLayer((function(t,e){t.__dirty=t.__used=!1})),this._singleCanvas)for(var n=1;n<t.length;n++){if((s=t[n]).zlevel!==t[n-1].zlevel||s.incremental){this._needsManuallyCompositing=!0;break}}var i,r,o=null,a=0;for(r=0;r<t.length;r++){var s,l=(s=t[r]).zlevel,u=void 0;i!==l&&(i=l,a=0),s.incremental?((u=this.getLayer(l+.001,this._needsManuallyCompositing)).incremental=!0,a=1):u=this.getLayer(l+(a>0?zw:0),this._needsManuallyCompositing),u.__builtin__||I("ZLevel "+l+" has been used by unkown layer "+u.id),u!==o&&(u.__used=!0,u.__startIndex!==r&&(u.__dirty=!0),u.__startIndex=r,u.incremental?u.__drawIndex=-1:u.__drawIndex=r,e(r),o=u),1&s.__dirty&&!s.__inHover&&(u.__dirty=!0,u.incremental&&u.__drawIndex<0&&(u.__drawIndex=r))}e(r),this.eachBuiltinLayer((function(t,e){!t.__used&&t.getElementCount()>0&&(t.__dirty=!0,t.__startIndex=t.__endIndex=t.__drawIndex=0),t.__dirty&&t.__drawIndex<0&&(t.__drawIndex=t.__startIndex)}))},t.prototype.clear=function(){return this.eachBuiltinLayer(this._clearLayer),this},t.prototype._clearLayer=function(t){t.clear()},t.prototype.setBackgroundColor=function(t){this._backgroundColor=t,E(this._layers,(function(t){t.setUnpainted()}))},t.prototype.configLayer=function(t,e){if(e){var n=this._layerConfig;n[t]?C(n[t],e,!0):n[t]=e;for(var i=0;i<this._zlevelList.length;i++){var r=this._zlevelList[i];if(r===t||r===t+zw)C(this._layers[r],n[t],!0)}}},t.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(P(n,t),1))},t.prototype.resize=function(t,e){if(this._domRoot.style){var n=this._domRoot;n.style.display="none";var i=this._opts,r=this.root;if(null!=t&&(i.width=t),null!=e&&(i.height=e),t=Ny(r,0,i),e=Ny(r,1,i),n.style.display="",this._width!==t||e!==this._height){for(var o in n.style.width=t+"px",n.style.height=e+"px",this._layers)this._layers.hasOwnProperty(o)&&this._layers[o].resize(t,e);this.refresh(!0)}this._width=t,this._height=e}else{if(null==t||null==e)return;this._width=t,this._height=e,this.getLayer(Ew).resize(t,e)}return this},t.prototype.clearLayer=function(t){var e=this._layers[t];e&&e.clear()},t.prototype.dispose=function(){this.root.innerHTML="",this.root=this.storage=this._domRoot=this._layers=null},t.prototype.getRenderedCanvas=function(t){if(t=t||{},this._singleCanvas&&!this._compositeManually)return this._layers[314159].dom;var e=new Rw("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,r=e.dom.height;this.eachLayer((function(t){t.__builtin__?n.drawImage(t.dom,0,0,i,r):t.renderToCanvas&&(n.save(),t.renderToCanvas(n),n.restore())}))}else for(var o={inHover:!1,viewWidth:this._width,viewHeight:this._height},a=this.storage.getDisplayList(!0),s=0,l=a.length;s<l;s++){var u=a[s];Jy(n,u,o,s===l-1)}return e.dom},t.prototype.getWidth=function(){return this._width},t.prototype.getHeight=function(){return this._height},t}();var Bw=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.hasSymbolVisual=!0,n}return n(e,t),e.prototype.getInitialData=function(t){return nx(null,this,{useEncodeDefaulter:!0})},e.prototype.getLegendIcon=function(t){var e=new Cr,n=ky("line",0,t.itemHeight/2,t.itemWidth,0,t.lineStyle.stroke,!1);e.add(n),n.setStyle(t.lineStyle);var i=this.getData().getVisual("symbol"),r=this.getData().getVisual("symbolRotate"),o="none"===i?"circle":i,a=.8*t.itemHeight,s=ky(o,(t.itemWidth-a)/2,(t.itemHeight-a)/2,a,a,t.itemStyle.fill);e.add(s),s.setStyle(t.itemStyle);var l="inherit"===t.iconRotate?r:t.iconRotate||0;return s.rotation=l*Math.PI/180,s.setOrigin([t.itemWidth/2,t.itemHeight/2]),o.indexOf("empty")>-1&&(s.style.stroke=s.style.fill,s.style.fill="#fff",s.style.lineWidth=2),e},e.type="series.line",e.dependencies=["grid","polar"],e.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},e}(ag);function Fw(t,e){var n=t.mapDimensionsAll("defaultedLabel"),i=n.length;if(1===i){var r=of(t,e,n[0]);return null!=r?r+"":null}if(i){for(var o=[],a=0;a<n.length;a++)o.push(of(t,e,n[a]));return o.join(" ")}}function Gw(t,e){var n=t.mapDimensionsAll("defaultedLabel");if(!Y(e))return e+"";for(var i=[],r=0;r<n.length;r++){var o=t.getDimensionIndex(n[r]);o>=0&&i.push(e[o])}return i.join(" ")}var Ww=function(t){function e(e,n,i,r){var o=t.call(this)||this;return o.updateData(e,n,i,r),o}return n(e,t),e.prototype._createSymbol=function(t,e,n,i,r){this.removeAll();var o=ky(t,-1,-1,2,2,null,r);o.attr({z2:100,culling:!0,scaleX:i[0]/2,scaleY:i[1]/2}),o.drift=Hw,this._symbolType=t,this.add(o)},e.prototype.stopSymbolAnimation=function(t){this.childAt(0).stopAnimation(null,t)},e.prototype.getSymbolType=function(){return this._symbolType},e.prototype.getSymbolPath=function(){return this.childAt(0)},e.prototype.highlight=function(){xl(this.childAt(0))},e.prototype.downplay=function(){_l(this.childAt(0))},e.prototype.setZ=function(t,e){var n=this.childAt(0);n.zlevel=t,n.z=e},e.prototype.setDraggable=function(t){var e=this.childAt(0);e.draggable=t,e.cursor=t?"move":e.cursor},e.prototype.updateData=function(t,n,i,r){this.silent=!1;var o=t.getItemVisual(n,"symbol")||"circle",a=t.hostModel,s=e.getSymbolSize(t,n),l=o!==this._symbolType,u=r&&r.disableAnimation;if(l){var h=t.getItemVisual(n,"symbolKeepAspect");this._createSymbol(o,t,n,s,h)}else{(p=this.childAt(0)).silent=!1;var c={scaleX:s[0]/2,scaleY:s[1]/2};u?p.attr(c):ih(p,c,a,n),uh(p)}if(this._updateCommon(t,n,s,i,r),l){var p=this.childAt(0);if(!u){c={scaleX:this._sizeX,scaleY:this._sizeY,style:{opacity:p.style.opacity}};p.scaleX=p.scaleY=0,p.style.opacity=0,rh(p,c,a,n)}}u&&this.childAt(0).stopAnimation("leave")},e.prototype._updateCommon=function(t,e,n,i,r){var o,a,s,l,u,h,c,p,d,f=this.childAt(0),g=t.hostModel;if(i&&(o=i.emphasisItemStyle,a=i.blurItemStyle,s=i.selectItemStyle,l=i.focus,u=i.blurScope,c=i.labelStatesModels,p=i.hoverScale,d=i.cursorStyle,h=i.emphasisDisabled),!i||t.hasItemOption){var y=i&&i.itemModel?i.itemModel:t.getItemModel(e),v=y.getModel("emphasis");o=v.getModel("itemStyle").getItemStyle(),s=y.getModel(["select","itemStyle"]).getItemStyle(),a=y.getModel(["blur","itemStyle"]).getItemStyle(),l=v.get("focus"),u=v.get("blurScope"),h=v.get("disabled"),c=Hh(y),p=v.getShallow("scale"),d=y.getShallow("cursor")}var m=t.getItemVisual(e,"symbolRotate");f.attr("rotation",(m||0)*Math.PI/180||0);var x=Py(t.getItemVisual(e,"symbolOffset"),n);x&&(f.x=x[0],f.y=x[1]),d&&f.attr("cursor",d);var _=t.getItemVisual(e,"style"),b=_.fill;if(f instanceof xs){var w=f.style;f.useStyle(A({image:w.image,x:w.x,y:w.y,width:w.width,height:w.height},_))}else f.__isEmptyBrush?f.useStyle(A({},_)):f.useStyle(_),f.style.decal=null,f.setColor(b,r&&r.symbolInnerColor),f.style.strokeNoScale=!0;var S=t.getItemVisual(e,"liftZ"),M=this._z2;null!=S?null==M&&(this._z2=f.z2,f.z2+=S):null!=M&&(f.z2=M,this._z2=null);var I=r&&r.useNameLabel;Wh(f,c,{labelFetcher:g,labelDataIndex:e,defaultText:function(e){return I?t.getName(e):Fw(t,e)},inheritColor:b,defaultOpacity:_.opacity}),this._sizeX=n[0]/2,this._sizeY=n[1]/2;var T=f.ensureState("emphasis");if(T.style=o,f.ensureState("select").style=s,f.ensureState("blur").style=a,p){var C=Math.max(1.1,3/this._sizeY);T.scaleX=this._sizeX*C,T.scaleY=this._sizeY*C}this.setSymbolScale(1),Ol(this,l,u,h)},e.prototype.setSymbolScale=function(t){this.scaleX=this.scaleY=t},e.prototype.fadeOut=function(t,e,n){var i=this.childAt(0),r=Ws(this).dataIndex,o=n&&n.animation;if(this.silent=i.silent=!0,n&&n.fadeLabel){var a=i.getTextContent();a&&ah(a,{style:{opacity:0}},e,{dataIndex:r,removeOpt:o,cb:function(){i.removeTextContent()}})}else i.removeTextContent();ah(i,{style:{opacity:0},scaleX:0,scaleY:0},e,{dataIndex:r,cb:t,removeOpt:o})},e.getSymbolSize=function(t,e){return Ly(t.getItemVisual(e,"symbolSize"))},e}(Cr);function Hw(t,e){this.parent.drift(t,e)}function Yw(t,e,n,i){return e&&!isNaN(e[0])&&!isNaN(e[1])&&!(i.isIgnore&&i.isIgnore(n))&&!(i.clipShape&&!i.clipShape.contain(e[0],e[1]))&&"none"!==t.getItemVisual(n,"symbol")}function Uw(t){return null==t||q(t)||(t={isIgnore:t}),t||{}}function Xw(t){var e=t.hostModel,n=e.getModel("emphasis");return{emphasisItemStyle:n.getModel("itemStyle").getItemStyle(),blurItemStyle:e.getModel(["blur","itemStyle"]).getItemStyle(),selectItemStyle:e.getModel(["select","itemStyle"]).getItemStyle(),focus:n.get("focus"),blurScope:n.get("blurScope"),emphasisDisabled:n.get("disabled"),hoverScale:n.get("scale"),labelStatesModels:Hh(e),cursorStyle:e.get("cursor")}}var Zw=function(){function t(t){this.group=new Cr,this._SymbolCtor=t||Ww}return t.prototype.updateData=function(t,e){this._progressiveEls=null,e=Uw(e);var n=this.group,i=t.hostModel,r=this._data,o=this._SymbolCtor,a=e.disableAnimation,s=Xw(t),l={disableAnimation:a},u=e.getSymbolPoint||function(e){return t.getItemLayout(e)};r||n.removeAll(),t.diff(r).add((function(i){var r=u(i);if(Yw(t,r,i,e)){var a=new o(t,i,s,l);a.setPosition(r),t.setItemGraphicEl(i,a),n.add(a)}})).update((function(h,c){var p=r.getItemGraphicEl(c),d=u(h);if(Yw(t,d,h,e)){var f=t.getItemVisual(h,"symbol")||"circle",g=p&&p.getSymbolType&&p.getSymbolType();if(!p||g&&g!==f)n.remove(p),(p=new o(t,h,s,l)).setPosition(d);else{p.updateData(t,h,s,l);var y={x:d[0],y:d[1]};a?p.attr(y):ih(p,y,i)}n.add(p),t.setItemGraphicEl(h,p)}else n.remove(p)})).remove((function(t){var e=r.getItemGraphicEl(t);e&&e.fadeOut((function(){n.remove(e)}),i)})).execute(),this._getSymbolPoint=u,this._data=t},t.prototype.updateLayout=function(){var t=this,e=this._data;e&&e.eachItemGraphicEl((function(e,n){var i=t._getSymbolPoint(n);e.setPosition(i),e.markRedraw()}))},t.prototype.incrementalPrepareUpdate=function(t){this._seriesScope=Xw(t),this._data=null,this.group.removeAll()},t.prototype.incrementalUpdate=function(t,e,n){function i(t){t.isGroup||(t.incremental=!0,t.ensureState("emphasis").hoverLayer=!0)}this._progressiveEls=[],n=Uw(n);for(var r=t.start;r<t.end;r++){var o=e.getItemLayout(r);if(Yw(e,o,r,n)){var a=new this._SymbolCtor(e,r,this._seriesScope);a.traverse(i),a.setPosition(o),this.group.add(a),e.setItemGraphicEl(r,a),this._progressiveEls.push(a)}}},t.prototype.eachRendered=function(t){zh(this._progressiveEls||this.group,t)},t.prototype.remove=function(t){var e=this.group,n=this._data;n&&t?n.eachItemGraphicEl((function(t){t.fadeOut((function(){e.remove(t)}),n.hostModel)})):e.removeAll()},t}();function jw(t,e,n){var i=t.getBaseAxis(),r=t.getOtherAxis(i),o=function(t,e){var n=0,i=t.scale.getExtent();"start"===e?n=i[0]:"end"===e?n=i[1]:i[0]>0?n=i[0]:i[1]<0&&(n=i[1]);return n}(r,n),a=i.dim,s=r.dim,l=e.mapDimension(s),u=e.mapDimension(a),h="x"===s||"radius"===s?1:0,c=z(t.dimensions,(function(t){return e.mapDimension(t)})),p=!1,d=e.getCalculationInfo("stackResultDimension");return tx(e,c[0])&&(p=!0,c[0]=d),tx(e,c[1])&&(p=!0,c[1]=d),{dataDimsForPoint:c,valueStart:o,valueAxisDim:s,baseAxisDim:a,stacked:!!p,valueDim:l,baseDim:u,baseDataOffset:h,stackedOverDimension:e.getCalculationInfo("stackedOverDimension")}}function qw(t,e,n,i){var r=NaN;t.stacked&&(r=n.get(n.getCalculationInfo("stackedOverDimension"),i)),isNaN(r)&&(r=t.valueStart);var o=t.baseDataOffset,a=[];return a[o]=n.get(t.baseDim,i),a[1-o]=r,e.dataToPoint(a)}var Kw=Math.min,$w=Math.max;function Jw(t,e){return isNaN(t)||isNaN(e)}function Qw(t,e,n,i,r,o,a,s,l){for(var u,h,c,p,d,f,g=n,y=0;y<i;y++){var v=e[2*g],m=e[2*g+1];if(g>=r||g<0)break;if(Jw(v,m)){if(l){g+=o;continue}break}if(g===n)t[o>0?"moveTo":"lineTo"](v,m),c=v,p=m;else{var x=v-u,_=m-h;if(x*x+_*_<.5){g+=o;continue}if(a>0){for(var b=g+o,w=e[2*b],S=e[2*b+1];w===v&&S===m&&y<i;)y++,g+=o,w=e[2*(b+=o)],S=e[2*b+1],x=(v=e[2*g])-u,_=(m=e[2*g+1])-h;var M=y+1;if(l)for(;Jw(w,S)&&M<i;)M++,w=e[2*(b+=o)],S=e[2*b+1];var I=.5,T=0,C=0,D=void 0,A=void 0;if(M>=i||Jw(w,S))d=v,f=m;else{T=w-u,C=S-h;var k=v-u,L=w-v,P=m-h,O=S-m,R=void 0,N=void 0;if("x"===s){var E=T>0?1:-1;d=v-E*(R=Math.abs(k))*a,f=m,D=v+E*(N=Math.abs(L))*a,A=m}else if("y"===s){var z=C>0?1:-1;d=v,f=m-z*(R=Math.abs(P))*a,D=v,A=m+z*(N=Math.abs(O))*a}else R=Math.sqrt(k*k+P*P),d=v-T*a*(1-(I=(N=Math.sqrt(L*L+O*O))/(N+R))),f=m-C*a*(1-I),A=m+C*a*I,D=Kw(D=v+T*a*I,$w(w,v)),A=Kw(A,$w(S,m)),D=$w(D,Kw(w,v)),f=m-(C=(A=$w(A,Kw(S,m)))-m)*R/N,d=Kw(d=v-(T=D-v)*R/N,$w(u,v)),f=Kw(f,$w(h,m)),D=v+(T=v-(d=$w(d,Kw(u,v))))*N/R,A=m+(C=m-(f=$w(f,Kw(h,m))))*N/R}t.bezierCurveTo(c,p,d,f,v,m),c=D,p=A}else t.lineTo(v,m)}u=v,h=m,g+=o}return y}var tS=function(){this.smooth=0,this.smoothConstraint=!0},eS=function(t){function e(e){var n=t.call(this,e)||this;return n.type="ec-polyline",n}return n(e,t),e.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},e.prototype.getDefaultShape=function(){return new tS},e.prototype.buildPath=function(t,e){var n=e.points,i=0,r=n.length/2;if(e.connectNulls){for(;r>0&&Jw(n[2*r-2],n[2*r-1]);r--);for(;i<r&&Jw(n[2*i],n[2*i+1]);i++);}for(;i<r;)i+=Qw(t,n,i,r,r,1,e.smooth,e.smoothMonotone,e.connectNulls)+1},e.prototype.getPointOn=function(t,e){this.path||(this.createPathProxy(),this.buildPath(this.path,this.shape));for(var n,i,r=this.path.data,o=ja.CMD,a="x"===e,s=[],l=0;l<r.length;){var u=void 0,h=void 0,c=void 0,p=void 0,d=void 0,f=void 0,g=void 0;switch(r[l++]){case o.M:n=r[l++],i=r[l++];break;case o.L:if(u=r[l++],h=r[l++],(g=a?(t-n)/(u-n):(t-i)/(h-i))<=1&&g>=0){var y=a?(h-i)*g+i:(u-n)*g+n;return a?[t,y]:[y,t]}n=u,i=h;break;case o.C:u=r[l++],h=r[l++],c=r[l++],p=r[l++],d=r[l++],f=r[l++];var v=a?Ue(n,u,c,d,t,s):Ue(i,h,p,f,t,s);if(v>0)for(var m=0;m<v;m++){var x=s[m];if(x<=1&&x>=0){y=a?He(i,h,p,f,x):He(n,u,c,d,x);return a?[t,y]:[y,t]}}n=d,i=f}}},e}(fs),nS=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e}(tS),iS=function(t){function e(e){var n=t.call(this,e)||this;return n.type="ec-polygon",n}return n(e,t),e.prototype.getDefaultShape=function(){return new nS},e.prototype.buildPath=function(t,e){var n=e.points,i=e.stackedOnPoints,r=0,o=n.length/2,a=e.smoothMonotone;if(e.connectNulls){for(;o>0&&Jw(n[2*o-2],n[2*o-1]);o--);for(;r<o&&Jw(n[2*r],n[2*r+1]);r++);}for(;r<o;){var s=Qw(t,n,r,o,o,1,e.smooth,a,e.connectNulls);Qw(t,i,r+s-1,s,o,-1,e.stackedOnSmooth,a,e.connectNulls),r+=s+1,t.closePath()}},e}(fs);function rS(t,e,n,i,r){var o=t.getArea(),a=o.x,s=o.y,l=o.width,u=o.height,h=n.get(["lineStyle","width"])||2;a-=h/2,s-=h/2,l+=h,u+=h,a=Math.floor(a),l=Math.round(l);var c=new Ts({shape:{x:a,y:s,width:l,height:u}});if(e){var p=t.getBaseAxis(),d=p.isHorizontal(),f=p.inverse;d?(f&&(c.shape.x+=l),c.shape.width=0):(f||(c.shape.y+=u),c.shape.height=0);var g=U(r)?function(t){r(t,c)}:null;rh(c,{shape:{width:l,height:u,x:a,y:s}},n,null,i,g)}return c}function oS(t,e,n){var i=t.getArea(),r=zr(i.r0,1),o=zr(i.r,1),a=new Tu({shape:{cx:zr(t.cx,1),cy:zr(t.cy,1),r0:r,r:o,startAngle:i.startAngle,endAngle:i.endAngle,clockwise:i.clockwise}});e&&("angle"===t.getBaseAxis().dim?a.shape.endAngle=i.startAngle:a.shape.r=r,rh(a,{shape:{endAngle:i.endAngle,r:o}},n));return a}function aS(t,e,n,i,r){return t?"polar"===t.type?oS(t,e,n):"cartesian2d"===t.type?rS(t,e,n,i,r):null:null}function sS(t,e){return t.type===e}function lS(t,e){if(t.length===e.length){for(var n=0;n<t.length;n++)if(t[n]!==e[n])return;return!0}}function uS(t){for(var e=1/0,n=1/0,i=-1/0,r=-1/0,o=0;o<t.length;){var a=t[o++],s=t[o++];isNaN(a)||(e=Math.min(a,e),i=Math.max(a,i)),isNaN(s)||(n=Math.min(s,n),r=Math.max(s,r))}return[[e,n],[i,r]]}function hS(t,e){var n=uS(t),i=n[0],r=n[1],o=uS(e),a=o[0],s=o[1];return Math.max(Math.abs(i[0]-a[0]),Math.abs(i[1]-a[1]),Math.abs(r[0]-s[0]),Math.abs(r[1]-s[1]))}function cS(t){return j(t)?t:t?.5:0}function pS(t,e,n,i){var r=e.getBaseAxis(),o="x"===r.dim||"radius"===r.dim?0:1,a=[],s=0,l=[],u=[],h=[],c=[];if(i){for(s=0;s<t.length;s+=2)isNaN(t[s])||isNaN(t[s+1])||c.push(t[s],t[s+1]);t=c}for(s=0;s<t.length-2;s+=2)switch(h[0]=t[s+2],h[1]=t[s+3],u[0]=t[s],u[1]=t[s+1],a.push(u[0],u[1]),n){case"end":l[o]=h[o],l[1-o]=u[1-o],a.push(l[0],l[1]);break;case"middle":var p=(u[o]+h[o])/2,d=[];l[o]=d[o]=p,l[1-o]=u[1-o],d[1-o]=h[1-o],a.push(l[0],l[1]),a.push(d[0],d[1]);break;default:l[o]=u[o],l[1-o]=h[1-o],a.push(l[0],l[1])}return a.push(t[s++],t[s++]),a}function dS(t,e,n){var i=t.getVisual("visualMeta");if(i&&i.length&&t.count()&&"cartesian2d"===e.type){for(var r,o,a=i.length-1;a>=0;a--){var s=t.getDimensionInfo(i[a].dimension);if("x"===(r=s&&s.coordDim)||"y"===r){o=i[a];break}}if(o){var l=e.getAxis(r),u=z(o.stops,(function(t){return{coord:l.toGlobalCoord(l.dataToCoord(t.value)),color:t.color}})),h=u.length,c=o.outerColors.slice();h&&u[0].coord>u[h-1].coord&&(u.reverse(),c.reverse());var p=function(t,e){var n,i,r=[],o=t.length;function a(t,e,n){var i=t.coord;return{coord:n,color:Tn((n-i)/(e.coord-i),[t.color,e.color])}}for(var s=0;s<o;s++){var l=t[s],u=l.coord;if(u<0)n=l;else{if(u>e){i?r.push(a(i,l,e)):n&&r.push(a(n,l,0),a(n,l,e));break}n&&(r.push(a(n,l,0)),n=null),r.push(l),i=l}}return r}(u,"x"===r?n.getWidth():n.getHeight()),d=p.length;if(!d&&h)return u[0].coord<0?c[1]?c[1]:u[h-1].color:c[0]?c[0]:u[0].color;var f=p[0].coord-10,g=p[d-1].coord+10,y=g-f;if(y<.001)return"transparent";E(p,(function(t){t.offset=(t.coord-f)/y})),p.push({offset:d?p[d-1].offset:.5,color:c[1]||"transparent"}),p.unshift({offset:d?p[0].offset:.5,color:c[0]||"transparent"});var v=new Uu(0,0,0,0,p,!0);return v[r]=f,v[r+"2"]=g,v}}}function fS(t,e,n){var i=t.get("showAllSymbol"),r="auto"===i;if(!i||r){var o=n.getAxesByScale("ordinal")[0];if(o&&(!r||!function(t,e){var n=t.getExtent(),i=Math.abs(n[1]-n[0])/t.scale.count();isNaN(i)&&(i=0);for(var r=e.count(),o=Math.max(1,Math.round(r/5)),a=0;a<r;a+=o)if(1.5*Ww.getSymbolSize(e,a)[t.isHorizontal()?1:0]>i)return!1;return!0}(o,e))){var a=e.mapDimension(o.dim),s={};return E(o.getViewLabels(),(function(t){var e=o.scale.getRawOrdinalNumber(t.tickValue);s[e]=1})),function(t){return!s.hasOwnProperty(e.get(a,t))}}}}function gS(t,e){return[t[2*e],t[2*e+1]]}function yS(t){if(t.get(["endLabel","show"]))return!0;for(var e=0;e<js.length;e++)if(t.get([js[e],"endLabel","show"]))return!0;return!1}function vS(t,e,n,i){if(sS(e,"cartesian2d")){var r=i.getModel("endLabel"),o=r.get("valueAnimation"),a=i.getData(),s={lastFrameIndex:0},l=yS(i)?function(n,i){t._endLabelOnDuring(n,i,a,s,o,r,e)}:null,u=e.getBaseAxis().isHorizontal(),h=rS(e,n,i,(function(){var e=t._endLabel;e&&n&&null!=s.originalX&&e.attr({x:s.originalX,y:s.originalY})}),l);if(!i.get("clip",!0)){var c=h.shape,p=Math.max(c.width,c.height);u?(c.y-=p,c.height+=2*p):(c.x-=p,c.width+=2*p)}return l&&l(1,h),h}return oS(e,n,i)}var mS=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.init=function(){var t=new Cr,e=new Zw;this.group.add(e.group),this._symbolDraw=e,this._lineGroup=t},e.prototype.render=function(t,e,n){var i=this,r=t.coordinateSystem,o=this.group,a=t.getData(),s=t.getModel("lineStyle"),l=t.getModel("areaStyle"),u=a.getLayout("points")||[],h="polar"===r.type,c=this._coordSys,p=this._symbolDraw,d=this._polyline,f=this._polygon,g=this._lineGroup,y=t.get("animation"),v=!l.isEmpty(),m=l.get("origin"),x=jw(r,a,m),_=v&&function(t,e,n){if(!n.valueDim)return[];for(var i=e.count(),r=_x(2*i),o=0;o<i;o++){var a=qw(n,t,e,o);r[2*o]=a[0],r[2*o+1]=a[1]}return r}(r,a,x),b=t.get("showSymbol"),w=t.get("connectNulls"),S=b&&!h&&fS(t,a,r),M=this._data;M&&M.eachItemGraphicEl((function(t,e){t.__temp&&(o.remove(t),M.setItemGraphicEl(e,null))})),b||p.remove(),o.add(g);var I,T=!h&&t.get("step");r&&r.getArea&&t.get("clip",!0)&&(null!=(I=r.getArea()).width?(I.x-=.1,I.y-=.1,I.width+=.2,I.height+=.2):I.r0&&(I.r0-=.5,I.r+=.5)),this._clipShapeForSymbol=I;var C=dS(a,r,n)||a.getVisual("style")[a.getVisual("drawType")];if(d&&c.type===r.type&&T===this._step){v&&!f?f=this._newPolygon(u,_):f&&!v&&(g.remove(f),f=this._polygon=null),h||this._initOrUpdateEndLabel(t,r,cp(C));var D=g.getClipPath();if(D)rh(D,{shape:vS(this,r,!1,t).shape},t);else g.setClipPath(vS(this,r,!0,t));b&&p.updateData(a,{isIgnore:S,clipShape:I,disableAnimation:!0,getSymbolPoint:function(t){return[u[2*t],u[2*t+1]]}}),lS(this._stackedOnPoints,_)&&lS(this._points,u)||(y?this._doUpdateAnimation(a,_,r,n,T,m,w):(T&&(u=pS(u,r,T,w),_&&(_=pS(_,r,T,w))),d.setShape({points:u}),f&&f.setShape({points:u,stackedOnPoints:_})))}else b&&p.updateData(a,{isIgnore:S,clipShape:I,disableAnimation:!0,getSymbolPoint:function(t){return[u[2*t],u[2*t+1]]}}),y&&this._initSymbolLabelAnimation(a,r,I),T&&(u=pS(u,r,T,w),_&&(_=pS(_,r,T,w))),d=this._newPolyline(u),v&&(f=this._newPolygon(u,_)),h||this._initOrUpdateEndLabel(t,r,cp(C)),g.setClipPath(vS(this,r,!0,t));var A=t.getModel("emphasis"),L=A.get("focus"),P=A.get("blurScope"),O=A.get("disabled");(d.useStyle(k(s.getLineStyle(),{fill:"none",stroke:C,lineJoin:"bevel"})),zl(d,t,"lineStyle"),d.style.lineWidth>0&&"bolder"===t.get(["emphasis","lineStyle","width"]))&&(d.getState("emphasis").style.lineWidth=+d.style.lineWidth+1);Ws(d).seriesIndex=t.seriesIndex,Ol(d,L,P,O);var R=cS(t.get("smooth")),N=t.get("smoothMonotone");if(d.setShape({smooth:R,smoothMonotone:N,connectNulls:w}),f){var E=a.getCalculationInfo("stackedOnSeries"),z=0;f.useStyle(k(l.getAreaStyle(),{fill:C,opacity:.7,lineJoin:"bevel",decal:a.getVisual("style").decal})),E&&(z=cS(E.get("smooth"))),f.setShape({smooth:R,stackedOnSmooth:z,smoothMonotone:N,connectNulls:w}),zl(f,t,"areaStyle"),Ws(f).seriesIndex=t.seriesIndex,Ol(f,L,P,O)}var V=function(t){i._changePolyState(t)};a.eachItemGraphicEl((function(t){t&&(t.onHoverStateChange=V)})),this._polyline.onHoverStateChange=V,this._data=a,this._coordSys=r,this._stackedOnPoints=_,this._points=u,this._step=T,this._valueOrigin=m,t.get("triggerLineEvent")&&(this.packEventData(t,d),f&&this.packEventData(t,f))},e.prototype.packEventData=function(t,e){Ws(e).eventData={componentType:"series",componentSubType:"line",componentIndex:t.componentIndex,seriesIndex:t.seriesIndex,seriesName:t.name,seriesType:"line"}},e.prototype.highlight=function(t,e,n,i){var r=t.getData(),o=wo(r,i);if(this._changePolyState("emphasis"),!(o instanceof Array)&&null!=o&&o>=0){var a=r.getLayout("points"),s=r.getItemGraphicEl(o);if(!s){var l=a[2*o],u=a[2*o+1];if(isNaN(l)||isNaN(u))return;if(this._clipShapeForSymbol&&!this._clipShapeForSymbol.contain(l,u))return;var h=t.get("zlevel"),c=t.get("z");(s=new Ww(r,o)).x=l,s.y=u,s.setZ(h,c);var p=s.getSymbolPath().getTextContent();p&&(p.zlevel=h,p.z=c,p.z2=this._polyline.z2+1),s.__temp=!0,r.setItemGraphicEl(o,s),s.stopSymbolAnimation(!0),this.group.add(s)}s.highlight()}else mg.prototype.highlight.call(this,t,e,n,i)},e.prototype.downplay=function(t,e,n,i){var r=t.getData(),o=wo(r,i);if(this._changePolyState("normal"),null!=o&&o>=0){var a=r.getItemGraphicEl(o);a&&(a.__temp?(r.setItemGraphicEl(o,null),this.group.remove(a)):a.downplay())}else mg.prototype.downplay.call(this,t,e,n,i)},e.prototype._changePolyState=function(t){var e=this._polygon;fl(this._polyline,t),e&&fl(e,t)},e.prototype._newPolyline=function(t){var e=this._polyline;return e&&this._lineGroup.remove(e),e=new eS({shape:{points:t},segmentIgnoreThreshold:2,z2:10}),this._lineGroup.add(e),this._polyline=e,e},e.prototype._newPolygon=function(t,e){var n=this._polygon;return n&&this._lineGroup.remove(n),n=new iS({shape:{points:t,stackedOnPoints:e},segmentIgnoreThreshold:2}),this._lineGroup.add(n),this._polygon=n,n},e.prototype._initSymbolLabelAnimation=function(t,e,n){var i,r,o=e.getBaseAxis(),a=o.inverse;"cartesian2d"===e.type?(i=o.isHorizontal(),r=!1):"polar"===e.type&&(i="angle"===o.dim,r=!0);var s=t.hostModel,l=s.get("animationDuration");U(l)&&(l=l(null));var u=s.get("animationDelay")||0,h=U(u)?u(null):u;t.eachItemGraphicEl((function(t,o){var s=t;if(s){var c=[t.x,t.y],p=void 0,d=void 0,f=void 0;if(n)if(r){var g=n,y=e.pointToCoord(c);i?(p=g.startAngle,d=g.endAngle,f=-y[1]/180*Math.PI):(p=g.r0,d=g.r,f=y[0])}else{var v=n;i?(p=v.x,d=v.x+v.width,f=t.x):(p=v.y+v.height,d=v.y,f=t.y)}var m=d===p?0:(f-p)/(d-p);a&&(m=1-m);var x=U(u)?u(o):l*m+h,_=s.getSymbolPath(),b=_.getTextContent();s.attr({scaleX:0,scaleY:0}),s.animateTo({scaleX:1,scaleY:1},{duration:200,setToFinal:!0,delay:x}),b&&b.animateFrom({style:{opacity:0}},{duration:300,delay:x}),_.disableLabelAnimation=!0}}))},e.prototype._initOrUpdateEndLabel=function(t,e,n){var i=t.getModel("endLabel");if(yS(t)){var r=t.getData(),o=this._polyline,a=r.getLayout("points");if(!a)return o.removeTextContent(),void(this._endLabel=null);var s=this._endLabel;s||((s=this._endLabel=new As({z2:200})).ignoreClip=!0,o.setTextContent(this._endLabel),o.disableLabelAnimation=!0);var l=function(t){for(var e,n,i=t.length/2;i>0&&(e=t[2*i-2],n=t[2*i-1],isNaN(e)||isNaN(n));i--);return i-1}(a);l>=0&&(Wh(o,Hh(t,"endLabel"),{inheritColor:n,labelFetcher:t,labelDataIndex:l,defaultText:function(t,e,n){return null!=n?Gw(r,n):Fw(r,t)},enableTextSetter:!0},function(t,e){var n=e.getBaseAxis(),i=n.isHorizontal(),r=n.inverse,o=i?r?"right":"left":"center",a=i?"middle":r?"top":"bottom";return{normal:{align:t.get("align")||o,verticalAlign:t.get("verticalAlign")||a}}}(i,e)),o.textConfig.position=null)}else this._endLabel&&(this._polyline.removeTextContent(),this._endLabel=null)},e.prototype._endLabelOnDuring=function(t,e,n,i,r,o,a){var s=this._endLabel,l=this._polyline;if(s){t<1&&null==i.originalX&&(i.originalX=s.x,i.originalY=s.y);var u=n.getLayout("points"),h=n.hostModel,c=h.get("connectNulls"),p=o.get("precision"),d=o.get("distance")||0,f=a.getBaseAxis(),g=f.isHorizontal(),y=f.inverse,v=e.shape,m=y?g?v.x:v.y+v.height:g?v.x+v.width:v.y,x=(g?d:0)*(y?-1:1),_=(g?0:-d)*(y?-1:1),b=g?"x":"y",w=function(t,e,n){for(var i,r,o=t.length/2,a="x"===n?0:1,s=0,l=-1,u=0;u<o;u++)if(r=t[2*u+a],!isNaN(r)&&!isNaN(t[2*u+1-a]))if(0!==u){if(i<=e&&r>=e||i>=e&&r<=e){l=u;break}s=u,i=r}else i=r;return{range:[s,l],t:(e-i)/(r-i)}}(u,m,b),S=w.range,M=S[1]-S[0],I=void 0;if(M>=1){if(M>1&&!c){var T=gS(u,S[0]);s.attr({x:T[0]+x,y:T[1]+_}),r&&(I=h.getRawValue(S[0]))}else{(T=l.getPointOn(m,b))&&s.attr({x:T[0]+x,y:T[1]+_});var C=h.getRawValue(S[0]),D=h.getRawValue(S[1]);r&&(I=Po(n,p,C,D,w.t))}i.lastFrameIndex=S[0]}else{var A=1===t||i.lastFrameIndex>0?S[0]:0;T=gS(u,A);r&&(I=h.getRawValue(A)),s.attr({x:T[0]+x,y:T[1]+_})}r&&$h(s).setLabelText(I)}},e.prototype._doUpdateAnimation=function(t,e,n,i,r,o,a){var s=this._polyline,l=this._polygon,u=t.hostModel,h=function(t,e,n,i,r,o,a,s){for(var l=function(t,e){var n=[];return e.diff(t).add((function(t){n.push({cmd:"+",idx:t})})).update((function(t,e){n.push({cmd:"=",idx:e,idx1:t})})).remove((function(t){n.push({cmd:"-",idx:t})})).execute(),n}(t,e),u=[],h=[],c=[],p=[],d=[],f=[],g=[],y=jw(r,e,a),v=t.getLayout("points")||[],m=e.getLayout("points")||[],x=0;x<l.length;x++){var _=l[x],b=!0,w=void 0,S=void 0;switch(_.cmd){case"=":w=2*_.idx,S=2*_.idx1;var M=v[w],I=v[w+1],T=m[S],C=m[S+1];(isNaN(M)||isNaN(I))&&(M=T,I=C),u.push(M,I),h.push(T,C),c.push(n[w],n[w+1]),p.push(i[S],i[S+1]),g.push(e.getRawIndex(_.idx1));break;case"+":var D=_.idx,A=y.dataDimsForPoint,k=r.dataToPoint([e.get(A[0],D),e.get(A[1],D)]);S=2*D,u.push(k[0],k[1]),h.push(m[S],m[S+1]);var L=qw(y,r,e,D);c.push(L[0],L[1]),p.push(i[S],i[S+1]),g.push(e.getRawIndex(D));break;case"-":b=!1}b&&(d.push(_),f.push(f.length))}f.sort((function(t,e){return g[t]-g[e]}));var P=u.length,O=_x(P),R=_x(P),N=_x(P),E=_x(P),z=[];for(x=0;x<f.length;x++){var V=f[x],B=2*x,F=2*V;O[B]=u[F],O[B+1]=u[F+1],R[B]=h[F],R[B+1]=h[F+1],N[B]=c[F],N[B+1]=c[F+1],E[B]=p[F],E[B+1]=p[F+1],z[x]=d[V]}return{current:O,next:R,stackedOnCurrent:N,stackedOnNext:E,status:z}}(this._data,t,this._stackedOnPoints,e,this._coordSys,0,this._valueOrigin),c=h.current,p=h.stackedOnCurrent,d=h.next,f=h.stackedOnNext;if(r&&(c=pS(h.current,n,r,a),p=pS(h.stackedOnCurrent,n,r,a),d=pS(h.next,n,r,a),f=pS(h.stackedOnNext,n,r,a)),hS(c,d)>3e3||l&&hS(p,f)>3e3)return s.stopAnimation(),s.setShape({points:d}),void(l&&(l.stopAnimation(),l.setShape({points:d,stackedOnPoints:f})));s.shape.__points=h.current,s.shape.points=c;var g={shape:{points:d}};h.current!==c&&(g.shape.__points=h.next),s.stopAnimation(),ih(s,g,u),l&&(l.setShape({points:c,stackedOnPoints:p}),l.stopAnimation(),ih(l,{shape:{stackedOnPoints:f}},u),s.shape.points!==l.shape.points&&(l.shape.points=s.shape.points));for(var y=[],v=h.status,m=0;m<v.length;m++){if("="===v[m].cmd){var x=t.getItemGraphicEl(v[m].idx1);x&&y.push({el:x,ptIdx:m})}}s.animators&&s.animators.length&&s.animators[0].during((function(){l&&l.dirtyShape();for(var t=s.shape.__points,e=0;e<y.length;e++){var n=y[e].el,i=2*y[e].ptIdx;n.x=t[i],n.y=t[i+1],n.markRedraw()}}))},e.prototype.remove=function(t){var e=this.group,n=this._data;this._lineGroup.removeAll(),this._symbolDraw.remove(!0),n&&n.eachItemGraphicEl((function(t,i){t.__temp&&(e.remove(t),n.setItemGraphicEl(i,null))})),this._polyline=this._polygon=this._coordSys=this._points=this._stackedOnPoints=this._endLabel=this._data=null},e.type="line",e}(mg);function xS(t,e){return{seriesType:t,plan:gg(),reset:function(t){var n=t.getData(),i=t.coordinateSystem,r=t.pipelineContext,o=e||r.large;if(i){var a=z(i.dimensions,(function(t){return n.mapDimension(t)})).slice(0,2),s=a.length,l=n.getCalculationInfo("stackResultDimension");tx(n,a[0])&&(a[0]=l),tx(n,a[1])&&(a[1]=l);var u=n.getStore(),h=n.getDimensionIndex(a[0]),c=n.getDimensionIndex(a[1]);return s&&{progress:function(t,e){for(var n=t.end-t.start,r=o&&_x(n*s),a=[],l=[],p=t.start,d=0;p<t.end;p++){var f=void 0;if(1===s){var g=u.get(h,p);f=i.dataToPoint(g,null,l)}else a[0]=u.get(h,p),a[1]=u.get(c,p),f=i.dataToPoint(a,null,l);o?(r[d++]=f[0],r[d++]=f[1]):e.setItemLayout(p,f.slice())}o&&e.setLayout("points",r)}}}}}}var _S={average:function(t){for(var e=0,n=0,i=0;i<t.length;i++)isNaN(t[i])||(e+=t[i],n++);return 0===n?NaN:e/n},sum:function(t){for(var e=0,n=0;n<t.length;n++)e+=t[n]||0;return e},max:function(t){for(var e=-1/0,n=0;n<t.length;n++)t[n]>e&&(e=t[n]);return isFinite(e)?e:NaN},min:function(t){for(var e=1/0,n=0;n<t.length;n++)t[n]<e&&(e=t[n]);return isFinite(e)?e:NaN},nearest:function(t){return t[0]}},bS=function(t){return Math.round(t.length/2)};function wS(t){return{seriesType:t,reset:function(t,e,n){var i=t.getData(),r=t.get("sampling"),o=t.coordinateSystem,a=i.count();if(a>10&&"cartesian2d"===o.type&&r){var s=o.getBaseAxis(),l=o.getOtherAxis(s),u=s.getExtent(),h=n.getDevicePixelRatio(),c=Math.abs(u[1]-u[0])*(h||1),p=Math.round(a/c);if(isFinite(p)&&p>1){"lttb"===r&&t.setData(i.lttbDownSample(i.mapDimension(l.dim),1/p));var d=void 0;X(r)?d=_S[r]:U(r)&&(d=r),d&&t.setData(i.downSample(i.mapDimension(l.dim),1/p,d,bS))}}}}}var SS=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.getInitialData=function(t,e){return nx(null,this,{useEncodeDefaulter:!0})},e.prototype.getMarkerPosition=function(t){var e=this.coordinateSystem;if(e&&e.clampData){var n=e.dataToPoint(e.clampData(t)),i=this.getData(),r=i.getLayout("offset"),o=i.getLayout("size");return n[e.getBaseAxis().isHorizontal()?0:1]+=r+o/2,n}return[NaN,NaN]},e.type="series.__base_bar__",e.defaultOption={z:2,coordinateSystem:"cartesian2d",legendHoverLink:!0,barMinHeight:0,barMinAngle:0,large:!1,largeThreshold:400,progressive:3e3,progressiveChunkMode:"mod"},e}(ag);ag.registerClass(SS);var MS=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.getInitialData=function(){return nx(null,this,{useEncodeDefaulter:!0,createInvertedIndices:!!this.get("realtimeSort",!0)||null})},e.prototype.getProgressive=function(){return!!this.get("large")&&this.get("progressive")},e.prototype.getProgressiveThreshold=function(){var t=this.get("progressiveThreshold"),e=this.get("largeThreshold");return e>t&&(t=e),t},e.prototype.brushSelector=function(t,e,n){return n.rect(e.getItemLayout(t))},e.type="series.bar",e.dependencies=["grid","polar"],e.defaultOption=gc(SS.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}),e}(SS),IS=function(){this.cx=0,this.cy=0,this.r0=0,this.r=0,this.startAngle=0,this.endAngle=2*Math.PI,this.clockwise=!0},TS=function(t){function e(e){var n=t.call(this,e)||this;return n.type="sausage",n}return n(e,t),e.prototype.getDefaultShape=function(){return new IS},e.prototype.buildPath=function(t,e){var n=e.cx,i=e.cy,r=Math.max(e.r0||0,0),o=Math.max(e.r,0),a=.5*(o-r),s=r+a,l=e.startAngle,u=e.endAngle,h=e.clockwise,c=2*Math.PI,p=h?u-l<c:l-u<c;p||(l=u-(h?c:-c));var d=Math.cos(l),f=Math.sin(l),g=Math.cos(u),y=Math.sin(u);p?(t.moveTo(d*r+n,f*r+i),t.arc(d*s+n,f*s+i,a,-Math.PI+l,l,!h)):t.moveTo(d*o+n,f*o+i),t.arc(n,i,o,l,u,!h),t.arc(g*s+n,y*s+i,a,u-2*Math.PI,u-Math.PI,!h),0!==r&&t.arc(n,i,r,u,l,h)},e}(fs);function CS(t,e,n){return e*Math.sin(t)*(n?-1:1)}function DS(t,e,n){return e*Math.cos(t)*(n?1:-1)}var AS=Math.max,kS=Math.min;var LS=function(t){function e(){var n=t.call(this)||this;return n.type=e.type,n._isFirstFrame=!0,n}return n(e,t),e.prototype.render=function(t,e,n,i){this._model=t,this._removeOnRenderedListener(n),this._updateDrawMode(t);var r=t.get("coordinateSystem");("cartesian2d"===r||"polar"===r)&&(this._progressiveEls=null,this._isLargeDraw?this._renderLarge(t,e,n):this._renderNormal(t,e,n,i))},e.prototype.incrementalPrepareRender=function(t){this._clear(),this._updateDrawMode(t),this._updateLargeClip(t)},e.prototype.incrementalRender=function(t,e){this._progressiveEls=[],this._incrementalRenderLarge(t,e)},e.prototype.eachRendered=function(t){zh(this._progressiveEls||this.group,t)},e.prototype._updateDrawMode=function(t){var e=t.pipelineContext.large;null!=this._isLargeDraw&&e===this._isLargeDraw||(this._isLargeDraw=e,this._clear())},e.prototype._renderNormal=function(t,e,n,i){var r,o=this.group,a=t.getData(),s=this._data,l=t.coordinateSystem,u=l.getBaseAxis();"cartesian2d"===l.type?r=u.isHorizontal():"polar"===l.type&&(r="angle"===u.dim);var h=t.isAnimationEnabled()?t:null,c=function(t,e){var n=t.get("realtimeSort",!0),i=e.getBaseAxis();0;if(n&&"category"===i.type&&"cartesian2d"===e.type)return{baseAxis:i,otherAxis:e.getOtherAxis(i)}}(t,l);c&&this._enableRealtimeSort(c,a,n);var p=t.get("clip",!0)||c,d=function(t,e){var n=t.getArea&&t.getArea();if(sS(t,"cartesian2d")){var i=t.getBaseAxis();if("category"!==i.type||!i.onBand){var r=e.getLayout("bandWidth");i.isHorizontal()?(n.x-=r,n.width+=2*r):(n.y-=r,n.height+=2*r)}}return n}(l,a);o.removeClipPath();var f=t.get("roundCap",!0),g=t.get("showBackground",!0),y=t.getModel("backgroundStyle"),v=y.get("borderRadius")||0,m=[],x=this._backgroundEls,_=i&&i.isInitSort,b=i&&"changeAxisOrder"===i.type;function w(t){var e=BS[l.type](a,t),n=function(t,e,n){return new("polar"===t.type?Tu:Ts)({shape:XS(e,n,t),silent:!0,z2:0})}(l,r,e);return n.useStyle(y.getItemStyle()),"cartesian2d"===l.type&&n.setShape("r",v),m[t]=n,n}a.diff(s).add((function(e){var n=a.getItemModel(e),i=BS[l.type](a,e,n);if(g&&w(e),a.hasValue(e)&&VS[l.type](i)){var s=!1;p&&(s=PS[l.type](d,i));var y=OS[l.type](t,a,e,i,r,h,u.model,!1,f);c&&(y.forceLabelAnimation=!0),GS(y,a,e,n,i,t,r,"polar"===l.type),_?y.attr({shape:i}):c?RS(c,h,y,i,e,r,!1,!1):rh(y,{shape:i},t,e),a.setItemGraphicEl(e,y),o.add(y),y.ignore=s}})).update((function(e,n){var i=a.getItemModel(e),S=BS[l.type](a,e,i);if(g){var M=void 0;0===x.length?M=w(n):((M=x[n]).useStyle(y.getItemStyle()),"cartesian2d"===l.type&&M.setShape("r",v),m[e]=M);var I=BS[l.type](a,e);ih(M,{shape:XS(r,I,l)},h,e)}var T=s.getItemGraphicEl(n);if(a.hasValue(e)&&VS[l.type](S)){var C=!1;if(p&&(C=PS[l.type](d,S))&&o.remove(T),T?uh(T):T=OS[l.type](t,a,e,S,r,h,u.model,!!T,f),c&&(T.forceLabelAnimation=!0),b){var D=T.getTextContent();if(D){var A=$h(D);null!=A.prevValue&&(A.prevValue=A.value)}}else GS(T,a,e,i,S,t,r,"polar"===l.type);_?T.attr({shape:S}):c?RS(c,h,T,S,e,r,!0,b):ih(T,{shape:S},t,e,null),a.setItemGraphicEl(e,T),T.ignore=C,o.add(T)}else o.remove(T)})).remove((function(e){var n=s.getItemGraphicEl(e);n&&lh(n,t,e)})).execute();var S=this._backgroundGroup||(this._backgroundGroup=new Cr);S.removeAll();for(var M=0;M<m.length;++M)S.add(m[M]);o.add(S),this._backgroundEls=m,this._data=a},e.prototype._renderLarge=function(t,e,n){this._clear(),YS(t,this.group),this._updateLargeClip(t)},e.prototype._incrementalRenderLarge=function(t,e){this._removeBackground(),YS(e,this.group,this._progressiveEls,!0)},e.prototype._updateLargeClip=function(t){var e=t.get("clip",!0)&&aS(t.coordinateSystem,!1,t),n=this.group;e?n.setClipPath(e):n.removeClipPath()},e.prototype._enableRealtimeSort=function(t,e,n){var i=this;if(e.count()){var r=t.baseAxis;if(this._isFirstFrame)this._dispatchInitSort(e,t,n),this._isFirstFrame=!1;else{var o=function(t){var n=e.getItemGraphicEl(t),i=n&&n.shape;return i&&Math.abs(r.isHorizontal()?i.height:i.width)||0};this._onRendered=function(){i._updateSortWithinSameData(e,o,r,n)},n.getZr().on("rendered",this._onRendered)}}},e.prototype._dataSort=function(t,e,n){var i=[];return t.each(t.mapDimension(e.dim),(function(t,e){var r=n(e);r=null==r?NaN:r,i.push({dataIndex:e,mappedValue:r,ordinalNumber:t})})),i.sort((function(t,e){return e.mappedValue-t.mappedValue})),{ordinalNumbers:z(i,(function(t){return t.ordinalNumber}))}},e.prototype._isOrderChangedWithinSameData=function(t,e,n){for(var i=n.scale,r=t.mapDimension(n.dim),o=Number.MAX_VALUE,a=0,s=i.getOrdinalMeta().categories.length;a<s;++a){var l=t.rawIndexOf(r,i.getRawOrdinalNumber(a)),u=l<0?Number.MIN_VALUE:e(t.indexOfRawIndex(l));if(u>o)return!0;o=u}return!1},e.prototype._isOrderDifferentInView=function(t,e){for(var n=e.scale,i=n.getExtent(),r=Math.max(0,i[0]),o=Math.min(i[1],n.getOrdinalMeta().categories.length-1);r<=o;++r)if(t.ordinalNumbers[r]!==n.getRawOrdinalNumber(r))return!0},e.prototype._updateSortWithinSameData=function(t,e,n,i){if(this._isOrderChangedWithinSameData(t,e,n)){var r=this._dataSort(t,n,e);this._isOrderDifferentInView(r,n)&&(this._removeOnRenderedListener(i),i.dispatchAction({type:"changeAxisOrder",componentType:n.dim+"Axis",axisId:n.index,sortInfo:r}))}},e.prototype._dispatchInitSort=function(t,e,n){var i=e.baseAxis,r=this._dataSort(t,i,(function(n){return t.get(t.mapDimension(e.otherAxis.dim),n)}));n.dispatchAction({type:"changeAxisOrder",componentType:i.dim+"Axis",isInitSort:!0,axisId:i.index,sortInfo:r})},e.prototype.remove=function(t,e){this._clear(this._model),this._removeOnRenderedListener(e)},e.prototype.dispose=function(t,e){this._removeOnRenderedListener(e)},e.prototype._removeOnRenderedListener=function(t){this._onRendered&&(t.getZr().off("rendered",this._onRendered),this._onRendered=null)},e.prototype._clear=function(t){var e=this.group,n=this._data;t&&t.isAnimationEnabled()&&n&&!this._isLargeDraw?(this._removeBackground(),this._backgroundEls=[],n.eachItemGraphicEl((function(e){lh(e,t,Ws(e).dataIndex)}))):e.removeAll(),this._data=null,this._isFirstFrame=!0},e.prototype._removeBackground=function(){this.group.remove(this._backgroundGroup),this._backgroundGroup=null},e.type="bar",e}(mg),PS={cartesian2d:function(t,e){var n=e.width<0?-1:1,i=e.height<0?-1:1;n<0&&(e.x+=e.width,e.width=-e.width),i<0&&(e.y+=e.height,e.height=-e.height);var r=t.x+t.width,o=t.y+t.height,a=AS(e.x,t.x),s=kS(e.x+e.width,r),l=AS(e.y,t.y),u=kS(e.y+e.height,o),h=s<a,c=u<l;return e.x=h&&a>r?s:a,e.y=c&&l>o?u:l,e.width=h?0:s-a,e.height=c?0:u-l,n<0&&(e.x+=e.width,e.width=-e.width),i<0&&(e.y+=e.height,e.height=-e.height),h||c},polar:function(t,e){var n=e.r0<=e.r?1:-1;if(n<0){var i=e.r;e.r=e.r0,e.r0=i}var r=kS(e.r,t.r),o=AS(e.r0,t.r0);e.r=r,e.r0=o;var a=r-o<0;if(n<0){i=e.r;e.r=e.r0,e.r0=i}return a}},OS={cartesian2d:function(t,e,n,i,r,o,a,s,l){var u=new Ts({shape:A({},i),z2:1});(u.__dataIndex=n,u.name="item",o)&&(u.shape[r?"height":"width"]=0);return u},polar:function(t,e,n,i,r,o,a,s,l){var u=!r&&l?TS:Tu,h=new u({shape:i,z2:1});h.name="item";var c,p,d=FS(r);if(h.calculateTextPosition=(c=d,p=({isRoundCap:u===TS}||{}).isRoundCap,function(t,e,n){var i=e.position;if(!i||i instanceof Array)return yr(t,e,n);var r=c(i),o=null!=e.distance?e.distance:5,a=this.shape,s=a.cx,l=a.cy,u=a.r,h=a.r0,d=(u+h)/2,f=a.startAngle,g=a.endAngle,y=(f+g)/2,v=p?Math.abs(u-h)/2:0,m=Math.cos,x=Math.sin,_=s+u*m(f),b=l+u*x(f),w="left",S="top";switch(r){case"startArc":_=s+(h-o)*m(y),b=l+(h-o)*x(y),w="center",S="top";break;case"insideStartArc":_=s+(h+o)*m(y),b=l+(h+o)*x(y),w="center",S="bottom";break;case"startAngle":_=s+d*m(f)+CS(f,o+v,!1),b=l+d*x(f)+DS(f,o+v,!1),w="right",S="middle";break;case"insideStartAngle":_=s+d*m(f)+CS(f,-o+v,!1),b=l+d*x(f)+DS(f,-o+v,!1),w="left",S="middle";break;case"middle":_=s+d*m(y),b=l+d*x(y),w="center",S="middle";break;case"endArc":_=s+(u+o)*m(y),b=l+(u+o)*x(y),w="center",S="bottom";break;case"insideEndArc":_=s+(u-o)*m(y),b=l+(u-o)*x(y),w="center",S="top";break;case"endAngle":_=s+d*m(g)+CS(g,o+v,!0),b=l+d*x(g)+DS(g,o+v,!0),w="left",S="middle";break;case"insideEndAngle":_=s+d*m(g)+CS(g,-o+v,!0),b=l+d*x(g)+DS(g,-o+v,!0),w="right",S="middle";break;default:return yr(t,e,n)}return(t=t||{}).x=_,t.y=b,t.align=w,t.verticalAlign=S,t}),o){var f=r?"r":"endAngle",g={};h.shape[f]=r?0:i.startAngle,g[f]=i[f],(s?ih:rh)(h,{shape:g},o)}return h}};function RS(t,e,n,i,r,o,a,s){var l,u;o?(u={x:i.x,width:i.width},l={y:i.y,height:i.height}):(u={y:i.y,height:i.height},l={x:i.x,width:i.width}),s||(a?ih:rh)(n,{shape:l},e,r,null),(a?ih:rh)(n,{shape:u},e?t.baseAxis.model:null,r)}function NS(t,e){for(var n=0;n<e.length;n++)if(!isFinite(t[e[n]]))return!0;return!1}var ES=["x","y","width","height"],zS=["cx","cy","r","startAngle","endAngle"],VS={cartesian2d:function(t){return!NS(t,ES)},polar:function(t){return!NS(t,zS)}},BS={cartesian2d:function(t,e,n){var i=t.getItemLayout(e),r=n?function(t,e){var n=t.get(["itemStyle","borderColor"]);if(!n||"none"===n)return 0;var i=t.get(["itemStyle","borderWidth"])||0,r=isNaN(e.width)?Number.MAX_VALUE:Math.abs(e.width),o=isNaN(e.height)?Number.MAX_VALUE:Math.abs(e.height);return Math.min(i,r,o)}(n,i):0,o=i.width>0?1:-1,a=i.height>0?1:-1;return{x:i.x+o*r/2,y:i.y+a*r/2,width:i.width-o*r,height:i.height-a*r}},polar:function(t,e,n){var i=t.getItemLayout(e);return{cx:i.cx,cy:i.cy,r0:i.r0,r:i.r,startAngle:i.startAngle,endAngle:i.endAngle,clockwise:i.clockwise}}};function FS(t){return function(t){var e=t?"Arc":"Angle";return function(t){switch(t){case"start":case"insideStart":case"end":case"insideEnd":return t+e;default:return t}}}(t)}function GS(t,e,n,i,r,o,a,s){var l=e.getItemVisual(n,"style");s||t.setShape("r",i.get(["itemStyle","borderRadius"])||0),t.useStyle(l);var u=i.getShallow("cursor");u&&t.attr("cursor",u);var h=s?a?r.r>=r.r0?"endArc":"startArc":r.endAngle>=r.startAngle?"endAngle":"startAngle":a?r.height>=0?"bottom":"top":r.width>=0?"right":"left",c=Hh(i);Wh(t,c,{labelFetcher:o,labelDataIndex:n,defaultText:Fw(o.getData(),n),inheritColor:l.fill,defaultOpacity:l.opacity,defaultOutsidePosition:h});var p=t.getTextContent();if(s&&p){var d=i.get(["label","position"]);t.textConfig.inside="middle"===d||null,function(t,e,n,i){if(j(i))t.setTextConfig({rotation:i});else if(Y(e))t.setTextConfig({rotation:0});else{var r,o=t.shape,a=o.clockwise?o.startAngle:o.endAngle,s=o.clockwise?o.endAngle:o.startAngle,l=(a+s)/2,u=n(e);switch(u){case"startArc":case"insideStartArc":case"middle":case"insideEndArc":case"endArc":r=l;break;case"startAngle":case"insideStartAngle":r=a;break;case"endAngle":case"insideEndAngle":r=s;break;default:return void t.setTextConfig({rotation:0})}var h=1.5*Math.PI-r;"middle"===u&&h>Math.PI/2&&h<1.5*Math.PI&&(h-=Math.PI),t.setTextConfig({rotation:h})}}(t,"outside"===d?h:d,FS(a),i.get(["label","rotate"]))}Jh(p,c,o.getRawValue(n),(function(t){return Gw(e,t)}));var f=i.getModel(["emphasis"]);Ol(t,f.get("focus"),f.get("blurScope"),f.get("disabled")),zl(t,i),function(t){return null!=t.startAngle&&null!=t.endAngle&&t.startAngle===t.endAngle}(r)&&(t.style.fill="none",t.style.stroke="none",E(t.states,(function(t){t.style&&(t.style.fill=t.style.stroke="none")})))}var WS=function(){},HS=function(t){function e(e){var n=t.call(this,e)||this;return n.type="largeBar",n}return n(e,t),e.prototype.getDefaultShape=function(){return new WS},e.prototype.buildPath=function(t,e){for(var n=e.points,i=this.baseDimIdx,r=1-this.baseDimIdx,o=[],a=[],s=this.barWidth,l=0;l<n.length;l+=3)a[i]=s,a[r]=n[l+2],o[i]=n[l+i],o[r]=n[l+r],t.rect(o[0],o[1],a[0],a[1])},e}(fs);function YS(t,e,n,i){var r=t.getData(),o=r.getLayout("valueAxisHorizontal")?1:0,a=r.getLayout("largeDataIndices"),s=r.getLayout("size"),l=t.getModel("backgroundStyle"),u=r.getLayout("largeBackgroundPoints");if(u){var h=new HS({shape:{points:u},incremental:!!i,silent:!0,z2:0});h.baseDimIdx=o,h.largeDataIndices=a,h.barWidth=s,h.useStyle(l.getItemStyle()),e.add(h),n&&n.push(h)}var c=new HS({shape:{points:r.getLayout("largePoints")},incremental:!!i,z2:1});c.baseDimIdx=o,c.largeDataIndices=a,c.barWidth=s,e.add(c),c.useStyle(r.getVisual("style")),Ws(c).seriesIndex=t.seriesIndex,t.get("silent")||(c.on("mousedown",US),c.on("mousemove",US)),n&&n.push(c)}var US=Cg((function(t){var e=function(t,e,n){for(var i=t.baseDimIdx,r=1-i,o=t.shape.points,a=t.largeDataIndices,s=[],l=[],u=t.barWidth,h=0,c=o.length/3;h<c;h++){var p=3*h;if(l[i]=u,l[r]=o[p+2],s[i]=o[p+i],s[r]=o[p+r],l[r]<0&&(s[r]+=l[r],l[r]=-l[r]),e>=s[0]&&e<=s[0]+l[0]&&n>=s[1]&&n<=s[1]+l[1])return a[h]}return-1}(this,t.offsetX,t.offsetY);Ws(this).dataIndex=e>=0?e:null}),30,!1);function XS(t,e,n){if(sS(n,"cartesian2d")){var i=e,r=n.getArea();return{x:t?i.x:r.x,y:t?r.y:i.y,width:t?i.width:r.width,height:t?r.height:i.height}}var o=e;return{cx:(r=n.getArea()).cx,cy:r.cy,r0:t?r.r0:o.r0,r:t?r.r:o.r,startAngle:t?o.startAngle:0,endAngle:t?o.endAngle:2*Math.PI}}var ZS=2*Math.PI,jS=Math.PI/180;function qS(t,e){return mp(t.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()})}function KS(t,e){var n=qS(t,e),i=t.get("center"),r=t.get("radius");Y(r)||(r=[0,r]),Y(i)||(i=[i,i]);var o=Er(n.width,e.getWidth()),a=Er(n.height,e.getHeight()),s=Math.min(o,a);return{cx:Er(i[0],o)+n.x,cy:Er(i[1],a)+n.y,r0:Er(r[0],s/2),r:Er(r[1],s/2)}}function $S(t,e,n){e.eachSeriesByType(t,(function(t){var e=t.getData(),i=e.mapDimension("value"),r=qS(t,n),o=KS(t,n),a=o.cx,s=o.cy,l=o.r,u=o.r0,h=-t.get("startAngle")*jS,c=t.get("minAngle")*jS,p=0;e.each(i,(function(t){!isNaN(t)&&p++}));var d=e.getSum(i),f=Math.PI/(d||p)*2,g=t.get("clockwise"),y=t.get("roseType"),v=t.get("stillShowZeroSum"),m=e.getDataExtent(i);m[0]=0;var x=ZS,_=0,b=h,w=g?1:-1;if(e.setLayout({viewRect:r,r:l}),e.each(i,(function(t,n){var i;if(isNaN(t))e.setItemLayout(n,{angle:NaN,startAngle:NaN,endAngle:NaN,clockwise:g,cx:a,cy:s,r0:u,r:y?NaN:l});else{(i="area"!==y?0===d&&v?f:t*f:ZS/p)<c?(i=c,x-=c):_+=t;var r=b+w*i;e.setItemLayout(n,{angle:i,startAngle:b,endAngle:r,clockwise:g,cx:a,cy:s,r0:u,r:y?Nr(t,m,[u,l]):l}),b=r}})),x<ZS&&p)if(x<=.001){var S=ZS/p;e.each(i,(function(t,n){if(!isNaN(t)){var i=e.getItemLayout(n);i.angle=S,i.startAngle=h+w*n*S,i.endAngle=h+w*(n+1)*S}}))}else f=x/_,b=h,e.each(i,(function(t,n){if(!isNaN(t)){var i=e.getItemLayout(n),r=i.angle===c?c:t*f;i.startAngle=b,i.endAngle=b+w*r,b+=w*r}}))}))}function JS(t){return{seriesType:t,reset:function(t,e){var n=e.findComponents({mainType:"legend"});if(n&&n.length){var i=t.getData();i.filterSelf((function(t){for(var e=i.getName(t),r=0;r<n.length;r++)if(!n[r].isSelected(e))return!1;return!0}))}}}}var QS=Math.PI/180;function tM(t,e,n,i,r,o,a,s,l,u){if(!(t.length<2)){for(var h=t.length,c=0;c<h;c++)if("outer"===t[c].position&&"labelLine"===t[c].labelAlignTo){var p=t[c].label.x-u;t[c].linePoints[1][0]+=p,t[c].label.x=u}gb(t,l,l+a)&&function(t){for(var o={list:[],maxY:0},a={list:[],maxY:0},s=0;s<t.length;s++)if("none"===t[s].labelAlignTo){var l=t[s],u=l.label.y>n?a:o,h=Math.abs(l.label.y-n);if(h>=u.maxY){var c=l.label.x-e-l.len2*r,p=i+l.len,f=Math.abs(c)<p?Math.sqrt(h*h/(1-c*c/p/p)):p;u.rB=f,u.maxY=h}u.list.push(l)}d(o),d(a)}(t)}function d(t){for(var o=t.rB,a=o*o,s=0;s<t.list.length;s++){var l=t.list[s],u=Math.abs(l.label.y-n),h=i+l.len,c=h*h,p=Math.sqrt((1-Math.abs(u*u/a))*c),d=e+(p+l.len2)*r,f=d-l.label.x;eM(l,l.targetTextWidth-f*r,!0),l.label.x=d}}}function eM(t,e,n){if(void 0===n&&(n=!1),null==t.labelStyleWidth){var i=t.label,r=i.style,o=t.rect,a=r.backgroundColor,s=r.padding,l=s?s[1]+s[3]:0,u=r.overflow,h=o.width+(a?0:l);if(e<h||n){var c=o.height;if(u&&u.match("break")){i.setStyle("backgroundColor",null),i.setStyle("width",e-l);var p=i.getBoundingRect();i.setStyle("width",Math.ceil(p.width)),i.setStyle("backgroundColor",a)}else{var d=e-l,f=e<h?d:n?d>t.unconstrainedWidth?null:d:null;i.setStyle("width",f)}var g=i.getBoundingRect();o.width=g.width;var y=(i.style.margin||0)+2.1;o.height=g.height+y,o.y-=(o.height-c)/2}}}function nM(t){return"center"===t.position}function iM(t){var e,n,i=t.getData(),r=[],o=!1,a=(t.get("minShowLabelAngle")||0)*QS,s=i.getLayout("viewRect"),l=i.getLayout("r"),u=s.width,h=s.x,c=s.y,p=s.height;function d(t){t.ignore=!0}i.each((function(t){var s=i.getItemGraphicEl(t),c=s.shape,p=s.getTextContent(),f=s.getTextGuideLine(),g=i.getItemModel(t),y=g.getModel("label"),v=y.get("position")||g.get(["emphasis","label","position"]),m=y.get("distanceToLabelLine"),x=y.get("alignTo"),_=Er(y.get("edgeDistance"),u),b=y.get("bleedMargin"),w=g.getModel("labelLine"),S=w.get("length");S=Er(S,u);var M=w.get("length2");if(M=Er(M,u),Math.abs(c.endAngle-c.startAngle)<a)return E(p.states,d),void(p.ignore=!0);if(function(t){if(!t.ignore)return!0;for(var e in t.states)if(!1===t.states[e].ignore)return!0;return!1}(p)){var I,T,C,D,A=(c.startAngle+c.endAngle)/2,k=Math.cos(A),L=Math.sin(A);e=c.cx,n=c.cy;var P="inside"===v||"inner"===v;if("center"===v)I=c.cx,T=c.cy,D="center";else{var O=(P?(c.r+c.r0)/2*k:c.r*k)+e,R=(P?(c.r+c.r0)/2*L:c.r*L)+n;if(I=O+3*k,T=R+3*L,!P){var N=O+k*(S+l-c.r),z=R+L*(S+l-c.r),V=N+(k<0?-1:1)*M;I="edge"===x?k<0?h+_:h+u-_:V+(k<0?-m:m),T=z,C=[[O,R],[N,z],[V,z]]}D=P?"center":"edge"===x?k>0?"right":"left":k>0?"left":"right"}var B=Math.PI,F=0,G=y.get("rotate");if(j(G))F=G*(B/180);else if("center"===v)F=0;else if("radial"===G||!0===G){F=k<0?-A+B:-A}else if("tangential"===G&&"outside"!==v&&"outer"!==v){var W=Math.atan2(k,L);W<0&&(W=2*B+W),L>0&&(W=B+W),F=W-B}if(o=!!F,p.x=I,p.y=T,p.rotation=F,p.setStyle({verticalAlign:"middle"}),P){p.setStyle({align:D});var H=p.states.select;H&&(H.x+=p.x,H.y+=p.y)}else{var Y=p.getBoundingRect().clone();Y.applyTransform(p.getComputedTransform());var U=(p.style.margin||0)+2.1;Y.y-=U/2,Y.height+=U,r.push({label:p,labelLine:f,position:v,len:S,len2:M,minTurnAngle:w.get("minTurnAngle"),maxSurfaceAngle:w.get("maxSurfaceAngle"),surfaceNormal:new Ji(k,L),linePoints:C,textAlign:D,labelDistance:m,labelAlignTo:x,edgeDistance:_,bleedMargin:b,rect:Y,unconstrainedWidth:Y.width,labelStyleWidth:p.style.width})}s.setTextConfig({inside:P})}})),!o&&t.get("avoidLabelOverlap")&&function(t,e,n,i,r,o,a,s){for(var l=[],u=[],h=Number.MAX_VALUE,c=-Number.MAX_VALUE,p=0;p<t.length;p++){var d=t[p].label;nM(t[p])||(d.x<e?(h=Math.min(h,d.x),l.push(t[p])):(c=Math.max(c,d.x),u.push(t[p])))}for(p=0;p<t.length;p++)if(!nM(y=t[p])&&y.linePoints){if(null!=y.labelStyleWidth)continue;d=y.label;var f=y.linePoints,g=void 0;g="edge"===y.labelAlignTo?d.x<e?f[2][0]-y.labelDistance-a-y.edgeDistance:a+r-y.edgeDistance-f[2][0]-y.labelDistance:"labelLine"===y.labelAlignTo?d.x<e?h-a-y.bleedMargin:a+r-c-y.bleedMargin:d.x<e?d.x-a-y.bleedMargin:a+r-d.x-y.bleedMargin,y.targetTextWidth=g,eM(y,g)}for(tM(u,e,n,i,1,0,o,0,s,c),tM(l,e,n,i,-1,0,o,0,s,h),p=0;p<t.length;p++){var y;if(!nM(y=t[p])&&y.linePoints){d=y.label,f=y.linePoints;var v="edge"===y.labelAlignTo,m=d.style.padding,x=m?m[1]+m[3]:0,_=d.style.backgroundColor?0:x,b=y.rect.width+_,w=f[1][0]-f[2][0];v?d.x<e?f[2][0]=a+y.edgeDistance+b+y.labelDistance:f[2][0]=a+r-y.edgeDistance-b-y.labelDistance:(d.x<e?f[2][0]=d.x+y.labelDistance:f[2][0]=d.x-y.labelDistance,f[1][0]=f[2][0]+w),f[1][1]=f[2][1]=d.y}}}(r,e,n,l,u,p,h,c);for(var f=0;f<r.length;f++){var g=r[f],y=g.label,v=g.labelLine,m=isNaN(y.x)||isNaN(y.y);if(y){y.setStyle({align:g.textAlign}),m&&(E(y.states,d),y.ignore=!0);var x=y.states.select;x&&(x.x+=y.x,x.y+=y.y)}if(v){var _=g.linePoints;m||!_?(E(v.states,d),v.ignore=!0):(sb(_,g.minTurnAngle),lb(_,g.surfaceNormal,g.maxSurfaceAngle),v.setShape({points:_}),y.__hostTarget.textGuideLineConfig={anchor:new Ji(_[0][0],_[0][1])})}}}function rM(t,e,n){var i=t.get("borderRadius");if(null==i)return n?{cornerRadius:0}:null;Y(i)||(i=[i,i,i,i]);var r=Math.abs(e.r||0-e.r0||0);return{cornerRadius:z(i,(function(t){return gr(t,r)}))}}var oM=function(t){function e(e,n,i){var r=t.call(this)||this;r.z2=2;var o=new As;return r.setTextContent(o),r.updateData(e,n,i,!0),r}return n(e,t),e.prototype.updateData=function(t,e,n,i){var r=this,o=t.hostModel,a=t.getItemModel(e),s=a.getModel("emphasis"),l=t.getItemLayout(e),u=A(rM(a.getModel("itemStyle"),l,!0),l);if(isNaN(u.startAngle))r.setShape(u);else{if(i){r.setShape(u);var h=o.getShallow("animationType");o.ecModel.ssr?(rh(r,{scaleX:0,scaleY:0},o,{dataIndex:e,isFrom:!0}),r.originX=u.cx,r.originY=u.cy):"scale"===h?(r.shape.r=l.r0,rh(r,{shape:{r:l.r}},o,e)):null!=n?(r.setShape({startAngle:n,endAngle:n}),rh(r,{shape:{startAngle:l.startAngle,endAngle:l.endAngle}},o,e)):(r.shape.endAngle=l.startAngle,ih(r,{shape:{endAngle:l.endAngle}},o,e))}else uh(r),ih(r,{shape:u},o,e);r.useStyle(t.getItemVisual(e,"style")),zl(r,a);var c=(l.startAngle+l.endAngle)/2,p=o.get("selectedOffset"),d=Math.cos(c)*p,f=Math.sin(c)*p,g=a.getShallow("cursor");g&&r.attr("cursor",g),this._updateLabel(o,t,e),r.ensureState("emphasis").shape=A({r:l.r+(s.get("scale")&&s.get("scaleSize")||0)},rM(s.getModel("itemStyle"),l)),A(r.ensureState("select"),{x:d,y:f,shape:rM(a.getModel(["select","itemStyle"]),l)}),A(r.ensureState("blur"),{shape:rM(a.getModel(["blur","itemStyle"]),l)});var y=r.getTextGuideLine(),v=r.getTextContent();y&&A(y.ensureState("select"),{x:d,y:f}),A(v.ensureState("select"),{x:d,y:f}),Ol(this,s.get("focus"),s.get("blurScope"),s.get("disabled"))}},e.prototype._updateLabel=function(t,e,n){var i=this,r=e.getItemModel(n),o=r.getModel("labelLine"),a=e.getItemVisual(n,"style"),s=a&&a.fill,l=a&&a.opacity;Wh(i,Hh(r),{labelFetcher:e.hostModel,labelDataIndex:n,inheritColor:s,defaultOpacity:l,defaultText:t.getFormattedLabel(n,"normal")||e.getName(n)});var u=i.getTextContent();i.setTextConfig({position:null,rotation:null}),u.attr({z2:10});var h=t.get(["label","position"]);if("outside"!==h&&"outer"!==h)i.removeTextGuideLine();else{var c=this.getTextGuideLine();c||(c=new Ou,this.setTextGuideLine(c)),cb(this,pb(r),{stroke:s,opacity:ot(o.get(["lineStyle","opacity"]),l,1)})}},e}(Tu),aM=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.ignoreLabelLineUpdate=!0,e}return n(e,t),e.prototype.render=function(t,e,n,i){var r,o=t.getData(),a=this._data,s=this.group;if(!a&&o.count()>0){for(var l=o.getItemLayout(0),u=1;isNaN(l&&l.startAngle)&&u<o.count();++u)l=o.getItemLayout(u);l&&(r=l.startAngle)}if(this._emptyCircleSector&&s.remove(this._emptyCircleSector),0===o.count()&&t.get("showEmptyCircle")){var h=new Tu({shape:KS(t,n)});h.useStyle(t.getModel("emptyCircleStyle").getItemStyle()),this._emptyCircleSector=h,s.add(h)}o.diff(a).add((function(t){var e=new oM(o,t,r);o.setItemGraphicEl(t,e),s.add(e)})).update((function(t,e){var n=a.getItemGraphicEl(e);n.updateData(o,t,r),n.off("click"),s.add(n),o.setItemGraphicEl(t,n)})).remove((function(e){lh(a.getItemGraphicEl(e),t,e)})).execute(),iM(t),"expansion"!==t.get("animationTypeUpdate")&&(this._data=o)},e.prototype.dispose=function(){},e.prototype.containPoint=function(t,e){var n=e.getData().getItemLayout(0);if(n){var i=t[0]-n.cx,r=t[1]-n.cy,o=Math.sqrt(i*i+r*r);return o<=n.r&&o>=n.r0}},e.type="pie",e}(mg);function sM(t,e,n){e=Y(e)&&{coordDimensions:e}||A({encodeDefine:t.getEncode()},e);var i=t.getSource(),r=jm(i,e).dimensions,o=new Zm(r,t);return o.initData(i,n),o}var lM=function(){function t(t,e){this._getDataWithEncodedVisual=t,this._getRawData=e}return t.prototype.getAllNames=function(){var t=this._getRawData();return t.mapArray(t.getName)},t.prototype.containName=function(t){return this._getRawData().indexOfName(t)>=0},t.prototype.indexOfName=function(t){return this._getDataWithEncodedVisual().indexOfName(t)},t.prototype.getItemVisual=function(t,e){return this._getDataWithEncodedVisual().getItemVisual(t,e)},t}(),uM=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.init=function(e){t.prototype.init.apply(this,arguments),this.legendVisualProvider=new lM(W(this.getData,this),W(this.getRawData,this)),this._defaultLabelLine(e)},e.prototype.mergeOption=function(){t.prototype.mergeOption.apply(this,arguments)},e.prototype.getInitialData=function(){return sM(this,{coordDimensions:["value"],encodeDefaulter:H(Hp,this)})},e.prototype.getDataParams=function(e){var n=this.getData(),i=t.prototype.getDataParams.call(this,e),r=[];return n.each(n.mapDimension("value"),(function(t){r.push(t)})),i.percent=Wr(r,e,n.hostModel.get("percentPrecision")),i.$vars.push("percent"),i},e.prototype._defaultLabelLine=function(t){co(t,"labelLine",["show"]);var e=t.labelLine,n=t.emphasis.labelLine;e.show=e.show&&t.label.show,n.show=n.show&&t.emphasis.label.show},e.type="series.pie",e.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"},e}(ag);var hM=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.hasSymbolVisual=!0,n}return n(e,t),e.prototype.getInitialData=function(t,e){return nx(null,this,{useEncodeDefaulter:!0})},e.prototype.getProgressive=function(){var t=this.option.progressive;return null==t?this.option.large?5e3:this.get("progressive"):t},e.prototype.getProgressiveThreshold=function(){var t=this.option.progressiveThreshold;return null==t?this.option.large?1e4:this.get("progressiveThreshold"):t},e.prototype.brushSelector=function(t,e,n){return n.point(e.getItemLayout(t))},e.prototype.getZLevelKey=function(){return this.getData().count()>this.getProgressiveThreshold()?this.id:""},e.type="series.scatter",e.dependencies=["grid","polar","geo","singleAxis","calendar"],e.defaultOption={coordinateSystem:"cartesian2d",z:2,legendHoverLink:!0,symbolSize:10,large:!1,largeThreshold:2e3,itemStyle:{opacity:.8},emphasis:{scale:!0},clip:!0,select:{itemStyle:{borderColor:"#212121"}},universalTransition:{divideShape:"clone"}},e}(ag),cM=function(){},pM=function(t){function e(e){var n=t.call(this,e)||this;return n._off=0,n.hoverDataIdx=-1,n}return n(e,t),e.prototype.getDefaultShape=function(){return new cM},e.prototype.reset=function(){this.notClear=!1,this._off=0},e.prototype.buildPath=function(t,e){var n,i=e.points,r=e.size,o=this.symbolProxy,a=o.shape,s=t.getContext?t.getContext():t,l=s&&r[0]<4,u=this.softClipShape;if(l)this._ctx=s;else{for(this._ctx=null,n=this._off;n<i.length;){var h=i[n++],c=i[n++];isNaN(h)||isNaN(c)||(u&&!u.contain(h,c)||(a.x=h-r[0]/2,a.y=c-r[1]/2,a.width=r[0],a.height=r[1],o.buildPath(t,a,!0)))}this.incremental&&(this._off=n,this.notClear=!0)}},e.prototype.afterBrush=function(){var t,e=this.shape,n=e.points,i=e.size,r=this._ctx,o=this.softClipShape;if(r){for(t=this._off;t<n.length;){var a=n[t++],s=n[t++];isNaN(a)||isNaN(s)||(o&&!o.contain(a,s)||r.fillRect(a-i[0]/2,s-i[1]/2,i[0],i[1]))}this.incremental&&(this._off=t,this.notClear=!0)}},e.prototype.findDataIndex=function(t,e){for(var n=this.shape,i=n.points,r=n.size,o=Math.max(r[0],4),a=Math.max(r[1],4),s=i.length/2-1;s>=0;s--){var l=2*s,u=i[l]-o/2,h=i[l+1]-a/2;if(t>=u&&e>=h&&t<=u+o&&e<=h+a)return s}return-1},e.prototype.contain=function(t,e){var n=this.transformCoordToLocal(t,e),i=this.getBoundingRect();return t=n[0],e=n[1],i.contain(t,e)?(this.hoverDataIdx=this.findDataIndex(t,e))>=0:(this.hoverDataIdx=-1,!1)},e.prototype.getBoundingRect=function(){var t=this._rect;if(!t){for(var e=this.shape,n=e.points,i=e.size,r=i[0],o=i[1],a=1/0,s=1/0,l=-1/0,u=-1/0,h=0;h<n.length;){var c=n[h++],p=n[h++];a=Math.min(c,a),l=Math.max(c,l),s=Math.min(p,s),u=Math.max(p,u)}t=this._rect=new sr(a-r/2,s-o/2,l-a+r,u-s+o)}return t},e}(fs),dM=function(){function t(){this.group=new Cr}return t.prototype.updateData=function(t,e){this._clear();var n=this._create();n.setShape({points:t.getLayout("points")}),this._setCommon(n,t,e)},t.prototype.updateLayout=function(t){var e=t.getLayout("points");this.group.eachChild((function(t){if(null!=t.startIndex){var n=2*(t.endIndex-t.startIndex),i=4*t.startIndex*2;e=new Float32Array(e.buffer,i,n)}t.setShape("points",e),t.reset()}))},t.prototype.incrementalPrepareUpdate=function(t){this._clear()},t.prototype.incrementalUpdate=function(t,e,n){var i=this._newAdded[0],r=e.getLayout("points"),o=i&&i.shape.points;if(o&&o.length<2e4){var a=o.length,s=new Float32Array(a+r.length);s.set(o),s.set(r,a),i.endIndex=t.end,i.setShape({points:s})}else{this._newAdded=[];var l=this._create();l.startIndex=t.start,l.endIndex=t.end,l.incremental=!0,l.setShape({points:r}),this._setCommon(l,e,n)}},t.prototype.eachRendered=function(t){this._newAdded[0]&&t(this._newAdded[0])},t.prototype._create=function(){var t=new pM({cursor:"default"});return this.group.add(t),this._newAdded.push(t),t},t.prototype._setCommon=function(t,e,n){var i=e.hostModel;n=n||{};var r=e.getVisual("symbolSize");t.setShape("size",r instanceof Array?r:[r,r]),t.softClipShape=n.clipShape||null,t.symbolProxy=ky(e.getVisual("symbol"),0,0,0,0),t.setColor=t.symbolProxy.setColor;var o=t.shape.size[0]<4;t.useStyle(i.getModel("itemStyle").getItemStyle(o?["color","shadowBlur","shadowColor"]:["color"]));var a=e.getVisual("style"),s=a&&a.fill;s&&t.setColor(s);var l=Ws(t);l.seriesIndex=i.seriesIndex,t.on("mousemove",(function(e){l.dataIndex=null;var n=t.hoverDataIdx;n>=0&&(l.dataIndex=n+(t.startIndex||0))}))},t.prototype.remove=function(){this._clear()},t.prototype._clear=function(){this._newAdded=[],this.group.removeAll()},t}(),fM=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){var i=t.getData();this._updateSymbolDraw(i,t).updateData(i,{clipShape:this._getClipShape(t)}),this._finished=!0},e.prototype.incrementalPrepareRender=function(t,e,n){var i=t.getData();this._updateSymbolDraw(i,t).incrementalPrepareUpdate(i),this._finished=!1},e.prototype.incrementalRender=function(t,e,n){this._symbolDraw.incrementalUpdate(t,e.getData(),{clipShape:this._getClipShape(e)}),this._finished=t.end===e.getData().count()},e.prototype.updateTransform=function(t,e,n){var i=t.getData();if(this.group.dirty(),!this._finished||i.count()>1e4)return{update:!0};var r=xS("").reset(t,e,n);r.progress&&r.progress({start:0,end:i.count(),count:i.count()},i),this._symbolDraw.updateLayout(i)},e.prototype.eachRendered=function(t){this._symbolDraw&&this._symbolDraw.eachRendered(t)},e.prototype._getClipShape=function(t){var e=t.coordinateSystem,n=e&&e.getArea&&e.getArea();return t.get("clip",!0)?n:null},e.prototype._updateSymbolDraw=function(t,e){var n=this._symbolDraw,i=e.pipelineContext.large;return n&&i===this._isLargeDraw||(n&&n.remove(),n=this._symbolDraw=i?new dM:new Zw,this._isLargeDraw=i,this.group.removeAll()),this.group.add(n.group),n},e.prototype.remove=function(t,e){this._symbolDraw&&this._symbolDraw.remove(!0),this._symbolDraw=null},e.prototype.dispose=function(){},e.type="scatter",e}(mg),gM=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.type="grid",e.dependencies=["xAxis","yAxis"],e.layoutMode="box",e.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"},e}(Ip),yM=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.getCoordSysModel=function(){return this.getReferringComponents("grid",Co).models[0]},e.type="cartesian2dAxis",e}(Ip);R(yM,h_);var vM={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)"]}}},mM=C({boundaryGap:!0,deduplication:null,splitLine:{show:!1},axisTick:{alignWithLabel:!1,interval:"auto"},axisLabel:{interval:"auto"}},vM),xM=C({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}}},vM),_M={category:mM,value:xM,time:C({splitNumber:6,axisLabel:{showMinLabel:!1,showMaxLabel:!1,rich:{primary:{fontWeight:"bold"}}},splitLine:{show:!1}},xM),log:k({logBase:10},xM)},bM={value:1,category:1,time:1,log:1};function wM(t,e,i,r){E(bM,(function(o,a){var s=C(C({},_M[a],!0),r,!0),l=function(t){function i(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e+"Axis."+a,n}return n(i,t),i.prototype.mergeDefaultAndTheme=function(t,e){var n=_p(this),i=n?wp(t):{};C(t,e.getTheme().get(a+"Axis")),C(t,this.getDefaultOption()),t.type=SM(t),n&&bp(t,i,n)},i.prototype.optionUpdated=function(){"category"===this.option.type&&(this.__ordinalMeta=ox.createByAxisModel(this))},i.prototype.getCategories=function(t){var e=this.option;if("category"===e.type)return t?e.data:this.__ordinalMeta.categories},i.prototype.getOrdinalMeta=function(){return this.__ordinalMeta},i.type=e+"Axis."+a,i.defaultOption=s,i}(i);t.registerComponentModel(l)})),t.registerSubTypeDefaulter(e+"Axis",SM)}function SM(t){return t.type||(t.data?"category":"value")}var MM=function(){function t(t){this.type="cartesian",this._dimList=[],this._axes={},this.name=t||""}return t.prototype.getAxis=function(t){return this._axes[t]},t.prototype.getAxes=function(){return z(this._dimList,(function(t){return this._axes[t]}),this)},t.prototype.getAxesByScale=function(t){return t=t.toLowerCase(),B(this.getAxes(),(function(e){return e.scale.type===t}))},t.prototype.addAxis=function(t){var e=t.dim;this._axes[e]=t,this._dimList.push(e)},t}(),IM=["x","y"];function TM(t){return"interval"===t.type||"time"===t.type}var CM=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.type="cartesian2d",e.dimensions=IM,e}return n(e,t),e.prototype.calcAffineTransform=function(){this._transform=this._invTransform=null;var t=this.getAxis("x").scale,e=this.getAxis("y").scale;if(TM(t)&&TM(e)){var n=t.getExtent(),i=e.getExtent(),r=this.dataToPoint([n[0],i[0]]),o=this.dataToPoint([n[1],i[1]]),a=n[1]-n[0],s=i[1]-i[0];if(a&&s){var l=(o[0]-r[0])/a,u=(o[1]-r[1])/s,h=r[0]-n[0]*l,c=r[1]-i[0]*u,p=this._transform=[l,0,0,u,h,c];this._invTransform=Bi([],p)}}},e.prototype.getBaseAxis=function(){return this.getAxesByScale("ordinal")[0]||this.getAxesByScale("time")[0]||this.getAxis("x")},e.prototype.containPoint=function(t){var e=this.getAxis("x"),n=this.getAxis("y");return e.contain(e.toLocalCoord(t[0]))&&n.contain(n.toLocalCoord(t[1]))},e.prototype.containData=function(t){return this.getAxis("x").containData(t[0])&&this.getAxis("y").containData(t[1])},e.prototype.dataToPoint=function(t,e,n){n=n||[];var i=t[0],r=t[1];if(this._transform&&null!=i&&isFinite(i)&&null!=r&&isFinite(r))return Ft(n,t,this._transform);var o=this.getAxis("x"),a=this.getAxis("y");return n[0]=o.toGlobalCoord(o.dataToCoord(i,e)),n[1]=a.toGlobalCoord(a.dataToCoord(r,e)),n},e.prototype.clampData=function(t,e){var n=this.getAxis("x").scale,i=this.getAxis("y").scale,r=n.getExtent(),o=i.getExtent(),a=n.parse(t[0]),s=i.parse(t[1]);return(e=e||[])[0]=Math.min(Math.max(Math.min(r[0],r[1]),a),Math.max(r[0],r[1])),e[1]=Math.min(Math.max(Math.min(o[0],o[1]),s),Math.max(o[0],o[1])),e},e.prototype.pointToData=function(t,e){var n=[];if(this._invTransform)return Ft(n,t,this._invTransform);var i=this.getAxis("x"),r=this.getAxis("y");return n[0]=i.coordToData(i.toLocalCoord(t[0]),e),n[1]=r.coordToData(r.toLocalCoord(t[1]),e),n},e.prototype.getOtherAxis=function(t){return this.getAxis("x"===t.dim?"y":"x")},e.prototype.getArea=function(){var t=this.getAxis("x").getGlobalExtent(),e=this.getAxis("y").getGlobalExtent(),n=Math.min(t[0],t[1]),i=Math.min(e[0],e[1]),r=Math.max(t[0],t[1])-n,o=Math.max(e[0],e[1])-i;return new sr(n,i,r,o)},e}(MM),DM=function(t){function e(e,n,i,r,o){var a=t.call(this,e,n,i)||this;return a.index=0,a.type=r||"value",a.position=o||"bottom",a}return n(e,t),e.prototype.isHorizontal=function(){var t=this.position;return"top"===t||"bottom"===t},e.prototype.getGlobalExtent=function(t){var e=this.getExtent();return e[0]=this.toGlobalCoord(e[0]),e[1]=this.toGlobalCoord(e[1]),t&&e[0]>e[1]&&e.reverse(),e},e.prototype.pointToData=function(t,e){return this.coordToData(this.toLocalCoord(t["x"===this.dim?0:1]),e)},e.prototype.setCategorySortInfo=function(t){if("category"!==this.type)return!1;this.model.option.categorySortInfo=t,this.scale.setSortInfo(t)},e}(G_);function AM(t,e,n){n=n||{};var i=t.coordinateSystem,r=e.axis,o={},a=r.getAxesOnZeroOf()[0],s=r.position,l=a?"onZero":s,u=r.dim,h=i.getRect(),c=[h.x,h.x+h.width,h.y,h.y+h.height],p={left:0,right:1,top:0,bottom:1,onZero:2},d=e.get("offset")||0,f="x"===u?[c[2]-d,c[3]+d]:[c[0]-d,c[1]+d];if(a){var g=a.toGlobalCoord(a.dataToCoord(0));f[p.onZero]=Math.max(Math.min(g,f[1]),f[0])}o.position=["y"===u?f[p[l]]:c[0],"x"===u?f[p[l]]:c[3]],o.rotation=Math.PI/2*("x"===u?0:1);o.labelDirection=o.tickDirection=o.nameDirection={top:-1,bottom:1,left:-1,right:1}[s],o.labelOffset=a?f[p[s]]-f[p.onZero]:0,e.get(["axisTick","inside"])&&(o.tickDirection=-o.tickDirection),it(n.labelInside,e.get(["axisLabel","inside"]))&&(o.labelDirection=-o.labelDirection);var y=e.get(["axisLabel","rotate"]);return o.labelRotate="top"===l?-y:y,o.z2=1,o}function kM(t){return"cartesian2d"===t.get("coordinateSystem")}function LM(t){var e={xAxisModel:null,yAxisModel:null};return E(e,(function(n,i){var r=i.replace(/Model$/,""),o=t.getReferringComponents(r,Co).models[0];e[i]=o})),e}var PM=Math.log;function OM(t,e,n){var i=vx.prototype,r=i.getTicks.call(n),o=i.getTicks.call(n,!0),a=r.length-1,s=i.getInterval.call(n),l=e_(t,e),u=l.extent,h=l.fixMin,c=l.fixMax;if("log"===t.type){var p=PM(t.base);u=[PM(u[0])/p,PM(u[1])/p]}t.setExtent(u[0],u[1]),t.calcNiceExtent({splitNumber:a,fixMin:h,fixMax:c});var d=i.getExtent.call(t);h&&(u[0]=d[0]),c&&(u[1]=d[1]);var f=i.getInterval.call(t),g=u[0],y=u[1];if(h&&c)f=(y-g)/a;else if(h)for(y=u[0]+f*a;y<u[1]&&isFinite(y)&&isFinite(u[1]);)f=ux(f),y=u[0]+f*a;else if(c)for(g=u[1]-f*a;g>u[0]&&isFinite(g)&&isFinite(u[0]);)f=ux(f),g=u[1]-f*a;else{t.getTicks().length-1>a&&(f=ux(f));var v=f*a;(g=zr((y=Math.ceil(u[1]/f)*f)-v))<0&&u[0]>=0?(g=0,y=zr(v)):y>0&&u[1]<=0&&(y=0,g=-zr(v))}var m=(r[0].value-o[0].value)/s,x=(r[a].value-o[a].value)/s;i.setExtent.call(t,g+f*m,y+f*x),i.setInterval.call(t,f),(m||x)&&i.setNiceExtent.call(t,g+f,y-f)}var RM=function(){function t(t,e,n){this.type="grid",this._coordsMap={},this._coordsList=[],this._axesMap={},this._axesList=[],this.axisPointerEnabled=!0,this.dimensions=IM,this._initCartesian(t,e,n),this.model=t}return t.prototype.getRect=function(){return this._rect},t.prototype.update=function(t,e){var n=this._axesMap;function i(t){var e,n=G(t),i=n.length;if(i){for(var r=[],o=i-1;o>=0;o--){var a=t[+n[o]],s=a.model,l=a.scale;sx(l)&&s.get("alignTicks")&&null==s.get("interval")?r.push(a):(n_(l,s),sx(l)&&(e=a))}r.length&&(e||n_((e=r.pop()).scale,e.model),E(r,(function(t){OM(t.scale,t.model,e.scale)})))}}this._updateScale(t,this.model),i(n.x),i(n.y);var r={};E(n.x,(function(t){EM(n,"y",t,r)})),E(n.y,(function(t){EM(n,"x",t,r)})),this.resize(this.model,e)},t.prototype.resize=function(t,e,n){var i=t.getBoxLayoutParams(),r=!n&&t.get("containLabel"),o=mp(i,{width:e.getWidth(),height:e.getHeight()});this._rect=o;var a=this._axesList;function s(){E(a,(function(t){var e=t.isHorizontal(),n=e?[0,o.width]:[0,o.height],i=t.inverse?1:0;t.setExtent(n[i],n[1-i]),function(t,e){var n=t.getExtent(),i=n[0]+n[1];t.toGlobalCoord="x"===t.dim?function(t){return t+e}:function(t){return i-t+e},t.toLocalCoord="x"===t.dim?function(t){return t-e}:function(t){return i-t+e}}(t,e?o.x:o.y)}))}s(),r&&(E(a,(function(t){if(!t.model.get(["axisLabel","inside"])){var e=function(t){var e=t.model,n=t.scale;if(e.get(["axisLabel","show"])&&!n.isBlank()){var i,r,o=n.getExtent();r=n instanceof gx?n.count():(i=n.getTicks()).length;var a,s=t.getLabelModel(),l=r_(t),u=1;r>40&&(u=Math.ceil(r/40));for(var h=0;h<r;h+=u){var c=l(i?i[h]:{value:o[0]+h},h),p=a_(s.getTextRect(c),s.get("rotate")||0);a?a.union(p):a=p}return a}}(t);if(e){var n=t.isHorizontal()?"height":"width",i=t.model.get(["axisLabel","margin"]);o[n]-=e[n]+i,"top"===t.position?o.y+=e.height+i:"left"===t.position&&(o.x+=e.width+i)}}})),s()),E(this._coordsList,(function(t){t.calcAffineTransform()}))},t.prototype.getAxis=function(t,e){var n=this._axesMap[t];if(null!=n)return n[e||0]},t.prototype.getAxes=function(){return this._axesList.slice()},t.prototype.getCartesian=function(t,e){if(null!=t&&null!=e){var n="x"+t+"y"+e;return this._coordsMap[n]}q(t)&&(e=t.yAxisIndex,t=t.xAxisIndex);for(var i=0,r=this._coordsList;i<r.length;i++)if(r[i].getAxis("x").index===t||r[i].getAxis("y").index===e)return r[i]},t.prototype.getCartesians=function(){return this._coordsList.slice()},t.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},t.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},t.prototype._findConvertTarget=function(t){var e,n,i=t.seriesModel,r=t.xAxisModel||i&&i.getReferringComponents("xAxis",Co).models[0],o=t.yAxisModel||i&&i.getReferringComponents("yAxis",Co).models[0],a=t.gridModel,s=this._coordsList;if(i)P(s,e=i.coordinateSystem)<0&&(e=null);else if(r&&o)e=this.getCartesian(r.componentIndex,o.componentIndex);else if(r)n=this.getAxis("x",r.componentIndex);else if(o)n=this.getAxis("y",o.componentIndex);else if(a){a.coordinateSystem===this&&(e=this._coordsList[0])}return{cartesian:e,axis:n}},t.prototype.containPoint=function(t){var e=this._coordsList[0];if(e)return e.containPoint(t)},t.prototype._initCartesian=function(t,e,n){var i=this,r=this,o={left:!1,right:!1,top:!1,bottom:!1},a={x:{},y:{}},s={x:0,y:0};if(e.eachComponent("xAxis",l("x"),this),e.eachComponent("yAxis",l("y"),this),!s.x||!s.y)return this._axesMap={},void(this._axesList=[]);function l(e){return function(n,i){if(NM(n,t)){var l=n.get("position");"x"===e?"top"!==l&&"bottom"!==l&&(l=o.bottom?"top":"bottom"):"left"!==l&&"right"!==l&&(l=o.left?"right":"left"),o[l]=!0;var u=new DM(e,i_(n),[0,0],n.get("type"),l),h="category"===u.type;u.onBand=h&&n.get("boundaryGap"),u.inverse=n.get("inverse"),n.axis=u,u.model=n,u.grid=r,u.index=i,r._axesList.push(u),a[e][i]=u,s[e]++}}}this._axesMap=a,E(a.x,(function(e,n){E(a.y,(function(r,o){var a="x"+n+"y"+o,s=new CM(a);s.master=i,s.model=t,i._coordsMap[a]=s,i._coordsList.push(s),s.addAxis(e),s.addAxis(r)}))}))},t.prototype._updateScale=function(t,e){function n(t,e){E(u_(t,e.dim),(function(n){e.scale.unionExtentFromData(t,n)}))}E(this._axesList,(function(t){if(t.scale.setExtent(1/0,-1/0),"category"===t.type){var e=t.model.get("categorySortInfo");t.scale.setSortInfo(e)}})),t.eachSeries((function(t){if(kM(t)){var i=LM(t),r=i.xAxisModel,o=i.yAxisModel;if(!NM(r,e)||!NM(o,e))return;var a=this.getCartesian(r.componentIndex,o.componentIndex),s=t.getData(),l=a.getAxis("x"),u=a.getAxis("y");n(s,l),n(s,u)}}),this)},t.prototype.getTooltipAxes=function(t){var e=[],n=[];return E(this.getCartesians(),(function(i){var r=null!=t&&"auto"!==t?i.getAxis(t):i.getBaseAxis(),o=i.getOtherAxis(r);P(e,r)<0&&e.push(r),P(n,o)<0&&n.push(o)})),{baseAxes:e,otherAxes:n}},t.create=function(e,n){var i=[];return e.eachComponent("grid",(function(r,o){var a=new t(r,e,n);a.name="grid_"+o,a.resize(r,n,!0),r.coordinateSystem=a,i.push(a)})),e.eachSeries((function(t){if(kM(t)){var e=LM(t),n=e.xAxisModel,i=e.yAxisModel,r=n.getCoordSysModel();0;var o=r.coordinateSystem;t.coordinateSystem=o.getCartesian(n.componentIndex,i.componentIndex)}})),i},t.dimensions=IM,t}();function NM(t,e){return t.getCoordSysModel()===e}function EM(t,e,n,i){n.getAxesOnZeroOf=function(){return r?[r]:[]};var r,o=t[e],a=n.model,s=a.get(["axisLine","onZero"]),l=a.get(["axisLine","onZeroAxisIndex"]);if(s){if(null!=l)zM(o[l])&&(r=o[l]);else for(var u in o)if(o.hasOwnProperty(u)&&zM(o[u])&&!i[h(o[u])]){r=o[u];break}r&&(i[h(r)]=!0)}function h(t){return t.dim+"_"+t.index}}function zM(t){return t&&"category"!==t.type&&"time"!==t.type&&function(t){var e=t.scale.getExtent(),n=e[0],i=e[1];return!(n>0&&i>0||n<0&&i<0)}(t)}var VM=Math.PI,BM=function(){function t(t,e){this.group=new Cr,this.opt=e,this.axisModel=t,k(e,{labelOffset:0,nameDirection:1,tickDirection:1,labelDirection:1,silent:!0,handleAutoShown:function(){return!0}});var n=new Cr({x:e.position[0],y:e.position[1],rotation:e.rotation});n.updateTransform(),this._transformGroup=n}return t.prototype.hasBuilder=function(t){return!!FM[t]},t.prototype.add=function(t){FM[t](this.opt,this.axisModel,this.group,this._transformGroup)},t.prototype.getGroup=function(){return this.group},t.innerTextLayout=function(t,e,n){var i,r,o=Ur(e-t);return Xr(o)?(r=n>0?"top":"bottom",i="center"):Xr(o-VM)?(r=n>0?"bottom":"top",i="center"):(r="middle",i=o>0&&o<VM?n>0?"right":"left":n>0?"left":"right"),{rotation:o,textAlign:i,textVerticalAlign:r}},t.makeAxisEventDataBase=function(t){var e={componentType:t.mainType,componentIndex:t.componentIndex};return e[t.mainType+"Index"]=t.componentIndex,e},t.isLabelSilent=function(t){var e=t.get("tooltip");return t.get("silent")||!(t.get("triggerEvent")||e&&e.show)},t}(),FM={axisLine:function(t,e,n,i){var r=e.get(["axisLine","show"]);if("auto"===r&&t.handleAutoShown&&(r=t.handleAutoShown("axisLine")),r){var o=e.axis.getExtent(),a=i.transform,s=[o[0],0],l=[o[1],0];a&&(Ft(s,s,a),Ft(l,l,a));var u=A({lineCap:"round"},e.getModel(["axisLine","lineStyle"]).getLineStyle()),h=new Eu({subPixelOptimize:!0,shape:{x1:s[0],y1:s[1],x2:l[0],y2:l[1]},style:u,strokeContainThreshold:t.strokeContainThreshold||5,silent:!0,z2:1});h.anid="line",n.add(h);var c=e.get(["axisLine","symbol"]);if(null!=c){var p=e.get(["axisLine","symbolSize"]);X(c)&&(c=[c,c]),(X(p)||j(p))&&(p=[p,p]);var d=Py(e.get(["axisLine","symbolOffset"])||0,p),f=p[0],g=p[1];E([{rotate:t.rotation+Math.PI/2,offset:d[0],r:0},{rotate:t.rotation-Math.PI/2,offset:d[1],r:Math.sqrt((s[0]-l[0])*(s[0]-l[0])+(s[1]-l[1])*(s[1]-l[1]))}],(function(e,i){if("none"!==c[i]&&null!=c[i]){var r=ky(c[i],-f/2,-g/2,f,g,u.stroke,!0),o=e.r+e.offset;r.attr({rotation:e.rotate,x:s[0]+o*Math.cos(t.rotation),y:s[1]-o*Math.sin(t.rotation),silent:!0,z2:11}),n.add(r)}}))}}},axisTickLabel:function(t,e,n,i){var r=function(t,e,n,i){var r=n.axis,o=n.getModel("axisTick"),a=o.get("show");"auto"===a&&i.handleAutoShown&&(a=i.handleAutoShown("axisTick"));if(!a||r.scale.isBlank())return;for(var s=o.getModel("lineStyle"),l=i.tickDirection*o.get("length"),u=YM(r.getTicksCoords(),e.transform,l,k(s.getLineStyle(),{stroke:n.get(["axisLine","lineStyle","color"])}),"ticks"),h=0;h<u.length;h++)t.add(u[h]);return u}(n,i,e,t),o=function(t,e,n,i){var r=n.axis;if(!it(i.axisLabelShow,n.get(["axisLabel","show"]))||r.scale.isBlank())return;var o=n.getModel("axisLabel"),a=o.get("margin"),s=r.getViewLabels(),l=(it(i.labelRotate,o.get("rotate"))||0)*VM/180,u=BM.innerTextLayout(i.rotation,l,i.labelDirection),h=n.getCategories&&n.getCategories(!0),c=[],p=BM.isLabelSilent(n),d=n.get("triggerEvent");return E(s,(function(s,l){var f="ordinal"===r.scale.type?r.scale.getRawOrdinalNumber(s.tickValue):s.tickValue,g=s.formattedLabel,y=s.rawLabel,v=o;if(h&&h[f]){var m=h[f];q(m)&&m.textStyle&&(v=new pc(m.textStyle,o,n.ecModel))}var x=v.getTextColor()||n.get(["axisLine","lineStyle","color"]),_=r.dataToCoord(f),b=new As({x:_,y:i.labelOffset+i.labelDirection*a,rotation:u.rotation,silent:p,z2:10+(s.level||0),style:Yh(v,{text:g,align:v.getShallow("align",!0)||u.textAlign,verticalAlign:v.getShallow("verticalAlign",!0)||v.getShallow("baseline",!0)||u.textVerticalAlign,fill:U(x)?x("category"===r.type?y:"value"===r.type?f+"":f,l):x})});if(b.anid="label_"+f,d){var w=BM.makeAxisEventDataBase(n);w.targetType="axisLabel",w.value=y,w.tickIndex=l,"category"===r.type&&(w.dataIndex=f),Ws(b).eventData=w}e.add(b),b.updateTransform(),c.push(b),t.add(b),b.decomposeTransform()})),c}(n,i,e,t);(function(t,e,n){if(l_(t.axis))return;var i=t.get(["axisLabel","showMinLabel"]),r=t.get(["axisLabel","showMaxLabel"]);n=n||[];var o=(e=e||[])[0],a=e[1],s=e[e.length-1],l=e[e.length-2],u=n[0],h=n[1],c=n[n.length-1],p=n[n.length-2];!1===i?(GM(o),GM(u)):WM(o,a)&&(i?(GM(a),GM(h)):(GM(o),GM(u)));!1===r?(GM(s),GM(c)):WM(l,s)&&(r?(GM(l),GM(p)):(GM(s),GM(c)))}(e,o,r),function(t,e,n,i){var r=n.axis,o=n.getModel("minorTick");if(!o.get("show")||r.scale.isBlank())return;var a=r.getMinorTicksCoords();if(!a.length)return;for(var s=o.getModel("lineStyle"),l=i*o.get("length"),u=k(s.getLineStyle(),k(n.getModel("axisTick").getLineStyle(),{stroke:n.get(["axisLine","lineStyle","color"])})),h=0;h<a.length;h++)for(var c=YM(a[h],e.transform,l,u,"minorticks_"+h),p=0;p<c.length;p++)t.add(c[p])}(n,i,e,t.tickDirection),e.get(["axisLabel","hideOverlap"]))&&yb(db(z(o,(function(t){return{label:t,priority:t.z2,defaultAttr:{ignore:t.ignore}}}))))},axisName:function(t,e,n,i){var r=it(t.axisName,e.get("name"));if(r){var o,a,s=e.get("nameLocation"),l=t.nameDirection,u=e.getModel("nameTextStyle"),h=e.get("nameGap")||0,c=e.axis.getExtent(),p=c[0]>c[1]?-1:1,d=["start"===s?c[0]-p*h:"end"===s?c[1]+p*h:(c[0]+c[1])/2,HM(s)?t.labelOffset+l*h:0],f=e.get("nameRotate");null!=f&&(f=f*VM/180),HM(s)?o=BM.innerTextLayout(t.rotation,null!=f?f:t.rotation,l):(o=function(t,e,n,i){var r,o,a=Ur(n-t),s=i[0]>i[1],l="start"===e&&!s||"start"!==e&&s;Xr(a-VM/2)?(o=l?"bottom":"top",r="center"):Xr(a-1.5*VM)?(o=l?"top":"bottom",r="center"):(o="middle",r=a<1.5*VM&&a>VM/2?l?"left":"right":l?"right":"left");return{rotation:a,textAlign:r,textVerticalAlign:o}}(t.rotation,s,f||0,c),null!=(a=t.axisNameAvailableWidth)&&(a=Math.abs(a/Math.sin(o.rotation)),!isFinite(a)&&(a=null)));var g=u.getFont(),y=e.get("nameTruncate",!0)||{},v=y.ellipsis,m=it(t.nameTruncateMaxWidth,y.maxWidth,a),x=new As({x:d[0],y:d[1],rotation:o.rotation,silent:BM.isLabelSilent(e),style:Yh(u,{text:r,font:g,overflow:"truncate",width:m,ellipsis:v,fill:u.getTextColor()||e.get(["axisLine","lineStyle","color"]),align:u.get("align")||o.textAlign,verticalAlign:u.get("verticalAlign")||o.textVerticalAlign}),z2:1});if(Nh({el:x,componentModel:e,itemName:r}),x.__fullText=r,x.anid="name",e.get("triggerEvent")){var _=BM.makeAxisEventDataBase(e);_.targetType="axisName",_.name=r,Ws(x).eventData=_}i.add(x),x.updateTransform(),n.add(x),x.decomposeTransform()}}};function GM(t){t&&(t.ignore=!0)}function WM(t,e){var n=t&&t.getBoundingRect().clone(),i=e&&e.getBoundingRect().clone();if(n&&i){var r=Oi([]);return zi(r,r,-t.rotation),n.applyTransform(Ni([],r,t.getLocalTransform())),i.applyTransform(Ni([],r,e.getLocalTransform())),n.intersect(i)}}function HM(t){return"middle"===t||"center"===t}function YM(t,e,n,i,r){for(var o=[],a=[],s=[],l=0;l<t.length;l++){var u=t[l].coord;a[0]=u,a[1]=0,s[0]=u,s[1]=n,e&&(Ft(a,a,e),Ft(s,s,e));var h=new Eu({subPixelOptimize:!0,shape:{x1:a[0],y1:a[1],x2:s[0],y2:s[1]},style:i,z2:2,autoBatch:!0,silent:!0});h.anid=r+"_"+t[l].tickValue,o.push(h)}return o}function UM(t,e){var n={axesInfo:{},seriesInvolved:!1,coordSysAxesInfo:{},coordSysMap:{}};return function(t,e,n){var i=e.getComponent("tooltip"),r=e.getComponent("axisPointer"),o=r.get("link",!0)||[],a=[];E(n.getCoordinateSystems(),(function(n){if(n.axisPointerEnabled){var s=KM(n.model),l=t.coordSysAxesInfo[s]={};t.coordSysMap[s]=n;var u=n.model.getModel("tooltip",i);if(E(n.getAxes(),H(d,!1,null)),n.getTooltipAxes&&i&&u.get("show")){var h="axis"===u.get("trigger"),c="cross"===u.get(["axisPointer","type"]),p=n.getTooltipAxes(u.get(["axisPointer","axis"]));(h||c)&&E(p.baseAxes,H(d,!c||"cross",h)),c&&E(p.otherAxes,H(d,"cross",!1))}}function d(i,s,h){var c=h.model.getModel("axisPointer",r),p=c.get("show");if(p&&("auto"!==p||i||qM(c))){null==s&&(s=c.get("triggerTooltip"));var d=(c=i?function(t,e,n,i,r,o){var a=e.getModel("axisPointer"),s={};E(["type","snap","lineStyle","shadowStyle","label","animation","animationDurationUpdate","animationEasingUpdate","z"],(function(t){s[t]=T(a.get(t))})),s.snap="category"!==t.type&&!!o,"cross"===a.get("type")&&(s.type="line");var l=s.label||(s.label={});if(null==l.show&&(l.show=!1),"cross"===r){var u=a.get(["label","show"]);if(l.show=null==u||u,!o){var h=s.lineStyle=a.get("crossStyle");h&&k(l,h.textStyle)}}return t.model.getModel("axisPointer",new pc(s,n,i))}(h,u,r,e,i,s):c).get("snap"),f=KM(h.model),g=s||d||"category"===h.type,y=t.axesInfo[f]={key:f,axis:h,coordSys:n,axisPointerModel:c,triggerTooltip:s,involveSeries:g,snap:d,useHandle:qM(c),seriesModels:[],linkGroup:null};l[f]=y,t.seriesInvolved=t.seriesInvolved||g;var v=function(t,e){for(var n=e.model,i=e.dim,r=0;r<t.length;r++){var o=t[r]||{};if(XM(o[i+"AxisId"],n.id)||XM(o[i+"AxisIndex"],n.componentIndex)||XM(o[i+"AxisName"],n.name))return r}}(o,h);if(null!=v){var m=a[v]||(a[v]={axesInfo:{}});m.axesInfo[f]=y,m.mapper=o[v].mapper,y.linkGroup=m}}}}))}(n,t,e),n.seriesInvolved&&function(t,e){e.eachSeries((function(e){var n=e.coordinateSystem,i=e.get(["tooltip","trigger"],!0),r=e.get(["tooltip","show"],!0);n&&"none"!==i&&!1!==i&&"item"!==i&&!1!==r&&!1!==e.get(["axisPointer","show"],!0)&&E(t.coordSysAxesInfo[KM(n.model)],(function(t){var i=t.axis;n.getAxis(i.dim)===i&&(t.seriesModels.push(e),null==t.seriesDataCount&&(t.seriesDataCount=0),t.seriesDataCount+=e.getData().count())}))}))}(n,t),n}function XM(t,e){return"all"===t||Y(t)&&P(t,e)>=0||t===e}function ZM(t){var e=jM(t);if(e){var n=e.axisPointerModel,i=e.axis.scale,r=n.option,o=n.get("status"),a=n.get("value");null!=a&&(a=i.parse(a));var s=qM(n);null==o&&(r.status=s?"show":"hide");var l=i.getExtent().slice();l[0]>l[1]&&l.reverse(),(null==a||a>l[1])&&(a=l[1]),a<l[0]&&(a=l[0]),r.value=a,s&&(r.status=e.axis.scale.isBlank()?"hide":"show")}}function jM(t){var e=(t.ecModel.getComponent("axisPointer")||{}).coordSysAxesInfo;return e&&e.axesInfo[KM(t)]}function qM(t){return!!t.get(["handle","show"])}function KM(t){return t.type+"||"+t.id}var $M={},JM=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(e,n,i,r){this.axisPointerClass&&ZM(e),t.prototype.render.apply(this,arguments),this._doUpdateAxisPointerClass(e,i,!0)},e.prototype.updateAxisPointer=function(t,e,n,i){this._doUpdateAxisPointerClass(t,n,!1)},e.prototype.remove=function(t,e){var n=this._axisPointer;n&&n.remove(e)},e.prototype.dispose=function(e,n){this._disposeAxisPointer(n),t.prototype.dispose.apply(this,arguments)},e.prototype._doUpdateAxisPointerClass=function(t,n,i){var r=e.getAxisPointerClass(this.axisPointerClass);if(r){var o=function(t){var e=jM(t);return e&&e.axisPointerModel}(t);o?(this._axisPointer||(this._axisPointer=new r)).render(t,o,n,i):this._disposeAxisPointer(n)}},e.prototype._disposeAxisPointer=function(t){this._axisPointer&&this._axisPointer.dispose(t),this._axisPointer=null},e.registerAxisPointerClass=function(t,e){$M[t]=e},e.getAxisPointerClass=function(t){return t&&$M[t]},e.type="axis",e}(fg),QM=So();function tI(t,e,n,i){var r=n.axis;if(!r.scale.isBlank()){var o=n.getModel("splitArea"),a=o.getModel("areaStyle"),s=a.get("color"),l=i.coordinateSystem.getRect(),u=r.getTicksCoords({tickModel:o,clamp:!0});if(u.length){var h=s.length,c=QM(t).splitAreaColors,p=ft(),d=0;if(c)for(var f=0;f<u.length;f++){var g=c.get(u[f].tickValue);if(null!=g){d=(g+(h-1)*f)%h;break}}var y=r.toGlobalCoord(u[0].coord),v=a.getAreaStyle();s=Y(s)?s:[s];for(f=1;f<u.length;f++){var m=r.toGlobalCoord(u[f].coord),x=void 0,_=void 0,b=void 0,w=void 0;r.isHorizontal()?(x=y,_=l.y,b=m-x,w=l.height,y=x+b):(x=l.x,_=y,b=l.width,y=_+(w=m-_));var S=u[f-1].tickValue;null!=S&&p.set(S,d),e.add(new Ts({anid:null!=S?"area_"+S:null,shape:{x:x,y:_,width:b,height:w},style:k({fill:s[d]},v),autoBatch:!0,silent:!0})),d=(d+1)%h}QM(t).splitAreaColors=p}}}function eI(t){QM(t).splitAreaColors=null}var nI=["axisLine","axisTickLabel","axisName"],iI=["splitArea","splitLine","minorSplitLine"],rI=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.axisPointerClass="CartesianAxisPointer",n}return n(e,t),e.prototype.render=function(e,n,i,r){this.group.removeAll();var o=this._axisGroup;if(this._axisGroup=new Cr,this.group.add(this._axisGroup),e.get("show")){var a=e.getCoordSysModel(),s=AM(a,e),l=new BM(e,A({handleAutoShown:function(t){for(var n=a.coordinateSystem.getCartesians(),i=0;i<n.length;i++)if(sx(n[i].getOtherAxis(e.axis).scale))return!0;return!1}},s));E(nI,l.add,l),this._axisGroup.add(l.getGroup()),E(iI,(function(t){e.get([t,"show"])&&oI[t](this,this._axisGroup,e,a)}),this),r&&"changeAxisOrder"===r.type&&r.isInitSort||Dh(o,this._axisGroup,e),t.prototype.render.call(this,e,n,i,r)}},e.prototype.remove=function(){eI(this)},e.type="cartesianAxis",e}(JM),oI={splitLine:function(t,e,n,i){var r=n.axis;if(!r.scale.isBlank()){var o=n.getModel("splitLine"),a=o.getModel("lineStyle"),s=a.get("color");s=Y(s)?s:[s];for(var l=i.coordinateSystem.getRect(),u=r.isHorizontal(),h=0,c=r.getTicksCoords({tickModel:o}),p=[],d=[],f=a.getLineStyle(),g=0;g<c.length;g++){var y=r.toGlobalCoord(c[g].coord);u?(p[0]=y,p[1]=l.y,d[0]=y,d[1]=l.y+l.height):(p[0]=l.x,p[1]=y,d[0]=l.x+l.width,d[1]=y);var v=h++%s.length,m=c[g].tickValue;e.add(new Eu({anid:null!=m?"line_"+c[g].tickValue:null,subPixelOptimize:!0,autoBatch:!0,shape:{x1:p[0],y1:p[1],x2:d[0],y2:d[1]},style:k({stroke:s[v]},f),silent:!0}))}}},minorSplitLine:function(t,e,n,i){var r=n.axis,o=n.getModel("minorSplitLine").getModel("lineStyle"),a=i.coordinateSystem.getRect(),s=r.isHorizontal(),l=r.getMinorTicksCoords();if(l.length)for(var u=[],h=[],c=o.getLineStyle(),p=0;p<l.length;p++)for(var d=0;d<l[p].length;d++){var f=r.toGlobalCoord(l[p][d].coord);s?(u[0]=f,u[1]=a.y,h[0]=f,h[1]=a.y+a.height):(u[0]=a.x,u[1]=f,h[0]=a.x+a.width,h[1]=f),e.add(new Eu({anid:"minor_line_"+l[p][d].tickValue,subPixelOptimize:!0,autoBatch:!0,shape:{x1:u[0],y1:u[1],x2:h[0],y2:h[1]},style:c,silent:!0}))}},splitArea:function(t,e,n,i){tI(t,e,n,i)}},aI=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="xAxis",e}(rI),sI=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.type=aI.type,e}return n(e,t),e.type="yAxis",e}(rI),lI=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.type="grid",e}return n(e,t),e.prototype.render=function(t,e){this.group.removeAll(),t.get("show")&&this.group.add(new Ts({shape:t.coordinateSystem.getRect(),style:k({fill:t.get("backgroundColor")},t.getItemStyle()),silent:!0,z2:-1}))},e.type="grid",e}(fg),uI={offset:0};function hI(t){t.registerComponentView(lI),t.registerComponentModel(gM),t.registerCoordinateSystem("cartesian2d",RM),wM(t,"x",yM,uI),wM(t,"y",yM,uI),t.registerComponentView(aI),t.registerComponentView(sI),t.registerPreprocessor((function(t){t.xAxis&&t.yAxis&&!t.grid&&(t.grid={})}))}function cI(t){t.eachSeriesByType("radar",(function(t){var e=t.getData(),n=[],i=t.coordinateSystem;if(i){var r=i.getIndicatorAxes();E(r,(function(t,o){e.each(e.mapDimension(r[o].dim),(function(t,e){n[e]=n[e]||[];var r=i.dataToPoint(t,o);n[e][o]=pI(r)?r:dI(i)}))})),e.each((function(t){var r=F(n[t],(function(t){return pI(t)}))||dI(i);n[t].push(r.slice()),e.setItemLayout(t,n[t])}))}}))}function pI(t){return!isNaN(t[0])&&!isNaN(t[1])}function dI(t){return[t.cx,t.cy]}function fI(t){var e=t.polar;if(e){Y(e)||(e=[e]);var n=[];E(e,(function(e,i){e.indicator?(e.type&&!e.shape&&(e.shape=e.type),t.radar=t.radar||[],Y(t.radar)||(t.radar=[t.radar]),t.radar.push(e)):n.push(e)})),t.polar=n}E(t.series,(function(t){t&&"radar"===t.type&&t.polarIndex&&(t.radarIndex=t.polarIndex)}))}var gI=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){var i=t.coordinateSystem,r=this.group,o=t.getData(),a=this._data;function s(t,e){var n=t.getItemVisual(e,"symbol")||"circle";if("none"!==n){var i=Ly(t.getItemVisual(e,"symbolSize")),r=ky(n,-1,-1,2,2),o=t.getItemVisual(e,"symbolRotate")||0;return r.attr({style:{strokeNoScale:!0},z2:100,scaleX:i[0]/2,scaleY:i[1]/2,rotation:o*Math.PI/180||0}),r}}function l(e,n,i,r,o,a){i.removeAll();for(var l=0;l<n.length-1;l++){var u=s(r,o);u&&(u.__dimIdx=l,e[l]?(u.setPosition(e[l]),Vh[a?"initProps":"updateProps"](u,{x:n[l][0],y:n[l][1]},t,o)):u.setPosition(n[l]),i.add(u))}}function u(t){return z(t,(function(t){return[i.cx,i.cy]}))}o.diff(a).add((function(e){var n=o.getItemLayout(e);if(n){var i=new Lu,r=new Ou,a={shape:{points:n}};i.shape.points=u(n),r.shape.points=u(n),rh(i,a,t,e),rh(r,a,t,e);var s=new Cr,h=new Cr;s.add(r),s.add(i),s.add(h),l(r.shape.points,n,h,o,e,!0),o.setItemGraphicEl(e,s)}})).update((function(e,n){var i=a.getItemGraphicEl(n),r=i.childAt(0),s=i.childAt(1),u=i.childAt(2),h={shape:{points:o.getItemLayout(e)}};h.shape.points&&(l(r.shape.points,h.shape.points,u,o,e,!1),uh(s),uh(r),ih(r,h,t),ih(s,h,t),o.setItemGraphicEl(e,i))})).remove((function(t){r.remove(a.getItemGraphicEl(t))})).execute(),o.eachItemGraphicEl((function(t,e){var n=o.getItemModel(e),i=t.childAt(0),a=t.childAt(1),s=t.childAt(2),l=o.getItemVisual(e,"style"),u=l.fill;r.add(t),i.useStyle(k(n.getModel("lineStyle").getLineStyle(),{fill:"none",stroke:u})),zl(i,n,"lineStyle"),zl(a,n,"areaStyle");var h=n.getModel("areaStyle"),c=h.isEmpty()&&h.parentModel.isEmpty();a.ignore=c,E(["emphasis","select","blur"],(function(t){var e=n.getModel([t,"areaStyle"]),i=e.isEmpty()&&e.parentModel.isEmpty();a.ensureState(t).ignore=i&&c})),a.useStyle(k(h.getAreaStyle(),{fill:u,opacity:.7,decal:l.decal}));var p=n.getModel("emphasis"),d=p.getModel("itemStyle").getItemStyle();s.eachChild((function(t){if(t instanceof xs){var i=t.style;t.useStyle(A({image:i.image,x:i.x,y:i.y,width:i.width,height:i.height},l))}else t.useStyle(l),t.setColor(u),t.style.strokeNoScale=!0;t.ensureState("emphasis").style=T(d);var r=o.getStore().get(o.getDimensionIndex(t.__dimIdx),e);(null==r||isNaN(r))&&(r=""),Wh(t,Hh(n),{labelFetcher:o.hostModel,labelDataIndex:e,labelDimIndex:t.__dimIdx,defaultText:r,inheritColor:u,defaultOpacity:l.opacity})})),Ol(t,p.get("focus"),p.get("blurScope"),p.get("disabled"))})),this._data=o},e.prototype.remove=function(){this.group.removeAll(),this._data=null},e.type="radar",e}(mg),yI=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.hasSymbolVisual=!0,n}return n(e,t),e.prototype.init=function(e){t.prototype.init.apply(this,arguments),this.legendVisualProvider=new lM(W(this.getData,this),W(this.getRawData,this))},e.prototype.getInitialData=function(t,e){return sM(this,{generateCoord:"indicator_",generateCoordCount:1/0})},e.prototype.formatTooltip=function(t,e,n){var i=this.getData(),r=this.coordinateSystem.getIndicatorAxes(),o=this.getData().getName(t),a=""===o?this.name:o,s=tg(this,t);return Uf("section",{header:a,sortBlocks:!0,blocks:z(r,(function(e){var n=i.get(i.mapDimension(e.dim),t);return Uf("nameValue",{markerType:"subItem",markerColor:s,name:e.name,value:n,sortParam:n})}))})},e.prototype.getTooltipPosition=function(t){if(null!=t)for(var e=this.getData(),n=this.coordinateSystem,i=e.getValues(z(n.dimensions,(function(t){return e.mapDimension(t)})),t),r=0,o=i.length;r<o;r++)if(!isNaN(i[r])){var a=n.getIndicatorAxes();return n.coordToPoint(a[r].dataToCoord(i[r]),r)}},e.type="series.radar",e.dependencies=["radar"],e.defaultOption={z:2,colorBy:"data",coordinateSystem:"radar",legendHoverLink:!0,radarIndex:0,lineStyle:{width:2,type:"solid",join:"round"},label:{position:"top"},symbolSize:8},e}(ag),vI=_M.value;function mI(t,e){return k({show:e},t)}var xI=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.optionUpdated=function(){var t=this.get("boundaryGap"),e=this.get("splitNumber"),n=this.get("scale"),i=this.get("axisLine"),r=this.get("axisTick"),o=this.get("axisLabel"),a=this.get("axisName"),s=this.get(["axisName","show"]),l=this.get(["axisName","formatter"]),u=this.get("axisNameGap"),h=this.get("triggerEvent"),c=z(this.get("indicator")||[],(function(c){null!=c.max&&c.max>0&&!c.min?c.min=0:null!=c.min&&c.min<0&&!c.max&&(c.max=0);var p=a;null!=c.color&&(p=k({color:c.color},a));var d=C(T(c),{boundaryGap:t,splitNumber:e,scale:n,axisLine:i,axisTick:r,axisLabel:o,name:c.text,showName:s,nameLocation:"end",nameGap:u,nameTextStyle:p,triggerEvent:h},!1);if(s||(d.name=""),X(l)){var f=d.name;d.name=l.replace("{value}",null!=f?f:"")}else U(l)&&(d.name=l(d.name,d));var g=new pc(d,null,this.ecModel);return R(g,h_.prototype),g.mainType="radar",g.componentIndex=this.componentIndex,g}),this);this._indicatorModels=c},e.prototype.getIndicatorModels=function(){return this._indicatorModels},e.type="radar",e.defaultOption={z:0,center:["50%","50%"],radius:"75%",startAngle:90,axisName:{show:!0},boundaryGap:[0,0],splitNumber:5,axisNameGap:15,scale:!1,shape:"polygon",axisLine:C({lineStyle:{color:"#bbb"}},vI.axisLine),axisLabel:mI(vI.axisLabel,!1),axisTick:mI(vI.axisTick,!1),splitLine:mI(vI.splitLine,!0),splitArea:mI(vI.splitArea,!0),indicator:[]},e}(Ip),_I=["axisLine","axisTickLabel","axisName"],bI=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){this.group.removeAll(),this._buildAxes(t),this._buildSplitLineAndArea(t)},e.prototype._buildAxes=function(t){var e=t.coordinateSystem;E(z(e.getIndicatorAxes(),(function(t){var n=t.model.get("showName")?t.name:"";return new BM(t.model,{axisName:n,position:[e.cx,e.cy],rotation:t.angle,labelDirection:-1,tickDirection:-1,nameDirection:1})})),(function(t){E(_I,t.add,t),this.group.add(t.getGroup())}),this)},e.prototype._buildSplitLineAndArea=function(t){var e=t.coordinateSystem,n=e.getIndicatorAxes();if(n.length){var i=t.get("shape"),r=t.getModel("splitLine"),o=t.getModel("splitArea"),a=r.getModel("lineStyle"),s=o.getModel("areaStyle"),l=r.get("show"),u=o.get("show"),h=a.get("color"),c=s.get("color"),p=Y(h)?h:[h],d=Y(c)?c:[c],f=[],g=[];if("circle"===i)for(var y=n[0].getTicksCoords(),v=e.cx,m=e.cy,x=0;x<y.length;x++){if(l)f[C(f,p,x)].push(new uu({shape:{cx:v,cy:m,r:y[x].coord}}));if(u&&x<y.length-1)g[C(g,d,x)].push(new Du({shape:{cx:v,cy:m,r0:y[x].coord,r:y[x+1].coord}}))}else{var _,b=z(n,(function(t,n){var i=t.getTicksCoords();return _=null==_?i.length-1:Math.min(i.length-1,_),z(i,(function(t){return e.coordToPoint(t.coord,n)}))})),w=[];for(x=0;x<=_;x++){for(var S=[],M=0;M<n.length;M++)S.push(b[M][x]);if(S[0]&&S.push(S[0].slice()),l)f[C(f,p,x)].push(new Ou({shape:{points:S}}));if(u&&w)g[C(g,d,x-1)].push(new Lu({shape:{points:S.concat(w)}}));w=S.slice().reverse()}}var I=a.getLineStyle(),T=s.getAreaStyle();E(g,(function(t,e){this.group.add(bh(t,{style:k({stroke:"none",fill:d[e%d.length]},T),silent:!0}))}),this),E(f,(function(t,e){this.group.add(bh(t,{style:k({fill:"none",stroke:p[e%p.length]},I),silent:!0}))}),this)}function C(t,e,n){var i=n%e.length;return t[i]=t[i]||[],i}},e.type="radar",e}(fg),wI=function(t){function e(e,n,i){var r=t.call(this,e,n,i)||this;return r.type="value",r.angle=0,r.name="",r}return n(e,t),e}(G_),SI=function(){function t(t,e,n){this.dimensions=[],this._model=t,this._indicatorAxes=z(t.getIndicatorModels(),(function(t,e){var n="indicator_"+e,i=new wI(n,new vx);return i.name=t.get("name"),i.model=t,t.axis=i,this.dimensions.push(n),i}),this),this.resize(t,n)}return t.prototype.getIndicatorAxes=function(){return this._indicatorAxes},t.prototype.dataToPoint=function(t,e){var n=this._indicatorAxes[e];return this.coordToPoint(n.dataToCoord(t),e)},t.prototype.coordToPoint=function(t,e){var n=this._indicatorAxes[e].angle;return[this.cx+t*Math.cos(n),this.cy-t*Math.sin(n)]},t.prototype.pointToData=function(t){var e=t[0]-this.cx,n=t[1]-this.cy,i=Math.sqrt(e*e+n*n);e/=i,n/=i;for(var r,o=Math.atan2(-n,e),a=1/0,s=-1,l=0;l<this._indicatorAxes.length;l++){var u=this._indicatorAxes[l],h=Math.abs(o-u.angle);h<a&&(r=u,s=l,a=h)}return[s,+(r&&r.coordToData(i))]},t.prototype.resize=function(t,e){var n=t.get("center"),i=e.getWidth(),r=e.getHeight(),o=Math.min(i,r)/2;this.cx=Er(n[0],i),this.cy=Er(n[1],r),this.startAngle=t.get("startAngle")*Math.PI/180;var a=t.get("radius");(X(a)||j(a))&&(a=[0,a]),this.r0=Er(a[0],o),this.r=Er(a[1],o),E(this._indicatorAxes,(function(t,e){t.setExtent(this.r0,this.r);var n=this.startAngle+e*Math.PI*2/this._indicatorAxes.length;n=Math.atan2(Math.sin(n),Math.cos(n)),t.angle=n}),this)},t.prototype.update=function(t,e){var n=this._indicatorAxes,i=this._model;E(n,(function(t){t.scale.setExtent(1/0,-1/0)})),t.eachSeriesByType("radar",(function(e,r){if("radar"===e.get("coordinateSystem")&&t.getComponent("radar",e.get("radarIndex"))===i){var o=e.getData();E(n,(function(t){t.scale.unionExtentFromData(o,o.mapDimension(t.dim))}))}}),this);var r=i.get("splitNumber"),o=new vx;o.setExtent(0,r),o.setInterval(1),E(n,(function(t,e){OM(t.scale,t.model,o)}))},t.prototype.convertToPixel=function(t,e,n){return console.warn("Not implemented."),null},t.prototype.convertFromPixel=function(t,e,n){return console.warn("Not implemented."),null},t.prototype.containPoint=function(t){return console.warn("Not implemented."),!1},t.create=function(e,n){var i=[];return e.eachComponent("radar",(function(r){var o=new t(r,e,n);i.push(o),r.coordinateSystem=o})),e.eachSeriesByType("radar",(function(t){"radar"===t.get("coordinateSystem")&&(t.coordinateSystem=i[t.get("radarIndex")||0])})),i},t.dimensions=[],t}();function MI(t){t.registerCoordinateSystem("radar",SI),t.registerComponentModel(xI),t.registerComponentView(bI),t.registerVisual({seriesType:"radar",reset:function(t){var e=t.getData();e.each((function(t){e.setItemVisual(t,"legendIcon","roundRect")})),e.setVisual("legendIcon","roundRect")}})}var II="\0_ec_interaction_mutex";function TI(t,e){return!!CI(t)[e]}function CI(t){return t[II]||(t[II]={})}um({type:"takeGlobalCursor",event:"globalCursorTaken",update:"update"},xt);var DI=function(t){function e(e){var n=t.call(this)||this;n._zr=e;var i=W(n._mousedownHandler,n),r=W(n._mousemoveHandler,n),o=W(n._mouseupHandler,n),a=W(n._mousewheelHandler,n),s=W(n._pinchHandler,n);return n.enable=function(t,n){this.disable(),this._opt=k(T(n)||{},{zoomOnMouseWheel:!0,moveOnMouseMove:!0,moveOnMouseWheel:!1,preventDefaultMouseMove:!0}),null==t&&(t=!0),!0!==t&&"move"!==t&&"pan"!==t||(e.on("mousedown",i),e.on("mousemove",r),e.on("mouseup",o)),!0!==t&&"scale"!==t&&"zoom"!==t||(e.on("mousewheel",a),e.on("pinch",s))},n.disable=function(){e.off("mousedown",i),e.off("mousemove",r),e.off("mouseup",o),e.off("mousewheel",a),e.off("pinch",s)},n}return n(e,t),e.prototype.isDragging=function(){return this._dragging},e.prototype.isPinching=function(){return this._pinching},e.prototype.setPointerChecker=function(t){this.pointerChecker=t},e.prototype.dispose=function(){this.disable()},e.prototype._mousedownHandler=function(t){if(!(le(t)||t.target&&t.target.draggable)){var e=t.offsetX,n=t.offsetY;this.pointerChecker&&this.pointerChecker(t,e,n)&&(this._x=e,this._y=n,this._dragging=!0)}},e.prototype._mousemoveHandler=function(t){if(this._dragging&&LI("moveOnMouseMove",t,this._opt)&&"pinch"!==t.gestureEvent&&!TI(this._zr,"globalPan")){var e=t.offsetX,n=t.offsetY,i=this._x,r=this._y,o=e-i,a=n-r;this._x=e,this._y=n,this._opt.preventDefaultMouseMove&&se(t.event),kI(this,"pan","moveOnMouseMove",t,{dx:o,dy:a,oldX:i,oldY:r,newX:e,newY:n,isAvailableBehavior:null})}},e.prototype._mouseupHandler=function(t){le(t)||(this._dragging=!1)},e.prototype._mousewheelHandler=function(t){var e=LI("zoomOnMouseWheel",t,this._opt),n=LI("moveOnMouseWheel",t,this._opt),i=t.wheelDelta,r=Math.abs(i),o=t.offsetX,a=t.offsetY;if(0!==i&&(e||n)){if(e){var s=r>3?1.4:r>1?1.2:1.1;AI(this,"zoom","zoomOnMouseWheel",t,{scale:i>0?s:1/s,originX:o,originY:a,isAvailableBehavior:null})}if(n){var l=Math.abs(i);AI(this,"scrollMove","moveOnMouseWheel",t,{scrollDelta:(i>0?1:-1)*(l>3?.4:l>1?.15:.05),originX:o,originY:a,isAvailableBehavior:null})}}},e.prototype._pinchHandler=function(t){TI(this._zr,"globalPan")||AI(this,"zoom",null,t,{scale:t.pinchScale>1?1.1:1/1.1,originX:t.pinchX,originY:t.pinchY,isAvailableBehavior:null})},e}(Xt);function AI(t,e,n,i,r){t.pointerChecker&&t.pointerChecker(i,r.originX,r.originY)&&(se(i.event),kI(t,e,n,i,r))}function kI(t,e,n,i,r){r.isAvailableBehavior=W(LI,null,n,i),t.trigger(e,r)}function LI(t,e,n){var i=n[t];return!t||i&&(!X(i)||e.event[i+"Key"])}function PI(t,e,n){var i=t.target;i.x+=e,i.y+=n,i.dirty()}function OI(t,e,n,i){var r=t.target,o=t.zoomLimit,a=t.zoom=t.zoom||1;if(a*=e,o){var s=o.min||0,l=o.max||1/0;a=Math.max(Math.min(l,a),s)}var u=a/t.zoom;t.zoom=a,r.x-=(n-r.x)*(u-1),r.y-=(i-r.y)*(u-1),r.scaleX*=u,r.scaleY*=u,r.dirty()}var RI,NI={axisPointer:1,tooltip:1,brush:1};function EI(t,e,n){var i=e.getComponentByElement(t.topTarget),r=i&&i.coordinateSystem;return i&&i!==n&&!NI.hasOwnProperty(i.mainType)&&r&&r.model!==n}function zI(t){X(t)&&(t=(new DOMParser).parseFromString(t,"text/xml"));var e=t;for(9===e.nodeType&&(e=e.firstChild);"svg"!==e.nodeName.toLowerCase()||1!==e.nodeType;)e=e.nextSibling;return e}var VI={fill:"fill",stroke:"stroke","stroke-width":"lineWidth",opacity:"opacity","fill-opacity":"fillOpacity","stroke-opacity":"strokeOpacity","stroke-dasharray":"lineDash","stroke-dashoffset":"lineDashOffset","stroke-linecap":"lineCap","stroke-linejoin":"lineJoin","stroke-miterlimit":"miterLimit","font-family":"fontFamily","font-size":"fontSize","font-style":"fontStyle","font-weight":"fontWeight","text-anchor":"textAlign",visibility:"visibility",display:"display"},BI=G(VI),FI={"alignment-baseline":"textBaseline","stop-color":"stopColor"},GI=G(FI),WI=function(){function t(){this._defs={},this._root=null}return t.prototype.parse=function(t,e){e=e||{};var n=zI(t);this._defsUsePending=[];var i=new Cr;this._root=i;var r=[],o=n.getAttribute("viewBox")||"",a=parseFloat(n.getAttribute("width")||e.width),s=parseFloat(n.getAttribute("height")||e.height);isNaN(a)&&(a=null),isNaN(s)&&(s=null),jI(n,i,null,!0,!1);for(var l,u,h=n.firstChild;h;)this._parseNode(h,i,r,null,!1,!1),h=h.nextSibling;if(function(t,e){for(var n=0;n<e.length;n++){var i=e[n];i[0].style[i[1]]=t[i[2]]}}(this._defs,this._defsUsePending),this._defsUsePending=[],o){var c=JI(o);c.length>=4&&(l={x:parseFloat(c[0]||0),y:parseFloat(c[1]||0),width:parseFloat(c[2]),height:parseFloat(c[3])})}if(l&&null!=a&&null!=s&&(u=iT(l,{x:0,y:0,width:a,height:s}),!e.ignoreViewBox)){var p=i;(i=new Cr).add(p),p.scaleX=p.scaleY=u.scale,p.x=u.x,p.y=u.y}return e.ignoreRootClip||null==a||null==s||i.setClipPath(new Ts({shape:{x:0,y:0,width:a,height:s}})),{root:i,width:a,height:s,viewBoxRect:l,viewBoxTransform:u,named:r}},t.prototype._parseNode=function(t,e,n,i,r,o){var a,s=t.nodeName.toLowerCase(),l=i;if("defs"===s&&(r=!0),"text"===s&&(o=!0),"defs"===s||"switch"===s)a=e;else{if(!r){var u=RI[s];if(u&&mt(RI,s)){a=u.call(this,t,e);var h=t.getAttribute("name");if(h){var c={name:h,namedFrom:null,svgNodeTagLower:s,el:a};n.push(c),"g"===s&&(l=c)}else i&&n.push({name:i.name,namedFrom:i,svgNodeTagLower:s,el:a});e.add(a)}}var p=HI[s];if(p&&mt(HI,s)){var d=p.call(this,t),f=t.getAttribute("id");f&&(this._defs[f]=d)}}if(a&&a.isGroup)for(var g=t.firstChild;g;)1===g.nodeType?this._parseNode(g,a,n,l,r,o):3===g.nodeType&&o&&this._parseText(g,a),g=g.nextSibling},t.prototype._parseText=function(t,e){var n=new ys({style:{text:t.textContent},silent:!0,x:this._textX||0,y:this._textY||0});XI(e,n),jI(t,n,this._defsUsePending,!1,!1),function(t,e){var n=e.__selfStyle;if(n){var i=n.textBaseline,r=i;i&&"auto"!==i?"baseline"===i?r="alphabetic":"before-edge"===i||"text-before-edge"===i?r="top":"after-edge"===i||"text-after-edge"===i?r="bottom":"central"!==i&&"mathematical"!==i||(r="middle"):r="alphabetic",t.style.textBaseline=r}var o=e.__inheritedStyle;if(o){var a=o.textAlign,s=a;a&&("middle"===a&&(s="center"),t.style.textAlign=s)}}(n,e);var i=n.style,r=i.fontSize;r&&r<9&&(i.fontSize=9,n.scaleX*=r/9,n.scaleY*=r/9);var o=(i.fontSize||i.fontFamily)&&[i.fontStyle,i.fontWeight,(i.fontSize||12)+"px",i.fontFamily||"sans-serif"].join(" ");i.font=o;var a=n.getBoundingRect();return this._textX+=a.width,e.add(n),n},t.internalField=void(RI={g:function(t,e){var n=new Cr;return XI(e,n),jI(t,n,this._defsUsePending,!1,!1),n},rect:function(t,e){var n=new Ts;return XI(e,n),jI(t,n,this._defsUsePending,!1,!1),n.setShape({x:parseFloat(t.getAttribute("x")||"0"),y:parseFloat(t.getAttribute("y")||"0"),width:parseFloat(t.getAttribute("width")||"0"),height:parseFloat(t.getAttribute("height")||"0")}),n.silent=!0,n},circle:function(t,e){var n=new uu;return XI(e,n),jI(t,n,this._defsUsePending,!1,!1),n.setShape({cx:parseFloat(t.getAttribute("cx")||"0"),cy:parseFloat(t.getAttribute("cy")||"0"),r:parseFloat(t.getAttribute("r")||"0")}),n.silent=!0,n},line:function(t,e){var n=new Eu;return XI(e,n),jI(t,n,this._defsUsePending,!1,!1),n.setShape({x1:parseFloat(t.getAttribute("x1")||"0"),y1:parseFloat(t.getAttribute("y1")||"0"),x2:parseFloat(t.getAttribute("x2")||"0"),y2:parseFloat(t.getAttribute("y2")||"0")}),n.silent=!0,n},ellipse:function(t,e){var n=new cu;return XI(e,n),jI(t,n,this._defsUsePending,!1,!1),n.setShape({cx:parseFloat(t.getAttribute("cx")||"0"),cy:parseFloat(t.getAttribute("cy")||"0"),rx:parseFloat(t.getAttribute("rx")||"0"),ry:parseFloat(t.getAttribute("ry")||"0")}),n.silent=!0,n},polygon:function(t,e){var n,i=t.getAttribute("points");i&&(n=ZI(i));var r=new Lu({shape:{points:n||[]},silent:!0});return XI(e,r),jI(t,r,this._defsUsePending,!1,!1),r},polyline:function(t,e){var n,i=t.getAttribute("points");i&&(n=ZI(i));var r=new Ou({shape:{points:n||[]},silent:!0});return XI(e,r),jI(t,r,this._defsUsePending,!1,!1),r},image:function(t,e){var n=new xs;return XI(e,n),jI(t,n,this._defsUsePending,!1,!1),n.setStyle({image:t.getAttribute("xlink:href")||t.getAttribute("href"),x:+t.getAttribute("x"),y:+t.getAttribute("y"),width:+t.getAttribute("width"),height:+t.getAttribute("height")}),n.silent=!0,n},text:function(t,e){var n=t.getAttribute("x")||"0",i=t.getAttribute("y")||"0",r=t.getAttribute("dx")||"0",o=t.getAttribute("dy")||"0";this._textX=parseFloat(n)+parseFloat(r),this._textY=parseFloat(i)+parseFloat(o);var a=new Cr;return XI(e,a),jI(t,a,this._defsUsePending,!1,!0),a},tspan:function(t,e){var n=t.getAttribute("x"),i=t.getAttribute("y");null!=n&&(this._textX=parseFloat(n)),null!=i&&(this._textY=parseFloat(i));var r=t.getAttribute("dx")||"0",o=t.getAttribute("dy")||"0",a=new Cr;return XI(e,a),jI(t,a,this._defsUsePending,!1,!0),this._textX+=parseFloat(r),this._textY+=parseFloat(o),a},path:function(t,e){var n=au(t.getAttribute("d")||"");return XI(e,n),jI(t,n,this._defsUsePending,!1,!1),n.silent=!0,n}}),t}(),HI={lineargradient:function(t){var e=parseInt(t.getAttribute("x1")||"0",10),n=parseInt(t.getAttribute("y1")||"0",10),i=parseInt(t.getAttribute("x2")||"10",10),r=parseInt(t.getAttribute("y2")||"0",10),o=new Uu(e,n,i,r);return YI(t,o),UI(t,o),o},radialgradient:function(t){var e=parseInt(t.getAttribute("cx")||"0",10),n=parseInt(t.getAttribute("cy")||"0",10),i=parseInt(t.getAttribute("r")||"0",10),r=new Xu(e,n,i);return YI(t,r),UI(t,r),r}};function YI(t,e){"userSpaceOnUse"===t.getAttribute("gradientUnits")&&(e.global=!0)}function UI(t,e){for(var n=t.firstChild;n;){if(1===n.nodeType&&"stop"===n.nodeName.toLocaleLowerCase()){var i=n.getAttribute("offset"),r=void 0;r=i&&i.indexOf("%")>0?parseInt(i,10)/100:i?parseFloat(i):0;var o={};nT(n,o,o);var a=o.stopColor||n.getAttribute("stop-color")||"#000000";e.colorStops.push({offset:r,color:a})}n=n.nextSibling}}function XI(t,e){t&&t.__inheritedStyle&&(e.__inheritedStyle||(e.__inheritedStyle={}),k(e.__inheritedStyle,t.__inheritedStyle))}function ZI(t){for(var e=JI(t),n=[],i=0;i<e.length;i+=2){var r=parseFloat(e[i]),o=parseFloat(e[i+1]);n.push([r,o])}return n}function jI(t,e,n,i,r){var o=e,a=o.__inheritedStyle=o.__inheritedStyle||{},s={};1===t.nodeType&&(function(t,e){var n=t.getAttribute("transform");if(n){n=n.replace(/,/g," ");var i=[],r=null;n.replace(QI,(function(t,e,n){return i.push(e,n),""}));for(var o=i.length-1;o>0;o-=2){var a=i[o],s=i[o-1],l=JI(a);switch(r=r||[1,0,0,1,0,0],s){case"translate":Ei(r,r,[parseFloat(l[0]),parseFloat(l[1]||"0")]);break;case"scale":Vi(r,r,[parseFloat(l[0]),parseFloat(l[1]||l[0])]);break;case"rotate":zi(r,r,-parseFloat(l[0])*tT);break;case"skewX":Ni(r,[1,0,Math.tan(parseFloat(l[0])*tT),1,0,0],r);break;case"skewY":Ni(r,[1,Math.tan(parseFloat(l[0])*tT),0,1,0,0],r);break;case"matrix":r[0]=parseFloat(l[0]),r[1]=parseFloat(l[1]),r[2]=parseFloat(l[2]),r[3]=parseFloat(l[3]),r[4]=parseFloat(l[4]),r[5]=parseFloat(l[5])}}e.setLocalTransform(r)}}(t,e),nT(t,a,s),i||function(t,e,n){for(var i=0;i<BI.length;i++){var r=BI[i];null!=(o=t.getAttribute(r))&&(e[VI[r]]=o)}for(i=0;i<GI.length;i++){var o;r=GI[i];null!=(o=t.getAttribute(r))&&(n[FI[r]]=o)}}(t,a,s)),o.style=o.style||{},null!=a.fill&&(o.style.fill=KI(o,"fill",a.fill,n)),null!=a.stroke&&(o.style.stroke=KI(o,"stroke",a.stroke,n)),E(["lineWidth","opacity","fillOpacity","strokeOpacity","miterLimit","fontSize"],(function(t){null!=a[t]&&(o.style[t]=parseFloat(a[t]))})),E(["lineDashOffset","lineCap","lineJoin","fontWeight","fontFamily","fontStyle","textAlign"],(function(t){null!=a[t]&&(o.style[t]=a[t])})),r&&(o.__selfStyle=s),a.lineDash&&(o.style.lineDash=z(JI(a.lineDash),(function(t){return parseFloat(t)}))),"hidden"!==a.visibility&&"collapse"!==a.visibility||(o.invisible=!0),"none"===a.display&&(o.ignore=!0)}var qI=/^url\(\s*#(.*?)\)/;function KI(t,e,n,i){var r=n&&n.match(qI);if(!r)return"none"===n&&(n=null),n;var o=ut(r[1]);i.push([t,e,o])}var $I=/-?([0-9]*\.)?[0-9]+([eE]-?[0-9]+)?/g;function JI(t){return t.match($I)||[]}var QI=/(translate|scale|rotate|skewX|skewY|matrix)\(([\-\s0-9\.eE,]*)\)/g,tT=Math.PI/180;var eT=/([^\s:;]+)\s*:\s*([^:;]+)/g;function nT(t,e,n){var i,r=t.getAttribute("style");if(r)for(eT.lastIndex=0;null!=(i=eT.exec(r));){var o=i[1],a=mt(VI,o)?VI[o]:null;a&&(e[a]=i[2]);var s=mt(FI,o)?FI[o]:null;s&&(n[s]=i[2])}}function iT(t,e){var n=e.width/t.width,i=e.height/t.height,r=Math.min(n,i);return{scale:r,x:-(t.x+t.width/2)*r+(e.x+e.width/2),y:-(t.y+t.height/2)*r+(e.y+e.height/2)}}var rT=ft(["rect","circle","line","ellipse","polygon","polyline","path","text","tspan","g"]),oT=function(){function t(t,e){this.type="geoSVG",this._usedGraphicMap=ft(),this._freedGraphics=[],this._mapName=t,this._parsedXML=zI(e)}return t.prototype.load=function(){var t=this._firstGraphic;if(!t){t=this._firstGraphic=this._buildGraphic(this._parsedXML),this._freedGraphics.push(t),this._boundingRect=this._firstGraphic.boundingRect.clone();var e=function(t){var e=[],n=ft();return E(t,(function(t){if(null==t.namedFrom){var i=new w_(t.name,t.el);e.push(i),n.set(t.name,i)}})),{regions:e,regionsMap:n}}(t.named),n=e.regions,i=e.regionsMap;this._regions=n,this._regionsMap=i}return{boundingRect:this._boundingRect,regions:this._regions,regionsMap:this._regionsMap}},t.prototype._buildGraphic=function(t){var e,n,i,r;try{lt(null!=(n=(e=t&&(i=t,r={ignoreViewBox:!0,ignoreRootClip:!0},(new WI).parse(i,r))||{}).root))}catch(t){throw new Error("Invalid svg format\n"+t.message)}var o=new Cr;o.add(n),o.isGeoSVGGraphicRoot=!0;var a=e.width,s=e.height,l=e.viewBoxRect,u=this._boundingRect;if(!u){var h=void 0,c=void 0,p=void 0,d=void 0;if(null!=a?(h=0,p=a):l&&(h=l.x,p=l.width),null!=s?(c=0,d=s):l&&(c=l.y,d=l.height),null==h||null==c){var f=n.getBoundingRect();null==h&&(h=f.x,p=f.width),null==c&&(c=f.y,d=f.height)}u=this._boundingRect=new sr(h,c,p,d)}if(l){var g=iT(l,u);n.scaleX=n.scaleY=g.scale,n.x=g.x,n.y=g.y}o.setClipPath(new Ts({shape:u.plain()}));var y=[];return E(e.named,(function(t){var e;null!=rT.get(t.svgNodeTagLower)&&(y.push(t),(e=t.el).silent=!1,e.isGroup&&e.traverse((function(t){t.silent=!1})))})),{root:o,boundingRect:u,named:y}},t.prototype.useGraphic=function(t){var e=this._usedGraphicMap,n=e.get(t);return n||(n=this._freedGraphics.pop()||this._buildGraphic(this._parsedXML),e.set(t,n),n)},t.prototype.freeGraphic=function(t){var e=this._usedGraphicMap,n=e.get(t);n&&(e.removeKey(t),this._freedGraphics.push(n))},t}();for(var aT=[126,25],sT="南海诸岛",lT=[[[0,3.5],[7,11.2],[15,11.9],[30,7],[42,.7],[52,.7],[56,7.7],[59,.7],[64,.7],[64,0],[5,0],[0,3.5]],[[13,16.1],[19,14.7],[16,21.7],[11,23.1],[13,16.1]],[[12,32.2],[14,38.5],[15,38.5],[13,32.2],[12,32.2]],[[16,47.6],[12,53.2],[13,53.2],[18,47.6],[16,47.6]],[[6,64.4],[8,70],[9,70],[8,64.4],[6,64.4]],[[23,82.6],[29,79.8],[30,79.8],[25,82.6],[23,82.6]],[[37,70.7],[43,62.3],[44,62.3],[39,70.7],[37,70.7]],[[48,51.1],[51,45.5],[53,45.5],[50,51.1],[48,51.1]],[[51,35],[51,28.7],[53,28.7],[53,35],[51,35]],[[52,22.4],[55,17.5],[56,17.5],[53,22.4],[52,22.4]],[[58,12.6],[62,7],[63,7],[60,12.6],[58,12.6]],[[0,3.5],[0,93.1],[64,93.1],[64,0],[63,0],[63,92.4],[1,92.4],[1,3.5],[0,3.5]]],uT=0;uT<lT.length;uT++)for(var hT=0;hT<lT[uT].length;hT++)lT[uT][hT][0]/=10.5,lT[uT][hT][1]/=-14,lT[uT][hT][0]+=aT[0],lT[uT][hT][1]+=aT[1];var cT={"南海诸岛":[32,80],"广东":[0,-10],"香港":[10,5],"澳门":[-10,10],"天津":[5,5]};var pT=[[[123.45165252685547,25.73527164402261],[123.49731445312499,25.73527164402261],[123.49731445312499,25.750734064600884],[123.45165252685547,25.750734064600884],[123.45165252685547,25.73527164402261]]];var dT=function(){function t(t,e,n){var i;this.type="geoJSON",this._parsedMap=ft(),this._mapName=t,this._specialAreas=n,this._geoJSON=X(i=e)?"undefined"!=typeof JSON&&JSON.parse?JSON.parse(i):new Function("return ("+i+");")():i}return t.prototype.load=function(t,e){e=e||"name";var n=this._parsedMap.get(e);if(!n){var i=this._parseToRegions(e);n=this._parsedMap.set(e,{regions:i,boundingRect:fT(i)})}var r=ft(),o=[];return E(n.regions,(function(e){var n=e.name;t&&mt(t,n)&&(e=e.cloneShallow(n=t[n])),o.push(e),r.set(n,e)})),{regions:o,boundingRect:n.boundingRect||new sr(0,0,0,0),regionsMap:r}},t.prototype._parseToRegions=function(t){var e,n=this._mapName,i=this._geoJSON;try{e=i?I_(i,t):[]}catch(t){throw new Error("Invalid geoJson format\n"+t.message)}return function(t,e){if("china"===t){for(var n=0;n<e.length;n++)if(e[n].name===sT)return;e.push(new b_(sT,z(lT,(function(t){return{type:"polygon",exterior:t}})),aT))}}(n,e),E(e,(function(t){var e=t.name;!function(t,e){if("china"===t){var n=cT[e.name];if(n){var i=e.getCenter();i[0]+=n[0]/10.5,i[1]+=-n[1]/14,e.setCenter(i)}}}(n,t),function(t,e){"china"===t&&"台湾"===e.name&&e.geometries.push({type:"polygon",exterior:pT[0]})}(n,t);var i=this._specialAreas&&this._specialAreas[e];i&&t.transformTo(i.left,i.top,i.width,i.height)}),this),e},t.prototype.getMapForUser=function(){return{geoJson:this._geoJSON,geoJSON:this._geoJSON,specialAreas:this._specialAreas}},t}();function fT(t){for(var e,n=0;n<t.length;n++){var i=t[n].getBoundingRect();(e=e||i.clone()).union(i)}return e}var gT=ft(),yT=function(t,e,n){if(e.svg){var i=new oT(t,e.svg);gT.set(t,i)}else{var r=e.geoJson||e.geoJSON;r&&!e.features?n=e.specialAreas:r=e;i=new dT(t,r,n);gT.set(t,i)}},vT=function(t){return gT.get(t)},mT=function(t){var e=gT.get(t);return e&&"geoJSON"===e.type&&e.getMapForUser()},xT=function(t,e,n){var i=gT.get(t);if(i)return i.load(e,n)},_T=["rect","circle","line","ellipse","polygon","polyline","path"],bT=ft(_T),wT=ft(_T.concat(["g"])),ST=ft(_T.concat(["g"])),MT=So();function IT(t){var e=t.getItemStyle(),n=t.get("areaColor");return null!=n&&(e.fill=n),e}function TT(t){var e=t.style;e&&(e.stroke=e.stroke||e.fill,e.fill=null)}var CT=function(){function t(t){var e=new Cr;this.uid=fc("ec_map_draw"),this._controller=new DI(t.getZr()),this._controllerHost={target:e},this.group=e,e.add(this._regionsGroup=new Cr),e.add(this._svgGroup=new Cr)}return t.prototype.draw=function(t,e,n,i,r){var o="geo"===t.mainType,a=t.getData&&t.getData();o&&e.eachComponent({mainType:"series",subType:"map"},(function(e){a||e.getHostGeoModel()!==t||(a=e.getData())}));var s=t.coordinateSystem,l=this._regionsGroup,u=this.group,h=s.getTransformInfo(),c=h.raw,p=h.roam;!l.childAt(0)||r?(u.x=p.x,u.y=p.y,u.scaleX=p.scaleX,u.scaleY=p.scaleY,u.dirty()):ih(u,p,t);var d=a&&a.getVisual("visualMeta")&&a.getVisual("visualMeta").length>0,f={api:n,geo:s,mapOrGeoModel:t,data:a,isVisualEncodedByVisualMap:d,isGeo:o,transformInfoRaw:c};"geoJSON"===s.resourceType?this._buildGeoJSON(f):"geoSVG"===s.resourceType&&this._buildSVG(f),this._updateController(t,e,n),this._updateMapSelectHandler(t,l,n,i)},t.prototype._buildGeoJSON=function(t){var e=this._regionsGroupByName=ft(),n=ft(),i=this._regionsGroup,r=t.transformInfoRaw,o=t.mapOrGeoModel,a=t.data,s=t.geo.projection,l=s&&s.stream;function u(t,e){return e&&(t=e(t)),t&&[t[0]*r.scaleX+r.x,t[1]*r.scaleY+r.y]}function h(t){for(var e=[],n=!l&&s&&s.project,i=0;i<t.length;++i){var r=u(t[i],n);r&&e.push(r)}return e}function c(t){return{shape:{points:h(t)}}}i.removeAll(),E(t.geo.regions,(function(r){var h=r.name,p=e.get(h),d=n.get(h)||{},f=d.dataIdx,g=d.regionModel;p||(p=e.set(h,new Cr),i.add(p),f=a?a.indexOfName(h):null,g=t.isGeo?o.getRegionModel(h):a?a.getItemModel(f):null,n.set(h,{dataIdx:f,regionModel:g}));var y=[],v=[];E(r.geometries,(function(t){if("polygon"===t.type){var e=[t.exterior].concat(t.interiors||[]);l&&(e=OT(e,l)),E(e,(function(t){y.push(new Lu(c(t)))}))}else{var n=t.points;l&&(n=OT(n,l,!0)),E(n,(function(t){v.push(new Ou(c(t)))}))}}));var m=u(r.getCenter(),s&&s.project);function x(e,n){if(e.length){var i=new Hu({culling:!0,segmentIgnoreThreshold:1,shape:{paths:e}});p.add(i),DT(t,i,f,g),AT(t,i,h,g,o,f,m),n&&(TT(i),E(i.states,TT))}}x(y),x(v,!0)})),e.each((function(e,i){var r=n.get(i),a=r.dataIdx,s=r.regionModel;kT(t,e,i,s,o,a),LT(t,e,i,s,o),PT(t,e,i,s,o)}),this)},t.prototype._buildSVG=function(t){var e=t.geo.map,n=t.transformInfoRaw;this._svgGroup.x=n.x,this._svgGroup.y=n.y,this._svgGroup.scaleX=n.scaleX,this._svgGroup.scaleY=n.scaleY,this._svgResourceChanged(e)&&(this._freeSVG(),this._useSVG(e));var i=this._svgDispatcherMap=ft(),r=!1;E(this._svgGraphicRecord.named,(function(e){var n=e.name,o=t.mapOrGeoModel,a=t.data,s=e.svgNodeTagLower,l=e.el,u=a?a.indexOfName(n):null,h=o.getRegionModel(n);(null!=bT.get(s)&&l instanceof da&&DT(t,l,u,h),l instanceof da&&(l.culling=!0),l.z2EmphasisLift=0,e.namedFrom)||(null!=ST.get(s)&&AT(t,l,n,h,o,u,null),kT(t,l,n,h,o,u),LT(t,l,n,h,o),null!=wT.get(s)&&("self"===PT(t,l,n,h,o)&&(r=!0),(i.get(n)||i.set(n,[])).push(l)))}),this),this._enableBlurEntireSVG(r,t)},t.prototype._enableBlurEntireSVG=function(t,e){if(t&&e.isGeo){var n=e.mapOrGeoModel.getModel(["blur","itemStyle"]).getItemStyle().opacity;this._svgGraphicRecord.root.traverse((function(t){if(!t.isGroup){yl(t);var e=t.ensureState("blur").style||{};null==e.opacity&&null!=n&&(e.opacity=n),t.ensureState("emphasis")}}))}},t.prototype.remove=function(){this._regionsGroup.removeAll(),this._regionsGroupByName=null,this._svgGroup.removeAll(),this._freeSVG(),this._controller.dispose(),this._controllerHost=null},t.prototype.findHighDownDispatchers=function(t,e){if(null==t)return[];var n=e.coordinateSystem;if("geoJSON"===n.resourceType){var i=this._regionsGroupByName;if(i){var r=i.get(t);return r?[r]:[]}}else if("geoSVG"===n.resourceType)return this._svgDispatcherMap&&this._svgDispatcherMap.get(t)||[]},t.prototype._svgResourceChanged=function(t){return this._svgMapName!==t},t.prototype._useSVG=function(t){var e=vT(t);if(e&&"geoSVG"===e.type){var n=e.useGraphic(this.uid);this._svgGroup.add(n.root),this._svgGraphicRecord=n,this._svgMapName=t}},t.prototype._freeSVG=function(){var t=this._svgMapName;if(null!=t){var e=vT(t);e&&"geoSVG"===e.type&&e.freeGraphic(this.uid),this._svgGraphicRecord=null,this._svgDispatcherMap=null,this._svgGroup.removeAll(),this._svgMapName=null}},t.prototype._updateController=function(t,e,n){var i=t.coordinateSystem,r=this._controller,o=this._controllerHost;o.zoomLimit=t.get("scaleLimit"),o.zoom=i.getZoom(),r.enable(t.get("roam")||!1);var a=t.mainType;function s(){var e={type:"geoRoam",componentType:a};return e[a+"Id"]=t.id,e}r.off("pan").on("pan",(function(t){this._mouseDownFlag=!1,PI(o,t.dx,t.dy),n.dispatchAction(A(s(),{dx:t.dx,dy:t.dy,animation:{duration:0}}))}),this),r.off("zoom").on("zoom",(function(t){this._mouseDownFlag=!1,OI(o,t.scale,t.originX,t.originY),n.dispatchAction(A(s(),{zoom:t.scale,originX:t.originX,originY:t.originY,animation:{duration:0}}))}),this),r.setPointerChecker((function(e,r,o){return i.containPoint([r,o])&&!EI(e,n,t)}))},t.prototype.resetForLabelLayout=function(){this.group.traverse((function(t){var e=t.getTextContent();e&&(e.ignore=MT(e).ignore)}))},t.prototype._updateMapSelectHandler=function(t,e,n,i){var r=this;e.off("mousedown"),e.off("click"),t.get("selectedMode")&&(e.on("mousedown",(function(){r._mouseDownFlag=!0})),e.on("click",(function(t){r._mouseDownFlag&&(r._mouseDownFlag=!1)})))},t}();function DT(t,e,n,i){var r=i.getModel("itemStyle"),o=i.getModel(["emphasis","itemStyle"]),a=i.getModel(["blur","itemStyle"]),s=i.getModel(["select","itemStyle"]),l=IT(r),u=IT(o),h=IT(s),c=IT(a),p=t.data;if(p){var d=p.getItemVisual(n,"style"),f=p.getItemVisual(n,"decal");t.isVisualEncodedByVisualMap&&d.fill&&(l.fill=d.fill),f&&(l.decal=nv(f,t.api))}e.setStyle(l),e.style.strokeNoScale=!0,e.ensureState("emphasis").style=u,e.ensureState("select").style=h,e.ensureState("blur").style=c,yl(e)}function AT(t,e,n,i,r,o,a){var s=t.data,l=t.isGeo,u=s&&isNaN(s.get(s.mapDimension("value"),o)),h=s&&s.getItemLayout(o);if(l||u||h&&h.showLabel){var c=l?n:o,p=void 0;(!s||o>=0)&&(p=r);var d=a?{normal:{align:"center",verticalAlign:"middle"}}:null;Wh(e,Hh(i),{labelFetcher:p,labelDataIndex:c,defaultText:n},d);var f=e.getTextContent();if(f&&(MT(f).ignore=f.ignore,e.textConfig&&a)){var g=e.getBoundingRect().clone();e.textConfig.layoutRect=g,e.textConfig.position=[(a[0]-g.x)/g.width*100+"%",(a[1]-g.y)/g.height*100+"%"]}e.disableLabelAnimation=!0}else e.removeTextContent(),e.removeTextConfig(),e.disableLabelAnimation=null}function kT(t,e,n,i,r,o){t.data?t.data.setItemGraphicEl(o,e):Ws(e).eventData={componentType:"geo",componentIndex:r.componentIndex,geoIndex:r.componentIndex,name:n,region:i&&i.option||{}}}function LT(t,e,n,i,r){t.data||Nh({el:e,componentModel:r,itemName:n,itemTooltipOption:i.get("tooltip")})}function PT(t,e,n,i,r){e.highDownSilentOnTouch=!!r.get("selectedMode");var o=i.getModel("emphasis"),a=o.get("focus");return Ol(e,a,o.get("blurScope"),o.get("disabled")),t.isGeo&&function(t,e,n){var i=Ws(t);i.componentMainType=e.mainType,i.componentIndex=e.componentIndex,i.componentHighDownName=n}(e,r,n),a}function OT(t,e,n){var i,r=[];function o(){i=[]}function a(){i.length&&(r.push(i),i=[])}var s=e({polygonStart:o,polygonEnd:a,lineStart:o,lineEnd:a,point:function(t,e){isFinite(t)&&isFinite(e)&&i.push([t,e])},sphere:function(){}});return!n&&s.polygonStart(),E(t,(function(t){s.lineStart();for(var e=0;e<t.length;e++)s.point(t[e][0],t[e][1]);s.lineEnd()})),!n&&s.polygonEnd(),r}var RT=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n,i){if(!i||"mapToggleSelect"!==i.type||i.from!==this.uid){var r=this.group;if(r.removeAll(),!t.getHostGeoModel()){if(this._mapDraw&&i&&"geoRoam"===i.type&&this._mapDraw.resetForLabelLayout(),i&&"geoRoam"===i.type&&"series"===i.componentType&&i.seriesId===t.id)(o=this._mapDraw)&&r.add(o.group);else if(t.needsDrawMap){var o=this._mapDraw||new CT(n);r.add(o.group),o.draw(t,e,n,this,i),this._mapDraw=o}else this._mapDraw&&this._mapDraw.remove(),this._mapDraw=null;t.get("showLegendSymbol")&&e.getComponent("legend")&&this._renderSymbols(t,e,n)}}},e.prototype.remove=function(){this._mapDraw&&this._mapDraw.remove(),this._mapDraw=null,this.group.removeAll()},e.prototype.dispose=function(){this._mapDraw&&this._mapDraw.remove(),this._mapDraw=null},e.prototype._renderSymbols=function(t,e,n){var i=t.originalData,r=this.group;i.each(i.mapDimension("value"),(function(e,n){if(!isNaN(e)){var o=i.getItemLayout(n);if(o&&o.point){var a=o.point,s=o.offset,l=new uu({style:{fill:t.getData().getVisual("style").fill},shape:{cx:a[0]+9*s,cy:a[1],r:3},silent:!0,z2:8+(s?0:11)});if(!s){var u=t.mainSeries.getData(),h=i.getName(n),c=u.indexOfName(h),p=i.getItemModel(n),d=p.getModel("label"),f=u.getItemGraphicEl(c);Wh(l,Hh(p),{labelFetcher:{getFormattedLabel:function(e,n){return t.getFormattedLabel(c,n)}},defaultText:h}),l.disableLabelAnimation=!0,d.get("position")||l.setTextConfig({position:"bottom"}),f.onHoverStateChange=function(t){fl(l,t)}}r.add(l)}}}))},e.type="map",e}(mg),NT=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.needsDrawMap=!1,n.seriesGroup=[],n.getTooltipPosition=function(t){if(null!=t){var e=this.getData().getName(t),n=this.coordinateSystem,i=n.getRegion(e);return i&&n.dataToPoint(i.getCenter())}},n}return n(e,t),e.prototype.getInitialData=function(t){for(var e=sM(this,{coordDimensions:["value"],encodeDefaulter:H(Hp,this)}),n=ft(),i=[],r=0,o=e.count();r<o;r++){var a=e.getName(r);n.set(a,!0)}return E(xT(this.getMapType(),this.option.nameMap,this.option.nameProperty).regions,(function(t){var e=t.name;n.get(e)||i.push(e)})),e.appendValues([],i),e},e.prototype.getHostGeoModel=function(){var t=this.option.geoIndex;return null!=t?this.ecModel.getComponent("geo",t):null},e.prototype.getMapType=function(){return(this.getHostGeoModel()||this).option.map},e.prototype.getRawValue=function(t){var e=this.getData();return e.get(e.mapDimension("value"),t)},e.prototype.getRegionModel=function(t){var e=this.getData();return e.getItemModel(e.indexOfName(t))},e.prototype.formatTooltip=function(t,e,n){for(var i=this.getData(),r=this.getRawValue(t),o=i.getName(t),a=this.seriesGroup,s=[],l=0;l<a.length;l++){var u=a[l].originalData.indexOfName(o),h=i.mapDimension("value");isNaN(a[l].originalData.get(h,u))||s.push(a[l].name)}return Uf("section",{header:s.join(", "),noHeader:!s.length,blocks:[Uf("nameValue",{name:o,value:r})]})},e.prototype.setZoom=function(t){this.option.zoom=t},e.prototype.setCenter=function(t){this.option.center=t},e.prototype.getLegendIcon=function(t){var e=t.icon||"roundRect",n=ky(e,0,0,t.itemWidth,t.itemHeight,t.itemStyle.fill);return n.setStyle(t.itemStyle),n.style.stroke="none",e.indexOf("empty")>-1&&(n.style.stroke=n.style.fill,n.style.fill="#fff",n.style.lineWidth=2),n},e.type="series.map",e.dependencies=["geo"],e.layoutMode="box",e.defaultOption={z:2,coordinateSystem:"geo",map:"",left:"center",top:"center",aspectScale:null,showLegendSymbol:!0,boundingCoords:null,center:null,zoom:1,scaleLimit:null,selectedMode:!0,label:{show:!1,color:"#000"},itemStyle:{borderWidth:.5,borderColor:"#444",areaColor:"#eee"},emphasis:{label:{show:!0,color:"rgb(100,0,0)"},itemStyle:{areaColor:"rgba(255,215,0,0.8)"}},select:{label:{show:!0,color:"rgb(100,0,0)"},itemStyle:{color:"rgba(255,215,0,0.8)"}},nameProperty:"name"},e}(ag);function ET(t){var e={};t.eachSeriesByType("map",(function(t){var n=t.getHostGeoModel(),i=n?"o"+n.id:"i"+t.getMapType();(e[i]=e[i]||[]).push(t)})),E(e,(function(t,e){for(var n,i,r,o=(n=z(t,(function(t){return t.getData()})),i=t[0].get("mapValueCalculation"),r={},E(n,(function(t){t.each(t.mapDimension("value"),(function(e,n){var i="ec-"+t.getName(n);r[i]=r[i]||[],isNaN(e)||r[i].push(e)}))})),n[0].map(n[0].mapDimension("value"),(function(t,e){for(var o="ec-"+n[0].getName(e),a=0,s=1/0,l=-1/0,u=r[o].length,h=0;h<u;h++)s=Math.min(s,r[o][h]),l=Math.max(l,r[o][h]),a+=r[o][h];return 0===u?NaN:"min"===i?s:"max"===i?l:"average"===i?a/u:a}))),a=0;a<t.length;a++)t[a].originalData=t[a].getData();for(a=0;a<t.length;a++)t[a].seriesGroup=t,t[a].needsDrawMap=0===a&&!t[a].getHostGeoModel(),t[a].setData(o.cloneShallow()),t[a].mainSeries=t[0]}))}function zT(t){var e={};t.eachSeriesByType("map",(function(n){var i=n.getMapType();if(!n.getHostGeoModel()&&!e[i]){var r={};E(n.seriesGroup,(function(e){var n=e.coordinateSystem,i=e.originalData;e.get("showLegendSymbol")&&t.getComponent("legend")&&i.each(i.mapDimension("value"),(function(t,e){var o=i.getName(e),a=n.getRegion(o);if(a&&!isNaN(t)){var s=r[o]||0,l=n.dataToPoint(a.getCenter());r[o]=s+1,i.setItemLayout(e,{point:l,offset:s})}}))}));var o=n.getData();o.each((function(t){var e=o.getName(t),n=o.getItemLayout(t)||{};n.showLabel=!r[e],o.setItemLayout(t,n)})),e[i]=!0}}))}var VT=Ft,BT=function(t){function e(e){var n=t.call(this)||this;return n.type="view",n.dimensions=["x","y"],n._roamTransformable=new qi,n._rawTransformable=new qi,n.name=e,n}return n(e,t),e.prototype.setBoundingRect=function(t,e,n,i){return this._rect=new sr(t,e,n,i),this._rect},e.prototype.getBoundingRect=function(){return this._rect},e.prototype.setViewRect=function(t,e,n,i){this._transformTo(t,e,n,i),this._viewRect=new sr(t,e,n,i)},e.prototype._transformTo=function(t,e,n,i){var r=this.getBoundingRect(),o=this._rawTransformable;o.transform=r.calculateTransform(new sr(t,e,n,i));var a=o.parent;o.parent=null,o.decomposeTransform(),o.parent=a,this._updateTransform()},e.prototype.setCenter=function(t){t&&(this._center=t,this._updateCenterAndZoom())},e.prototype.setZoom=function(t){t=t||1;var e=this.zoomLimit;e&&(null!=e.max&&(t=Math.min(e.max,t)),null!=e.min&&(t=Math.max(e.min,t))),this._zoom=t,this._updateCenterAndZoom()},e.prototype.getDefaultCenter=function(){var t=this.getBoundingRect();return[t.x+t.width/2,t.y+t.height/2]},e.prototype.getCenter=function(){return this._center||this.getDefaultCenter()},e.prototype.getZoom=function(){return this._zoom||1},e.prototype.getRoamTransform=function(){return this._roamTransformable.getLocalTransform()},e.prototype._updateCenterAndZoom=function(){var t=this._rawTransformable.getLocalTransform(),e=this._roamTransformable,n=this.getDefaultCenter(),i=this.getCenter(),r=this.getZoom();i=Ft([],i,t),n=Ft([],n,t),e.originX=i[0],e.originY=i[1],e.x=n[0]-i[0],e.y=n[1]-i[1],e.scaleX=e.scaleY=r,this._updateTransform()},e.prototype._updateTransform=function(){var t=this._roamTransformable,e=this._rawTransformable;e.parent=t,t.updateTransform(),e.updateTransform(),Ri(this.transform||(this.transform=[]),e.transform||[1,0,0,1,0,0]),this._rawTransform=e.getLocalTransform(),this.invTransform=this.invTransform||[],Bi(this.invTransform,this.transform),this.decomposeTransform()},e.prototype.getTransformInfo=function(){var t=this._rawTransformable,e=this._roamTransformable,n=new qi;return n.transform=e.transform,n.decomposeTransform(),{roam:{x:n.x,y:n.y,scaleX:n.scaleX,scaleY:n.scaleY},raw:{x:t.x,y:t.y,scaleX:t.scaleX,scaleY:t.scaleY}}},e.prototype.getViewRect=function(){return this._viewRect},e.prototype.getViewRectAfterRoam=function(){var t=this.getBoundingRect().clone();return t.applyTransform(this.transform),t},e.prototype.dataToPoint=function(t,e,n){var i=e?this._rawTransform:this.transform;return n=n||[],i?VT(n,t,i):St(n,t)},e.prototype.pointToData=function(t){var e=this.invTransform;return e?VT([],t,e):[t[0],t[1]]},e.prototype.convertToPixel=function(t,e,n){var i=FT(e);return i===this?i.dataToPoint(n):null},e.prototype.convertFromPixel=function(t,e,n){var i=FT(e);return i===this?i.pointToData(n):null},e.prototype.containPoint=function(t){return this.getViewRectAfterRoam().contain(t[0],t[1])},e.dimensions=["x","y"],e}(qi);function FT(t){var e=t.seriesModel;return e?e.coordinateSystem:null}var GT={geoJSON:{aspectScale:.75,invertLongitute:!0},geoSVG:{aspectScale:1,invertLongitute:!1}},WT=["lng","lat"],HT=function(t){function e(e,n,i){var r=t.call(this,e)||this;r.dimensions=WT,r.type="geo",r._nameCoordMap=ft(),r.map=n;var o,a=i.projection,s=xT(n,i.nameMap,i.nameProperty),l=vT(n),u=(r.resourceType=l?l.type:null,r.regions=s.regions),h=GT[l.type];if(r._regionsMap=s.regionsMap,r.regions=s.regions,r.projection=a,a)for(var c=0;c<u.length;c++){var p=u[c].getBoundingRect(a);(o=o||p.clone()).union(p)}else o=s.boundingRect;return r.setBoundingRect(o.x,o.y,o.width,o.height),r.aspectScale=a?1:rt(i.aspectScale,h.aspectScale),r._invertLongitute=!a&&h.invertLongitute,r}return n(e,t),e.prototype._transformTo=function(t,e,n,i){var r=this.getBoundingRect(),o=this._invertLongitute;r=r.clone(),o&&(r.y=-r.y-r.height);var a=this._rawTransformable;a.transform=r.calculateTransform(new sr(t,e,n,i));var s=a.parent;a.parent=null,a.decomposeTransform(),a.parent=s,o&&(a.scaleY=-a.scaleY),this._updateTransform()},e.prototype.getRegion=function(t){return this._regionsMap.get(t)},e.prototype.getRegionByCoord=function(t){for(var e=this.regions,n=0;n<e.length;n++){var i=e[n];if("geoJSON"===i.type&&i.contain(t))return e[n]}},e.prototype.addGeoCoord=function(t,e){this._nameCoordMap.set(t,e)},e.prototype.getGeoCoord=function(t){var e=this._regionsMap.get(t);return this._nameCoordMap.get(t)||e&&e.getCenter()},e.prototype.dataToPoint=function(t,e,n){if(X(t)&&(t=this.getGeoCoord(t)),t){var i=this.projection;return i&&(t=i.project(t)),t&&this.projectedToPoint(t)}},e.prototype.pointToData=function(t){var e=this.projection;return e&&(t=e.unproject(t)),t&&this.pointToProjected(t)},e.prototype.pointToProjected=function(e){return t.prototype.pointToData.call(this,e)},e.prototype.projectedToPoint=function(e,n,i){return t.prototype.dataToPoint.call(this,e,n,i)},e.prototype.convertToPixel=function(t,e,n){var i=YT(e);return i===this?i.dataToPoint(n):null},e.prototype.convertFromPixel=function(t,e,n){var i=YT(e);return i===this?i.pointToData(n):null},e}(BT);function YT(t){var e=t.geoModel,n=t.seriesModel;return e?e.coordinateSystem:n?n.coordinateSystem||(n.getReferringComponents("geo",Co).models[0]||{}).coordinateSystem:null}function UT(t,e){var n=t.get("boundingCoords");if(null!=n){var i=n[0],r=n[1];if(isFinite(i[0])&&isFinite(i[1])&&isFinite(r[0])&&isFinite(r[1])){var o=this.projection;if(o){var a=i[0],s=i[1],l=r[0],u=r[1];i=[1/0,1/0],r=[-1/0,-1/0];var h=function(t,e,n,a){for(var s=n-t,l=a-e,u=0;u<=100;u++){var h=u/100,c=o.project([t+s*h,e+l*h]);Gt(i,i,c),Wt(r,r,c)}};h(a,s,l,s),h(l,s,l,u),h(l,u,a,u),h(a,u,l,s)}this.setBoundingRect(i[0],i[1],r[0]-i[0],r[1]-i[1])}else 0}var c,p,d,f=this.getBoundingRect(),g=t.get("layoutCenter"),y=t.get("layoutSize"),v=e.getWidth(),m=e.getHeight(),x=f.width/f.height*this.aspectScale,_=!1;if(g&&y&&(c=[Er(g[0],v),Er(g[1],m)],p=Er(y,Math.min(v,m)),isNaN(c[0])||isNaN(c[1])||isNaN(p)||(_=!0)),_)d={},x>1?(d.width=p,d.height=p/x):(d.height=p,d.width=p*x),d.y=c[1]-d.height/2,d.x=c[0]-d.width/2;else{var b=t.getBoxLayoutParams();b.aspect=x,d=mp(b,{width:v,height:m})}this.setViewRect(d.x,d.y,d.width,d.height),this.setCenter(t.get("center")),this.setZoom(t.get("zoom"))}R(HT,BT);var XT=new(function(){function t(){this.dimensions=WT}return t.prototype.create=function(t,e){var n=[];function i(t){return{nameProperty:t.get("nameProperty"),aspectScale:t.get("aspectScale"),projection:t.get("projection")}}t.eachComponent("geo",(function(t,r){var o=t.get("map"),a=new HT(o+r,o,A({nameMap:t.get("nameMap")},i(t)));a.zoomLimit=t.get("scaleLimit"),n.push(a),t.coordinateSystem=a,a.model=t,a.resize=UT,a.resize(t,e)})),t.eachSeries((function(t){if("geo"===t.get("coordinateSystem")){var e=t.get("geoIndex")||0;t.coordinateSystem=n[e]}}));var r={};return t.eachSeriesByType("map",(function(t){if(!t.getHostGeoModel()){var e=t.getMapType();r[e]=r[e]||[],r[e].push(t)}})),E(r,(function(t,r){var o=z(t,(function(t){return t.get("nameMap")})),a=new HT(r,r,A({nameMap:D(o)},i(t[0])));a.zoomLimit=it.apply(null,z(t,(function(t){return t.get("scaleLimit")}))),n.push(a),a.resize=UT,a.resize(t[0],e),E(t,(function(t){t.coordinateSystem=a,function(t,e){E(e.get("geoCoord"),(function(e,n){t.addGeoCoord(n,e)}))}(a,t)}))})),n},t.prototype.getFilledRegions=function(t,e,n,i){for(var r=(t||[]).slice(),o=ft(),a=0;a<r.length;a++)o.set(r[a].name,r[a]);return E(xT(e,n,i).regions,(function(t){var e=t.name;!o.get(e)&&r.push({name:e})})),r},t}()),ZT=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(t,e,n){var i=vT(t.map);if(i&&"geoJSON"===i.type){var r=t.itemStyle=t.itemStyle||{};"color"in r||(r.color="#eee")}this.mergeDefaultAndTheme(t,n),co(t,"label",["show"])},e.prototype.optionUpdated=function(){var t=this,e=this.option;e.regions=XT.getFilledRegions(e.regions,e.map,e.nameMap,e.nameProperty);var n={};this._optionModelMap=V(e.regions||[],(function(e,i){var r=i.name;return r&&(e.set(r,new pc(i,t,t.ecModel)),i.selected&&(n[r]=!0)),e}),ft()),e.selectedMap||(e.selectedMap=n)},e.prototype.getRegionModel=function(t){return this._optionModelMap.get(t)||new pc(null,this,this.ecModel)},e.prototype.getFormattedLabel=function(t,e){var n=this.getRegionModel(t),i="normal"===e?n.get(["label","formatter"]):n.get(["emphasis","label","formatter"]),r={name:t};return U(i)?(r.status=e,i(r)):X(i)?i.replace("{a}",null!=t?t:""):void 0},e.prototype.setZoom=function(t){this.option.zoom=t},e.prototype.setCenter=function(t){this.option.center=t},e.prototype.select=function(t){var e=this.option,n=e.selectedMode;n&&("multiple"!==n&&(e.selectedMap=null),(e.selectedMap||(e.selectedMap={}))[t]=!0)},e.prototype.unSelect=function(t){var e=this.option.selectedMap;e&&(e[t]=!1)},e.prototype.toggleSelected=function(t){this[this.isSelected(t)?"unSelect":"select"](t)},e.prototype.isSelected=function(t){var e=this.option.selectedMap;return!(!e||!e[t])},e.type="geo",e.layoutMode="box",e.defaultOption={z:0,show:!0,left:"center",top:"center",aspectScale:null,silent:!1,map:"",boundingCoords:null,center:null,zoom:1,scaleLimit:null,label:{show:!1,color:"#000"},itemStyle:{borderWidth:.5,borderColor:"#444"},emphasis:{label:{show:!0,color:"rgb(100,0,0)"},itemStyle:{color:"rgba(255,215,0,0.8)"}},select:{label:{show:!0,color:"rgb(100,0,0)"},itemStyle:{color:"rgba(255,215,0,0.8)"}},regions:[]},e}(Ip);function jT(t,e){return t.pointToProjected?t.pointToProjected(e):t.pointToData(e)}function qT(t,e,n){var i=t.getZoom(),r=t.getCenter(),o=e.zoom,a=t.projectedToPoint?t.projectedToPoint(r):t.dataToPoint(r);if(null!=e.dx&&null!=e.dy&&(a[0]-=e.dx,a[1]-=e.dy,t.setCenter(jT(t,a))),null!=o){if(n){var s=n.min||0,l=n.max||1/0;o=Math.max(Math.min(i*o,l),s)/i}t.scaleX*=o,t.scaleY*=o;var u=(e.originX-t.x)*(o-1),h=(e.originY-t.y)*(o-1);t.x-=u,t.y-=h,t.updateTransform(),t.setCenter(jT(t,a)),t.setZoom(o*i)}return{center:t.getCenter(),zoom:t.getZoom()}}var KT=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.focusBlurEnabled=!0,n}return n(e,t),e.prototype.init=function(t,e){this._api=e},e.prototype.render=function(t,e,n,i){if(this._model=t,!t.get("show"))return this._mapDraw&&this._mapDraw.remove(),void(this._mapDraw=null);this._mapDraw||(this._mapDraw=new CT(n));var r=this._mapDraw;r.draw(t,e,n,this,i),r.group.on("click",this._handleRegionClick,this),r.group.silent=t.get("silent"),this.group.add(r.group),this.updateSelectStatus(t,e,n)},e.prototype._handleRegionClick=function(t){var e;my(t.target,(function(t){return null!=(e=Ws(t).eventData)}),!0),e&&this._api.dispatchAction({type:"geoToggleSelect",geoId:this._model.id,name:e.name})},e.prototype.updateSelectStatus=function(t,e,n){var i=this;this._mapDraw.group.traverse((function(t){var e=Ws(t).eventData;if(e)return i._model.isSelected(e.name)?n.enterSelect(t):n.leaveSelect(t),!0}))},e.prototype.findHighDownDispatchers=function(t){return this._mapDraw&&this._mapDraw.findHighDownDispatchers(t,this._model)},e.prototype.dispose=function(){this._mapDraw&&this._mapDraw.remove()},e.type="geo",e}(fg);function $T(t,e,n){yT(t,e,n)}function JT(t){function e(e,n){n.update="geo:updateSelectStatus",t.registerAction(n,(function(t,n){var i={},r=[];return n.eachComponent({mainType:"geo",query:t},(function(n){n[e](t.name),E(n.coordinateSystem.regions,(function(t){i[t.name]=n.isSelected(t.name)||!1}));var o=[];E(i,(function(t,e){i[e]&&o.push(e)})),r.push({geoIndex:n.componentIndex,name:o})})),{selected:i,allSelected:r,name:t.name}}))}t.registerCoordinateSystem("geo",XT),t.registerComponentModel(ZT),t.registerComponentView(KT),t.registerImpl("registerMap",$T),t.registerImpl("getMap",(function(t){return mT(t)})),e("toggleSelected",{type:"geoToggleSelect",event:"geoselectchanged"}),e("select",{type:"geoSelect",event:"geoselected"}),e("unSelect",{type:"geoUnSelect",event:"geounselected"}),t.registerAction({type:"geoRoam",event:"geoRoam",update:"updateTransform"},(function(t,e){var n=t.componentType||"series";e.eachComponent({mainType:n,query:t},(function(e){var i=e.coordinateSystem;if("geo"===i.type){var r=qT(i,t,e.get("scaleLimit"));e.setCenter&&e.setCenter(r.center),e.setZoom&&e.setZoom(r.zoom),"series"===n&&E(e.seriesGroup,(function(t){t.setCenter(r.center),t.setZoom(r.zoom)}))}}))}))}function QT(t,e){var n=t.isExpand?t.children:[],i=t.parentNode.children,r=t.hierNode.i?i[t.hierNode.i-1]:null;if(n.length){!function(t){var e=t.children,n=e.length,i=0,r=0;for(;--n>=0;){var o=e[n];o.hierNode.prelim+=i,o.hierNode.modifier+=i,r+=o.hierNode.change,i+=o.hierNode.shift+r}}(t);var o=(n[0].hierNode.prelim+n[n.length-1].hierNode.prelim)/2;r?(t.hierNode.prelim=r.hierNode.prelim+e(t,r),t.hierNode.modifier=t.hierNode.prelim-o):t.hierNode.prelim=o}else r&&(t.hierNode.prelim=r.hierNode.prelim+e(t,r));t.parentNode.hierNode.defaultAncestor=function(t,e,n,i){if(e){for(var r=t,o=t,a=o.parentNode.children[0],s=e,l=r.hierNode.modifier,u=o.hierNode.modifier,h=a.hierNode.modifier,c=s.hierNode.modifier;s=iC(s),o=rC(o),s&&o;){r=iC(r),a=rC(a),r.hierNode.ancestor=t;var p=s.hierNode.prelim+c-o.hierNode.prelim-u+i(s,o);p>0&&(aC(oC(s,t,n),t,p),u+=p,l+=p),c+=s.hierNode.modifier,u+=o.hierNode.modifier,l+=r.hierNode.modifier,h+=a.hierNode.modifier}s&&!iC(r)&&(r.hierNode.thread=s,r.hierNode.modifier+=c-l),o&&!rC(a)&&(a.hierNode.thread=o,a.hierNode.modifier+=u-h,n=t)}return n}(t,r,t.parentNode.hierNode.defaultAncestor||i[0],e)}function tC(t){var e=t.hierNode.prelim+t.parentNode.hierNode.modifier;t.setLayout({x:e},!0),t.hierNode.modifier+=t.parentNode.hierNode.modifier}function eC(t){return arguments.length?t:sC}function nC(t,e){return t-=Math.PI/2,{x:e*Math.cos(t),y:e*Math.sin(t)}}function iC(t){var e=t.children;return e.length&&t.isExpand?e[e.length-1]:t.hierNode.thread}function rC(t){var e=t.children;return e.length&&t.isExpand?e[0]:t.hierNode.thread}function oC(t,e,n){return t.hierNode.ancestor.parentNode===e.parentNode?t.hierNode.ancestor:n}function aC(t,e,n){var i=n/(e.hierNode.i-t.hierNode.i);e.hierNode.change-=i,e.hierNode.shift+=n,e.hierNode.modifier+=n,e.hierNode.prelim+=n,t.hierNode.change+=i}function sC(t,e){return t.parentNode===e.parentNode?1:2}var lC=function(){this.parentPoint=[],this.childPoints=[]},uC=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},e.prototype.getDefaultShape=function(){return new lC},e.prototype.buildPath=function(t,e){var n=e.childPoints,i=n.length,r=e.parentPoint,o=n[0],a=n[i-1];if(1===i)return t.moveTo(r[0],r[1]),void t.lineTo(o[0],o[1]);var s=e.orient,l="TB"===s||"BT"===s?0:1,u=1-l,h=Er(e.forkPosition,1),c=[];c[l]=r[l],c[u]=r[u]+(a[u]-r[u])*h,t.moveTo(r[0],r[1]),t.lineTo(c[0],c[1]),t.moveTo(o[0],o[1]),c[l]=o[l],t.lineTo(c[0],c[1]),c[l]=a[l],t.lineTo(c[0],c[1]),t.lineTo(a[0],a[1]);for(var p=1;p<i-1;p++){var d=n[p];t.moveTo(d[0],d[1]),c[l]=d[l],t.lineTo(c[0],c[1])}},e}(fs),hC=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n._mainGroup=new Cr,n}return n(e,t),e.prototype.init=function(t,e){this._controller=new DI(e.getZr()),this._controllerHost={target:this.group},this.group.add(this._mainGroup)},e.prototype.render=function(t,e,n){var i=t.getData(),r=t.layoutInfo,o=this._mainGroup;"radial"===t.get("layout")?(o.x=r.x+r.width/2,o.y=r.y+r.height/2):(o.x=r.x,o.y=r.y),this._updateViewCoordSys(t),this._updateController(t,e,n);var a=this._data;i.diff(a).add((function(e){cC(i,e)&&pC(i,e,null,o,t)})).update((function(e,n){var r=a.getItemGraphicEl(n);cC(i,e)?pC(i,e,r,o,t):r&&gC(a,n,r,o,t)})).remove((function(e){var n=a.getItemGraphicEl(e);n&&gC(a,e,n,o,t)})).execute(),this._nodeScaleRatio=t.get("nodeScaleRatio"),this._updateNodeAndLinkScale(t),!0===t.get("expandAndCollapse")&&i.eachItemGraphicEl((function(e,i){e.off("click").on("click",(function(){n.dispatchAction({type:"treeExpandAndCollapse",seriesId:t.id,dataIndex:i})}))})),this._data=i},e.prototype._updateViewCoordSys=function(t){var e=t.getData(),n=[];e.each((function(t){var i=e.getItemLayout(t);!i||isNaN(i.x)||isNaN(i.y)||n.push([+i.x,+i.y])}));var i=[],r=[];Ma(n,i,r);var o=this._min,a=this._max;r[0]-i[0]==0&&(i[0]=o?o[0]:i[0]-1,r[0]=a?a[0]:r[0]+1),r[1]-i[1]==0&&(i[1]=o?o[1]:i[1]-1,r[1]=a?a[1]:r[1]+1);var s=t.coordinateSystem=new BT;s.zoomLimit=t.get("scaleLimit"),s.setBoundingRect(i[0],i[1],r[0]-i[0],r[1]-i[1]),s.setCenter(t.get("center")),s.setZoom(t.get("zoom")),this.group.attr({x:s.x,y:s.y,scaleX:s.scaleX,scaleY:s.scaleY}),this._min=i,this._max=r},e.prototype._updateController=function(t,e,n){var i=this,r=this._controller,o=this._controllerHost,a=this.group;r.setPointerChecker((function(e,i,r){var o=a.getBoundingRect();return o.applyTransform(a.transform),o.contain(i,r)&&!EI(e,n,t)})),r.enable(t.get("roam")),o.zoomLimit=t.get("scaleLimit"),o.zoom=t.coordinateSystem.getZoom(),r.off("pan").off("zoom").on("pan",(function(e){PI(o,e.dx,e.dy),n.dispatchAction({seriesId:t.id,type:"treeRoam",dx:e.dx,dy:e.dy})})).on("zoom",(function(e){OI(o,e.scale,e.originX,e.originY),n.dispatchAction({seriesId:t.id,type:"treeRoam",zoom:e.scale,originX:e.originX,originY:e.originY}),i._updateNodeAndLinkScale(t),n.updateLabelLayout()}))},e.prototype._updateNodeAndLinkScale=function(t){var e=t.getData(),n=this._getNodeGlobalScale(t);e.eachItemGraphicEl((function(t,e){t.setSymbolScale(n)}))},e.prototype._getNodeGlobalScale=function(t){var e=t.coordinateSystem;if("view"!==e.type)return 1;var n=this._nodeScaleRatio,i=e.scaleX||1;return((e.getZoom()-1)*n+1)/i},e.prototype.dispose=function(){this._controller&&this._controller.dispose(),this._controllerHost=null},e.prototype.remove=function(){this._mainGroup.removeAll(),this._data=null},e.type="tree",e}(mg);function cC(t,e){var n=t.getItemLayout(e);return n&&!isNaN(n.x)&&!isNaN(n.y)}function pC(t,e,n,i,r){var o=!n,a=t.tree.getNodeByDataIndex(e),s=a.getModel(),l=a.getVisual("style").fill,u=!1===a.isExpand&&0!==a.children.length?l:"#fff",h=t.tree.root,c=a.parentNode===h?a:a.parentNode||a,p=t.getItemGraphicEl(c.dataIndex),d=c.getLayout(),f=p?{x:p.__oldX,y:p.__oldY,rawX:p.__radialOldRawX,rawY:p.__radialOldRawY}:d,g=a.getLayout();o?((n=new Ww(t,e,null,{symbolInnerColor:u,useNameLabel:!0})).x=f.x,n.y=f.y):n.updateData(t,e,null,{symbolInnerColor:u,useNameLabel:!0}),n.__radialOldRawX=n.__radialRawX,n.__radialOldRawY=n.__radialRawY,n.__radialRawX=g.rawX,n.__radialRawY=g.rawY,i.add(n),t.setItemGraphicEl(e,n),n.__oldX=n.x,n.__oldY=n.y,ih(n,{x:g.x,y:g.y},r);var y=n.getSymbolPath();if("radial"===r.get("layout")){var v=h.children[0],m=v.getLayout(),x=v.children.length,_=void 0,b=void 0;if(g.x===m.x&&!0===a.isExpand){var w={x:(v.children[0].getLayout().x+v.children[x-1].getLayout().x)/2,y:(v.children[0].getLayout().y+v.children[x-1].getLayout().y)/2};(_=Math.atan2(w.y-m.y,w.x-m.x))<0&&(_=2*Math.PI+_),(b=w.x<m.x)&&(_-=Math.PI)}else(_=Math.atan2(g.y-m.y,g.x-m.x))<0&&(_=2*Math.PI+_),0===a.children.length||0!==a.children.length&&!1===a.isExpand?(b=g.x<m.x)&&(_-=Math.PI):(b=g.x>m.x)||(_-=Math.PI);var S=b?"left":"right",M=s.getModel("label"),I=M.get("rotate"),T=I*(Math.PI/180),C=y.getTextContent();C&&(y.setTextConfig({position:M.get("position")||S,rotation:null==I?-_:T,origin:"center"}),C.setStyle("verticalAlign","middle"))}var D=s.get(["emphasis","focus"]),A="ancestor"===D?a.getAncestorsIndices():"descendant"===D?a.getDescendantIndices():null;A&&(Ws(n).focus=A),function(t,e,n,i,r,o,a,s){var l=e.getModel(),u=t.get("edgeShape"),h=t.get("layout"),c=t.getOrient(),p=t.get(["lineStyle","curveness"]),d=t.get("edgeForkPosition"),f=l.getModel("lineStyle").getLineStyle(),g=i.__edge;if("curve"===u)e.parentNode&&e.parentNode!==n&&(g||(g=i.__edge=new Fu({shape:yC(h,c,p,r,r)})),ih(g,{shape:yC(h,c,p,o,a)},t));else if("polyline"===u)if("orthogonal"===h){if(e!==n&&e.children&&0!==e.children.length&&!0===e.isExpand){for(var y=e.children,v=[],m=0;m<y.length;m++){var x=y[m].getLayout();v.push([x.x,x.y])}g||(g=i.__edge=new uC({shape:{parentPoint:[a.x,a.y],childPoints:[[a.x,a.y]],orient:c,forkPosition:d}})),ih(g,{shape:{parentPoint:[a.x,a.y],childPoints:v}},t)}}else 0;g&&(g.useStyle(k({strokeNoScale:!0,fill:null},f)),zl(g,l,"lineStyle"),yl(g),s.add(g))}(r,a,h,n,f,d,g,i),n.__edge&&(n.onHoverStateChange=function(e){if("blur"!==e){var i=a.parentNode&&t.getItemGraphicEl(a.parentNode.dataIndex);i&&1===i.hoverState||fl(n.__edge,e)}})}function dC(t,e,n,i,r){var o=fC(e.tree.root,t),a=o.source,s=o.sourceLayout,l=e.getItemGraphicEl(t.dataIndex);if(l){var u=e.getItemGraphicEl(a.dataIndex).__edge,h=l.__edge||(!1===a.isExpand||1===a.children.length?u:void 0),c=i.get("edgeShape"),p=i.get("layout"),d=i.get("orient"),f=i.get(["lineStyle","curveness"]);h&&("curve"===c?ah(h,{shape:yC(p,d,f,s,s),style:{opacity:0}},i,{cb:function(){n.remove(h)},removeOpt:r}):"polyline"===c&&"orthogonal"===i.get("layout")&&ah(h,{shape:{parentPoint:[s.x,s.y],childPoints:[[s.x,s.y]]},style:{opacity:0}},i,{cb:function(){n.remove(h)},removeOpt:r}))}}function fC(t,e){for(var n,i=e.parentNode===t?e:e.parentNode||e;null==(n=i.getLayout());)i=i.parentNode===t?i:i.parentNode||i;return{source:i,sourceLayout:n}}function gC(t,e,n,i,r){var o=t.tree.getNodeByDataIndex(e),a=fC(t.tree.root,o).sourceLayout,s={duration:r.get("animationDurationUpdate"),easing:r.get("animationEasingUpdate")};ah(n,{x:a.x+1,y:a.y+1},r,{cb:function(){i.remove(n),t.setItemGraphicEl(e,null)},removeOpt:s}),n.fadeOut(null,t.hostModel,{fadeLabel:!0,animation:s}),o.children.forEach((function(e){dC(e,t,i,r,s)})),dC(o,t,i,r,s)}function yC(t,e,n,i,r){var o,a,s,l,u,h,c,p;if("radial"===t){u=i.rawX,c=i.rawY,h=r.rawX,p=r.rawY;var d=nC(u,c),f=nC(u,c+(p-c)*n),g=nC(h,p+(c-p)*n),y=nC(h,p);return{x1:d.x||0,y1:d.y||0,x2:y.x||0,y2:y.y||0,cpx1:f.x||0,cpy1:f.y||0,cpx2:g.x||0,cpy2:g.y||0}}return u=i.x,c=i.y,h=r.x,p=r.y,"LR"!==e&&"RL"!==e||(o=u+(h-u)*n,a=c,s=h+(u-h)*n,l=p),"TB"!==e&&"BT"!==e||(o=u,a=c+(p-c)*n,s=h,l=p+(c-p)*n),{x1:u,y1:c,x2:h,y2:p,cpx1:o,cpy1:a,cpx2:s,cpy2:l}}var vC=So();function mC(t){var e=t.mainData,n=t.datas;n||(n={main:e},t.datasAttr={main:"data"}),t.datas=t.mainData=null,MC(e,n,t),E(n,(function(n){E(e.TRANSFERABLE_METHODS,(function(e){n.wrapMethod(e,H(xC,t))}))})),e.wrapMethod("cloneShallow",H(bC,t)),E(e.CHANGABLE_METHODS,(function(n){e.wrapMethod(n,H(_C,t))})),lt(n[e.dataType]===e)}function xC(t,e){if(vC(i=this).mainData===i){var n=A({},vC(this).datas);n[this.dataType]=e,MC(e,n,t)}else IC(e,this.dataType,vC(this).mainData,t);var i;return e}function _C(t,e){return t.struct&&t.struct.update(),e}function bC(t,e){return E(vC(e).datas,(function(n,i){n!==e&&IC(n.cloneShallow(),i,e,t)})),e}function wC(t){var e=vC(this).mainData;return null==t||null==e?e:vC(e).datas[t]}function SC(){var t=vC(this).mainData;return null==t?[{data:t}]:z(G(vC(t).datas),(function(e){return{type:e,data:vC(t).datas[e]}}))}function MC(t,e,n){vC(t).datas={},E(e,(function(e,i){IC(e,i,t,n)}))}function IC(t,e,n,i){vC(n).datas[e]=t,vC(t).mainData=n,t.dataType=e,i.struct&&(t[i.structAttr]=i.struct,i.struct[i.datasAttr[e]]=t),t.getLinkedData=wC,t.getLinkedDataAll=SC}var TC=function(){function t(t,e){this.depth=0,this.height=0,this.dataIndex=-1,this.children=[],this.viewChildren=[],this.isExpand=!1,this.name=t||"",this.hostTree=e}return t.prototype.isRemoved=function(){return this.dataIndex<0},t.prototype.eachNode=function(t,e,n){U(t)&&(n=e,e=t,t=null),X(t=t||{})&&(t={order:t});var i,r=t.order||"preorder",o=this[t.attr||"children"];"preorder"===r&&(i=e.call(n,this));for(var a=0;!i&&a<o.length;a++)o[a].eachNode(t,e,n);"postorder"===r&&e.call(n,this)},t.prototype.updateDepthAndHeight=function(t){var e=0;this.depth=t;for(var n=0;n<this.children.length;n++){var i=this.children[n];i.updateDepthAndHeight(t+1),i.height>e&&(e=i.height)}this.height=e+1},t.prototype.getNodeById=function(t){if(this.getId()===t)return this;for(var e=0,n=this.children,i=n.length;e<i;e++){var r=n[e].getNodeById(t);if(r)return r}},t.prototype.contains=function(t){if(t===this)return!0;for(var e=0,n=this.children,i=n.length;e<i;e++){var r=n[e].contains(t);if(r)return r}},t.prototype.getAncestors=function(t){for(var e=[],n=t?this:this.parentNode;n;)e.push(n),n=n.parentNode;return e.reverse(),e},t.prototype.getAncestorsIndices=function(){for(var t=[],e=this;e;)t.push(e.dataIndex),e=e.parentNode;return t.reverse(),t},t.prototype.getDescendantIndices=function(){var t=[];return this.eachNode((function(e){t.push(e.dataIndex)})),t},t.prototype.getValue=function(t){var e=this.hostTree.data;return e.getStore().get(e.getDimensionIndex(t||"value"),this.dataIndex)},t.prototype.setLayout=function(t,e){this.dataIndex>=0&&this.hostTree.data.setItemLayout(this.dataIndex,t,e)},t.prototype.getLayout=function(){return this.hostTree.data.getItemLayout(this.dataIndex)},t.prototype.getModel=function(t){if(!(this.dataIndex<0))return this.hostTree.data.getItemModel(this.dataIndex).getModel(t)},t.prototype.getLevelModel=function(){return(this.hostTree.levelModels||[])[this.depth]},t.prototype.setVisual=function(t,e){this.dataIndex>=0&&this.hostTree.data.setItemVisual(this.dataIndex,t,e)},t.prototype.getVisual=function(t){return this.hostTree.data.getItemVisual(this.dataIndex,t)},t.prototype.getRawIndex=function(){return this.hostTree.data.getRawIndex(this.dataIndex)},t.prototype.getId=function(){return this.hostTree.data.getId(this.dataIndex)},t.prototype.getChildIndex=function(){if(this.parentNode){for(var t=this.parentNode.children,e=0;e<t.length;++e)if(t[e]===this)return e;return-1}return-1},t.prototype.isAncestorOf=function(t){for(var e=t.parentNode;e;){if(e===this)return!0;e=e.parentNode}return!1},t.prototype.isDescendantOf=function(t){return t!==this&&t.isAncestorOf(this)},t}(),CC=function(){function t(t){this.type="tree",this._nodes=[],this.hostModel=t}return t.prototype.eachNode=function(t,e,n){this.root.eachNode(t,e,n)},t.prototype.getNodeByDataIndex=function(t){var e=this.data.getRawIndex(t);return this._nodes[e]},t.prototype.getNodeById=function(t){return this.root.getNodeById(t)},t.prototype.update=function(){for(var t=this.data,e=this._nodes,n=0,i=e.length;n<i;n++)e[n].dataIndex=-1;for(n=0,i=t.count();n<i;n++)e[t.getRawIndex(n)].dataIndex=n},t.prototype.clearLayouts=function(){this.data.clearItemLayouts()},t.createTree=function(e,n,i){var r=new t(n),o=[],a=1;!function t(e,n){var i=e.value;a=Math.max(a,Y(i)?i.length:1),o.push(e);var s=new TC(xo(e.name,""),r);n?function(t,e){var n=e.children;if(t.parentNode===e)return;n.push(t),t.parentNode=e}(s,n):r.root=s,r._nodes.push(s);var l=e.children;if(l)for(var u=0;u<l.length;u++)t(l[u],s)}(e),r.root.updateDepthAndHeight(0);var s=jm(o,{coordDimensions:["value"],dimensionsCount:a}).dimensions,l=new Zm(s,n);return l.initData(o),i&&i(l),mC({mainData:l,struct:r,structAttr:"tree"}),r.update(),r},t}();function DC(t,e,n){if(t&&P(e,t.type)>=0){var i=n.getData().tree.root,r=t.targetNode;if(X(r)&&(r=i.getNodeById(r)),r&&i.contains(r))return{node:r};var o=t.targetNodeId;if(null!=o&&(r=i.getNodeById(o)))return{node:r}}}function AC(t){for(var e=[];t;)(t=t.parentNode)&&e.push(t);return e.reverse()}function kC(t,e){return P(AC(t),e)>=0}function LC(t,e){for(var n=[];t;){var i=t.dataIndex;n.push({name:t.name,dataIndex:i,value:e.getRawValue(i)}),t=t.parentNode}return n.reverse(),n}var PC=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.hasSymbolVisual=!0,e.ignoreStyleOnData=!0,e}return n(e,t),e.prototype.getInitialData=function(t){var e={name:t.name,children:t.data},n=t.leaves||{},i=new pc(n,this,this.ecModel),r=CC.createTree(e,this,(function(t){t.wrapMethod("getItemModel",(function(t,e){var n=r.getNodeByDataIndex(e);return n&&n.children.length&&n.isExpand||(t.parentModel=i),t}))}));var o=0;r.eachNode("preorder",(function(t){t.depth>o&&(o=t.depth)}));var a=t.expandAndCollapse&&t.initialTreeDepth>=0?t.initialTreeDepth:o;return r.root.eachNode("preorder",(function(t){var e=t.hostTree.data.getRawDataItem(t.dataIndex);t.isExpand=e&&null!=e.collapsed?!e.collapsed:t.depth<=a})),r.data},e.prototype.getOrient=function(){var t=this.get("orient");return"horizontal"===t?t="LR":"vertical"===t&&(t="TB"),t},e.prototype.setZoom=function(t){this.option.zoom=t},e.prototype.setCenter=function(t){this.option.center=t},e.prototype.formatTooltip=function(t,e,n){for(var i=this.getData().tree,r=i.root.children[0],o=i.getNodeByDataIndex(t),a=o.getValue(),s=o.name;o&&o!==r;)s=o.parentNode.name+"."+s,o=o.parentNode;return Uf("nameValue",{name:s,value:a,noValue:isNaN(a)||null==a})},e.prototype.getDataParams=function(e){var n=t.prototype.getDataParams.apply(this,arguments),i=this.getData().tree.getNodeByDataIndex(e);return n.treeAncestors=LC(i,this),n},e.type="series.tree",e.layoutMode="box",e.defaultOption={z:2,coordinateSystem:"view",left:"12%",top:"12%",right:"12%",bottom:"12%",layout:"orthogonal",edgeShape:"curve",edgeForkPosition:"50%",roam:!1,nodeScaleRatio:.4,center:null,zoom:1,orient:"LR",symbol:"emptyCircle",symbolSize:7,expandAndCollapse:!0,initialTreeDepth:2,lineStyle:{color:"#ccc",width:1.5,curveness:.5},itemStyle:{color:"lightsteelblue",borderWidth:1.5},label:{show:!0},animationEasing:"linear",animationDuration:700,animationDurationUpdate:500},e}(ag);function OC(t,e){for(var n,i=[t];n=i.pop();)if(e(n),n.isExpand){var r=n.children;if(r.length)for(var o=r.length-1;o>=0;o--)i.push(r[o])}}function RC(t,e){t.eachSeriesByType("tree",(function(t){!function(t,e){var n=function(t,e){return mp(t.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()})}(t,e);t.layoutInfo=n;var i=t.get("layout"),r=0,o=0,a=null;"radial"===i?(r=2*Math.PI,o=Math.min(n.height,n.width)/2,a=eC((function(t,e){return(t.parentNode===e.parentNode?1:2)/t.depth}))):(r=n.width,o=n.height,a=eC());var s=t.getData().tree.root,l=s.children[0];if(l){!function(t){var e=t;e.hierNode={defaultAncestor:null,ancestor:e,prelim:0,modifier:0,change:0,shift:0,i:0,thread:null};for(var n,i,r=[e];n=r.pop();)if(i=n.children,n.isExpand&&i.length)for(var o=i.length-1;o>=0;o--){var a=i[o];a.hierNode={defaultAncestor:null,ancestor:a,prelim:0,modifier:0,change:0,shift:0,i:o,thread:null},r.push(a)}}(s),function(t,e,n){for(var i,r=[t],o=[];i=r.pop();)if(o.push(i),i.isExpand){var a=i.children;if(a.length)for(var s=0;s<a.length;s++)r.push(a[s])}for(;i=o.pop();)e(i,n)}(l,QT,a),s.hierNode.modifier=-l.hierNode.prelim,OC(l,tC);var u=l,h=l,c=l;OC(l,(function(t){var e=t.getLayout().x;e<u.getLayout().x&&(u=t),e>h.getLayout().x&&(h=t),t.depth>c.depth&&(c=t)}));var p=u===h?1:a(u,h)/2,d=p-u.getLayout().x,f=0,g=0,y=0,v=0;if("radial"===i)f=r/(h.getLayout().x+p+d),g=o/(c.depth-1||1),OC(l,(function(t){y=(t.getLayout().x+d)*f,v=(t.depth-1)*g;var e=nC(y,v);t.setLayout({x:e.x,y:e.y,rawX:y,rawY:v},!0)}));else{var m=t.getOrient();"RL"===m||"LR"===m?(g=o/(h.getLayout().x+p+d),f=r/(c.depth-1||1),OC(l,(function(t){v=(t.getLayout().x+d)*g,y="LR"===m?(t.depth-1)*f:r-(t.depth-1)*f,t.setLayout({x:y,y:v},!0)}))):"TB"!==m&&"BT"!==m||(f=r/(h.getLayout().x+p+d),g=o/(c.depth-1||1),OC(l,(function(t){y=(t.getLayout().x+d)*f,v="TB"===m?(t.depth-1)*g:o-(t.depth-1)*g,t.setLayout({x:y,y:v},!0)})))}}}(t,e)}))}function NC(t){t.eachSeriesByType("tree",(function(t){var e=t.getData();e.tree.eachNode((function(t){var n=t.getModel().getModel("itemStyle").getItemStyle();A(e.ensureUniqueItemVisual(t.dataIndex,"style"),n)}))}))}var EC=["treemapZoomToNode","treemapRender","treemapMove"];function zC(t){var e=t.getData().tree,n={};e.eachNode((function(e){for(var i=e;i&&i.depth>1;)i=i.parentNode;var r=td(t.ecModel,i.name||i.dataIndex+"",n);e.setVisual("decal",r)}))}var VC=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.preventUsingHoverLayer=!0,n}return n(e,t),e.prototype.getInitialData=function(t,e){var n={name:t.name,children:t.data};BC(n);var i=t.levels||[],r=this.designatedVisualItemStyle={},o=new pc({itemStyle:r},this,e),a=z((i=t.levels=function(t,e){var n,i,r=ho(e.get("color")),o=ho(e.get(["aria","decal","decals"]));if(!r)return;E(t=t||[],(function(t){var e=new pc(t),r=e.get("color"),o=e.get("decal");(e.get(["itemStyle","color"])||r&&"none"!==r)&&(n=!0),(e.get(["itemStyle","decal"])||o&&"none"!==o)&&(i=!0)}));var a=t[0]||(t[0]={});n||(a.color=r.slice());!i&&o&&(a.decal=o.slice());return t}(i,e))||[],(function(t){return new pc(t,o,e)}),this),s=CC.createTree(n,this,(function(t){t.wrapMethod("getItemModel",(function(t,e){var n=s.getNodeByDataIndex(e),i=n?a[n.depth]:null;return t.parentModel=i||o,t}))}));return s.data},e.prototype.optionUpdated=function(){this.resetViewRoot()},e.prototype.formatTooltip=function(t,e,n){var i=this.getData(),r=this.getRawValue(t);return Uf("nameValue",{name:i.getName(t),value:r})},e.prototype.getDataParams=function(e){var n=t.prototype.getDataParams.apply(this,arguments),i=this.getData().tree.getNodeByDataIndex(e);return n.treeAncestors=LC(i,this),n.treePathInfo=n.treeAncestors,n},e.prototype.setLayoutInfo=function(t){this.layoutInfo=this.layoutInfo||{},A(this.layoutInfo,t)},e.prototype.mapIdToIndex=function(t){var e=this._idIndexMap;e||(e=this._idIndexMap=ft(),this._idIndexMapCount=0);var n=e.get(t);return null==n&&e.set(t,n=this._idIndexMapCount++),n},e.prototype.getViewRoot=function(){return this._viewRoot},e.prototype.resetViewRoot=function(t){t?this._viewRoot=t:t=this._viewRoot;var e=this.getRawData().tree.root;t&&(t===e||e.contains(t))||(this._viewRoot=e)},e.prototype.enableAriaDecal=function(){zC(this)},e.type="series.treemap",e.layoutMode="box",e.defaultOption={progressive:0,left:"center",top:"middle",width:"80%",height:"80%",sort:!0,clipWindow:"origin",squareRatio:.5*(1+Math.sqrt(5)),leafDepth:null,drillDownIcon:"▶",zoomToNodeRatio:.1024,roam:!0,nodeClick:"zoomToNode",animation:!0,animationDurationUpdate:900,animationEasing:"quinticInOut",breadcrumb:{show:!0,height:22,left:"center",top:"bottom",emptyItemWidth:25,itemStyle:{color:"rgba(0,0,0,0.7)",textStyle:{color:"#fff"}}},label:{show:!0,distance:0,padding:5,position:"inside",color:"#fff",overflow:"truncate"},upperLabel:{show:!1,position:[0,"50%"],height:20,overflow:"truncate",verticalAlign:"middle"},itemStyle:{color:null,colorAlpha:null,colorSaturation:null,borderWidth:0,gapWidth:0,borderColor:"#fff",borderColorSaturation:null},emphasis:{upperLabel:{show:!0,position:[0,"50%"],overflow:"truncate",verticalAlign:"middle"}},visualDimension:0,visualMin:null,visualMax:null,color:[],colorAlpha:null,colorSaturation:null,colorMappingBy:"index",visibleMin:10,childrenVisibleMin:null,levels:[]},e}(ag);function BC(t){var e=0;E(t.children,(function(t){BC(t);var n=t.value;Y(n)&&(n=n[0]),e+=n}));var n=t.value;Y(n)&&(n=n[0]),(null==n||isNaN(n))&&(n=e),n<0&&(n=0),Y(t.value)?t.value[0]=n:t.value=n}var FC=function(){function t(t){this.group=new Cr,t.add(this.group)}return t.prototype.render=function(t,e,n,i){var r=t.getModel("breadcrumb"),o=this.group;if(o.removeAll(),r.get("show")&&n){var a=r.getModel("itemStyle"),s=a.getModel("textStyle"),l={pos:{left:r.get("left"),right:r.get("right"),top:r.get("top"),bottom:r.get("bottom")},box:{width:e.getWidth(),height:e.getHeight()},emptyItemWidth:r.get("emptyItemWidth"),totalWidth:0,renderList:[]};this._prepare(n,l,s),this._renderContent(t,l,a,s,i),xp(o,l.pos,l.box)}},t.prototype._prepare=function(t,e,n){for(var i=t;i;i=i.parentNode){var r=xo(i.getModel().get("name"),""),o=n.getTextRect(r),a=Math.max(o.width+16,e.emptyItemWidth);e.totalWidth+=a+8,e.renderList.push({node:i,text:r,width:a})}},t.prototype._renderContent=function(t,e,n,i,r){for(var o,a,s,l,u,h,c,p,d,f=0,g=e.emptyItemWidth,y=t.get(["breadcrumb","height"]),v=(o=e.pos,a=e.box,l=a.width,u=a.height,h=Er(o.left,l),c=Er(o.top,u),p=Er(o.right,l),d=Er(o.bottom,u),(isNaN(h)||isNaN(parseFloat(o.left)))&&(h=0),(isNaN(p)||isNaN(parseFloat(o.right)))&&(p=l),(isNaN(c)||isNaN(parseFloat(o.top)))&&(c=0),(isNaN(d)||isNaN(parseFloat(o.bottom)))&&(d=u),s=np(s||0),{width:Math.max(p-h-s[1]-s[3],0),height:Math.max(d-c-s[0]-s[2],0)}),m=e.totalWidth,x=e.renderList,_=x.length-1;_>=0;_--){var b=x[_],w=b.node,S=b.width,M=b.text;m>v.width&&(m-=S-g,S=g,M=null);var I=new Lu({shape:{points:GC(f,0,S,y,_===x.length-1,0===_)},style:k(n.getItemStyle(),{lineJoin:"bevel"}),textContent:new As({style:{text:M,fill:i.getTextColor(),font:i.getFont()}}),textConfig:{position:"inside"},z2:1e5,onclick:H(r,w)});I.disableLabelAnimation=!0,this.group.add(I),WC(I,t,w),f+=S+8}},t.prototype.remove=function(){this.group.removeAll()},t}();function GC(t,e,n,i,r,o){var a=[[r?t:t-5,e],[t+n,e],[t+n,e+i],[r?t:t-5,e+i]];return!o&&a.splice(2,0,[t+n+5,e+i/2]),!r&&a.push([t,e+i/2]),a}function WC(t,e,n){Ws(t).eventData={componentType:"series",componentSubType:"treemap",componentIndex:e.componentIndex,seriesIndex:e.seriesIndex,seriesName:e.name,seriesType:"treemap",selfType:"breadcrumb",nodeData:{dataIndex:n&&n.dataIndex,name:n&&n.name},treePathInfo:n&&LC(n,e)}}var HC=function(){function t(){this._storage=[],this._elExistsMap={}}return t.prototype.add=function(t,e,n,i,r){return!this._elExistsMap[t.id]&&(this._elExistsMap[t.id]=!0,this._storage.push({el:t,target:e,duration:n,delay:i,easing:r}),!0)},t.prototype.finished=function(t){return this._finishedCallback=t,this},t.prototype.start=function(){for(var t=this,e=this._storage.length,n=function(){--e<=0&&(t._storage.length=0,t._elExistsMap={},t._finishedCallback&&t._finishedCallback())},i=0,r=this._storage.length;i<r;i++){var o=this._storage[i];o.el.animateTo(o.target,{duration:o.duration,delay:o.delay,easing:o.easing,setToFinal:!0,done:n,aborted:n})}return this},t}();var YC=Cr,UC=Ts,XC="label",ZC="upperLabel",jC=Wo([["fill","color"],["stroke","strokeColor"],["lineWidth","strokeWidth"],["shadowBlur"],["shadowOffsetX"],["shadowOffsetY"],["shadowColor"]]),qC=function(t){var e=jC(t);return e.stroke=e.fill=e.lineWidth=null,e},KC=So(),$C=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n._state="ready",n._storage={nodeGroup:[],background:[],content:[]},n}return n(e,t),e.prototype.render=function(t,e,n,i){if(!(P(e.findComponents({mainType:"series",subType:"treemap",query:i}),t)<0)){this.seriesModel=t,this.api=n,this.ecModel=e;var r=DC(i,["treemapZoomToNode","treemapRootToNode"],t),o=i&&i.type,a=t.layoutInfo,s=!this._oldTree,l=this._storage,u="treemapRootToNode"===o&&r&&l?{rootNodeGroup:l.nodeGroup[r.node.getRawIndex()],direction:i.direction}:null,h=this._giveContainerGroup(a),c=t.get("animation"),p=this._doRender(h,t,u);!c||s||o&&"treemapZoomToNode"!==o&&"treemapRootToNode"!==o?p.renderFinally():this._doAnimation(h,p,t,u),this._resetController(n),this._renderBreadcrumb(t,n,r)}},e.prototype._giveContainerGroup=function(t){var e=this._containerGroup;return e||(e=this._containerGroup=new YC,this._initEvents(e),this.group.add(e)),e.x=t.x,e.y=t.y,e},e.prototype._doRender=function(t,e,n){var i=e.getData().tree,r=this._oldTree,o={nodeGroup:[],background:[],content:[]},a={nodeGroup:[],background:[],content:[]},s=this._storage,l=[];function u(t,i,r,u){return function(t,e,n,i,r,o,a,s,l,u){if(!a)return;var h=a.getLayout(),c=t.getData(),p=a.getModel();if(c.setItemGraphicEl(a.dataIndex,null),!h||!h.isInView)return;var d=h.width,f=h.height,g=h.borderWidth,y=h.invisible,v=a.getRawIndex(),m=s&&s.getRawIndex(),x=a.viewChildren,_=h.upperHeight,b=x&&x.length,w=p.getModel("itemStyle"),S=p.getModel(["emphasis","itemStyle"]),M=p.getModel(["blur","itemStyle"]),I=p.getModel(["select","itemStyle"]),T=w.get("borderRadius")||0,C=G("nodeGroup",YC);if(!C)return;if(l.add(C),C.x=h.x||0,C.y=h.y||0,C.markRedraw(),KC(C).nodeWidth=d,KC(C).nodeHeight=f,h.isAboveViewRoot)return C;var D=G("background",UC,u,20);D&&E(C,D,b&&h.upperLabelHeight);var k=p.getModel("emphasis"),L=k.get("focus"),P=k.get("blurScope"),O=k.get("disabled"),R="ancestor"===L?a.getAncestorsIndices():"descendant"===L?a.getDescendantIndices():L;if(b)Bl(C)&&Vl(C,!1),D&&(Vl(D,!O),c.setItemGraphicEl(a.dataIndex,D),Rl(D,R,P));else{var N=G("content",UC,u,30);N&&z(C,N),D.disableMorphing=!0,D&&Bl(D)&&Vl(D,!1),Vl(C,!O),c.setItemGraphicEl(a.dataIndex,C),Rl(C,R,P)}return C;function E(e,n,i){var r=Ws(n);if(r.dataIndex=a.dataIndex,r.seriesIndex=t.seriesIndex,n.setShape({x:0,y:0,width:d,height:f,r:T}),y)V(n);else{n.invisible=!1;var o=a.getVisual("style"),s=o.stroke,l=qC(w);l.fill=s;var u=jC(S);u.fill=S.get("borderColor");var h=jC(M);h.fill=M.get("borderColor");var c=jC(I);if(c.fill=I.get("borderColor"),i){var p=d-2*g;B(n,s,o.opacity,{x:g,y:0,width:p,height:_})}else n.removeTextContent();n.setStyle(l),n.ensureState("emphasis").style=u,n.ensureState("blur").style=h,n.ensureState("select").style=c,yl(n)}e.add(n)}function z(e,n){var i=Ws(n);i.dataIndex=a.dataIndex,i.seriesIndex=t.seriesIndex;var r=Math.max(d-2*g,0),o=Math.max(f-2*g,0);if(n.culling=!0,n.setShape({x:g,y:g,width:r,height:o,r:T}),y)V(n);else{n.invisible=!1;var s=a.getVisual("style"),l=s.fill,u=qC(w);u.fill=l,u.decal=s.decal;var h=jC(S),c=jC(M),p=jC(I);B(n,l,s.opacity,null),n.setStyle(u),n.ensureState("emphasis").style=h,n.ensureState("blur").style=c,n.ensureState("select").style=p,yl(n)}e.add(n)}function V(t){!t.invisible&&o.push(t)}function B(e,n,i,r){var o=p.getModel(r?ZC:XC),s=xo(p.get("name"),null),l=o.getShallow("show");Wh(e,Hh(p,r?ZC:XC),{defaultText:l?s:null,inheritColor:n,defaultOpacity:i,labelFetcher:t,labelDataIndex:a.dataIndex});var u=e.getTextContent();if(u){var c=u.style,d=st(c.padding||0);r&&(e.setTextConfig({layoutRect:r}),u.disableLabelLayout=!0),u.beforeUpdate=function(){var t=Math.max((r?r.width:e.shape.width)-d[1]-d[3],0),n=Math.max((r?r.height:e.shape.height)-d[0]-d[2],0);c.width===t&&c.height===n||u.setStyle({width:t,height:n})},c.truncateMinChar=2,c.lineOverflow="truncate",F(c,r,h);var f=u.getState("emphasis");F(f?f.style:null,r,h)}}function F(e,n,i){var r=e?e.text:null;if(!n&&i.isLeafRoot&&null!=r){var o=t.get("drillDownIcon",!0);e.text=o?o+" "+r:r}}function G(t,i,o,a){var s=null!=m&&n[t][m],l=r[t];return s?(n[t][m]=null,W(l,s)):y||((s=new i)instanceof da&&(s.z2=function(t,e){return 100*t+e}(o,a)),H(l,s)),e[t][v]=s}function W(t,e){var n=t[v]={};e instanceof YC?(n.oldX=e.x,n.oldY=e.y):n.oldShape=A({},e.shape)}function H(t,e){var n=t[v]={},o=a.parentNode,s=e instanceof Cr;if(o&&(!i||"drillDown"===i.direction)){var l=0,u=0,h=r.background[o.getRawIndex()];!i&&h&&h.oldShape&&(l=h.oldShape.width,u=h.oldShape.height),s?(n.oldX=0,n.oldY=u):n.oldShape={x:l,y:u,width:0,height:0}}n.fadein=!s}}(e,a,s,n,o,l,t,i,r,u)}!function t(e,n,i,r,o){r?(n=e,E(e,(function(t,e){!t.isRemoved()&&s(e,e)}))):new Sm(n,e,a,a).add(s).update(s).remove(H(s,null)).execute();function a(t){return t.getId()}function s(a,s){var l=null!=a?e[a]:null,h=null!=s?n[s]:null,c=u(l,h,i,o);c&&t(l&&l.viewChildren||[],h&&h.viewChildren||[],c,r,o+1)}}(i.root?[i.root]:[],r&&r.root?[r.root]:[],t,i===r||!r,0);var h=function(t){var e={nodeGroup:[],background:[],content:[]};return t&&E(t,(function(t,n){var i=e[n];E(t,(function(t){t&&(i.push(t),KC(t).willDelete=!0)}))})),e}(s);return this._oldTree=i,this._storage=a,{lastsForAnimation:o,willDeleteEls:h,renderFinally:function(){E(h,(function(t){E(t,(function(t){t.parent&&t.parent.remove(t)}))})),E(l,(function(t){t.invisible=!0,t.dirty()}))}}},e.prototype._doAnimation=function(t,e,n,i){var r=n.get("animationDurationUpdate"),o=n.get("animationEasing"),a=(U(r)?0:r)||0,s=(U(o)?null:o)||"cubicOut",l=new HC;E(e.willDeleteEls,(function(t,e){E(t,(function(t,n){if(!t.invisible){var r,o=t.parent,u=KC(o);if(i&&"drillDown"===i.direction)r=o===i.rootNodeGroup?{shape:{x:0,y:0,width:u.nodeWidth,height:u.nodeHeight},style:{opacity:0}}:{style:{opacity:0}};else{var h=0,c=0;u.willDelete||(h=u.nodeWidth/2,c=u.nodeHeight/2),r="nodeGroup"===e?{x:h,y:c,style:{opacity:0}}:{shape:{x:h,y:c,width:0,height:0},style:{opacity:0}}}r&&l.add(t,r,a,0,s)}}))})),E(this._storage,(function(t,n){E(t,(function(t,i){var r=e.lastsForAnimation[n][i],o={};r&&(t instanceof Cr?null!=r.oldX&&(o.x=t.x,o.y=t.y,t.x=r.oldX,t.y=r.oldY):(r.oldShape&&(o.shape=A({},t.shape),t.setShape(r.oldShape)),r.fadein?(t.setStyle("opacity",0),o.style={opacity:1}):1!==t.style.opacity&&(o.style={opacity:1})),l.add(t,o,a,0,s))}))}),this),this._state="animating",l.finished(W((function(){this._state="ready",e.renderFinally()}),this)).start()},e.prototype._resetController=function(t){var e=this._controller;e||((e=this._controller=new DI(t.getZr())).enable(this.seriesModel.get("roam")),e.on("pan",W(this._onPan,this)),e.on("zoom",W(this._onZoom,this)));var n=new sr(0,0,t.getWidth(),t.getHeight());e.setPointerChecker((function(t,e,i){return n.contain(e,i)}))},e.prototype._clearController=function(){var t=this._controller;t&&(t.dispose(),t=null)},e.prototype._onPan=function(t){if("animating"!==this._state&&(Math.abs(t.dx)>3||Math.abs(t.dy)>3)){var e=this.seriesModel.getData().tree.root;if(!e)return;var n=e.getLayout();if(!n)return;this.api.dispatchAction({type:"treemapMove",from:this.uid,seriesId:this.seriesModel.id,rootRect:{x:n.x+t.dx,y:n.y+t.dy,width:n.width,height:n.height}})}},e.prototype._onZoom=function(t){var e=t.originX,n=t.originY;if("animating"!==this._state){var i=this.seriesModel.getData().tree.root;if(!i)return;var r=i.getLayout();if(!r)return;var o=new sr(r.x,r.y,r.width,r.height),a=this.seriesModel.layoutInfo,s=[1,0,0,1,0,0];Ei(s,s,[-(e-=a.x),-(n-=a.y)]),Vi(s,s,[t.scale,t.scale]),Ei(s,s,[e,n]),o.applyTransform(s),this.api.dispatchAction({type:"treemapRender",from:this.uid,seriesId:this.seriesModel.id,rootRect:{x:o.x,y:o.y,width:o.width,height:o.height}})}},e.prototype._initEvents=function(t){var e=this;t.on("click",(function(t){if("ready"===e._state){var n=e.seriesModel.get("nodeClick",!0);if(n){var i=e.findTarget(t.offsetX,t.offsetY);if(i){var r=i.node;if(r.getLayout().isLeafRoot)e._rootToNode(i);else if("zoomToNode"===n)e._zoomToNode(i);else if("link"===n){var o=r.hostTree.data.getItemModel(r.dataIndex),a=o.get("link",!0),s=o.get("target",!0)||"blank";a&&pp(a,s)}}}}}),this)},e.prototype._renderBreadcrumb=function(t,e,n){var i=this;n||(n=null!=t.get("leafDepth",!0)?{node:t.getViewRoot()}:this.findTarget(e.getWidth()/2,e.getHeight()/2))||(n={node:t.getData().tree.root}),(this._breadcrumb||(this._breadcrumb=new FC(this.group))).render(t,e,n.node,(function(e){"animating"!==i._state&&(kC(t.getViewRoot(),e)?i._rootToNode({node:e}):i._zoomToNode({node:e}))}))},e.prototype.remove=function(){this._clearController(),this._containerGroup&&this._containerGroup.removeAll(),this._storage={nodeGroup:[],background:[],content:[]},this._state="ready",this._breadcrumb&&this._breadcrumb.remove()},e.prototype.dispose=function(){this._clearController()},e.prototype._zoomToNode=function(t){this.api.dispatchAction({type:"treemapZoomToNode",from:this.uid,seriesId:this.seriesModel.id,targetNode:t.node})},e.prototype._rootToNode=function(t){this.api.dispatchAction({type:"treemapRootToNode",from:this.uid,seriesId:this.seriesModel.id,targetNode:t.node})},e.prototype.findTarget=function(t,e){var n;return this.seriesModel.getViewRoot().eachNode({attr:"viewChildren",order:"preorder"},(function(i){var r=this._storage.background[i.getRawIndex()];if(r){var o=r.transformCoordToLocal(t,e),a=r.shape;if(!(a.x<=o[0]&&o[0]<=a.x+a.width&&a.y<=o[1]&&o[1]<=a.y+a.height))return!1;n={node:i,offsetX:o[0],offsetY:o[1]}}}),this),n},e.type="treemap",e}(mg);var JC=E,QC=q,tD=-1,eD=function(){function t(e){var n=e.mappingMethod,i=e.type,r=this.option=T(e);this.type=i,this.mappingMethod=n,this._normalizeData=cD[n];var o=t.visualHandlers[i];this.applyVisual=o.applyVisual,this.getColorMapper=o.getColorMapper,this._normalizedToVisual=o._normalizedToVisual[n],"piecewise"===n?(nD(r),function(t){var e=t.pieceList;t.hasSpecialVisual=!1,E(e,(function(e,n){e.originIndex=n,null!=e.visual&&(t.hasSpecialVisual=!0)}))}(r)):"category"===n?r.categories?function(t){var e=t.categories,n=t.categoryMap={},i=t.visual;if(JC(e,(function(t,e){n[t]=e})),!Y(i)){var r=[];q(i)?JC(i,(function(t,e){var i=n[e];r[null!=i?i:tD]=t})):r[-1]=i,i=hD(t,r)}for(var o=e.length-1;o>=0;o--)null==i[o]&&(delete n[e[o]],e.pop())}(r):nD(r,!0):(lt("linear"!==n||r.dataExtent),nD(r))}return t.prototype.mapValueToVisual=function(t){var e=this._normalizeData(t);return this._normalizedToVisual(e,t)},t.prototype.getNormalizer=function(){return W(this._normalizeData,this)},t.listVisualTypes=function(){return G(t.visualHandlers)},t.isValidType=function(e){return t.visualHandlers.hasOwnProperty(e)},t.eachVisual=function(t,e,n){q(t)?E(t,e,n):e.call(n,t)},t.mapVisual=function(e,n,i){var r,o=Y(e)?[]:q(e)?{}:(r=!0,null);return t.eachVisual(e,(function(t,e){var a=n.call(i,t,e);r?o=a:o[e]=a})),o},t.retrieveVisuals=function(e){var n,i={};return e&&JC(t.visualHandlers,(function(t,r){e.hasOwnProperty(r)&&(i[r]=e[r],n=!0)})),n?i:null},t.prepareVisualTypes=function(t){if(Y(t))t=t.slice();else{if(!QC(t))return[];var e=[];JC(t,(function(t,n){e.push(n)})),t=e}return t.sort((function(t,e){return"color"===e&&"color"!==t&&0===t.indexOf("color")?1:-1})),t},t.dependsOn=function(t,e){return"color"===e?!(!t||0!==t.indexOf(e)):t===e},t.findPieceIndex=function(t,e,n){for(var i,r=1/0,o=0,a=e.length;o<a;o++){var s=e[o].value;if(null!=s){if(s===t||X(s)&&s===t+"")return o;n&&c(s,o)}}for(o=0,a=e.length;o<a;o++){var l=e[o],u=l.interval,h=l.close;if(u){if(u[0]===-1/0){if(pD(h[1],t,u[1]))return o}else if(u[1]===1/0){if(pD(h[0],u[0],t))return o}else if(pD(h[0],u[0],t)&&pD(h[1],t,u[1]))return o;n&&c(u[0],o),n&&c(u[1],o)}}if(n)return t===1/0?e.length-1:t===-1/0?0:i;function c(e,n){var o=Math.abs(e-t);o<r&&(r=o,i=n)}},t.visualHandlers={color:{applyVisual:oD("color"),getColorMapper:function(){var t=this.option;return W("category"===t.mappingMethod?function(t,e){return!e&&(t=this._normalizeData(t)),aD.call(this,t)}:function(e,n,i){var r=!!i;return!n&&(e=this._normalizeData(e)),i=Mn(e,t.parsedVisual,i),r?i:kn(i,"rgba")},this)},_normalizedToVisual:{linear:function(t){return kn(Mn(t,this.option.parsedVisual),"rgba")},category:aD,piecewise:function(t,e){var n=uD.call(this,e);return null==n&&(n=kn(Mn(t,this.option.parsedVisual),"rgba")),n},fixed:sD}},colorHue:iD((function(t,e){return Dn(t,e)})),colorSaturation:iD((function(t,e){return Dn(t,null,e)})),colorLightness:iD((function(t,e){return Dn(t,null,null,e)})),colorAlpha:iD((function(t,e){return An(t,e)})),decal:{applyVisual:oD("decal"),_normalizedToVisual:{linear:null,category:aD,piecewise:null,fixed:null}},opacity:{applyVisual:oD("opacity"),_normalizedToVisual:lD([0,1])},liftZ:{applyVisual:oD("liftZ"),_normalizedToVisual:{linear:sD,category:sD,piecewise:sD,fixed:sD}},symbol:{applyVisual:function(t,e,n){n("symbol",this.mapValueToVisual(t))},_normalizedToVisual:{linear:rD,category:aD,piecewise:function(t,e){var n=uD.call(this,e);return null==n&&(n=rD.call(this,t)),n},fixed:sD}},symbolSize:{applyVisual:oD("symbolSize"),_normalizedToVisual:lD([0,1])}},t}();function nD(t,e){var n=t.visual,i=[];q(n)?JC(n,(function(t){i.push(t)})):null!=n&&i.push(n);e||1!==i.length||{color:1,symbol:1}.hasOwnProperty(t.type)||(i[1]=i[0]),hD(t,i)}function iD(t){return{applyVisual:function(e,n,i){var r=this.mapValueToVisual(e);i("color",t(n("color"),r))},_normalizedToVisual:lD([0,1])}}function rD(t){var e=this.option.visual;return e[Math.round(Nr(t,[0,1],[0,e.length-1],!0))]||{}}function oD(t){return function(e,n,i){i(t,this.mapValueToVisual(e))}}function aD(t){var e=this.option.visual;return e[this.option.loop&&t!==tD?t%e.length:t]}function sD(){return this.option.visual[0]}function lD(t){return{linear:function(e){return Nr(e,t,this.option.visual,!0)},category:aD,piecewise:function(e,n){var i=uD.call(this,n);return null==i&&(i=Nr(e,t,this.option.visual,!0)),i},fixed:sD}}function uD(t){var e=this.option,n=e.pieceList;if(e.hasSpecialVisual){var i=n[eD.findPieceIndex(t,n)];if(i&&i.visual)return i.visual[this.type]}}function hD(t,e){return t.visual=e,"color"===t.type&&(t.parsedVisual=z(e,(function(t){return bn(t)}))),e}var cD={linear:function(t){return Nr(t,this.option.dataExtent,[0,1],!0)},piecewise:function(t){var e=this.option.pieceList,n=eD.findPieceIndex(t,e,!0);if(null!=n)return Nr(n,[0,e.length-1],[0,1],!0)},category:function(t){var e=this.option.categories?this.option.categoryMap[t]:t;return null==e?tD:e},fixed:xt};function pD(t,e,n){return t?e<=n:e<n}var dD=So(),fD={seriesType:"treemap",reset:function(t){var e=t.getData().tree.root;e.isRemoved()||gD(e,{},t.getViewRoot().getAncestors(),t)}};function gD(t,e,n,i){var r=t.getModel(),o=t.getLayout(),a=t.hostTree.data;if(o&&!o.invisible&&o.isInView){var s,l=r.getModel("itemStyle"),u=function(t,e,n){var i=A({},e),r=n.designatedVisualItemStyle;return E(["color","colorAlpha","colorSaturation"],(function(n){r[n]=e[n];var o=t.get(n);r[n]=null,null!=o&&(i[n]=o)})),i}(l,e,i),h=a.ensureUniqueItemVisual(t.dataIndex,"style"),c=l.get("borderColor"),p=l.get("borderColorSaturation");null!=p&&(c=function(t,e){return null!=e?Dn(e,null,null,t):null}(p,s=yD(u))),h.stroke=c;var d=t.viewChildren;if(d&&d.length){var f=function(t,e,n,i,r,o){if(!o||!o.length)return;var a=mD(e,"color")||null!=r.color&&"none"!==r.color&&(mD(e,"colorAlpha")||mD(e,"colorSaturation"));if(!a)return;var s=e.get("visualMin"),l=e.get("visualMax"),u=n.dataExtent.slice();null!=s&&s<u[0]&&(u[0]=s),null!=l&&l>u[1]&&(u[1]=l);var h=e.get("colorMappingBy"),c={type:a.name,dataExtent:u,visual:a.range};"color"!==c.type||"index"!==h&&"id"!==h?c.mappingMethod="linear":(c.mappingMethod="category",c.loop=!0);var p=new eD(c);return dD(p).drColorMappingBy=h,p}(0,r,o,0,u,d);E(d,(function(t,e){if(t.depth>=n.length||t===n[t.depth]){var o=function(t,e,n,i,r,o){var a=A({},e);if(r){var s=r.type,l="color"===s&&dD(r).drColorMappingBy,u="index"===l?i:"id"===l?o.mapIdToIndex(n.getId()):n.getValue(t.get("visualDimension"));a[s]=r.mapValueToVisual(u)}return a}(r,u,t,e,f,i);gD(t,o,n,i)}}))}else s=yD(u),h.fill=s}}function yD(t){var e=vD(t,"color");if(e){var n=vD(t,"colorAlpha"),i=vD(t,"colorSaturation");return i&&(e=Dn(e,null,null,i)),n&&(e=An(e,n)),e}}function vD(t,e){var n=t[e];if(null!=n&&"none"!==n)return n}function mD(t,e){var n=t.get(e);return Y(n)&&n.length?{name:e,range:n}:null}var xD=Math.max,_D=Math.min,bD=it,wD=E,SD=["itemStyle","borderWidth"],MD=["itemStyle","gapWidth"],ID=["upperLabel","show"],TD=["upperLabel","height"],CD={seriesType:"treemap",reset:function(t,e,n,i){var r=n.getWidth(),o=n.getHeight(),a=t.option,s=mp(t.getBoxLayoutParams(),{width:n.getWidth(),height:n.getHeight()}),l=a.size||[],u=Er(bD(s.width,l[0]),r),h=Er(bD(s.height,l[1]),o),c=i&&i.type,p=DC(i,["treemapZoomToNode","treemapRootToNode"],t),d="treemapRender"===c||"treemapMove"===c?i.rootRect:null,f=t.getViewRoot(),g=AC(f);if("treemapMove"!==c){var y="treemapZoomToNode"===c?function(t,e,n,i,r){var o,a=(e||{}).node,s=[i,r];if(!a||a===n)return s;var l=i*r,u=l*t.option.zoomToNodeRatio;for(;o=a.parentNode;){for(var h=0,c=o.children,p=0,d=c.length;p<d;p++)h+=c[p].getValue();var f=a.getValue();if(0===f)return s;u*=h/f;var g=o.getModel(),y=g.get(SD);(u+=4*y*y+(3*y+Math.max(y,PD(g)))*Math.pow(u,.5))>Yr&&(u=Yr),a=o}u<l&&(u=l);var v=Math.pow(u/l,.5);return[i*v,r*v]}(t,p,f,u,h):d?[d.width,d.height]:[u,h],v=a.sort;v&&"asc"!==v&&"desc"!==v&&(v="desc");var m={squareRatio:a.squareRatio,sort:v,leafDepth:a.leafDepth};f.hostTree.clearLayouts();var x={x:0,y:0,width:y[0],height:y[1],area:y[0]*y[1]};f.setLayout(x),DD(f,m,!1,0),x=f.getLayout(),wD(g,(function(t,e){var n=(g[e+1]||f).getValue();t.setLayout(A({dataExtent:[n,n],borderWidth:0,upperHeight:0},x))}))}var _=t.getData().tree.root;_.setLayout(function(t,e,n){if(e)return{x:e.x,y:e.y};var i={x:0,y:0};if(!n)return i;var r=n.node,o=r.getLayout();if(!o)return i;var a=[o.width/2,o.height/2],s=r;for(;s;){var l=s.getLayout();a[0]+=l.x,a[1]+=l.y,s=s.parentNode}return{x:t.width/2-a[0],y:t.height/2-a[1]}}(s,d,p),!0),t.setLayoutInfo(s),LD(_,new sr(-s.x,-s.y,r,o),g,f,0)}};function DD(t,e,n,i){var r,o;if(!t.isRemoved()){var a=t.getLayout();r=a.width,o=a.height;var s=t.getModel(),l=s.get(SD),u=s.get(MD)/2,h=PD(s),c=Math.max(l,h),p=l-u,d=c-u;t.setLayout({borderWidth:l,upperHeight:c,upperLabelHeight:h},!0);var f=(r=xD(r-2*p,0))*(o=xD(o-p-d,0)),g=function(t,e,n,i,r,o){var a=t.children||[],s=i.sort;"asc"!==s&&"desc"!==s&&(s=null);var l=null!=i.leafDepth&&i.leafDepth<=o;if(r&&!l)return t.viewChildren=[];!function(t,e){e&&t.sort((function(t,n){var i="asc"===e?t.getValue()-n.getValue():n.getValue()-t.getValue();return 0===i?"asc"===e?t.dataIndex-n.dataIndex:n.dataIndex-t.dataIndex:i}))}(a=B(a,(function(t){return!t.isRemoved()})),s);var u=function(t,e,n){for(var i=0,r=0,o=e.length;r<o;r++)i+=e[r].getValue();var a,s=t.get("visualDimension");e&&e.length?"value"===s&&n?(a=[e[e.length-1].getValue(),e[0].getValue()],"asc"===n&&a.reverse()):(a=[1/0,-1/0],wD(e,(function(t){var e=t.getValue(s);e<a[0]&&(a[0]=e),e>a[1]&&(a[1]=e)}))):a=[NaN,NaN];return{sum:i,dataExtent:a}}(e,a,s);if(0===u.sum)return t.viewChildren=[];if(u.sum=function(t,e,n,i,r){if(!i)return n;for(var o=t.get("visibleMin"),a=r.length,s=a,l=a-1;l>=0;l--){var u=r["asc"===i?a-l-1:l].getValue();u/n*e<o&&(s=l,n-=u)}return"asc"===i?r.splice(0,a-s):r.splice(s,a-s),n}(e,n,u.sum,s,a),0===u.sum)return t.viewChildren=[];for(var h=0,c=a.length;h<c;h++){var p=a[h].getValue()/u.sum*n;a[h].setLayout({area:p})}l&&(a.length&&t.setLayout({isLeafRoot:!0},!0),a.length=0);return t.viewChildren=a,t.setLayout({dataExtent:u.dataExtent},!0),a}(t,s,f,e,n,i);if(g.length){var y={x:p,y:d,width:r,height:o},v=_D(r,o),m=1/0,x=[];x.area=0;for(var _=0,b=g.length;_<b;){var w=g[_];x.push(w),x.area+=w.getLayout().area;var S=AD(x,v,e.squareRatio);S<=m?(_++,m=S):(x.area-=x.pop().getLayout().area,kD(x,v,y,u,!1),v=_D(y.width,y.height),x.length=x.area=0,m=1/0)}if(x.length&&kD(x,v,y,u,!0),!n){var M=s.get("childrenVisibleMin");null!=M&&f<M&&(n=!0)}for(_=0,b=g.length;_<b;_++)DD(g[_],e,n,i+1)}}}function AD(t,e,n){for(var i=0,r=1/0,o=0,a=void 0,s=t.length;o<s;o++)(a=t[o].getLayout().area)&&(a<r&&(r=a),a>i&&(i=a));var l=t.area*t.area,u=e*e*n;return l?xD(u*i/l,l/(u*r)):1/0}function kD(t,e,n,i,r){var o=e===n.width?0:1,a=1-o,s=["x","y"],l=["width","height"],u=n[s[o]],h=e?t.area/e:0;(r||h>n[l[a]])&&(h=n[l[a]]);for(var c=0,p=t.length;c<p;c++){var d=t[c],f={},g=h?d.getLayout().area/h:0,y=f[l[a]]=xD(h-2*i,0),v=n[s[o]]+n[l[o]]-u,m=c===p-1||v<g?v:g,x=f[l[o]]=xD(m-2*i,0);f[s[a]]=n[s[a]]+_D(i,y/2),f[s[o]]=u+_D(i,x/2),u+=m,d.setLayout(f,!0)}n[s[a]]+=h,n[l[a]]-=h}function LD(t,e,n,i,r){var o=t.getLayout(),a=n[r],s=a&&a===t;if(!(a&&!s||r===n.length&&t!==i)){t.setLayout({isInView:!0,invisible:!s&&!e.intersect(o),isAboveViewRoot:s},!0);var l=new sr(e.x-o.x,e.y-o.y,e.width,e.height);wD(t.viewChildren||[],(function(t){LD(t,l,n,i,r+1)}))}}function PD(t){return t.get(ID)?t.get(TD):0}function OD(t){var e=t.findComponents({mainType:"legend"});e&&e.length&&t.eachSeriesByType("graph",(function(t){var n=t.getCategoriesData(),i=t.getGraph().data,r=n.mapArray(n.getName);i.filterSelf((function(t){var n=i.getItemModel(t).getShallow("category");if(null!=n){j(n)&&(n=r[n]);for(var o=0;o<e.length;o++)if(!e[o].isSelected(n))return!1}return!0}))}))}function RD(t){var e={};t.eachSeriesByType("graph",(function(t){var n=t.getCategoriesData(),i=t.getData(),r={};n.each((function(i){var o=n.getName(i);r["ec-"+o]=i;var a=n.getItemModel(i),s=a.getModel("itemStyle").getItemStyle();s.fill||(s.fill=t.getColorFromPalette(o,e)),n.setItemVisual(i,"style",s);for(var l=["symbol","symbolSize","symbolKeepAspect"],u=0;u<l.length;u++){var h=a.getShallow(l[u],!0);null!=h&&n.setItemVisual(i,l[u],h)}})),n.count()&&i.each((function(t){var e=i.getItemModel(t).getShallow("category");if(null!=e){X(e)&&(e=r["ec-"+e]);var o=n.getItemVisual(e,"style");A(i.ensureUniqueItemVisual(t,"style"),o);for(var a=["symbol","symbolSize","symbolKeepAspect"],s=0;s<a.length;s++)i.setItemVisual(t,a[s],n.getItemVisual(e,a[s]))}}))}))}function ND(t){return t instanceof Array||(t=[t,t]),t}function ED(t){t.eachSeriesByType("graph",(function(t){var e=t.getGraph(),n=t.getEdgeData(),i=ND(t.get("edgeSymbol")),r=ND(t.get("edgeSymbolSize"));n.setVisual("fromSymbol",i&&i[0]),n.setVisual("toSymbol",i&&i[1]),n.setVisual("fromSymbolSize",r&&r[0]),n.setVisual("toSymbolSize",r&&r[1]),n.setVisual("style",t.getModel("lineStyle").getLineStyle()),n.each((function(t){var i=n.getItemModel(t),r=e.getEdgeByIndex(t),o=ND(i.getShallow("symbol",!0)),a=ND(i.getShallow("symbolSize",!0)),s=i.getModel("lineStyle").getLineStyle(),l=n.ensureUniqueItemVisual(t,"style");switch(A(l,s),l.stroke){case"source":var u=r.node1.getVisual("style");l.stroke=u&&u.fill;break;case"target":u=r.node2.getVisual("style");l.stroke=u&&u.fill}o[0]&&r.setVisual("fromSymbol",o[0]),o[1]&&r.setVisual("toSymbol",o[1]),a[0]&&r.setVisual("fromSymbolSize",a[0]),a[1]&&r.setVisual("toSymbolSize",a[1])}))}))}var zD="--\x3e",VD=function(t){return t.get("autoCurveness")||null},BD=function(t,e){var n=VD(t),i=20,r=[];if(j(n))i=n;else if(Y(n))return void(t.__curvenessList=n);e>i&&(i=e);var o=i%2?i+2:i+3;r=[];for(var a=0;a<o;a++)r.push((a%2?a+1:a)/10*(a%2?-1:1));t.__curvenessList=r},FD=function(t,e,n){var i=[t.id,t.dataIndex].join("."),r=[e.id,e.dataIndex].join(".");return[n.uid,i,r].join(zD)},GD=function(t){var e=t.split(zD);return[e[0],e[2],e[1]].join(zD)},WD=function(t,e){var n=e.__edgeMap;return n[t]?n[t].length:0};function HD(t,e,n,i){var r=VD(e),o=Y(r);if(!r)return null;var a=function(t,e){var n=FD(t.node1,t.node2,e);return e.__edgeMap[n]}(t,e);if(!a)return null;for(var s=-1,l=0;l<a.length;l++)if(a[l]===n){s=l;break}var u=function(t,e){return WD(FD(t.node1,t.node2,e),e)+WD(FD(t.node2,t.node1,e),e)}(t,e);BD(e,u),t.lineStyle=t.lineStyle||{};var h=FD(t.node1,t.node2,e),c=e.__curvenessList,p=o||u%2?0:1;if(a.isForward)return c[p+s];var d=GD(h),f=WD(d,e),g=c[s+f+p];return i?o?r&&0===r[0]?(f+p)%2?g:-g:((f%2?0:1)+p)%2?g:-g:(f+p)%2?g:-g:c[s+f+p]}function YD(t){var e=t.coordinateSystem;if(!e||"view"===e.type){var n=t.getGraph();n.eachNode((function(t){var e=t.getModel();t.setLayout([+e.get("x"),+e.get("y")])})),UD(n,t)}}function UD(t,e){t.eachEdge((function(t,n){var i=ot(t.getModel().get(["lineStyle","curveness"]),-HD(t,e,n,!0),0),r=Mt(t.node1.getLayout()),o=Mt(t.node2.getLayout()),a=[r,o];+i&&a.push([(r[0]+o[0])/2-(r[1]-o[1])*i,(r[1]+o[1])/2-(o[0]-r[0])*i]),t.setLayout(a)}))}function XD(t,e){t.eachSeriesByType("graph",(function(t){var e=t.get("layout"),n=t.coordinateSystem;if(n&&"view"!==n.type){var i=t.getData(),r=[];E(n.dimensions,(function(t){r=r.concat(i.mapDimensionsAll(t))}));for(var o=0;o<i.count();o++){for(var a=[],s=!1,l=0;l<r.length;l++){var u=i.get(r[l],o);isNaN(u)||(s=!0),a.push(u)}s?i.setItemLayout(o,n.dataToPoint(a)):i.setItemLayout(o,[NaN,NaN])}UD(i.graph,t)}else e&&"none"!==e||YD(t)}))}function ZD(t){var e=t.coordinateSystem;if("view"!==e.type)return 1;var n=t.option.nodeScaleRatio,i=e.scaleX;return((e.getZoom()-1)*n+1)/i}function jD(t){var e=t.getVisual("symbolSize");return e instanceof Array&&(e=(e[0]+e[1])/2),+e}var qD=Math.PI,KD=[];function $D(t,e){var n=t.coordinateSystem;if(!n||"view"===n.type){var i=n.getBoundingRect(),r=t.getData(),o=r.graph,a=i.width/2+i.x,s=i.height/2+i.y,l=Math.min(i.width,i.height)/2,u=r.count();r.setLayout({cx:a,cy:s}),u&&(JD[e](t,o,r,l,a,s,u),o.eachEdge((function(e,n){var i,r=ot(e.getModel().get(["lineStyle","curveness"]),HD(e,t,n),0),o=Mt(e.node1.getLayout()),l=Mt(e.node2.getLayout()),u=(o[0]+l[0])/2,h=(o[1]+l[1])/2;+r&&(i=[a*(r*=3)+u*(1-r),s*r+h*(1-r)]),e.setLayout([o,l,i])})))}}var JD={value:function(t,e,n,i,r,o,a){var s=0,l=n.getSum("value"),u=2*Math.PI/(l||a);e.eachNode((function(t){var e=t.getValue("value"),n=u*(l?e:1)/2;s+=n,t.setLayout([i*Math.cos(s)+r,i*Math.sin(s)+o]),s+=n}))},symbolSize:function(t,e,n,i,r,o,a){var s=0;KD.length=a;var l=ZD(t);e.eachNode((function(t){var e=jD(t);isNaN(e)&&(e=2),e<0&&(e=0),e*=l;var n=Math.asin(e/2/i);isNaN(n)&&(n=qD/2),KD[t.dataIndex]=n,s+=2*n}));var u=(2*qD-s)/a/2,h=0;e.eachNode((function(t){var e=u+KD[t.dataIndex];h+=e,t.setLayout([i*Math.cos(h)+r,i*Math.sin(h)+o]),h+=e}))}};function QD(t){t.eachSeriesByType("graph",(function(t){"circular"===t.get("layout")&&$D(t,"symbolSize")}))}var tA=Ct;function eA(t){t.eachSeriesByType("graph",(function(t){var e=t.coordinateSystem;if(!e||"view"===e.type)if("force"===t.get("layout")){var n=t.preservedPoints||{},i=t.getGraph(),r=i.data,o=i.edgeData,a=t.getModel("force"),s=a.get("initLayout");t.preservedPoints?r.each((function(t){var e=r.getId(t);r.setItemLayout(t,n[e]||[NaN,NaN])})):s&&"none"!==s?"circular"===s&&$D(t,"value"):YD(t);var l=r.getDataExtent("value"),u=o.getDataExtent("value"),h=a.get("repulsion"),c=a.get("edgeLength"),p=Y(h)?h:[h,h],d=Y(c)?c:[c,c];d=[d[1],d[0]];var f=r.mapArray("value",(function(t,e){var n=r.getItemLayout(e),i=Nr(t,l,p);return isNaN(i)&&(i=(p[0]+p[1])/2),{w:i,rep:i,fixed:r.getItemModel(e).get("fixed"),p:!n||isNaN(n[0])||isNaN(n[1])?null:n}})),g=o.mapArray("value",(function(e,n){var r=i.getEdgeByIndex(n),o=Nr(e,u,d);isNaN(o)&&(o=(d[0]+d[1])/2);var a=r.getModel(),s=ot(r.getModel().get(["lineStyle","curveness"]),-HD(r,t,n,!0),0);return{n1:f[r.node1.dataIndex],n2:f[r.node2.dataIndex],d:o,curveness:s,ignoreForceLayout:a.get("ignoreForceLayout")}})),y=e.getBoundingRect(),v=function(t,e,n){for(var i=t,r=e,o=n.rect,a=o.width,s=o.height,l=[o.x+a/2,o.y+s/2],u=null==n.gravity?.1:n.gravity,h=0;h<i.length;h++){var c=i[h];c.p||(c.p=wt(a*(Math.random()-.5)+l[0],s*(Math.random()-.5)+l[1])),c.pp=Mt(c.p),c.edges=null}var p,d,f=null==n.friction?.6:n.friction,g=f;return{warmUp:function(){g=.8*f},setFixed:function(t){i[t].fixed=!0},setUnfixed:function(t){i[t].fixed=!1},beforeStep:function(t){p=t},afterStep:function(t){d=t},step:function(t){p&&p(i,r);for(var e=[],n=i.length,o=0;o<r.length;o++){var a=r[o];if(!a.ignoreForceLayout){var s=a.n1;Dt(e,(y=a.n2).p,s.p);var h=At(e)-a.d,c=y.w/(s.w+y.w);isNaN(c)&&(c=0),Rt(e,e),!s.fixed&&tA(s.p,s.p,e,c*h*g),!y.fixed&&tA(y.p,y.p,e,-(1-c)*h*g)}}for(o=0;o<n;o++)(x=i[o]).fixed||(Dt(e,l,x.p),tA(x.p,x.p,e,u*g));for(o=0;o<n;o++){s=i[o];for(var f=o+1;f<n;f++){var y;Dt(e,(y=i[f]).p,s.p),0===(h=At(e))&&(It(e,Math.random()-.5,Math.random()-.5),h=1);var v=(s.rep+y.rep)/h/h;!s.fixed&&tA(s.pp,s.pp,e,v),!y.fixed&&tA(y.pp,y.pp,e,-v)}}var m=[];for(o=0;o<n;o++){var x;(x=i[o]).fixed||(Dt(m,x.p,x.pp),tA(x.p,x.p,m,g),St(x.pp,x.p))}var _=(g*=.992)<.01;d&&d(i,r,_),t&&t(_)}}}(f,g,{rect:y,gravity:a.get("gravity"),friction:a.get("friction")});v.beforeStep((function(t,e){for(var n=0,r=t.length;n<r;n++)t[n].fixed&&St(t[n].p,i.getNodeByIndex(n).getLayout())})),v.afterStep((function(t,e,o){for(var a=0,s=t.length;a<s;a++)t[a].fixed||i.getNodeByIndex(a).setLayout(t[a].p),n[r.getId(a)]=t[a].p;for(a=0,s=e.length;a<s;a++){var l=e[a],u=i.getEdgeByIndex(a),h=l.n1.p,c=l.n2.p,p=u.getLayout();(p=p?p.slice():[])[0]=p[0]||[],p[1]=p[1]||[],St(p[0],h),St(p[1],c),+l.curveness&&(p[2]=[(h[0]+c[0])/2-(h[1]-c[1])*l.curveness,(h[1]+c[1])/2-(c[0]-h[0])*l.curveness]),u.setLayout(p)}})),t.forceLayout=v,t.preservedPoints=n,v.step()}else t.forceLayout=null}))}function nA(t,e){var n=[];return t.eachSeriesByType("graph",(function(t){var i=t.get("coordinateSystem");if(!i||"view"===i){var r=t.getData(),o=[],a=[];Ma(r.mapArray((function(t){var e=r.getItemModel(t);return[+e.get("x"),+e.get("y")]})),o,a),a[0]-o[0]==0&&(a[0]+=1,o[0]-=1),a[1]-o[1]==0&&(a[1]+=1,o[1]-=1);var s=(a[0]-o[0])/(a[1]-o[1]),l=function(t,e,n){return mp(A(t.getBoxLayoutParams(),{aspect:n}),{width:e.getWidth(),height:e.getHeight()})}(t,e,s);isNaN(s)&&(o=[l.x,l.y],a=[l.x+l.width,l.y+l.height]);var u=a[0]-o[0],h=a[1]-o[1],c=l.width,p=l.height,d=t.coordinateSystem=new BT;d.zoomLimit=t.get("scaleLimit"),d.setBoundingRect(o[0],o[1],u,h),d.setViewRect(l.x,l.y,c,p),d.setCenter(t.get("center")),d.setZoom(t.get("zoom")),n.push(d)}})),n}var iA=Eu.prototype,rA=Fu.prototype,oA=function(){this.x1=0,this.y1=0,this.x2=0,this.y2=0,this.percent=1};!function(t){function e(){return null!==t&&t.apply(this,arguments)||this}n(e,t)}(oA);function aA(t){return isNaN(+t.cpx1)||isNaN(+t.cpy1)}var sA=function(t){function e(e){var n=t.call(this,e)||this;return n.type="ec-line",n}return n(e,t),e.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},e.prototype.getDefaultShape=function(){return new oA},e.prototype.buildPath=function(t,e){aA(e)?iA.buildPath.call(this,t,e):rA.buildPath.call(this,t,e)},e.prototype.pointAt=function(t){return aA(this.shape)?iA.pointAt.call(this,t):rA.pointAt.call(this,t)},e.prototype.tangentAt=function(t){var e=this.shape,n=aA(e)?[e.x2-e.x1,e.y2-e.y1]:rA.tangentAt.call(this,t);return Rt(n,n)},e}(fs),lA=["fromSymbol","toSymbol"];function uA(t){return"_"+t+"Type"}function hA(t,e,n){var i=e.getItemVisual(n,t);if(i&&"none"!==i){var r=e.getItemVisual(n,t+"Size"),o=e.getItemVisual(n,t+"Rotate"),a=e.getItemVisual(n,t+"Offset"),s=e.getItemVisual(n,t+"KeepAspect"),l=Ly(r),u=Py(a||0,l),h=ky(i,-l[0]/2+u[0],-l[1]/2+u[1],l[0],l[1],null,s);return h.__specifiedRotation=null==o||isNaN(o)?void 0:+o*Math.PI/180||0,h.name=t,h}}function cA(t,e){t.x1=e[0][0],t.y1=e[0][1],t.x2=e[1][0],t.y2=e[1][1],t.percent=1;var n=e[2];n?(t.cpx1=n[0],t.cpy1=n[1]):(t.cpx1=NaN,t.cpy1=NaN)}var pA=function(t){function e(e,n,i){var r=t.call(this)||this;return r._createLine(e,n,i),r}return n(e,t),e.prototype._createLine=function(t,e,n){var i=t.hostModel,r=function(t){var e=new sA({name:"line",subPixelOptimize:!0});return cA(e.shape,t),e}(t.getItemLayout(e));r.shape.percent=0,rh(r,{shape:{percent:1}},i,e),this.add(r),E(lA,(function(n){var i=hA(n,t,e);this.add(i),this[uA(n)]=t.getItemVisual(e,n)}),this),this._updateCommonStl(t,e,n)},e.prototype.updateData=function(t,e,n){var i=t.hostModel,r=this.childOfName("line"),o=t.getItemLayout(e),a={shape:{}};cA(a.shape,o),ih(r,a,i,e),E(lA,(function(n){var i=t.getItemVisual(e,n),r=uA(n);if(this[r]!==i){this.remove(this.childOfName(n));var o=hA(n,t,e);this.add(o)}this[r]=i}),this),this._updateCommonStl(t,e,n)},e.prototype.getLinePath=function(){return this.childAt(0)},e.prototype._updateCommonStl=function(t,e,n){var i=t.hostModel,r=this.childOfName("line"),o=n&&n.emphasisLineStyle,a=n&&n.blurLineStyle,s=n&&n.selectLineStyle,l=n&&n.labelStatesModels,u=n&&n.emphasisDisabled,h=n&&n.focus,c=n&&n.blurScope;if(!n||t.hasItemOption){var p=t.getItemModel(e),d=p.getModel("emphasis");o=d.getModel("lineStyle").getLineStyle(),a=p.getModel(["blur","lineStyle"]).getLineStyle(),s=p.getModel(["select","lineStyle"]).getLineStyle(),u=d.get("disabled"),h=d.get("focus"),c=d.get("blurScope"),l=Hh(p)}var f=t.getItemVisual(e,"style"),g=f.stroke;r.useStyle(f),r.style.fill=null,r.style.strokeNoScale=!0,r.ensureState("emphasis").style=o,r.ensureState("blur").style=a,r.ensureState("select").style=s,E(lA,(function(t){var e=this.childOfName(t);if(e){e.setColor(g),e.style.opacity=f.opacity;for(var n=0;n<js.length;n++){var i=js[n],o=r.getState(i);if(o){var a=o.style||{},s=e.ensureState(i),l=s.style||(s.style={});null!=a.stroke&&(l[e.__isEmptyBrush?"stroke":"fill"]=a.stroke),null!=a.opacity&&(l.opacity=a.opacity)}}e.markRedraw()}}),this);var y=i.getRawValue(e);Wh(this,l,{labelDataIndex:e,labelFetcher:{getFormattedLabel:function(e,n){return i.getFormattedLabel(e,n,t.dataType)}},inheritColor:g||"#000",defaultOpacity:f.opacity,defaultText:(null==y?t.getName(e):isFinite(y)?zr(y):y)+""});var v=this.getTextContent();if(v){var m=l.normal;v.__align=v.style.align,v.__verticalAlign=v.style.verticalAlign,v.__position=m.get("position")||"middle";var x=m.get("distance");Y(x)||(x=[x,x]),v.__labelDistance=x}this.setTextConfig({position:null,local:!0,inside:!1}),Ol(this,h,c,u)},e.prototype.highlight=function(){xl(this)},e.prototype.downplay=function(){_l(this)},e.prototype.updateLayout=function(t,e){this.setLinePoints(t.getItemLayout(e))},e.prototype.setLinePoints=function(t){var e=this.childOfName("line");cA(e.shape,t),e.dirty()},e.prototype.beforeUpdate=function(){var t=this,e=t.childOfName("fromSymbol"),n=t.childOfName("toSymbol"),i=t.getTextContent();if(e||n||i&&!i.ignore){for(var r=1,o=this.parent;o;)o.scaleX&&(r/=o.scaleX),o=o.parent;var a=t.childOfName("line");if(this.__dirty||a.__dirty){var s=a.shape.percent,l=a.pointAt(0),u=a.pointAt(s),h=Dt([],u,l);if(Rt(h,h),e&&(e.setPosition(l),S(e,0),e.scaleX=e.scaleY=r*s,e.markRedraw()),n&&(n.setPosition(u),S(n,1),n.scaleX=n.scaleY=r*s,n.markRedraw()),i&&!i.ignore){i.x=i.y=0,i.originX=i.originY=0;var c=void 0,p=void 0,d=i.__labelDistance,f=d[0]*r,g=d[1]*r,y=s/2,v=a.tangentAt(y),m=[v[1],-v[0]],x=a.pointAt(y);m[1]>0&&(m[0]=-m[0],m[1]=-m[1]);var _=v[0]<0?-1:1;if("start"!==i.__position&&"end"!==i.__position){var b=-Math.atan2(v[1],v[0]);u[0]<l[0]&&(b=Math.PI+b),i.rotation=b}var w=void 0;switch(i.__position){case"insideStartTop":case"insideMiddleTop":case"insideEndTop":case"middle":w=-g,p="bottom";break;case"insideStartBottom":case"insideMiddleBottom":case"insideEndBottom":w=g,p="top";break;default:w=0,p="middle"}switch(i.__position){case"end":i.x=h[0]*f+u[0],i.y=h[1]*g+u[1],c=h[0]>.8?"left":h[0]<-.8?"right":"center",p=h[1]>.8?"top":h[1]<-.8?"bottom":"middle";break;case"start":i.x=-h[0]*f+l[0],i.y=-h[1]*g+l[1],c=h[0]>.8?"right":h[0]<-.8?"left":"center",p=h[1]>.8?"bottom":h[1]<-.8?"top":"middle";break;case"insideStartTop":case"insideStart":case"insideStartBottom":i.x=f*_+l[0],i.y=l[1]+w,c=v[0]<0?"right":"left",i.originX=-f*_,i.originY=-w;break;case"insideMiddleTop":case"insideMiddle":case"insideMiddleBottom":case"middle":i.x=x[0],i.y=x[1]+w,c="center",i.originY=-w;break;case"insideEndTop":case"insideEnd":case"insideEndBottom":i.x=-f*_+u[0],i.y=u[1]+w,c=v[0]>=0?"right":"left",i.originX=f*_,i.originY=-w}i.scaleX=i.scaleY=r,i.setStyle({verticalAlign:i.__verticalAlign||p,align:i.__align||c})}}}function S(t,e){var n=t.__specifiedRotation;if(null==n){var i=a.tangentAt(e);t.attr("rotation",(1===e?-1:1)*Math.PI/2-Math.atan2(i[1],i[0]))}else t.attr("rotation",n)}},e}(Cr),dA=function(){function t(t){this.group=new Cr,this._LineCtor=t||pA}return t.prototype.updateData=function(t){var e=this;this._progressiveEls=null;var n=this,i=n.group,r=n._lineData;n._lineData=t,r||i.removeAll();var o=fA(t);t.diff(r).add((function(n){e._doAdd(t,n,o)})).update((function(n,i){e._doUpdate(r,t,i,n,o)})).remove((function(t){i.remove(r.getItemGraphicEl(t))})).execute()},t.prototype.updateLayout=function(){var t=this._lineData;t&&t.eachItemGraphicEl((function(e,n){e.updateLayout(t,n)}),this)},t.prototype.incrementalPrepareUpdate=function(t){this._seriesScope=fA(t),this._lineData=null,this.group.removeAll()},t.prototype.incrementalUpdate=function(t,e){function n(t){t.isGroup||function(t){return t.animators&&t.animators.length>0}(t)||(t.incremental=!0,t.ensureState("emphasis").hoverLayer=!0)}this._progressiveEls=[];for(var i=t.start;i<t.end;i++){if(yA(e.getItemLayout(i))){var r=new this._LineCtor(e,i,this._seriesScope);r.traverse(n),this.group.add(r),e.setItemGraphicEl(i,r),this._progressiveEls.push(r)}}},t.prototype.remove=function(){this.group.removeAll()},t.prototype.eachRendered=function(t){zh(this._progressiveEls||this.group,t)},t.prototype._doAdd=function(t,e,n){if(yA(t.getItemLayout(e))){var i=new this._LineCtor(t,e,n);t.setItemGraphicEl(e,i),this.group.add(i)}},t.prototype._doUpdate=function(t,e,n,i,r){var o=t.getItemGraphicEl(n);yA(e.getItemLayout(i))?(o?o.updateData(e,i,r):o=new this._LineCtor(e,i,r),e.setItemGraphicEl(i,o),this.group.add(o)):this.group.remove(o)},t}();function fA(t){var e=t.hostModel,n=e.getModel("emphasis");return{lineStyle:e.getModel("lineStyle").getLineStyle(),emphasisLineStyle:n.getModel(["lineStyle"]).getLineStyle(),blurLineStyle:e.getModel(["blur","lineStyle"]).getLineStyle(),selectLineStyle:e.getModel(["select","lineStyle"]).getLineStyle(),emphasisDisabled:n.get("disabled"),blurScope:n.get("blurScope"),focus:n.get("focus"),labelStatesModels:Hh(e)}}function gA(t){return isNaN(t[0])||isNaN(t[1])}function yA(t){return t&&!gA(t[0])&&!gA(t[1])}var vA=[],mA=[],xA=[],_A=Ke,bA=Vt,wA=Math.abs;function SA(t,e,n){for(var i,r=t[0],o=t[1],a=t[2],s=1/0,l=n*n,u=.1,h=.1;h<=.9;h+=.1){vA[0]=_A(r[0],o[0],a[0],h),vA[1]=_A(r[1],o[1],a[1],h),(d=wA(bA(vA,e)-l))<s&&(s=d,i=h)}for(var c=0;c<32;c++){var p=i+u;mA[0]=_A(r[0],o[0],a[0],i),mA[1]=_A(r[1],o[1],a[1],i),xA[0]=_A(r[0],o[0],a[0],p),xA[1]=_A(r[1],o[1],a[1],p);var d=bA(mA,e)-l;if(wA(d)<.01)break;var f=bA(xA,e)-l;u/=2,d<0?f>=0?i+=u:i-=u:f>=0?i-=u:i+=u}return i}function MA(t,e){var n=[],i=Qe,r=[[],[],[]],o=[[],[]],a=[];e/=2,t.eachEdge((function(t,s){var l=t.getLayout(),u=t.getVisual("fromSymbol"),h=t.getVisual("toSymbol");l.__original||(l.__original=[Mt(l[0]),Mt(l[1])],l[2]&&l.__original.push(Mt(l[2])));var c=l.__original;if(null!=l[2]){if(St(r[0],c[0]),St(r[1],c[2]),St(r[2],c[1]),u&&"none"!==u){var p=jD(t.node1),d=SA(r,c[0],p*e);i(r[0][0],r[1][0],r[2][0],d,n),r[0][0]=n[3],r[1][0]=n[4],i(r[0][1],r[1][1],r[2][1],d,n),r[0][1]=n[3],r[1][1]=n[4]}if(h&&"none"!==h){p=jD(t.node2),d=SA(r,c[1],p*e);i(r[0][0],r[1][0],r[2][0],d,n),r[1][0]=n[1],r[2][0]=n[2],i(r[0][1],r[1][1],r[2][1],d,n),r[1][1]=n[1],r[2][1]=n[2]}St(l[0],r[0]),St(l[1],r[2]),St(l[2],r[1])}else{if(St(o[0],c[0]),St(o[1],c[1]),Dt(a,o[1],o[0]),Rt(a,a),u&&"none"!==u){p=jD(t.node1);Ct(o[0],o[0],a,p*e)}if(h&&"none"!==h){p=jD(t.node2);Ct(o[1],o[1],a,-p*e)}St(l[0],o[0]),St(l[1],o[1])}}))}function IA(t){return"view"===t.type}var TA=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(t,e){var n=new Zw,i=new dA,r=this.group;this._controller=new DI(e.getZr()),this._controllerHost={target:r},r.add(n.group),r.add(i.group),this._symbolDraw=n,this._lineDraw=i,this._firstRender=!0},e.prototype.render=function(t,e,n){var i=this,r=t.coordinateSystem;this._model=t;var o=this._symbolDraw,a=this._lineDraw,s=this.group;if(IA(r)){var l={x:r.x,y:r.y,scaleX:r.scaleX,scaleY:r.scaleY};this._firstRender?s.attr(l):ih(s,l,t)}MA(t.getGraph(),ZD(t));var u=t.getData();o.updateData(u);var h=t.getEdgeData();a.updateData(h),this._updateNodeAndLinkScale(),this._updateController(t,e,n),clearTimeout(this._layoutTimeout);var c=t.forceLayout,p=t.get(["force","layoutAnimation"]);c&&this._startForceLayoutIteration(c,p),u.graph.eachNode((function(t){var e=t.dataIndex,n=t.getGraphicEl(),r=t.getModel();if(n){n.off("drag").off("dragend");var o=r.get("draggable");o&&n.on("drag",(function(){c&&(c.warmUp(),!i._layouting&&i._startForceLayoutIteration(c,p),c.setFixed(e),u.setItemLayout(e,[n.x,n.y]))})).on("dragend",(function(){c&&c.setUnfixed(e)})),n.setDraggable(o&&!!c),"adjacency"===r.get(["emphasis","focus"])&&(Ws(n).focus=t.getAdjacentDataIndices())}})),u.graph.eachEdge((function(t){var e=t.getGraphicEl(),n=t.getModel().get(["emphasis","focus"]);e&&"adjacency"===n&&(Ws(e).focus={edge:[t.dataIndex],node:[t.node1.dataIndex,t.node2.dataIndex]})}));var d="circular"===t.get("layout")&&t.get(["circular","rotateLabel"]),f=u.getLayout("cx"),g=u.getLayout("cy");u.eachItemGraphicEl((function(t,e){var n=u.getItemModel(e).get(["label","rotate"])||0,i=t.getSymbolPath();if(d){var r=u.getItemLayout(e),o=Math.atan2(r[1]-g,r[0]-f);o<0&&(o=2*Math.PI+o);var a=r[0]<f;a&&(o-=Math.PI);var s=a?"left":"right";i.setTextConfig({rotation:-o,position:s,origin:"center"});var l=i.ensureState("emphasis");A(l.textConfig||(l.textConfig={}),{position:s})}else i.setTextConfig({rotation:n*=Math.PI/180})})),this._firstRender=!1},e.prototype.dispose=function(){this._controller&&this._controller.dispose(),this._controllerHost=null},e.prototype._startForceLayoutIteration=function(t,e){var n=this;!function i(){t.step((function(t){n.updateLayout(n._model),(n._layouting=!t)&&(e?n._layoutTimeout=setTimeout(i,16):i())}))}()},e.prototype._updateController=function(t,e,n){var i=this,r=this._controller,o=this._controllerHost,a=this.group;r.setPointerChecker((function(e,i,r){var o=a.getBoundingRect();return o.applyTransform(a.transform),o.contain(i,r)&&!EI(e,n,t)})),IA(t.coordinateSystem)?(r.enable(t.get("roam")),o.zoomLimit=t.get("scaleLimit"),o.zoom=t.coordinateSystem.getZoom(),r.off("pan").off("zoom").on("pan",(function(e){PI(o,e.dx,e.dy),n.dispatchAction({seriesId:t.id,type:"graphRoam",dx:e.dx,dy:e.dy})})).on("zoom",(function(e){OI(o,e.scale,e.originX,e.originY),n.dispatchAction({seriesId:t.id,type:"graphRoam",zoom:e.scale,originX:e.originX,originY:e.originY}),i._updateNodeAndLinkScale(),MA(t.getGraph(),ZD(t)),i._lineDraw.updateLayout(),n.updateLabelLayout()}))):r.disable()},e.prototype._updateNodeAndLinkScale=function(){var t=this._model,e=t.getData(),n=ZD(t);e.eachItemGraphicEl((function(t,e){t&&t.setSymbolScale(n)}))},e.prototype.updateLayout=function(t){MA(t.getGraph(),ZD(t)),this._symbolDraw.updateLayout(),this._lineDraw.updateLayout()},e.prototype.remove=function(t,e){this._symbolDraw&&this._symbolDraw.remove(),this._lineDraw&&this._lineDraw.remove()},e.type="graph",e}(mg);function CA(t){return"_EC_"+t}var DA=function(){function t(t){this.type="graph",this.nodes=[],this.edges=[],this._nodesMap={},this._edgesMap={},this._directed=t||!1}return t.prototype.isDirected=function(){return this._directed},t.prototype.addNode=function(t,e){t=null==t?""+e:""+t;var n=this._nodesMap;if(!n[CA(t)]){var i=new AA(t,e);return i.hostGraph=this,this.nodes.push(i),n[CA(t)]=i,i}},t.prototype.getNodeByIndex=function(t){var e=this.data.getRawIndex(t);return this.nodes[e]},t.prototype.getNodeById=function(t){return this._nodesMap[CA(t)]},t.prototype.addEdge=function(t,e,n){var i=this._nodesMap,r=this._edgesMap;if(j(t)&&(t=this.nodes[t]),j(e)&&(e=this.nodes[e]),t instanceof AA||(t=i[CA(t)]),e instanceof AA||(e=i[CA(e)]),t&&e){var o=t.id+"-"+e.id,a=new kA(t,e,n);return a.hostGraph=this,this._directed&&(t.outEdges.push(a),e.inEdges.push(a)),t.edges.push(a),t!==e&&e.edges.push(a),this.edges.push(a),r[o]=a,a}},t.prototype.getEdgeByIndex=function(t){var e=this.edgeData.getRawIndex(t);return this.edges[e]},t.prototype.getEdge=function(t,e){t instanceof AA&&(t=t.id),e instanceof AA&&(e=e.id);var n=this._edgesMap;return this._directed?n[t+"-"+e]:n[t+"-"+e]||n[e+"-"+t]},t.prototype.eachNode=function(t,e){for(var n=this.nodes,i=n.length,r=0;r<i;r++)n[r].dataIndex>=0&&t.call(e,n[r],r)},t.prototype.eachEdge=function(t,e){for(var n=this.edges,i=n.length,r=0;r<i;r++)n[r].dataIndex>=0&&n[r].node1.dataIndex>=0&&n[r].node2.dataIndex>=0&&t.call(e,n[r],r)},t.prototype.breadthFirstTraverse=function(t,e,n,i){if(e instanceof AA||(e=this._nodesMap[CA(e)]),e){for(var r="out"===n?"outEdges":"in"===n?"inEdges":"edges",o=0;o<this.nodes.length;o++)this.nodes[o].__visited=!1;if(!t.call(i,e,null))for(var a=[e];a.length;){var s=a.shift(),l=s[r];for(o=0;o<l.length;o++){var u=l[o],h=u.node1===s?u.node2:u.node1;if(!h.__visited){if(t.call(i,h,s))return;a.push(h),h.__visited=!0}}}}},t.prototype.update=function(){for(var t=this.data,e=this.edgeData,n=this.nodes,i=this.edges,r=0,o=n.length;r<o;r++)n[r].dataIndex=-1;for(r=0,o=t.count();r<o;r++)n[t.getRawIndex(r)].dataIndex=r;e.filterSelf((function(t){var n=i[e.getRawIndex(t)];return n.node1.dataIndex>=0&&n.node2.dataIndex>=0}));for(r=0,o=i.length;r<o;r++)i[r].dataIndex=-1;for(r=0,o=e.count();r<o;r++)i[e.getRawIndex(r)].dataIndex=r},t.prototype.clone=function(){for(var e=new t(this._directed),n=this.nodes,i=this.edges,r=0;r<n.length;r++)e.addNode(n[r].id,n[r].dataIndex);for(r=0;r<i.length;r++){var o=i[r];e.addEdge(o.node1.id,o.node2.id,o.dataIndex)}return e},t}(),AA=function(){function t(t,e){this.inEdges=[],this.outEdges=[],this.edges=[],this.dataIndex=-1,this.id=null==t?"":t,this.dataIndex=null==e?-1:e}return t.prototype.degree=function(){return this.edges.length},t.prototype.inDegree=function(){return this.inEdges.length},t.prototype.outDegree=function(){return this.outEdges.length},t.prototype.getModel=function(t){if(!(this.dataIndex<0))return this.hostGraph.data.getItemModel(this.dataIndex).getModel(t)},t.prototype.getAdjacentDataIndices=function(){for(var t={edge:[],node:[]},e=0;e<this.edges.length;e++){var n=this.edges[e];n.dataIndex<0||(t.edge.push(n.dataIndex),t.node.push(n.node1.dataIndex,n.node2.dataIndex))}return t},t}(),kA=function(){function t(t,e,n){this.dataIndex=-1,this.node1=t,this.node2=e,this.dataIndex=null==n?-1:n}return t.prototype.getModel=function(t){if(!(this.dataIndex<0))return this.hostGraph.edgeData.getItemModel(this.dataIndex).getModel(t)},t.prototype.getAdjacentDataIndices=function(){return{edge:[this.dataIndex],node:[this.node1.dataIndex,this.node2.dataIndex]}},t}();function LA(t,e){return{getValue:function(n){var i=this[t][e];return i.getStore().get(i.getDimensionIndex(n||"value"),this.dataIndex)},setVisual:function(n,i){this.dataIndex>=0&&this[t][e].setItemVisual(this.dataIndex,n,i)},getVisual:function(n){return this[t][e].getItemVisual(this.dataIndex,n)},setLayout:function(n,i){this.dataIndex>=0&&this[t][e].setItemLayout(this.dataIndex,n,i)},getLayout:function(){return this[t][e].getItemLayout(this.dataIndex)},getGraphicEl:function(){return this[t][e].getItemGraphicEl(this.dataIndex)},getRawIndex:function(){return this[t][e].getRawIndex(this.dataIndex)}}}function PA(t,e,n,i,r){for(var o=new DA(i),a=0;a<t.length;a++)o.addNode(it(t[a].id,t[a].name,a),a);var s=[],l=[],u=0;for(a=0;a<e.length;a++){var h=e[a],c=h.source,p=h.target;o.addEdge(c,p,u)&&(l.push(h),s.push(it(xo(h.id,null),c+" > "+p)),u++)}var d,f=n.get("coordinateSystem");if("cartesian2d"===f||"polar"===f)d=nx(t,n);else{var g=ud.get(f),y=g&&g.dimensions||[];P(y,"value")<0&&y.concat(["value"]);var v=jm(t,{coordDimensions:y,encodeDefine:n.getEncode()}).dimensions;(d=new Zm(v,n)).initData(t)}var m=new Zm(["value"],n);return m.initData(l,s),r&&r(d,m),mC({mainData:d,struct:o,structAttr:"graph",datas:{node:d,edge:m},datasAttr:{node:"data",edge:"edgeData"}}),o.update(),o}R(AA,LA("hostGraph","data")),R(kA,LA("hostGraph","edgeData"));var OA=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.hasSymbolVisual=!0,n}return n(e,t),e.prototype.init=function(e){t.prototype.init.apply(this,arguments);var n=this;function i(){return n._categoriesData}this.legendVisualProvider=new lM(i,i),this.fillDataTextStyle(e.edges||e.links),this._updateCategoriesData()},e.prototype.mergeOption=function(e){t.prototype.mergeOption.apply(this,arguments),this.fillDataTextStyle(e.edges||e.links),this._updateCategoriesData()},e.prototype.mergeDefaultAndTheme=function(e){t.prototype.mergeDefaultAndTheme.apply(this,arguments),co(e,"edgeLabel",["show"])},e.prototype.getInitialData=function(t,e){var n,i=t.edges||t.links||[],r=t.data||t.nodes||[],o=this;if(r&&i){VD(n=this)&&(n.__curvenessList=[],n.__edgeMap={},BD(n));var a=PA(r,i,this,!0,(function(t,e){t.wrapMethod("getItemModel",(function(t){var e=o._categoriesModels[t.getShallow("category")];return e&&(e.parentModel=t.parentModel,t.parentModel=e),t}));var n=pc.prototype.getModel;function i(t,e){var i=n.call(this,t,e);return i.resolveParentPath=r,i}function r(t){if(t&&("label"===t[0]||"label"===t[1])){var e=t.slice();return"label"===t[0]?e[0]="edgeLabel":"label"===t[1]&&(e[1]="edgeLabel"),e}return t}e.wrapMethod("getItemModel",(function(t){return t.resolveParentPath=r,t.getModel=i,t}))}));return E(a.edges,(function(t){!function(t,e,n,i){if(VD(n)){var r=FD(t,e,n),o=n.__edgeMap,a=o[GD(r)];o[r]&&!a?o[r].isForward=!0:a&&o[r]&&(a.isForward=!0,o[r].isForward=!1),o[r]=o[r]||[],o[r].push(i)}}(t.node1,t.node2,this,t.dataIndex)}),this),a.data}},e.prototype.getGraph=function(){return this.getData().graph},e.prototype.getEdgeData=function(){return this.getGraph().edgeData},e.prototype.getCategoriesData=function(){return this._categoriesData},e.prototype.formatTooltip=function(t,e,n){if("edge"===n){var i=this.getData(),r=this.getDataParams(t,n),o=i.graph.getEdgeByIndex(t),a=i.getName(o.node1.dataIndex),s=i.getName(o.node2.dataIndex),l=[];return null!=a&&l.push(a),null!=s&&l.push(s),Uf("nameValue",{name:l.join(" > "),value:r.value,noValue:null==r.value})}return ig({series:this,dataIndex:t,multipleSeries:e})},e.prototype._updateCategoriesData=function(){var t=z(this.option.categories||[],(function(t){return null!=t.value?t:A({value:0},t)})),e=new Zm(["value"],this);e.initData(t),this._categoriesData=e,this._categoriesModels=e.mapArray((function(t){return e.getItemModel(t)}))},e.prototype.setZoom=function(t){this.option.zoom=t},e.prototype.setCenter=function(t){this.option.center=t},e.prototype.isAnimationEnabled=function(){return t.prototype.isAnimationEnabled.call(this)&&!("force"===this.get("layout")&&this.get(["force","layoutAnimation"]))},e.type="series.graph",e.dependencies=["grid","polar","geo","singleAxis","calendar"],e.defaultOption={z:2,coordinateSystem:"view",legendHoverLink:!0,layout:null,circular:{rotateLabel:!1},force:{initLayout:null,repulsion:[0,50],gravity:.1,friction:.6,edgeLength:30,layoutAnimation:!0},left:"center",top:"center",symbol:"circle",symbolSize:10,edgeSymbol:["none","none"],edgeSymbolSize:10,edgeLabel:{position:"middle",distance:5},draggable:!1,roam:!1,center:null,zoom:1,nodeScaleRatio:.6,label:{show:!1,formatter:"{b}"},itemStyle:{},lineStyle:{color:"#aaa",width:1,opacity:.5},emphasis:{scale:!0,label:{show:!0}},select:{itemStyle:{borderColor:"#212121"}}},e}(ag),RA={type:"graphRoam",event:"graphRoam",update:"none"};var NA=function(){this.angle=0,this.width=10,this.r=10,this.x=0,this.y=0},EA=function(t){function e(e){var n=t.call(this,e)||this;return n.type="pointer",n}return n(e,t),e.prototype.getDefaultShape=function(){return new NA},e.prototype.buildPath=function(t,e){var n=Math.cos,i=Math.sin,r=e.r,o=e.width,a=e.angle,s=e.x-n(a)*o*(o>=r/3?1:2),l=e.y-i(a)*o*(o>=r/3?1:2);a=e.angle-Math.PI/2,t.moveTo(s,l),t.lineTo(e.x+n(a)*o,e.y+i(a)*o),t.lineTo(e.x+n(e.angle)*r,e.y+i(e.angle)*r),t.lineTo(e.x-n(a)*o,e.y-i(a)*o),t.lineTo(s,l)},e}(fs);function zA(t,e){var n=null==t?"":t+"";return e&&(X(e)?n=e.replace("{value}",n):U(e)&&(n=e(t))),n}var VA=2*Math.PI,BA=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){this.group.removeAll();var i=t.get(["axisLine","lineStyle","color"]),r=function(t,e){var n=t.get("center"),i=e.getWidth(),r=e.getHeight(),o=Math.min(i,r);return{cx:Er(n[0],e.getWidth()),cy:Er(n[1],e.getHeight()),r:Er(t.get("radius"),o/2)}}(t,n);this._renderMain(t,e,n,i,r),this._data=t.getData()},e.prototype.dispose=function(){},e.prototype._renderMain=function(t,e,n,i,r){for(var o=this.group,a=t.get("clockwise"),s=-t.get("startAngle")/180*Math.PI,l=-t.get("endAngle")/180*Math.PI,u=t.getModel("axisLine"),h=u.get("roundCap")?TS:Tu,c=u.get("show"),p=u.getModel("lineStyle"),d=p.get("width"),f=(l-s)%VA||l===s?(l-s)%VA:VA,g=s,y=0;c&&y<i.length;y++){var v=new h({shape:{startAngle:g,endAngle:l=s+f*Math.min(Math.max(i[y][0],0),1),cx:r.cx,cy:r.cy,clockwise:a,r0:r.r-d,r:r.r},silent:!0});v.setStyle({fill:i[y][1]}),v.setStyle(p.getLineStyle(["color","width"])),o.add(v),g=l}var m=function(t){if(t<=0)return i[0][1];var e;for(e=0;e<i.length;e++)if(i[e][0]>=t&&(0===e?0:i[e-1][0])<t)return i[e][1];return i[e-1][1]};if(!a){var x=s;s=l,l=x}this._renderTicks(t,e,n,m,r,s,l,a,d),this._renderTitleAndDetail(t,e,n,m,r),this._renderAnchor(t,r),this._renderPointer(t,e,n,m,r,s,l,a,d)},e.prototype._renderTicks=function(t,e,n,i,r,o,a,s,l){for(var u,h,c=this.group,p=r.cx,d=r.cy,f=r.r,g=+t.get("min"),y=+t.get("max"),v=t.getModel("splitLine"),m=t.getModel("axisTick"),x=t.getModel("axisLabel"),_=t.get("splitNumber"),b=m.get("splitNumber"),w=Er(v.get("length"),f),S=Er(m.get("length"),f),M=o,I=(a-o)/_,T=I/b,C=v.getModel("lineStyle").getLineStyle(),D=m.getModel("lineStyle").getLineStyle(),A=v.get("distance"),k=0;k<=_;k++){if(u=Math.cos(M),h=Math.sin(M),v.get("show")){var L=new Eu({shape:{x1:u*(f-(P=A?A+l:l))+p,y1:h*(f-P)+d,x2:u*(f-w-P)+p,y2:h*(f-w-P)+d},style:C,silent:!0});"auto"===C.stroke&&L.setStyle({stroke:i(k/_)}),c.add(L)}if(x.get("show")){var P=x.get("distance")+A,O=zA(zr(k/_*(y-g)+g),x.get("formatter")),R=i(k/_);c.add(new As({style:Yh(x,{text:O,x:u*(f-w-P)+p,y:h*(f-w-P)+d,verticalAlign:h<-.8?"top":h>.8?"bottom":"middle",align:u<-.4?"left":u>.4?"right":"center"},{inheritColor:R}),silent:!0}))}if(m.get("show")&&k!==_){P=(P=m.get("distance"))?P+l:l;for(var N=0;N<=b;N++){u=Math.cos(M),h=Math.sin(M);var E=new Eu({shape:{x1:u*(f-P)+p,y1:h*(f-P)+d,x2:u*(f-S-P)+p,y2:h*(f-S-P)+d},silent:!0,style:D});"auto"===D.stroke&&E.setStyle({stroke:i((k+N/b)/_)}),c.add(E),M+=T}M-=T}else M+=I}},e.prototype._renderPointer=function(t,e,n,i,r,o,a,s,l){var u=this.group,h=this._data,c=this._progressEls,p=[],d=t.get(["pointer","show"]),f=t.getModel("progress"),g=f.get("show"),y=t.getData(),v=y.mapDimension("value"),m=+t.get("min"),x=+t.get("max"),_=[m,x],b=[o,a];function w(e,n){var i,o=y.getItemModel(e).getModel("pointer"),a=Er(o.get("width"),r.r),s=Er(o.get("length"),r.r),l=t.get(["pointer","icon"]),u=o.get("offsetCenter"),h=Er(u[0],r.r),c=Er(u[1],r.r),p=o.get("keepAspect");return(i=l?ky(l,h-a/2,c-s,a,s,null,p):new EA({shape:{angle:-Math.PI/2,width:a,r:s,x:h,y:c}})).rotation=-(n+Math.PI/2),i.x=r.cx,i.y=r.cy,i}function S(t,e){var n=f.get("roundCap")?TS:Tu,i=f.get("overlap"),a=i?f.get("width"):l/y.count(),u=i?r.r-a:r.r-(t+1)*a,h=i?r.r:r.r-t*a,c=new n({shape:{startAngle:o,endAngle:e,cx:r.cx,cy:r.cy,clockwise:s,r0:u,r:h}});return i&&(c.z2=x-y.get(v,t)%x),c}(g||d)&&(y.diff(h).add((function(e){var n=y.get(v,e);if(d){var i=w(e,o);rh(i,{rotation:-((isNaN(+n)?b[0]:Nr(n,_,b,!0))+Math.PI/2)},t),u.add(i),y.setItemGraphicEl(e,i)}if(g){var r=S(e,o),a=f.get("clip");rh(r,{shape:{endAngle:Nr(n,_,b,a)}},t),u.add(r),Hs(t.seriesIndex,y.dataType,e,r),p[e]=r}})).update((function(e,n){var i=y.get(v,e);if(d){var r=h.getItemGraphicEl(n),a=r?r.rotation:o,s=w(e,a);s.rotation=a,ih(s,{rotation:-((isNaN(+i)?b[0]:Nr(i,_,b,!0))+Math.PI/2)},t),u.add(s),y.setItemGraphicEl(e,s)}if(g){var l=c[n],m=S(e,l?l.shape.endAngle:o),x=f.get("clip");ih(m,{shape:{endAngle:Nr(i,_,b,x)}},t),u.add(m),Hs(t.seriesIndex,y.dataType,e,m),p[e]=m}})).execute(),y.each((function(t){var e=y.getItemModel(t),n=e.getModel("emphasis"),r=n.get("focus"),o=n.get("blurScope"),a=n.get("disabled");if(d){var s=y.getItemGraphicEl(t),l=y.getItemVisual(t,"style"),u=l.fill;if(s instanceof xs){var h=s.style;s.useStyle(A({image:h.image,x:h.x,y:h.y,width:h.width,height:h.height},l))}else s.useStyle(l),"pointer"!==s.type&&s.setColor(u);s.setStyle(e.getModel(["pointer","itemStyle"]).getItemStyle()),"auto"===s.style.fill&&s.setStyle("fill",i(Nr(y.get(v,t),_,[0,1],!0))),s.z2EmphasisLift=0,zl(s,e),Ol(s,r,o,a)}if(g){var c=p[t];c.useStyle(y.getItemVisual(t,"style")),c.setStyle(e.getModel(["progress","itemStyle"]).getItemStyle()),c.z2EmphasisLift=0,zl(c,e),Ol(c,r,o,a)}})),this._progressEls=p)},e.prototype._renderAnchor=function(t,e){var n=t.getModel("anchor");if(n.get("show")){var i=n.get("size"),r=n.get("icon"),o=n.get("offsetCenter"),a=n.get("keepAspect"),s=ky(r,e.cx-i/2+Er(o[0],e.r),e.cy-i/2+Er(o[1],e.r),i,i,null,a);s.z2=n.get("showAbove")?1:0,s.setStyle(n.getModel("itemStyle").getItemStyle()),this.group.add(s)}},e.prototype._renderTitleAndDetail=function(t,e,n,i,r){var o=this,a=t.getData(),s=a.mapDimension("value"),l=+t.get("min"),u=+t.get("max"),h=new Cr,c=[],p=[],d=t.isAnimationEnabled(),f=t.get(["pointer","showAbove"]);a.diff(this._data).add((function(t){c[t]=new As({silent:!0}),p[t]=new As({silent:!0})})).update((function(t,e){c[t]=o._titleEls[e],p[t]=o._detailEls[e]})).execute(),a.each((function(e){var n=a.getItemModel(e),o=a.get(s,e),g=new Cr,y=i(Nr(o,[l,u],[0,1],!0)),v=n.getModel("title");if(v.get("show")){var m=v.get("offsetCenter"),x=r.cx+Er(m[0],r.r),_=r.cy+Er(m[1],r.r);(D=c[e]).attr({z2:f?0:2,style:Yh(v,{x:x,y:_,text:a.getName(e),align:"center",verticalAlign:"middle"},{inheritColor:y})}),g.add(D)}var b=n.getModel("detail");if(b.get("show")){var w=b.get("offsetCenter"),S=r.cx+Er(w[0],r.r),M=r.cy+Er(w[1],r.r),I=Er(b.get("width"),r.r),T=Er(b.get("height"),r.r),C=t.get(["progress","show"])?a.getItemVisual(e,"style").fill:y,D=p[e],A=b.get("formatter");D.attr({z2:f?0:2,style:Yh(b,{x:S,y:M,text:zA(o,A),width:isNaN(I)?null:I,height:isNaN(T)?null:T,align:"center",verticalAlign:"middle"},{inheritColor:C})}),Jh(D,{normal:b},o,(function(t){return zA(t,A)})),d&&Qh(D,e,a,t,{getFormattedLabel:function(t,e,n,i,r,a){return zA(a?a.interpolatedValue:o,A)}}),g.add(D)}h.add(g)})),this.group.add(h),this._titleEls=c,this._detailEls=p},e.type="gauge",e}(mg),FA=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.visualStyleAccessPath="itemStyle",n}return n(e,t),e.prototype.getInitialData=function(t,e){return sM(this,["value"])},e.type="series.gauge",e.defaultOption={z:2,colorBy:"data",center:["50%","50%"],legendHoverLink:!0,radius:"75%",startAngle:225,endAngle:-45,clockwise:!0,min:0,max:100,splitNumber:10,axisLine:{show:!0,roundCap:!1,lineStyle:{color:[[1,"#E6EBF8"]],width:10}},progress:{show:!1,overlap:!0,width:10,roundCap:!1,clip:!0},splitLine:{show:!0,length:10,distance:10,lineStyle:{color:"#63677A",width:3,type:"solid"}},axisTick:{show:!0,splitNumber:5,length:6,distance:10,lineStyle:{color:"#63677A",width:1,type:"solid"}},axisLabel:{show:!0,distance:15,color:"#464646",fontSize:12},pointer:{icon:null,offsetCenter:[0,0],show:!0,showAbove:!0,length:"60%",width:6,keepAspect:!1},anchor:{show:!1,showAbove:!1,size:6,icon:"circle",offsetCenter:[0,0],keepAspect:!1,itemStyle:{color:"#fff",borderWidth:0,borderColor:"#5470c6"}},title:{show:!0,offsetCenter:[0,"20%"],color:"#464646",fontSize:16,valueAnimation:!1},detail:{show:!0,backgroundColor:"rgba(0,0,0,0)",borderWidth:0,borderColor:"#ccc",width:100,height:null,padding:[5,10],offsetCenter:[0,"40%"],color:"#464646",fontSize:30,fontWeight:"bold",lineHeight:30,valueAnimation:!1}},e}(ag);var GA=["itemStyle","opacity"],WA=function(t){function e(e,n){var i=t.call(this)||this,r=i,o=new Ou,a=new As;return r.setTextContent(a),i.setTextGuideLine(o),i.updateData(e,n,!0),i}return n(e,t),e.prototype.updateData=function(t,e,n){var i=this,r=t.hostModel,o=t.getItemModel(e),a=t.getItemLayout(e),s=o.getModel("emphasis"),l=o.get(GA);l=null==l?1:l,n||uh(i),i.useStyle(t.getItemVisual(e,"style")),i.style.lineJoin="round",n?(i.setShape({points:a.points}),i.style.opacity=0,rh(i,{style:{opacity:l}},r,e)):ih(i,{style:{opacity:l},shape:{points:a.points}},r,e),zl(i,o),this._updateLabel(t,e),Ol(this,s.get("focus"),s.get("blurScope"),s.get("disabled"))},e.prototype._updateLabel=function(t,e){var n=this,i=this.getTextGuideLine(),r=n.getTextContent(),o=t.hostModel,a=t.getItemModel(e),s=t.getItemLayout(e).label,l=t.getItemVisual(e,"style"),u=l.fill;Wh(r,Hh(a),{labelFetcher:t.hostModel,labelDataIndex:e,defaultOpacity:l.opacity,defaultText:t.getName(e)},{normal:{align:s.textAlign,verticalAlign:s.verticalAlign}}),n.setTextConfig({local:!0,inside:!!s.inside,insideStroke:u,outsideFill:u});var h=s.linePoints;i.setShape({points:h}),n.textGuideLineConfig={anchor:h?new Ji(h[0][0],h[0][1]):null},ih(r,{style:{x:s.x,y:s.y}},o,e),r.attr({rotation:s.rotation,originX:s.x,originY:s.y,z2:10}),cb(n,pb(a),{stroke:u})},e}(Lu),HA=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.ignoreLabelLineUpdate=!0,n}return n(e,t),e.prototype.render=function(t,e,n){var i=t.getData(),r=this._data,o=this.group;i.diff(r).add((function(t){var e=new WA(i,t);i.setItemGraphicEl(t,e),o.add(e)})).update((function(t,e){var n=r.getItemGraphicEl(e);n.updateData(i,t),o.add(n),i.setItemGraphicEl(t,n)})).remove((function(e){lh(r.getItemGraphicEl(e),t,e)})).execute(),this._data=i},e.prototype.remove=function(){this.group.removeAll(),this._data=null},e.prototype.dispose=function(){},e.type="funnel",e}(mg),YA=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(e){t.prototype.init.apply(this,arguments),this.legendVisualProvider=new lM(W(this.getData,this),W(this.getRawData,this)),this._defaultLabelLine(e)},e.prototype.getInitialData=function(t,e){return sM(this,{coordDimensions:["value"],encodeDefaulter:H(Hp,this)})},e.prototype._defaultLabelLine=function(t){co(t,"labelLine",["show"]);var e=t.labelLine,n=t.emphasis.labelLine;e.show=e.show&&t.label.show,n.show=n.show&&t.emphasis.label.show},e.prototype.getDataParams=function(e){var n=this.getData(),i=t.prototype.getDataParams.call(this,e),r=n.mapDimension("value"),o=n.getSum(r);return i.percent=o?+(n.get(r,e)/o*100).toFixed(2):0,i.$vars.push("percent"),i},e.type="series.funnel",e.defaultOption={z:2,legendHoverLink:!0,colorBy:"data",left:80,top:60,right:80,bottom:60,minSize:"0%",maxSize:"100%",sort:"descending",orient:"vertical",gap:0,funnelAlign:"center",label:{show:!0,position:"outer"},labelLine:{show:!0,length:20,lineStyle:{width:1}},itemStyle:{borderColor:"#fff",borderWidth:1},emphasis:{label:{show:!0}},select:{itemStyle:{borderColor:"#212121"}}},e}(ag);function UA(t,e){t.eachSeriesByType("funnel",(function(t){var n=t.getData(),i=n.mapDimension("value"),r=t.get("sort"),o=function(t,e){return mp(t.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()})}(t,e),a=t.get("orient"),s=o.width,l=o.height,u=function(t,e){for(var n=t.mapDimension("value"),i=t.mapArray(n,(function(t){return t})),r=[],o="ascending"===e,a=0,s=t.count();a<s;a++)r[a]=a;return U(e)?r.sort(e):"none"!==e&&r.sort((function(t,e){return o?i[t]-i[e]:i[e]-i[t]})),r}(n,r),h=o.x,c=o.y,p="horizontal"===a?[Er(t.get("minSize"),l),Er(t.get("maxSize"),l)]:[Er(t.get("minSize"),s),Er(t.get("maxSize"),s)],d=n.getDataExtent(i),f=t.get("min"),g=t.get("max");null==f&&(f=Math.min(d[0],0)),null==g&&(g=d[1]);var y=t.get("funnelAlign"),v=t.get("gap"),m=(("horizontal"===a?s:l)-v*(n.count()-1))/n.count(),x=function(t,e){if("horizontal"===a){var r=Nr(n.get(i,t)||0,[f,g],p,!0),o=void 0;switch(y){case"top":o=c;break;case"center":o=c+(l-r)/2;break;case"bottom":o=c+(l-r)}return[[e,o],[e,o+r]]}var u,d=Nr(n.get(i,t)||0,[f,g],p,!0);switch(y){case"left":u=h;break;case"center":u=h+(s-d)/2;break;case"right":u=h+s-d}return[[u,e],[u+d,e]]};"ascending"===r&&(m=-m,v=-v,"horizontal"===a?h+=s:c+=l,u=u.reverse());for(var _=0;_<u.length;_++){var b=u[_],w=u[_+1],S=n.getItemModel(b);if("horizontal"===a){var M=S.get(["itemStyle","width"]);null==M?M=m:(M=Er(M,s),"ascending"===r&&(M=-M));var I=x(b,h),T=x(w,h+M);h+=M+v,n.setItemLayout(b,{points:I.concat(T.slice().reverse())})}else{var C=S.get(["itemStyle","height"]);null==C?C=m:(C=Er(C,l),"ascending"===r&&(C=-C));I=x(b,c),T=x(w,c+C);c+=C+v,n.setItemLayout(b,{points:I.concat(T.slice().reverse())})}}!function(t){var e=t.hostModel.get("orient");t.each((function(n){var i,r,o,a,s=t.getItemModel(n),l=s.getModel("label").get("position"),u=s.getModel("labelLine"),h=t.getItemLayout(n),c=h.points,p="inner"===l||"inside"===l||"center"===l||"insideLeft"===l||"insideRight"===l;if(p)"insideLeft"===l?(r=(c[0][0]+c[3][0])/2+5,o=(c[0][1]+c[3][1])/2,i="left"):"insideRight"===l?(r=(c[1][0]+c[2][0])/2-5,o=(c[1][1]+c[2][1])/2,i="right"):(r=(c[0][0]+c[1][0]+c[2][0]+c[3][0])/4,o=(c[0][1]+c[1][1]+c[2][1]+c[3][1])/4,i="center"),a=[[r,o],[r,o]];else{var d=void 0,f=void 0,g=void 0,y=void 0,v=u.get("length");"left"===l?(d=(c[3][0]+c[0][0])/2,f=(c[3][1]+c[0][1])/2,r=(g=d-v)-5,i="right"):"right"===l?(d=(c[1][0]+c[2][0])/2,f=(c[1][1]+c[2][1])/2,r=(g=d+v)+5,i="left"):"top"===l?(d=(c[3][0]+c[0][0])/2,o=(y=(f=(c[3][1]+c[0][1])/2)-v)-5,i="center"):"bottom"===l?(d=(c[1][0]+c[2][0])/2,o=(y=(f=(c[1][1]+c[2][1])/2)+v)+5,i="center"):"rightTop"===l?(d="horizontal"===e?c[3][0]:c[1][0],f="horizontal"===e?c[3][1]:c[1][1],"horizontal"===e?(o=(y=f-v)-5,i="center"):(r=(g=d+v)+5,i="top")):"rightBottom"===l?(d=c[2][0],f=c[2][1],"horizontal"===e?(o=(y=f+v)+5,i="center"):(r=(g=d+v)+5,i="bottom")):"leftTop"===l?(d=c[0][0],f="horizontal"===e?c[0][1]:c[1][1],"horizontal"===e?(o=(y=f-v)-5,i="center"):(r=(g=d-v)-5,i="right")):"leftBottom"===l?(d="horizontal"===e?c[1][0]:c[3][0],f="horizontal"===e?c[1][1]:c[2][1],"horizontal"===e?(o=(y=f+v)+5,i="center"):(r=(g=d-v)-5,i="right")):(d=(c[1][0]+c[2][0])/2,f=(c[1][1]+c[2][1])/2,"horizontal"===e?(o=(y=f+v)+5,i="center"):(r=(g=d+v)+5,i="left")),"horizontal"===e?r=g=d:o=y=f,a=[[d,f],[g,y]]}h.label={linePoints:a,x:r,y:o,verticalAlign:"middle",textAlign:i,inside:p}}))}(n)}))}var XA=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n._dataGroup=new Cr,n._initialized=!1,n}return n(e,t),e.prototype.init=function(){this.group.add(this._dataGroup)},e.prototype.render=function(t,e,n,i){this._progressiveEls=null;var r=this._dataGroup,o=t.getData(),a=this._data,s=t.coordinateSystem,l=s.dimensions,u=qA(t);if(o.diff(a).add((function(t){KA(jA(o,r,t,l,s),o,t,u)})).update((function(e,n){var i=a.getItemGraphicEl(n),r=ZA(o,e,l,s);o.setItemGraphicEl(e,i),ih(i,{shape:{points:r}},t,e),uh(i),KA(i,o,e,u)})).remove((function(t){var e=a.getItemGraphicEl(t);r.remove(e)})).execute(),!this._initialized){this._initialized=!0;var h=function(t,e,n){var i=t.model,r=t.getRect(),o=new Ts({shape:{x:r.x,y:r.y,width:r.width,height:r.height}}),a="horizontal"===i.get("layout")?"width":"height";return o.setShape(a,0),rh(o,{shape:{width:r.width,height:r.height}},e,n),o}(s,t,(function(){setTimeout((function(){r.removeClipPath()}))}));r.setClipPath(h)}this._data=o},e.prototype.incrementalPrepareRender=function(t,e,n){this._initialized=!0,this._data=null,this._dataGroup.removeAll()},e.prototype.incrementalRender=function(t,e,n){for(var i=e.getData(),r=e.coordinateSystem,o=r.dimensions,a=qA(e),s=this._progressiveEls=[],l=t.start;l<t.end;l++){var u=jA(i,this._dataGroup,l,o,r);u.incremental=!0,KA(u,i,l,a),s.push(u)}},e.prototype.remove=function(){this._dataGroup&&this._dataGroup.removeAll(),this._data=null},e.type="parallel",e}(mg);function ZA(t,e,n,i){for(var r,o=[],a=0;a<n.length;a++){var s=n[a],l=t.get(t.mapDimension(s),e);r=l,("category"===i.getAxis(s).type?null==r:null==r||isNaN(r))||o.push(i.dataToPoint(l,s))}return o}function jA(t,e,n,i,r){var o=ZA(t,n,i,r),a=new Ou({shape:{points:o},z2:10});return e.add(a),t.setItemGraphicEl(n,a),a}function qA(t){var e=t.get("smooth",!0);return!0===e&&(e=.3),nt(e=to(e))&&(e=0),{smooth:e}}function KA(t,e,n,i){t.useStyle(e.getItemVisual(n,"style")),t.style.fill=null,t.setShape("smooth",i.smooth);var r=e.getItemModel(n),o=r.getModel("emphasis");zl(t,r,"lineStyle"),Ol(t,o.get("focus"),o.get("blurScope"),o.get("disabled"))}var $A=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.visualStyleAccessPath="lineStyle",n.visualDrawType="stroke",n}return n(e,t),e.prototype.getInitialData=function(t,e){return nx(null,this,{useEncodeDefaulter:W(JA,null,this)})},e.prototype.getRawIndicesByActiveState=function(t){var e=this.coordinateSystem,n=this.getData(),i=[];return e.eachActiveState(n,(function(e,r){t===e&&i.push(n.getRawIndex(r))})),i},e.type="series.parallel",e.dependencies=["parallel"],e.defaultOption={z:2,coordinateSystem:"parallel",parallelIndex:0,label:{show:!1},inactiveOpacity:.05,activeOpacity:1,lineStyle:{width:1,opacity:.45,type:"solid"},emphasis:{label:{show:!1}},progressive:500,smooth:!1,animationEasing:"linear"},e}(ag);function JA(t){var e=t.ecModel.getComponent("parallel",t.get("parallelIndex"));if(e){var n={};return E(e.dimensions,(function(t){var e=+t.replace("dim","");n[t]=e})),n}}var QA=["lineStyle","opacity"],tk={seriesType:"parallel",reset:function(t,e){var n=t.coordinateSystem,i={normal:t.get(["lineStyle","opacity"]),active:t.get("activeOpacity"),inactive:t.get("inactiveOpacity")};return{progress:function(t,e){n.eachActiveState(e,(function(t,n){var r=i[t];if("normal"===t&&e.hasItemOption){var o=e.getItemModel(n).get(QA,!0);null!=o&&(r=o)}e.ensureUniqueItemVisual(n,"style").opacity=r}),t.start,t.end)}}}};function ek(t){!function(t){if(t.parallel)return;var e=!1;E(t.series,(function(t){t&&"parallel"===t.type&&(e=!0)})),e&&(t.parallel=[{}])}(t),function(t){E(ho(t.parallelAxis),(function(e){if(q(e)){var n=e.parallelIndex||0,i=ho(t.parallel)[n];i&&i.parallelAxisDefault&&C(e,i.parallelAxisDefault,!1)}}))}(t)}var nk=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){this._model=t,this._api=n,this._handlers||(this._handlers={},E(ik,(function(t,e){n.getZr().on(e,this._handlers[e]=W(t,this))}),this)),Dg(this,"_throttledDispatchExpand",t.get("axisExpandRate"),"fixRate")},e.prototype.dispose=function(t,e){Ag(this,"_throttledDispatchExpand"),E(this._handlers,(function(t,n){e.getZr().off(n,t)})),this._handlers=null},e.prototype._throttledDispatchExpand=function(t){this._dispatchExpand(t)},e.prototype._dispatchExpand=function(t){t&&this._api.dispatchAction(A({type:"parallelAxisExpand"},t))},e.type="parallel",e}(fg),ik={mousedown:function(t){rk(this,"click")&&(this._mouseDownPoint=[t.offsetX,t.offsetY])},mouseup:function(t){var e=this._mouseDownPoint;if(rk(this,"click")&&e){var n=[t.offsetX,t.offsetY];if(Math.pow(e[0]-n[0],2)+Math.pow(e[1]-n[1],2)>5)return;var i=this._model.coordinateSystem.getSlidedAxisExpandWindow([t.offsetX,t.offsetY]);"none"!==i.behavior&&this._dispatchExpand({axisExpandWindow:i.axisExpandWindow})}this._mouseDownPoint=null},mousemove:function(t){if(!this._mouseDownPoint&&rk(this,"mousemove")){var e=this._model,n=e.coordinateSystem.getSlidedAxisExpandWindow([t.offsetX,t.offsetY]),i=n.behavior;"jump"===i&&this._throttledDispatchExpand.debounceNextCall(e.get("axisExpandDebounce")),this._throttledDispatchExpand("none"===i?null:{axisExpandWindow:n.axisExpandWindow,animation:"jump"===i?null:{duration:0}})}}};function rk(t,e){var n=t._model;return n.get("axisExpandable")&&n.get("axisExpandTriggerOn")===e}var ok=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(){t.prototype.init.apply(this,arguments),this.mergeOption({})},e.prototype.mergeOption=function(t){var e=this.option;t&&C(e,t,!0),this._initDimensions()},e.prototype.contains=function(t,e){var n=t.get("parallelIndex");return null!=n&&e.getComponent("parallel",n)===this},e.prototype.setAxisExpand=function(t){E(["axisExpandable","axisExpandCenter","axisExpandCount","axisExpandWidth","axisExpandWindow"],(function(e){t.hasOwnProperty(e)&&(this.option[e]=t[e])}),this)},e.prototype._initDimensions=function(){var t=this.dimensions=[],e=this.parallelAxisIndex=[];E(B(this.ecModel.queryComponents({mainType:"parallelAxis"}),(function(t){return(t.get("parallelIndex")||0)===this.componentIndex}),this),(function(n){t.push("dim"+n.get("dim")),e.push(n.componentIndex)}))},e.type="parallel",e.dependencies=["parallelAxis"],e.layoutMode="box",e.defaultOption={z:0,left:80,top:60,right:80,bottom:60,layout:"horizontal",axisExpandable:!1,axisExpandCenter:null,axisExpandCount:0,axisExpandWidth:50,axisExpandRate:17,axisExpandDebounce:50,axisExpandSlideTriggerArea:[-.15,.05,.4],axisExpandTriggerOn:"click",parallelAxisDefault:null},e}(Ip),ak=function(t){function e(e,n,i,r,o){var a=t.call(this,e,n,i)||this;return a.type=r||"value",a.axisIndex=o,a}return n(e,t),e.prototype.isHorizontal=function(){return"horizontal"!==this.coordinateSystem.getModel().get("layout")},e}(G_);function sk(t,e,n,i,r,o){t=t||0;var a=n[1]-n[0];if(null!=r&&(r=uk(r,[0,a])),null!=o&&(o=Math.max(o,null!=r?r:0)),"all"===i){var s=Math.abs(e[1]-e[0]);s=uk(s,[0,a]),r=o=uk(s,[r,o]),i=0}e[0]=uk(e[0],n),e[1]=uk(e[1],n);var l=lk(e,i);e[i]+=t;var u,h=r||0,c=n.slice();return l.sign<0?c[0]+=h:c[1]-=h,e[i]=uk(e[i],c),u=lk(e,i),null!=r&&(u.sign!==l.sign||u.span<r)&&(e[1-i]=e[i]+l.sign*r),u=lk(e,i),null!=o&&u.span>o&&(e[1-i]=e[i]+u.sign*o),e}function lk(t,e){var n=t[e]-t[1-e];return{span:Math.abs(n),sign:n>0?-1:n<0?1:e?-1:1}}function uk(t,e){return Math.min(null!=e[1]?e[1]:1/0,Math.max(null!=e[0]?e[0]:-1/0,t))}var hk=E,ck=Math.min,pk=Math.max,dk=Math.floor,fk=Math.ceil,gk=zr,yk=Math.PI,vk=function(){function t(t,e,n){this.type="parallel",this._axesMap=ft(),this._axesLayout={},this.dimensions=t.dimensions,this._model=t,this._init(t,e,n)}return t.prototype._init=function(t,e,n){var i=t.dimensions,r=t.parallelAxisIndex;hk(i,(function(t,n){var i=r[n],o=e.getComponent("parallelAxis",i),a=this._axesMap.set(t,new ak(t,i_(o),[0,0],o.get("type"),i)),s="category"===a.type;a.onBand=s&&o.get("boundaryGap"),a.inverse=o.get("inverse"),o.axis=a,a.model=o,a.coordinateSystem=o.coordinateSystem=this}),this)},t.prototype.update=function(t,e){this._updateAxesFromSeries(this._model,t)},t.prototype.containPoint=function(t){var e=this._makeLayoutInfo(),n=e.axisBase,i=e.layoutBase,r=e.pixelDimIndex,o=t[1-r],a=t[r];return o>=n&&o<=n+e.axisLength&&a>=i&&a<=i+e.layoutLength},t.prototype.getModel=function(){return this._model},t.prototype._updateAxesFromSeries=function(t,e){e.eachSeries((function(n){if(t.contains(n,e)){var i=n.getData();hk(this.dimensions,(function(t){var e=this._axesMap.get(t);e.scale.unionExtentFromData(i,i.mapDimension(t)),n_(e.scale,e.model)}),this)}}),this)},t.prototype.resize=function(t,e){this._rect=mp(t.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()}),this._layoutAxes()},t.prototype.getRect=function(){return this._rect},t.prototype._makeLayoutInfo=function(){var t,e=this._model,n=this._rect,i=["x","y"],r=["width","height"],o=e.get("layout"),a="horizontal"===o?0:1,s=n[r[a]],l=[0,s],u=this.dimensions.length,h=mk(e.get("axisExpandWidth"),l),c=mk(e.get("axisExpandCount")||0,[0,u]),p=e.get("axisExpandable")&&u>3&&u>c&&c>1&&h>0&&s>0,d=e.get("axisExpandWindow");d?(t=mk(d[1]-d[0],l),d[1]=d[0]+t):(t=mk(h*(c-1),l),(d=[h*(e.get("axisExpandCenter")||dk(u/2))-t/2])[1]=d[0]+t);var f=(s-t)/(u-c);f<3&&(f=0);var g=[dk(gk(d[0]/h,1))+1,fk(gk(d[1]/h,1))-1],y=f/h*d[0];return{layout:o,pixelDimIndex:a,layoutBase:n[i[a]],layoutLength:s,axisBase:n[i[1-a]],axisLength:n[r[1-a]],axisExpandable:p,axisExpandWidth:h,axisCollapseWidth:f,axisExpandWindow:d,axisCount:u,winInnerIndices:g,axisExpandWindow0Pos:y}},t.prototype._layoutAxes=function(){var t=this._rect,e=this._axesMap,n=this.dimensions,i=this._makeLayoutInfo(),r=i.layout;e.each((function(t){var e=[0,i.axisLength],n=t.inverse?1:0;t.setExtent(e[n],e[1-n])})),hk(n,(function(e,n){var o=(i.axisExpandable?_k:xk)(n,i),a={horizontal:{x:o.position,y:i.axisLength},vertical:{x:0,y:o.position}},s={horizontal:yk/2,vertical:0},l=[a[r].x+t.x,a[r].y+t.y],u=s[r],h=[1,0,0,1,0,0];zi(h,h,u),Ei(h,h,l),this._axesLayout[e]={position:l,rotation:u,transform:h,axisNameAvailableWidth:o.axisNameAvailableWidth,axisLabelShow:o.axisLabelShow,nameTruncateMaxWidth:o.nameTruncateMaxWidth,tickDirection:1,labelDirection:1}}),this)},t.prototype.getAxis=function(t){return this._axesMap.get(t)},t.prototype.dataToPoint=function(t,e){return this.axisCoordToPoint(this._axesMap.get(e).dataToCoord(t),e)},t.prototype.eachActiveState=function(t,e,n,i){null==n&&(n=0),null==i&&(i=t.count());var r=this._axesMap,o=this.dimensions,a=[],s=[];E(o,(function(e){a.push(t.mapDimension(e)),s.push(r.get(e).model)}));for(var l=this.hasAxisBrushed(),u=n;u<i;u++){var h=void 0;if(l){h="active";for(var c=t.getValues(a,u),p=0,d=o.length;p<d;p++){if("inactive"===s[p].getActiveState(c[p])){h="inactive";break}}}else h="normal";e(h,u)}},t.prototype.hasAxisBrushed=function(){for(var t=this.dimensions,e=this._axesMap,n=!1,i=0,r=t.length;i<r;i++)"normal"!==e.get(t[i]).model.getActiveState()&&(n=!0);return n},t.prototype.axisCoordToPoint=function(t,e){return Ih([t,0],this._axesLayout[e].transform)},t.prototype.getAxisLayout=function(t){return T(this._axesLayout[t])},t.prototype.getSlidedAxisExpandWindow=function(t){var e=this._makeLayoutInfo(),n=e.pixelDimIndex,i=e.axisExpandWindow.slice(),r=i[1]-i[0],o=[0,e.axisExpandWidth*(e.axisCount-1)];if(!this.containPoint(t))return{behavior:"none",axisExpandWindow:i};var a,s=t[n]-e.layoutBase-e.axisExpandWindow0Pos,l="slide",u=e.axisCollapseWidth,h=this._model.get("axisExpandSlideTriggerArea"),c=null!=h[0];if(u)c&&u&&s<r*h[0]?(l="jump",a=s-r*h[2]):c&&u&&s>r*(1-h[0])?(l="jump",a=s-r*(1-h[2])):(a=s-r*h[1])>=0&&(a=s-r*(1-h[1]))<=0&&(a=0),(a*=e.axisExpandWidth/u)?sk(a,i,o,"all"):l="none";else{var p=i[1]-i[0];(i=[pk(0,o[1]*s/p-p/2)])[1]=ck(o[1],i[0]+p),i[0]=i[1]-p}return{axisExpandWindow:i,behavior:l}},t}();function mk(t,e){return ck(pk(t,e[0]),e[1])}function xk(t,e){var n=e.layoutLength/(e.axisCount-1);return{position:n*t,axisNameAvailableWidth:n,axisLabelShow:!0}}function _k(t,e){var n,i,r=e.layoutLength,o=e.axisExpandWidth,a=e.axisCount,s=e.axisCollapseWidth,l=e.winInnerIndices,u=s,h=!1;return t<l[0]?(n=t*s,i=s):t<=l[1]?(n=e.axisExpandWindow0Pos+t*o-e.axisExpandWindow[0],u=o,h=!0):(n=r-(a-1-t)*s,i=s),{position:n,axisNameAvailableWidth:u,axisLabelShow:h,nameTruncateMaxWidth:i}}var bk={create:function(t,e){var n=[];return t.eachComponent("parallel",(function(i,r){var o=new vk(i,t,e);o.name="parallel_"+r,o.resize(i,e),i.coordinateSystem=o,o.model=i,n.push(o)})),t.eachSeries((function(t){if("parallel"===t.get("coordinateSystem")){var e=t.getReferringComponents("parallel",Co).models[0];t.coordinateSystem=e.coordinateSystem}})),n}},wk=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.activeIntervals=[],n}return n(e,t),e.prototype.getAreaSelectStyle=function(){return Wo([["fill","color"],["lineWidth","borderWidth"],["stroke","borderColor"],["width","width"],["opacity","opacity"]])(this.getModel("areaSelectStyle"))},e.prototype.setActiveIntervals=function(t){var e=this.activeIntervals=T(t);if(e)for(var n=e.length-1;n>=0;n--)Vr(e[n])},e.prototype.getActiveState=function(t){var e=this.activeIntervals;if(!e.length)return"normal";if(null==t||isNaN(+t))return"inactive";if(1===e.length){var n=e[0];if(n[0]<=t&&t<=n[1])return"active"}else for(var i=0,r=e.length;i<r;i++)if(e[i][0]<=t&&t<=e[i][1])return"active";return"inactive"},e}(Ip);R(wk,h_);var Sk=!0,Mk=Math.min,Ik=Math.max,Tk=Math.pow,Ck="globalPan",Dk={w:[0,0],e:[0,1],n:[1,0],s:[1,1]},Ak={w:"ew",e:"ew",n:"ns",s:"ns",ne:"nesw",sw:"nesw",nw:"nwse",se:"nwse"},kk={brushStyle:{lineWidth:2,stroke:"rgba(210,219,238,0.3)",fill:"#D2DBEE"},transformable:!0,brushMode:"single",removeOnClick:!1},Lk=0,Pk=function(t){function e(e){var n=t.call(this)||this;return n._track=[],n._covers=[],n._handlers={},n._zr=e,n.group=new Cr,n._uid="brushController_"+Lk++,E(oL,(function(t,e){this._handlers[e]=W(t,this)}),n),n}return n(e,t),e.prototype.enableBrush=function(t){return this._brushType&&this._doDisableBrush(),t.brushType&&this._doEnableBrush(t),this},e.prototype._doEnableBrush=function(t){var e=this._zr;this._enableGlobalPan||function(t,e,n){CI(t)[e]=n}(e,Ck,this._uid),E(this._handlers,(function(t,n){e.on(n,t)})),this._brushType=t.brushType,this._brushOption=C(T(kk),t,!0)},e.prototype._doDisableBrush=function(){var t=this._zr;!function(t,e,n){var i=CI(t);i[e]===n&&(i[e]=null)}(t,Ck,this._uid),E(this._handlers,(function(e,n){t.off(n,e)})),this._brushType=this._brushOption=null},e.prototype.setPanels=function(t){if(t&&t.length){var e=this._panels={};E(t,(function(t){e[t.panelId]=T(t)}))}else this._panels=null;return this},e.prototype.mount=function(t){t=t||{},this._enableGlobalPan=t.enableGlobalPan;var e=this.group;return this._zr.add(e),e.attr({x:t.x||0,y:t.y||0,rotation:t.rotation||0,scaleX:t.scaleX||1,scaleY:t.scaleY||1}),this._transform=e.getLocalTransform(),this},e.prototype.updateCovers=function(t){t=z(t,(function(t){return C(T(kk),t,!0)}));var e=this._covers,n=this._covers=[],i=this,r=this._creatingCover;return new Sm(e,t,(function(t,e){return o(t.__brushOption,e)}),o).add(a).update(a).remove((function(t){e[t]!==r&&i.group.remove(e[t])})).execute(),this;function o(t,e){return(null!=t.id?t.id:"\0-brush-index-"+e)+"-"+t.brushType}function a(o,a){var s=t[o];if(null!=a&&e[a]===r)n[o]=e[a];else{var l=n[o]=null!=a?(e[a].__brushOption=s,e[a]):Rk(i,Ok(i,s));zk(i,l)}}},e.prototype.unmount=function(){return this.enableBrush(!1),Gk(this),this._zr.remove(this.group),this},e.prototype.dispose=function(){this.unmount(),this.off()},e}(Xt);function Ok(t,e){var n=sL[e.brushType].createCover(t,e);return n.__brushOption=e,Ek(n,e),t.group.add(n),n}function Rk(t,e){var n=Vk(e);return n.endCreating&&(n.endCreating(t,e),Ek(e,e.__brushOption)),e}function Nk(t,e){var n=e.__brushOption;Vk(e).updateCoverShape(t,e,n.range,n)}function Ek(t,e){var n=e.z;null==n&&(n=1e4),t.traverse((function(t){t.z=n,t.z2=n}))}function zk(t,e){Vk(e).updateCommon(t,e),Nk(t,e)}function Vk(t){return sL[t.__brushOption.brushType]}function Bk(t,e,n){var i,r=t._panels;if(!r)return Sk;var o=t._transform;return E(r,(function(t){t.isTargetByCursor(e,n,o)&&(i=t)})),i}function Fk(t,e){var n=t._panels;if(!n)return Sk;var i=e.__brushOption.panelId;return null!=i?n[i]:Sk}function Gk(t){var e=t._covers,n=e.length;return E(e,(function(e){t.group.remove(e)}),t),e.length=0,!!n}function Wk(t,e){var n=z(t._covers,(function(t){var e=t.__brushOption,n=T(e.range);return{brushType:e.brushType,panelId:e.panelId,range:n}}));t.trigger("brush",{areas:n,isEnd:!!e.isEnd,removeOnClick:!!e.removeOnClick})}function Hk(t){var e=t.length-1;return e<0&&(e=0),[t[0],t[e]]}function Yk(t,e,n,i){var r=new Cr;return r.add(new Ts({name:"main",style:jk(n),silent:!0,draggable:!0,cursor:"move",drift:H($k,t,e,r,["n","s","w","e"]),ondragend:H(Wk,e,{isEnd:!0})})),E(i,(function(n){r.add(new Ts({name:n.join(""),style:{opacity:0},draggable:!0,silent:!0,invisible:!0,drift:H($k,t,e,r,n),ondragend:H(Wk,e,{isEnd:!0})}))})),r}function Uk(t,e,n,i){var r=i.brushStyle.lineWidth||0,o=Ik(r,6),a=n[0][0],s=n[1][0],l=a-r/2,u=s-r/2,h=n[0][1],c=n[1][1],p=h-o+r/2,d=c-o+r/2,f=h-a,g=c-s,y=f+r,v=g+r;Zk(t,e,"main",a,s,f,g),i.transformable&&(Zk(t,e,"w",l,u,o,v),Zk(t,e,"e",p,u,o,v),Zk(t,e,"n",l,u,y,o),Zk(t,e,"s",l,d,y,o),Zk(t,e,"nw",l,u,o,o),Zk(t,e,"ne",p,u,o,o),Zk(t,e,"sw",l,d,o,o),Zk(t,e,"se",p,d,o,o))}function Xk(t,e){var n=e.__brushOption,i=n.transformable,r=e.childAt(0);r.useStyle(jk(n)),r.attr({silent:!i,cursor:i?"move":"default"}),E([["w"],["e"],["n"],["s"],["s","e"],["s","w"],["n","e"],["n","w"]],(function(n){var r=e.childOfName(n.join("")),o=1===n.length?Kk(t,n[0]):function(t,e){var n=[Kk(t,e[0]),Kk(t,e[1])];return("e"===n[0]||"w"===n[0])&&n.reverse(),n.join("")}(t,n);r&&r.attr({silent:!i,invisible:!i,cursor:i?Ak[o]+"-resize":null})}))}function Zk(t,e,n,i,r,o,a){var s=e.childOfName(n);s&&s.setShape(function(t){var e=Mk(t[0][0],t[1][0]),n=Mk(t[0][1],t[1][1]),i=Ik(t[0][0],t[1][0]),r=Ik(t[0][1],t[1][1]);return{x:e,y:n,width:i-e,height:r-n}}(tL(t,e,[[i,r],[i+o,r+a]])))}function jk(t){return k({strokeNoScale:!0},t.brushStyle)}function qk(t,e,n,i){var r=[Mk(t,n),Mk(e,i)],o=[Ik(t,n),Ik(e,i)];return[[r[0],o[0]],[r[1],o[1]]]}function Kk(t,e){return{left:"w",right:"e",top:"n",bottom:"s"}[Th({w:"left",e:"right",n:"top",s:"bottom"}[e],function(t){return Mh(t.group)}(t))]}function $k(t,e,n,i,r,o){var a=n.__brushOption,s=t.toRectRange(a.range),l=Qk(e,r,o);E(i,(function(t){var e=Dk[t];s[e[0]][e[1]]+=l[e[0]]})),a.range=t.fromRectRange(qk(s[0][0],s[1][0],s[0][1],s[1][1])),zk(e,n),Wk(e,{isEnd:!1})}function Jk(t,e,n,i){var r=e.__brushOption.range,o=Qk(t,n,i);E(r,(function(t){t[0]+=o[0],t[1]+=o[1]})),zk(t,e),Wk(t,{isEnd:!1})}function Qk(t,e,n){var i=t.group,r=i.transformCoordToLocal(e,n),o=i.transformCoordToLocal(0,0);return[r[0]-o[0],r[1]-o[1]]}function tL(t,e,n){var i=Fk(t,e);return i&&i!==Sk?i.clipPath(n,t._transform):T(n)}function eL(t){var e=t.event;e.preventDefault&&e.preventDefault()}function nL(t,e,n){return t.childOfName("main").contain(e,n)}function iL(t,e,n,i){var r,o=t._creatingCover,a=t._creatingPanel,s=t._brushOption;if(t._track.push(n.slice()),function(t){var e=t._track;if(!e.length)return!1;var n=e[e.length-1],i=e[0],r=n[0]-i[0],o=n[1]-i[1];return Tk(r*r+o*o,.5)>6}(t)||o){if(a&&!o){"single"===s.brushMode&&Gk(t);var l=T(s);l.brushType=rL(l.brushType,a),l.panelId=a===Sk?null:a.panelId,o=t._creatingCover=Ok(t,l),t._covers.push(o)}if(o){var u=sL[rL(t._brushType,a)];o.__brushOption.range=u.getCreatingRange(tL(t,o,t._track)),i&&(Rk(t,o),u.updateCommon(t,o)),Nk(t,o),r={isEnd:i}}}else i&&"single"===s.brushMode&&s.removeOnClick&&Bk(t,e,n)&&Gk(t)&&(r={isEnd:i,removeOnClick:!0});return r}function rL(t,e){return"auto"===t?e.defaultBrushType:t}var oL={mousedown:function(t){if(this._dragging)aL(this,t);else if(!t.target||!t.target.draggable){eL(t);var e=this.group.transformCoordToLocal(t.offsetX,t.offsetY);this._creatingCover=null,(this._creatingPanel=Bk(this,t,e))&&(this._dragging=!0,this._track=[e.slice()])}},mousemove:function(t){var e=t.offsetX,n=t.offsetY,i=this.group.transformCoordToLocal(e,n);if(function(t,e,n){if(t._brushType&&!function(t,e,n){var i=t._zr;return e<0||e>i.getWidth()||n<0||n>i.getHeight()}(t,e.offsetX,e.offsetY)){var i=t._zr,r=t._covers,o=Bk(t,e,n);if(!t._dragging)for(var a=0;a<r.length;a++){var s=r[a].__brushOption;if(o&&(o===Sk||s.panelId===o.panelId)&&sL[s.brushType].contain(r[a],n[0],n[1]))return}o&&i.setCursorStyle("crosshair")}}(this,t,i),this._dragging){eL(t);var r=iL(this,t,i,!1);r&&Wk(this,r)}},mouseup:function(t){aL(this,t)}};function aL(t,e){if(t._dragging){eL(e);var n=e.offsetX,i=e.offsetY,r=t.group.transformCoordToLocal(n,i),o=iL(t,e,r,!0);t._dragging=!1,t._track=[],t._creatingCover=null,o&&Wk(t,o)}}var sL={lineX:lL(0),lineY:lL(1),rect:{createCover:function(t,e){function n(t){return t}return Yk({toRectRange:n,fromRectRange:n},t,e,[["w"],["e"],["n"],["s"],["s","e"],["s","w"],["n","e"],["n","w"]])},getCreatingRange:function(t){var e=Hk(t);return qk(e[1][0],e[1][1],e[0][0],e[0][1])},updateCoverShape:function(t,e,n,i){Uk(t,e,n,i)},updateCommon:Xk,contain:nL},polygon:{createCover:function(t,e){var n=new Cr;return n.add(new Ou({name:"main",style:jk(e),silent:!0})),n},getCreatingRange:function(t){return t},endCreating:function(t,e){e.remove(e.childAt(0)),e.add(new Lu({name:"main",draggable:!0,drift:H(Jk,t,e),ondragend:H(Wk,t,{isEnd:!0})}))},updateCoverShape:function(t,e,n,i){e.childAt(0).setShape({points:tL(t,e,n)})},updateCommon:Xk,contain:nL}};function lL(t){return{createCover:function(e,n){return Yk({toRectRange:function(e){var n=[e,[0,100]];return t&&n.reverse(),n},fromRectRange:function(e){return e[t]}},e,n,[[["w"],["e"]],[["n"],["s"]]][t])},getCreatingRange:function(e){var n=Hk(e);return[Mk(n[0][t],n[1][t]),Ik(n[0][t],n[1][t])]},updateCoverShape:function(e,n,i,r){var o,a=Fk(e,n);if(a!==Sk&&a.getLinearBrushOtherExtent)o=a.getLinearBrushOtherExtent(t);else{var s=e._zr;o=[0,[s.getWidth(),s.getHeight()][1-t]]}var l=[i,o];t&&l.reverse(),Uk(e,n,l,r)},updateCommon:Xk,contain:nL}}function uL(t){return t=pL(t),function(e){return Ah(e,t)}}function hL(t,e){return t=pL(t),function(n){var i=null!=e?e:n,r=i?t.width:t.height,o=i?t.x:t.y;return[o,o+(r||0)]}}function cL(t,e,n){var i=pL(t);return function(t,r){return i.contain(r[0],r[1])&&!EI(t,e,n)}}function pL(t){return sr.create(t)}var dL=["axisLine","axisTickLabel","axisName"],fL=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(e,n){t.prototype.init.apply(this,arguments),(this._brushController=new Pk(n.getZr())).on("brush",W(this._onBrush,this))},e.prototype.render=function(t,e,n,i){if(!function(t,e,n){return n&&"axisAreaSelect"===n.type&&e.findComponents({mainType:"parallelAxis",query:n})[0]===t}(t,e,i)){this.axisModel=t,this.api=n,this.group.removeAll();var r=this._axisGroup;if(this._axisGroup=new Cr,this.group.add(this._axisGroup),t.get("show")){var o=function(t,e){return e.getComponent("parallel",t.get("parallelIndex"))}(t,e),a=o.coordinateSystem,s=t.getAreaSelectStyle(),l=s.width,u=t.axis.dim,h=A({strokeContainThreshold:l},a.getAxisLayout(u)),c=new BM(t,h);E(dL,c.add,c),this._axisGroup.add(c.getGroup()),this._refreshBrushController(h,s,t,o,l,n),Dh(r,this._axisGroup,t)}}},e.prototype._refreshBrushController=function(t,e,n,i,r,o){var a=n.axis.getExtent(),s=a[1]-a[0],l=Math.min(30,.1*Math.abs(s)),u=sr.create({x:a[0],y:-r/2,width:s,height:r});u.x-=l,u.width+=2*l,this._brushController.mount({enableGlobalPan:!0,rotation:t.rotation,x:t.position[0],y:t.position[1]}).setPanels([{panelId:"pl",clipPath:uL(u),isTargetByCursor:cL(u,o,i),getLinearBrushOtherExtent:hL(u,0)}]).enableBrush({brushType:"lineX",brushStyle:e,removeOnClick:!0}).updateCovers(function(t){var e=t.axis;return z(t.activeIntervals,(function(t){return{brushType:"lineX",panelId:"pl",range:[e.dataToCoord(t[0],!0),e.dataToCoord(t[1],!0)]}}))}(n))},e.prototype._onBrush=function(t){var e=t.areas,n=this.axisModel,i=n.axis,r=z(e,(function(t){return[i.coordToData(t.range[0],!0),i.coordToData(t.range[1],!0)]}));(!n.option.realtime===t.isEnd||t.removeOnClick)&&this.api.dispatchAction({type:"axisAreaSelect",parallelAxisId:n.id,intervals:r})},e.prototype.dispose=function(){this._brushController.dispose()},e.type="parallelAxis",e}(fg);var gL={type:"axisAreaSelect",event:"axisAreaSelected"};var yL={type:"value",areaSelectStyle:{width:20,borderWidth:1,borderColor:"rgba(160,197,232)",color:"rgba(160,197,232)",opacity:.3},realtime:!0,z:10};function vL(t){t.registerComponentView(nk),t.registerComponentModel(ok),t.registerCoordinateSystem("parallel",bk),t.registerPreprocessor(ek),t.registerComponentModel(wk),t.registerComponentView(fL),wM(t,"parallel",wk,yL),function(t){t.registerAction(gL,(function(t,e){e.eachComponent({mainType:"parallelAxis",query:t},(function(e){e.axis.model.setActiveIntervals(t.intervals)}))})),t.registerAction("parallelAxisExpand",(function(t,e){e.eachComponent({mainType:"parallel",query:t},(function(e){e.setAxisExpand(t)}))}))}(t)}var mL=function(){this.x1=0,this.y1=0,this.x2=0,this.y2=0,this.cpx1=0,this.cpy1=0,this.cpx2=0,this.cpy2=0,this.extent=0},xL=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultShape=function(){return new mL},e.prototype.buildPath=function(t,e){var n=e.extent;t.moveTo(e.x1,e.y1),t.bezierCurveTo(e.cpx1,e.cpy1,e.cpx2,e.cpy2,e.x2,e.y2),"vertical"===e.orient?(t.lineTo(e.x2+n,e.y2),t.bezierCurveTo(e.cpx2+n,e.cpy2,e.cpx1+n,e.cpy1,e.x1+n,e.y1)):(t.lineTo(e.x2,e.y2+n),t.bezierCurveTo(e.cpx2,e.cpy2+n,e.cpx1,e.cpy1+n,e.x1,e.y1+n)),t.closePath()},e.prototype.highlight=function(){xl(this)},e.prototype.downplay=function(){_l(this)},e}(fs),_L=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n._focusAdjacencyDisabled=!1,n}return n(e,t),e.prototype.render=function(t,e,n){var i=this,r=t.getGraph(),o=this.group,a=t.layoutInfo,s=a.width,l=a.height,u=t.getData(),h=t.getData("edge"),c=t.get("orient");this._model=t,o.removeAll(),o.x=a.x,o.y=a.y,r.eachEdge((function(e){var n=new xL,i=Ws(n);i.dataIndex=e.dataIndex,i.seriesIndex=t.seriesIndex,i.dataType="edge";var r,a,u,p,d,f,g,y,v=e.getModel(),m=v.getModel("lineStyle"),x=m.get("curveness"),_=e.node1.getLayout(),b=e.node1.getModel(),w=b.get("localX"),S=b.get("localY"),M=e.node2.getLayout(),I=e.node2.getModel(),T=I.get("localX"),C=I.get("localY"),D=e.getLayout();switch(n.shape.extent=Math.max(1,D.dy),n.shape.orient=c,"vertical"===c?(r=(null!=w?w*s:_.x)+D.sy,a=(null!=S?S*l:_.y)+_.dy,u=(null!=T?T*s:M.x)+D.ty,d=r,f=a*(1-x)+(p=null!=C?C*l:M.y)*x,g=u,y=a*x+p*(1-x)):(r=(null!=w?w*s:_.x)+_.dx,a=(null!=S?S*l:_.y)+D.sy,d=r*(1-x)+(u=null!=T?T*s:M.x)*x,f=a,g=r*x+u*(1-x),y=p=(null!=C?C*l:M.y)+D.ty),n.setShape({x1:r,y1:a,x2:u,y2:p,cpx1:d,cpy1:f,cpx2:g,cpy2:y}),n.useStyle(m.getItemStyle()),n.style.fill){case"source":n.style.fill=e.node1.getVisual("color"),n.style.decal=e.node1.getVisual("style").decal;break;case"target":n.style.fill=e.node2.getVisual("color"),n.style.decal=e.node2.getVisual("style").decal;break;case"gradient":var A=e.node1.getVisual("color"),k=e.node2.getVisual("color");X(A)&&X(k)&&(n.style.fill=new Uu(0,0,+("horizontal"===c),+("vertical"===c),[{color:A,offset:0},{color:k,offset:1}]))}var L=v.getModel("emphasis");zl(n,v,"lineStyle",(function(t){return t.getItemStyle()})),o.add(n),h.setItemGraphicEl(e.dataIndex,n);var P=L.get("focus");Ol(n,"adjacency"===P?e.getAdjacentDataIndices():P,L.get("blurScope"),L.get("disabled")),Ws(n).dataType="edge"})),r.eachNode((function(e){var n=e.getLayout(),i=e.getModel(),r=i.get("localX"),a=i.get("localY"),h=i.getModel("emphasis"),c=new Ts({shape:{x:null!=r?r*s:n.x,y:null!=a?a*l:n.y,width:n.dx,height:n.dy},style:i.getModel("itemStyle").getItemStyle(),z2:10});Wh(c,Hh(i),{labelFetcher:t,labelDataIndex:e.dataIndex,defaultText:e.id}),c.disableLabelAnimation=!0,c.setStyle("fill",e.getVisual("color")),c.setStyle("decal",e.getVisual("style").decal),zl(c,i),o.add(c),u.setItemGraphicEl(e.dataIndex,c),Ws(c).dataType="node";var p=h.get("focus");Ol(c,"adjacency"===p?e.getAdjacentDataIndices():p,h.get("blurScope"),h.get("disabled"))})),u.eachItemGraphicEl((function(e,r){u.getItemModel(r).get("draggable")&&(e.drift=function(e,o){i._focusAdjacencyDisabled=!0,this.shape.x+=e,this.shape.y+=o,this.dirty(),n.dispatchAction({type:"dragNode",seriesId:t.id,dataIndex:u.getRawIndex(r),localX:this.shape.x/s,localY:this.shape.y/l})},e.ondragend=function(){i._focusAdjacencyDisabled=!1},e.draggable=!0,e.cursor="move")})),!this._data&&t.isAnimationEnabled()&&o.setClipPath(function(t,e,n){var i=new Ts({shape:{x:t.x-10,y:t.y-10,width:0,height:t.height+20}});return rh(i,{shape:{width:t.width+20}},e,n),i}(o.getBoundingRect(),t,(function(){o.removeClipPath()}))),this._data=t.getData()},e.prototype.dispose=function(){},e.type="sankey",e}(mg);var bL=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.getInitialData=function(t,e){var n=t.edges||t.links,i=t.data||t.nodes,r=t.levels;this.levelModels=[];for(var o=this.levelModels,a=0;a<r.length;a++)null!=r[a].depth&&r[a].depth>=0&&(o[r[a].depth]=new pc(r[a],this,e));if(i&&n)return PA(i,n,this,!0,(function(t,e){t.wrapMethod("getItemModel",(function(t,e){var n=t.parentModel,i=n.getData().getItemLayout(e);if(i){var r=i.depth,o=n.levelModels[r];o&&(t.parentModel=o)}return t})),e.wrapMethod("getItemModel",(function(t,e){var n=t.parentModel,i=n.getGraph().getEdgeByIndex(e).node1.getLayout();if(i){var r=i.depth,o=n.levelModels[r];o&&(t.parentModel=o)}return t}))})).data},e.prototype.setNodePosition=function(t,e){var n=(this.option.data||this.option.nodes)[t];n.localX=e[0],n.localY=e[1]},e.prototype.getGraph=function(){return this.getData().graph},e.prototype.getEdgeData=function(){return this.getGraph().edgeData},e.prototype.formatTooltip=function(t,e,n){function i(t){return isNaN(t)||null==t}if("edge"===n){var r=this.getDataParams(t,n),o=r.data,a=r.value;return Uf("nameValue",{name:o.source+" -- "+o.target,value:a,noValue:i(a)})}var s=this.getGraph().getNodeByIndex(t).getLayout().value,l=this.getDataParams(t,n).data.name;return Uf("nameValue",{name:null!=l?l+"":null,value:s,noValue:i(s)})},e.prototype.optionUpdated=function(){},e.prototype.getDataParams=function(e,n){var i=t.prototype.getDataParams.call(this,e,n);if(null==i.value&&"node"===n){var r=this.getGraph().getNodeByIndex(e).getLayout().value;i.value=r}return i},e.type="series.sankey",e.defaultOption={z:2,coordinateSystem:"view",left:"5%",top:"5%",right:"20%",bottom:"5%",orient:"horizontal",nodeWidth:20,nodeGap:8,draggable:!0,layoutIterations:32,label:{show:!0,position:"right",fontSize:12},levels:[],nodeAlign:"justify",lineStyle:{color:"#314656",opacity:.2,curveness:.5},emphasis:{label:{show:!0},lineStyle:{opacity:.5}},select:{itemStyle:{borderColor:"#212121"}},animationEasing:"linear",animationDuration:1e3},e}(ag);function wL(t,e){t.eachSeriesByType("sankey",(function(t){var n=t.get("nodeWidth"),i=t.get("nodeGap"),r=function(t,e){return mp(t.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()})}(t,e);t.layoutInfo=r;var o=r.width,a=r.height,s=t.getGraph(),l=s.nodes,u=s.edges;!function(t){E(t,(function(t){var e=PL(t.outEdges,LL),n=PL(t.inEdges,LL),i=t.getValue()||0,r=Math.max(e,n,i);t.setLayout({value:r},!0)}))}(l),function(t,e,n,i,r,o,a,s,l){(function(t,e,n,i,r,o,a){for(var s=[],l=[],u=[],h=[],c=0,p=0;p<e.length;p++)s[p]=1;for(p=0;p<t.length;p++)l[p]=t[p].inEdges.length,0===l[p]&&u.push(t[p]);var d=-1;for(;u.length;){for(var f=0;f<u.length;f++){var g=u[f],y=g.hostGraph.data.getRawDataItem(g.dataIndex),v=null!=y.depth&&y.depth>=0;v&&y.depth>d&&(d=y.depth),g.setLayout({depth:v?y.depth:c},!0),"vertical"===o?g.setLayout({dy:n},!0):g.setLayout({dx:n},!0);for(var m=0;m<g.outEdges.length;m++){var x=g.outEdges[m];s[e.indexOf(x)]=0;var _=x.node2;0==--l[t.indexOf(_)]&&h.indexOf(_)<0&&h.push(_)}}++c,u=h,h=[]}for(p=0;p<s.length;p++)if(1===s[p])throw new Error("Sankey is a DAG, the original data has cycle!");var b=d>c-1?d:c-1;a&&"left"!==a&&function(t,e,n,i){if("right"===e){for(var r=[],o=t,a=0;o.length;){for(var s=0;s<o.length;s++){var l=o[s];l.setLayout({skNodeHeight:a},!0);for(var u=0;u<l.inEdges.length;u++){var h=l.inEdges[u];r.indexOf(h.node1)<0&&r.push(h.node1)}}o=r,r=[],++a}E(t,(function(t){SL(t)||t.setLayout({depth:Math.max(0,i-t.getLayout().skNodeHeight)},!0)}))}else"justify"===e&&function(t,e){E(t,(function(t){SL(t)||t.outEdges.length||t.setLayout({depth:e},!0)}))}(t,i)}(t,a,0,b);!function(t,e,n){E(t,(function(t){var i=t.getLayout().depth*e;"vertical"===n?t.setLayout({y:i},!0):t.setLayout({x:i},!0)}))}(t,"vertical"===o?(r-n)/b:(i-n)/b,o)})(t,e,n,r,o,s,l),function(t,e,n,i,r,o,a){var s=function(t,e){var n=[],i="vertical"===e?"y":"x",r=Lo(t,(function(t){return t.getLayout()[i]}));return r.keys.sort((function(t,e){return t-e})),E(r.keys,(function(t){n.push(r.buckets.get(t))})),n}(t,a);(function(t,e,n,i,r,o){var a=1/0;E(t,(function(t){var e=t.length,s=0;E(t,(function(t){s+=t.getLayout().value}));var l="vertical"===o?(i-(e-1)*r)/s:(n-(e-1)*r)/s;l<a&&(a=l)})),E(t,(function(t){E(t,(function(t,e){var n=t.getLayout().value*a;"vertical"===o?(t.setLayout({x:e},!0),t.setLayout({dx:n},!0)):(t.setLayout({y:e},!0),t.setLayout({dy:n},!0))}))})),E(e,(function(t){var e=+t.getValue()*a;t.setLayout({dy:e},!0)}))})(s,e,n,i,r,a),ML(s,r,n,i,a);for(var l=1;o>0;o--)IL(s,l*=.99,a),ML(s,r,n,i,a),OL(s,l,a),ML(s,r,n,i,a)}(t,e,o,r,i,a,s),function(t,e){var n="vertical"===e?"x":"y";E(t,(function(t){t.outEdges.sort((function(t,e){return t.node2.getLayout()[n]-e.node2.getLayout()[n]})),t.inEdges.sort((function(t,e){return t.node1.getLayout()[n]-e.node1.getLayout()[n]}))})),E(t,(function(t){var e=0,n=0;E(t.outEdges,(function(t){t.setLayout({sy:e},!0),e+=t.getLayout().dy})),E(t.inEdges,(function(t){t.setLayout({ty:n},!0),n+=t.getLayout().dy}))}))}(t,s)}(l,u,n,i,o,a,0!==B(l,(function(t){return 0===t.getLayout().value})).length?0:t.get("layoutIterations"),t.get("orient"),t.get("nodeAlign"))}))}function SL(t){var e=t.hostGraph.data.getRawDataItem(t.dataIndex);return null!=e.depth&&e.depth>=0}function ML(t,e,n,i,r){var o="vertical"===r?"x":"y";E(t,(function(t){var a,s,l;t.sort((function(t,e){return t.getLayout()[o]-e.getLayout()[o]}));for(var u=0,h=t.length,c="vertical"===r?"dx":"dy",p=0;p<h;p++)(l=u-(s=t[p]).getLayout()[o])>0&&(a=s.getLayout()[o]+l,"vertical"===r?s.setLayout({x:a},!0):s.setLayout({y:a},!0)),u=s.getLayout()[o]+s.getLayout()[c]+e;if((l=u-e-("vertical"===r?i:n))>0){a=s.getLayout()[o]-l,"vertical"===r?s.setLayout({x:a},!0):s.setLayout({y:a},!0),u=a;for(p=h-2;p>=0;--p)(l=(s=t[p]).getLayout()[o]+s.getLayout()[c]+e-u)>0&&(a=s.getLayout()[o]-l,"vertical"===r?s.setLayout({x:a},!0):s.setLayout({y:a},!0)),u=s.getLayout()[o]}}))}function IL(t,e,n){E(t.slice().reverse(),(function(t){E(t,(function(t){if(t.outEdges.length){var i=PL(t.outEdges,TL,n)/PL(t.outEdges,LL);if(isNaN(i)){var r=t.outEdges.length;i=r?PL(t.outEdges,CL,n)/r:0}if("vertical"===n){var o=t.getLayout().x+(i-kL(t,n))*e;t.setLayout({x:o},!0)}else{var a=t.getLayout().y+(i-kL(t,n))*e;t.setLayout({y:a},!0)}}}))}))}function TL(t,e){return kL(t.node2,e)*t.getValue()}function CL(t,e){return kL(t.node2,e)}function DL(t,e){return kL(t.node1,e)*t.getValue()}function AL(t,e){return kL(t.node1,e)}function kL(t,e){return"vertical"===e?t.getLayout().x+t.getLayout().dx/2:t.getLayout().y+t.getLayout().dy/2}function LL(t){return t.getValue()}function PL(t,e,n){for(var i=0,r=t.length,o=-1;++o<r;){var a=+e(t[o],n);isNaN(a)||(i+=a)}return i}function OL(t,e,n){E(t,(function(t){E(t,(function(t){if(t.inEdges.length){var i=PL(t.inEdges,DL,n)/PL(t.inEdges,LL);if(isNaN(i)){var r=t.inEdges.length;i=r?PL(t.inEdges,AL,n)/r:0}if("vertical"===n){var o=t.getLayout().x+(i-kL(t,n))*e;t.setLayout({x:o},!0)}else{var a=t.getLayout().y+(i-kL(t,n))*e;t.setLayout({y:a},!0)}}}))}))}function RL(t){t.eachSeriesByType("sankey",(function(t){var e=t.getGraph().nodes;if(e.length){var n=1/0,i=-1/0;E(e,(function(t){var e=t.getLayout().value;e<n&&(n=e),e>i&&(i=e)})),E(e,(function(e){var r=new eD({type:"color",mappingMethod:"linear",dataExtent:[n,i],visual:t.get("color")}).mapValueToVisual(e.getLayout().value),o=e.getModel().get(["itemStyle","color"]);null!=o?(e.setVisual("color",o),e.setVisual("style",{fill:o})):(e.setVisual("color",r),e.setVisual("style",{fill:r}))}))}}))}var NL=function(){function t(){}return t.prototype.getInitialData=function(t,e){var n,i,r=e.getComponent("xAxis",this.get("xAxisIndex")),o=e.getComponent("yAxis",this.get("yAxisIndex")),a=r.get("type"),s=o.get("type");"category"===a?(t.layout="horizontal",n=r.getOrdinalMeta(),i=!0):"category"===s?(t.layout="vertical",n=o.getOrdinalMeta(),i=!0):t.layout=t.layout||"horizontal";var l=["x","y"],u="horizontal"===t.layout?0:1,h=this._baseAxisDim=l[u],c=l[1-u],p=[r,o],d=p[u].get("type"),f=p[1-u].get("type"),g=t.data;if(g&&i){var y=[];E(g,(function(t,e){var n;Y(t)?(n=t.slice(),t.unshift(e)):Y(t.value)?((n=A({},t)).value=n.value.slice(),t.value.unshift(e)):n=t,y.push(n)})),t.data=y}var v=this.defaultValueDimensions,m=[{name:h,type:Tm(d),ordinalMeta:n,otherDims:{tooltip:!1,itemName:0},dimsDef:["base"]},{name:c,type:Tm(f),dimsDef:v.slice()}];return sM(this,{coordDimensions:m,dimensionsCount:v.length+1,encodeDefaulter:H(Wp,m,this)})},t.prototype.getBaseAxis=function(){var t=this._baseAxisDim;return this.ecModel.getComponent(t+"Axis",this.get(t+"AxisIndex")).axis},t}(),EL=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.defaultValueDimensions=[{name:"min",defaultTooltip:!0},{name:"Q1",defaultTooltip:!0},{name:"median",defaultTooltip:!0},{name:"Q3",defaultTooltip:!0},{name:"max",defaultTooltip:!0}],n.visualDrawType="stroke",n}return n(e,t),e.type="series.boxplot",e.dependencies=["xAxis","yAxis","grid"],e.defaultOption={z:2,coordinateSystem:"cartesian2d",legendHoverLink:!0,layout:null,boxWidth:[7,50],itemStyle:{color:"#fff",borderWidth:1},emphasis:{scale:!0,itemStyle:{borderWidth:2,shadowBlur:5,shadowOffsetX:1,shadowOffsetY:1,shadowColor:"rgba(0,0,0,0.2)"}},animationDuration:800},e}(ag);R(EL,NL,!0);var zL=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){var i=t.getData(),r=this.group,o=this._data;this._data||r.removeAll();var a="horizontal"===t.get("layout")?1:0;i.diff(o).add((function(t){if(i.hasValue(t)){var e=FL(i.getItemLayout(t),i,t,a,!0);i.setItemGraphicEl(t,e),r.add(e)}})).update((function(t,e){var n=o.getItemGraphicEl(e);if(i.hasValue(t)){var s=i.getItemLayout(t);n?(uh(n),GL(s,n,i,t)):n=FL(s,i,t,a),r.add(n),i.setItemGraphicEl(t,n)}else r.remove(n)})).remove((function(t){var e=o.getItemGraphicEl(t);e&&r.remove(e)})).execute(),this._data=i},e.prototype.remove=function(t){var e=this.group,n=this._data;this._data=null,n&&n.eachItemGraphicEl((function(t){t&&e.remove(t)}))},e.type="boxplot",e}(mg),VL=function(){},BL=function(t){function e(e){var n=t.call(this,e)||this;return n.type="boxplotBoxPath",n}return n(e,t),e.prototype.getDefaultShape=function(){return new VL},e.prototype.buildPath=function(t,e){var n=e.points,i=0;for(t.moveTo(n[i][0],n[i][1]),i++;i<4;i++)t.lineTo(n[i][0],n[i][1]);for(t.closePath();i<n.length;i++)t.moveTo(n[i][0],n[i][1]),i++,t.lineTo(n[i][0],n[i][1])},e}(fs);function FL(t,e,n,i,r){var o=t.ends,a=new BL({shape:{points:r?WL(o,i,t):o}});return GL(t,a,e,n,r),a}function GL(t,e,n,i,r){var o=n.hostModel;(0,Vh[r?"initProps":"updateProps"])(e,{shape:{points:t.ends}},o,i),e.useStyle(n.getItemVisual(i,"style")),e.style.strokeNoScale=!0,e.z2=100;var a=n.getItemModel(i),s=a.getModel("emphasis");zl(e,a),Ol(e,s.get("focus"),s.get("blurScope"),s.get("disabled"))}function WL(t,e,n){return z(t,(function(t){return(t=t.slice())[e]=n.initBaseline,t}))}function HL(t,e){}var YL=E;function UL(t){var e=function(t){var e=[],n=[];return t.eachSeriesByType("boxplot",(function(t){var i=t.getBaseAxis(),r=P(n,i);r<0&&(r=n.length,n[r]=i,e[r]={axis:i,seriesModels:[]}),e[r].seriesModels.push(t)})),e}(t);YL(e,(function(t){var e=t.seriesModels;e.length&&(!function(t){var e,n=t.axis,i=t.seriesModels,r=i.length,o=t.boxWidthList=[],a=t.boxOffsetList=[],s=[];if("category"===n.type)e=n.getBandWidth();else{var l=0;YL(i,(function(t){l=Math.max(l,t.getData().count())}));var u=n.getExtent();e=Math.abs(u[1]-u[0])/l}YL(i,(function(t){var n=t.get("boxWidth");Y(n)||(n=[n,n]),s.push([Er(n[0],e)||0,Er(n[1],e)||0])}));var h=.8*e-2,c=h/r*.3,p=(h-c*(r-1))/r,d=p/2-h/2;YL(i,(function(t,e){a.push(d),d+=c+p,o.push(Math.min(Math.max(p,s[e][0]),s[e][1]))}))}(t),YL(e,(function(e,n){!function(t,e,n){var i=t.coordinateSystem,r=t.getData(),o=n/2,a="horizontal"===t.get("layout")?0:1,s=1-a,l=["x","y"],u=r.mapDimension(l[a]),h=r.mapDimensionsAll(l[s]);if(null==u||h.length<5)return;for(var c=0;c<r.count();c++){var p=r.get(u,c),d=x(p,h[2],c),f=x(p,h[0],c),g=x(p,h[1],c),y=x(p,h[3],c),v=x(p,h[4],c),m=[];_(m,g,!1),_(m,y,!0),m.push(f,g,v,y),b(m,f),b(m,v),b(m,d),r.setItemLayout(c,{initBaseline:d[s],ends:m})}function x(t,n,o){var l,u=r.get(n,o),h=[];return h[a]=t,h[s]=u,isNaN(t)||isNaN(u)?l=[NaN,NaN]:(l=i.dataToPoint(h))[a]+=e,l}function _(t,e,n){var i=e.slice(),r=e.slice();i[a]+=o,r[a]-=o,n?t.push(i,r):t.push(r,i)}function b(t,e){var n=e.slice(),i=e.slice();n[a]-=o,i[a]+=o,t.push(n,i)}}(e,t.boxOffsetList[n],t.boxWidthList[n])})))}))}var XL={type:"echarts:boxplot",transform:function(t){var e=t.upstream;if(e.sourceFormat!==Lp){var n="";0,ao(n)}var i=function(t,e){for(var n=[],i=[],r=(e=e||{}).boundIQR,o="none"===r||0===r,a=0;a<t.length;a++){var s=Vr(t[a].slice()),l=Jr(s,.25),u=Jr(s,.5),h=Jr(s,.75),c=s[0],p=s[s.length-1],d=(null==r?1.5:r)*(h-l),f=o?c:Math.max(c,l-d),g=o?p:Math.min(p,h+d),y=e.itemNameFormatter,v=U(y)?y({value:a}):X(y)?y.replace("{value}",a+""):a+"";n.push([v,f,l,u,h,g]);for(var m=0;m<s.length;m++){var x=s[m];if(x<f||x>g){var _=[v,x];i.push(_)}}}return{boxData:n,outliers:i}}(e.getRawData(),t.config);return[{dimensions:["ItemName","Low","Q1","Q2","Q3","High"],data:i.boxData},{data:i.outliers}]}};var ZL=["color","borderColor"],jL=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){this.group.removeClipPath(),this._progressiveEls=null,this._updateDrawMode(t),this._isLargeDraw?this._renderLarge(t):this._renderNormal(t)},e.prototype.incrementalPrepareRender=function(t,e,n){this._clear(),this._updateDrawMode(t)},e.prototype.incrementalRender=function(t,e,n,i){this._progressiveEls=[],this._isLargeDraw?this._incrementalRenderLarge(t,e):this._incrementalRenderNormal(t,e)},e.prototype.eachRendered=function(t){zh(this._progressiveEls||this.group,t)},e.prototype._updateDrawMode=function(t){var e=t.pipelineContext.large;null!=this._isLargeDraw&&e===this._isLargeDraw||(this._isLargeDraw=e,this._clear())},e.prototype._renderNormal=function(t){var e=t.getData(),n=this._data,i=this.group,r=e.getLayout("isSimpleBox"),o=t.get("clip",!0),a=t.coordinateSystem,s=a.getArea&&a.getArea();this._data||i.removeAll(),e.diff(n).add((function(n){if(e.hasValue(n)){var a=e.getItemLayout(n);if(o&&JL(s,a))return;var l=$L(a,n,!0);rh(l,{shape:{points:a.ends}},t,n),QL(l,e,n,r),i.add(l),e.setItemGraphicEl(n,l)}})).update((function(a,l){var u=n.getItemGraphicEl(l);if(e.hasValue(a)){var h=e.getItemLayout(a);o&&JL(s,h)?i.remove(u):(u?(ih(u,{shape:{points:h.ends}},t,a),uh(u)):u=$L(h),QL(u,e,a,r),i.add(u),e.setItemGraphicEl(a,u))}else i.remove(u)})).remove((function(t){var e=n.getItemGraphicEl(t);e&&i.remove(e)})).execute(),this._data=e},e.prototype._renderLarge=function(t){this._clear(),iP(t,this.group);var e=t.get("clip",!0)?aS(t.coordinateSystem,!1,t):null;e?this.group.setClipPath(e):this.group.removeClipPath()},e.prototype._incrementalRenderNormal=function(t,e){for(var n,i=e.getData(),r=i.getLayout("isSimpleBox");null!=(n=t.next());){var o=$L(i.getItemLayout(n));QL(o,i,n,r),o.incremental=!0,this.group.add(o),this._progressiveEls.push(o)}},e.prototype._incrementalRenderLarge=function(t,e){iP(e,this.group,this._progressiveEls,!0)},e.prototype.remove=function(t){this._clear()},e.prototype._clear=function(){this.group.removeAll(),this._data=null},e.type="candlestick",e}(mg),qL=function(){},KL=function(t){function e(e){var n=t.call(this,e)||this;return n.type="normalCandlestickBox",n}return n(e,t),e.prototype.getDefaultShape=function(){return new qL},e.prototype.buildPath=function(t,e){var n=e.points;this.__simpleBox?(t.moveTo(n[4][0],n[4][1]),t.lineTo(n[6][0],n[6][1])):(t.moveTo(n[0][0],n[0][1]),t.lineTo(n[1][0],n[1][1]),t.lineTo(n[2][0],n[2][1]),t.lineTo(n[3][0],n[3][1]),t.closePath(),t.moveTo(n[4][0],n[4][1]),t.lineTo(n[5][0],n[5][1]),t.moveTo(n[6][0],n[6][1]),t.lineTo(n[7][0],n[7][1]))},e}(fs);function $L(t,e,n){var i=t.ends;return new KL({shape:{points:n?tP(i,t):i},z2:100})}function JL(t,e){for(var n=!0,i=0;i<e.ends.length;i++)if(t.contain(e.ends[i][0],e.ends[i][1])){n=!1;break}return n}function QL(t,e,n,i){var r=e.getItemModel(n);t.useStyle(e.getItemVisual(n,"style")),t.style.strokeNoScale=!0,t.__simpleBox=i,zl(t,r)}function tP(t,e){return z(t,(function(t){return(t=t.slice())[1]=e.initBaseline,t}))}var eP=function(){},nP=function(t){function e(e){var n=t.call(this,e)||this;return n.type="largeCandlestickBox",n}return n(e,t),e.prototype.getDefaultShape=function(){return new eP},e.prototype.buildPath=function(t,e){for(var n=e.points,i=0;i<n.length;)if(this.__sign===n[i++]){var r=n[i++];t.moveTo(r,n[i++]),t.lineTo(r,n[i++])}else i+=3},e}(fs);function iP(t,e,n,i){var r=t.getData().getLayout("largePoints"),o=new nP({shape:{points:r},__sign:1});e.add(o);var a=new nP({shape:{points:r},__sign:-1});e.add(a),rP(1,o,t),rP(-1,a,t),i&&(o.incremental=!0,a.incremental=!0),n&&n.push(o,a)}function rP(t,e,n,i){var r=n.get(["itemStyle",t>0?"borderColor":"borderColor0"])||n.get(["itemStyle",t>0?"color":"color0"]),o=n.getModel("itemStyle").getItemStyle(ZL);e.useStyle(o),e.style.fill=null,e.style.stroke=r}var oP=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.defaultValueDimensions=[{name:"open",defaultTooltip:!0},{name:"close",defaultTooltip:!0},{name:"lowest",defaultTooltip:!0},{name:"highest",defaultTooltip:!0}],n}return n(e,t),e.prototype.getShadowDim=function(){return"open"},e.prototype.brushSelector=function(t,e,n){var i=e.getItemLayout(t);return i&&n.rect(i.brushRect)},e.type="series.candlestick",e.dependencies=["xAxis","yAxis","grid"],e.defaultOption={z:2,coordinateSystem:"cartesian2d",legendHoverLink:!0,layout:null,clip:!0,itemStyle:{color:"#eb5454",color0:"#47b262",borderColor:"#eb5454",borderColor0:"#47b262",borderWidth:1},emphasis:{scale:!0,itemStyle:{borderWidth:2}},barMaxWidth:null,barMinWidth:null,barWidth:null,large:!0,largeThreshold:600,progressive:3e3,progressiveThreshold:1e4,progressiveChunkMode:"mod",animationEasing:"linear",animationDuration:300},e}(ag);function aP(t){t&&Y(t.series)&&E(t.series,(function(t){q(t)&&"k"===t.type&&(t.type="candlestick")}))}R(oP,NL,!0);var sP=["itemStyle","borderColor"],lP=["itemStyle","borderColor0"],uP=["itemStyle","color"],hP=["itemStyle","color0"],cP={seriesType:"candlestick",plan:gg(),performRawSeries:!0,reset:function(t,e){function n(t,e){return e.get(t>0?uP:hP)}function i(t,e){return e.get(t>0?sP:lP)}if(!e.isSeriesFiltered(t))return!t.pipelineContext.large&&{progress:function(t,e){for(var r;null!=(r=t.next());){var o=e.getItemModel(r),a=e.getItemLayout(r).sign,s=o.getItemStyle();s.fill=n(a,o),s.stroke=i(a,o)||s.fill,A(e.ensureUniqueItemVisual(r,"style"),s)}}}}},pP={seriesType:"candlestick",plan:gg(),reset:function(t){var e=t.coordinateSystem,n=t.getData(),i=function(t,e){var n,i=t.getBaseAxis(),r="category"===i.type?i.getBandWidth():(n=i.getExtent(),Math.abs(n[1]-n[0])/e.count()),o=Er(rt(t.get("barMaxWidth"),r),r),a=Er(rt(t.get("barMinWidth"),1),r),s=t.get("barWidth");return null!=s?Er(s,r):Math.max(Math.min(r/2,o),a)}(t,n),r=["x","y"],o=n.getDimensionIndex(n.mapDimension(r[0])),a=z(n.mapDimensionsAll(r[1]),n.getDimensionIndex,n),s=a[0],l=a[1],u=a[2],h=a[3];if(n.setLayout({candleWidth:i,isSimpleBox:i<=1.3}),!(o<0||a.length<4))return{progress:t.pipelineContext.large?function(t,n){var i,r,a=_x(4*t.count),c=0,p=[],d=[],f=n.getStore();for(;null!=(r=t.next());){var g=f.get(o,r),y=f.get(s,r),v=f.get(l,r),m=f.get(u,r),x=f.get(h,r);isNaN(g)||isNaN(m)||isNaN(x)?(a[c++]=NaN,c+=3):(a[c++]=dP(f,r,y,v,l),p[0]=g,p[1]=m,i=e.dataToPoint(p,null,d),a[c++]=i?i[0]:NaN,a[c++]=i?i[1]:NaN,p[1]=x,i=e.dataToPoint(p,null,d),a[c++]=i?i[1]:NaN)}n.setLayout("largePoints",a)}:function(t,n){var r,a=n.getStore();for(;null!=(r=t.next());){var c=a.get(o,r),p=a.get(s,r),d=a.get(l,r),f=a.get(u,r),g=a.get(h,r),y=Math.min(p,d),v=Math.max(p,d),m=S(y,c),x=S(v,c),_=S(f,c),b=S(g,c),w=[];M(w,x,0),M(w,m,1),w.push(T(b),T(x),T(_),T(m)),n.setItemLayout(r,{sign:dP(a,r,p,d,l),initBaseline:p>d?x[1]:m[1],ends:w,brushRect:I(f,g,c)})}function S(t,n){var i=[];return i[0]=n,i[1]=t,isNaN(n)||isNaN(t)?[NaN,NaN]:e.dataToPoint(i)}function M(t,e,n){var r=e.slice(),o=e.slice();r[0]=Sh(r[0]+i/2,1,!1),o[0]=Sh(o[0]-i/2,1,!0),n?t.push(r,o):t.push(o,r)}function I(t,e,n){var r=S(t,n),o=S(e,n);return r[0]-=i/2,o[0]-=i/2,{x:r[0],y:r[1],width:i,height:o[1]-r[1]}}function T(t){return t[0]=Sh(t[0],1),t}}}}};function dP(t,e,n,i,r){return n>i?-1:n<i?1:e>0?t.get(r,e-1)<=i?1:-1:1}function fP(t,e){var n=e.rippleEffectColor||e.color;t.eachChild((function(t){t.attr({z:e.z,zlevel:e.zlevel,style:{stroke:"stroke"===e.brushType?n:null,fill:"fill"===e.brushType?n:null}})}))}var gP=function(t){function e(e,n){var i=t.call(this)||this,r=new Ww(e,n),o=new Cr;return i.add(r),i.add(o),i.updateData(e,n),i}return n(e,t),e.prototype.stopEffectAnimation=function(){this.childAt(1).removeAll()},e.prototype.startEffectAnimation=function(t){for(var e=t.symbolType,n=t.color,i=t.rippleNumber,r=this.childAt(1),o=0;o<i;o++){var a=ky(e,-1,-1,2,2,n);a.attr({style:{strokeNoScale:!0},z2:99,silent:!0,scaleX:.5,scaleY:.5});var s=-o/i*t.period+t.effectOffset;a.animate("",!0).when(t.period,{scaleX:t.rippleScale/2,scaleY:t.rippleScale/2}).delay(s).start(),a.animateStyle(!0).when(t.period,{opacity:0}).delay(s).start(),r.add(a)}fP(r,t)},e.prototype.updateEffectAnimation=function(t){for(var e=this._effectCfg,n=this.childAt(1),i=["symbolType","period","rippleScale","rippleNumber"],r=0;r<i.length;r++){var o=i[r];if(e[o]!==t[o])return this.stopEffectAnimation(),void this.startEffectAnimation(t)}fP(n,t)},e.prototype.highlight=function(){xl(this)},e.prototype.downplay=function(){_l(this)},e.prototype.getSymbolType=function(){var t=this.childAt(0);return t&&t.getSymbolType()},e.prototype.updateData=function(t,e){var n=this,i=t.hostModel;this.childAt(0).updateData(t,e);var r=this.childAt(1),o=t.getItemModel(e),a=t.getItemVisual(e,"symbol"),s=Ly(t.getItemVisual(e,"symbolSize")),l=t.getItemVisual(e,"style"),u=l&&l.fill,h=o.getModel("emphasis");r.setScale(s),r.traverse((function(t){t.setStyle("fill",u)}));var c=Py(t.getItemVisual(e,"symbolOffset"),s);c&&(r.x=c[0],r.y=c[1]);var p=t.getItemVisual(e,"symbolRotate");r.rotation=(p||0)*Math.PI/180||0;var d={};d.showEffectOn=i.get("showEffectOn"),d.rippleScale=o.get(["rippleEffect","scale"]),d.brushType=o.get(["rippleEffect","brushType"]),d.period=1e3*o.get(["rippleEffect","period"]),d.effectOffset=e/t.count(),d.z=i.getShallow("z")||0,d.zlevel=i.getShallow("zlevel")||0,d.symbolType=a,d.color=u,d.rippleEffectColor=o.get(["rippleEffect","color"]),d.rippleNumber=o.get(["rippleEffect","number"]),"render"===d.showEffectOn?(this._effectCfg?this.updateEffectAnimation(d):this.startEffectAnimation(d),this._effectCfg=d):(this._effectCfg=null,this.stopEffectAnimation(),this.onHoverStateChange=function(t){"emphasis"===t?"render"!==d.showEffectOn&&n.startEffectAnimation(d):"normal"===t&&"render"!==d.showEffectOn&&n.stopEffectAnimation()}),this._effectCfg=d,Ol(this,h.get("focus"),h.get("blurScope"),h.get("disabled"))},e.prototype.fadeOut=function(t){t&&t()},e}(Cr),yP=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(){this._symbolDraw=new Zw(gP)},e.prototype.render=function(t,e,n){var i=t.getData(),r=this._symbolDraw;r.updateData(i,{clipShape:this._getClipShape(t)}),this.group.add(r.group)},e.prototype._getClipShape=function(t){var e=t.coordinateSystem,n=e&&e.getArea&&e.getArea();return t.get("clip",!0)?n:null},e.prototype.updateTransform=function(t,e,n){var i=t.getData();this.group.dirty();var r=xS("").reset(t,e,n);r.progress&&r.progress({start:0,end:i.count(),count:i.count()},i),this._symbolDraw.updateLayout()},e.prototype._updateGroupTransform=function(t){var e=t.coordinateSystem;e&&e.getRoamTransform&&(this.group.transform=Fi(e.getRoamTransform()),this.group.decomposeTransform())},e.prototype.remove=function(t,e){this._symbolDraw&&this._symbolDraw.remove(!0)},e.type="effectScatter",e}(mg),vP=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.hasSymbolVisual=!0,n}return n(e,t),e.prototype.getInitialData=function(t,e){return nx(null,this,{useEncodeDefaulter:!0})},e.prototype.brushSelector=function(t,e,n){return n.point(e.getItemLayout(t))},e.type="series.effectScatter",e.dependencies=["grid","polar"],e.defaultOption={coordinateSystem:"cartesian2d",z:2,legendHoverLink:!0,effectType:"ripple",progressive:0,showEffectOn:"render",clip:!0,rippleEffect:{period:4,scale:2.5,brushType:"fill",number:3},universalTransition:{divideShape:"clone"},symbolSize:10},e}(ag);var mP=function(t){function e(e,n,i){var r=t.call(this)||this;return r.add(r.createLine(e,n,i)),r._updateEffectSymbol(e,n),r}return n(e,t),e.prototype.createLine=function(t,e,n){return new pA(t,e,n)},e.prototype._updateEffectSymbol=function(t,e){var n=t.getItemModel(e).getModel("effect"),i=n.get("symbolSize"),r=n.get("symbol");Y(i)||(i=[i,i]);var o=t.getItemVisual(e,"style"),a=n.get("color")||o&&o.stroke,s=this.childAt(1);this._symbolType!==r&&(this.remove(s),(s=ky(r,-.5,-.5,1,1,a)).z2=100,s.culling=!0,this.add(s)),s&&(s.setStyle("shadowColor",a),s.setStyle(n.getItemStyle(["color"])),s.scaleX=i[0],s.scaleY=i[1],s.setColor(a),this._symbolType=r,this._symbolScale=i,this._updateEffectAnimation(t,n,e))},e.prototype._updateEffectAnimation=function(t,e,n){var i=this.childAt(1);if(i){var r=t.getItemLayout(n),o=1e3*e.get("period"),a=e.get("loop"),s=e.get("constantSpeed"),l=it(e.get("delay"),(function(e){return e/t.count()*o/3}));if(i.ignore=!0,this._updateAnimationPoints(i,r),s>0&&(o=this._getLineLength(i)/s*1e3),o!==this._period||a!==this._loop){i.stopAnimation();var u=void 0;u=U(l)?l(n):l,i.__t>0&&(u=-o*i.__t),this._animateSymbol(i,o,u,a)}this._period=o,this._loop=a}},e.prototype._animateSymbol=function(t,e,n,i){if(e>0){t.__t=0;var r=this,o=t.animate("",i).when(e,{__t:1}).delay(n).during((function(){r._updateSymbolPosition(t)}));i||o.done((function(){r.remove(t)})),o.start()}},e.prototype._getLineLength=function(t){return Et(t.__p1,t.__cp1)+Et(t.__cp1,t.__p2)},e.prototype._updateAnimationPoints=function(t,e){t.__p1=e[0],t.__p2=e[1],t.__cp1=e[2]||[(e[0][0]+e[1][0])/2,(e[0][1]+e[1][1])/2]},e.prototype.updateData=function(t,e,n){this.childAt(0).updateData(t,e,n),this._updateEffectSymbol(t,e)},e.prototype._updateSymbolPosition=function(t){var e=t.__p1,n=t.__p2,i=t.__cp1,r=t.__t,o=[t.x,t.y],a=o.slice(),s=Ke,l=$e;o[0]=s(e[0],i[0],n[0],r),o[1]=s(e[1],i[1],n[1],r);var u=l(e[0],i[0],n[0],r),h=l(e[1],i[1],n[1],r);t.rotation=-Math.atan2(h,u)-Math.PI/2,"line"!==this._symbolType&&"rect"!==this._symbolType&&"roundRect"!==this._symbolType||(void 0!==t.__lastT&&t.__lastT<t.__t?(t.scaleY=1.05*Et(a,o),1===r&&(o[0]=a[0]+(o[0]-a[0])/2,o[1]=a[1]+(o[1]-a[1])/2)):1===t.__lastT?t.scaleY=2*Et(e,o):t.scaleY=this._symbolScale[1]),t.__lastT=t.__t,t.ignore=!1,t.x=o[0],t.y=o[1]},e.prototype.updateLayout=function(t,e){this.childAt(0).updateLayout(t,e);var n=t.getItemModel(e).getModel("effect");this._updateEffectAnimation(t,n,e)},e}(Cr),xP=function(t){function e(e,n,i){var r=t.call(this)||this;return r._createPolyline(e,n,i),r}return n(e,t),e.prototype._createPolyline=function(t,e,n){var i=t.getItemLayout(e),r=new Ou({shape:{points:i}});this.add(r),this._updateCommonStl(t,e,n)},e.prototype.updateData=function(t,e,n){var i=t.hostModel;ih(this.childAt(0),{shape:{points:t.getItemLayout(e)}},i,e),this._updateCommonStl(t,e,n)},e.prototype._updateCommonStl=function(t,e,n){var i=this.childAt(0),r=t.getItemModel(e),o=n&&n.emphasisLineStyle,a=n&&n.focus,s=n&&n.blurScope,l=n&&n.emphasisDisabled;if(!n||t.hasItemOption){var u=r.getModel("emphasis");o=u.getModel("lineStyle").getLineStyle(),l=u.get("disabled"),a=u.get("focus"),s=u.get("blurScope")}i.useStyle(t.getItemVisual(e,"style")),i.style.fill=null,i.style.strokeNoScale=!0,i.ensureState("emphasis").style=o,Ol(this,a,s,l)},e.prototype.updateLayout=function(t,e){this.childAt(0).setShape("points",t.getItemLayout(e))},e}(Cr),_P=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e._lastFrame=0,e._lastFramePercent=0,e}return n(e,t),e.prototype.createLine=function(t,e,n){return new xP(t,e,n)},e.prototype._updateAnimationPoints=function(t,e){this._points=e;for(var n=[0],i=0,r=1;r<e.length;r++){var o=e[r-1],a=e[r];i+=Et(o,a),n.push(i)}if(0!==i){for(r=0;r<n.length;r++)n[r]/=i;this._offsets=n,this._length=i}else this._length=0},e.prototype._getLineLength=function(){return this._length},e.prototype._updateSymbolPosition=function(t){var e=t.__t,n=this._points,i=this._offsets,r=n.length;if(i){var o,a=this._lastFrame;if(e<this._lastFramePercent){for(o=Math.min(a+1,r-1);o>=0&&!(i[o]<=e);o--);o=Math.min(o,r-2)}else{for(o=a;o<r&&!(i[o]>e);o++);o=Math.min(o-1,r-2)}var s=(e-i[o])/(i[o+1]-i[o]),l=n[o],u=n[o+1];t.x=l[0]*(1-s)+s*u[0],t.y=l[1]*(1-s)+s*u[1];var h=u[0]-l[0],c=u[1]-l[1];t.rotation=-Math.atan2(c,h)-Math.PI/2,this._lastFrame=o,this._lastFramePercent=e,t.ignore=!1}},e}(mP),bP=function(){this.polyline=!1,this.curveness=0,this.segs=[]},wP=function(t){function e(e){var n=t.call(this,e)||this;return n._off=0,n.hoverDataIdx=-1,n}return n(e,t),e.prototype.reset=function(){this.notClear=!1,this._off=0},e.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},e.prototype.getDefaultShape=function(){return new bP},e.prototype.buildPath=function(t,e){var n,i=e.segs,r=e.curveness;if(e.polyline)for(n=this._off;n<i.length;){var o=i[n++];if(o>0){t.moveTo(i[n++],i[n++]);for(var a=1;a<o;a++)t.lineTo(i[n++],i[n++])}}else for(n=this._off;n<i.length;){var s=i[n++],l=i[n++],u=i[n++],h=i[n++];if(t.moveTo(s,l),r>0){var c=(s+u)/2-(l-h)*r,p=(l+h)/2-(u-s)*r;t.quadraticCurveTo(c,p,u,h)}else t.lineTo(u,h)}this.incremental&&(this._off=n,this.notClear=!0)},e.prototype.findDataIndex=function(t,e){var n=this.shape,i=n.segs,r=n.curveness,o=this.style.lineWidth;if(n.polyline)for(var a=0,s=0;s<i.length;){var l=i[s++];if(l>0)for(var u=i[s++],h=i[s++],c=1;c<l;c++){if(qa(u,h,p=i[s++],d=i[s++],o,t,e))return a}a++}else for(a=0,s=0;s<i.length;){u=i[s++],h=i[s++];var p=i[s++],d=i[s++];if(r>0){if($a(u,h,(u+p)/2-(h-d)*r,(h+d)/2-(p-u)*r,p,d,o,t,e))return a}else if(qa(u,h,p,d,o,t,e))return a;a++}return-1},e.prototype.contain=function(t,e){var n=this.transformCoordToLocal(t,e),i=this.getBoundingRect();return t=n[0],e=n[1],i.contain(t,e)?(this.hoverDataIdx=this.findDataIndex(t,e))>=0:(this.hoverDataIdx=-1,!1)},e.prototype.getBoundingRect=function(){var t=this._rect;if(!t){for(var e=this.shape.segs,n=1/0,i=1/0,r=-1/0,o=-1/0,a=0;a<e.length;){var s=e[a++],l=e[a++];n=Math.min(s,n),r=Math.max(s,r),i=Math.min(l,i),o=Math.max(l,o)}t=this._rect=new sr(n,i,r,o)}return t},e}(fs),SP=function(){function t(){this.group=new Cr}return t.prototype.updateData=function(t){this._clear();var e=this._create();e.setShape({segs:t.getLayout("linesPoints")}),this._setCommon(e,t)},t.prototype.incrementalPrepareUpdate=function(t){this.group.removeAll(),this._clear()},t.prototype.incrementalUpdate=function(t,e){var n=this._newAdded[0],i=e.getLayout("linesPoints"),r=n&&n.shape.segs;if(r&&r.length<2e4){var o=r.length,a=new Float32Array(o+i.length);a.set(r),a.set(i,o),n.setShape({segs:a})}else{this._newAdded=[];var s=this._create();s.incremental=!0,s.setShape({segs:i}),this._setCommon(s,e),s.__startIndex=t.start}},t.prototype.remove=function(){this._clear()},t.prototype.eachRendered=function(t){this._newAdded[0]&&t(this._newAdded[0])},t.prototype._create=function(){var t=new wP({cursor:"default"});return this._newAdded.push(t),this.group.add(t),t},t.prototype._setCommon=function(t,e,n){var i=e.hostModel;t.setShape({polyline:i.get("polyline"),curveness:i.get(["lineStyle","curveness"])}),t.useStyle(i.getModel("lineStyle").getLineStyle()),t.style.strokeNoScale=!0;var r=e.getVisual("style");r&&r.stroke&&t.setStyle("stroke",r.stroke),t.setStyle("fill",null);var o=Ws(t);o.seriesIndex=i.seriesIndex,t.on("mousemove",(function(e){o.dataIndex=null;var n=t.hoverDataIdx;n>0&&(o.dataIndex=n+t.__startIndex)}))},t.prototype._clear=function(){this._newAdded=[],this.group.removeAll()},t}(),MP={seriesType:"lines",plan:gg(),reset:function(t){var e=t.coordinateSystem;if(e){var n=t.get("polyline"),i=t.pipelineContext.large;return{progress:function(r,o){var a=[];if(i){var s=void 0,l=r.end-r.start;if(n){for(var u=0,h=r.start;h<r.end;h++)u+=t.getLineCoordsCount(h);s=new Float32Array(l+2*u)}else s=new Float32Array(4*l);var c=0,p=[];for(h=r.start;h<r.end;h++){var d=t.getLineCoords(h,a);n&&(s[c++]=d);for(var f=0;f<d;f++)p=e.dataToPoint(a[f],!1,p),s[c++]=p[0],s[c++]=p[1]}o.setLayout("linesPoints",s)}else for(h=r.start;h<r.end;h++){var g=o.getItemModel(h),y=(d=t.getLineCoords(h,a),[]);if(n)for(var v=0;v<d;v++)y.push(e.dataToPoint(a[v]));else{y[0]=e.dataToPoint(a[0]),y[1]=e.dataToPoint(a[1]);var m=g.get(["lineStyle","curveness"]);+m&&(y[2]=[(y[0][0]+y[1][0])/2-(y[0][1]-y[1][1])*m,(y[0][1]+y[1][1])/2-(y[1][0]-y[0][0])*m])}o.setItemLayout(h,y)}}}}}},IP=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){var i=t.getData(),r=this._updateLineDraw(i,t),o=t.get("zlevel"),a=t.get(["effect","trailLength"]),s=n.getZr(),l="svg"===s.painter.getType();l||s.painter.getLayer(o).clear(!0),null==this._lastZlevel||l||s.configLayer(this._lastZlevel,{motionBlur:!1}),this._showEffect(t)&&a>0&&(l||s.configLayer(o,{motionBlur:!0,lastFrameAlpha:Math.max(Math.min(a/10+.9,1),0)})),r.updateData(i);var u=t.get("clip",!0)&&aS(t.coordinateSystem,!1,t);u?this.group.setClipPath(u):this.group.removeClipPath(),this._lastZlevel=o,this._finished=!0},e.prototype.incrementalPrepareRender=function(t,e,n){var i=t.getData();this._updateLineDraw(i,t).incrementalPrepareUpdate(i),this._clearLayer(n),this._finished=!1},e.prototype.incrementalRender=function(t,e,n){this._lineDraw.incrementalUpdate(t,e.getData()),this._finished=t.end===e.getData().count()},e.prototype.eachRendered=function(t){this._lineDraw&&this._lineDraw.eachRendered(t)},e.prototype.updateTransform=function(t,e,n){var i=t.getData(),r=t.pipelineContext;if(!this._finished||r.large||r.progressiveRender)return{update:!0};var o=MP.reset(t,e,n);o.progress&&o.progress({start:0,end:i.count(),count:i.count()},i),this._lineDraw.updateLayout(),this._clearLayer(n)},e.prototype._updateLineDraw=function(t,e){var n=this._lineDraw,i=this._showEffect(e),r=!!e.get("polyline"),o=e.pipelineContext.large;return n&&i===this._hasEffet&&r===this._isPolyline&&o===this._isLargeDraw||(n&&n.remove(),n=this._lineDraw=o?new SP:new dA(r?i?_P:xP:i?mP:pA),this._hasEffet=i,this._isPolyline=r,this._isLargeDraw=o),this.group.add(n.group),n},e.prototype._showEffect=function(t){return!!t.get(["effect","show"])},e.prototype._clearLayer=function(t){var e=t.getZr();"svg"===e.painter.getType()||null==this._lastZlevel||e.painter.getLayer(this._lastZlevel).clear(!0)},e.prototype.remove=function(t,e){this._lineDraw&&this._lineDraw.remove(),this._lineDraw=null,this._clearLayer(e)},e.prototype.dispose=function(t,e){this.remove(t,e)},e.type="lines",e}(mg),TP="undefined"==typeof Uint32Array?Array:Uint32Array,CP="undefined"==typeof Float64Array?Array:Float64Array;function DP(t){var e=t.data;e&&e[0]&&e[0][0]&&e[0][0].coord&&(t.data=z(e,(function(t){var e={coords:[t[0].coord,t[1].coord]};return t[0].name&&(e.fromName=t[0].name),t[1].name&&(e.toName=t[1].name),D([e,t[0],t[1]])})))}var AP=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.visualStyleAccessPath="lineStyle",n.visualDrawType="stroke",n}return n(e,t),e.prototype.init=function(e){e.data=e.data||[],DP(e);var n=this._processFlatCoordsArray(e.data);this._flatCoords=n.flatCoords,this._flatCoordsOffset=n.flatCoordsOffset,n.flatCoords&&(e.data=new Float32Array(n.count)),t.prototype.init.apply(this,arguments)},e.prototype.mergeOption=function(e){if(DP(e),e.data){var n=this._processFlatCoordsArray(e.data);this._flatCoords=n.flatCoords,this._flatCoordsOffset=n.flatCoordsOffset,n.flatCoords&&(e.data=new Float32Array(n.count))}t.prototype.mergeOption.apply(this,arguments)},e.prototype.appendData=function(t){var e=this._processFlatCoordsArray(t.data);e.flatCoords&&(this._flatCoords?(this._flatCoords=gt(this._flatCoords,e.flatCoords),this._flatCoordsOffset=gt(this._flatCoordsOffset,e.flatCoordsOffset)):(this._flatCoords=e.flatCoords,this._flatCoordsOffset=e.flatCoordsOffset),t.data=new Float32Array(e.count)),this.getRawData().appendData(t.data)},e.prototype._getCoordsFromItemModel=function(t){var e=this.getData().getItemModel(t),n=e.option instanceof Array?e.option:e.getShallow("coords");return n},e.prototype.getLineCoordsCount=function(t){return this._flatCoordsOffset?this._flatCoordsOffset[2*t+1]:this._getCoordsFromItemModel(t).length},e.prototype.getLineCoords=function(t,e){if(this._flatCoordsOffset){for(var n=this._flatCoordsOffset[2*t],i=this._flatCoordsOffset[2*t+1],r=0;r<i;r++)e[r]=e[r]||[],e[r][0]=this._flatCoords[n+2*r],e[r][1]=this._flatCoords[n+2*r+1];return i}var o=this._getCoordsFromItemModel(t);for(r=0;r<o.length;r++)e[r]=e[r]||[],e[r][0]=o[r][0],e[r][1]=o[r][1];return o.length},e.prototype._processFlatCoordsArray=function(t){var e=0;if(this._flatCoords&&(e=this._flatCoords.length),j(t[0])){for(var n=t.length,i=new TP(n),r=new CP(n),o=0,a=0,s=0,l=0;l<n;){s++;var u=t[l++];i[a++]=o+e,i[a++]=u;for(var h=0;h<u;h++){var c=t[l++],p=t[l++];r[o++]=c,r[o++]=p}}return{flatCoordsOffset:new Uint32Array(i.buffer,0,a),flatCoords:r,count:s}}return{flatCoordsOffset:null,flatCoords:null,count:t.length}},e.prototype.getInitialData=function(t,e){var n=new Zm(["value"],this);return n.hasItemOption=!1,n.initData(t.data,[],(function(t,e,i,r){if(t instanceof Array)return NaN;n.hasItemOption=!0;var o=t.value;return null!=o?o instanceof Array?o[r]:o:void 0})),n},e.prototype.formatTooltip=function(t,e,n){var i=this.getData().getItemModel(t),r=i.get("name");if(r)return r;var o=i.get("fromName"),a=i.get("toName"),s=[];return null!=o&&s.push(o),null!=a&&s.push(a),Uf("nameValue",{name:s.join(" > ")})},e.prototype.preventIncremental=function(){return!!this.get(["effect","show"])},e.prototype.getProgressive=function(){var t=this.option.progressive;return null==t?this.option.large?1e4:this.get("progressive"):t},e.prototype.getProgressiveThreshold=function(){var t=this.option.progressiveThreshold;return null==t?this.option.large?2e4:this.get("progressiveThreshold"):t},e.prototype.getZLevelKey=function(){var t=this.getModel("effect"),e=t.get("trailLength");return this.getData().count()>this.getProgressiveThreshold()?this.id:t.get("show")&&e>0?e+"":""},e.type="series.lines",e.dependencies=["grid","polar","geo","calendar"],e.defaultOption={coordinateSystem:"geo",z:2,legendHoverLink:!0,xAxisIndex:0,yAxisIndex:0,symbol:["none","none"],symbolSize:[10,10],geoIndex:0,effect:{show:!1,period:4,constantSpeed:0,symbol:"circle",symbolSize:3,loop:!0,trailLength:.2},large:!1,largeThreshold:2e3,polyline:!1,clip:!0,label:{show:!1,position:"end"},lineStyle:{opacity:.5}},e}(ag);function kP(t){return t instanceof Array||(t=[t,t]),t}var LP={seriesType:"lines",reset:function(t){var e=kP(t.get("symbol")),n=kP(t.get("symbolSize")),i=t.getData();return i.setVisual("fromSymbol",e&&e[0]),i.setVisual("toSymbol",e&&e[1]),i.setVisual("fromSymbolSize",n&&n[0]),i.setVisual("toSymbolSize",n&&n[1]),{dataEach:i.hasItemOption?function(t,e){var n=t.getItemModel(e),i=kP(n.getShallow("symbol",!0)),r=kP(n.getShallow("symbolSize",!0));i[0]&&t.setItemVisual(e,"fromSymbol",i[0]),i[1]&&t.setItemVisual(e,"toSymbol",i[1]),r[0]&&t.setItemVisual(e,"fromSymbolSize",r[0]),r[1]&&t.setItemVisual(e,"toSymbolSize",r[1])}:null}}};var PP=function(){function t(){this.blurSize=30,this.pointSize=20,this.maxOpacity=1,this.minOpacity=0,this._gradientPixels={inRange:null,outOfRange:null};var t=h.createCanvas();this.canvas=t}return t.prototype.update=function(t,e,n,i,r,o){var a=this._getBrush(),s=this._getGradient(r,"inRange"),l=this._getGradient(r,"outOfRange"),u=this.pointSize+this.blurSize,h=this.canvas,c=h.getContext("2d"),p=t.length;h.width=e,h.height=n;for(var d=0;d<p;++d){var f=t[d],g=f[0],y=f[1],v=i(f[2]);c.globalAlpha=v,c.drawImage(a,g-u,y-u)}if(!h.width||!h.height)return h;for(var m=c.getImageData(0,0,h.width,h.height),x=m.data,_=0,b=x.length,w=this.minOpacity,S=this.maxOpacity-w;_<b;){v=x[_+3]/256;var M=4*Math.floor(255*v);if(v>0){var I=o(v)?s:l;v>0&&(v=v*S+w),x[_++]=I[M],x[_++]=I[M+1],x[_++]=I[M+2],x[_++]=I[M+3]*v*256}else _+=4}return c.putImageData(m,0,0),h},t.prototype._getBrush=function(){var t=this._brushCanvas||(this._brushCanvas=h.createCanvas()),e=this.pointSize+this.blurSize,n=2*e;t.width=n,t.height=n;var i=t.getContext("2d");return i.clearRect(0,0,n,n),i.shadowOffsetX=n,i.shadowBlur=this.blurSize,i.shadowColor="#000",i.beginPath(),i.arc(-e,e,this.pointSize,0,2*Math.PI,!0),i.closePath(),i.fill(),t},t.prototype._getGradient=function(t,e){for(var n=this._gradientPixels,i=n[e]||(n[e]=new Uint8ClampedArray(1024)),r=[0,0,0,0],o=0,a=0;a<256;a++)t[e](a/255,!0,r),i[o++]=r[0],i[o++]=r[1],i[o++]=r[2],i[o++]=r[3];return i},t}();function OP(t){var e=t.dimensions;return"lng"===e[0]&&"lat"===e[1]}var RP=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){var i;e.eachComponent("visualMap",(function(e){e.eachTargetSeries((function(n){n===t&&(i=e)}))})),this._progressiveEls=null,this.group.removeAll();var r=t.coordinateSystem;"cartesian2d"===r.type||"calendar"===r.type?this._renderOnCartesianAndCalendar(t,n,0,t.getData().count()):OP(r)&&this._renderOnGeo(r,t,i,n)},e.prototype.incrementalPrepareRender=function(t,e,n){this.group.removeAll()},e.prototype.incrementalRender=function(t,e,n,i){var r=e.coordinateSystem;r&&(OP(r)?this.render(e,n,i):(this._progressiveEls=[],this._renderOnCartesianAndCalendar(e,i,t.start,t.end,!0)))},e.prototype.eachRendered=function(t){zh(this._progressiveEls||this.group,t)},e.prototype._renderOnCartesianAndCalendar=function(t,e,n,i,r){var o,a,s,l,u=t.coordinateSystem;if(sS(u,"cartesian2d")){var h=u.getAxis("x"),c=u.getAxis("y");0,o=h.getBandWidth(),a=c.getBandWidth(),s=h.scale.getExtent(),l=c.scale.getExtent()}for(var p=this.group,d=t.getData(),f=t.getModel(["emphasis","itemStyle"]).getItemStyle(),g=t.getModel(["blur","itemStyle"]).getItemStyle(),y=t.getModel(["select","itemStyle"]).getItemStyle(),v=t.get(["itemStyle","borderRadius"]),m=Hh(t),x=t.getModel("emphasis"),_=x.get("focus"),b=x.get("blurScope"),w=x.get("disabled"),S=sS(u,"cartesian2d")?[d.mapDimension("x"),d.mapDimension("y"),d.mapDimension("value")]:[d.mapDimension("time"),d.mapDimension("value")],M=n;M<i;M++){var I=void 0,T=d.getItemVisual(M,"style");if(sS(u,"cartesian2d")){var C=d.get(S[0],M),D=d.get(S[1],M);if(isNaN(d.get(S[2],M))||C<s[0]||C>s[1]||D<l[0]||D>l[1])continue;var A=u.dataToPoint([C,D]);I=new Ts({shape:{x:Math.floor(Math.round(A[0])-o/2),y:Math.floor(Math.round(A[1])-a/2),width:Math.ceil(o),height:Math.ceil(a)},style:T})}else{if(isNaN(d.get(S[1],M)))continue;I=new Ts({z2:1,shape:u.dataToRect([d.get(S[0],M)]).contentShape,style:T})}if(d.hasItemOption){var k=d.getItemModel(M),L=k.getModel("emphasis");f=L.getModel("itemStyle").getItemStyle(),g=k.getModel(["blur","itemStyle"]).getItemStyle(),y=k.getModel(["select","itemStyle"]).getItemStyle(),v=k.get(["itemStyle","borderRadius"]),_=L.get("focus"),b=L.get("blurScope"),w=L.get("disabled"),m=Hh(k)}I.shape.r=v;var P=t.getRawValue(M),O="-";P&&null!=P[2]&&(O=P[2]+""),Wh(I,m,{labelFetcher:t,labelDataIndex:M,defaultOpacity:T.opacity,defaultText:O}),I.ensureState("emphasis").style=f,I.ensureState("blur").style=g,I.ensureState("select").style=y,Ol(I,_,b,w),I.incremental=r,r&&(I.states.emphasis.hoverLayer=!0),p.add(I),d.setItemGraphicEl(M,I),this._progressiveEls&&this._progressiveEls.push(I)}},e.prototype._renderOnGeo=function(t,e,n,i){var r=n.targetVisuals.inRange,o=n.targetVisuals.outOfRange,a=e.getData(),s=this._hmLayer||this._hmLayer||new PP;s.blurSize=e.get("blurSize"),s.pointSize=e.get("pointSize"),s.minOpacity=e.get("minOpacity"),s.maxOpacity=e.get("maxOpacity");var l=t.getViewRect().clone(),u=t.getRoamTransform();l.applyTransform(u);var h=Math.max(l.x,0),c=Math.max(l.y,0),p=Math.min(l.width+l.x,i.getWidth()),d=Math.min(l.height+l.y,i.getHeight()),f=p-h,g=d-c,y=[a.mapDimension("lng"),a.mapDimension("lat"),a.mapDimension("value")],v=a.mapArray(y,(function(e,n,i){var r=t.dataToPoint([e,n]);return r[0]-=h,r[1]-=c,r.push(i),r})),m=n.getExtent(),x="visualMap.continuous"===n.type?function(t,e){var n=t[1]-t[0];return e=[(e[0]-t[0])/n,(e[1]-t[0])/n],function(t){return t>=e[0]&&t<=e[1]}}(m,n.option.range):function(t,e,n){var i=t[1]-t[0],r=(e=z(e,(function(e){return{interval:[(e.interval[0]-t[0])/i,(e.interval[1]-t[0])/i]}}))).length,o=0;return function(t){var i;for(i=o;i<r;i++)if((a=e[i].interval)[0]<=t&&t<=a[1]){o=i;break}if(i===r)for(i=o-1;i>=0;i--){var a;if((a=e[i].interval)[0]<=t&&t<=a[1]){o=i;break}}return i>=0&&i<r&&n[i]}}(m,n.getPieceList(),n.option.selected);s.update(v,f,g,r.color.getNormalizer(),{inRange:r.color.getColorMapper(),outOfRange:o.color.getColorMapper()},x);var _=new xs({style:{width:f,height:g,x:h,y:c,image:s.canvas},silent:!0});this.group.add(_)},e.type="heatmap",e}(mg),NP=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.getInitialData=function(t,e){return nx(null,this,{generateCoord:"value"})},e.prototype.preventIncremental=function(){var t=ud.get(this.get("coordinateSystem"));if(t&&t.dimensions)return"lng"===t.dimensions[0]&&"lat"===t.dimensions[1]},e.type="series.heatmap",e.dependencies=["grid","geo","calendar"],e.defaultOption={coordinateSystem:"cartesian2d",z:2,geoIndex:0,blurSize:30,pointSize:20,maxOpacity:1,minOpacity:0,select:{itemStyle:{borderColor:"#212121"}}},e}(ag);var EP=["itemStyle","borderWidth"],zP=[{xy:"x",wh:"width",index:0,posDesc:["left","right"]},{xy:"y",wh:"height",index:1,posDesc:["top","bottom"]}],VP=new uu,BP=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){var i=this.group,r=t.getData(),o=this._data,a=t.coordinateSystem,s=a.getBaseAxis().isHorizontal(),l=a.master.getRect(),u={ecSize:{width:n.getWidth(),height:n.getHeight()},seriesModel:t,coordSys:a,coordSysExtent:[[l.x,l.x+l.width],[l.y,l.y+l.height]],isHorizontal:s,valueDim:zP[+s],categoryDim:zP[1-+s]};return r.diff(o).add((function(t){if(r.hasValue(t)){var e=ZP(r,t),n=FP(r,t,e,u),o=KP(r,u,n);r.setItemGraphicEl(t,o),i.add(o),eO(o,u,n)}})).update((function(t,e){var n=o.getItemGraphicEl(e);if(r.hasValue(t)){var a=ZP(r,t),s=FP(r,t,a,u),l=JP(r,s);n&&l!==n.__pictorialShapeStr&&(i.remove(n),r.setItemGraphicEl(t,null),n=null),n?function(t,e,n){var i=n.animationModel,r=n.dataIndex;ih(t.__pictorialBundle,{x:n.bundlePosition[0],y:n.bundlePosition[1]},i,r),n.symbolRepeat?HP(t,e,n,!0):YP(t,e,n,!0);UP(t,n,!0),XP(t,e,n,!0)}(n,u,s):n=KP(r,u,s,!0),r.setItemGraphicEl(t,n),n.__pictorialSymbolMeta=s,i.add(n),eO(n,u,s)}else i.remove(n)})).remove((function(t){var e=o.getItemGraphicEl(t);e&&$P(o,t,e.__pictorialSymbolMeta.animationModel,e)})).execute(),this._data=r,this.group},e.prototype.remove=function(t,e){var n=this.group,i=this._data;t.get("animation")?i&&i.eachItemGraphicEl((function(e){$P(i,Ws(e).dataIndex,t,e)})):n.removeAll()},e.type="pictorialBar",e}(mg);function FP(t,e,n,i){var r=t.getItemLayout(e),o=n.get("symbolRepeat"),a=n.get("symbolClip"),s=n.get("symbolPosition")||"start",l=(n.get("symbolRotate")||0)*Math.PI/180||0,u=n.get("symbolPatternSize")||2,h=n.isAnimationEnabled(),c={dataIndex:e,layout:r,itemModel:n,symbolType:t.getItemVisual(e,"symbol")||"circle",style:t.getItemVisual(e,"style"),symbolClip:a,symbolRepeat:o,symbolRepeatDirection:n.get("symbolRepeatDirection"),symbolPatternSize:u,rotation:l,animationModel:h?n:null,hoverScale:h&&n.get(["emphasis","scale"]),z2:n.getShallow("z",!0)||0};!function(t,e,n,i,r){var o,a=i.valueDim,s=t.get("symbolBoundingData"),l=i.coordSys.getOtherAxis(i.coordSys.getBaseAxis()),u=l.toGlobalCoord(l.dataToCoord(0)),h=1-+(n[a.wh]<=0);if(Y(s)){var c=[GP(l,s[0])-u,GP(l,s[1])-u];c[1]<c[0]&&c.reverse(),o=c[h]}else o=null!=s?GP(l,s)-u:e?i.coordSysExtent[a.index][h]-u:n[a.wh];r.boundingLength=o,e&&(r.repeatCutLength=n[a.wh]);r.pxSign=o>0?1:-1}(n,o,r,i,c),function(t,e,n,i,r,o,a,s,l,u){var h,c=l.valueDim,p=l.categoryDim,d=Math.abs(n[p.wh]),f=t.getItemVisual(e,"symbolSize");h=Y(f)?f.slice():null==f?["100%","100%"]:[f,f];h[p.index]=Er(h[p.index],d),h[c.index]=Er(h[c.index],i?d:Math.abs(o)),u.symbolSize=h,(u.symbolScale=[h[0]/s,h[1]/s])[c.index]*=(l.isHorizontal?-1:1)*a}(t,e,r,o,0,c.boundingLength,c.pxSign,u,i,c),function(t,e,n,i,r){var o=t.get(EP)||0;o&&(VP.attr({scaleX:e[0],scaleY:e[1],rotation:n}),VP.updateTransform(),o/=VP.getLineScale(),o*=e[i.valueDim.index]);r.valueLineWidth=o||0}(n,c.symbolScale,l,i,c);var p=c.symbolSize,d=Py(n.get("symbolOffset"),p);return function(t,e,n,i,r,o,a,s,l,u,h,c){var p=h.categoryDim,d=h.valueDim,f=c.pxSign,g=Math.max(e[d.index]+s,0),y=g;if(i){var v=Math.abs(l),m=it(t.get("symbolMargin"),"15%")+"",x=!1;m.lastIndexOf("!")===m.length-1&&(x=!0,m=m.slice(0,m.length-1));var _=Er(m,e[d.index]),b=Math.max(g+2*_,0),w=x?0:2*_,S=eo(i),M=S?i:nO((v+w)/b);b=g+2*(_=(v-M*g)/2/(x?M:Math.max(M-1,1))),w=x?0:2*_,S||"fixed"===i||(M=u?nO((Math.abs(u)+w)/b):0),y=M*b-w,c.repeatTimes=M,c.symbolMargin=_}var I=f*(y/2),T=c.pathPosition=[];T[p.index]=n[p.wh]/2,T[d.index]="start"===a?I:"end"===a?l-I:l/2,o&&(T[0]+=o[0],T[1]+=o[1]);var C=c.bundlePosition=[];C[p.index]=n[p.xy],C[d.index]=n[d.xy];var D=c.barRectShape=A({},n);D[d.wh]=f*Math.max(Math.abs(n[d.wh]),Math.abs(T[d.index]+I)),D[p.wh]=n[p.wh];var k=c.clipShape={};k[p.xy]=-n[p.xy],k[p.wh]=h.ecSize[p.wh],k[d.xy]=0,k[d.wh]=n[d.wh]}(n,p,r,o,0,d,s,c.valueLineWidth,c.boundingLength,c.repeatCutLength,i,c),c}function GP(t,e){return t.toGlobalCoord(t.dataToCoord(t.scale.parse(e)))}function WP(t){var e=t.symbolPatternSize,n=ky(t.symbolType,-e/2,-e/2,e,e);return n.attr({culling:!0}),"image"!==n.type&&n.setStyle({strokeNoScale:!0}),n}function HP(t,e,n,i){var r=t.__pictorialBundle,o=n.symbolSize,a=n.valueLineWidth,s=n.pathPosition,l=e.valueDim,u=n.repeatTimes||0,h=0,c=o[e.valueDim.index]+a+2*n.symbolMargin;for(QP(t,(function(t){t.__pictorialAnimationIndex=h,t.__pictorialRepeatTimes=u,h<u?tO(t,null,f(h),n,i):tO(t,null,{scaleX:0,scaleY:0},n,i,(function(){r.remove(t)})),h++}));h<u;h++){var p=WP(n);p.__pictorialAnimationIndex=h,p.__pictorialRepeatTimes=u,r.add(p);var d=f(h);tO(p,{x:d.x,y:d.y,scaleX:0,scaleY:0},{scaleX:d.scaleX,scaleY:d.scaleY,rotation:d.rotation},n,i)}function f(t){var e=s.slice(),i=n.pxSign,r=t;return("start"===n.symbolRepeatDirection?i>0:i<0)&&(r=u-1-t),e[l.index]=c*(r-u/2+.5)+s[l.index],{x:e[0],y:e[1],scaleX:n.symbolScale[0],scaleY:n.symbolScale[1],rotation:n.rotation}}}function YP(t,e,n,i){var r=t.__pictorialBundle,o=t.__pictorialMainPath;o?tO(o,null,{x:n.pathPosition[0],y:n.pathPosition[1],scaleX:n.symbolScale[0],scaleY:n.symbolScale[1],rotation:n.rotation},n,i):(o=t.__pictorialMainPath=WP(n),r.add(o),tO(o,{x:n.pathPosition[0],y:n.pathPosition[1],scaleX:0,scaleY:0,rotation:n.rotation},{scaleX:n.symbolScale[0],scaleY:n.symbolScale[1]},n,i))}function UP(t,e,n){var i=A({},e.barRectShape),r=t.__pictorialBarRect;r?tO(r,null,{shape:i},e,n):((r=t.__pictorialBarRect=new Ts({z2:2,shape:i,silent:!0,style:{stroke:"transparent",fill:"transparent",lineWidth:0}})).disableMorphing=!0,t.add(r))}function XP(t,e,n,i){if(n.symbolClip){var r=t.__pictorialClipPath,o=A({},n.clipShape),a=e.valueDim,s=n.animationModel,l=n.dataIndex;if(r)ih(r,{shape:o},s,l);else{o[a.wh]=0,r=new Ts({shape:o}),t.__pictorialBundle.setClipPath(r),t.__pictorialClipPath=r;var u={};u[a.wh]=n.clipShape[a.wh],Vh[i?"updateProps":"initProps"](r,{shape:u},s,l)}}}function ZP(t,e){var n=t.getItemModel(e);return n.getAnimationDelayParams=jP,n.isAnimationEnabled=qP,n}function jP(t){return{index:t.__pictorialAnimationIndex,count:t.__pictorialRepeatTimes}}function qP(){return this.parentModel.isAnimationEnabled()&&!!this.getShallow("animation")}function KP(t,e,n,i){var r=new Cr,o=new Cr;return r.add(o),r.__pictorialBundle=o,o.x=n.bundlePosition[0],o.y=n.bundlePosition[1],n.symbolRepeat?HP(r,e,n):YP(r,0,n),UP(r,n,i),XP(r,e,n,i),r.__pictorialShapeStr=JP(t,n),r.__pictorialSymbolMeta=n,r}function $P(t,e,n,i){var r=i.__pictorialBarRect;r&&r.removeTextContent();var o=[];QP(i,(function(t){o.push(t)})),i.__pictorialMainPath&&o.push(i.__pictorialMainPath),i.__pictorialClipPath&&(n=null),E(o,(function(t){ah(t,{scaleX:0,scaleY:0},n,e,(function(){i.parent&&i.parent.remove(i)}))})),t.setItemGraphicEl(e,null)}function JP(t,e){return[t.getItemVisual(e.dataIndex,"symbol")||"none",!!e.symbolRepeat,!!e.symbolClip].join(":")}function QP(t,e,n){E(t.__pictorialBundle.children(),(function(i){i!==t.__pictorialBarRect&&e.call(n,i)}))}function tO(t,e,n,i,r,o){e&&t.attr(e),i.symbolClip&&!r?n&&t.attr(n):n&&Vh[r?"updateProps":"initProps"](t,n,i.animationModel,i.dataIndex,o)}function eO(t,e,n){var i=n.dataIndex,r=n.itemModel,o=r.getModel("emphasis"),a=o.getModel("itemStyle").getItemStyle(),s=r.getModel(["blur","itemStyle"]).getItemStyle(),l=r.getModel(["select","itemStyle"]).getItemStyle(),u=r.getShallow("cursor"),h=o.get("focus"),c=o.get("blurScope"),p=o.get("scale");QP(t,(function(t){if(t instanceof xs){var e=t.style;t.useStyle(A({image:e.image,x:e.x,y:e.y,width:e.width,height:e.height},n.style))}else t.useStyle(n.style);var i=t.ensureState("emphasis");i.style=a,p&&(i.scaleX=1.1*t.scaleX,i.scaleY=1.1*t.scaleY),t.ensureState("blur").style=s,t.ensureState("select").style=l,u&&(t.cursor=u),t.z2=n.z2}));var d=e.valueDim.posDesc[+(n.boundingLength>0)];Wh(t.__pictorialBarRect,Hh(r),{labelFetcher:e.seriesModel,labelDataIndex:i,defaultText:Fw(e.seriesModel.getData(),i),inheritColor:n.style.fill,defaultOpacity:n.style.opacity,defaultOutsidePosition:d}),Ol(t,h,c,o.get("disabled"))}function nO(t){var e=Math.round(t);return Math.abs(t-e)<1e-4?e:Math.ceil(t)}var iO=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.hasSymbolVisual=!0,n.defaultSymbol="roundRect",n}return n(e,t),e.prototype.getInitialData=function(e){return e.stack=null,t.prototype.getInitialData.apply(this,arguments)},e.type="series.pictorialBar",e.dependencies=["grid"],e.defaultOption=gc(SS.defaultOption,{symbol:"circle",symbolSize:null,symbolRotate:null,symbolPosition:null,symbolOffset:null,symbolMargin:null,symbolRepeat:!1,symbolRepeatDirection:"end",symbolClip:!1,symbolBoundingData:null,symbolPatternSize:400,barGap:"-100%",progressive:0,emphasis:{scale:!1},select:{itemStyle:{borderColor:"#212121"}}}),e}(SS);var rO=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n._layers=[],n}return n(e,t),e.prototype.render=function(t,e,n){var i=t.getData(),r=this,o=this.group,a=t.getLayerSeries(),s=i.getLayout("layoutInfo"),l=s.rect,u=s.boundaryGap;function h(t){return t.name}o.x=0,o.y=l.y+u[0];var c=new Sm(this._layersSeries||[],a,h,h),p=[];function d(e,n,s){var l=r._layers;if("remove"!==e){for(var u,h,c=[],d=[],f=a[n].indices,g=0;g<f.length;g++){var y=i.getItemLayout(f[g]),v=y.x,m=y.y0,x=y.y;c.push(v,m),d.push(v,m+x),u=i.getItemVisual(f[g],"style")}var _=i.getItemLayout(f[0]),b=t.getModel("label").get("margin"),w=t.getModel("emphasis");if("add"===e){var S=p[n]=new Cr;h=new iS({shape:{points:c,stackedOnPoints:d,smooth:.4,stackedOnSmooth:.4,smoothConstraint:!1},z2:0}),S.add(h),o.add(S),t.isAnimationEnabled()&&h.setClipPath(function(t,e,n){var i=new Ts({shape:{x:t.x-10,y:t.y-10,width:0,height:t.height+20}});return rh(i,{shape:{x:t.x-50,width:t.width+100,height:t.height+20}},e,n),i}(h.getBoundingRect(),t,(function(){h.removeClipPath()})))}else{S=l[s];h=S.childAt(0),o.add(S),p[n]=S,ih(h,{shape:{points:c,stackedOnPoints:d}},t),uh(h)}Wh(h,Hh(t),{labelDataIndex:f[g-1],defaultText:i.getName(f[g-1]),inheritColor:u.fill},{normal:{verticalAlign:"middle"}}),h.setTextConfig({position:null,local:!0});var M=h.getTextContent();M&&(M.x=_.x-b,M.y=_.y0+_.y/2),h.useStyle(u),i.setItemGraphicEl(n,h),zl(h,t),Ol(h,w.get("focus"),w.get("blurScope"),w.get("disabled"))}else o.remove(l[n])}c.add(W(d,this,"add")).update(W(d,this,"update")).remove(W(d,this,"remove")).execute(),this._layersSeries=a,this._layers=p},e.type="themeRiver",e}(mg);var oO=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(e){t.prototype.init.apply(this,arguments),this.legendVisualProvider=new lM(W(this.getData,this),W(this.getRawData,this))},e.prototype.fixData=function(t){var e=t.length,n={},i=Lo(t,(function(t){return n.hasOwnProperty(t[0]+"")||(n[t[0]+""]=-1),t[2]})),r=[];i.buckets.each((function(t,e){r.push({name:e,dataList:t})}));for(var o=r.length,a=0;a<o;++a){for(var s=r[a].name,l=0;l<r[a].dataList.length;++l){var u=r[a].dataList[l][0]+"";n[u]=a}for(var u in n)n.hasOwnProperty(u)&&n[u]!==a&&(n[u]=a,t[e]=[u,0,s],e++)}return t},e.prototype.getInitialData=function(t,e){for(var n=this.getReferringComponents("singleAxis",Co).models[0].get("type"),i=B(t.data,(function(t){return void 0!==t[2]})),r=this.fixData(i||[]),o=[],a=this.nameMap=ft(),s=0,l=0;l<r.length;++l)o.push(r[l][2]),a.get(r[l][2])||(a.set(r[l][2],s),s++);var u=jm(r,{coordDimensions:["single"],dimensionsDefine:[{name:"time",type:Tm(n)},{name:"value",type:"float"},{name:"name",type:"ordinal"}],encodeDefine:{single:0,value:1,itemName:2}}).dimensions,h=new Zm(u,this);return h.initData(r),h},e.prototype.getLayerSeries=function(){for(var t=this.getData(),e=t.count(),n=[],i=0;i<e;++i)n[i]=i;var r=t.mapDimension("single"),o=Lo(n,(function(e){return t.get("name",e)})),a=[];return o.buckets.each((function(e,n){e.sort((function(e,n){return t.get(r,e)-t.get(r,n)})),a.push({name:n,indices:e})})),a},e.prototype.getAxisTooltipData=function(t,e,n){Y(t)||(t=t?[t]:[]);for(var i,r=this.getData(),o=this.getLayerSeries(),a=[],s=o.length,l=0;l<s;++l){for(var u=Number.MAX_VALUE,h=-1,c=o[l].indices.length,p=0;p<c;++p){var d=r.get(t[0],o[l].indices[p]),f=Math.abs(d-e);f<=u&&(i=d,u=f,h=o[l].indices[p])}a.push(h)}return{dataIndices:a,nestestValue:i}},e.prototype.formatTooltip=function(t,e,n){var i=this.getData();return Uf("nameValue",{name:i.getName(t),value:i.get(i.mapDimension("value"),t)})},e.type="series.themeRiver",e.dependencies=["singleAxis"],e.defaultOption={z:2,colorBy:"data",coordinateSystem:"singleAxis",boundaryGap:["10%","10%"],singleAxisIndex:0,animationEasing:"linear",label:{margin:4,show:!0,position:"left",fontSize:11},emphasis:{label:{show:!0}}},e}(ag);function aO(t,e){t.eachSeriesByType("themeRiver",(function(t){var e=t.getData(),n=t.coordinateSystem,i={},r=n.getRect();i.rect=r;var o=t.get("boundaryGap"),a=n.getAxis();(i.boundaryGap=o,"horizontal"===a.orient)?(o[0]=Er(o[0],r.height),o[1]=Er(o[1],r.height),sO(e,t,r.height-o[0]-o[1])):(o[0]=Er(o[0],r.width),o[1]=Er(o[1],r.width),sO(e,t,r.width-o[0]-o[1]));e.setLayout("layoutInfo",i)}))}function sO(t,e,n){if(t.count())for(var i,r=e.coordinateSystem,o=e.getLayerSeries(),a=t.mapDimension("single"),s=t.mapDimension("value"),l=z(o,(function(e){return z(e.indices,(function(e){var n=r.dataToPoint(t.get(a,e));return n[1]=t.get(s,e),n}))})),u=function(t){for(var e=t.length,n=t[0].length,i=[],r=[],o=0,a=0;a<n;++a){for(var s=0,l=0;l<e;++l)s+=t[l][a][1];s>o&&(o=s),i.push(s)}for(var u=0;u<n;++u)r[u]=(o-i[u])/2;o=0;for(var h=0;h<n;++h){var c=i[h]+r[h];c>o&&(o=c)}return{y0:r,max:o}}(l),h=u.y0,c=n/u.max,p=o.length,d=o[0].indices.length,f=0;f<d;++f){i=h[f]*c,t.setItemLayout(o[0].indices[f],{layerIndex:0,x:l[0][f][0],y0:i,y:l[0][f][1]*c});for(var g=1;g<p;++g)i+=l[g-1][f][1]*c,t.setItemLayout(o[g].indices[f],{layerIndex:g,x:l[g][f][0],y0:i,y:l[g][f][1]*c})}}var lO=function(t){function e(e,n,i,r){var o=t.call(this)||this;o.z2=2,o.textConfig={inside:!0},Ws(o).seriesIndex=n.seriesIndex;var a=new As({z2:4,silent:e.getModel().get(["label","silent"])});return o.setTextContent(a),o.updateData(!0,e,n,i,r),o}return n(e,t),e.prototype.updateData=function(t,e,n,i,r){this.node=e,e.piece=this,n=n||this._seriesModel,i=i||this._ecModel;var o=this;Ws(o).dataIndex=e.dataIndex;var a=e.getModel(),s=a.getModel("emphasis"),l=e.getLayout(),u=A({},l);u.label=null;var h=e.getVisual("style");h.lineJoin="bevel";var c=e.getVisual("decal");c&&(h.decal=nv(c,r));var p=rM(a.getModel("itemStyle"),u,!0);A(u,p),E(js,(function(t){var e=o.ensureState(t),n=a.getModel([t,"itemStyle"]);e.style=n.getItemStyle();var i=rM(n,u);i&&(e.shape=i)})),t?(o.setShape(u),o.shape.r=l.r0,ih(o,{shape:{r:l.r}},n,e.dataIndex)):(ih(o,{shape:u},n),uh(o)),o.useStyle(h),this._updateLabel(n);var d=a.getShallow("cursor");d&&o.attr("cursor",d),this._seriesModel=n||this._seriesModel,this._ecModel=i||this._ecModel;var f=s.get("focus");Ol(this,"ancestor"===f?e.getAncestorsIndices():"descendant"===f?e.getDescendantIndices():f,s.get("blurScope"),s.get("disabled"))},e.prototype._updateLabel=function(t){var e=this,n=this.node.getModel(),i=n.getModel("label"),r=this.node.getLayout(),o=r.endAngle-r.startAngle,a=(r.startAngle+r.endAngle)/2,s=Math.cos(a),l=Math.sin(a),u=this,h=u.getTextContent(),c=this.node.dataIndex,p=i.get("minAngle")/180*Math.PI,d=i.get("show")&&!(null!=p&&Math.abs(o)<p);function f(t,e){var n=t.get(e);return null==n?i.get(e):n}h.ignore=!d,E(qs,(function(i){var p="normal"===i?n.getModel("label"):n.getModel([i,"label"]),d="normal"===i,g=d?h:h.ensureState(i),y=t.getFormattedLabel(c,i);d&&(y=y||e.node.name),g.style=Yh(p,{},null,"normal"!==i,!0),y&&(g.style.text=y);var v=p.get("show");null==v||d||(g.ignore=!v);var m,x=f(p,"position"),_=d?u:u.states[i],b=_.style.fill;_.textConfig={outsideFill:"inherit"===p.get("color")?b:null,inside:"outside"!==x};var w=f(p,"distance")||0,S=f(p,"align");"outside"===x?(m=r.r+w,S=a>Math.PI/2?"right":"left"):S&&"center"!==S?"left"===S?(m=r.r0+w,a>Math.PI/2&&(S="right")):"right"===S&&(m=r.r-w,a>Math.PI/2&&(S="left")):(m=o===2*Math.PI&&0===r.r0?0:(r.r+r.r0)/2,S="center"),g.style.align=S,g.style.verticalAlign=f(p,"verticalAlign")||"middle",g.x=m*s+r.cx,g.y=m*l+r.cy;var M=f(p,"rotate"),I=0;"radial"===M?(I=-a)<-Math.PI/2&&(I+=Math.PI):"tangential"===M?(I=Math.PI/2-a)>Math.PI/2?I-=Math.PI:I<-Math.PI/2&&(I+=Math.PI):j(M)&&(I=M*Math.PI/180),g.rotation=I})),h.dirtyStyle()},e}(Tu),uO="sunburstRootToNode",hO="sunburstHighlight";var cO=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n,i){var r=this;this.seriesModel=t,this.api=n,this.ecModel=e;var o=t.getData(),a=o.tree.root,s=t.getViewRoot(),l=this.group,u=t.get("renderLabelForZeroData"),h=[];s.eachNode((function(t){h.push(t)}));var c=this._oldChildren||[];!function(i,r){if(0===i.length&&0===r.length)return;function s(t){return t.getId()}function h(s,h){!function(i,r){u||!i||i.getValue()||(i=null);if(i!==a&&r!==a)if(r&&r.piece)i?(r.piece.updateData(!1,i,t,e,n),o.setItemGraphicEl(i.dataIndex,r.piece)):function(t){if(!t)return;t.piece&&(l.remove(t.piece),t.piece=null)}(r);else if(i){var s=new lO(i,t,e,n);l.add(s),o.setItemGraphicEl(i.dataIndex,s)}}(null==s?null:i[s],null==h?null:r[h])}new Sm(r,i,s,s).add(h).update(h).remove(H(h,null)).execute()}(h,c),function(i,o){o.depth>0?(r.virtualPiece?r.virtualPiece.updateData(!1,i,t,e,n):(r.virtualPiece=new lO(i,t,e,n),l.add(r.virtualPiece)),o.piece.off("click"),r.virtualPiece.on("click",(function(t){r._rootToNode(o.parentNode)}))):r.virtualPiece&&(l.remove(r.virtualPiece),r.virtualPiece=null)}(a,s),this._initEvents(),this._oldChildren=h},e.prototype._initEvents=function(){var t=this;this.group.off("click"),this.group.on("click",(function(e){var n=!1;t.seriesModel.getViewRoot().eachNode((function(i){if(!n&&i.piece&&i.piece===e.target){var r=i.getModel().get("nodeClick");if("rootToNode"===r)t._rootToNode(i);else if("link"===r){var o=i.getModel(),a=o.get("link");if(a)pp(a,o.get("target",!0)||"_blank")}n=!0}}))}))},e.prototype._rootToNode=function(t){t!==this.seriesModel.getViewRoot()&&this.api.dispatchAction({type:uO,from:this.uid,seriesId:this.seriesModel.id,targetNode:t})},e.prototype.containPoint=function(t,e){var n=e.getData().getItemLayout(0);if(n){var i=t[0]-n.cx,r=t[1]-n.cy,o=Math.sqrt(i*i+r*r);return o<=n.r&&o>=n.r0}},e.type="sunburst",e}(mg),pO=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.ignoreStyleOnData=!0,n}return n(e,t),e.prototype.getInitialData=function(t,e){var n={name:t.name,children:t.data};dO(n);var i=this._levelModels=z(t.levels||[],(function(t){return new pc(t,this,e)}),this),r=CC.createTree(n,this,(function(t){t.wrapMethod("getItemModel",(function(t,e){var n=r.getNodeByDataIndex(e),o=i[n.depth];return o&&(t.parentModel=o),t}))}));return r.data},e.prototype.optionUpdated=function(){this.resetViewRoot()},e.prototype.getDataParams=function(e){var n=t.prototype.getDataParams.apply(this,arguments),i=this.getData().tree.getNodeByDataIndex(e);return n.treePathInfo=LC(i,this),n},e.prototype.getLevelModel=function(t){return this._levelModels&&this._levelModels[t.depth]},e.prototype.getViewRoot=function(){return this._viewRoot},e.prototype.resetViewRoot=function(t){t?this._viewRoot=t:t=this._viewRoot;var e=this.getRawData().tree.root;t&&(t===e||e.contains(t))||(this._viewRoot=e)},e.prototype.enableAriaDecal=function(){zC(this)},e.type="series.sunburst",e.defaultOption={z:2,center:["50%","50%"],radius:[0,"75%"],clockwise:!0,startAngle:90,minAngle:0,stillShowZeroSum:!0,nodeClick:"rootToNode",renderLabelForZeroData:!1,label:{rotate:"radial",show:!0,opacity:1,align:"center",position:"inside",distance:5,silent:!0},itemStyle:{borderWidth:1,borderColor:"white",borderType:"solid",shadowBlur:0,shadowColor:"rgba(0, 0, 0, 0.2)",shadowOffsetX:0,shadowOffsetY:0,opacity:1},emphasis:{focus:"descendant"},blur:{itemStyle:{opacity:.2},label:{opacity:.1}},animationType:"expansion",animationDuration:1e3,animationDurationUpdate:500,data:[],sort:"desc"},e}(ag);function dO(t){var e=0;E(t.children,(function(t){dO(t);var n=t.value;Y(n)&&(n=n[0]),e+=n}));var n=t.value;Y(n)&&(n=n[0]),(null==n||isNaN(n))&&(n=e),n<0&&(n=0),Y(t.value)?t.value[0]=n:t.value=n}var fO=Math.PI/180;function gO(t,e,n){e.eachSeriesByType(t,(function(t){var e=t.get("center"),i=t.get("radius");Y(i)||(i=[0,i]),Y(e)||(e=[e,e]);var r=n.getWidth(),o=n.getHeight(),a=Math.min(r,o),s=Er(e[0],r),l=Er(e[1],o),u=Er(i[0],a/2),h=Er(i[1],a/2),c=-t.get("startAngle")*fO,p=t.get("minAngle")*fO,d=t.getData().tree.root,f=t.getViewRoot(),g=f.depth,y=t.get("sort");null!=y&&yO(f,y);var v=0;E(f.children,(function(t){!isNaN(t.getValue())&&v++}));var m=f.getValue(),x=Math.PI/(m||v)*2,_=f.depth>0,b=f.height-(_?-1:1),w=(h-u)/(b||1),S=t.get("clockwise"),M=t.get("stillShowZeroSum"),I=S?1:-1,T=function(e,n){if(e){var i=n;if(e!==d){var r=e.getValue(),o=0===m&&M?x:r*x;o<p&&(o=p),i=n+I*o;var h=e.depth-g-(_?-1:1),c=u+w*h,f=u+w*(h+1),y=t.getLevelModel(e);if(y){var v=y.get("r0",!0),b=y.get("r",!0),C=y.get("radius",!0);null!=C&&(v=C[0],b=C[1]),null!=v&&(c=Er(v,a/2)),null!=b&&(f=Er(b,a/2))}e.setLayout({angle:o,startAngle:n,endAngle:i,clockwise:S,cx:s,cy:l,r0:c,r:f})}if(e.children&&e.children.length){var D=0;E(e.children,(function(t){D+=T(t,n+D)}))}return i-n}};if(_){var C=u,D=u+w,A=2*Math.PI;d.setLayout({angle:A,startAngle:c,endAngle:c+A,clockwise:S,cx:s,cy:l,r0:C,r:D})}T(f,c)}))}function yO(t,e){var n=t.children||[];t.children=function(t,e){if(U(e)){var n=z(t,(function(t,e){var n=t.getValue();return{params:{depth:t.depth,height:t.height,dataIndex:t.dataIndex,getValue:function(){return n}},index:e}}));return n.sort((function(t,n){return e(t.params,n.params)})),z(n,(function(e){return t[e.index]}))}var i="asc"===e;return t.sort((function(t,e){var n=(t.getValue()-e.getValue())*(i?1:-1);return 0===n?(t.dataIndex-e.dataIndex)*(i?-1:1):n}))}(n,e),n.length&&E(t.children,(function(t){yO(t,e)}))}function vO(t){var e={};t.eachSeriesByType("sunburst",(function(t){var n=t.getData(),i=n.tree;i.eachNode((function(r){var o=r.getModel().getModel("itemStyle").getItemStyle();o.fill||(o.fill=function(t,n,i){for(var r=t;r&&r.depth>1;)r=r.parentNode;var o=n.getColorFromPalette(r.name||r.dataIndex+"",e);return t.depth>1&&X(o)&&(o=Sn(o,(t.depth-1)/(i-1)*.5)),o}(r,t,i.root.height)),A(n.ensureUniqueItemVisual(r.dataIndex,"style"),o)}))}))}var mO={color:"fill",borderColor:"stroke"},xO={symbol:1,symbolSize:1,symbolKeepAspect:1,legendIcon:1,visualMeta:1,liftZ:1,decal:1},_O=So(),bO=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.optionUpdated=function(){this.currentZLevel=this.get("zlevel",!0),this.currentZ=this.get("z",!0)},e.prototype.getInitialData=function(t,e){return nx(null,this)},e.prototype.getDataParams=function(e,n,i){var r=t.prototype.getDataParams.call(this,e,n);return i&&(r.info=_O(i).info),r},e.type="series.custom",e.dependencies=["grid","polar","geo","singleAxis","calendar"],e.defaultOption={coordinateSystem:"cartesian2d",z:2,legendHoverLink:!0,clip:!1},e}(ag);function wO(t,e){return e=e||[0,0],z(["x","y"],(function(n,i){var r=this.getAxis(n),o=e[i],a=t[i]/2;return"category"===r.type?r.getBandWidth():Math.abs(r.dataToCoord(o-a)-r.dataToCoord(o+a))}),this)}function SO(t,e){return e=e||[0,0],z([0,1],(function(n){var i=e[n],r=t[n]/2,o=[],a=[];return o[n]=i-r,a[n]=i+r,o[1-n]=a[1-n]=e[1-n],Math.abs(this.dataToPoint(o)[n]-this.dataToPoint(a)[n])}),this)}function MO(t,e){var n=this.getAxis(),i=e instanceof Array?e[0]:e,r=(t instanceof Array?t[0]:t)/2;return"category"===n.type?n.getBandWidth():Math.abs(n.dataToCoord(i-r)-n.dataToCoord(i+r))}function IO(t,e){return e=e||[0,0],z(["Radius","Angle"],(function(n,i){var r=this["get"+n+"Axis"](),o=e[i],a=t[i]/2,s="category"===r.type?r.getBandWidth():Math.abs(r.dataToCoord(o-a)-r.dataToCoord(o+a));return"Angle"===n&&(s=s*Math.PI/180),s}),this)}function TO(t,e,n,i){return t&&(t.legacy||!1!==t.legacy&&!n&&!i&&"tspan"!==e&&("text"===e||mt(t,"text")))}function CO(t,e,n){var i,r,o,a=t;if("text"===e)o=a;else{o={},mt(a,"text")&&(o.text=a.text),mt(a,"rich")&&(o.rich=a.rich),mt(a,"textFill")&&(o.fill=a.textFill),mt(a,"textStroke")&&(o.stroke=a.textStroke),mt(a,"fontFamily")&&(o.fontFamily=a.fontFamily),mt(a,"fontSize")&&(o.fontSize=a.fontSize),mt(a,"fontStyle")&&(o.fontStyle=a.fontStyle),mt(a,"fontWeight")&&(o.fontWeight=a.fontWeight),r={type:"text",style:o,silent:!0},i={};var s=mt(a,"textPosition");n?i.position=s?a.textPosition:"inside":s&&(i.position=a.textPosition),mt(a,"textPosition")&&(i.position=a.textPosition),mt(a,"textOffset")&&(i.offset=a.textOffset),mt(a,"textRotation")&&(i.rotation=a.textRotation),mt(a,"textDistance")&&(i.distance=a.textDistance)}return DO(o,t),E(o.rich,(function(t){DO(t,t)})),{textConfig:i,textContent:r}}function DO(t,e){e&&(e.font=e.textFont||e.font,mt(e,"textStrokeWidth")&&(t.lineWidth=e.textStrokeWidth),mt(e,"textAlign")&&(t.align=e.textAlign),mt(e,"textVerticalAlign")&&(t.verticalAlign=e.textVerticalAlign),mt(e,"textLineHeight")&&(t.lineHeight=e.textLineHeight),mt(e,"textWidth")&&(t.width=e.textWidth),mt(e,"textHeight")&&(t.height=e.textHeight),mt(e,"textBackgroundColor")&&(t.backgroundColor=e.textBackgroundColor),mt(e,"textPadding")&&(t.padding=e.textPadding),mt(e,"textBorderColor")&&(t.borderColor=e.textBorderColor),mt(e,"textBorderWidth")&&(t.borderWidth=e.textBorderWidth),mt(e,"textBorderRadius")&&(t.borderRadius=e.textBorderRadius),mt(e,"textBoxShadowColor")&&(t.shadowColor=e.textBoxShadowColor),mt(e,"textBoxShadowBlur")&&(t.shadowBlur=e.textBoxShadowBlur),mt(e,"textBoxShadowOffsetX")&&(t.shadowOffsetX=e.textBoxShadowOffsetX),mt(e,"textBoxShadowOffsetY")&&(t.shadowOffsetY=e.textBoxShadowOffsetY))}function AO(t,e,n){var i=t;i.textPosition=i.textPosition||n.position||"inside",null!=n.offset&&(i.textOffset=n.offset),null!=n.rotation&&(i.textRotation=n.rotation),null!=n.distance&&(i.textDistance=n.distance);var r=i.textPosition.indexOf("inside")>=0,o=t.fill||"#000";kO(i,e);var a=null==i.textFill;return r?a&&(i.textFill=n.insideFill||"#fff",!i.textStroke&&n.insideStroke&&(i.textStroke=n.insideStroke),!i.textStroke&&(i.textStroke=o),null==i.textStrokeWidth&&(i.textStrokeWidth=2)):(a&&(i.textFill=t.fill||n.outsideFill||"#000"),!i.textStroke&&n.outsideStroke&&(i.textStroke=n.outsideStroke)),i.text=e.text,i.rich=e.rich,E(e.rich,(function(t){kO(t,t)})),i}function kO(t,e){e&&(mt(e,"fill")&&(t.textFill=e.fill),mt(e,"stroke")&&(t.textStroke=e.fill),mt(e,"lineWidth")&&(t.textStrokeWidth=e.lineWidth),mt(e,"font")&&(t.font=e.font),mt(e,"fontStyle")&&(t.fontStyle=e.fontStyle),mt(e,"fontWeight")&&(t.fontWeight=e.fontWeight),mt(e,"fontSize")&&(t.fontSize=e.fontSize),mt(e,"fontFamily")&&(t.fontFamily=e.fontFamily),mt(e,"align")&&(t.textAlign=e.align),mt(e,"verticalAlign")&&(t.textVerticalAlign=e.verticalAlign),mt(e,"lineHeight")&&(t.textLineHeight=e.lineHeight),mt(e,"width")&&(t.textWidth=e.width),mt(e,"height")&&(t.textHeight=e.height),mt(e,"backgroundColor")&&(t.textBackgroundColor=e.backgroundColor),mt(e,"padding")&&(t.textPadding=e.padding),mt(e,"borderColor")&&(t.textBorderColor=e.borderColor),mt(e,"borderWidth")&&(t.textBorderWidth=e.borderWidth),mt(e,"borderRadius")&&(t.textBorderRadius=e.borderRadius),mt(e,"shadowColor")&&(t.textBoxShadowColor=e.shadowColor),mt(e,"shadowBlur")&&(t.textBoxShadowBlur=e.shadowBlur),mt(e,"shadowOffsetX")&&(t.textBoxShadowOffsetX=e.shadowOffsetX),mt(e,"shadowOffsetY")&&(t.textBoxShadowOffsetY=e.shadowOffsetY),mt(e,"textShadowColor")&&(t.textShadowColor=e.textShadowColor),mt(e,"textShadowBlur")&&(t.textShadowBlur=e.textShadowBlur),mt(e,"textShadowOffsetX")&&(t.textShadowOffsetX=e.textShadowOffsetX),mt(e,"textShadowOffsetY")&&(t.textShadowOffsetY=e.textShadowOffsetY))}var LO={position:["x","y"],scale:["scaleX","scaleY"],origin:["originX","originY"]},PO=G(LO),OO=(V(Ki,(function(t,e){return t[e]=1,t}),{}),Ki.join(", "),["","style","shape","extra"]),RO=So();function NO(t,e,n,i,r){var o=t+"Animation",a=eh(t,i,r)||{},s=RO(e).userDuring;return a.duration>0&&(a.during=s?W(WO,{el:e,userDuring:s}):null,a.setToFinal=!0,a.scope=t),A(a,n[o]),a}function EO(t,e,n,i){var r=(i=i||{}).dataIndex,o=i.isInit,a=i.clearStyle,s=n.isAnimationEnabled(),l=RO(t),u=e.style;l.userDuring=e.during;var h={},c={};if(function(t,e,n){for(var i=0;i<PO.length;i++){var r=PO[i],o=LO[r],a=e[r];a&&(n[o[0]]=a[0],n[o[1]]=a[1])}for(i=0;i<Ki.length;i++){var s=Ki[i];null!=e[s]&&(n[s]=e[s])}}(0,e,c),YO("shape",e,c),YO("extra",e,c),!o&&s&&(function(t,e,n){for(var i=e.transition,r=BO(i)?Ki:ho(i||[]),o=0;o<r.length;o++){var a=r[o];if("style"!==a&&"shape"!==a&&"extra"!==a){var s=t[a];0,n[a]=s}}}(t,e,h),HO("shape",t,e,h),HO("extra",t,e,h),function(t,e,n,i){if(!n)return;var r,o=t.style;if(o){var a=n.transition,s=e.transition;if(a&&!BO(a)){var l=ho(a);!r&&(r=i.style={});for(var u=0;u<l.length;u++){var h=o[f=l[u]];r[f]=h}}else if(t.getAnimationStyleProps&&(BO(s)||BO(a)||P(s,"style")>=0)){var c=t.getAnimationStyleProps(),p=c?c.style:null;if(p){!r&&(r=i.style={});var d=G(n);for(u=0;u<d.length;u++){var f;if(p[f=d[u]]){h=o[f];r[f]=h}}}}}}(t,e,u,h)),c.style=u,function(t,e,n){var i=e.style;if(!t.isGroup&&i){if(n){t.useStyle({});for(var r=t.animators,o=0;o<r.length;o++){var a=r[o];"style"===a.targetName&&a.changeTarget(t.style)}}t.setStyle(i)}e&&(e.style=null,e&&t.attr(e),e.style=i)}(t,c,a),function(t,e){mt(e,"silent")&&(t.silent=e.silent),mt(e,"ignore")&&(t.ignore=e.ignore),t instanceof da&&mt(e,"invisible")&&(t.invisible=e.invisible);t instanceof fs&&mt(e,"autoBatch")&&(t.autoBatch=e.autoBatch)}(t,e),s)if(o){var p={};E(OO,(function(t){var n=t?e[t]:e;n&&n.enterFrom&&(t&&(p[t]=p[t]||{}),A(t?p[t]:p,n.enterFrom))}));var d=NO("enter",t,e,n,r);d.duration>0&&t.animateFrom(p,d)}else!function(t,e,n,i,r){if(r){var o=NO("update",t,e,i,n);o.duration>0&&t.animateFrom(r,o)}}(t,e,r||0,n,h);zO(t,e),u?t.dirty():t.markRedraw()}function zO(t,e){for(var n=RO(t).leaveToProps,i=0;i<OO.length;i++){var r=OO[i],o=r?e[r]:e;o&&o.leaveTo&&(n||(n=RO(t).leaveToProps={}),r&&(n[r]=n[r]||{}),A(r?n[r]:n,o.leaveTo))}}function VO(t,e,n,i){if(t){var r=t.parent,o=RO(t).leaveToProps;if(o){var a=NO("update",t,e,n,0);a.done=function(){r.remove(t),i&&i()},t.animateTo(o,a)}else r.remove(t),i&&i()}}function BO(t){return"all"===t}var FO={},GO={setTransform:function(t,e){return FO.el[t]=e,this},getTransform:function(t){return FO.el[t]},setShape:function(t,e){var n=FO.el;return(n.shape||(n.shape={}))[t]=e,n.dirtyShape&&n.dirtyShape(),this},getShape:function(t){var e=FO.el.shape;if(e)return e[t]},setStyle:function(t,e){var n=FO.el,i=n.style;return i&&(i[t]=e,n.dirtyStyle&&n.dirtyStyle()),this},getStyle:function(t){var e=FO.el.style;if(e)return e[t]},setExtra:function(t,e){return(FO.el.extra||(FO.el.extra={}))[t]=e,this},getExtra:function(t){var e=FO.el.extra;if(e)return e[t]}};function WO(){var t=this,e=t.el;if(e){var n=RO(e).userDuring,i=t.userDuring;n===i?(FO.el=e,i(GO)):t.el=t.userDuring=null}}function HO(t,e,n,i){var r=n[t];if(r){var o,a=e[t];if(a){var s=n.transition,l=r.transition;if(l)if(!o&&(o=i[t]={}),BO(l))A(o,a);else for(var u=ho(l),h=0;h<u.length;h++){var c=a[d=u[h]];o[d]=c}else if(BO(s)||P(s,t)>=0){!o&&(o=i[t]={});var p=G(a);for(h=0;h<p.length;h++){var d;c=a[d=p[h]];UO(r[d],c)&&(o[d]=c)}}}}}function YO(t,e,n){var i=e[t];if(i)for(var r=n[t]={},o=G(i),a=0;a<o.length;a++){var s=o[a];r[s]=ti(i[s])}}function UO(t,e){return N(t)?t!==e:null!=t&&isFinite(t)}var XO=So(),ZO=["percent","easing","shape","style","extra"];function jO(t){t.stopAnimation("keyframe"),t.attr(XO(t))}function qO(t,e,n){if(n.isAnimationEnabled()&&e)if(Y(e))E(e,(function(e){qO(t,e,n)}));else{var i=e.keyframes,r=e.duration;if(n&&null==r){var o=eh("enter",n,0);r=o&&o.duration}if(i&&r){var a=XO(t);E(OO,(function(n){if(!n||t[n]){var o;i.sort((function(t,e){return t.percent-e.percent})),E(i,(function(i){var s=t.animators,l=n?i[n]:i;if(l){var u=G(l);if(n||(u=B(u,(function(t){return P(ZO,t)<0}))),u.length){o||((o=t.animate(n,e.loop,!0)).scope="keyframe");for(var h=0;h<s.length;h++)s[h]!==o&&s[h].targetName===o.targetName&&s[h].stopTracks(u);n&&(a[n]=a[n]||{});var c=n?a[n]:a;E(u,(function(e){c[e]=((n?t[n]:t)||{})[e]})),o.whenWithKeys(r*i.percent,l,u,i.easing)}}})),o&&o.delay(e.delay||0).duration(r).start(e.easing)}}))}}}var KO="emphasis",$O="normal",JO="blur",QO="select",tR=[$O,KO,JO,QO],eR={normal:["itemStyle"],emphasis:[KO,"itemStyle"],blur:[JO,"itemStyle"],select:[QO,"itemStyle"]},nR={normal:["label"],emphasis:[KO,"label"],blur:[JO,"label"],select:[QO,"label"]},iR=["x","y"],rR={normal:{},emphasis:{},blur:{},select:{}},oR={cartesian2d:function(t){var e=t.master.getRect();return{coordSys:{type:"cartesian2d",x:e.x,y:e.y,width:e.width,height:e.height},api:{coord:function(e){return t.dataToPoint(e)},size:W(wO,t)}}},geo:function(t){var e=t.getBoundingRect();return{coordSys:{type:"geo",x:e.x,y:e.y,width:e.width,height:e.height,zoom:t.getZoom()},api:{coord:function(e){return t.dataToPoint(e)},size:W(SO,t)}}},singleAxis:function(t){var e=t.getRect();return{coordSys:{type:"singleAxis",x:e.x,y:e.y,width:e.width,height:e.height},api:{coord:function(e){return t.dataToPoint(e)},size:W(MO,t)}}},polar:function(t){var e=t.getRadiusAxis(),n=t.getAngleAxis(),i=e.getExtent();return i[0]>i[1]&&i.reverse(),{coordSys:{type:"polar",cx:t.cx,cy:t.cy,r:i[1],r0:i[0]},api:{coord:function(i){var r=e.dataToRadius(i[0]),o=n.dataToAngle(i[1]),a=t.coordToPoint([r,o]);return a.push(r,o*Math.PI/180),a},size:W(IO,t)}}},calendar:function(t){var e=t.getRect(),n=t.getRangeInfo();return{coordSys:{type:"calendar",x:e.x,y:e.y,width:e.width,height:e.height,cellWidth:t.getCellWidth(),cellHeight:t.getCellHeight(),rangeInfo:{start:n.start,end:n.end,weeks:n.weeks,dayCount:n.allDay}},api:{coord:function(e,n){return t.dataToPoint(e,n)}}}}};function aR(t){return t instanceof fs}function sR(t){return t instanceof da}var lR=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n,i){this._progressiveEls=null;var r=this._data,o=t.getData(),a=this.group,s=dR(t,o,e,n);r||a.removeAll(),o.diff(r).add((function(e){gR(n,null,e,s(e,i),t,a,o)})).remove((function(e){var n=r.getItemGraphicEl(e);VO(n,_O(n).option,t)})).update((function(e,l){var u=r.getItemGraphicEl(l);gR(n,u,e,s(e,i),t,a,o)})).execute();var l=t.get("clip",!0)?aS(t.coordinateSystem,!1,t):null;l?a.setClipPath(l):a.removeClipPath(),this._data=o},e.prototype.incrementalPrepareRender=function(t,e,n){this.group.removeAll(),this._data=null},e.prototype.incrementalRender=function(t,e,n,i,r){var o=e.getData(),a=dR(e,o,n,i),s=this._progressiveEls=[];function l(t){t.isGroup||(t.incremental=!0,t.ensureState("emphasis").hoverLayer=!0)}for(var u=t.start;u<t.end;u++){var h=gR(null,null,u,a(u,r),e,this.group,o);h&&(h.traverse(l),s.push(h))}},e.prototype.eachRendered=function(t){zh(this._progressiveEls||this.group,t)},e.prototype.filterForExposedEvent=function(t,e,n,i){var r=e.element;if(null==r||n.name===r)return!0;for(;(n=n.__hostTarget||n.parent)&&n!==this.group;)if(n.name===r)return!0;return!1},e.type="custom",e}(mg);function uR(t){var e,n=t.type;if("path"===n){var i=t.shape,r=null!=i.width&&null!=i.height?{x:i.x||0,y:i.y||0,width:i.width,height:i.height}:null,o=MR(i);e=mh(o,null,r,i.layout||"center"),_O(e).customPathData=o}else if("image"===n)e=new xs({}),_O(e).customImagePath=t.style.image;else if("text"===n)e=new As({});else if("group"===n)e=new Cr;else{if("compoundPath"===n)throw new Error('"compoundPath" is not supported yet.');var a=vh(n);if(!a){var s="";0,ao(s)}e=new a}return _O(e).customGraphicType=n,e.name=t.name,e.z2EmphasisLift=1,e.z2SelectLift=1,e}function hR(t,e,n,i,r,o,a){jO(e);var s=r&&r.normal.cfg;s&&e.setTextConfig(s),i&&null==i.transition&&(i.transition=iR);var l=i&&i.style;if(l){if("text"===e.type){var u=l;mt(u,"textFill")&&(u.fill=u.textFill),mt(u,"textStroke")&&(u.stroke=u.textStroke)}var h=void 0,c=aR(e)?l.decal:null;t&&c&&(c.dirty=!0,h=nv(c,t)),l.__decalPattern=h}sR(e)&&(l&&(h=l.__decalPattern)&&(l.decal=h));EO(e,i,o,{dataIndex:n,isInit:a,clearStyle:!0}),qO(e,i.keyframeAnimation,o)}function cR(t,e,n,i,r){var o=e.isGroup?null:e,a=r&&r[t].cfg;if(o){var s=o.ensureState(t);if(!1===i){var l=o.getState(t);l&&(l.style=null)}else s.style=i||null;a&&(s.textConfig=a),yl(o)}}function pR(t,e,n){var i=n===$O,r=i?e:xR(e,n),o=r?r.z2:null;null!=o&&((i?t:t.ensureState(n)).z2=o||0)}function dR(t,e,n,i){var r=t.get("renderItem"),o=t.coordinateSystem,a={};o&&(a=o.prepareCustoms?o.prepareCustoms(o):oR[o.type](o));for(var s,l,u=k({getWidth:i.getWidth,getHeight:i.getHeight,getZr:i.getZr,getDevicePixelRatio:i.getDevicePixelRatio,value:function(t,n){return null==n&&(n=s),e.getStore().get(e.getDimensionIndex(t||0),n)},style:function(n,i){0;null==i&&(i=s);var r=e.getItemVisual(i,"style"),o=r&&r.fill,a=r&&r.opacity,l=m(i,$O).getItemStyle();null!=o&&(l.fill=o),null!=a&&(l.opacity=a);var u={inheritColor:X(o)?o:"#000"},h=x(i,$O),c=Yh(h,null,u,!1,!0);c.text=h.getShallow("show")?rt(t.getFormattedLabel(i,$O),Fw(e,i)):null;var p=Uh(h,u,!1);return b(n,l),l=AO(l,c,p),n&&_(l,n),l.legacy=!0,l},ordinalRawValue:function(t,n){null==n&&(n=s),t=t||0;var i=e.getDimensionInfo(t);if(!i){var r=e.getDimensionIndex(t);return r>=0?e.getStore().get(r,n):void 0}var o=e.get(i.name,n),a=i&&i.ordinalMeta;return a?a.categories[o]:o},styleEmphasis:function(n,i){0;null==i&&(i=s);var r=m(i,KO).getItemStyle(),o=x(i,KO),a=Yh(o,null,null,!0,!0);a.text=o.getShallow("show")?ot(t.getFormattedLabel(i,KO),t.getFormattedLabel(i,$O),Fw(e,i)):null;var l=Uh(o,null,!0);return b(n,r),r=AO(r,a,l),n&&_(r,n),r.legacy=!0,r},visual:function(t,n){if(null==n&&(n=s),mt(mO,t)){var i=e.getItemVisual(n,"style");return i?i[mO[t]]:null}if(mt(xO,t))return e.getItemVisual(n,t)},barLayout:function(t){if("cartesian2d"===o.type){return function(t){var e=[],n=t.axis,i="axis0";if("category"===n.type){for(var r=n.getBandWidth(),o=0;o<t.count;o++)e.push(k({bandWidth:r,axisKey:i,stackId:bx+o},t));var a=Cx(e),s=[];for(o=0;o<t.count;o++){var l=a.axis0[bx+o];l.offsetCenter=l.offset+l.width/2,s.push(l)}return s}}(k({axis:o.getBaseAxis()},t))}},currentSeriesIndices:function(){return n.getCurrentSeriesIndices()},font:function(t){return Kh(t,n)}},a.api||{}),h={context:{},seriesId:t.id,seriesName:t.name,seriesIndex:t.seriesIndex,coordSys:a.coordSys,dataInsideLength:e.count(),encode:fR(t.getData())},c={},p={},d={},f={},g=0;g<tR.length;g++){var y=tR[g];d[y]=t.getModel(eR[y]),f[y]=t.getModel(nR[y])}function v(t){return t===s?l||(l=e.getItemModel(t)):e.getItemModel(t)}function m(t,n){return e.hasItemOption?t===s?c[n]||(c[n]=v(t).getModel(eR[n])):v(t).getModel(eR[n]):d[n]}function x(t,n){return e.hasItemOption?t===s?p[n]||(p[n]=v(t).getModel(nR[n])):v(t).getModel(nR[n]):f[n]}return function(t,n){return s=t,l=null,c={},p={},r&&r(k({dataIndexInside:t,dataIndex:e.getRawIndex(t),actionType:n?n.type:null},h),u)};function _(t,e){for(var n in e)mt(e,n)&&(t[n]=e[n])}function b(t,e){t&&(t.textFill&&(e.textFill=t.textFill),t.textPosition&&(e.textPosition=t.textPosition))}}function fR(t){var e={};return E(t.dimensions,(function(n){var i=t.getDimensionInfo(n);if(!i.isExtraCoord){var r=i.coordDim;(e[r]=e[r]||[])[i.coordDimIndex]=t.getDimensionIndex(n)}})),e}function gR(t,e,n,i,r,o,a){if(i){var s=yR(t,e,n,i,r,o);return s&&a.setItemGraphicEl(n,s),s&&Ol(s,i.focus,i.blurScope,i.emphasisDisabled),s}o.remove(e)}function yR(t,e,n,i,r,o){var a=-1,s=e;e&&vR(e,i,r)&&(a=P(o.childrenRef(),e),e=null);var l,u,h=!e,c=e;c?c.clearStates():(c=uR(i),s&&(l=s,(u=c).copyTransform(l),sR(u)&&sR(l)&&(u.setStyle(l.style),u.z=l.z,u.z2=l.z2,u.zlevel=l.zlevel,u.invisible=l.invisible,u.ignore=l.ignore,aR(u)&&aR(l)&&u.setShape(l.shape)))),!1===i.morph?c.disableMorphing=!0:c.disableMorphing&&(c.disableMorphing=!1),rR.normal.cfg=rR.normal.conOpt=rR.emphasis.cfg=rR.emphasis.conOpt=rR.blur.cfg=rR.blur.conOpt=rR.select.cfg=rR.select.conOpt=null,rR.isLegacy=!1,function(t,e,n,i,r,o){if(t.isGroup)return;mR(n,null,o),mR(n,KO,o);var a=o.normal.conOpt,s=o.emphasis.conOpt,l=o.blur.conOpt,u=o.select.conOpt;if(null!=a||null!=s||null!=u||null!=l){var h=t.getTextContent();if(!1===a)h&&t.removeTextContent();else{a=o.normal.conOpt=a||{type:"text"},h?h.clearStates():(h=uR(a),t.setTextContent(h)),hR(null,h,e,a,null,i,r);for(var c=a&&a.style,p=0;p<tR.length;p++){var d=tR[p];if(d!==$O){var f=o[d].conOpt;cR(d,h,0,_R(a,f,d),null)}}c?h.dirty():h.markRedraw()}}}(c,n,i,r,h,rR),function(t,e,n,i,r){var o=n.clipPath;if(!1===o)t&&t.getClipPath()&&t.removeClipPath();else if(o){var a=t.getClipPath();a&&vR(a,o,i)&&(a=null),a||(a=uR(o),t.setClipPath(a)),hR(null,a,e,o,null,i,r)}}(c,n,i,r,h),hR(t,c,n,i,rR,r,h),mt(i,"info")&&(_O(c).info=i.info);for(var p=0;p<tR.length;p++){var d=tR[p];if(d!==$O){var f=xR(i,d);cR(d,c,0,_R(i,f,d),rR)}}return function(t,e,n){if(!t.isGroup){var i=t,r=n.currentZ,o=n.currentZLevel;i.z=r,i.zlevel=o;var a=e.z2;null!=a&&(i.z2=a||0);for(var s=0;s<tR.length;s++)pR(i,e,tR[s])}}(c,i,r),"group"===i.type&&function(t,e,n,i,r){var o=i.children,a=o?o.length:0,s=i.$mergeChildren,l="byName"===s||i.diffChildrenByName,u=!1===s;if(!a&&!l&&!u)return;if(l)return h={api:t,oldChildren:e.children()||[],newChildren:o||[],dataIndex:n,seriesModel:r,group:e},void new Sm(h.oldChildren,h.newChildren,bR,bR,h).add(wR).update(wR).remove(SR).execute();var h;u&&e.removeAll();for(var c=0;c<a;c++)o[c]&&yR(t,e.childAt(c),n,o[c],r,e);for(var p=e.childCount()-1;p>=c;p--){VO(e.childAt(p),_O(e).option,r)}}(t,c,n,i,r),a>=0?o.replaceAt(c,a):o.add(c),c}function vR(t,e,n){var i,r=_O(t),o=e.type,a=e.shape,s=e.style;return n.isUniversalTransitionEnabled()||null!=o&&o!==r.customGraphicType||"path"===o&&((i=a)&&(mt(i,"pathData")||mt(i,"d")))&&MR(a)!==r.customPathData||"image"===o&&mt(s,"image")&&s.image!==r.customImagePath}function mR(t,e,n){var i=e?xR(t,e):t,r=e?_R(t,i,KO):t.style,o=t.type,a=i?i.textConfig:null,s=t.textContent,l=s?e?xR(s,e):s:null;if(r&&(n.isLegacy||TO(r,o,!!a,!!l))){n.isLegacy=!0;var u=CO(r,o,!e);!a&&u.textConfig&&(a=u.textConfig),!l&&u.textContent&&(l=u.textContent)}if(!e&&l){var h=l;!h.type&&(h.type="text")}var c=e?n[e]:n.normal;c.cfg=a,c.conOpt=l}function xR(t,e){return e?t?t[e]:null:t}function _R(t,e,n){var i=e&&e.style;return null==i&&n===KO&&t&&(i=t.styleEmphasis),i}function bR(t,e){var n=t&&t.name;return null!=n?n:"e\0\0"+e}function wR(t,e){var n=this.context,i=null!=t?n.newChildren[t]:null,r=null!=e?n.oldChildren[e]:null;yR(n.api,r,n.dataIndex,i,n.seriesModel,n.group)}function SR(t){var e=this.context,n=e.oldChildren[t];VO(n,_O(n).option,e.seriesModel)}function MR(t){return t&&(t.pathData||t.d)}var IR=So(),TR=T,CR=W,DR=function(){function t(){this._dragging=!1,this.animationThreshold=15}return t.prototype.render=function(t,e,n,i){var r=e.get("value"),o=e.get("status");if(this._axisModel=t,this._axisPointerModel=e,this._api=n,i||this._lastValue!==r||this._lastStatus!==o){this._lastValue=r,this._lastStatus=o;var a=this._group,s=this._handle;if(!o||"hide"===o)return a&&a.hide(),void(s&&s.hide());a&&a.show(),s&&s.show();var l={};this.makeElOption(l,r,t,e,n);var u=l.graphicKey;u!==this._lastGraphicKey&&this.clear(n),this._lastGraphicKey=u;var h=this._moveAnimation=this.determineAnimation(t,e);if(a){var c=H(AR,e,h);this.updatePointerEl(a,l,c),this.updateLabelEl(a,l,c,e)}else a=this._group=new Cr,this.createPointerEl(a,l,t,e),this.createLabelEl(a,l,t,e),n.getZr().add(a);OR(a,e,!0),this._renderHandle(r)}},t.prototype.remove=function(t){this.clear(t)},t.prototype.dispose=function(t){this.clear(t)},t.prototype.determineAnimation=function(t,e){var n=e.get("animation"),i=t.axis,r="category"===i.type,o=e.get("snap");if(!o&&!r)return!1;if("auto"===n||null==n){var a=this.animationThreshold;if(r&&i.getBandWidth()>a)return!0;if(o){var s=jM(t).seriesDataCount,l=i.getExtent();return Math.abs(l[0]-l[1])/s>a}return!1}return!0===n},t.prototype.makeElOption=function(t,e,n,i,r){},t.prototype.createPointerEl=function(t,e,n,i){var r=e.pointer;if(r){var o=IR(t).pointerEl=new Vh[r.type](TR(e.pointer));t.add(o)}},t.prototype.createLabelEl=function(t,e,n,i){if(e.label){var r=IR(t).labelEl=new As(TR(e.label));t.add(r),LR(r,i)}},t.prototype.updatePointerEl=function(t,e,n){var i=IR(t).pointerEl;i&&e.pointer&&(i.setStyle(e.pointer.style),n(i,{shape:e.pointer.shape}))},t.prototype.updateLabelEl=function(t,e,n,i){var r=IR(t).labelEl;r&&(r.setStyle(e.label.style),n(r,{x:e.label.x,y:e.label.y}),LR(r,i))},t.prototype._renderHandle=function(t){if(!this._dragging&&this.updateHandleTransform){var e,n=this._axisPointerModel,i=this._api.getZr(),r=this._handle,o=n.getModel("handle"),a=n.get("status");if(!o.get("show")||!a||"hide"===a)return r&&i.remove(r),void(this._handle=null);this._handle||(e=!0,r=this._handle=Lh(o.get("icon"),{cursor:"move",draggable:!0,onmousemove:function(t){se(t.event)},onmousedown:CR(this._onHandleDragMove,this,0,0),drift:CR(this._onHandleDragMove,this),ondragend:CR(this._onHandleDragEnd,this)}),i.add(r)),OR(r,n,!1),r.setStyle(o.getItemStyle(null,["color","borderColor","borderWidth","opacity","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY"]));var s=o.get("size");Y(s)||(s=[s,s]),r.scaleX=s[0]/2,r.scaleY=s[1]/2,Dg(this,"_doDispatchAxisPointer",o.get("throttle")||0,"fixRate"),this._moveHandleToValue(t,e)}},t.prototype._moveHandleToValue=function(t,e){AR(this._axisPointerModel,!e&&this._moveAnimation,this._handle,PR(this.getHandleTransform(t,this._axisModel,this._axisPointerModel)))},t.prototype._onHandleDragMove=function(t,e){var n=this._handle;if(n){this._dragging=!0;var i=this.updateHandleTransform(PR(n),[t,e],this._axisModel,this._axisPointerModel);this._payloadInfo=i,n.stopAnimation(),n.attr(PR(i)),IR(n).lastProp=null,this._doDispatchAxisPointer()}},t.prototype._doDispatchAxisPointer=function(){if(this._handle){var t=this._payloadInfo,e=this._axisModel;this._api.dispatchAction({type:"updateAxisPointer",x:t.cursorPoint[0],y:t.cursorPoint[1],tooltipOption:t.tooltipOption,axesInfo:[{axisDim:e.axis.dim,axisIndex:e.componentIndex}]})}},t.prototype._onHandleDragEnd=function(){if(this._dragging=!1,this._handle){var t=this._axisPointerModel.get("value");this._moveHandleToValue(t),this._api.dispatchAction({type:"hideTip"})}},t.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),Ag(this,"_doDispatchAxisPointer")},t.prototype.doClear=function(){},t.prototype.buildLabel=function(t,e,n){return{x:t[n=n||0],y:t[1-n],width:e[n],height:e[1-n]}},t}();function AR(t,e,n,i){kR(IR(n).lastProp,i)||(IR(n).lastProp=i,e?ih(n,i,t):(n.stopAnimation(),n.attr(i)))}function kR(t,e){if(q(t)&&q(e)){var n=!0;return E(e,(function(e,i){n=n&&kR(t[i],e)})),!!n}return t===e}function LR(t,e){t[e.get(["label","show"])?"show":"hide"]()}function PR(t){return{x:t.x||0,y:t.y||0,rotation:t.rotation||0}}function OR(t,e,n){var i=e.get("z"),r=e.get("zlevel");t&&t.traverse((function(t){"group"!==t.type&&(null!=i&&(t.z=i),null!=r&&(t.zlevel=r),t.silent=n)}))}function RR(t){var e,n=t.get("type"),i=t.getModel(n+"Style");return"line"===n?(e=i.getLineStyle()).fill=null:"shadow"===n&&((e=i.getAreaStyle()).stroke=null),e}function NR(t,e,n,i,r){var o=ER(n.get("value"),e.axis,e.ecModel,n.get("seriesDataIndices"),{precision:n.get(["label","precision"]),formatter:n.get(["label","formatter"])}),a=n.getModel("label"),s=np(a.get("padding")||0),l=a.getFont(),u=cr(o,l),h=r.position,c=u.width+s[1]+s[3],p=u.height+s[0]+s[2],d=r.align;"right"===d&&(h[0]-=c),"center"===d&&(h[0]-=c/2);var f=r.verticalAlign;"bottom"===f&&(h[1]-=p),"middle"===f&&(h[1]-=p/2),function(t,e,n,i){var r=i.getWidth(),o=i.getHeight();t[0]=Math.min(t[0]+e,r)-e,t[1]=Math.min(t[1]+n,o)-n,t[0]=Math.max(t[0],0),t[1]=Math.max(t[1],0)}(h,c,p,i);var g=a.get("backgroundColor");g&&"auto"!==g||(g=e.get(["axisLine","lineStyle","color"])),t.label={x:h[0],y:h[1],style:Yh(a,{text:o,font:l,fill:a.getTextColor(),padding:s,backgroundColor:g}),z2:10}}function ER(t,e,n,i,r){t=e.scale.parse(t);var o=e.scale.getLabel({value:t},{precision:r.precision}),a=r.formatter;if(a){var s={value:o_(e,{value:t}),axisDimension:e.dim,axisIndex:e.index,seriesData:[]};E(i,(function(t){var e=n.getSeriesByIndex(t.seriesIndex),i=t.dataIndexInside,r=e&&e.getDataParams(i);r&&s.seriesData.push(r)})),X(a)?o=a.replace("{value}",o):U(a)&&(o=a(s))}return o}function zR(t,e,n){var i=[1,0,0,1,0,0];return zi(i,i,n.rotation),Ei(i,i,n.position),Ih([t.dataToCoord(e),(n.labelOffset||0)+(n.labelDirection||1)*(n.labelMargin||0)],i)}function VR(t,e,n,i,r,o){var a=BM.innerTextLayout(n.rotation,0,n.labelDirection);n.labelMargin=r.get(["label","margin"]),NR(e,i,r,o,{position:zR(i.axis,t,n),align:a.textAlign,verticalAlign:a.textVerticalAlign})}function BR(t,e,n){return{x1:t[n=n||0],y1:t[1-n],x2:e[n],y2:e[1-n]}}function FR(t,e,n){return{x:t[n=n||0],y:t[1-n],width:e[n],height:e[1-n]}}function GR(t,e,n,i,r,o){return{cx:t,cy:e,r0:n,r:i,startAngle:r,endAngle:o,clockwise:!0}}var WR=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.makeElOption=function(t,e,n,i,r){var o=n.axis,a=o.grid,s=i.get("type"),l=HR(a,o).getOtherAxis(o).getGlobalExtent(),u=o.toGlobalCoord(o.dataToCoord(e,!0));if(s&&"none"!==s){var h=RR(i),c=YR[s](o,u,l);c.style=h,t.graphicKey=c.type,t.pointer=c}VR(e,t,AM(a.model,n),n,i,r)},e.prototype.getHandleTransform=function(t,e,n){var i=AM(e.axis.grid.model,e,{labelInside:!1});i.labelMargin=n.get(["handle","margin"]);var r=zR(e.axis,t,i);return{x:r[0],y:r[1],rotation:i.rotation+(i.labelDirection<0?Math.PI:0)}},e.prototype.updateHandleTransform=function(t,e,n,i){var r=n.axis,o=r.grid,a=r.getGlobalExtent(!0),s=HR(o,r).getOtherAxis(r).getGlobalExtent(),l="x"===r.dim?0:1,u=[t.x,t.y];u[l]+=e[l],u[l]=Math.min(a[1],u[l]),u[l]=Math.max(a[0],u[l]);var h=(s[1]+s[0])/2,c=[h,h];c[l]=u[l];return{x:u[0],y:u[1],rotation:t.rotation,cursorPoint:c,tooltipOption:[{verticalAlign:"middle"},{align:"center"}][l]}},e}(DR);function HR(t,e){var n={};return n[e.dim+"AxisIndex"]=e.index,t.getCartesian(n)}var YR={line:function(t,e,n){return{type:"Line",subPixelOptimize:!0,shape:BR([e,n[0]],[e,n[1]],UR(t))}},shadow:function(t,e,n){var i=Math.max(1,t.getBandWidth()),r=n[1]-n[0];return{type:"Rect",shape:FR([e-i/2,n[0]],[i,r],UR(t))}}};function UR(t){return"x"===t.dim?0:1}var XR=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="axisPointer",e.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}},e}(Ip),ZR=So(),jR=E;function qR(t,e,n){if(!r.node){var i=e.getZr();ZR(i).records||(ZR(i).records={}),function(t,e){if(ZR(t).initialized)return;function n(n,i){t.on(n,(function(n){var r=function(t){var e={showTip:[],hideTip:[]},n=function(i){var r=e[i.type];r?r.push(i):(i.dispatchAction=n,t.dispatchAction(i))};return{dispatchAction:n,pendings:e}}(e);jR(ZR(t).records,(function(t){t&&i(t,n,r.dispatchAction)})),function(t,e){var n,i=t.showTip.length,r=t.hideTip.length;i?n=t.showTip[i-1]:r&&(n=t.hideTip[r-1]);n&&(n.dispatchAction=null,e.dispatchAction(n))}(r.pendings,e)}))}ZR(t).initialized=!0,n("click",H($R,"click")),n("mousemove",H($R,"mousemove")),n("globalout",KR)}(i,e),(ZR(i).records[t]||(ZR(i).records[t]={})).handler=n}}function KR(t,e,n){t.handler("leave",null,n)}function $R(t,e,n,i){e.handler(t,n,i)}function JR(t,e){if(!r.node){var n=e.getZr();(ZR(n).records||{})[t]&&(ZR(n).records[t]=null)}}var QR=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){var i=e.getComponent("tooltip"),r=t.get("triggerOn")||i&&i.get("triggerOn")||"mousemove|click";qR("axisPointer",n,(function(t,e,n){"none"!==r&&("leave"===t||r.indexOf(t)>=0)&&n({type:"updateAxisPointer",currTrigger:t,x:e&&e.offsetX,y:e&&e.offsetY})}))},e.prototype.remove=function(t,e){JR("axisPointer",e)},e.prototype.dispose=function(t,e){JR("axisPointer",e)},e.type="axisPointer",e}(fg);function tN(t,e){var n,i=[],r=t.seriesIndex;if(null==r||!(n=e.getSeriesByIndex(r)))return{point:[]};var o=n.getData(),a=wo(o,t);if(null==a||a<0||Y(a))return{point:[]};var s=o.getItemGraphicEl(a),l=n.coordinateSystem;if(n.getTooltipPosition)i=n.getTooltipPosition(a)||[];else if(l&&l.dataToPoint)if(t.isStacked){var u=l.getBaseAxis(),h=l.getOtherAxis(u).dim,c=u.dim,p="x"===h||"radius"===h?1:0,d=o.mapDimension(c),f=[];f[p]=o.get(d,a),f[1-p]=o.get(o.getCalculationInfo("stackResultDimension"),a),i=l.dataToPoint(f)||[]}else i=l.dataToPoint(o.getValues(z(l.dimensions,(function(t){return o.mapDimension(t)})),a))||[];else if(s){var g=s.getBoundingRect().clone();g.applyTransform(s.transform),i=[g.x+g.width/2,g.y+g.height/2]}return{point:i,el:s}}var eN=So();function nN(t,e,n){var i=t.currTrigger,r=[t.x,t.y],o=t,a=t.dispatchAction||W(n.dispatchAction,n),s=e.getComponent("axisPointer").coordSysAxesInfo;if(s){sN(r)&&(r=tN({seriesIndex:o.seriesIndex,dataIndex:o.dataIndex},e).point);var l=sN(r),u=o.axesInfo,h=s.axesInfo,c="leave"===i||sN(r),p={},d={},f={list:[],map:{}},g={showPointer:H(rN,d),showTooltip:H(oN,f)};E(s.coordSysMap,(function(t,e){var n=l||t.containPoint(r);E(s.coordSysAxesInfo[e],(function(t,e){var i=t.axis,o=function(t,e){for(var n=0;n<(t||[]).length;n++){var i=t[n];if(e.axis.dim===i.axisDim&&e.axis.model.componentIndex===i.axisIndex)return i}}(u,t);if(!c&&n&&(!u||o)){var a=o&&o.value;null!=a||l||(a=i.pointToData(r)),null!=a&&iN(t,a,g,!1,p)}}))}));var y={};return E(h,(function(t,e){var n=t.linkGroup;n&&!d[e]&&E(n.axesInfo,(function(e,i){var r=d[i];if(e!==t&&r){var o=r.value;n.mapper&&(o=t.axis.scale.parse(n.mapper(o,aN(e),aN(t)))),y[t.key]=o}}))})),E(y,(function(t,e){iN(h[e],t,g,!0,p)})),function(t,e,n){var i=n.axesInfo=[];E(e,(function(e,n){var r=e.axisPointerModel.option,o=t[n];o?(!e.useHandle&&(r.status="show"),r.value=o.value,r.seriesDataIndices=(o.payloadBatch||[]).slice()):!e.useHandle&&(r.status="hide"),"show"===r.status&&i.push({axisDim:e.axis.dim,axisIndex:e.axis.model.componentIndex,value:r.value})}))}(d,h,p),function(t,e,n,i){if(sN(e)||!t.list.length)return void i({type:"hideTip"});var r=((t.list[0].dataByAxis[0]||{}).seriesDataIndices||[])[0]||{};i({type:"showTip",escapeConnect:!0,x:e[0],y:e[1],tooltipOption:n.tooltipOption,position:n.position,dataIndexInside:r.dataIndexInside,dataIndex:r.dataIndex,seriesIndex:r.seriesIndex,dataByCoordSys:t.list})}(f,r,t,a),function(t,e,n){var i=n.getZr(),r="axisPointerLastHighlights",o=eN(i)[r]||{},a=eN(i)[r]={};E(t,(function(t,e){var n=t.axisPointerModel.option;"show"===n.status&&E(n.seriesDataIndices,(function(t){var e=t.seriesIndex+" | "+t.dataIndex;a[e]=t}))}));var s=[],l=[];E(o,(function(t,e){!a[e]&&l.push(t)})),E(a,(function(t,e){!o[e]&&s.push(t)})),l.length&&n.dispatchAction({type:"downplay",escapeConnect:!0,notBlur:!0,batch:l}),s.length&&n.dispatchAction({type:"highlight",escapeConnect:!0,notBlur:!0,batch:s})}(h,0,n),p}}function iN(t,e,n,i,r){var o=t.axis;if(!o.scale.isBlank()&&o.containData(e))if(t.involveSeries){var a=function(t,e){var n=e.axis,i=n.dim,r=t,o=[],a=Number.MAX_VALUE,s=-1;return E(e.seriesModels,(function(e,l){var u,h,c=e.getData().mapDimensionsAll(i);if(e.getAxisTooltipData){var p=e.getAxisTooltipData(c,t,n);h=p.dataIndices,u=p.nestestValue}else{if(!(h=e.getData().indicesOfNearest(c[0],t,"category"===n.type?.5:null)).length)return;u=e.getData().get(c[0],h[0])}if(null!=u&&isFinite(u)){var d=t-u,f=Math.abs(d);f<=a&&((f<a||d>=0&&s<0)&&(a=f,s=d,r=u,o.length=0),E(h,(function(t){o.push({seriesIndex:e.seriesIndex,dataIndexInside:t,dataIndex:e.getData().getRawIndex(t)})})))}})),{payloadBatch:o,snapToValue:r}}(e,t),s=a.payloadBatch,l=a.snapToValue;s[0]&&null==r.seriesIndex&&A(r,s[0]),!i&&t.snap&&o.containData(l)&&null!=l&&(e=l),n.showPointer(t,e,s),n.showTooltip(t,a,l)}else n.showPointer(t,e)}function rN(t,e,n,i){t[e.key]={value:n,payloadBatch:i}}function oN(t,e,n,i){var r=n.payloadBatch,o=e.axis,a=o.model,s=e.axisPointerModel;if(e.triggerTooltip&&r.length){var l=e.coordSys.model,u=KM(l),h=t.map[u];h||(h=t.map[u]={coordSysId:l.id,coordSysIndex:l.componentIndex,coordSysType:l.type,coordSysMainType:l.mainType,dataByAxis:[]},t.list.push(h)),h.dataByAxis.push({axisDim:o.dim,axisIndex:a.componentIndex,axisType:a.type,axisId:a.id,value:i,valueLabelOpt:{precision:s.get(["label","precision"]),formatter:s.get(["label","formatter"])},seriesDataIndices:r.slice()})}}function aN(t){var e=t.axis.model,n={},i=n.axisDim=t.axis.dim;return n.axisIndex=n[i+"AxisIndex"]=e.componentIndex,n.axisName=n[i+"AxisName"]=e.name,n.axisId=n[i+"AxisId"]=e.id,n}function sN(t){return!t||null==t[0]||isNaN(t[0])||null==t[1]||isNaN(t[1])}function lN(t){JM.registerAxisPointerClass("CartesianAxisPointer",WR),t.registerComponentModel(XR),t.registerComponentView(QR),t.registerPreprocessor((function(t){if(t){(!t.axisPointer||0===t.axisPointer.length)&&(t.axisPointer={});var e=t.axisPointer.link;e&&!Y(e)&&(t.axisPointer.link=[e])}})),t.registerProcessor(t.PRIORITY.PROCESSOR.STATISTIC,(function(t,e){t.getComponent("axisPointer").coordSysAxesInfo=UM(t,e)})),t.registerAction({type:"updateAxisPointer",event:"updateAxisPointer",update:":updateAxisPointer"},nN)}var uN=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.makeElOption=function(t,e,n,i,r){var o=n.axis;"angle"===o.dim&&(this.animationThreshold=Math.PI/18);var a=o.polar,s=a.getOtherAxis(o).getExtent(),l=o.dataToCoord(e),u=i.get("type");if(u&&"none"!==u){var h=RR(i),c=hN[u](o,a,l,s);c.style=h,t.graphicKey=c.type,t.pointer=c}var p=function(t,e,n,i,r){var o=e.axis,a=o.dataToCoord(t),s=i.getAngleAxis().getExtent()[0];s=s/180*Math.PI;var l,u,h,c=i.getRadiusAxis().getExtent();if("radius"===o.dim){var p=[1,0,0,1,0,0];zi(p,p,s),Ei(p,p,[i.cx,i.cy]),l=Ih([a,-r],p);var d=e.getModel("axisLabel").get("rotate")||0,f=BM.innerTextLayout(s,d*Math.PI/180,-1);u=f.textAlign,h=f.textVerticalAlign}else{var g=c[1];l=i.coordToPoint([g+r,a]);var y=i.cx,v=i.cy;u=Math.abs(l[0]-y)/g<.3?"center":l[0]>y?"left":"right",h=Math.abs(l[1]-v)/g<.3?"middle":l[1]>v?"top":"bottom"}return{position:l,align:u,verticalAlign:h}}(e,n,0,a,i.get(["label","margin"]));NR(t,n,i,r,p)},e}(DR);var hN={line:function(t,e,n,i){return"angle"===t.dim?{type:"Line",shape:BR(e.coordToPoint([i[0],n]),e.coordToPoint([i[1],n]))}:{type:"Circle",shape:{cx:e.cx,cy:e.cy,r:n}}},shadow:function(t,e,n,i){var r=Math.max(1,t.getBandWidth()),o=Math.PI/180;return"angle"===t.dim?{type:"Sector",shape:GR(e.cx,e.cy,i[0],i[1],(-n-r/2)*o,(r/2-n)*o)}:{type:"Sector",shape:GR(e.cx,e.cy,n-r/2,n+r/2,0,2*Math.PI)}}},cN=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.findAxisModel=function(t){var e;return this.ecModel.eachComponent(t,(function(t){t.getCoordSysModel()===this&&(e=t)}),this),e},e.type="polar",e.dependencies=["radiusAxis","angleAxis"],e.defaultOption={z:0,center:["50%","50%"],radius:"80%"},e}(Ip),pN=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.getCoordSysModel=function(){return this.getReferringComponents("polar",Co).models[0]},e.type="polarAxis",e}(Ip);R(pN,h_);var dN=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="angleAxis",e}(pN),fN=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="radiusAxis",e}(pN),gN=function(t){function e(e,n){return t.call(this,"radius",e,n)||this}return n(e,t),e.prototype.pointToData=function(t,e){return this.polar.pointToData(t,e)["radius"===this.dim?0:1]},e}(G_);gN.prototype.dataToRadius=G_.prototype.dataToCoord,gN.prototype.radiusToData=G_.prototype.coordToData;var yN=So(),vN=function(t){function e(e,n){return t.call(this,"angle",e,n||[0,360])||this}return n(e,t),e.prototype.pointToData=function(t,e){return this.polar.pointToData(t,e)["radius"===this.dim?0:1]},e.prototype.calculateCategoryInterval=function(){var t=this,e=t.getLabelModel(),n=t.scale,i=n.getExtent(),r=n.count();if(i[1]-i[0]<1)return 0;var o=i[0],a=t.dataToCoord(o+1)-t.dataToCoord(o),s=Math.abs(a),l=cr(null==o?"":o+"",e.getFont(),"center","top"),u=Math.max(l.height,7)/s;isNaN(u)&&(u=1/0);var h=Math.max(0,Math.floor(u)),c=yN(t.model),p=c.lastAutoInterval,d=c.lastTickCount;return null!=p&&null!=d&&Math.abs(p-h)<=1&&Math.abs(d-r)<=1&&p>h?h=p:(c.lastTickCount=r,c.lastAutoInterval=h),h},e}(G_);vN.prototype.dataToAngle=G_.prototype.dataToCoord,vN.prototype.angleToData=G_.prototype.coordToData;var mN=["radius","angle"],xN=function(){function t(t){this.dimensions=mN,this.type="polar",this.cx=0,this.cy=0,this._radiusAxis=new gN,this._angleAxis=new vN,this.axisPointerEnabled=!0,this.name=t||"",this._radiusAxis.polar=this._angleAxis.polar=this}return t.prototype.containPoint=function(t){var e=this.pointToCoord(t);return this._radiusAxis.contain(e[0])&&this._angleAxis.contain(e[1])},t.prototype.containData=function(t){return this._radiusAxis.containData(t[0])&&this._angleAxis.containData(t[1])},t.prototype.getAxis=function(t){return this["_"+t+"Axis"]},t.prototype.getAxes=function(){return[this._radiusAxis,this._angleAxis]},t.prototype.getAxesByScale=function(t){var e=[],n=this._angleAxis,i=this._radiusAxis;return n.scale.type===t&&e.push(n),i.scale.type===t&&e.push(i),e},t.prototype.getAngleAxis=function(){return this._angleAxis},t.prototype.getRadiusAxis=function(){return this._radiusAxis},t.prototype.getOtherAxis=function(t){var e=this._angleAxis;return t===e?this._radiusAxis:e},t.prototype.getBaseAxis=function(){return this.getAxesByScale("ordinal")[0]||this.getAxesByScale("time")[0]||this.getAngleAxis()},t.prototype.getTooltipAxes=function(t){var e=null!=t&&"auto"!==t?this.getAxis(t):this.getBaseAxis();return{baseAxes:[e],otherAxes:[this.getOtherAxis(e)]}},t.prototype.dataToPoint=function(t,e){return this.coordToPoint([this._radiusAxis.dataToRadius(t[0],e),this._angleAxis.dataToAngle(t[1],e)])},t.prototype.pointToData=function(t,e){var n=this.pointToCoord(t);return[this._radiusAxis.radiusToData(n[0],e),this._angleAxis.angleToData(n[1],e)]},t.prototype.pointToCoord=function(t){var e=t[0]-this.cx,n=t[1]-this.cy,i=this.getAngleAxis(),r=i.getExtent(),o=Math.min(r[0],r[1]),a=Math.max(r[0],r[1]);i.inverse?o=a-360:a=o+360;var s=Math.sqrt(e*e+n*n);e/=s,n/=s;for(var l=Math.atan2(-n,e)/Math.PI*180,u=l<o?1:-1;l<o||l>a;)l+=360*u;return[s,l]},t.prototype.coordToPoint=function(t){var e=t[0],n=t[1]/180*Math.PI;return[Math.cos(n)*e+this.cx,-Math.sin(n)*e+this.cy]},t.prototype.getArea=function(){var t=this.getAngleAxis(),e=this.getRadiusAxis().getExtent().slice();e[0]>e[1]&&e.reverse();var n=t.getExtent(),i=Math.PI/180;return{cx:this.cx,cy:this.cy,r0:e[0],r:e[1],startAngle:-n[0]*i,endAngle:-n[1]*i,clockwise:t.inverse,contain:function(t,e){var n=t-this.cx,i=e-this.cy,r=n*n+i*i-1e-4,o=this.r,a=this.r0;return r<=o*o&&r>=a*a}}},t.prototype.convertToPixel=function(t,e,n){return _N(e)===this?this.dataToPoint(n):null},t.prototype.convertFromPixel=function(t,e,n){return _N(e)===this?this.pointToData(n):null},t}();function _N(t){var e=t.seriesModel,n=t.polarModel;return n&&n.coordinateSystem||e&&e.coordinateSystem}function bN(t,e){var n=this,i=n.getAngleAxis(),r=n.getRadiusAxis();if(i.scale.setExtent(1/0,-1/0),r.scale.setExtent(1/0,-1/0),t.eachSeries((function(t){if(t.coordinateSystem===n){var e=t.getData();E(u_(e,"radius"),(function(t){r.scale.unionExtentFromData(e,t)})),E(u_(e,"angle"),(function(t){i.scale.unionExtentFromData(e,t)}))}})),n_(i.scale,i.model),n_(r.scale,r.model),"category"===i.type&&!i.onBand){var o=i.getExtent(),a=360/i.scale.count();i.inverse?o[1]+=a:o[1]-=a,i.setExtent(o[0],o[1])}}function wN(t,e){if(t.type=e.get("type"),t.scale=i_(e),t.onBand=e.get("boundaryGap")&&"category"===t.type,t.inverse=e.get("inverse"),function(t){return"angleAxis"===t.mainType}(e)){t.inverse=t.inverse!==e.get("clockwise");var n=e.get("startAngle");t.setExtent(n,n+(t.inverse?-360:360))}e.axis=t,t.model=e}var SN={dimensions:mN,create:function(t,e){var n=[];return t.eachComponent("polar",(function(t,i){var r=new xN(i+"");r.update=bN;var o=r.getRadiusAxis(),a=r.getAngleAxis(),s=t.findAxisModel("radiusAxis"),l=t.findAxisModel("angleAxis");wN(o,s),wN(a,l),function(t,e,n){var i=e.get("center"),r=n.getWidth(),o=n.getHeight();t.cx=Er(i[0],r),t.cy=Er(i[1],o);var a=t.getRadiusAxis(),s=Math.min(r,o)/2,l=e.get("radius");null==l?l=[0,"100%"]:Y(l)||(l=[0,l]);var u=[Er(l[0],s),Er(l[1],s)];a.inverse?a.setExtent(u[1],u[0]):a.setExtent(u[0],u[1])}(r,t,e),n.push(r),t.coordinateSystem=r,r.model=t})),t.eachSeries((function(t){if("polar"===t.get("coordinateSystem")){var e=t.getReferringComponents("polar",Co).models[0];0,t.coordinateSystem=e.coordinateSystem}})),n}},MN=["axisLine","axisLabel","axisTick","minorTick","splitLine","minorSplitLine","splitArea"];function IN(t,e,n){e[1]>e[0]&&(e=e.slice().reverse());var i=t.coordToPoint([e[0],n]),r=t.coordToPoint([e[1],n]);return{x1:i[0],y1:i[1],x2:r[0],y2:r[1]}}function TN(t){return t.getRadiusAxis().inverse?0:1}function CN(t){var e=t[0],n=t[t.length-1];e&&n&&Math.abs(Math.abs(e.coord-n.coord)-360)<1e-4&&t.pop()}var DN=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.axisPointerClass="PolarAxisPointer",n}return n(e,t),e.prototype.render=function(t,e){if(this.group.removeAll(),t.get("show")){var n=t.axis,i=n.polar,r=i.getRadiusAxis().getExtent(),o=n.getTicksCoords(),a=n.getMinorTicksCoords(),s=z(n.getViewLabels(),(function(t){t=T(t);var e=n.scale,i="ordinal"===e.type?e.getRawOrdinalNumber(t.tickValue):t.tickValue;return t.coord=n.dataToCoord(i),t}));CN(s),CN(o),E(MN,(function(e){!t.get([e,"show"])||n.scale.isBlank()&&"axisLine"!==e||AN[e](this.group,t,i,o,a,r,s)}),this)}},e.type="angleAxis",e}(JM),AN={axisLine:function(t,e,n,i,r,o){var a,s=e.getModel(["axisLine","lineStyle"]),l=TN(n),u=l?0:1;(a=0===o[u]?new uu({shape:{cx:n.cx,cy:n.cy,r:o[l]},style:s.getLineStyle(),z2:1,silent:!0}):new Du({shape:{cx:n.cx,cy:n.cy,r:o[l],r0:o[u]},style:s.getLineStyle(),z2:1,silent:!0})).style.fill=null,t.add(a)},axisTick:function(t,e,n,i,r,o){var a=e.getModel("axisTick"),s=(a.get("inside")?-1:1)*a.get("length"),l=o[TN(n)],u=z(i,(function(t){return new Eu({shape:IN(n,[l,l+s],t.coord)})}));t.add(bh(u,{style:k(a.getModel("lineStyle").getLineStyle(),{stroke:e.get(["axisLine","lineStyle","color"])})}))},minorTick:function(t,e,n,i,r,o){if(r.length){for(var a=e.getModel("axisTick"),s=e.getModel("minorTick"),l=(a.get("inside")?-1:1)*s.get("length"),u=o[TN(n)],h=[],c=0;c<r.length;c++)for(var p=0;p<r[c].length;p++)h.push(new Eu({shape:IN(n,[u,u+l],r[c][p].coord)}));t.add(bh(h,{style:k(s.getModel("lineStyle").getLineStyle(),k(a.getLineStyle(),{stroke:e.get(["axisLine","lineStyle","color"])}))}))}},axisLabel:function(t,e,n,i,r,o,a){var s=e.getCategories(!0),l=e.getModel("axisLabel"),u=l.get("margin"),h=e.get("triggerEvent");E(a,(function(i,r){var a=l,c=i.tickValue,p=o[TN(n)],d=n.coordToPoint([p+u,i.coord]),f=n.cx,g=n.cy,y=Math.abs(d[0]-f)/p<.3?"center":d[0]>f?"left":"right",v=Math.abs(d[1]-g)/p<.3?"middle":d[1]>g?"top":"bottom";if(s&&s[c]){var m=s[c];q(m)&&m.textStyle&&(a=new pc(m.textStyle,l,l.ecModel))}var x=new As({silent:BM.isLabelSilent(e),style:Yh(a,{x:d[0],y:d[1],fill:a.getTextColor()||e.get(["axisLine","lineStyle","color"]),text:i.formattedLabel,align:y,verticalAlign:v})});if(t.add(x),h){var _=BM.makeAxisEventDataBase(e);_.targetType="axisLabel",_.value=i.rawLabel,Ws(x).eventData=_}}),this)},splitLine:function(t,e,n,i,r,o){var a=e.getModel("splitLine").getModel("lineStyle"),s=a.get("color"),l=0;s=s instanceof Array?s:[s];for(var u=[],h=0;h<i.length;h++){var c=l++%s.length;u[c]=u[c]||[],u[c].push(new Eu({shape:IN(n,o,i[h].coord)}))}for(h=0;h<u.length;h++)t.add(bh(u[h],{style:k({stroke:s[h%s.length]},a.getLineStyle()),silent:!0,z:e.get("z")}))},minorSplitLine:function(t,e,n,i,r,o){if(r.length){for(var a=e.getModel("minorSplitLine").getModel("lineStyle"),s=[],l=0;l<r.length;l++)for(var u=0;u<r[l].length;u++)s.push(new Eu({shape:IN(n,o,r[l][u].coord)}));t.add(bh(s,{style:a.getLineStyle(),silent:!0,z:e.get("z")}))}},splitArea:function(t,e,n,i,r,o){if(i.length){var a=e.getModel("splitArea").getModel("areaStyle"),s=a.get("color"),l=0;s=s instanceof Array?s:[s];for(var u=[],h=Math.PI/180,c=-i[0].coord*h,p=Math.min(o[0],o[1]),d=Math.max(o[0],o[1]),f=e.get("clockwise"),g=1,y=i.length;g<=y;g++){var v=g===y?i[0].coord:i[g].coord,m=l++%s.length;u[m]=u[m]||[],u[m].push(new Tu({shape:{cx:n.cx,cy:n.cy,r0:p,r:d,startAngle:c,endAngle:-v*h,clockwise:f},silent:!0})),c=-v*h}for(g=0;g<u.length;g++)t.add(bh(u[g],{style:k({fill:s[g%s.length]},a.getAreaStyle()),silent:!0}))}}},kN=["axisLine","axisTickLabel","axisName"],LN=["splitLine","splitArea","minorSplitLine"],PN=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.axisPointerClass="PolarAxisPointer",n}return n(e,t),e.prototype.render=function(t,e){if(this.group.removeAll(),t.get("show")){var n=this._axisGroup,i=this._axisGroup=new Cr;this.group.add(i);var r=t.axis,o=r.polar,a=o.getAngleAxis(),s=r.getTicksCoords(),l=r.getMinorTicksCoords(),u=a.getExtent()[0],h=r.getExtent(),c=function(t,e,n){return{position:[t.cx,t.cy],rotation:n/180*Math.PI,labelDirection:-1,tickDirection:-1,nameDirection:1,labelRotate:e.getModel("axisLabel").get("rotate"),z2:1}}(o,t,u),p=new BM(t,c);E(kN,p.add,p),i.add(p.getGroup()),Dh(n,i,t),E(LN,(function(e){t.get([e,"show"])&&!r.scale.isBlank()&&ON[e](this.group,t,o,u,h,s,l)}),this)}},e.type="radiusAxis",e}(JM),ON={splitLine:function(t,e,n,i,r,o){var a=e.getModel("splitLine").getModel("lineStyle"),s=a.get("color"),l=0;s=s instanceof Array?s:[s];for(var u=[],h=0;h<o.length;h++){var c=l++%s.length;u[c]=u[c]||[],u[c].push(new uu({shape:{cx:n.cx,cy:n.cy,r:o[h].coord}}))}for(h=0;h<u.length;h++)t.add(bh(u[h],{style:k({stroke:s[h%s.length],fill:null},a.getLineStyle()),silent:!0}))},minorSplitLine:function(t,e,n,i,r,o,a){if(a.length){for(var s=e.getModel("minorSplitLine").getModel("lineStyle"),l=[],u=0;u<a.length;u++)for(var h=0;h<a[u].length;h++)l.push(new uu({shape:{cx:n.cx,cy:n.cy,r:a[u][h].coord}}));t.add(bh(l,{style:k({fill:null},s.getLineStyle()),silent:!0}))}},splitArea:function(t,e,n,i,r,o){if(o.length){var a=e.getModel("splitArea").getModel("areaStyle"),s=a.get("color"),l=0;s=s instanceof Array?s:[s];for(var u=[],h=o[0].coord,c=1;c<o.length;c++){var p=l++%s.length;u[p]=u[p]||[],u[p].push(new Tu({shape:{cx:n.cx,cy:n.cy,r0:h,r:o[c].coord,startAngle:0,endAngle:2*Math.PI},silent:!0})),h=o[c].coord}for(c=0;c<u.length;c++)t.add(bh(u[c],{style:k({fill:s[c%s.length]},a.getAreaStyle()),silent:!0}))}}};function RN(t){return t.get("stack")||"__ec_stack_"+t.seriesIndex}function NN(t,e){return e.dim+t.model.componentIndex}function EN(t,e,n){var i={},r=function(t){var e={};E(t,(function(t,n){var i=t.getData(),r=t.coordinateSystem,o=r.getBaseAxis(),a=NN(r,o),s=o.getExtent(),l="category"===o.type?o.getBandWidth():Math.abs(s[1]-s[0])/i.count(),u=e[a]||{bandWidth:l,remainedWidth:l,autoWidthCount:0,categoryGap:"20%",gap:"30%",stacks:{}},h=u.stacks;e[a]=u;var c=RN(t);h[c]||u.autoWidthCount++,h[c]=h[c]||{width:0,maxWidth:0};var p=Er(t.get("barWidth"),l),d=Er(t.get("barMaxWidth"),l),f=t.get("barGap"),g=t.get("barCategoryGap");p&&!h[c].width&&(p=Math.min(u.remainedWidth,p),h[c].width=p,u.remainedWidth-=p),d&&(h[c].maxWidth=d),null!=f&&(u.gap=f),null!=g&&(u.categoryGap=g)}));var n={};return E(e,(function(t,e){n[e]={};var i=t.stacks,r=t.bandWidth,o=Er(t.categoryGap,r),a=Er(t.gap,1),s=t.remainedWidth,l=t.autoWidthCount,u=(s-o)/(l+(l-1)*a);u=Math.max(u,0),E(i,(function(t,e){var n=t.maxWidth;n&&n<u&&(n=Math.min(n,s),t.width&&(n=Math.min(n,t.width)),s-=n,t.width=n,l--)})),u=(s-o)/(l+(l-1)*a),u=Math.max(u,0);var h,c=0;E(i,(function(t,e){t.width||(t.width=u),h=t,c+=t.width*(1+a)})),h&&(c-=h.width*a);var p=-c/2;E(i,(function(t,i){n[e][i]=n[e][i]||{offset:p,width:t.width},p+=t.width*(1+a)}))})),n}(B(e.getSeriesByType(t),(function(t){return!e.isSeriesFiltered(t)&&t.coordinateSystem&&"polar"===t.coordinateSystem.type})));e.eachSeriesByType(t,(function(t){if("polar"===t.coordinateSystem.type){var e=t.getData(),n=t.coordinateSystem,o=n.getBaseAxis(),a=NN(n,o),s=RN(t),l=r[a][s],u=l.offset,h=l.width,c=n.getOtherAxis(o),p=t.coordinateSystem.cx,d=t.coordinateSystem.cy,f=t.get("barMinHeight")||0,g=t.get("barMinAngle")||0;i[s]=i[s]||[];for(var y=e.mapDimension(c.dim),v=e.mapDimension(o.dim),m=tx(e,y),x="radius"!==o.dim||!t.get("roundCap",!0),_=c.dataToCoord(0),b=0,w=e.count();b<w;b++){var S=e.get(y,b),M=e.get(v,b),I=S>=0?"p":"n",T=_;m&&(i[s][M]||(i[s][M]={p:_,n:_}),T=i[s][M][I]);var C=void 0,D=void 0,A=void 0,k=void 0;if("radius"===c.dim){var L=c.dataToCoord(S)-_,P=o.dataToCoord(M);Math.abs(L)<f&&(L=(L<0?-1:1)*f),C=T,D=T+L,k=(A=P-u)-h,m&&(i[s][M][I]=D)}else{var O=c.dataToCoord(S,x)-_,R=o.dataToCoord(M);Math.abs(O)<g&&(O=(O<0?-1:1)*g),D=(C=R+u)+h,A=T,k=T+O,m&&(i[s][M][I]=k)}e.setItemLayout(b,{cx:p,cy:d,r0:C,r:D,startAngle:-A*Math.PI/180,endAngle:-k*Math.PI/180,clockwise:A>=k})}}}))}var zN={startAngle:90,clockwise:!0,splitNumber:12,axisLabel:{rotate:0}},VN={splitNumber:5},BN=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="polar",e}(fg);function FN(t,e){e=e||{};var n=t.coordinateSystem,i=t.axis,r={},o=i.position,a=i.orient,s=n.getRect(),l=[s.x,s.x+s.width,s.y,s.y+s.height],u={horizontal:{top:l[2],bottom:l[3]},vertical:{left:l[0],right:l[1]}};r.position=["vertical"===a?u.vertical[o]:l[0],"horizontal"===a?u.horizontal[o]:l[3]];r.rotation=Math.PI/2*{horizontal:0,vertical:1}[a];r.labelDirection=r.tickDirection=r.nameDirection={top:-1,bottom:1,right:1,left:-1}[o],t.get(["axisTick","inside"])&&(r.tickDirection=-r.tickDirection),it(e.labelInside,t.get(["axisLabel","inside"]))&&(r.labelDirection=-r.labelDirection);var h=e.rotate;return null==h&&(h=t.get(["axisLabel","rotate"])),r.labelRotation="top"===o?-h:h,r.z2=1,r}var GN=["axisLine","axisTickLabel","axisName"],WN=["splitArea","splitLine"],HN=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.axisPointerClass="SingleAxisPointer",n}return n(e,t),e.prototype.render=function(e,n,i,r){var o=this.group;o.removeAll();var a=this._axisGroup;this._axisGroup=new Cr;var s=FN(e),l=new BM(e,s);E(GN,l.add,l),o.add(this._axisGroup),o.add(l.getGroup()),E(WN,(function(t){e.get([t,"show"])&&YN[t](this,this.group,this._axisGroup,e)}),this),Dh(a,this._axisGroup,e),t.prototype.render.call(this,e,n,i,r)},e.prototype.remove=function(){eI(this)},e.type="singleAxis",e}(JM),YN={splitLine:function(t,e,n,i){var r=i.axis;if(!r.scale.isBlank()){var o=i.getModel("splitLine"),a=o.getModel("lineStyle"),s=a.get("color");s=s instanceof Array?s:[s];for(var l=i.coordinateSystem.getRect(),u=r.isHorizontal(),h=[],c=0,p=r.getTicksCoords({tickModel:o}),d=[],f=[],g=0;g<p.length;++g){var y=r.toGlobalCoord(p[g].coord);u?(d[0]=y,d[1]=l.y,f[0]=y,f[1]=l.y+l.height):(d[0]=l.x,d[1]=y,f[0]=l.x+l.width,f[1]=y);var v=c++%s.length;h[v]=h[v]||[],h[v].push(new Eu({subPixelOptimize:!0,shape:{x1:d[0],y1:d[1],x2:f[0],y2:f[1]},silent:!0}))}var m=a.getLineStyle(["color"]);for(g=0;g<h.length;++g)e.add(bh(h[g],{style:k({stroke:s[g%s.length]},m),silent:!0}))}},splitArea:function(t,e,n,i){tI(t,n,i,i)}},UN=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.getCoordSysModel=function(){return this},e.type="singleAxis",e.layoutMode="box",e.defaultOption={left:"5%",top:"5%",right:"5%",bottom:"5%",type:"value",position:"bottom",orient:"horizontal",axisLine:{show:!0,lineStyle:{width:1,type:"solid"}},tooltip:{show:!0},axisTick:{show:!0,length:6,lineStyle:{width:1}},axisLabel:{show:!0,interval:"auto"},splitLine:{show:!0,lineStyle:{type:"dashed",opacity:.2}}},e}(Ip);R(UN,h_.prototype);var XN=function(t){function e(e,n,i,r,o){var a=t.call(this,e,n,i)||this;return a.type=r||"value",a.position=o||"bottom",a}return n(e,t),e.prototype.isHorizontal=function(){var t=this.position;return"top"===t||"bottom"===t},e.prototype.pointToData=function(t,e){return this.coordinateSystem.pointToData(t)[0]},e}(G_),ZN=["single"],jN=function(){function t(t,e,n){this.type="single",this.dimension="single",this.dimensions=ZN,this.axisPointerEnabled=!0,this.model=t,this._init(t,e,n)}return t.prototype._init=function(t,e,n){var i=this.dimension,r=new XN(i,i_(t),[0,0],t.get("type"),t.get("position")),o="category"===r.type;r.onBand=o&&t.get("boundaryGap"),r.inverse=t.get("inverse"),r.orient=t.get("orient"),t.axis=r,r.model=t,r.coordinateSystem=this,this._axis=r},t.prototype.update=function(t,e){t.eachSeries((function(t){if(t.coordinateSystem===this){var e=t.getData();E(e.mapDimensionsAll(this.dimension),(function(t){this._axis.scale.unionExtentFromData(e,t)}),this),n_(this._axis.scale,this._axis.model)}}),this)},t.prototype.resize=function(t,e){this._rect=mp({left:t.get("left"),top:t.get("top"),right:t.get("right"),bottom:t.get("bottom"),width:t.get("width"),height:t.get("height")},{width:e.getWidth(),height:e.getHeight()}),this._adjustAxis()},t.prototype.getRect=function(){return this._rect},t.prototype._adjustAxis=function(){var t=this._rect,e=this._axis,n=e.isHorizontal(),i=n?[0,t.width]:[0,t.height],r=e.reverse?1:0;e.setExtent(i[r],i[1-r]),this._updateAxisTransform(e,n?t.x:t.y)},t.prototype._updateAxisTransform=function(t,e){var n=t.getExtent(),i=n[0]+n[1],r=t.isHorizontal();t.toGlobalCoord=r?function(t){return t+e}:function(t){return i-t+e},t.toLocalCoord=r?function(t){return t-e}:function(t){return i-t+e}},t.prototype.getAxis=function(){return this._axis},t.prototype.getBaseAxis=function(){return this._axis},t.prototype.getAxes=function(){return[this._axis]},t.prototype.getTooltipAxes=function(){return{baseAxes:[this.getAxis()],otherAxes:[]}},t.prototype.containPoint=function(t){var e=this.getRect(),n=this.getAxis();return"horizontal"===n.orient?n.contain(n.toLocalCoord(t[0]))&&t[1]>=e.y&&t[1]<=e.y+e.height:n.contain(n.toLocalCoord(t[1]))&&t[0]>=e.y&&t[0]<=e.y+e.height},t.prototype.pointToData=function(t){var e=this.getAxis();return[e.coordToData(e.toLocalCoord(t["horizontal"===e.orient?0:1]))]},t.prototype.dataToPoint=function(t){var e=this.getAxis(),n=this.getRect(),i=[],r="horizontal"===e.orient?0:1;return t instanceof Array&&(t=t[0]),i[r]=e.toGlobalCoord(e.dataToCoord(+t)),i[1-r]=0===r?n.y+n.height/2:n.x+n.width/2,i},t.prototype.convertToPixel=function(t,e,n){return qN(e)===this?this.dataToPoint(n):null},t.prototype.convertFromPixel=function(t,e,n){return qN(e)===this?this.pointToData(n):null},t}();function qN(t){var e=t.seriesModel,n=t.singleAxisModel;return n&&n.coordinateSystem||e&&e.coordinateSystem}var KN={create:function(t,e){var n=[];return t.eachComponent("singleAxis",(function(i,r){var o=new jN(i,t,e);o.name="single_"+r,o.resize(i,e),i.coordinateSystem=o,n.push(o)})),t.eachSeries((function(t){if("singleAxis"===t.get("coordinateSystem")){var e=t.getReferringComponents("singleAxis",Co).models[0];t.coordinateSystem=e&&e.coordinateSystem}})),n},dimensions:ZN},$N=["x","y"],JN=["width","height"],QN=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.makeElOption=function(t,e,n,i,r){var o=n.axis,a=o.coordinateSystem,s=nE(a,1-eE(o)),l=a.dataToPoint(e)[0],u=i.get("type");if(u&&"none"!==u){var h=RR(i),c=tE[u](o,l,s);c.style=h,t.graphicKey=c.type,t.pointer=c}VR(e,t,FN(n),n,i,r)},e.prototype.getHandleTransform=function(t,e,n){var i=FN(e,{labelInside:!1});i.labelMargin=n.get(["handle","margin"]);var r=zR(e.axis,t,i);return{x:r[0],y:r[1],rotation:i.rotation+(i.labelDirection<0?Math.PI:0)}},e.prototype.updateHandleTransform=function(t,e,n,i){var r=n.axis,o=r.coordinateSystem,a=eE(r),s=nE(o,a),l=[t.x,t.y];l[a]+=e[a],l[a]=Math.min(s[1],l[a]),l[a]=Math.max(s[0],l[a]);var u=nE(o,1-a),h=(u[1]+u[0])/2,c=[h,h];return c[a]=l[a],{x:l[0],y:l[1],rotation:t.rotation,cursorPoint:c,tooltipOption:{verticalAlign:"middle"}}},e}(DR),tE={line:function(t,e,n){return{type:"Line",subPixelOptimize:!0,shape:BR([e,n[0]],[e,n[1]],eE(t))}},shadow:function(t,e,n){var i=t.getBandWidth(),r=n[1]-n[0];return{type:"Rect",shape:FR([e-i/2,n[0]],[i,r],eE(t))}}};function eE(t){return t.isHorizontal()?0:1}function nE(t,e){var n=t.getRect();return[n[$N[e]],n[$N[e]]+n[JN[e]]]}var iE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="single",e}(fg);var rE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(e,n,i){var r=wp(e);t.prototype.init.apply(this,arguments),oE(e,r)},e.prototype.mergeOption=function(e){t.prototype.mergeOption.apply(this,arguments),oE(this.option,e)},e.prototype.getCellSize=function(){return this.option.cellSize},e.type="calendar",e.defaultOption={z:2,left:80,top:60,cellSize:20,orient:"horizontal",splitLine:{show:!0,lineStyle:{color:"#000",width:1,type:"solid"}},itemStyle:{color:"#fff",borderWidth:1,borderColor:"#ccc"},dayLabel:{show:!0,firstDay:0,position:"start",margin:"50%",color:"#000"},monthLabel:{show:!0,position:"start",margin:5,align:"center",formatter:null,color:"#000"},yearLabel:{show:!0,position:null,margin:30,formatter:null,color:"#ccc",fontFamily:"sans-serif",fontWeight:"bolder",fontSize:20}},e}(Ip);function oE(t,e){var n,i=t.cellSize;1===(n=Y(i)?i:t.cellSize=[i,i]).length&&(n[1]=n[0]);var r=z([0,1],(function(t){return function(t,e){return null!=t[gp[e][0]]||null!=t[gp[e][1]]&&null!=t[gp[e][2]]}(e,t)&&(n[t]="auto"),null!=n[t]&&"auto"!==n[t]}));bp(t,e,{type:"box",ignoreSize:r})}var aE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){var i=this.group;i.removeAll();var r=t.coordinateSystem,o=r.getRangeInfo(),a=r.getOrient(),s=e.getLocaleModel();this._renderDayRect(t,o,i),this._renderLines(t,o,a,i),this._renderYearText(t,o,a,i),this._renderMonthText(t,s,a,i),this._renderWeekText(t,s,o,a,i)},e.prototype._renderDayRect=function(t,e,n){for(var i=t.coordinateSystem,r=t.getModel("itemStyle").getItemStyle(),o=i.getCellWidth(),a=i.getCellHeight(),s=e.start.time;s<=e.end.time;s=i.getNextNDay(s,1).time){var l=i.dataToRect([s],!1).tl,u=new Ts({shape:{x:l[0],y:l[1],width:o,height:a},cursor:"default",style:r});n.add(u)}},e.prototype._renderLines=function(t,e,n,i){var r=this,o=t.coordinateSystem,a=t.getModel(["splitLine","lineStyle"]).getLineStyle(),s=t.get(["splitLine","show"]),l=a.lineWidth;this._tlpoints=[],this._blpoints=[],this._firstDayOfMonth=[],this._firstDayPoints=[];for(var u=e.start,h=0;u.time<=e.end.time;h++){p(u.formatedDate),0===h&&(u=o.getDateInfo(e.start.y+"-"+e.start.m));var c=u.date;c.setMonth(c.getMonth()+1),u=o.getDateInfo(c)}function p(e){r._firstDayOfMonth.push(o.getDateInfo(e)),r._firstDayPoints.push(o.dataToRect([e],!1).tl);var l=r._getLinePointsOfOneWeek(t,e,n);r._tlpoints.push(l[0]),r._blpoints.push(l[l.length-1]),s&&r._drawSplitline(l,a,i)}p(o.getNextNDay(e.end.time,1).formatedDate),s&&this._drawSplitline(r._getEdgesPoints(r._tlpoints,l,n),a,i),s&&this._drawSplitline(r._getEdgesPoints(r._blpoints,l,n),a,i)},e.prototype._getEdgesPoints=function(t,e,n){var i=[t[0].slice(),t[t.length-1].slice()],r="horizontal"===n?0:1;return i[0][r]=i[0][r]-e/2,i[1][r]=i[1][r]+e/2,i},e.prototype._drawSplitline=function(t,e,n){var i=new Ou({z2:20,shape:{points:t},style:e});n.add(i)},e.prototype._getLinePointsOfOneWeek=function(t,e,n){for(var i=t.coordinateSystem,r=i.getDateInfo(e),o=[],a=0;a<7;a++){var s=i.getNextNDay(r.time,a),l=i.dataToRect([s.time],!1);o[2*s.day]=l.tl,o[2*s.day+1]=l["horizontal"===n?"bl":"tr"]}return o},e.prototype._formatterLabel=function(t,e){return X(t)&&t?(n=t,E(e,(function(t,e){n=n.replace("{"+e+"}",i?op(t):t)})),n):U(t)?t(e):e.nameMap;var n,i},e.prototype._yearTextPositionControl=function(t,e,n,i,r){var o=e[0],a=e[1],s=["center","bottom"];"bottom"===i?(a+=r,s=["center","top"]):"left"===i?o-=r:"right"===i?(o+=r,s=["center","top"]):a-=r;var l=0;return"left"!==i&&"right"!==i||(l=Math.PI/2),{rotation:l,x:o,y:a,style:{align:s[0],verticalAlign:s[1]}}},e.prototype._renderYearText=function(t,e,n,i){var r=t.getModel("yearLabel");if(r.get("show")){var o=r.get("margin"),a=r.get("position");a||(a="horizontal"!==n?"top":"left");var s=[this._tlpoints[this._tlpoints.length-1],this._blpoints[0]],l=(s[0][0]+s[1][0])/2,u=(s[0][1]+s[1][1])/2,h="horizontal"===n?0:1,c={top:[l,s[h][1]],bottom:[l,s[1-h][1]],left:[s[1-h][0],u],right:[s[h][0],u]},p=e.start.y;+e.end.y>+e.start.y&&(p=p+"-"+e.end.y);var d=r.get("formatter"),f={start:e.start.y,end:e.end.y,nameMap:p},g=this._formatterLabel(d,f),y=new As({z2:30,style:Yh(r,{text:g})});y.attr(this._yearTextPositionControl(y,c[a],n,a,o)),i.add(y)}},e.prototype._monthTextPositionControl=function(t,e,n,i,r){var o="left",a="top",s=t[0],l=t[1];return"horizontal"===n?(l+=r,e&&(o="center"),"start"===i&&(a="bottom")):(s+=r,e&&(a="middle"),"start"===i&&(o="right")),{x:s,y:l,align:o,verticalAlign:a}},e.prototype._renderMonthText=function(t,e,n,i){var r=t.getModel("monthLabel");if(r.get("show")){var o=r.get("nameMap"),a=r.get("margin"),s=r.get("position"),l=r.get("align"),u=[this._tlpoints,this._blpoints];o&&!X(o)||(o&&(e=Sc(o)||e),o=e.get(["time","monthAbbr"])||[]);var h="start"===s?0:1,c="horizontal"===n?0:1;a="start"===s?-a:a;for(var p="center"===l,d=0;d<u[h].length-1;d++){var f=u[h][d].slice(),g=this._firstDayOfMonth[d];if(p){var y=this._firstDayPoints[d];f[c]=(y[c]+u[0][d+1][c])/2}var v=r.get("formatter"),m=o[+g.m-1],x={yyyy:g.y,yy:(g.y+"").slice(2),MM:g.m,M:+g.m,nameMap:m},_=this._formatterLabel(v,x),b=new As({z2:30,style:A(Yh(r,{text:_}),this._monthTextPositionControl(f,p,n,s,a))});i.add(b)}}},e.prototype._weekTextPositionControl=function(t,e,n,i,r){var o="center",a="middle",s=t[0],l=t[1],u="start"===n;return"horizontal"===e?(s=s+i+(u?1:-1)*r[0]/2,o=u?"right":"left"):(l=l+i+(u?1:-1)*r[1]/2,a=u?"bottom":"top"),{x:s,y:l,align:o,verticalAlign:a}},e.prototype._renderWeekText=function(t,e,n,i,r){var o=t.getModel("dayLabel");if(o.get("show")){var a=t.coordinateSystem,s=o.get("position"),l=o.get("nameMap"),u=o.get("margin"),h=a.getFirstDayOfWeek();if(!l||X(l))l&&(e=Sc(l)||e),l=e.get(["time","dayOfWeekShort"])||z(e.get(["time","dayOfWeekAbbr"]),(function(t){return t[0]}));var c=a.getNextNDay(n.end.time,7-n.lweek).time,p=[a.getCellWidth(),a.getCellHeight()];u=Er(u,Math.min(p[1],p[0])),"start"===s&&(c=a.getNextNDay(n.start.time,-(7+n.fweek)).time,u=-u);for(var d=0;d<7;d++){var f,g=a.getNextNDay(c,d),y=a.dataToRect([g.time],!1).center;f=Math.abs((d+h)%7);var v=new As({z2:30,style:A(Yh(o,{text:l[f]}),this._weekTextPositionControl(y,i,s,u,p))});r.add(v)}}},e.type="calendar",e}(fg),sE=864e5,lE=function(){function t(e,n,i){this.type="calendar",this.dimensions=t.dimensions,this.getDimensionsInfo=t.getDimensionsInfo,this._model=e}return t.getDimensionsInfo=function(){return[{name:"time",type:"time"},"value"]},t.prototype.getRangeInfo=function(){return this._rangeInfo},t.prototype.getModel=function(){return this._model},t.prototype.getRect=function(){return this._rect},t.prototype.getCellWidth=function(){return this._sw},t.prototype.getCellHeight=function(){return this._sh},t.prototype.getOrient=function(){return this._orient},t.prototype.getFirstDayOfWeek=function(){return this._firstDayOfWeek},t.prototype.getDateInfo=function(t){var e=(t=jr(t)).getFullYear(),n=t.getMonth()+1,i=n<10?"0"+n:""+n,r=t.getDate(),o=r<10?"0"+r:""+r,a=t.getDay();return{y:e+"",m:i,d:o,day:a=Math.abs((a+7-this.getFirstDayOfWeek())%7),time:t.getTime(),formatedDate:e+"-"+i+"-"+o,date:t}},t.prototype.getNextNDay=function(t,e){return 0===(e=e||0)||(t=new Date(this.getDateInfo(t).time)).setDate(t.getDate()+e),this.getDateInfo(t)},t.prototype.update=function(t,e){this._firstDayOfWeek=+this._model.getModel("dayLabel").get("firstDay"),this._orient=this._model.get("orient"),this._lineWidth=this._model.getModel("itemStyle").getItemStyle().lineWidth||0,this._rangeInfo=this._getRangeInfo(this._initRangeOption());var n=this._rangeInfo.weeks||1,i=["width","height"],r=this._model.getCellSize().slice(),o=this._model.getBoxLayoutParams(),a="horizontal"===this._orient?[n,7]:[7,n];E([0,1],(function(t){u(r,t)&&(o[i[t]]=r[t]*a[t])}));var s={width:e.getWidth(),height:e.getHeight()},l=this._rect=mp(o,s);function u(t,e){return null!=t[e]&&"auto"!==t[e]}E([0,1],(function(t){u(r,t)||(r[t]=l[i[t]]/a[t])})),this._sw=r[0],this._sh=r[1]},t.prototype.dataToPoint=function(t,e){Y(t)&&(t=t[0]),null==e&&(e=!0);var n=this.getDateInfo(t),i=this._rangeInfo,r=n.formatedDate;if(e&&!(n.time>=i.start.time&&n.time<i.end.time+sE))return[NaN,NaN];var o=n.day,a=this._getRangeInfo([i.start.time,r]).nthWeek;return"vertical"===this._orient?[this._rect.x+o*this._sw+this._sw/2,this._rect.y+a*this._sh+this._sh/2]:[this._rect.x+a*this._sw+this._sw/2,this._rect.y+o*this._sh+this._sh/2]},t.prototype.pointToData=function(t){var e=this.pointToDate(t);return e&&e.time},t.prototype.dataToRect=function(t,e){var n=this.dataToPoint(t,e);return{contentShape:{x:n[0]-(this._sw-this._lineWidth)/2,y:n[1]-(this._sh-this._lineWidth)/2,width:this._sw-this._lineWidth,height:this._sh-this._lineWidth},center:n,tl:[n[0]-this._sw/2,n[1]-this._sh/2],tr:[n[0]+this._sw/2,n[1]-this._sh/2],br:[n[0]+this._sw/2,n[1]+this._sh/2],bl:[n[0]-this._sw/2,n[1]+this._sh/2]}},t.prototype.pointToDate=function(t){var e=Math.floor((t[0]-this._rect.x)/this._sw)+1,n=Math.floor((t[1]-this._rect.y)/this._sh)+1,i=this._rangeInfo.range;return"vertical"===this._orient?this._getDateByWeeksAndDay(n,e-1,i):this._getDateByWeeksAndDay(e,n-1,i)},t.prototype.convertToPixel=function(t,e,n){var i=uE(e);return i===this?i.dataToPoint(n):null},t.prototype.convertFromPixel=function(t,e,n){var i=uE(e);return i===this?i.pointToData(n):null},t.prototype.containPoint=function(t){return console.warn("Not implemented."),!1},t.prototype._initRangeOption=function(){var t,e=this._model.get("range");if(Y(e)&&1===e.length&&(e=e[0]),Y(e))t=e;else{var n=e.toString();if(/^\d{4}$/.test(n)&&(t=[n+"-01-01",n+"-12-31"]),/^\d{4}[\/|-]\d{1,2}$/.test(n)){var i=this.getDateInfo(n),r=i.date;r.setMonth(r.getMonth()+1);var o=this.getNextNDay(r,-1);t=[i.formatedDate,o.formatedDate]}/^\d{4}[\/|-]\d{1,2}[\/|-]\d{1,2}$/.test(n)&&(t=[n,n])}if(!t)return e;var a=this._getRangeInfo(t);return a.start.time>a.end.time&&t.reverse(),t},t.prototype._getRangeInfo=function(t){var e,n=[this.getDateInfo(t[0]),this.getDateInfo(t[1])];n[0].time>n[1].time&&(e=!0,n.reverse());var i=Math.floor(n[1].time/sE)-Math.floor(n[0].time/sE)+1,r=new Date(n[0].time),o=r.getDate(),a=n[1].date.getDate();r.setDate(o+i-1);var s=r.getDate();if(s!==a)for(var l=r.getTime()-n[1].time>0?1:-1;(s=r.getDate())!==a&&(r.getTime()-n[1].time)*l>0;)i-=l,r.setDate(s-l);var u=Math.floor((i+n[0].day+6)/7),h=e?1-u:u-1;return e&&n.reverse(),{range:[n[0].formatedDate,n[1].formatedDate],start:n[0],end:n[1],allDay:i,weeks:u,nthWeek:h,fweek:n[0].day,lweek:n[1].day}},t.prototype._getDateByWeeksAndDay=function(t,e,n){var i=this._getRangeInfo(n);if(t>i.weeks||0===t&&e<i.fweek||t===i.weeks&&e>i.lweek)return null;var r=7*(t-1)-i.fweek+e,o=new Date(i.start.time);return o.setDate(+i.start.d+r),this.getDateInfo(o)},t.create=function(e,n){var i=[];return e.eachComponent("calendar",(function(r){var o=new t(r,e,n);i.push(o),r.coordinateSystem=o})),e.eachSeries((function(t){"calendar"===t.get("coordinateSystem")&&(t.coordinateSystem=i[t.get("calendarIndex")||0])})),i},t.dimensions=["time","value"],t}();function uE(t){var e=t.calendarModel,n=t.seriesModel;return e?e.coordinateSystem:n?n.coordinateSystem:null}function hE(t,e){var n;return E(e,(function(e){null!=t[e]&&"auto"!==t[e]&&(n=!0)})),n}var cE=["transition","enterFrom","leaveTo"],pE=cE.concat(["enterAnimation","updateAnimation","leaveAnimation"]);function dE(t,e,n){if(n&&(!t[n]&&e[n]&&(t[n]={}),t=t[n],e=e[n]),t&&e)for(var i=n?cE:pE,r=0;r<i.length;r++){var o=i[r];null==t[o]&&null!=e[o]&&(t[o]=e[o])}}var fE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.preventAutoZ=!0,n}return n(e,t),e.prototype.mergeOption=function(e,n){var i=this.option.elements;this.option.elements=null,t.prototype.mergeOption.call(this,e,n),this.option.elements=i},e.prototype.optionUpdated=function(t,e){var n=this.option,i=(e?n:t).elements,r=n.elements=e?[]:n.elements,o=[];this._flatten(i,o,null);var a=yo(r,o,"normalMerge"),s=this._elOptionsToUpdate=[];E(a,(function(t,e){var n=t.newOption;n&&(s.push(n),function(t,e){var n=t.existing;if(e.id=t.keyInfo.id,!e.type&&n&&(e.type=n.type),null==e.parentId){var i=e.parentOption;i?e.parentId=i.id:n&&(e.parentId=n.parentId)}e.parentOption=null}(t,n),function(t,e,n){var i=A({},n),r=t[e],o=n.$action||"merge";"merge"===o?r?(C(r,i,!0),bp(r,i,{ignoreSize:!0}),Sp(n,r),dE(n,r),dE(n,r,"shape"),dE(n,r,"style"),dE(n,r,"extra"),n.clipPath=r.clipPath):t[e]=i:"replace"===o?t[e]=i:"remove"===o&&r&&(t[e]=null)}(r,e,n),function(t,e){if(t&&(t.hv=e.hv=[hE(e,["left","right"]),hE(e,["top","bottom"])],"group"===t.type)){var n=t,i=e;null==n.width&&(n.width=i.width=0),null==n.height&&(n.height=i.height=0)}}(r[e],n))}),this),n.elements=B(r,(function(t){return t&&delete t.$action,null!=t}))},e.prototype._flatten=function(t,e,n){E(t,(function(t){if(t){n&&(t.parentOption=n),e.push(t);var i=t.children;"group"===t.type&&i&&this._flatten(i,e,t),delete t.children}}),this)},e.prototype.useElOptionsToUpdate=function(){var t=this._elOptionsToUpdate;return this._elOptionsToUpdate=null,t},e.type="graphic",e.defaultOption={elements:[]},e}(Ip),gE={path:null,compoundPath:null,group:Cr,image:xs,text:As},yE=So(),vE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(){this._elMap=ft()},e.prototype.render=function(t,e,n){t!==this._lastGraphicModel&&this._clear(),this._lastGraphicModel=t,this._updateElements(t),this._relocate(t,n)},e.prototype._updateElements=function(t){var e=t.useElOptionsToUpdate();if(e){var n=this._elMap,i=this.group,r=t.get("z"),o=t.get("zlevel");E(e,(function(e){var a=xo(e.id,null),s=null!=a?n.get(a):null,l=xo(e.parentId,null),u=null!=l?n.get(l):i,h=e.type,c=e.style;"text"===h&&c&&e.hv&&e.hv[1]&&(c.textVerticalAlign=c.textBaseline=c.verticalAlign=c.align=null);var p=e.textContent,d=e.textConfig;if(c&&TO(c,h,!!d,!!p)){var f=CO(c,h,!0);!d&&f.textConfig&&(d=e.textConfig=f.textConfig),!p&&f.textContent&&(p=f.textContent)}var g=function(t){return t=A({},t),E(["id","parentId","$action","hv","bounding","textContent","clipPath"].concat(fp),(function(e){delete t[e]})),t}(e);var y=e.$action||"merge",v="merge"===y,m="replace"===y;if(v){var x=s;(T=!s)?x=xE(a,u,e.type,n):(x&&(yE(x).isNew=!1),jO(x)),x&&(EO(x,g,t,{isInit:T}),bE(x,e,r,o))}else if(m){_E(s,e,n,t);var _=xE(a,u,e.type,n);_&&(EO(_,g,t,{isInit:!0}),bE(_,e,r,o))}else"remove"===y&&(zO(s,e),_E(s,e,n,t));var b=n.get(a);if(b&&p)if(v){var w=b.getTextContent();w?w.attr(p):b.setTextContent(new As(p))}else m&&b.setTextContent(new As(p));if(b){var S=e.clipPath;if(S){var M=S.type,I=void 0,T=!1;if(v){var C=b.getClipPath();I=(T=!C||yE(C).type!==M)?mE(M):C}else m&&(T=!0,I=mE(M));b.setClipPath(I),EO(I,S,t,{isInit:T}),qO(I,S.keyframeAnimation,t)}var D=yE(b);b.setTextConfig(d),D.option=e,function(t,e,n){var i=Ws(t).eventData;t.silent||t.ignore||i||(i=Ws(t).eventData={componentType:"graphic",componentIndex:e.componentIndex,name:t.name});i&&(i.info=n.info)}(b,t,e),Nh({el:b,componentModel:t,itemName:b.name,itemTooltipOption:e.tooltip}),qO(b,e.keyframeAnimation,t)}}))}},e.prototype._relocate=function(t,e){for(var n=t.option.elements,i=this.group,r=this._elMap,o=e.getWidth(),a=e.getHeight(),s=["x","y"],l=0;l<n.length;l++){if((f=null!=(d=xo((p=n[l]).id,null))?r.get(d):null)&&f.isGroup){var u=(g=f.parent)===i,h=yE(f),c=yE(g);h.width=Er(h.option.width,u?o:c.width)||0,h.height=Er(h.option.height,u?a:c.height)||0}}for(l=n.length-1;l>=0;l--){var p,d,f;if(f=null!=(d=xo((p=n[l]).id,null))?r.get(d):null){var g=f.parent,y=(c=yE(g),{}),v=xp(f,p,g===i?{width:o,height:a}:{width:c.width,height:c.height},null,{hv:p.hv,boundingMode:p.bounding},y);if(!yE(f).isNew&&v){for(var m=p.transition,x={},_=0;_<s.length;_++){var b=s[_],w=y[b];m&&(BO(m)||P(m,b)>=0)?x[b]=w:f[b]=w}ih(f,x,t,0)}else f.attr(y)}}},e.prototype._clear=function(){var t=this,e=this._elMap;e.each((function(n){_E(n,yE(n).option,e,t._lastGraphicModel)})),this._elMap=ft()},e.prototype.dispose=function(){this._clear()},e.type="graphic",e}(fg);function mE(t){var e=mt(gE,t)?gE[t]:vh(t);var n=new e({});return yE(n).type=t,n}function xE(t,e,n,i){var r=mE(n);return e.add(r),i.set(t,r),yE(r).id=t,yE(r).isNew=!0,r}function _E(t,e,n,i){t&&t.parent&&("group"===t.type&&t.traverse((function(t){_E(t,e,n,i)})),VO(t,e,i),n.removeKey(yE(t).id))}function bE(t,e,n,i){if(!t.isGroup){var r=t;r.cursor=rt(e.cursor,da.prototype.cursor),r.z=rt(e.z,n||0),r.zlevel=rt(e.zlevel,i||0);var o=e.z2;null!=o&&(r.z2=o||0)}E(G(e),(function(n){var i=e[n];0===n.indexOf("on")&&U(i)&&(t[n]=i)})),t.draggable=e.draggable,null!=e.name&&(t.name=e.name),null!=e.id&&(t.id=e.id)}var wE=["x","y","radius","angle","single"],SE=["cartesian2d","polar","singleAxis"];function ME(t){return t+"Axis"}function IE(t,e){var n,i=ft(),r=[],o=ft();t.eachComponent({mainType:"dataZoom",query:e},(function(t){o.get(t.uid)||s(t)}));do{n=!1,t.eachComponent("dataZoom",a)}while(n);function a(t){!o.get(t.uid)&&function(t){var e=!1;return t.eachTargetAxis((function(t,n){var r=i.get(t);r&&r[n]&&(e=!0)})),e}(t)&&(s(t),n=!0)}function s(t){o.set(t.uid,!0),r.push(t),t.eachTargetAxis((function(t,e){(i.get(t)||i.set(t,[]))[e]=!0}))}return r}function TE(t){var e=t.ecModel,n={infoList:[],infoMap:ft()};return t.eachTargetAxis((function(t,i){var r=e.getComponent(ME(t),i);if(r){var o=r.getCoordSysModel();if(o){var a=o.uid,s=n.infoMap.get(a);s||(s={model:o,axisModels:[]},n.infoList.push(s),n.infoMap.set(a,s)),s.axisModels.push(r)}}})),n}var CE=function(){function t(){this.indexList=[],this.indexMap=[]}return t.prototype.add=function(t){this.indexMap[t]||(this.indexList.push(t),this.indexMap[t]=!0)},t}(),DE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n._autoThrottle=!0,n._noTarget=!0,n._rangePropMode=["percent","percent"],n}return n(e,t),e.prototype.init=function(t,e,n){var i=AE(t);this.settledOption=i,this.mergeDefaultAndTheme(t,n),this._doInit(i)},e.prototype.mergeOption=function(t){var e=AE(t);C(this.option,t,!0),C(this.settledOption,e,!0),this._doInit(e)},e.prototype._doInit=function(t){var e=this.option;this._setDefaultThrottle(t),this._updateRangeUse(t);var n=this.settledOption;E([["start","startValue"],["end","endValue"]],(function(t,i){"value"===this._rangePropMode[i]&&(e[t[0]]=n[t[0]]=null)}),this),this._resetTarget()},e.prototype._resetTarget=function(){var t=this.get("orient",!0),e=this._targetAxisInfoMap=ft();this._fillSpecifiedTargetAxis(e)?this._orient=t||this._makeAutoOrientByTargetAxis():(this._orient=t||"horizontal",this._fillAutoTargetAxisByOrient(e,this._orient)),this._noTarget=!0,e.each((function(t){t.indexList.length&&(this._noTarget=!1)}),this)},e.prototype._fillSpecifiedTargetAxis=function(t){var e=!1;return E(wE,(function(n){var i=this.getReferringComponents(ME(n),Do);if(i.specified){e=!0;var r=new CE;E(i.models,(function(t){r.add(t.componentIndex)})),t.set(n,r)}}),this),e},e.prototype._fillAutoTargetAxisByOrient=function(t,e){var n=this.ecModel,i=!0;if(i){var r="vertical"===e?"y":"x";o(n.findComponents({mainType:r+"Axis"}),r)}i&&o(n.findComponents({mainType:"singleAxis",filter:function(t){return t.get("orient",!0)===e}}),"single");function o(e,n){var r=e[0];if(r){var o=new CE;if(o.add(r.componentIndex),t.set(n,o),i=!1,"x"===n||"y"===n){var a=r.getReferringComponents("grid",Co).models[0];a&&E(e,(function(t){r.componentIndex!==t.componentIndex&&a===t.getReferringComponents("grid",Co).models[0]&&o.add(t.componentIndex)}))}}}i&&E(wE,(function(e){if(i){var r=n.findComponents({mainType:ME(e),filter:function(t){return"category"===t.get("type",!0)}});if(r[0]){var o=new CE;o.add(r[0].componentIndex),t.set(e,o),i=!1}}}),this)},e.prototype._makeAutoOrientByTargetAxis=function(){var t;return this.eachTargetAxis((function(e){!t&&(t=e)}),this),"y"===t?"vertical":"horizontal"},e.prototype._setDefaultThrottle=function(t){if(t.hasOwnProperty("throttle")&&(this._autoThrottle=!1),this._autoThrottle){var e=this.ecModel.option;this.option.throttle=e.animation&&e.animationDurationUpdate>0?100:20}},e.prototype._updateRangeUse=function(t){var e=this._rangePropMode,n=this.get("rangeMode");E([["start","startValue"],["end","endValue"]],(function(i,r){var o=null!=t[i[0]],a=null!=t[i[1]];o&&!a?e[r]="percent":!o&&a?e[r]="value":n?e[r]=n[r]:o&&(e[r]="percent")}))},e.prototype.noTarget=function(){return this._noTarget},e.prototype.getFirstTargetAxisModel=function(){var t;return this.eachTargetAxis((function(e,n){null==t&&(t=this.ecModel.getComponent(ME(e),n))}),this),t},e.prototype.eachTargetAxis=function(t,e){this._targetAxisInfoMap.each((function(n,i){E(n.indexList,(function(n){t.call(e,i,n)}))}))},e.prototype.getAxisProxy=function(t,e){var n=this.getAxisModel(t,e);if(n)return n.__dzAxisProxy},e.prototype.getAxisModel=function(t,e){var n=this._targetAxisInfoMap.get(t);if(n&&n.indexMap[e])return this.ecModel.getComponent(ME(t),e)},e.prototype.setRawRange=function(t){var e=this.option,n=this.settledOption;E([["start","startValue"],["end","endValue"]],(function(i){null==t[i[0]]&&null==t[i[1]]||(e[i[0]]=n[i[0]]=t[i[0]],e[i[1]]=n[i[1]]=t[i[1]])}),this),this._updateRangeUse(t)},e.prototype.setCalculatedRange=function(t){var e=this.option;E(["start","startValue","end","endValue"],(function(n){e[n]=t[n]}))},e.prototype.getPercentRange=function(){var t=this.findRepresentativeAxisProxy();if(t)return t.getDataPercentWindow()},e.prototype.getValueRange=function(t,e){if(null!=t||null!=e)return this.getAxisProxy(t,e).getDataValueWindow();var n=this.findRepresentativeAxisProxy();return n?n.getDataValueWindow():void 0},e.prototype.findRepresentativeAxisProxy=function(t){if(t)return t.__dzAxisProxy;for(var e,n=this._targetAxisInfoMap.keys(),i=0;i<n.length;i++)for(var r=n[i],o=this._targetAxisInfoMap.get(r),a=0;a<o.indexList.length;a++){var s=this.getAxisProxy(r,o.indexList[a]);if(s.hostedBy(this))return s;e||(e=s)}return e},e.prototype.getRangePropMode=function(){return this._rangePropMode.slice()},e.prototype.getOrient=function(){return this._orient},e.type="dataZoom",e.dependencies=["xAxis","yAxis","radiusAxis","angleAxis","singleAxis","series","toolbox"],e.defaultOption={z:4,filterMode:"filter",start:0,end:100},e}(Ip);function AE(t){var e={};return E(["start","end","startValue","endValue","throttle"],(function(n){t.hasOwnProperty(n)&&(e[n]=t[n])})),e}var kE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="dataZoom.select",e}(DE),LE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n,i){this.dataZoomModel=t,this.ecModel=e,this.api=n},e.type="dataZoom",e}(fg),PE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="dataZoom.select",e}(LE),OE=E,RE=Vr,NE=function(){function t(t,e,n,i){this._dimName=t,this._axisIndex=e,this.ecModel=i,this._dataZoomModel=n}return t.prototype.hostedBy=function(t){return this._dataZoomModel===t},t.prototype.getDataValueWindow=function(){return this._valueWindow.slice()},t.prototype.getDataPercentWindow=function(){return this._percentWindow.slice()},t.prototype.getTargetSeriesModels=function(){var t=[];return this.ecModel.eachSeries((function(e){if(function(t){var e=t.get("coordinateSystem");return P(SE,e)>=0}(e)){var n=ME(this._dimName),i=e.getReferringComponents(n,Co).models[0];i&&this._axisIndex===i.componentIndex&&t.push(e)}}),this),t},t.prototype.getAxisModel=function(){return this.ecModel.getComponent(this._dimName+"Axis",this._axisIndex)},t.prototype.getMinMaxSpan=function(){return T(this._minMaxSpan)},t.prototype.calculateDataWindow=function(t){var e,n=this._dataExtent,i=this.getAxisModel().axis.scale,r=this._dataZoomModel.getRangePropMode(),o=[0,100],a=[],s=[];OE(["start","end"],(function(l,u){var h=t[l],c=t[l+"Value"];"percent"===r[u]?(null==h&&(h=o[u]),c=i.parse(Nr(h,o,n))):(e=!0,h=Nr(c=null==c?n[u]:i.parse(c),n,o)),s[u]=c,a[u]=h})),RE(s),RE(a);var l=this._minMaxSpan;function u(t,e,n,r,o){var a=o?"Span":"ValueSpan";sk(0,t,n,"all",l["min"+a],l["max"+a]);for(var s=0;s<2;s++)e[s]=Nr(t[s],n,r,!0),o&&(e[s]=i.parse(e[s]))}return e?u(s,a,n,o,!1):u(a,s,o,n,!0),{valueWindow:s,percentWindow:a}},t.prototype.reset=function(t){if(t===this._dataZoomModel){var e=this.getTargetSeriesModels();this._dataExtent=function(t,e,n){var i=[1/0,-1/0];OE(n,(function(t){!function(t,e,n){e&&E(u_(e,n),(function(n){var i=e.getApproximateExtent(n);i[0]<t[0]&&(t[0]=i[0]),i[1]>t[1]&&(t[1]=i[1])}))}(i,t.getData(),e)}));var r=t.getAxisModel(),o=Qx(r.axis.scale,r,i).calculate();return[o.min,o.max]}(this,this._dimName,e),this._updateMinMaxSpan();var n=this.calculateDataWindow(t.settledOption);this._valueWindow=n.valueWindow,this._percentWindow=n.percentWindow,this._setAxisModel()}},t.prototype.filterData=function(t,e){if(t===this._dataZoomModel){var n=this._dimName,i=this.getTargetSeriesModels(),r=t.get("filterMode"),o=this._valueWindow;"none"!==r&&OE(i,(function(t){var e=t.getData(),i=e.mapDimensionsAll(n);if(i.length){if("weakFilter"===r){var a=e.getStore(),s=z(i,(function(t){return e.getDimensionIndex(t)}),e);e.filterSelf((function(t){for(var e,n,r,l=0;l<i.length;l++){var u=a.get(s[l],t),h=!isNaN(u),c=u<o[0],p=u>o[1];if(h&&!c&&!p)return!0;h&&(r=!0),c&&(e=!0),p&&(n=!0)}return r&&e&&n}))}else OE(i,(function(n){if("empty"===r)t.setData(e=e.map(n,(function(t){return function(t){return t>=o[0]&&t<=o[1]}(t)?t:NaN})));else{var i={};i[n]=o,e.selectRange(i)}}));OE(i,(function(t){e.setApproximateExtent(o,t)}))}}))}},t.prototype._updateMinMaxSpan=function(){var t=this._minMaxSpan={},e=this._dataZoomModel,n=this._dataExtent;OE(["min","max"],(function(i){var r=e.get(i+"Span"),o=e.get(i+"ValueSpan");null!=o&&(o=this.getAxisModel().axis.scale.parse(o)),null!=o?r=Nr(n[0]+o,n,[0,100],!0):null!=r&&(o=Nr(r,[0,100],n,!0)-n[0]),t[i+"Span"]=r,t[i+"ValueSpan"]=o}),this)},t.prototype._setAxisModel=function(){var t=this.getAxisModel(),e=this._percentWindow,n=this._valueWindow;if(e){var i=Gr(n,[0,500]);i=Math.min(i,20);var r=t.axis.scale.rawExtentInfo;0!==e[0]&&r.setDeterminedMinMax("min",+n[0].toFixed(i)),100!==e[1]&&r.setDeterminedMinMax("max",+n[1].toFixed(i)),r.freeze()}},t}();var EE={getTargetSeries:function(t){function e(e){t.eachComponent("dataZoom",(function(n){n.eachTargetAxis((function(i,r){var o=t.getComponent(ME(i),r);e(i,r,o,n)}))}))}e((function(t,e,n,i){n.__dzAxisProxy=null}));var n=[];e((function(e,i,r,o){r.__dzAxisProxy||(r.__dzAxisProxy=new NE(e,i,o,t),n.push(r.__dzAxisProxy))}));var i=ft();return E(n,(function(t){E(t.getTargetSeriesModels(),(function(t){i.set(t.uid,t)}))})),i},overallReset:function(t,e){t.eachComponent("dataZoom",(function(t){t.eachTargetAxis((function(e,n){t.getAxisProxy(e,n).reset(t)})),t.eachTargetAxis((function(n,i){t.getAxisProxy(n,i).filterData(t,e)}))})),t.eachComponent("dataZoom",(function(t){var e=t.findRepresentativeAxisProxy();if(e){var n=e.getDataPercentWindow(),i=e.getDataValueWindow();t.setCalculatedRange({start:n[0],end:n[1],startValue:i[0],endValue:i[1]})}}))}};var zE=!1;function VE(t){zE||(zE=!0,t.registerProcessor(t.PRIORITY.PROCESSOR.FILTER,EE),function(t){t.registerAction("dataZoom",(function(t,e){E(IE(e,t),(function(e){e.setRawRange({start:t.start,end:t.end,startValue:t.startValue,endValue:t.endValue})}))}))}(t),t.registerSubTypeDefaulter("dataZoom",(function(){return"slider"})))}function BE(t){t.registerComponentModel(kE),t.registerComponentView(PE),VE(t)}var FE=function(){},GE={};function WE(t,e){GE[t]=e}function HE(t){return GE[t]}var YE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.optionUpdated=function(){t.prototype.optionUpdated.apply(this,arguments);var e=this.ecModel;E(this.option.feature,(function(t,n){var i=HE(n);i&&(i.getDefaultOption&&(i.defaultOption=i.getDefaultOption(e)),C(t,i.defaultOption))}))},e.type="toolbox",e.layoutMode={type:"box",ignoreSize:!0},e.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"}},e}(Ip);function UE(t,e){var n=np(e.get("padding")),i=e.getItemStyle(["color","opacity"]);return i.fill=e.get("backgroundColor"),t=new Ts({shape:{x:t.x-n[3],y:t.y-n[0],width:t.width+n[1]+n[3],height:t.height+n[0]+n[2],r:e.get("borderRadius")},style:i,silent:!0,z2:-1})}var XE=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.render=function(t,e,n,i){var r=this.group;if(r.removeAll(),t.get("show")){var o=+t.get("itemSize"),a=t.get("feature")||{},s=this._features||(this._features={}),l=[];E(a,(function(t,e){l.push(e)})),new Sm(this._featureNames||[],l).add(u).update(u).remove(H(u,null)).execute(),this._featureNames=l,function(t,e,n){var i=e.getBoxLayoutParams(),r=e.get("padding"),o={width:n.getWidth(),height:n.getHeight()},a=mp(i,o,r);vp(e.get("orient"),t,e.get("itemGap"),a.width,a.height),xp(t,i,o,r)}(r,t,n),r.add(UE(r.getBoundingRect(),t)),r.eachChild((function(t){var e=t.__title,i=t.ensureState("emphasis"),a=i.textConfig||(i.textConfig={}),s=t.getTextContent(),l=s&&s.states.emphasis;if(l&&!U(l)&&e){var u=l.style||(l.style={}),h=cr(e,As.makeFont(u)),c=t.x+r.x,p=!1;t.y+r.y+o+h.height>n.getHeight()&&(a.position="top",p=!0);var d=p?-5-h.height:o+8;c+h.width/2>n.getWidth()?(a.position=["100%",d],u.align="right"):c-h.width/2<0&&(a.position=[0,d],u.align="left")}}))}function u(u,h){var c,p=l[u],d=l[h],f=a[p],g=new pc(f,t,t.ecModel);if(i&&null!=i.newTitle&&i.featureName===p&&(f.title=i.newTitle),p&&!d){if(function(t){return 0===t.indexOf("my")}(p))c={onclick:g.option.onclick,featureName:p};else{var y=HE(p);if(!y)return;c=new y}s[p]=c}else if(!(c=s[d]))return;c.uid=fc("toolbox-feature"),c.model=g,c.ecModel=e,c.api=n;var v=c instanceof FE;p||!d?!g.get("show")||v&&c.unusable?v&&c.remove&&c.remove(e,n):(!function(i,a,s){var l,u,h=i.getModel("iconStyle"),c=i.getModel(["emphasis","iconStyle"]),p=a instanceof FE&&a.getIcons?a.getIcons():i.get("icon"),d=i.get("title")||{};X(p)?(l={})[s]=p:l=p;X(d)?(u={})[s]=d:u=d;var f=i.iconPaths={};E(l,(function(s,l){var p=Lh(s,{},{x:-o/2,y:-o/2,width:o,height:o});p.setStyle(h.getItemStyle()),p.ensureState("emphasis").style=c.getItemStyle();var d=new As({style:{text:u[l],align:c.get("textAlign"),borderRadius:c.get("textBorderRadius"),padding:c.get("textPadding"),fill:null},ignore:!0});p.setTextContent(d),Nh({el:p,componentModel:t,itemName:l,formatterParamsExtra:{title:u[l]}}),p.__title=u[l],p.on("mouseover",(function(){var e=c.getItemStyle(),n="vertical"===t.get("orient")?null==t.get("right")?"right":"left":null==t.get("bottom")?"bottom":"top";d.setStyle({fill:c.get("textFill")||e.fill||e.stroke||"#000",backgroundColor:c.get("textBackgroundColor")}),p.setTextConfig({position:c.get("textPosition")||n}),d.ignore=!t.get("showTitle"),xl(this)})).on("mouseout",(function(){"emphasis"!==i.get(["iconStatus",l])&&_l(this),d.hide()})),("emphasis"===i.get(["iconStatus",l])?xl:_l)(p),r.add(p),p.on("click",W(a.onclick,a,e,n,l)),f[l]=p}))}(g,c,p),g.setIconStatus=function(t,e){var n=this.option,i=this.iconPaths;n.iconStatus=n.iconStatus||{},n.iconStatus[t]=e,i[t]&&("emphasis"===e?xl:_l)(i[t])},c instanceof FE&&c.render&&c.render(g,e,n,i)):v&&c.dispose&&c.dispose(e,n)}},e.prototype.updateView=function(t,e,n,i){E(this._features,(function(t){t instanceof FE&&t.updateView&&t.updateView(t.model,e,n,i)}))},e.prototype.remove=function(t,e){E(this._features,(function(n){n instanceof FE&&n.remove&&n.remove(t,e)})),this.group.removeAll()},e.prototype.dispose=function(t,e){E(this._features,(function(n){n instanceof FE&&n.dispose&&n.dispose(t,e)}))},e.type="toolbox",e}(fg);var ZE=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.onclick=function(t,e){var n=this.model,i=n.get("name")||t.get("title.0.text")||"echarts",o="svg"===e.getZr().painter.getType(),a=o?"svg":n.get("type",!0)||"png",s=e.getConnectedDataURL({type:a,backgroundColor:n.get("backgroundColor",!0)||t.get("backgroundColor")||"#fff",connectedBackgroundColor:n.get("connectedBackgroundColor"),excludeComponents:n.get("excludeComponents"),pixelRatio:n.get("pixelRatio")}),l=r.browser;if(U(MouseEvent)&&(l.newEdge||!l.ie&&!l.edge)){var u=document.createElement("a");u.download=i+"."+a,u.target="_blank",u.href=s;var h=new MouseEvent("click",{view:document.defaultView,bubbles:!0,cancelable:!1});u.dispatchEvent(h)}else if(window.navigator.msSaveOrOpenBlob||o){var c=s.split(","),p=c[0].indexOf("base64")>-1,d=o?decodeURIComponent(c[1]):c[1];p&&(d=window.atob(d));var f=i+"."+a;if(window.navigator.msSaveOrOpenBlob){for(var g=d.length,y=new Uint8Array(g);g--;)y[g]=d.charCodeAt(g);var v=new Blob([y]);window.navigator.msSaveOrOpenBlob(v,f)}else{var m=document.createElement("iframe");document.body.appendChild(m);var x=m.contentWindow,_=x.document;_.open("image/svg+xml","replace"),_.write(d),_.close(),x.focus(),_.execCommand("SaveAs",!0,f),document.body.removeChild(m)}}else{var b=n.get("lang"),w='<body style="margin:0;"><img src="'+s+'" style="max-width:100%;" title="'+(b&&b[0]||"")+'" /></body>',S=window.open();S.document.write(w),S.document.title=i}},e.getDefaultOption=function(t){return{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:t.getLocaleModel().get(["toolbox","saveAsImage","title"]),type:"png",connectedBackgroundColor:"#fff",name:"",excludeComponents:["toolbox"],lang:t.getLocaleModel().get(["toolbox","saveAsImage","lang"])}},e}(FE),jE="__ec_magicType_stack__",qE=[["line","bar"],["stack"]],KE=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.getIcons=function(){var t=this.model,e=t.get("icon"),n={};return E(t.get("type"),(function(t){e[t]&&(n[t]=e[t])})),n},e.getDefaultOption=function(t){return{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:t.getLocaleModel().get(["toolbox","magicType","title"]),option:{},seriesIndex:{}}},e.prototype.onclick=function(t,e,n){var i=this.model,r=i.get(["seriesIndex",n]);if($E[n]){var o,a={series:[]};E(qE,(function(t){P(t,n)>=0&&E(t,(function(t){i.setIconStatus(t,"normal")}))})),i.setIconStatus(n,"emphasis"),t.eachComponent({mainType:"series",query:null==r?null:{seriesIndex:r}},(function(t){var e=t.subType,r=t.id,o=$E[n](e,r,t,i);o&&(k(o,t.option),a.series.push(o));var s=t.coordinateSystem;if(s&&"cartesian2d"===s.type&&("line"===n||"bar"===n)){var l=s.getAxesByScale("ordinal")[0];if(l){var u=l.dim+"Axis",h=t.getReferringComponents(u,Co).models[0].componentIndex;a[u]=a[u]||[];for(var c=0;c<=h;c++)a[u][h]=a[u][h]||{};a[u][h].boundaryGap="bar"===n}}}));var s=n;"stack"===n&&(o=C({stack:i.option.title.tiled,tiled:i.option.title.stack},i.option.title),"emphasis"!==i.get(["iconStatus",n])&&(s="tiled")),e.dispatchAction({type:"changeMagicType",currentType:s,newOption:a,newTitle:o,featureName:"magicType"})}},e}(FE),$E={line:function(t,e,n,i){if("bar"===t)return C({id:e,type:"line",data:n.get("data"),stack:n.get("stack"),markPoint:n.get("markPoint"),markLine:n.get("markLine")},i.get(["option","line"])||{},!0)},bar:function(t,e,n,i){if("line"===t)return C({id:e,type:"bar",data:n.get("data"),stack:n.get("stack"),markPoint:n.get("markPoint"),markLine:n.get("markLine")},i.get(["option","bar"])||{},!0)},stack:function(t,e,n,i){var r=n.get("stack")===jE;if("line"===t||"bar"===t)return i.setIconStatus("stack",r?"normal":"emphasis"),C({id:e,stack:r?"":jE},i.get(["option","stack"])||{},!0)}};um({type:"changeMagicType",event:"magicTypeChanged",update:"prepareAndUpdate"},(function(t,e){e.mergeOption(t.newOption)}));var JE=new Array(60).join("-"),QE="\t";function tz(t){return t.replace(/^\s\s*/,"").replace(/\s\s*$/,"")}var ez=new RegExp("[\t]+","g");function nz(t,e){var n=t.split(new RegExp("\n*"+JE+"\n*","g")),i={series:[]};return E(n,(function(t,n){if(function(t){if(t.slice(0,t.indexOf("\n")).indexOf(QE)>=0)return!0}(t)){var r=function(t){for(var e=t.split(/\n+/g),n=[],i=z(tz(e.shift()).split(ez),(function(t){return{name:t,data:[]}})),r=0;r<e.length;r++){var o=tz(e[r]).split(ez);n.push(o.shift());for(var a=0;a<o.length;a++)i[a]&&(i[a].data[r]=o[a])}return{series:i,categories:n}}(t),o=e[n],a=o.axisDim+"Axis";o&&(i[a]=i[a]||[],i[a][o.axisIndex]={data:r.categories},i.series=i.series.concat(r.series))}else{r=function(t){for(var e=t.split(/\n+/g),n=tz(e.shift()),i=[],r=0;r<e.length;r++){var o=tz(e[r]);if(o){var a=o.split(ez),s="",l=void 0,u=!1;isNaN(a[0])?(u=!0,s=a[0],a=a.slice(1),i[r]={name:s,value:[]},l=i[r].value):l=i[r]=[];for(var h=0;h<a.length;h++)l.push(+a[h]);1===l.length&&(u?i[r].value=l[0]:i[r]=l[0])}}return{name:n,data:i}}(t);i.series.push(r)}})),i}var iz=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.onclick=function(t,e){setTimeout((function(){e.dispatchAction({type:"hideTip"})}));var n=e.getDom(),i=this.model;this._dom&&n.removeChild(this._dom);var r=document.createElement("div");r.style.cssText="position:absolute;top:0;bottom:0;left:0;right:0;padding:5px",r.style.backgroundColor=i.get("backgroundColor")||"#fff";var o=document.createElement("h4"),a=i.get("lang")||[];o.innerHTML=a[0]||i.get("title"),o.style.cssText="margin:10px 20px",o.style.color=i.get("textColor");var s=document.createElement("div"),l=document.createElement("textarea");s.style.cssText="overflow:auto";var u=i.get("optionToContent"),h=i.get("contentToOption"),c=function(t){var e,n,i,r=function(t){var e={},n=[],i=[];return t.eachRawSeries((function(t){var r=t.coordinateSystem;if(!r||"cartesian2d"!==r.type&&"polar"!==r.type)n.push(t);else{var o=r.getBaseAxis();if("category"===o.type){var a=o.dim+"_"+o.index;e[a]||(e[a]={categoryAxis:o,valueAxis:r.getOtherAxis(o),series:[]},i.push({axisDim:o.dim,axisIndex:o.index})),e[a].series.push(t)}else n.push(t)}})),{seriesGroupByCategoryAxis:e,other:n,meta:i}}(t);return{value:B([(n=r.seriesGroupByCategoryAxis,i=[],E(n,(function(t,e){var n=t.categoryAxis,r=t.valueAxis.dim,o=[" "].concat(z(t.series,(function(t){return t.name}))),a=[n.model.getCategories()];E(t.series,(function(t){var e=t.getRawData();a.push(t.getRawData().mapArray(e.mapDimension(r),(function(t){return t})))}));for(var s=[o.join(QE)],l=0;l<a[0].length;l++){for(var u=[],h=0;h<a.length;h++)u.push(a[h][l]);s.push(u.join(QE))}i.push(s.join("\n"))})),i.join("\n\n"+JE+"\n\n")),(e=r.other,z(e,(function(t){var e=t.getRawData(),n=[t.name],i=[];return e.each(e.dimensions,(function(){for(var t=arguments.length,r=arguments[t-1],o=e.getName(r),a=0;a<t-1;a++)i[a]=arguments[a];n.push((o?o+QE:"")+i.join(QE))})),n.join("\n")})).join("\n\n"+JE+"\n\n"))],(function(t){return!!t.replace(/[\n\t\s]/g,"")})).join("\n\n"+JE+"\n\n"),meta:r.meta}}(t);if(U(u)){var p=u(e.getOption());X(p)?s.innerHTML=p:J(p)&&s.appendChild(p)}else{l.readOnly=i.get("readOnly");var d=l.style;d.cssText="width:100%;height:100%;font-family:monospace;font-size:14px;line-height:1.6rem;resize:none",d.color=i.get("textColor"),d.borderColor=i.get("textareaBorderColor"),d.backgroundColor=i.get("textareaColor"),l.value=c.value,s.appendChild(l)}var f=c.meta,g=document.createElement("div");g.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",v=document.createElement("div"),m=document.createElement("div");y+=";background-color:"+i.get("buttonColor"),y+=";color:"+i.get("buttonTextColor");var x=this;function _(){n.removeChild(r),x._dom=null}ae(v,"click",_),ae(m,"click",(function(){if(null==h&&null!=u||null!=h&&null==u)_();else{var t;try{t=U(h)?h(s,e.getOption()):nz(l.value,f)}catch(t){throw _(),new Error("Data view format error "+t)}t&&e.dispatchAction({type:"changeDataView",newOption:t}),_()}})),v.innerHTML=a[1],m.innerHTML=a[2],m.style.cssText=v.style.cssText=y,!i.get("readOnly")&&g.appendChild(m),g.appendChild(v),r.appendChild(o),r.appendChild(s),r.appendChild(g),s.style.height=n.clientHeight-80+"px",n.appendChild(r),this._dom=r},e.prototype.remove=function(t,e){this._dom&&e.getDom().removeChild(this._dom)},e.prototype.dispose=function(t,e){this.remove(t,e)},e.getDefaultOption=function(t){return{show:!0,readOnly:!1,optionToContent:null,contentToOption:null,icon:"M17.5,17.3H33 M17.5,17.3H33 M45.4,29.5h-28 M11.5,2v56H51V14.8L38.4,2H11.5z M38.4,2.2v12.7H51 M45.4,41.7h-28",title:t.getLocaleModel().get(["toolbox","dataView","title"]),lang:t.getLocaleModel().get(["toolbox","dataView","lang"]),backgroundColor:"#fff",textColor:"#000",textareaColor:"#fff",textareaBorderColor:"#333",buttonColor:"#c23531",buttonTextColor:"#fff"}},e}(FE);function rz(t,e){return z(t,(function(t,n){var i=e&&e[n];if(q(i)&&!Y(i)){q(t)&&!Y(t)||(t={value:t});var r=null!=i.name&&null==t.name;return t=k(t,i),r&&delete t.name,t}return t}))}um({type:"changeDataView",event:"dataViewChanged",update:"prepareAndUpdate"},(function(t,e){var n=[];E(t.newOption.series,(function(t){var i=e.getSeriesByName(t.name)[0];if(i){var r=i.get("data");n.push({name:t.name,data:rz(t.data,r)})}else n.push(A({type:"scatter"},t))})),e.mergeOption(k({series:n},t.newOption))}));var oz=E,az=So();function sz(t){var e=az(t);return e.snapshots||(e.snapshots=[{}]),e.snapshots}var lz=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.onclick=function(t,e){!function(t){az(t).snapshots=null}(t),e.dispatchAction({type:"restore",from:this.uid})},e.getDefaultOption=function(t){return{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:t.getLocaleModel().get(["toolbox","restore","title"])}},e}(FE);um({type:"restore",event:"restore",update:"prepareAndUpdate"},(function(t,e){e.resetOption("recreate")}));var uz=["grid","xAxis","yAxis","geo","graph","polar","radiusAxis","angleAxis","bmap"],hz=function(){function t(t,e,n){var i=this;this._targetInfoList=[];var r=pz(e,t);E(dz,(function(t,e){(!n||!n.include||P(n.include,e)>=0)&&t(r,i._targetInfoList)}))}return t.prototype.setOutputRanges=function(t,e){return this.matchOutputRanges(t,e,(function(t,e,n){if((t.coordRanges||(t.coordRanges=[])).push(e),!t.coordRange){t.coordRange=e;var i=yz[t.brushType](0,n,e);t.__rangeOffset={offset:mz[t.brushType](i.values,t.range,[1,1]),xyMinMax:i.xyMinMax}}})),t},t.prototype.matchOutputRanges=function(t,e,n){E(t,(function(t){var i=this.findTargetInfo(t,e);i&&!0!==i&&E(i.coordSyses,(function(i){var r=yz[t.brushType](1,i,t.range,!0);n(t,r.values,i,e)}))}),this)},t.prototype.setInputRanges=function(t,e){E(t,(function(t){var n,i,r,o,a,s=this.findTargetInfo(t,e);if(t.range=t.range||[],s&&!0!==s){t.panelId=s.panelId;var l=yz[t.brushType](0,s.coordSys,t.coordRange),u=t.__rangeOffset;t.range=u?mz[t.brushType](l.values,u.offset,(n=l.xyMinMax,i=u.xyMinMax,r=_z(n),o=_z(i),a=[r[0]/o[0],r[1]/o[1]],isNaN(a[0])&&(a[0]=1),isNaN(a[1])&&(a[1]=1),a)):l.values}}),this)},t.prototype.makePanelOpts=function(t,e){return z(this._targetInfoList,(function(n){var i=n.getPanelRect();return{panelId:n.panelId,defaultBrushType:e?e(n):null,clipPath:uL(i),isTargetByCursor:cL(i,t,n.coordSysModel),getLinearBrushOtherExtent:hL(i)}}))},t.prototype.controlSeries=function(t,e,n){var i=this.findTargetInfo(t,n);return!0===i||i&&P(i.coordSyses,e.coordinateSystem)>=0},t.prototype.findTargetInfo=function(t,e){for(var n=this._targetInfoList,i=pz(e,t),r=0;r<n.length;r++){var o=n[r],a=t.panelId;if(a){if(o.panelId===a)return o}else for(var s=0;s<fz.length;s++)if(fz[s](i,o))return o}return!0},t}();function cz(t){return t[0]>t[1]&&t.reverse(),t}function pz(t,e){return Io(t,e,{includeMainTypes:uz})}var dz={grid:function(t,e){var n=t.xAxisModels,i=t.yAxisModels,r=t.gridModels,o=ft(),a={},s={};(n||i||r)&&(E(n,(function(t){var e=t.axis.grid.model;o.set(e.id,e),a[e.id]=!0})),E(i,(function(t){var e=t.axis.grid.model;o.set(e.id,e),s[e.id]=!0})),E(r,(function(t){o.set(t.id,t),a[t.id]=!0,s[t.id]=!0})),o.each((function(t){var r=t.coordinateSystem,o=[];E(r.getCartesians(),(function(t,e){(P(n,t.getAxis("x").model)>=0||P(i,t.getAxis("y").model)>=0)&&o.push(t)})),e.push({panelId:"grid--"+t.id,gridModel:t,coordSysModel:t,coordSys:o[0],coordSyses:o,getPanelRect:gz.grid,xAxisDeclared:a[t.id],yAxisDeclared:s[t.id]})})))},geo:function(t,e){E(t.geoModels,(function(t){var n=t.coordinateSystem;e.push({panelId:"geo--"+t.id,geoModel:t,coordSysModel:t,coordSys:n,coordSyses:[n],getPanelRect:gz.geo})}))}},fz=[function(t,e){var n=t.xAxisModel,i=t.yAxisModel,r=t.gridModel;return!r&&n&&(r=n.axis.grid.model),!r&&i&&(r=i.axis.grid.model),r&&r===e.gridModel},function(t,e){var n=t.geoModel;return n&&n===e.geoModel}],gz={grid:function(){return this.coordSys.master.getRect().clone()},geo:function(){var t=this.coordSys,e=t.getBoundingRect().clone();return e.applyTransform(Mh(t)),e}},yz={lineX:H(vz,0),lineY:H(vz,1),rect:function(t,e,n,i){var r=t?e.pointToData([n[0][0],n[1][0]],i):e.dataToPoint([n[0][0],n[1][0]],i),o=t?e.pointToData([n[0][1],n[1][1]],i):e.dataToPoint([n[0][1],n[1][1]],i),a=[cz([r[0],o[0]]),cz([r[1],o[1]])];return{values:a,xyMinMax:a}},polygon:function(t,e,n,i){var r=[[1/0,-1/0],[1/0,-1/0]];return{values:z(n,(function(n){var o=t?e.pointToData(n,i):e.dataToPoint(n,i);return r[0][0]=Math.min(r[0][0],o[0]),r[1][0]=Math.min(r[1][0],o[1]),r[0][1]=Math.max(r[0][1],o[0]),r[1][1]=Math.max(r[1][1],o[1]),o})),xyMinMax:r}}};function vz(t,e,n,i){var r=n.getAxis(["x","y"][t]),o=cz(z([0,1],(function(t){return e?r.coordToData(r.toLocalCoord(i[t]),!0):r.toGlobalCoord(r.dataToCoord(i[t]))}))),a=[];return a[t]=o,a[1-t]=[NaN,NaN],{values:o,xyMinMax:a}}var mz={lineX:H(xz,0),lineY:H(xz,1),rect:function(t,e,n){return[[t[0][0]-n[0]*e[0][0],t[0][1]-n[0]*e[0][1]],[t[1][0]-n[1]*e[1][0],t[1][1]-n[1]*e[1][1]]]},polygon:function(t,e,n){return z(t,(function(t,i){return[t[0]-n[0]*e[i][0],t[1]-n[1]*e[i][1]]}))}};function xz(t,e,n,i){return[e[0]-i[t]*n[0],e[1]-i[t]*n[1]]}function _z(t){return t?[t[0][1]-t[0][0],t[1][1]-t[1][0]]:[NaN,NaN]}var bz,wz,Sz=E,Mz=uo+"toolbox-dataZoom_",Iz=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.render=function(t,e,n,i){this._brushController||(this._brushController=new Pk(n.getZr()),this._brushController.on("brush",W(this._onBrush,this)).mount()),function(t,e,n,i,r){var o=n._isZoomActive;i&&"takeGlobalCursor"===i.type&&(o="dataZoomSelect"===i.key&&i.dataZoomSelectActive);n._isZoomActive=o,t.setIconStatus("zoom",o?"emphasis":"normal");var a=new hz(Cz(t),e,{include:["grid"]}).makePanelOpts(r,(function(t){return t.xAxisDeclared&&!t.yAxisDeclared?"lineX":!t.xAxisDeclared&&t.yAxisDeclared?"lineY":"rect"}));n._brushController.setPanels(a).enableBrush(!(!o||!a.length)&&{brushType:"auto",brushStyle:t.getModel("brushStyle").getItemStyle()})}(t,e,this,i,n),function(t,e){t.setIconStatus("back",function(t){return sz(t).length}(e)>1?"emphasis":"normal")}(t,e)},e.prototype.onclick=function(t,e,n){Tz[n].call(this)},e.prototype.remove=function(t,e){this._brushController&&this._brushController.unmount()},e.prototype.dispose=function(t,e){this._brushController&&this._brushController.dispose()},e.prototype._onBrush=function(t){var e=t.areas;if(t.isEnd&&e.length){var n={},i=this.ecModel;this._brushController.updateCovers([]),new hz(Cz(this.model),i,{include:["grid"]}).matchOutputRanges(e,i,(function(t,e,n){if("cartesian2d"===n.type){var i=t.brushType;"rect"===i?(r("x",n,e[0]),r("y",n,e[1])):r({lineX:"x",lineY:"y"}[i],n,e)}})),function(t,e){var n=sz(t);oz(e,(function(e,i){for(var r=n.length-1;r>=0&&!n[r][i];r--);if(r<0){var o=t.queryComponents({mainType:"dataZoom",subType:"select",id:i})[0];if(o){var a=o.getPercentRange();n[0][i]={dataZoomId:i,start:a[0],end:a[1]}}}})),n.push(e)}(i,n),this._dispatchZoomAction(n)}function r(t,e,r){var o=e.getAxis(t),a=o.model,s=function(t,e,n){var i;return n.eachComponent({mainType:"dataZoom",subType:"select"},(function(n){n.getAxisModel(t,e.componentIndex)&&(i=n)})),i}(t,a,i),l=s.findRepresentativeAxisProxy(a).getMinMaxSpan();null==l.minValueSpan&&null==l.maxValueSpan||(r=sk(0,r.slice(),o.scale.getExtent(),0,l.minValueSpan,l.maxValueSpan)),s&&(n[s.id]={dataZoomId:s.id,startValue:r[0],endValue:r[1]})}},e.prototype._dispatchZoomAction=function(t){var e=[];Sz(t,(function(t,n){e.push(T(t))})),e.length&&this.api.dispatchAction({type:"dataZoom",from:this.uid,batch:e})},e.getDefaultOption=function(t){return{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:t.getLocaleModel().get(["toolbox","dataZoom","title"]),brushStyle:{borderWidth:0,color:"rgba(210,219,238,0.2)"}}},e}(FE),Tz={zoom:function(){var t=!this._isZoomActive;this.api.dispatchAction({type:"takeGlobalCursor",key:"dataZoomSelect",dataZoomSelectActive:t})},back:function(){this._dispatchZoomAction(function(t){var e=sz(t),n=e[e.length-1];e.length>1&&e.pop();var i={};return oz(n,(function(t,n){for(var r=e.length-1;r>=0;r--)if(t=e[r][n]){i[n]=t;break}})),i}(this.ecModel))}};function Cz(t){var e={xAxisIndex:t.get("xAxisIndex",!0),yAxisIndex:t.get("yAxisIndex",!0),xAxisId:t.get("xAxisId",!0),yAxisId:t.get("yAxisId",!0)};return null==e.xAxisIndex&&null==e.xAxisId&&(e.xAxisIndex="all"),null==e.yAxisIndex&&null==e.yAxisId&&(e.yAxisIndex="all"),e}bz="dataZoom",wz=function(t){var e=t.getComponent("toolbox",0),n=["feature","dataZoom"];if(e&&null!=e.get(n)){var i=e.getModel(n),r=[],o=Io(t,Cz(i));return Sz(o.xAxisModels,(function(t){return a(t,"xAxis","xAxisIndex")})),Sz(o.yAxisModels,(function(t){return a(t,"yAxis","yAxisIndex")})),r}function a(t,e,n){var o=t.componentIndex,a={type:"select",$fromToolbox:!0,filterMode:i.get("filterMode",!0)||"filter",id:Mz+e+o};a[n]=o,r.push(a)}},lt(null==Zp.get(bz)&&wz),Zp.set(bz,wz);var Dz=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="tooltip",e.dependencies=["axisPointer"],e.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:.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}},e}(Ip);function Az(t){var e=t.get("confine");return null!=e?!!e:"richText"===t.get("renderMode")}function kz(t){if(r.domSupported)for(var e=document.documentElement.style,n=0,i=t.length;n<i;n++)if(t[n]in e)return t[n]}var Lz=kz(["transform","webkitTransform","OTransform","MozTransform","msTransform"]);function Pz(t,e){if(!t)return e;e=ep(e,!0);var n=t.indexOf(e);return(t=-1===n?e:"-"+t.slice(0,n)+"-"+e).toLowerCase()}var Oz=Pz(kz(["webkitTransition","transition","OTransition","MozTransition","msTransition"]),"transition"),Rz=Pz(Lz,"transform"),Nz="position:absolute;display:block;border-style:solid;white-space:nowrap;z-index:9999999;"+(r.transform3dSupported?"will-change:transform;":"");function Ez(t,e,n){var i=t.toFixed(0)+"px",o=e.toFixed(0)+"px";if(!r.transformSupported)return n?"top:"+o+";left:"+i+";":[["top",o],["left",i]];var a=r.transform3dSupported,s="translate"+(a?"3d":"")+"("+i+","+o+(a?",0":"")+")";return n?"top:0;left:0;"+Rz+":"+s+";":[["top",0],["left",0],[Lz,s]]}function zz(t,e,n){var i=[],o=t.get("transitionDuration"),a=t.get("backgroundColor"),s=t.get("shadowBlur"),l=t.get("shadowColor"),u=t.get("shadowOffsetX"),h=t.get("shadowOffsetY"),c=t.getModel("textStyle"),p=eg(t,"html"),d=u+"px "+h+"px "+s+"px "+l;return i.push("box-shadow:"+d),e&&o&&i.push(function(t,e){var n="cubic-bezier(0.23,1,0.32,1)",i=" "+t/2+"s "+n,o="opacity"+i+",visibility"+i;return e||(i=" "+t+"s "+n,o+=r.transformSupported?","+Rz+i:",left"+i+",top"+i),Oz+":"+o}(o,n)),a&&i.push("background-color:"+a),E(["width","color","radius"],(function(e){var n="border-"+e,r=ep(n),o=t.get(r);null!=o&&i.push(n+":"+o+("color"===e?"":"px"))})),i.push(function(t){var e=[],n=t.get("fontSize"),i=t.getTextColor();i&&e.push("color:"+i),e.push("font:"+t.getFont()),n&&e.push("line-height:"+Math.round(3*n/2)+"px");var r=t.get("textShadowColor"),o=t.get("textShadowBlur")||0,a=t.get("textShadowOffsetX")||0,s=t.get("textShadowOffsetY")||0;return r&&o&&e.push("text-shadow:"+a+"px "+s+"px "+o+"px "+r),E(["decoration","align"],(function(n){var i=t.get(n);i&&e.push("text-"+n+":"+i)})),e.join(";")}(c)),null!=p&&i.push("padding:"+np(p).join("px ")+"px"),i.join(";")+";"}function Vz(t,e,n,i,r){var o=e&&e.painter;if(n){var a=o&&o.getViewportRoot();a&&function(t,e,n,i,r){$t(Kt,e,i,r,!0)&&$t(t,n,Kt[0],Kt[1])}(t,a,document.body,i,r)}else{t[0]=i,t[1]=r;var s=o&&o.getViewportRootOffset();s&&(t[0]+=s.offsetLeft,t[1]+=s.offsetTop)}t[2]=t[0]/e.getWidth(),t[3]=t[1]/e.getHeight()}var Bz=function(){function t(t,e,n){if(this._show=!1,this._styleCoord=[0,0,0,0],this._enterable=!0,this._firstShow=!0,this._longHide=!0,r.wxa)return null;var i=document.createElement("div");i.domBelongToZr=!0,this.el=i;var o=this._zr=e.getZr(),a=this._appendToBody=n&&n.appendToBody;Vz(this._styleCoord,o,a,e.getWidth()/2,e.getHeight()/2),a?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(t){if(t=t||window.event,!s._enterable){var e=o.handler;oe(o.painter.getViewportRoot(),t,!0),e.dispatch("mousemove",t)}},i.onmouseleave=function(){s._inContent=!1,s._enterable&&s._show&&s.hideLater(s._hideDelay)}}return t.prototype.update=function(t){var e,n,i,r=this._container,o=(n="position",(i=(e=r).currentStyle||document.defaultView&&document.defaultView.getComputedStyle(e))?n?i[n]:i:null),a=r.style;"absolute"!==a.position&&"absolute"!==o&&(a.position="relative"),t.get("alwaysShowContent")&&this._moveIfResized(),this.el.className=t.get("className")||""},t.prototype.show=function(t,e){clearTimeout(this._hideTimeout),clearTimeout(this._longHideTimeout);var n=this.el,i=n.style,r=this._styleCoord;n.innerHTML?i.cssText=Nz+zz(t,!this._firstShow,this._longHide)+Ez(r[0],r[1],!0)+"border-color:"+cp(e)+";"+(t.get("extraCssText")||"")+";pointer-events:"+(this._enterable?"auto":"none"):i.display="none",this._show=!0,this._firstShow=!1,this._longHide=!1},t.prototype.setContent=function(t,e,n,i,r){var o=this.el;if(null!=t){var a="";if(X(r)&&"item"===n.get("trigger")&&!Az(n)&&(a=function(t,e,n){if(!X(n)||"inside"===n)return"";var i=t.get("backgroundColor"),r=t.get("borderWidth");e=cp(e);var o,a,s="left"===(o=n)?"right":"right"===o?"left":"top"===o?"bottom":"top",l=Math.max(1.5*Math.round(r),6),u="",h=Rz+":";P(["left","right"],s)>-1?(u+="top:50%",h+="translateY(-50%) rotate("+(a="left"===s?-225:-45)+"deg)"):(u+="left:50%",h+="translateX(-50%) rotate("+(a="top"===s?225:45)+"deg)");var c=a*Math.PI/180,p=l+r,d=p*Math.abs(Math.cos(c))+p*Math.abs(Math.sin(c)),f=e+" solid "+r+"px;";return'<div style="'+["position:absolute;width:"+l+"px;height:"+l+"px;",(u+=";"+s+":-"+Math.round(100*((d-Math.SQRT2*r)/2+Math.SQRT2*r-(d-p)/2))/100+"px")+";"+h+";","border-bottom:"+f,"border-right:"+f,"background-color:"+i+";"].join("")+'"></div>'}(n,i,r)),X(t))o.innerHTML=t+a;else if(t){o.innerHTML="",Y(t)||(t=[t]);for(var s=0;s<t.length;s++)J(t[s])&&t[s].parentNode!==o&&o.appendChild(t[s]);if(a&&o.childNodes.length){var l=document.createElement("div");l.innerHTML=a,o.appendChild(l)}}}else o.innerHTML=""},t.prototype.setEnterable=function(t){this._enterable=t},t.prototype.getSize=function(){var t=this.el;return[t.offsetWidth,t.offsetHeight]},t.prototype.moveTo=function(t,e){var n=this._styleCoord;if(Vz(n,this._zr,this._appendToBody,t,e),null!=n[0]&&null!=n[1]){var i=this.el.style;E(Ez(n[0],n[1]),(function(t){i[t[0]]=t[1]}))}},t.prototype._moveIfResized=function(){var t=this._styleCoord[2],e=this._styleCoord[3];this.moveTo(t*this._zr.getWidth(),e*this._zr.getHeight())},t.prototype.hide=function(){var t=this,e=this.el.style;e.visibility="hidden",e.opacity="0",r.transform3dSupported&&(e.willChange=""),this._show=!1,this._longHideTimeout=setTimeout((function(){return t._longHide=!0}),500)},t.prototype.hideLater=function(t){!this._show||this._inContent&&this._enterable||(t?(this._hideDelay=t,this._show=!1,this._hideTimeout=setTimeout(W(this.hide,this),t)):this.hide())},t.prototype.isShow=function(){return this._show},t.prototype.dispose=function(){this.el.parentNode.removeChild(this.el)},t}(),Fz=function(){function t(t){this._show=!1,this._styleCoord=[0,0,0,0],this._enterable=!0,this._zr=t.getZr(),Hz(this._styleCoord,this._zr,t.getWidth()/2,t.getHeight()/2)}return t.prototype.update=function(t){t.get("alwaysShowContent")&&this._moveIfResized()},t.prototype.show=function(){this._hideTimeout&&clearTimeout(this._hideTimeout),this.el.show(),this._show=!0},t.prototype.setContent=function(t,e,n,i,r){var o=this;q(t)&&ao(""),this.el&&this._zr.remove(this.el);var a=n.getModel("textStyle");this.el=new As({style:{rich:e.richTextStyles,text:t,lineHeight:22,borderWidth:1,borderColor:i,textShadowColor:a.get("textShadowColor"),fill:n.get(["textStyle","color"]),padding:eg(n,"richText"),verticalAlign:"top",align:"left"},z:n.get("z")}),E(["backgroundColor","borderRadius","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY"],(function(t){o.el.style[t]=n.get(t)})),E(["textShadowBlur","textShadowOffsetX","textShadowOffsetY"],(function(t){o.el.style[t]=a.get(t)||0})),this._zr.add(this.el);var s=this;this.el.on("mouseover",(function(){s._enterable&&(clearTimeout(s._hideTimeout),s._show=!0),s._inContent=!0})),this.el.on("mouseout",(function(){s._enterable&&s._show&&s.hideLater(s._hideDelay),s._inContent=!1}))},t.prototype.setEnterable=function(t){this._enterable=t},t.prototype.getSize=function(){var t=this.el,e=this.el.getBoundingRect(),n=Wz(t.style);return[e.width+n.left+n.right,e.height+n.top+n.bottom]},t.prototype.moveTo=function(t,e){var n=this.el;if(n){var i=this._styleCoord;Hz(i,this._zr,t,e),t=i[0],e=i[1];var r=n.style,o=Gz(r.borderWidth||0),a=Wz(r);n.x=t+o+a.left,n.y=e+o+a.top,n.markRedraw()}},t.prototype._moveIfResized=function(){var t=this._styleCoord[2],e=this._styleCoord[3];this.moveTo(t*this._zr.getWidth(),e*this._zr.getHeight())},t.prototype.hide=function(){this.el&&this.el.hide(),this._show=!1},t.prototype.hideLater=function(t){!this._show||this._inContent&&this._enterable||(t?(this._hideDelay=t,this._show=!1,this._hideTimeout=setTimeout(W(this.hide,this),t)):this.hide())},t.prototype.isShow=function(){return this._show},t.prototype.dispose=function(){this._zr.remove(this.el)},t}();function Gz(t){return Math.max(0,t)}function Wz(t){var e=Gz(t.shadowBlur||0),n=Gz(t.shadowOffsetX||0),i=Gz(t.shadowOffsetY||0);return{left:Gz(e-n),right:Gz(e+n),top:Gz(e-i),bottom:Gz(e+i)}}function Hz(t,e,n,i){t[0]=n,t[1]=i,t[2]=t[0]/e.getWidth(),t[3]=t[1]/e.getHeight()}var Yz=new Ts({shape:{x:-1,y:-1,width:2,height:2}}),Uz=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(t,e){if(!r.node&&e.getDom()){var n,i=t.getComponent("tooltip"),o=this._renderMode="auto"===(n=i.get("renderMode"))?r.domSupported?"html":"richText":n||"html";this._tooltipContent="richText"===o?new Fz(e):new Bz(e.getDom(),e,{appendToBody:i.get("appendToBody",!0)})}},e.prototype.render=function(t,e,n){if(!r.node&&n.getDom()){this.group.removeAll(),this._tooltipModel=t,this._ecModel=e,this._api=n,this._alwaysShowContent=t.get("alwaysShowContent");var i=this._tooltipContent;i.update(t),i.setEnterable(t.get("enterable")),this._initGlobalListener(),this._keepShow(),"richText"!==this._renderMode&&t.get("transitionDuration")?Dg(this,"_updatePosition",50,"fixRate"):Ag(this,"_updatePosition")}},e.prototype._initGlobalListener=function(){var t=this._tooltipModel.get("triggerOn");qR("itemTooltip",this._api,W((function(e,n,i){"none"!==t&&(t.indexOf(e)>=0?this._tryShow(n,i):"leave"===e&&this._hide(i))}),this))},e.prototype._keepShow=function(){var t=this._tooltipModel,e=this._ecModel,n=this._api;if(null!=this._lastX&&null!=this._lastY&&"none"!==t.get("triggerOn")){var i=this;clearTimeout(this._refreshUpdateTimeout),this._refreshUpdateTimeout=setTimeout((function(){!n.isDisposed()&&i.manuallyShowTip(t,e,n,{x:i._lastX,y:i._lastY,dataByCoordSys:i._lastDataByCoordSys})}))}},e.prototype.manuallyShowTip=function(t,e,n,i){if(i.from!==this.uid&&!r.node&&n.getDom()){var o=Zz(i,n);this._ticket="";var a=i.dataByCoordSys,s=function(t,e,n){var i=To(t).queryOptionMap,r=i.keys()[0];if(!r||"series"===r)return;var o,a=Ao(e,r,i.get(r),{useDefault:!1,enableAll:!1,enableNone:!1}).models[0];if(!a)return;if(n.getViewOfComponentModel(a).group.traverse((function(e){var n=Ws(e).tooltipConfig;if(n&&n.name===t.name)return o=e,!0})),o)return{componentMainType:r,componentIndex:a.componentIndex,el:o}}(i,e,n);if(s){var l=s.el.getBoundingRect().clone();l.applyTransform(s.el.transform),this._tryShow({offsetX:l.x+l.width/2,offsetY:l.y+l.height/2,target:s.el,position:i.position,positionDefault:"bottom"},o)}else if(i.tooltip&&null!=i.x&&null!=i.y){var u=Yz;u.x=i.x,u.y=i.y,u.update(),Ws(u).tooltipConfig={name:null,option:i.tooltip},this._tryShow({offsetX:i.x,offsetY:i.y,target:u},o)}else if(a)this._tryShow({offsetX:i.x,offsetY:i.y,position:i.position,dataByCoordSys:a,tooltipOption:i.tooltipOption},o);else if(null!=i.seriesIndex){if(this._manuallyAxisShowTip(t,e,n,i))return;var h=tN(i,e),c=h.point[0],p=h.point[1];null!=c&&null!=p&&this._tryShow({offsetX:c,offsetY:p,target:h.el,position:i.position,positionDefault:"bottom"},o)}else null!=i.x&&null!=i.y&&(n.dispatchAction({type:"updateAxisPointer",x:i.x,y:i.y}),this._tryShow({offsetX:i.x,offsetY:i.y,position:i.position,target:n.getZr().findHover(i.x,i.y).target},o))}},e.prototype.manuallyHideTip=function(t,e,n,i){var r=this._tooltipContent;!this._alwaysShowContent&&this._tooltipModel&&r.hideLater(this._tooltipModel.get("hideDelay")),this._lastX=this._lastY=this._lastDataByCoordSys=null,i.from!==this.uid&&this._hide(Zz(i,n))},e.prototype._manuallyAxisShowTip=function(t,e,n,i){var r=i.seriesIndex,o=i.dataIndex,a=e.getComponent("axisPointer").coordSysAxesInfo;if(null!=r&&null!=o&&null!=a){var s=e.getSeriesByIndex(r);if(s)if("axis"===Xz([s.getData().getItemModel(o),s,(s.coordinateSystem||{}).model],this._tooltipModel).get("trigger"))return n.dispatchAction({type:"updateAxisPointer",seriesIndex:r,dataIndex:o,position:i.position}),!0}},e.prototype._tryShow=function(t,e){var n=t.target;if(this._tooltipModel){this._lastX=t.offsetX,this._lastY=t.offsetY;var i=t.dataByCoordSys;if(i&&i.length)this._showAxisTooltip(i,t);else if(n){var r,o;this._lastDataByCoordSys=null,my(n,(function(t){return null!=Ws(t).dataIndex?(r=t,!0):null!=Ws(t).tooltipConfig?(o=t,!0):void 0}),!0),r?this._showSeriesItemTooltip(t,r,e):o?this._showComponentItemTooltip(t,o,e):this._hide(e)}else this._lastDataByCoordSys=null,this._hide(e)}},e.prototype._showOrMove=function(t,e){var n=t.get("showDelay");e=W(e,this),clearTimeout(this._showTimout),n>0?this._showTimout=setTimeout(e,n):e()},e.prototype._showAxisTooltip=function(t,e){var n=this._ecModel,i=this._tooltipModel,r=[e.offsetX,e.offsetY],o=Xz([e.tooltipOption],i),a=this._renderMode,s=[],l=Uf("section",{blocks:[],noHeader:!0}),u=[],h=new ng;E(t,(function(t){E(t.dataByAxis,(function(t){var e=n.getComponent(t.axisDim+"Axis",t.axisIndex),r=t.value;if(e&&null!=r){var o=ER(r,e.axis,n,t.seriesDataIndices,t.valueLabelOpt),c=Uf("section",{header:o,noHeader:!ut(o),sortBlocks:!0,blocks:[]});l.blocks.push(c),E(t.seriesDataIndices,(function(l){var p=n.getSeriesByIndex(l.seriesIndex),d=l.dataIndexInside,f=p.getDataParams(d);if(!(f.dataIndex<0)){f.axisDim=t.axisDim,f.axisIndex=t.axisIndex,f.axisType=t.axisType,f.axisId=t.axisId,f.axisValue=o_(e.axis,{value:r}),f.axisValueLabel=o,f.marker=h.makeTooltipMarker("item",cp(f.color),a);var g=lf(p.formatTooltip(d,!0,null)),y=g.frag;if(y){var v=Xz([p],i).get("valueFormatter");c.blocks.push(v?A({valueFormatter:v},y):y)}g.text&&u.push(g.text),s.push(f)}}))}}))})),l.blocks.reverse(),u.reverse();var c=e.position,p=o.get("order"),d=$f(l,h,a,p,n.get("useUTC"),o.get("textStyle"));d&&u.unshift(d);var f="richText"===a?"\n\n":"<br/>",g=u.join(f);this._showOrMove(o,(function(){this._updateContentNotChangedOnAxis(t,s)?this._updatePosition(o,c,r[0],r[1],this._tooltipContent,s):this._showTooltipContent(o,g,s,Math.random()+"",r[0],r[1],c,null,h)}))},e.prototype._showSeriesItemTooltip=function(t,e,n){var i=this._ecModel,r=Ws(e),o=r.seriesIndex,a=i.getSeriesByIndex(o),s=r.dataModel||a,l=r.dataIndex,u=r.dataType,h=s.getData(u),c=this._renderMode,p=t.positionDefault,d=Xz([h.getItemModel(l),s,a&&(a.coordinateSystem||{}).model],this._tooltipModel,p?{position:p}:null),f=d.get("trigger");if(null==f||"item"===f){var g=s.getDataParams(l,u),y=new ng;g.marker=y.makeTooltipMarker("item",cp(g.color),c);var v=lf(s.formatTooltip(l,!1,u)),m=d.get("order"),x=d.get("valueFormatter"),_=v.frag,b=_?$f(x?A({valueFormatter:x},_):_,y,c,m,i.get("useUTC"),d.get("textStyle")):v.text,w="item_"+s.name+"_"+l;this._showOrMove(d,(function(){this._showTooltipContent(d,b,g,w,t.offsetX,t.offsetY,t.position,t.target,y)})),n({type:"showTip",dataIndexInside:l,dataIndex:h.getRawIndex(l),seriesIndex:o,from:this.uid})}},e.prototype._showComponentItemTooltip=function(t,e,n){var i=Ws(e),r=i.tooltipConfig.option||{};if(X(r)){r={content:r,formatter:r}}var o=[r],a=this._ecModel.getComponent(i.componentMainType,i.componentIndex);a&&o.push(a),o.push({formatter:r.content});var s=t.positionDefault,l=Xz(o,this._tooltipModel,s?{position:s}:null),u=l.get("content"),h=Math.random()+"",c=new ng;this._showOrMove(l,(function(){var n=T(l.get("formatterParams")||{});this._showTooltipContent(l,u,n,h,t.offsetX,t.offsetY,t.position,e,c)})),n({type:"showTip",from:this.uid})},e.prototype._showTooltipContent=function(t,e,n,i,r,o,a,s,l){if(this._ticket="",t.get("showContent")&&t.get("show")){var u=this._tooltipContent;u.setEnterable(t.get("enterable"));var h=t.get("formatter");a=a||t.get("position");var c=e,p=this._getNearestPoint([r,o],n,t.get("trigger"),t.get("borderColor")).color;if(h)if(X(h)){var d=t.ecModel.get("useUTC"),f=Y(n)?n[0]:n;c=h,f&&f.axisType&&f.axisType.indexOf("time")>=0&&(c=zc(f.axisValue,c,d)),c=up(c,n,!0)}else if(U(h)){var g=W((function(e,i){e===this._ticket&&(u.setContent(i,l,t,p,a),this._updatePosition(t,a,r,o,u,n,s))}),this);this._ticket=i,c=h(n,i,g)}else c=h;u.setContent(c,l,t,p,a),u.show(t,p),this._updatePosition(t,a,r,o,u,n,s)}},e.prototype._getNearestPoint=function(t,e,n,i){return"axis"===n||Y(e)?{color:i||("html"===this._renderMode?"#fff":"none")}:Y(e)?void 0:{color:i||e.color||e.borderColor}},e.prototype._updatePosition=function(t,e,n,i,r,o,a){var s=this._api.getWidth(),l=this._api.getHeight();e=e||t.get("position");var u=r.getSize(),h=t.get("align"),c=t.get("verticalAlign"),p=a&&a.getBoundingRect().clone();if(a&&p.applyTransform(a.transform),U(e)&&(e=e([n,i],o,r.el,p,{viewSize:[s,l],contentSize:u.slice()})),Y(e))n=Er(e[0],s),i=Er(e[1],l);else if(q(e)){var d=e;d.width=u[0],d.height=u[1];var f=mp(d,{width:s,height:l});n=f.x,i=f.y,h=null,c=null}else if(X(e)&&a){var g=function(t,e,n,i){var r=n[0],o=n[1],a=Math.ceil(Math.SQRT2*i)+8,s=0,l=0,u=e.width,h=e.height;switch(t){case"inside":s=e.x+u/2-r/2,l=e.y+h/2-o/2;break;case"top":s=e.x+u/2-r/2,l=e.y-o-a;break;case"bottom":s=e.x+u/2-r/2,l=e.y+h+a;break;case"left":s=e.x-r-a,l=e.y+h/2-o/2;break;case"right":s=e.x+u+a,l=e.y+h/2-o/2}return[s,l]}(e,p,u,t.get("borderWidth"));n=g[0],i=g[1]}else{g=function(t,e,n,i,r,o,a){var s=n.getSize(),l=s[0],u=s[1];null!=o&&(t+l+o+2>i?t-=l+o:t+=o);null!=a&&(e+u+a>r?e-=u+a:e+=a);return[t,e]}(n,i,r,s,l,h?null:20,c?null:20);n=g[0],i=g[1]}if(h&&(n-=jz(h)?u[0]/2:"right"===h?u[0]:0),c&&(i-=jz(c)?u[1]/2:"bottom"===c?u[1]:0),Az(t)){g=function(t,e,n,i,r){var o=n.getSize(),a=o[0],s=o[1];return t=Math.min(t+a,i)-a,e=Math.min(e+s,r)-s,t=Math.max(t,0),e=Math.max(e,0),[t,e]}(n,i,r,s,l);n=g[0],i=g[1]}r.moveTo(n,i)},e.prototype._updateContentNotChangedOnAxis=function(t,e){var n=this._lastDataByCoordSys,i=this._cbParamsList,r=!!n&&n.length===t.length;return r&&E(n,(function(n,o){var a=n.dataByAxis||[],s=(t[o]||{}).dataByAxis||[];(r=r&&a.length===s.length)&&E(a,(function(t,n){var o=s[n]||{},a=t.seriesDataIndices||[],l=o.seriesDataIndices||[];(r=r&&t.value===o.value&&t.axisType===o.axisType&&t.axisId===o.axisId&&a.length===l.length)&&E(a,(function(t,e){var n=l[e];r=r&&t.seriesIndex===n.seriesIndex&&t.dataIndex===n.dataIndex})),i&&E(t.seriesDataIndices,(function(t){var n=t.seriesIndex,o=e[n],a=i[n];o&&a&&a.data!==o.data&&(r=!1)}))}))})),this._lastDataByCoordSys=t,this._cbParamsList=e,!!r},e.prototype._hide=function(t){this._lastDataByCoordSys=null,t({type:"hideTip",from:this.uid})},e.prototype.dispose=function(t,e){!r.node&&e.getDom()&&(Ag(this,"_updatePosition"),this._tooltipContent.dispose(),JR("itemTooltip",e))},e.type="tooltip",e}(fg);function Xz(t,e,n){var i,r=e.ecModel;n?(i=new pc(n,r,r),i=new pc(e.option,i,r)):i=e;for(var o=t.length-1;o>=0;o--){var a=t[o];a&&(a instanceof pc&&(a=a.get("tooltip",!0)),X(a)&&(a={formatter:a}),a&&(i=new pc(a,i,r)))}return i}function Zz(t,e){return t.dispatchAction||W(e.dispatchAction,e)}function jz(t){return"center"===t||"middle"===t}var qz=["rect","polygon","keep","clear"];function Kz(t,e){var n=ho(t?t.brush:[]);if(n.length){var i=[];E(n,(function(t){var e=t.hasOwnProperty("toolbox")?t.toolbox:[];e instanceof Array&&(i=i.concat(e))}));var r=t&&t.toolbox;Y(r)&&(r=r[0]),r||(r={feature:{}},t.toolbox=[r]);var o=r.feature||(r.feature={}),a=o.brush||(o.brush={}),s=a.type||(a.type=[]);s.push.apply(s,i),function(t){var e={};E(t,(function(t){e[t]=1})),t.length=0,E(e,(function(e,n){t.push(n)}))}(s),e&&!s.length&&s.push.apply(s,qz)}}var $z=E;function Jz(t){if(t)for(var e in t)if(t.hasOwnProperty(e))return!0}function Qz(t,e,n){var i={};return $z(e,(function(e){var r,o=i[e]=((r=function(){}).prototype.__hidden=r.prototype,new r);$z(t[e],(function(t,i){if(eD.isValidType(i)){var r={type:i,visual:t};n&&n(r,e),o[i]=new eD(r),"opacity"===i&&((r=T(r)).type="colorAlpha",o.__hidden.__alphaForOpacity=new eD(r))}}))})),i}function tV(t,e,n){var i;E(n,(function(t){e.hasOwnProperty(t)&&Jz(e[t])&&(i=!0)})),i&&E(n,(function(n){e.hasOwnProperty(n)&&Jz(e[n])?t[n]=T(e[n]):delete t[n]}))}var eV={lineX:nV(0),lineY:nV(1),rect:{point:function(t,e,n){return t&&n.boundingRect.contain(t[0],t[1])},rect:function(t,e,n){return t&&n.boundingRect.intersect(t)}},polygon:{point:function(t,e,n){return t&&n.boundingRect.contain(t[0],t[1])&&f_(n.range,t[0],t[1])},rect:function(t,e,n){var i=n.range;if(!t||i.length<=1)return!1;var r=t.x,o=t.y,a=t.width,s=t.height,l=i[0];return!!(f_(i,r,o)||f_(i,r+a,o)||f_(i,r,o+s)||f_(i,r+a,o+s)||sr.create(t).contain(l[0],l[1])||Ph(r,o,r+a,o,i)||Ph(r,o,r,o+s,i)||Ph(r+a,o,r+a,o+s,i)||Ph(r,o+s,r+a,o+s,i))||void 0}}};function nV(t){var e=["x","y"],n=["width","height"];return{point:function(e,n,i){if(e){var r=i.range;return iV(e[t],r)}},rect:function(i,r,o){if(i){var a=o.range,s=[i[e[t]],i[e[t]]+i[n[t]]];return s[1]<s[0]&&s.reverse(),iV(s[0],a)||iV(s[1],a)||iV(a[0],s)||iV(a[1],s)}}}}function iV(t,e){return e[0]<=t&&t<=e[1]}var rV=["inBrush","outOfBrush"],oV="__ecBrushSelect",aV="__ecInBrushSelectEvent";function sV(t){t.eachComponent({mainType:"brush"},(function(e){(e.brushTargetManager=new hz(e.option,t)).setInputRanges(e.areas,t)}))}function lV(t,e,n){var i,r,o=[];t.eachComponent({mainType:"brush"},(function(t){n&&"takeGlobalCursor"===n.type&&t.setBrushOption("brush"===n.key?n.brushOption:{brushType:!1})})),sV(t),t.eachComponent({mainType:"brush"},(function(e,n){var a={brushId:e.id,brushIndex:n,brushName:e.name,areas:T(e.areas),selected:[]};o.push(a);var s=e.option,l=s.brushLink,u=[],h=[],c=[],p=!1;n||(i=s.throttleType,r=s.throttleDelay);var d=z(e.areas,(function(t){var e=cV[t.brushType],n=k({boundingRect:e?e(t):void 0},t);return n.selectors=function(t){var e=t.brushType,n={point:function(i){return eV[e].point(i,n,t)},rect:function(i){return eV[e].rect(i,n,t)}};return n}(n),n})),f=Qz(e.option,rV,(function(t){t.mappingMethod="fixed"}));function g(t){return"all"===l||!!u[t]}function y(t){return!!t.length}Y(l)&&E(l,(function(t){u[t]=1})),t.eachSeries((function(n,i){var r=c[i]=[];"parallel"===n.subType?function(t,e){var n=t.coordinateSystem;p=p||n.hasAxisBrushed(),g(e)&&n.eachActiveState(t.getData(),(function(t,e){"active"===t&&(h[e]=1)}))}(n,i):function(n,i,r){if(!n.brushSelector||function(t,e){var n=t.option.seriesIndex;return null!=n&&"all"!==n&&(Y(n)?P(n,e)<0:e!==n)}(e,i))return;if(E(d,(function(i){e.brushTargetManager.controlSeries(i,n,t)&&r.push(i),p=p||y(r)})),g(i)&&y(r)){var o=n.getData();o.each((function(t){hV(n,r,o,t)&&(h[t]=1)}))}}(n,i,r)})),t.eachSeries((function(t,e){var n={seriesId:t.id,seriesIndex:e,seriesName:t.name,dataIndex:[]};a.selected.push(n);var i=c[e],r=t.getData(),o=g(e)?function(t){return h[t]?(n.dataIndex.push(r.getRawIndex(t)),"inBrush"):"outOfBrush"}:function(e){return hV(t,i,r,e)?(n.dataIndex.push(r.getRawIndex(e)),"inBrush"):"outOfBrush"};(g(e)?p:y(i))&&function(t,e,n,i,r,o){var a,s={};function l(t){return dy(n,a,t)}function u(t,e){gy(n,a,t,e)}function h(t,h){a=null==o?t:h;var c=n.getRawDataItem(a);if(!c||!1!==c.visualMap)for(var p=i.call(r,t),d=e[p],f=s[p],g=0,y=f.length;g<y;g++){var v=f[g];d[v]&&d[v].applyVisual(t,l,u)}}E(t,(function(t){var n=eD.prepareVisualTypes(e[t]);s[t]=n})),null==o?n.each(h):n.each([o],h)}(rV,f,r,o)}))})),function(t,e,n,i,r){if(!r)return;var o=t.getZr();if(o[aV])return;o.__ecBrushSelect||(o.__ecBrushSelect=uV);Dg(o,oV,n,e)(t,i)}(e,i,r,o,n)}function uV(t,e){if(!t.isDisposed()){var n=t.getZr();n[aV]=!0,t.dispatchAction({type:"brushSelect",batch:e}),n[aV]=!1}}function hV(t,e,n,i){for(var r=0,o=e.length;r<o;r++){var a=e[r];if(t.brushSelector(i,n,a.selectors,a))return!0}}var cV={rect:function(t){return pV(t.range)},polygon:function(t){for(var e,n=t.range,i=0,r=n.length;i<r;i++){e=e||[[1/0,-1/0],[1/0,-1/0]];var o=n[i];o[0]<e[0][0]&&(e[0][0]=o[0]),o[0]>e[0][1]&&(e[0][1]=o[0]),o[1]<e[1][0]&&(e[1][0]=o[1]),o[1]>e[1][1]&&(e[1][1]=o[1])}return e&&pV(e)}};function pV(t){return new sr(t[0][0],t[1][0],t[0][1]-t[0][0],t[1][1]-t[1][0])}var dV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(t,e){this.ecModel=t,this.api=e,this.model,(this._brushController=new Pk(e.getZr())).on("brush",W(this._onBrush,this)).mount()},e.prototype.render=function(t,e,n,i){this.model=t,this._updateController(t,e,n,i)},e.prototype.updateTransform=function(t,e,n,i){sV(e),this._updateController(t,e,n,i)},e.prototype.updateVisual=function(t,e,n,i){this.updateTransform(t,e,n,i)},e.prototype.updateView=function(t,e,n,i){this._updateController(t,e,n,i)},e.prototype._updateController=function(t,e,n,i){(!i||i.$from!==t.id)&&this._brushController.setPanels(t.brushTargetManager.makePanelOpts(n)).enableBrush(t.brushOption).updateCovers(t.areas.slice())},e.prototype.dispose=function(){this._brushController.dispose()},e.prototype._onBrush=function(t){var e=this.model.id,n=this.model.brushTargetManager.setOutputRanges(t.areas,this.ecModel);(!t.isEnd||t.removeOnClick)&&this.api.dispatchAction({type:"brush",brushId:e,areas:T(n),$from:e}),t.isEnd&&this.api.dispatchAction({type:"brushEnd",brushId:e,areas:T(n),$from:e})},e.type="brush",e}(fg),fV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.areas=[],n.brushOption={},n}return n(e,t),e.prototype.optionUpdated=function(t,e){var n=this.option;!e&&tV(n,t,["inBrush","outOfBrush"]);var i=n.inBrush=n.inBrush||{};n.outOfBrush=n.outOfBrush||{color:"#ddd"},i.hasOwnProperty("liftZ")||(i.liftZ=5)},e.prototype.setAreas=function(t){t&&(this.areas=z(t,(function(t){return gV(this.option,t)}),this))},e.prototype.setBrushOption=function(t){this.brushOption=gV(this.option,t),this.brushType=this.brushOption.brushType},e.type="brush",e.dependencies=["geo","grid","xAxis","yAxis","parallel","series"],e.defaultOption={seriesIndex:"all",brushType:"rect",brushMode:"single",transformable:!0,brushStyle:{borderWidth:1,color:"rgba(210,219,238,0.3)",borderColor:"#D2DBEE"},throttleType:"fixRate",throttleDelay:0,removeOnClick:!0,z:1e4},e}(Ip);function gV(t,e){return C({brushType:t.brushType,brushMode:t.brushMode,transformable:t.transformable,brushStyle:new pc(t.brushStyle).getItemStyle(),removeOnClick:t.removeOnClick,z:t.z},e,!0)}var yV=["rect","polygon","lineX","lineY","keep","clear"],vV=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.render=function(t,e,n){var i,r,o;e.eachComponent({mainType:"brush"},(function(t){i=t.brushType,r=t.brushOption.brushMode||"single",o=o||!!t.areas.length})),this._brushType=i,this._brushMode=r,E(t.get("type",!0),(function(e){t.setIconStatus(e,("keep"===e?"multiple"===r:"clear"===e?o:e===i)?"emphasis":"normal")}))},e.prototype.updateView=function(t,e,n){this.render(t,e,n)},e.prototype.getIcons=function(){var t=this.model,e=t.get("icon",!0),n={};return E(t.get("type",!0),(function(t){e[t]&&(n[t]=e[t])})),n},e.prototype.onclick=function(t,e,n){var i=this._brushType,r=this._brushMode;"clear"===n?(e.dispatchAction({type:"axisAreaSelect",intervals:[]}),e.dispatchAction({type:"brush",command:"clear",areas:[]})):e.dispatchAction({type:"takeGlobalCursor",key:"brush",brushOption:{brushType:"keep"===n?i:i!==n&&n,brushMode:"keep"===n?"multiple"===r?"single":"multiple":r}})},e.getDefaultOption=function(t){return{show:!0,type:yV.slice(),icon:{rect:"M7.3,34.7 M0.4,10V-0.2h9.8 M89.6,10V-0.2h-9.8 M0.4,60v10.2h9.8 M89.6,60v10.2h-9.8 M12.3,22.4V10.5h13.1 M33.6,10.5h7.8 M49.1,10.5h7.8 M77.5,22.4V10.5h-13 M12.3,31.1v8.2 M77.7,31.1v8.2 M12.3,47.6v11.9h13.1 M33.6,59.5h7.6 M49.1,59.5 h7.7 M77.5,47.6v11.9h-13",polygon:"M55.2,34.9c1.7,0,3.1,1.4,3.1,3.1s-1.4,3.1-3.1,3.1 s-3.1-1.4-3.1-3.1S53.5,34.9,55.2,34.9z M50.4,51c1.7,0,3.1,1.4,3.1,3.1c0,1.7-1.4,3.1-3.1,3.1c-1.7,0-3.1-1.4-3.1-3.1 C47.3,52.4,48.7,51,50.4,51z M55.6,37.1l1.5-7.8 M60.1,13.5l1.6-8.7l-7.8,4 M59,19l-1,5.3 M24,16.1l6.4,4.9l6.4-3.3 M48.5,11.6 l-5.9,3.1 M19.1,12.8L9.7,5.1l1.1,7.7 M13.4,29.8l1,7.3l6.6,1.6 M11.6,18.4l1,6.1 M32.8,41.9 M26.6,40.4 M27.3,40.2l6.1,1.6 M49.9,52.1l-5.6-7.6l-4.9-1.2",lineX:"M15.2,30 M19.7,15.6V1.9H29 M34.8,1.9H40.4 M55.3,15.6V1.9H45.9 M19.7,44.4V58.1H29 M34.8,58.1H40.4 M55.3,44.4 V58.1H45.9 M12.5,20.3l-9.4,9.6l9.6,9.8 M3.1,29.9h16.5 M62.5,20.3l9.4,9.6L62.3,39.7 M71.9,29.9H55.4",lineY:"M38.8,7.7 M52.7,12h13.2v9 M65.9,26.6V32 M52.7,46.3h13.2v-9 M24.9,12H11.8v9 M11.8,26.6V32 M24.9,46.3H11.8v-9 M48.2,5.1l-9.3-9l-9.4,9.2 M38.9-3.9V12 M48.2,53.3l-9.3,9l-9.4-9.2 M38.9,62.3V46.4",keep:"M4,10.5V1h10.3 M20.7,1h6.1 M33,1h6.1 M55.4,10.5V1H45.2 M4,17.3v6.6 M55.6,17.3v6.6 M4,30.5V40h10.3 M20.7,40 h6.1 M33,40h6.1 M55.4,30.5V40H45.2 M21,18.9h62.9v48.6H21V18.9z",clear:"M22,14.7l30.9,31 M52.9,14.7L22,45.7 M4.7,16.8V4.2h13.1 M26,4.2h7.8 M41.6,4.2h7.8 M70.3,16.8V4.2H57.2 M4.7,25.9v8.6 M70.3,25.9v8.6 M4.7,43.2v12.6h13.1 M26,55.8h7.8 M41.6,55.8h7.8 M70.3,43.2v12.6H57.2"},title:t.getLocaleModel().get(["toolbox","brush","title"])}},e}(FE);var mV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.layoutMode={type:"box",ignoreSize:!0},n}return n(e,t),e.type="title",e.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"}},e}(Ip),xV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){if(this.group.removeAll(),t.get("show")){var i=this.group,r=t.getModel("textStyle"),o=t.getModel("subtextStyle"),a=t.get("textAlign"),s=rt(t.get("textBaseline"),t.get("textVerticalAlign")),l=new As({style:Yh(r,{text:t.get("text"),fill:r.getTextColor()},{disableBox:!0}),z2:10}),u=l.getBoundingRect(),h=t.get("subtext"),c=new As({style:Yh(o,{text:h,fill:o.getTextColor(),y:u.height+t.get("itemGap"),verticalAlign:"top"},{disableBox:!0}),z2:10}),p=t.get("link"),d=t.get("sublink"),f=t.get("triggerEvent",!0);l.silent=!p&&!f,c.silent=!d&&!f,p&&l.on("click",(function(){pp(p,"_"+t.get("target"))})),d&&c.on("click",(function(){pp(d,"_"+t.get("subtarget"))})),Ws(l).eventData=Ws(c).eventData=f?{componentType:"title",componentIndex:t.componentIndex}:null,i.add(l),h&&i.add(c);var g=i.getBoundingRect(),y=t.getBoxLayoutParams();y.width=g.width,y.height=g.height;var v=mp(y,{width:n.getWidth(),height:n.getHeight()},t.get("padding"));a||("middle"===(a=t.get("left")||t.get("right"))&&(a="center"),"right"===a?v.x+=v.width:"center"===a&&(v.x+=v.width/2)),s||("center"===(s=t.get("top")||t.get("bottom"))&&(s="middle"),"bottom"===s?v.y+=v.height:"middle"===s&&(v.y+=v.height/2),s=s||"top"),i.x=v.x,i.y=v.y,i.markRedraw();var m={align:a,verticalAlign:s};l.setStyle(m),c.setStyle(m),g=i.getBoundingRect();var x=v.margin,_=t.getItemStyle(["color","opacity"]);_.fill=t.get("backgroundColor");var b=new Ts({shape:{x:g.x-x[3],y:g.y-x[0],width:g.width+x[1]+x[3],height:g.height+x[0]+x[2],r:t.get("borderRadius")},style:_,subPixelOptimize:!0,silent:!0});i.add(b)}},e.type="title",e}(fg);var _V=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.layoutMode="box",n}return n(e,t),e.prototype.init=function(t,e,n){this.mergeDefaultAndTheme(t,n),this._initData()},e.prototype.mergeOption=function(e){t.prototype.mergeOption.apply(this,arguments),this._initData()},e.prototype.setCurrentIndex=function(t){null==t&&(t=this.option.currentIndex);var e=this._data.count();this.option.loop?t=(t%e+e)%e:(t>=e&&(t=e-1),t<0&&(t=0)),this.option.currentIndex=t},e.prototype.getCurrentIndex=function(){return this.option.currentIndex},e.prototype.isIndexMax=function(){return this.getCurrentIndex()>=this._data.count()-1},e.prototype.setPlayState=function(t){this.option.autoPlay=!!t},e.prototype.getPlayState=function(){return!!this.option.autoPlay},e.prototype._initData=function(){var t,e=this.option,n=e.data||[],i=e.axisType,r=this._names=[];"category"===i?(t=[],E(n,(function(e,n){var i,o=xo(fo(e),"");q(e)?(i=T(e)).value=n:i=n,t.push(i),r.push(o)}))):t=n;var o={category:"ordinal",time:"time",value:"number"}[i]||"number";(this._data=new Zm([{name:"value",type:o}],this)).initData(t,r)},e.prototype.getData=function(){return this._data},e.prototype.getCategories=function(){if("category"===this.get("axisType"))return this._names.slice()},e.type="timeline",e.defaultOption={z:4,show:!0,axisType:"time",realtime:!0,left:"20%",top:null,right:"20%",bottom:0,width:null,height:40,padding:5,controlPosition:"left",autoPlay:!1,rewind:!1,loop:!0,playInterval:2e3,currentIndex:0,itemStyle:{},label:{color:"#000"},data:[]},e}(Ip),bV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="timeline.slider",e.defaultOption=gc(_V.defaultOption,{backgroundColor:"rgba(0,0,0,0)",borderColor:"#ccc",borderWidth:0,orient:"horizontal",inverse:!1,tooltip:{trigger:"item"},symbol:"circle",symbolSize:12,lineStyle:{show:!0,width:2,color:"#DAE1F5"},label:{position:"auto",show:!0,interval:"auto",rotate:0,color:"#A4B1D7"},itemStyle:{color:"#A4B1D7",borderWidth:1},checkpointStyle:{symbol:"circle",symbolSize:15,color:"#316bf3",borderColor:"#fff",borderWidth:2,shadowBlur:2,shadowOffsetX:1,shadowOffsetY:1,shadowColor:"rgba(0, 0, 0, 0.3)",animation:!0,animationDuration:300,animationEasing:"quinticInOut"},controlStyle:{show:!0,showPlayBtn:!0,showPrevBtn:!0,showNextBtn:!0,itemSize:24,itemGap:12,position:"left",playIcon:"path://M31.6,53C17.5,53,6,41.5,6,27.4S17.5,1.8,31.6,1.8C45.7,1.8,57.2,13.3,57.2,27.4S45.7,53,31.6,53z M31.6,3.3 C18.4,3.3,7.5,14.1,7.5,27.4c0,13.3,10.8,24.1,24.1,24.1C44.9,51.5,55.7,40.7,55.7,27.4C55.7,14.1,44.9,3.3,31.6,3.3z M24.9,21.3 c0-2.2,1.6-3.1,3.5-2l10.5,6.1c1.899,1.1,1.899,2.9,0,4l-10.5,6.1c-1.9,1.1-3.5,0.2-3.5-2V21.3z",stopIcon:"path://M30.9,53.2C16.8,53.2,5.3,41.7,5.3,27.6S16.8,2,30.9,2C45,2,56.4,13.5,56.4,27.6S45,53.2,30.9,53.2z M30.9,3.5C17.6,3.5,6.8,14.4,6.8,27.6c0,13.3,10.8,24.1,24.101,24.1C44.2,51.7,55,40.9,55,27.6C54.9,14.4,44.1,3.5,30.9,3.5z M36.9,35.8c0,0.601-0.4,1-0.9,1h-1.3c-0.5,0-0.9-0.399-0.9-1V19.5c0-0.6,0.4-1,0.9-1H36c0.5,0,0.9,0.4,0.9,1V35.8z M27.8,35.8 c0,0.601-0.4,1-0.9,1h-1.3c-0.5,0-0.9-0.399-0.9-1V19.5c0-0.6,0.4-1,0.9-1H27c0.5,0,0.9,0.4,0.9,1L27.8,35.8L27.8,35.8z",nextIcon:"M2,18.5A1.52,1.52,0,0,1,.92,18a1.49,1.49,0,0,1,0-2.12L7.81,9.36,1,3.11A1.5,1.5,0,1,1,3,.89l8,7.34a1.48,1.48,0,0,1,.49,1.09,1.51,1.51,0,0,1-.46,1.1L3,18.08A1.5,1.5,0,0,1,2,18.5Z",prevIcon:"M10,.5A1.52,1.52,0,0,1,11.08,1a1.49,1.49,0,0,1,0,2.12L4.19,9.64,11,15.89a1.5,1.5,0,1,1-2,2.22L1,10.77A1.48,1.48,0,0,1,.5,9.68,1.51,1.51,0,0,1,1,8.58L9,.92A1.5,1.5,0,0,1,10,.5Z",prevBtnSize:18,nextBtnSize:18,color:"#A4B1D7",borderColor:"#A4B1D7",borderWidth:1},emphasis:{label:{show:!0,color:"#6f778d"},itemStyle:{color:"#316BF3"},controlStyle:{color:"#316BF3",borderColor:"#316BF3",borderWidth:2}},progress:{lineStyle:{color:"#316BF3"},itemStyle:{color:"#316BF3"},label:{color:"#6f778d"}},data:[]}),e}(_V);R(bV,sf.prototype);var wV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="timeline",e}(fg),SV=function(t){function e(e,n,i,r){var o=t.call(this,e,n,i)||this;return o.type=r||"value",o}return n(e,t),e.prototype.getLabelModel=function(){return this.model.getModel("label")},e.prototype.isHorizontal=function(){return"horizontal"===this.model.get("orient")},e}(G_),MV=Math.PI,IV=So(),TV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(t,e){this.api=e},e.prototype.render=function(t,e,n){if(this.model=t,this.api=n,this.ecModel=e,this.group.removeAll(),t.get("show",!0)){var i=this._layout(t,n),r=this._createGroup("_mainGroup"),o=this._createGroup("_labelGroup"),a=this._axis=this._createAxis(i,t);t.formatTooltip=function(t){return Uf("nameValue",{noName:!0,value:a.scale.getLabel({value:t})})},E(["AxisLine","AxisTick","Control","CurrentPointer"],(function(e){this["_render"+e](i,r,a,t)}),this),this._renderAxisLabel(i,o,a,t),this._position(i,t)}this._doPlayStop(),this._updateTicksStatus()},e.prototype.remove=function(){this._clearTimer(),this.group.removeAll()},e.prototype.dispose=function(){this._clearTimer()},e.prototype._layout=function(t,e){var n,i,r,o,a=t.get(["label","position"]),s=t.get("orient"),l=function(t,e){return mp(t.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()},t.get("padding"))}(t,e),u={horizontal:"center",vertical:(n=null==a||"auto"===a?"horizontal"===s?l.y+l.height/2<e.getHeight()/2?"-":"+":l.x+l.width/2<e.getWidth()/2?"+":"-":X(a)?{horizontal:{top:"-",bottom:"+"},vertical:{left:"-",right:"+"}}[s][a]:a)>=0||"+"===n?"left":"right"},h={horizontal:n>=0||"+"===n?"top":"bottom",vertical:"middle"},c={horizontal:0,vertical:MV/2},p="vertical"===s?l.height:l.width,d=t.getModel("controlStyle"),f=d.get("show",!0),g=f?d.get("itemSize"):0,y=f?d.get("itemGap"):0,v=g+y,m=t.get(["label","rotate"])||0;m=m*MV/180;var x=d.get("position",!0),_=f&&d.get("showPlayBtn",!0),b=f&&d.get("showPrevBtn",!0),w=f&&d.get("showNextBtn",!0),S=0,M=p;"left"===x||"bottom"===x?(_&&(i=[0,0],S+=v),b&&(r=[S,0],S+=v),w&&(o=[M-g,0],M-=v)):(_&&(i=[M-g,0],M-=v),b&&(r=[0,0],S+=v),w&&(o=[M-g,0],M-=v));var I=[S,M];return t.get("inverse")&&I.reverse(),{viewRect:l,mainLength:p,orient:s,rotation:c[s],labelRotation:m,labelPosOpt:n,labelAlign:t.get(["label","align"])||u[s],labelBaseline:t.get(["label","verticalAlign"])||t.get(["label","baseline"])||h[s],playPosition:i,prevBtnPosition:r,nextBtnPosition:o,axisExtent:I,controlSize:g,controlGap:y}},e.prototype._position=function(t,e){var n=this._mainGroup,i=this._labelGroup,r=t.viewRect;if("vertical"===t.orient){var o=[1,0,0,1,0,0],a=r.x,s=r.y+r.height;Ei(o,o,[-a,-s]),zi(o,o,-MV/2),Ei(o,o,[a,s]),(r=r.clone()).applyTransform(o)}var l=y(r),u=y(n.getBoundingRect()),h=y(i.getBoundingRect()),c=[n.x,n.y],p=[i.x,i.y];p[0]=c[0]=l[0][0];var d,f=t.labelPosOpt;null==f||X(f)?(v(c,u,l,1,d="+"===f?0:1),v(p,h,l,1,1-d)):(v(c,u,l,1,d=f>=0?0:1),p[1]=c[1]+f);function g(t){t.originX=l[0][0]-t.x,t.originY=l[1][0]-t.y}function y(t){return[[t.x,t.x+t.width],[t.y,t.y+t.height]]}function v(t,e,n,i,r){t[i]+=n[i][r]-e[i][r]}n.setPosition(c),i.setPosition(p),n.rotation=i.rotation=t.rotation,g(n),g(i)},e.prototype._createAxis=function(t,e){var n=e.getData(),i=e.get("axisType"),r=function(t,e){if(e=e||t.get("type"))switch(e){case"category":return new gx({ordinalMeta:t.getCategories(),extent:[1/0,-1/0]});case"time":return new Px({locale:t.ecModel.getLocaleModel(),useUTC:t.ecModel.get("useUTC")});default:return new vx}}(e,i);r.getTicks=function(){return n.mapArray(["value"],(function(t){return{value:t}}))};var o=n.getDataExtent("value");r.setExtent(o[0],o[1]),r.calcNiceTicks();var a=new SV("value",r,t.axisExtent,i);return a.model=e,a},e.prototype._createGroup=function(t){var e=this[t]=new Cr;return this.group.add(e),e},e.prototype._renderAxisLine=function(t,e,n,i){var r=n.getExtent();if(i.get(["lineStyle","show"])){var o=new Eu({shape:{x1:r[0],y1:0,x2:r[1],y2:0},style:A({lineCap:"round"},i.getModel("lineStyle").getLineStyle()),silent:!0,z2:1});e.add(o);var a=this._progressLine=new Eu({shape:{x1:r[0],x2:this._currentPointer?this._currentPointer.x:r[0],y1:0,y2:0},style:k({lineCap:"round",lineWidth:o.style.lineWidth},i.getModel(["progress","lineStyle"]).getLineStyle()),silent:!0,z2:1});e.add(a)}},e.prototype._renderAxisTick=function(t,e,n,i){var r=this,o=i.getData(),a=n.scale.getTicks();this._tickSymbols=[],E(a,(function(t){var a=n.dataToCoord(t.value),s=o.getItemModel(t.value),l=s.getModel("itemStyle"),u=s.getModel(["emphasis","itemStyle"]),h=s.getModel(["progress","itemStyle"]),c={x:a,y:0,onclick:W(r._changeTimeline,r,t.value)},p=CV(s,l,e,c);p.ensureState("emphasis").style=u.getItemStyle(),p.ensureState("progress").style=h.getItemStyle(),Pl(p);var d=Ws(p);s.get("tooltip")?(d.dataIndex=t.value,d.dataModel=i):d.dataIndex=d.dataModel=null,r._tickSymbols.push(p)}))},e.prototype._renderAxisLabel=function(t,e,n,i){var r=this;if(n.getLabelModel().get("show")){var o=i.getData(),a=n.getViewLabels();this._tickLabels=[],E(a,(function(i){var a=i.tickValue,s=o.getItemModel(a),l=s.getModel("label"),u=s.getModel(["emphasis","label"]),h=s.getModel(["progress","label"]),c=n.dataToCoord(i.tickValue),p=new As({x:c,y:0,rotation:t.labelRotation-t.rotation,onclick:W(r._changeTimeline,r,a),silent:!1,style:Yh(l,{text:i.formattedLabel,align:t.labelAlign,verticalAlign:t.labelBaseline})});p.ensureState("emphasis").style=Yh(u),p.ensureState("progress").style=Yh(h),e.add(p),Pl(p),IV(p).dataIndex=a,r._tickLabels.push(p)}))}},e.prototype._renderControl=function(t,e,n,i){var r=t.controlSize,o=t.rotation,a=i.getModel("controlStyle").getItemStyle(),s=i.getModel(["emphasis","controlStyle"]).getItemStyle(),l=i.getPlayState(),u=i.get("inverse",!0);function h(t,n,l,u){if(t){var h=gr(rt(i.get(["controlStyle",n+"BtnSize"]),r),r),c=function(t,e,n,i){var r=i.style,o=Lh(t.get(["controlStyle",e]),i||{},new sr(n[0],n[1],n[2],n[3]));r&&o.setStyle(r);return o}(i,n+"Icon",[0,-h/2,h,h],{x:t[0],y:t[1],originX:r/2,originY:0,rotation:u?-o:0,rectHover:!0,style:a,onclick:l});c.ensureState("emphasis").style=s,e.add(c),Pl(c)}}h(t.nextBtnPosition,"next",W(this._changeTimeline,this,u?"-":"+")),h(t.prevBtnPosition,"prev",W(this._changeTimeline,this,u?"+":"-")),h(t.playPosition,l?"stop":"play",W(this._handlePlayClick,this,!l),!0)},e.prototype._renderCurrentPointer=function(t,e,n,i){var r=i.getData(),o=i.getCurrentIndex(),a=r.getItemModel(o).getModel("checkpointStyle"),s=this,l={onCreate:function(t){t.draggable=!0,t.drift=W(s._handlePointerDrag,s),t.ondragend=W(s._handlePointerDragend,s),DV(t,s._progressLine,o,n,i,!0)},onUpdate:function(t){DV(t,s._progressLine,o,n,i)}};this._currentPointer=CV(a,a,this._mainGroup,{},this._currentPointer,l)},e.prototype._handlePlayClick=function(t){this._clearTimer(),this.api.dispatchAction({type:"timelinePlayChange",playState:t,from:this.uid})},e.prototype._handlePointerDrag=function(t,e,n){this._clearTimer(),this._pointerChangeTimeline([n.offsetX,n.offsetY])},e.prototype._handlePointerDragend=function(t){this._pointerChangeTimeline([t.offsetX,t.offsetY],!0)},e.prototype._pointerChangeTimeline=function(t,e){var n=this._toAxisCoord(t)[0],i=Vr(this._axis.getExtent().slice());n>i[1]&&(n=i[1]),n<i[0]&&(n=i[0]),this._currentPointer.x=n,this._currentPointer.markRedraw(),this._progressLine.shape.x2=n,this._progressLine.dirty();var r=this._findNearestTick(n),o=this.model;(e||r!==o.getCurrentIndex()&&o.get("realtime"))&&this._changeTimeline(r)},e.prototype._doPlayStop=function(){var t=this;this._clearTimer(),this.model.getPlayState()&&(this._timer=setTimeout((function(){var e=t.model;t._changeTimeline(e.getCurrentIndex()+(e.get("rewind",!0)?-1:1))}),this.model.get("playInterval")))},e.prototype._toAxisCoord=function(t){return Ih(t,this._mainGroup.getLocalTransform(),!0)},e.prototype._findNearestTick=function(t){var e,n=this.model.getData(),i=1/0,r=this._axis;return n.each(["value"],(function(n,o){var a=r.dataToCoord(n),s=Math.abs(a-t);s<i&&(i=s,e=o)})),e},e.prototype._clearTimer=function(){this._timer&&(clearTimeout(this._timer),this._timer=null)},e.prototype._changeTimeline=function(t){var e=this.model.getCurrentIndex();"+"===t?t=e+1:"-"===t&&(t=e-1),this.api.dispatchAction({type:"timelineChange",currentIndex:t,from:this.uid})},e.prototype._updateTicksStatus=function(){var t=this.model.getCurrentIndex(),e=this._tickSymbols,n=this._tickLabels;if(e)for(var i=0;i<e.length;i++)e&&e[i]&&e[i].toggleState("progress",i<t);if(n)for(i=0;i<n.length;i++)n&&n[i]&&n[i].toggleState("progress",IV(n[i]).dataIndex<=t)},e.type="timeline.slider",e}(wV);function CV(t,e,n,i,r,o){var a=e.get("color");r?(r.setColor(a),n.add(r),o&&o.onUpdate(r)):((r=ky(t.get("symbol"),-1,-1,2,2,a)).setStyle("strokeNoScale",!0),n.add(r),o&&o.onCreate(r));var s=e.getItemStyle(["color"]);r.setStyle(s),i=C({rectHover:!0,z2:100},i,!0);var l=Ly(t.get("symbolSize"));i.scaleX=l[0]/2,i.scaleY=l[1]/2;var u=Py(t.get("symbolOffset"),l);u&&(i.x=(i.x||0)+u[0],i.y=(i.y||0)+u[1]);var h=t.get("symbolRotate");return i.rotation=(h||0)*Math.PI/180||0,r.attr(i),r.updateTransform(),r}function DV(t,e,n,i,r,o){if(!t.dragging){var a=r.getModel("checkpointStyle"),s=i.dataToCoord(r.getData().get("value",n));if(o||!a.get("animation",!0))t.attr({x:s,y:0}),e&&e.attr({shape:{x2:s}});else{var l={duration:a.get("animationDuration",!0),easing:a.get("animationEasing",!0)};t.stopAnimation(null,!0),t.animateTo({x:s,y:0},l),e&&e.animateTo({shape:{x2:s}},l)}}}function AV(t){var e=t&&t.timeline;Y(e)||(e=e?[e]:[]),E(e,(function(t){t&&function(t){var e=t.type,n={number:"value",time:"time"};n[e]&&(t.axisType=n[e],delete t.type);if(kV(t),LV(t,"controlPosition")){var i=t.controlStyle||(t.controlStyle={});LV(i,"position")||(i.position=t.controlPosition),"none"!==i.position||LV(i,"show")||(i.show=!1,delete i.position),delete t.controlPosition}E(t.data||[],(function(t){q(t)&&!Y(t)&&(!LV(t,"value")&&LV(t,"name")&&(t.value=t.name),kV(t))}))}(t)}))}function kV(t){var e=t.itemStyle||(t.itemStyle={}),n=e.emphasis||(e.emphasis={}),i=t.label||t.label||{},r=i.normal||(i.normal={}),o={normal:1,emphasis:1};E(i,(function(t,e){o[e]||LV(r,e)||(r[e]=t)})),n.label&&!LV(i,"emphasis")&&(i.emphasis=n.label,delete n.label)}function LV(t,e){return t.hasOwnProperty(e)}function PV(t,e){if(!t)return!1;for(var n=Y(t)?t:[t],i=0;i<n.length;i++)if(n[i]&&n[i][e])return!0;return!1}function OV(t){co(t,"label",["show"])}var RV=So(),NV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.createdBySelf=!1,n}return n(e,t),e.prototype.init=function(t,e,n){this.mergeDefaultAndTheme(t,n),this._mergeOption(t,n,!1,!0)},e.prototype.isAnimationEnabled=function(){if(r.node)return!1;var t=this.__hostSeries;return this.getShallow("animation")&&t&&t.isAnimationEnabled()},e.prototype.mergeOption=function(t,e){this._mergeOption(t,e,!1,!1)},e.prototype._mergeOption=function(t,e,n,i){var r=this.mainType;n||e.eachSeries((function(t){var n=t.get(this.mainType,!0),o=RV(t)[r];n&&n.data?(o?o._mergeOption(n,e,!0):(i&&OV(n),E(n.data,(function(t){t instanceof Array?(OV(t[0]),OV(t[1])):OV(t)})),A(o=this.createMarkerModelFromSeries(n,this,e),{mainType:this.mainType,seriesIndex:t.seriesIndex,name:t.name,createdBySelf:!0}),o.__hostSeries=t),RV(t)[r]=o):RV(t)[r]=null}),this)},e.prototype.formatTooltip=function(t,e,n){var i=this.getData(),r=this.getRawValue(t),o=i.getName(t);return Uf("section",{header:this.name,blocks:[Uf("nameValue",{name:o,value:r,noName:!o,noValue:null==r})]})},e.prototype.getData=function(){return this._data},e.prototype.setData=function(t){this._data=t},e.getMarkerModelFromSeries=function(t,e){return RV(t)[e]},e.type="marker",e.dependencies=["series","grid","polar","geo"],e}(Ip);R(NV,sf.prototype);var EV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.createMarkerModelFromSeries=function(t,n,i){return new e(t,n,i)},e.type="markPoint",e.defaultOption={z:5,symbol:"pin",symbolSize:50,tooltip:{trigger:"item"},label:{show:!0,position:"inside"},itemStyle:{borderWidth:2},emphasis:{label:{show:!0}}},e}(NV);function zV(t,e,n,i,r,o){var a=[],s=tx(e,i)?e.getCalculationInfo("stackResultDimension"):i,l=HV(e,s,t),u=e.indicesOfNearest(s,l)[0];a[r]=e.get(n,u),a[o]=e.get(s,u);var h=e.get(i,u),c=Br(e.get(i,u));return(c=Math.min(c,20))>=0&&(a[o]=+a[o].toFixed(c)),[a,h]}var VV={min:H(zV,"min"),max:H(zV,"max"),average:H(zV,"average"),median:H(zV,"median")};function BV(t,e){var n=t.getData(),i=t.coordinateSystem;if(e&&!function(t){return!isNaN(parseFloat(t.x))&&!isNaN(parseFloat(t.y))}(e)&&!Y(e.coord)&&i){var r=i.dimensions,o=FV(e,n,i,t);if((e=T(e)).type&&VV[e.type]&&o.baseAxis&&o.valueAxis){var a=P(r,o.baseAxis.dim),s=P(r,o.valueAxis.dim),l=VV[e.type](n,o.baseDataDim,o.valueDataDim,a,s);e.coord=l[0],e.value=l[1]}else{for(var u=[null!=e.xAxis?e.xAxis:e.radiusAxis,null!=e.yAxis?e.yAxis:e.angleAxis],h=0;h<2;h++)VV[u[h]]&&(u[h]=HV(n,n.mapDimension(r[h]),u[h]));e.coord=u}}return e}function FV(t,e,n,i){var r={};return null!=t.valueIndex||null!=t.valueDim?(r.valueDataDim=null!=t.valueIndex?e.getDimension(t.valueIndex):t.valueDim,r.valueAxis=n.getAxis(function(t,e){var n=t.getData().getDimensionInfo(e);return n&&n.coordDim}(i,r.valueDataDim)),r.baseAxis=n.getOtherAxis(r.valueAxis),r.baseDataDim=e.mapDimension(r.baseAxis.dim)):(r.baseAxis=i.getBaseAxis(),r.valueAxis=n.getOtherAxis(r.baseAxis),r.baseDataDim=e.mapDimension(r.baseAxis.dim),r.valueDataDim=e.mapDimension(r.valueAxis.dim)),r}function GV(t,e){return!(t&&t.containData&&e.coord&&!function(t){return!(isNaN(parseFloat(t.x))&&isNaN(parseFloat(t.y)))}(e))||t.containData(e.coord)}function WV(t,e){return t?function(t,n,i,r){return pf(r<2?t.coord&&t.coord[r]:t.value,e[r])}:function(t,n,i,r){return pf(t.value,e[r])}}function HV(t,e,n){if("average"===n){var i=0,r=0;return t.each(e,(function(t,e){isNaN(t)||(i+=t,r++)})),i/r}return"median"===n?t.getMedian(e):t.getDataExtent(e)["max"===n?1:0]}var YV=So(),UV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(){this.markerGroupMap=ft()},e.prototype.render=function(t,e,n){var i=this,r=this.markerGroupMap;r.each((function(t){YV(t).keep=!1})),e.eachSeries((function(t){var r=NV.getMarkerModelFromSeries(t,i.type);r&&i.renderSeries(t,r,e,n)})),r.each((function(t){!YV(t).keep&&i.group.remove(t.group)}))},e.prototype.markKeep=function(t){YV(t).keep=!0},e.prototype.blurSeries=function(t){var e=this;E(t,(function(t){var n=NV.getMarkerModelFromSeries(t,e.type);n&&n.getData().eachItemGraphicEl((function(t){t&&bl(t)}))}))},e.type="marker",e}(fg);function XV(t,e,n){var i=e.coordinateSystem;t.each((function(r){var o,a=t.getItemModel(r),s=Er(a.get("x"),n.getWidth()),l=Er(a.get("y"),n.getHeight());if(isNaN(s)||isNaN(l)){if(e.getMarkerPosition)o=e.getMarkerPosition(t.getValues(t.dimensions,r));else if(i){var u=t.get(i.dimensions[0],r),h=t.get(i.dimensions[1],r);o=i.dataToPoint([u,h])}}else o=[s,l];isNaN(s)||(o[0]=s),isNaN(l)||(o[1]=l),t.setItemLayout(r,o)}))}var ZV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.updateTransform=function(t,e,n){e.eachSeries((function(t){var e=NV.getMarkerModelFromSeries(t,"markPoint");e&&(XV(e.getData(),t,n),this.markerGroupMap.get(t.id).updateLayout())}),this)},e.prototype.renderSeries=function(t,e,n,i){var r=t.coordinateSystem,o=t.id,a=t.getData(),s=this.markerGroupMap,l=s.get(o)||s.set(o,new Zw),u=function(t,e,n){var i;i=t?z(t&&t.dimensions,(function(t){return A(A({},e.getData().getDimensionInfo(e.getData().mapDimension(t))||{}),{name:t,ordinalMeta:null})})):[{name:"value",type:"float"}];var r=new Zm(i,n),o=z(n.get("data"),H(BV,e));t&&(o=B(o,H(GV,t)));var a=WV(!!t,i);return r.initData(o,null,a),r}(r,t,e);e.setData(u),XV(e.getData(),t,i),u.each((function(t){var n=u.getItemModel(t),i=n.getShallow("symbol"),r=n.getShallow("symbolSize"),o=n.getShallow("symbolRotate"),s=n.getShallow("symbolOffset"),l=n.getShallow("symbolKeepAspect");if(U(i)||U(r)||U(o)||U(s)){var h=e.getRawValue(t),c=e.getDataParams(t);U(i)&&(i=i(h,c)),U(r)&&(r=r(h,c)),U(o)&&(o=o(h,c)),U(s)&&(s=s(h,c))}var p=n.getModel("itemStyle").getItemStyle(),d=fy(a,"color");p.fill||(p.fill=d),u.setItemVisual(t,{symbol:i,symbolSize:r,symbolRotate:o,symbolOffset:s,symbolKeepAspect:l,style:p})})),l.updateData(u),this.group.add(l.group),u.eachItemGraphicEl((function(t){t.traverse((function(t){Ws(t).dataModel=e}))})),this.markKeep(l),l.group.silent=e.get("silent")||t.get("silent")},e.type="markPoint",e}(UV);var jV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.createMarkerModelFromSeries=function(t,n,i){return new e(t,n,i)},e.type="markLine",e.defaultOption={z:5,symbol:["circle","arrow"],symbolSize:[8,16],symbolOffset:0,precision:2,tooltip:{trigger:"item"},label:{show:!0,position:"end",distance:5},lineStyle:{type:"dashed"},emphasis:{label:{show:!0},lineStyle:{width:3}},animationEasing:"linear"},e}(NV),qV=So(),KV=function(t,e,n,i){var r,o=t.getData();if(Y(i))r=i;else{var a=i.type;if("min"===a||"max"===a||"average"===a||"median"===a||null!=i.xAxis||null!=i.yAxis){var s=void 0,l=void 0;if(null!=i.yAxis||null!=i.xAxis)s=e.getAxis(null!=i.yAxis?"y":"x"),l=it(i.yAxis,i.xAxis);else{var u=FV(i,o,e,t);s=u.valueAxis,l=HV(o,ex(o,u.valueDataDim),a)}var h="x"===s.dim?0:1,c=1-h,p=T(i),d={coord:[]};p.type=null,p.coord=[],p.coord[c]=-1/0,d.coord[c]=1/0;var f=n.get("precision");f>=0&&j(l)&&(l=+l.toFixed(Math.min(f,20))),p.coord[h]=d.coord[h]=l,r=[p,d,{type:a,valueIndex:i.valueIndex,value:l}]}else r=[]}var g=[BV(t,r[0]),BV(t,r[1]),A({},r[2])];return g[2].type=g[2].type||null,C(g[2],g[0]),C(g[2],g[1]),g};function $V(t){return!isNaN(t)&&!isFinite(t)}function JV(t,e,n,i){var r=1-t,o=i.dimensions[t];return $V(e[r])&&$V(n[r])&&e[t]===n[t]&&i.getAxis(o).containData(e[t])}function QV(t,e){if("cartesian2d"===t.type){var n=e[0].coord,i=e[1].coord;if(n&&i&&(JV(1,n,i,t)||JV(0,n,i,t)))return!0}return GV(t,e[0])&&GV(t,e[1])}function tB(t,e,n,i,r){var o,a=i.coordinateSystem,s=t.getItemModel(e),l=Er(s.get("x"),r.getWidth()),u=Er(s.get("y"),r.getHeight());if(isNaN(l)||isNaN(u)){if(i.getMarkerPosition)o=i.getMarkerPosition(t.getValues(t.dimensions,e));else{var h=a.dimensions,c=t.get(h[0],e),p=t.get(h[1],e);o=a.dataToPoint([c,p])}if(sS(a,"cartesian2d")){var d=a.getAxis("x"),f=a.getAxis("y");h=a.dimensions;$V(t.get(h[0],e))?o[0]=d.toGlobalCoord(d.getExtent()[n?0:1]):$V(t.get(h[1],e))&&(o[1]=f.toGlobalCoord(f.getExtent()[n?0:1]))}isNaN(l)||(o[0]=l),isNaN(u)||(o[1]=u)}else o=[l,u];t.setItemLayout(e,o)}var eB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.updateTransform=function(t,e,n){e.eachSeries((function(t){var e=NV.getMarkerModelFromSeries(t,"markLine");if(e){var i=e.getData(),r=qV(e).from,o=qV(e).to;r.each((function(e){tB(r,e,!0,t,n),tB(o,e,!1,t,n)})),i.each((function(t){i.setItemLayout(t,[r.getItemLayout(t),o.getItemLayout(t)])})),this.markerGroupMap.get(t.id).updateLayout()}}),this)},e.prototype.renderSeries=function(t,e,n,i){var r=t.coordinateSystem,o=t.id,a=t.getData(),s=this.markerGroupMap,l=s.get(o)||s.set(o,new dA);this.group.add(l.group);var u=function(t,e,n){var i;i=t?z(t&&t.dimensions,(function(t){return A(A({},e.getData().getDimensionInfo(e.getData().mapDimension(t))||{}),{name:t,ordinalMeta:null})})):[{name:"value",type:"float"}];var r=new Zm(i,n),o=new Zm(i,n),a=new Zm([],n),s=z(n.get("data"),H(KV,e,t,n));t&&(s=B(s,H(QV,t)));var l=WV(!!t,i);return r.initData(z(s,(function(t){return t[0]})),null,l),o.initData(z(s,(function(t){return t[1]})),null,l),a.initData(z(s,(function(t){return t[2]}))),a.hasItemOption=!0,{from:r,to:o,line:a}}(r,t,e),h=u.from,c=u.to,p=u.line;qV(e).from=h,qV(e).to=c,e.setData(p);var d=e.get("symbol"),f=e.get("symbolSize"),g=e.get("symbolRotate"),y=e.get("symbolOffset");function v(e,n,r){var o=e.getItemModel(n);tB(e,n,r,t,i);var s=o.getModel("itemStyle").getItemStyle();null==s.fill&&(s.fill=fy(a,"color")),e.setItemVisual(n,{symbolKeepAspect:o.get("symbolKeepAspect"),symbolOffset:rt(o.get("symbolOffset",!0),y[r?0:1]),symbolRotate:rt(o.get("symbolRotate",!0),g[r?0:1]),symbolSize:rt(o.get("symbolSize"),f[r?0:1]),symbol:rt(o.get("symbol",!0),d[r?0:1]),style:s})}Y(d)||(d=[d,d]),Y(f)||(f=[f,f]),Y(g)||(g=[g,g]),Y(y)||(y=[y,y]),u.from.each((function(t){v(h,t,!0),v(c,t,!1)})),p.each((function(t){var e=p.getItemModel(t).getModel("lineStyle").getLineStyle();p.setItemLayout(t,[h.getItemLayout(t),c.getItemLayout(t)]),null==e.stroke&&(e.stroke=h.getItemVisual(t,"style").fill),p.setItemVisual(t,{fromSymbolKeepAspect:h.getItemVisual(t,"symbolKeepAspect"),fromSymbolOffset:h.getItemVisual(t,"symbolOffset"),fromSymbolRotate:h.getItemVisual(t,"symbolRotate"),fromSymbolSize:h.getItemVisual(t,"symbolSize"),fromSymbol:h.getItemVisual(t,"symbol"),toSymbolKeepAspect:c.getItemVisual(t,"symbolKeepAspect"),toSymbolOffset:c.getItemVisual(t,"symbolOffset"),toSymbolRotate:c.getItemVisual(t,"symbolRotate"),toSymbolSize:c.getItemVisual(t,"symbolSize"),toSymbol:c.getItemVisual(t,"symbol"),style:e})})),l.updateData(p),u.line.eachItemGraphicEl((function(t,n){t.traverse((function(t){Ws(t).dataModel=e}))})),this.markKeep(l),l.group.silent=e.get("silent")||t.get("silent")},e.type="markLine",e}(UV);var nB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.createMarkerModelFromSeries=function(t,n,i){return new e(t,n,i)},e.type="markArea",e.defaultOption={z:1,tooltip:{trigger:"item"},animation:!1,label:{show:!0,position:"top"},itemStyle:{borderWidth:0},emphasis:{label:{show:!0,position:"top"}}},e}(NV),iB=So(),rB=function(t,e,n,i){var r=BV(t,i[0]),o=BV(t,i[1]),a=r.coord,s=o.coord;a[0]=it(a[0],-1/0),a[1]=it(a[1],-1/0),s[0]=it(s[0],1/0),s[1]=it(s[1],1/0);var l=D([{},r,o]);return l.coord=[r.coord,o.coord],l.x0=r.x,l.y0=r.y,l.x1=o.x,l.y1=o.y,l};function oB(t){return!isNaN(t)&&!isFinite(t)}function aB(t,e,n,i){var r=1-t;return oB(e[r])&&oB(n[r])}function sB(t,e){var n=e.coord[0],i=e.coord[1];return!!(sS(t,"cartesian2d")&&n&&i&&(aB(1,n,i)||aB(0,n,i)))||(GV(t,{coord:n,x:e.x0,y:e.y0})||GV(t,{coord:i,x:e.x1,y:e.y1}))}function lB(t,e,n,i,r){var o,a=i.coordinateSystem,s=t.getItemModel(e),l=Er(s.get(n[0]),r.getWidth()),u=Er(s.get(n[1]),r.getHeight());if(isNaN(l)||isNaN(u)){if(i.getMarkerPosition)o=i.getMarkerPosition(t.getValues(n,e));else{var h=[d=t.get(n[0],e),f=t.get(n[1],e)];a.clampData&&a.clampData(h,h),o=a.dataToPoint(h,!0)}if(sS(a,"cartesian2d")){var c=a.getAxis("x"),p=a.getAxis("y"),d=t.get(n[0],e),f=t.get(n[1],e);oB(d)?o[0]=c.toGlobalCoord(c.getExtent()["x0"===n[0]?0:1]):oB(f)&&(o[1]=p.toGlobalCoord(p.getExtent()["y0"===n[1]?0:1]))}isNaN(l)||(o[0]=l),isNaN(u)||(o[1]=u)}else o=[l,u];return o}var uB=[["x0","y0"],["x1","y0"],["x1","y1"],["x0","y1"]],hB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.updateTransform=function(t,e,n){e.eachSeries((function(t){var e=NV.getMarkerModelFromSeries(t,"markArea");if(e){var i=e.getData();i.each((function(e){var r=z(uB,(function(r){return lB(i,e,r,t,n)}));i.setItemLayout(e,r),i.getItemGraphicEl(e).setShape("points",r)}))}}),this)},e.prototype.renderSeries=function(t,e,n,i){var r=t.coordinateSystem,o=t.id,a=t.getData(),s=this.markerGroupMap,l=s.get(o)||s.set(o,{group:new Cr});this.group.add(l.group),this.markKeep(l);var u=function(t,e,n){var i,r,o=["x0","y0","x1","y1"];if(t){var a=z(t&&t.dimensions,(function(t){var n=e.getData();return A(A({},n.getDimensionInfo(n.mapDimension(t))||{}),{name:t,ordinalMeta:null})}));r=z(o,(function(t,e){return{name:t,type:a[e%2].type}})),i=new Zm(r,n)}else i=new Zm(r=[{name:"value",type:"float"}],n);var s=z(n.get("data"),H(rB,e,t,n));t&&(s=B(s,H(sB,t)));var l=t?function(t,e,n,i){return pf(t.coord[Math.floor(i/2)][i%2],r[i])}:function(t,e,n,i){return pf(t.value,r[i])};return i.initData(s,null,l),i.hasItemOption=!0,i}(r,t,e);e.setData(u),u.each((function(e){var n=z(uB,(function(n){return lB(u,e,n,t,i)})),o=r.getAxis("x").scale,s=r.getAxis("y").scale,l=o.getExtent(),h=s.getExtent(),c=[o.parse(u.get("x0",e)),o.parse(u.get("x1",e))],p=[s.parse(u.get("y0",e)),s.parse(u.get("y1",e))];Vr(c),Vr(p);var d=!!(l[0]>c[1]||l[1]<c[0]||h[0]>p[1]||h[1]<p[0]);u.setItemLayout(e,{points:n,allClipped:d});var f=u.getItemModel(e).getModel("itemStyle").getItemStyle(),g=fy(a,"color");f.fill||(f.fill=g,X(f.fill)&&(f.fill=An(f.fill,.4))),f.stroke||(f.stroke=g),u.setItemVisual(e,"style",f)})),u.diff(iB(l).data).add((function(t){var e=u.getItemLayout(t);if(!e.allClipped){var n=new Lu({shape:{points:e.points}});u.setItemGraphicEl(t,n),l.group.add(n)}})).update((function(t,n){var i=iB(l).data.getItemGraphicEl(n),r=u.getItemLayout(t);r.allClipped?i&&l.group.remove(i):(i?ih(i,{shape:{points:r.points}},e,t):i=new Lu({shape:{points:r.points}}),u.setItemGraphicEl(t,i),l.group.add(i))})).remove((function(t){var e=iB(l).data.getItemGraphicEl(t);l.group.remove(e)})).execute(),u.eachItemGraphicEl((function(t,n){var i=u.getItemModel(n),r=u.getItemVisual(n,"style");t.useStyle(u.getItemVisual(n,"style")),Wh(t,Hh(i),{labelFetcher:e,labelDataIndex:n,defaultText:u.getName(n)||"",inheritColor:X(r.fill)?An(r.fill,1):"#000"}),zl(t,i),Ol(t,null,null,i.get(["emphasis","disabled"])),Ws(t).dataModel=e})),iB(l).data=u,l.group.silent=e.get("silent")||t.get("silent")},e.type="markArea",e}(UV);var cB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.layoutMode={type:"box",ignoreSize:!0},n}return n(e,t),e.prototype.init=function(t,e,n){this.mergeDefaultAndTheme(t,n),t.selected=t.selected||{},this._updateSelector(t)},e.prototype.mergeOption=function(e,n){t.prototype.mergeOption.call(this,e,n),this._updateSelector(e)},e.prototype._updateSelector=function(t){var e=t.selector,n=this.ecModel;!0===e&&(e=t.selector=["all","inverse"]),Y(e)&&E(e,(function(t,i){X(t)&&(t={type:t}),e[i]=C(t,function(t,e){return"all"===e?{type:"all",title:t.getLocaleModel().get(["legend","selector","all"])}:"inverse"===e?{type:"inverse",title:t.getLocaleModel().get(["legend","selector","inverse"])}:void 0}(n,t.type))}))},e.prototype.optionUpdated=function(){this._updateData(this.ecModel);var t=this._data;if(t[0]&&"single"===this.get("selectedMode")){for(var e=!1,n=0;n<t.length;n++){var i=t[n].get("name");if(this.isSelected(i)){this.select(i),e=!0;break}}!e&&this.select(t[0].get("name"))}},e.prototype._updateData=function(t){var e=[],n=[];t.eachRawSeries((function(i){var r,o=i.name;if(n.push(o),i.legendVisualProvider){var a=i.legendVisualProvider.getAllNames();t.isSeriesFiltered(i)||(n=n.concat(a)),a.length?e=e.concat(a):r=!0}else r=!0;r&&_o(i)&&e.push(i.name)})),this._availableNames=n;var i=z(this.get("data")||e,(function(t){return(X(t)||j(t))&&(t={name:t}),new pc(t,this,this.ecModel)}),this);this._data=i},e.prototype.getData=function(){return this._data},e.prototype.select=function(t){var e=this.option.selected;"single"===this.get("selectedMode")&&E(this._data,(function(t){e[t.get("name")]=!1}));e[t]=!0},e.prototype.unSelect=function(t){"single"!==this.get("selectedMode")&&(this.option.selected[t]=!1)},e.prototype.toggleSelected=function(t){var e=this.option.selected;e.hasOwnProperty(t)||(e[t]=!0),this[e[t]?"unSelect":"select"](t)},e.prototype.allSelect=function(){var t=this._data,e=this.option.selected;E(t,(function(t){e[t.get("name",!0)]=!0}))},e.prototype.inverseSelect=function(){var t=this._data,e=this.option.selected;E(t,(function(t){var n=t.get("name",!0);e.hasOwnProperty(n)||(e[n]=!0),e[n]=!e[n]}))},e.prototype.isSelected=function(t){var e=this.option.selected;return!(e.hasOwnProperty(t)&&!e[t])&&P(this._availableNames,t)>=0},e.prototype.getOrient=function(){return"vertical"===this.get("orient")?{index:1,name:"vertical"}:{index:0,name:"horizontal"}},e.type="legend.plain",e.dependencies=["series"],e.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}},e}(Ip),pB=H,dB=E,fB=Cr,gB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.newlineDisabled=!1,n}return n(e,t),e.prototype.init=function(){this.group.add(this._contentGroup=new fB),this.group.add(this._selectorGroup=new fB),this._isFirstRender=!0},e.prototype.getContentGroup=function(){return this._contentGroup},e.prototype.getSelectorGroup=function(){return this._selectorGroup},e.prototype.render=function(t,e,n){var i=this._isFirstRender;if(this._isFirstRender=!1,this.resetInner(),t.get("show",!0)){var r=t.get("align"),o=t.get("orient");r&&"auto"!==r||(r="right"===t.get("left")&&"vertical"===o?"right":"left");var a=t.get("selector",!0),s=t.get("selectorPosition",!0);!a||s&&"auto"!==s||(s="horizontal"===o?"end":"start"),this.renderInner(r,t,e,n,a,o,s);var l=t.getBoxLayoutParams(),u={width:n.getWidth(),height:n.getHeight()},h=t.get("padding"),c=mp(l,u,h),p=this.layoutInner(t,r,c,i,a,s),d=mp(k({width:p.width,height:p.height},l),u,h);this.group.x=d.x-p.x,this.group.y=d.y-p.y,this.group.markRedraw(),this.group.add(this._backgroundEl=UE(p,t))}},e.prototype.resetInner=function(){this.getContentGroup().removeAll(),this._backgroundEl&&this.group.remove(this._backgroundEl),this.getSelectorGroup().removeAll()},e.prototype.renderInner=function(t,e,n,i,r,o,a){var s=this.getContentGroup(),l=ft(),u=e.get("selectedMode"),h=[];n.eachRawSeries((function(t){!t.get("legendHoverLink")&&h.push(t.id)})),dB(e.getData(),(function(r,o){var a=r.get("name");if(!this.newlineDisabled&&(""===a||"\n"===a)){var c=new fB;return c.newline=!0,void s.add(c)}var p=n.getSeriesByName(a)[0];if(!l.get(a)){if(p){var d=p.getData(),f=d.getVisual("legendLineStyle")||{},g=d.getVisual("legendIcon"),y=d.getVisual("style");this._createItem(p,a,o,r,e,t,f,y,g,u).on("click",pB(yB,a,null,i,h)).on("mouseover",pB(mB,p.name,null,i,h)).on("mouseout",pB(xB,p.name,null,i,h)),l.set(a,!0)}else n.eachRawSeries((function(n){if(!l.get(a)&&n.legendVisualProvider){var s=n.legendVisualProvider;if(!s.containName(a))return;var c=s.indexOfName(a),p=s.getItemVisual(c,"style"),d=s.getItemVisual(c,"legendIcon"),f=bn(p.fill);f&&0===f[3]&&(f[3]=.2,p=A(A({},p),{fill:kn(f,"rgba")})),this._createItem(n,a,o,r,e,t,{},p,d,u).on("click",pB(yB,null,a,i,h)).on("mouseover",pB(mB,null,a,i,h)).on("mouseout",pB(xB,null,a,i,h)),l.set(a,!0)}}),this);0}}),this),r&&this._createSelector(r,e,i,o,a)},e.prototype._createSelector=function(t,e,n,i,r){var o=this.getSelectorGroup();dB(t,(function(t){var i=t.type,r=new As({style:{x:0,y:0,align:"center",verticalAlign:"middle"},onclick:function(){n.dispatchAction({type:"all"===i?"legendAllSelect":"legendInverseSelect"})}});o.add(r),Wh(r,{normal:e.getModel("selectorLabel"),emphasis:e.getModel(["emphasis","selectorLabel"])},{defaultText:t.title}),Pl(r)}))},e.prototype._createItem=function(t,e,n,i,r,o,a,s,l,u){var h=t.visualDrawType,c=r.get("itemWidth"),p=r.get("itemHeight"),d=r.isSelected(e),f=i.get("symbolRotate"),g=i.get("symbolKeepAspect"),y=i.get("icon"),v=function(t,e,n,i,r,o){function a(t,e){"auto"===t.lineWidth&&(t.lineWidth=e.lineWidth>0?2:0),dB(t,(function(n,i){"inherit"===t[i]&&(t[i]=e[i])}))}var s=e.getModel("itemStyle").getItemStyle(),l=0===t.lastIndexOf("empty",0)?"fill":"stroke";s.decal=i.decal,"inherit"===s.fill&&(s.fill=i[r]);"inherit"===s.stroke&&(s.stroke=i[l]);"inherit"===s.opacity&&(s.opacity=("fill"===r?i:n).opacity);a(s,i);var u=e.getModel("lineStyle"),h=u.getLineStyle();if(a(h,n),"auto"===s.fill&&(s.fill=i.fill),"auto"===s.stroke&&(s.stroke=i.fill),"auto"===h.stroke&&(h.stroke=i.fill),!o){var c=e.get("inactiveBorderWidth"),p=s[l];s.lineWidth="auto"===c?i.lineWidth>0&&p?2:0:s.lineWidth,s.fill=e.get("inactiveColor"),s.stroke=e.get("inactiveBorderColor"),h.stroke=u.get("inactiveColor"),h.lineWidth=u.get("inactiveWidth")}return{itemStyle:s,lineStyle:h}}(l=y||l||"roundRect",i,a,s,h,d),m=new fB,x=i.getModel("textStyle");if(!U(t.getLegendIcon)||y&&"inherit"!==y){var _="inherit"===y&&t.getData().getVisual("symbol")?"inherit"===f?t.getData().getVisual("symbolRotate"):f:0;m.add(function(t){var e=t.icon||"roundRect",n=ky(e,0,0,t.itemWidth,t.itemHeight,t.itemStyle.fill,t.symbolKeepAspect);n.setStyle(t.itemStyle),n.rotation=(t.iconRotate||0)*Math.PI/180,n.setOrigin([t.itemWidth/2,t.itemHeight/2]),e.indexOf("empty")>-1&&(n.style.stroke=n.style.fill,n.style.fill="#fff",n.style.lineWidth=2);return n}({itemWidth:c,itemHeight:p,icon:l,iconRotate:_,itemStyle:v.itemStyle,lineStyle:v.lineStyle,symbolKeepAspect:g}))}else m.add(t.getLegendIcon({itemWidth:c,itemHeight:p,icon:l,iconRotate:f,itemStyle:v.itemStyle,lineStyle:v.lineStyle,symbolKeepAspect:g}));var b="left"===o?c+5:-5,w=o,S=r.get("formatter"),M=e;X(S)&&S?M=S.replace("{name}",null!=e?e:""):U(S)&&(M=S(e));var I=i.get("inactiveColor");m.add(new As({style:Yh(x,{text:M,x:b,y:p/2,fill:d?x.getTextColor():I,align:w,verticalAlign:"middle"})}));var T=new Ts({shape:m.getBoundingRect(),invisible:!0}),C=i.getModel("tooltip");return C.get("show")&&Nh({el:T,componentModel:r,itemName:e,itemTooltipOption:C.option}),m.add(T),m.eachChild((function(t){t.silent=!0})),T.silent=!u,this.getContentGroup().add(m),Pl(m),m.__legendDataIndex=n,m},e.prototype.layoutInner=function(t,e,n,i,r,o){var a=this.getContentGroup(),s=this.getSelectorGroup();vp(t.get("orient"),a,t.get("itemGap"),n.width,n.height);var l=a.getBoundingRect(),u=[-l.x,-l.y];if(s.markRedraw(),a.markRedraw(),r){vp("horizontal",s,t.get("selectorItemGap",!0));var h=s.getBoundingRect(),c=[-h.x,-h.y],p=t.get("selectorButtonGap",!0),d=t.getOrient().index,f=0===d?"width":"height",g=0===d?"height":"width",y=0===d?"y":"x";"end"===o?c[d]+=l[f]+p:u[d]+=h[f]+p,c[1-d]+=l[g]/2-h[g]/2,s.x=c[0],s.y=c[1],a.x=u[0],a.y=u[1];var v={x:0,y:0};return v[f]=l[f]+p+h[f],v[g]=Math.max(l[g],h[g]),v[y]=Math.min(0,h[y]+c[1-d]),v}return a.x=u[0],a.y=u[1],this.group.getBoundingRect()},e.prototype.remove=function(){this.getContentGroup().removeAll(),this._isFirstRender=!0},e.type="legend.plain",e}(fg);function yB(t,e,n,i){xB(t,e,n,i),n.dispatchAction({type:"legendToggleSelect",name:null!=t?t:e}),mB(t,e,n,i)}function vB(t){for(var e,n=t.getZr().storage.getDisplayList(),i=0,r=n.length;i<r&&!(e=n[i].states.emphasis);)i++;return e&&e.hoverLayer}function mB(t,e,n,i){vB(n)||n.dispatchAction({type:"highlight",seriesName:t,name:e,excludeSeriesId:i})}function xB(t,e,n,i){vB(n)||n.dispatchAction({type:"downplay",seriesName:t,name:e,excludeSeriesId:i})}function _B(t){var e=t.findComponents({mainType:"legend"});e&&e.length&&t.filterSeries((function(t){for(var n=0;n<e.length;n++)if(!e[n].isSelected(t.name))return!1;return!0}))}function bB(t,e,n){var i,r={},o="toggleSelected"===t;return n.eachComponent("legend",(function(n){o&&null!=i?n[i?"select":"unSelect"](e.name):"allSelect"===t||"inverseSelect"===t?n[t]():(n[t](e.name),i=n.isSelected(e.name)),E(n.getData(),(function(t){var e=t.get("name");if("\n"!==e&&""!==e){var i=n.isSelected(e);r.hasOwnProperty(e)?r[e]=r[e]&&i:r[e]=i}}))})),"allSelect"===t||"inverseSelect"===t?{selected:r}:{name:e.name,selected:r}}function wB(t){t.registerComponentModel(cB),t.registerComponentView(gB),t.registerProcessor(t.PRIORITY.PROCESSOR.SERIES_FILTER,_B),t.registerSubTypeDefaulter("legend",(function(){return"plain"})),function(t){t.registerAction("legendToggleSelect","legendselectchanged",H(bB,"toggleSelected")),t.registerAction("legendAllSelect","legendselectall",H(bB,"allSelect")),t.registerAction("legendInverseSelect","legendinverseselect",H(bB,"inverseSelect")),t.registerAction("legendSelect","legendselected",H(bB,"select")),t.registerAction("legendUnSelect","legendunselected",H(bB,"unSelect"))}(t)}var SB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.setScrollDataIndex=function(t){this.option.scrollDataIndex=t},e.prototype.init=function(e,n,i){var r=wp(e);t.prototype.init.call(this,e,n,i),MB(this,e,r)},e.prototype.mergeOption=function(e,n){t.prototype.mergeOption.call(this,e,n),MB(this,this.option,e)},e.type="legend.scroll",e.defaultOption=gc(cB.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}),e}(cB);function MB(t,e,n){var i=[1,1];i[t.getOrient().index]=0,bp(e,n,{type:"box",ignoreSize:!!i})}var IB=Cr,TB=["width","height"],CB=["x","y"],DB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.newlineDisabled=!0,n._currentIndex=0,n}return n(e,t),e.prototype.init=function(){t.prototype.init.call(this),this.group.add(this._containerGroup=new IB),this._containerGroup.add(this.getContentGroup()),this.group.add(this._controllerGroup=new IB)},e.prototype.resetInner=function(){t.prototype.resetInner.call(this),this._controllerGroup.removeAll(),this._containerGroup.removeClipPath(),this._containerGroup.__rectSize=null},e.prototype.renderInner=function(e,n,i,r,o,a,s){var l=this;t.prototype.renderInner.call(this,e,n,i,r,o,a,s);var u=this._controllerGroup,h=n.get("pageIconSize",!0),c=Y(h)?h:[h,h];d("pagePrev",0);var p=n.getModel("pageTextStyle");function d(t,e){var i=t+"DataIndex",o=Lh(n.get("pageIcons",!0)[n.getOrient().name][e],{onclick:W(l._pageGo,l,i,n,r)},{x:-c[0]/2,y:-c[1]/2,width:c[0],height:c[1]});o.name=t,u.add(o)}u.add(new As({name:"pageText",style:{text:"xx/xx",fill:p.getTextColor(),font:p.getFont(),verticalAlign:"middle",align:"center"},silent:!0})),d("pageNext",1)},e.prototype.layoutInner=function(t,e,n,i,r,o){var a=this.getSelectorGroup(),s=t.getOrient().index,l=TB[s],u=CB[s],h=TB[1-s],c=CB[1-s];r&&vp("horizontal",a,t.get("selectorItemGap",!0));var p=t.get("selectorButtonGap",!0),d=a.getBoundingRect(),f=[-d.x,-d.y],g=T(n);r&&(g[l]=n[l]-d[l]-p);var y=this._layoutContentAndController(t,i,g,s,l,h,c,u);if(r){if("end"===o)f[s]+=y[l]+p;else{var v=d[l]+p;f[s]-=v,y[u]-=v}y[l]+=d[l]+p,f[1-s]+=y[c]+y[h]/2-d[h]/2,y[h]=Math.max(y[h],d[h]),y[c]=Math.min(y[c],d[c]+f[1-s]),a.x=f[0],a.y=f[1],a.markRedraw()}return y},e.prototype._layoutContentAndController=function(t,e,n,i,r,o,a,s){var l=this.getContentGroup(),u=this._containerGroup,h=this._controllerGroup;vp(t.get("orient"),l,t.get("itemGap"),i?n.width:null,i?null:n.height),vp("horizontal",h,t.get("pageButtonItemGap",!0));var c=l.getBoundingRect(),p=h.getBoundingRect(),d=this._showController=c[r]>n[r],f=[-c.x,-c.y];e||(f[i]=l[s]);var g=[0,0],y=[-p.x,-p.y],v=rt(t.get("pageButtonGap",!0),t.get("itemGap",!0));d&&("end"===t.get("pageButtonPosition",!0)?y[i]+=n[r]-p[r]:g[i]+=p[r]+v);y[1-i]+=c[o]/2-p[o]/2,l.setPosition(f),u.setPosition(g),h.setPosition(y);var m={x:0,y:0};if(m[r]=d?n[r]:c[r],m[o]=Math.max(c[o],p[o]),m[a]=Math.min(0,p[a]+y[1-i]),u.__rectSize=n[r],d){var x={x:0,y:0};x[r]=Math.max(n[r]-p[r]-v,0),x[o]=m[o],u.setClipPath(new Ts({shape:x})),u.__rectSize=x[r]}else h.eachChild((function(t){t.attr({invisible:!0,silent:!0})}));var _=this._getPageInfo(t);return null!=_.pageIndex&&ih(l,{x:_.contentPosition[0],y:_.contentPosition[1]},d?t:null),this._updatePageInfoView(t,_),m},e.prototype._pageGo=function(t,e,n){var i=this._getPageInfo(e)[t];null!=i&&n.dispatchAction({type:"legendScroll",scrollDataIndex:i,legendId:e.id})},e.prototype._updatePageInfoView=function(t,e){var n=this._controllerGroup;E(["pagePrev","pageNext"],(function(i){var r=null!=e[i+"DataIndex"],o=n.childOfName(i);o&&(o.setStyle("fill",r?t.get("pageIconColor",!0):t.get("pageIconInactiveColor",!0)),o.cursor=r?"pointer":"default")}));var i=n.childOfName("pageText"),r=t.get("pageFormatter"),o=e.pageIndex,a=null!=o?o+1:0,s=e.pageCount;i&&r&&i.setStyle("text",X(r)?r.replace("{current}",null==a?"":a+"").replace("{total}",null==s?"":s+""):r({current:a,total:s}))},e.prototype._getPageInfo=function(t){var e=t.get("scrollDataIndex",!0),n=this.getContentGroup(),i=this._containerGroup.__rectSize,r=t.getOrient().index,o=TB[r],a=CB[r],s=this._findTargetItemIndex(e),l=n.children(),u=l[s],h=l.length,c=h?1:0,p={contentPosition:[n.x,n.y],pageCount:c,pageIndex:c-1,pagePrevDataIndex:null,pageNextDataIndex:null};if(!u)return p;var d=m(u);p.contentPosition[r]=-d.s;for(var f=s+1,g=d,y=d,v=null;f<=h;++f)(!(v=m(l[f]))&&y.e>g.s+i||v&&!x(v,g.s))&&(g=y.i>g.i?y:v)&&(null==p.pageNextDataIndex&&(p.pageNextDataIndex=g.i),++p.pageCount),y=v;for(f=s-1,g=d,y=d,v=null;f>=-1;--f)(v=m(l[f]))&&x(y,v.s)||!(g.i<y.i)||(y=g,null==p.pagePrevDataIndex&&(p.pagePrevDataIndex=g.i),++p.pageCount,++p.pageIndex),g=v;return p;function m(t){if(t){var e=t.getBoundingRect(),n=e[a]+t[a];return{s:n,e:n+e[o],i:t.__legendDataIndex}}}function x(t,e){return t.e>=e&&t.s<=e+i}},e.prototype._findTargetItemIndex=function(t){return this._showController?(this.getContentGroup().eachChild((function(i,r){var o=i.__legendDataIndex;null==n&&null!=o&&(n=r),o===t&&(e=r)})),null!=e?e:n):0;var e,n},e.type="legend.scroll",e}(gB);function AB(t){_m(wB),t.registerComponentModel(SB),t.registerComponentView(DB),function(t){t.registerAction("legendScroll","legendscroll",(function(t,e){var n=t.scrollDataIndex;null!=n&&e.eachComponent({mainType:"legend",subType:"scroll",query:t},(function(t){t.setScrollDataIndex(n)}))}))}(t)}var kB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="dataZoom.inside",e.defaultOption=gc(DE.defaultOption,{disabled:!1,zoomLock:!1,zoomOnMouseWheel:!0,moveOnMouseMove:!0,moveOnMouseWheel:!1,preventDefaultMouseMove:!0}),e}(DE),LB=So();function PB(t,e,n){LB(t).coordSysRecordMap.each((function(t){var i=t.dataZoomInfoMap.get(e.uid);i&&(i.getRange=n)}))}function OB(t,e){if(e){t.removeKey(e.model.uid);var n=e.controller;n&&n.dispose()}}function RB(t,e){t.isDisposed()||t.dispatchAction({type:"dataZoom",animation:{easing:"cubicOut",duration:100},batch:e})}function NB(t,e,n,i){return t.coordinateSystem.containPoint([n,i])}function EB(t){t.registerProcessor(t.PRIORITY.PROCESSOR.FILTER,(function(t,e){var n=LB(e),i=n.coordSysRecordMap||(n.coordSysRecordMap=ft());i.each((function(t){t.dataZoomInfoMap=null})),t.eachComponent({mainType:"dataZoom",subType:"inside"},(function(t){E(TE(t).infoList,(function(n){var r=n.model.uid,o=i.get(r)||i.set(r,function(t,e){var n={model:e,containsPoint:H(NB,e),dispatchAction:H(RB,t),dataZoomInfoMap:null,controller:null},i=n.controller=new DI(t.getZr());return E(["pan","zoom","scrollMove"],(function(t){i.on(t,(function(e){var i=[];n.dataZoomInfoMap.each((function(r){if(e.isAvailableBehavior(r.model.option)){var o=(r.getRange||{})[t],a=o&&o(r.dzReferCoordSysInfo,n.model.mainType,n.controller,e);!r.model.get("disabled",!0)&&a&&i.push({dataZoomId:r.model.id,start:a[0],end:a[1]})}})),i.length&&n.dispatchAction(i)}))})),n}(e,n.model));(o.dataZoomInfoMap||(o.dataZoomInfoMap=ft())).set(t.uid,{dzReferCoordSysInfo:n,model:t,getRange:null})}))})),i.each((function(t){var e,n=t.controller,r=t.dataZoomInfoMap;if(r){var o=r.keys()[0];null!=o&&(e=r.get(o))}if(e){var a=function(t){var e,n="type_",i={type_true:2,type_move:1,type_false:0,type_undefined:-1},r=!0;return t.each((function(t){var o=t.model,a=!o.get("disabled",!0)&&(!o.get("zoomLock",!0)||"move");i[n+a]>i[n+e]&&(e=a),r=r&&o.get("preventDefaultMouseMove",!0)})),{controlType:e,opt:{zoomOnMouseWheel:!0,moveOnMouseMove:!0,moveOnMouseWheel:!0,preventDefaultMouseMove:!!r}}}(r);n.enable(a.controlType,a.opt),n.setPointerChecker(t.containsPoint),Dg(t,"dispatchAction",e.model.get("throttle",!0),"fixRate")}else OB(i,t)}))}))}var zB=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.type="dataZoom.inside",e}return n(e,t),e.prototype.render=function(e,n,i){t.prototype.render.apply(this,arguments),e.noTarget()?this._clear():(this.range=e.getPercentRange(),PB(i,e,{pan:W(VB.pan,this),zoom:W(VB.zoom,this),scrollMove:W(VB.scrollMove,this)}))},e.prototype.dispose=function(){this._clear(),t.prototype.dispose.apply(this,arguments)},e.prototype._clear=function(){!function(t,e){for(var n=LB(t).coordSysRecordMap,i=n.keys(),r=0;r<i.length;r++){var o=i[r],a=n.get(o),s=a.dataZoomInfoMap;if(s){var l=e.uid;s.get(l)&&(s.removeKey(l),s.keys().length||OB(n,a))}}}(this.api,this.dataZoomModel),this.range=null},e.type="dataZoom.inside",e}(LE),VB={zoom:function(t,e,n,i){var r=this.range,o=r.slice(),a=t.axisModels[0];if(a){var s=FB[e](null,[i.originX,i.originY],a,n,t),l=(s.signal>0?s.pixelStart+s.pixelLength-s.pixel:s.pixel-s.pixelStart)/s.pixelLength*(o[1]-o[0])+o[0],u=Math.max(1/i.scale,0);o[0]=(o[0]-l)*u+l,o[1]=(o[1]-l)*u+l;var h=this.dataZoomModel.findRepresentativeAxisProxy().getMinMaxSpan();return sk(0,o,[0,100],0,h.minSpan,h.maxSpan),this.range=o,r[0]!==o[0]||r[1]!==o[1]?o:void 0}},pan:BB((function(t,e,n,i,r,o){var a=FB[i]([o.oldX,o.oldY],[o.newX,o.newY],e,r,n);return a.signal*(t[1]-t[0])*a.pixel/a.pixelLength})),scrollMove:BB((function(t,e,n,i,r,o){return FB[i]([0,0],[o.scrollDelta,o.scrollDelta],e,r,n).signal*(t[1]-t[0])*o.scrollDelta}))};function BB(t){return function(e,n,i,r){var o=this.range,a=o.slice(),s=e.axisModels[0];if(s)return sk(t(a,s,e,n,i,r),a,[0,100],"all"),this.range=a,o[0]!==a[0]||o[1]!==a[1]?a:void 0}}var FB={grid:function(t,e,n,i,r){var o=n.axis,a={},s=r.model.coordinateSystem.getRect();return t=t||[0,0],"x"===o.dim?(a.pixel=e[0]-t[0],a.pixelLength=s.width,a.pixelStart=s.x,a.signal=o.inverse?1:-1):(a.pixel=e[1]-t[1],a.pixelLength=s.height,a.pixelStart=s.y,a.signal=o.inverse?-1:1),a},polar:function(t,e,n,i,r){var o=n.axis,a={},s=r.model.coordinateSystem,l=s.getRadiusAxis().getExtent(),u=s.getAngleAxis().getExtent();return t=t?s.pointToCoord(t):[0,0],e=s.pointToCoord(e),"radiusAxis"===n.mainType?(a.pixel=e[0]-t[0],a.pixelLength=l[1]-l[0],a.pixelStart=l[0],a.signal=o.inverse?1:-1):(a.pixel=e[1]-t[1],a.pixelLength=u[1]-u[0],a.pixelStart=u[0],a.signal=o.inverse?-1:1),a},singleAxis:function(t,e,n,i,r){var o=n.axis,a=r.model.coordinateSystem.getRect(),s={};return t=t||[0,0],"horizontal"===o.orient?(s.pixel=e[0]-t[0],s.pixelLength=a.width,s.pixelStart=a.x,s.signal=o.inverse?1:-1):(s.pixel=e[1]-t[1],s.pixelLength=a.height,s.pixelStart=a.y,s.signal=o.inverse?-1:1),s}};function GB(t){VE(t),t.registerComponentModel(kB),t.registerComponentView(zB),EB(t)}var WB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="dataZoom.slider",e.layoutMode="box",e.defaultOption=gc(DE.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:.5},areaStyle:{color:"#d2dbee",opacity:.2}},selectedDataBackground:{lineStyle:{color:"#8fb0f7",width:.5},areaStyle:{color:"#8fb0f7",opacity:.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:.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"}}}),e}(DE),HB=Ts,YB="horizontal",UB="vertical",XB=["line","bar","candlestick","scatter"],ZB={easing:"cubicOut",duration:100,delay:0},jB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n._displayables={},n}return n(e,t),e.prototype.init=function(t,e){this.api=e,this._onBrush=W(this._onBrush,this),this._onBrushEnd=W(this._onBrushEnd,this)},e.prototype.render=function(e,n,i,r){if(t.prototype.render.apply(this,arguments),Dg(this,"_dispatchZoomAction",e.get("throttle"),"fixRate"),this._orient=e.getOrient(),!1!==e.get("show")){if(e.noTarget())return this._clear(),void this.group.removeAll();r&&"dataZoom"===r.type&&r.from===this.uid||this._buildView(),this._updateView()}else this.group.removeAll()},e.prototype.dispose=function(){this._clear(),t.prototype.dispose.apply(this,arguments)},e.prototype._clear=function(){Ag(this,"_dispatchZoomAction");var t=this.api.getZr();t.off("mousemove",this._onBrush),t.off("mouseup",this._onBrushEnd)},e.prototype._buildView=function(){var t=this.group;t.removeAll(),this._brushing=!1,this._displayables.brushRect=null,this._resetLocation(),this._resetInterval();var e=this._displayables.sliderGroup=new Cr;this._renderBackground(),this._renderHandle(),this._renderDataShadow(),t.add(e),this._positionGroup()},e.prototype._resetLocation=function(){var t=this.dataZoomModel,e=this.api,n=t.get("brushSelect")?7:0,i=this._findCoordRect(),r={width:e.getWidth(),height:e.getHeight()},o=this._orient===YB?{right:r.width-i.x-i.width,top:r.height-30-7-n,width:i.width,height:30}:{right:7,top:i.y,width:30,height:i.height},a=wp(t.option);E(["right","top","width","height"],(function(t){"ph"===a[t]&&(a[t]=o[t])}));var s=mp(a,r);this._location={x:s.x,y:s.y},this._size=[s.width,s.height],this._orient===UB&&this._size.reverse()},e.prototype._positionGroup=function(){var t=this.group,e=this._location,n=this._orient,i=this.dataZoomModel.getFirstTargetAxisModel(),r=i&&i.get("inverse"),o=this._displayables.sliderGroup,a=(this._dataShadowInfo||{}).otherAxisInverse;o.attr(n!==YB||r?n===YB&&r?{scaleY:a?1:-1,scaleX:-1}:n!==UB||r?{scaleY:a?-1:1,scaleX:-1,rotation:Math.PI/2}:{scaleY:a?-1:1,scaleX:1,rotation:Math.PI/2}:{scaleY:a?1:-1,scaleX:1});var s=t.getBoundingRect([o]);t.x=e.x-s.x,t.y=e.y-s.y,t.markRedraw()},e.prototype._getViewExtent=function(){return[0,this._size[0]]},e.prototype._renderBackground=function(){var t=this.dataZoomModel,e=this._size,n=this._displayables.sliderGroup,i=t.get("brushSelect");n.add(new HB({silent:!0,shape:{x:0,y:0,width:e[0],height:e[1]},style:{fill:t.get("backgroundColor")},z2:-40}));var r=new HB({shape:{x:0,y:0,width:e[0],height:e[1]},style:{fill:"transparent"},z2:0,onclick:W(this._onClickPanel,this)}),o=this.api.getZr();i?(r.on("mousedown",this._onBrushStart,this),r.cursor="crosshair",o.on("mousemove",this._onBrush),o.on("mouseup",this._onBrushEnd)):(o.off("mousemove",this._onBrush),o.off("mouseup",this._onBrushEnd)),n.add(r)},e.prototype._renderDataShadow=function(){var t=this._dataShadowInfo=this._prepareDataShadowInfo();if(this._displayables.dataShadowSegs=[],t){var e=this._size,n=this._shadowSize||[],i=t.series,r=i.getRawData(),o=i.getShadowDim?i.getShadowDim():t.otherDim;if(null!=o){var a=this._shadowPolygonPts,s=this._shadowPolylinePts;if(r!==this._shadowData||o!==this._shadowDim||e[0]!==n[0]||e[1]!==n[1]){var l=r.getDataExtent(o),u=.3*(l[1]-l[0]);l=[l[0]-u,l[1]+u];var h,c=[0,e[1]],p=[0,e[0]],d=[[e[0],0],[0,0]],f=[],g=p[1]/(r.count()-1),y=0,v=Math.round(r.count()/e[0]);r.each([o],(function(t,e){if(v>0&&e%v)y+=g;else{var n=null==t||isNaN(t)||""===t,i=n?0:Nr(t,l,c,!0);n&&!h&&e?(d.push([d[d.length-1][0],0]),f.push([f[f.length-1][0],0])):!n&&h&&(d.push([y,0]),f.push([y,0])),d.push([y,i]),f.push([y,i]),y+=g,h=n}})),a=this._shadowPolygonPts=d,s=this._shadowPolylinePts=f}this._shadowData=r,this._shadowDim=o,this._shadowSize=[e[0],e[1]];for(var m=this.dataZoomModel,x=0;x<3;x++){var _=b(1===x);this._displayables.sliderGroup.add(_),this._displayables.dataShadowSegs.push(_)}}}function b(t){var e=m.getModel(t?"selectedDataBackground":"dataBackground"),n=new Cr,i=new Lu({shape:{points:a},segmentIgnoreThreshold:1,style:e.getModel("areaStyle").getAreaStyle(),silent:!0,z2:-20}),r=new Ou({shape:{points:s},segmentIgnoreThreshold:1,style:e.getModel("lineStyle").getLineStyle(),silent:!0,z2:-19});return n.add(i),n.add(r),n}},e.prototype._prepareDataShadowInfo=function(){var t=this.dataZoomModel,e=t.get("showDataShadow");if(!1!==e){var n,i=this.ecModel;return t.eachTargetAxis((function(r,o){E(t.getAxisProxy(r,o).getTargetSeriesModels(),(function(t){if(!(n||!0!==e&&P(XB,t.get("type"))<0)){var a,s=i.getComponent(ME(r),o).axis,l={x:"y",y:"x",radius:"angle",angle:"radius"}[r],u=t.coordinateSystem;null!=l&&u.getOtherAxis&&(a=u.getOtherAxis(s).inverse),l=t.getData().mapDimension(l),n={thisAxis:s,series:t,thisDim:r,otherDim:l,otherAxisInverse:a}}}),this)}),this),n}},e.prototype._renderHandle=function(){var t=this.group,e=this._displayables,n=e.handles=[null,null],i=e.handleLabels=[null,null],r=this._displayables.sliderGroup,o=this._size,a=this.dataZoomModel,s=this.api,l=a.get("borderRadius")||0,u=a.get("brushSelect"),h=e.filler=new HB({silent:u,style:{fill:a.get("fillerColor")},textConfig:{position:"inside"}});r.add(h),r.add(new HB({silent:!0,subPixelOptimize:!0,shape:{x:0,y:0,width:o[0],height:o[1],r:l},style:{stroke:a.get("dataBackgroundColor")||a.get("borderColor"),lineWidth:1,fill:"rgba(0,0,0,0)"}})),E([0,1],(function(e){var o=a.get("handleIcon");!Cy[o]&&o.indexOf("path://")<0&&o.indexOf("image://")<0&&(o="path://"+o);var s=ky(o,-1,0,2,2,null,!0);s.attr({cursor:qB(this._orient),draggable:!0,drift:W(this._onDragMove,this,e),ondragend:W(this._onDragEnd,this),onmouseover:W(this._showDataInfo,this,!0),onmouseout:W(this._showDataInfo,this,!1),z2:5});var l=s.getBoundingRect(),u=a.get("handleSize");this._handleHeight=Er(u,this._size[1]),this._handleWidth=l.width/l.height*this._handleHeight,s.setStyle(a.getModel("handleStyle").getItemStyle()),s.style.strokeNoScale=!0,s.rectHover=!0,s.ensureState("emphasis").style=a.getModel(["emphasis","handleStyle"]).getItemStyle(),Pl(s);var h=a.get("handleColor");null!=h&&(s.style.fill=h),r.add(n[e]=s);var c=a.getModel("textStyle");t.add(i[e]=new As({silent:!0,invisible:!0,style:Yh(c,{x:0,y:0,text:"",verticalAlign:"middle",align:"center",fill:c.getTextColor(),font:c.getFont()}),z2:10}))}),this);var c=h;if(u){var p=Er(a.get("moveHandleSize"),o[1]),d=e.moveHandle=new Ts({style:a.getModel("moveHandleStyle").getItemStyle(),silent:!0,shape:{r:[0,0,2,2],y:o[1]-.5,height:p}}),f=.8*p,g=e.moveHandleIcon=ky(a.get("moveHandleIcon"),-f/2,-f/2,f,f,"#fff",!0);g.silent=!0,g.y=o[1]+p/2-.5,d.ensureState("emphasis").style=a.getModel(["emphasis","moveHandleStyle"]).getItemStyle();var y=Math.min(o[1]/2,Math.max(p,10));(c=e.moveZone=new Ts({invisible:!0,shape:{y:o[1]-y,height:p+y}})).on("mouseover",(function(){s.enterEmphasis(d)})).on("mouseout",(function(){s.leaveEmphasis(d)})),r.add(d),r.add(g),r.add(c)}c.attr({draggable:!0,cursor:qB(this._orient),drift:W(this._onDragMove,this,"all"),ondragstart:W(this._showDataInfo,this,!0),ondragend:W(this._onDragEnd,this),onmouseover:W(this._showDataInfo,this,!0),onmouseout:W(this._showDataInfo,this,!1)})},e.prototype._resetInterval=function(){var t=this._range=this.dataZoomModel.getPercentRange(),e=this._getViewExtent();this._handleEnds=[Nr(t[0],[0,100],e,!0),Nr(t[1],[0,100],e,!0)]},e.prototype._updateInterval=function(t,e){var n=this.dataZoomModel,i=this._handleEnds,r=this._getViewExtent(),o=n.findRepresentativeAxisProxy().getMinMaxSpan(),a=[0,100];sk(e,i,r,n.get("zoomLock")?"all":t,null!=o.minSpan?Nr(o.minSpan,a,r,!0):null,null!=o.maxSpan?Nr(o.maxSpan,a,r,!0):null);var s=this._range,l=this._range=Vr([Nr(i[0],r,a,!0),Nr(i[1],r,a,!0)]);return!s||s[0]!==l[0]||s[1]!==l[1]},e.prototype._updateView=function(t){var e=this._displayables,n=this._handleEnds,i=Vr(n.slice()),r=this._size;E([0,1],(function(t){var i=e.handles[t],o=this._handleHeight;i.attr({scaleX:o/2,scaleY:o/2,x:n[t]+(t?-1:1),y:r[1]/2-o/2})}),this),e.filler.setShape({x:i[0],y:0,width:i[1]-i[0],height:r[1]});var o={x:i[0],width:i[1]-i[0]};e.moveHandle&&(e.moveHandle.setShape(o),e.moveZone.setShape(o),e.moveZone.getBoundingRect(),e.moveHandleIcon&&e.moveHandleIcon.attr("x",o.x+o.width/2));for(var a=e.dataShadowSegs,s=[0,i[0],i[1],r[0]],l=0;l<a.length;l++){var u=a[l],h=u.getClipPath();h||(h=new Ts,u.setClipPath(h)),h.setShape({x:s[l],y:0,width:s[l+1]-s[l],height:r[1]})}this._updateDataInfo(t)},e.prototype._updateDataInfo=function(t){var e=this.dataZoomModel,n=this._displayables,i=n.handleLabels,r=this._orient,o=["",""];if(e.get("showDetail")){var a=e.findRepresentativeAxisProxy();if(a){var s=a.getAxisModel().axis,l=this._range,u=t?a.calculateDataWindow({start:l[0],end:l[1]}).valueWindow:a.getDataValueWindow();o=[this._formatLabel(u[0],s),this._formatLabel(u[1],s)]}}var h=Vr(this._handleEnds.slice());function c(t){var e=Mh(n.handles[t].parent,this.group),a=Th(0===t?"right":"left",e),s=this._handleWidth/2+5,l=Ih([h[t]+(0===t?-s:s),this._size[1]/2],e);i[t].setStyle({x:l[0],y:l[1],verticalAlign:r===YB?"middle":a,align:r===YB?a:"center",text:o[t]})}c.call(this,0),c.call(this,1)},e.prototype._formatLabel=function(t,e){var n=this.dataZoomModel,i=n.get("labelFormatter"),r=n.get("labelPrecision");null!=r&&"auto"!==r||(r=e.getPixelPrecision());var o=null==t||isNaN(t)?"":"category"===e.type||"time"===e.type?e.scale.getLabel({value:Math.round(t)}):t.toFixed(Math.min(r,20));return U(i)?i(t,o):X(i)?i.replace("{value}",o):o},e.prototype._showDataInfo=function(t){t=this._dragging||t;var e=this._displayables,n=e.handleLabels;n[0].attr("invisible",!t),n[1].attr("invisible",!t),e.moveHandle&&this.api[t?"enterEmphasis":"leaveEmphasis"](e.moveHandle,1)},e.prototype._onDragMove=function(t,e,n,i){this._dragging=!0,se(i.event);var r=Ih([e,n],this._displayables.sliderGroup.getLocalTransform(),!0),o=this._updateInterval(t,r[0]),a=this.dataZoomModel.get("realtime");this._updateView(!a),o&&a&&this._dispatchZoomAction(!0)},e.prototype._onDragEnd=function(){this._dragging=!1,this._showDataInfo(!1),!this.dataZoomModel.get("realtime")&&this._dispatchZoomAction(!1)},e.prototype._onClickPanel=function(t){var e=this._size,n=this._displayables.sliderGroup.transformCoordToLocal(t.offsetX,t.offsetY);if(!(n[0]<0||n[0]>e[0]||n[1]<0||n[1]>e[1])){var i=this._handleEnds,r=(i[0]+i[1])/2,o=this._updateInterval("all",n[0]-r);this._updateView(),o&&this._dispatchZoomAction(!1)}},e.prototype._onBrushStart=function(t){var e=t.offsetX,n=t.offsetY;this._brushStart=new Ji(e,n),this._brushing=!0,this._brushStartTime=+new Date},e.prototype._onBrushEnd=function(t){if(this._brushing){var e=this._displayables.brushRect;if(this._brushing=!1,e){e.attr("ignore",!0);var n=e.shape;if(!(+new Date-this._brushStartTime<200&&Math.abs(n.width)<5)){var i=this._getViewExtent(),r=[0,100];this._range=Vr([Nr(n.x,i,r,!0),Nr(n.x+n.width,i,r,!0)]),this._handleEnds=[n.x,n.x+n.width],this._updateView(),this._dispatchZoomAction(!1)}}}},e.prototype._onBrush=function(t){this._brushing&&(se(t.event),this._updateBrushRect(t.offsetX,t.offsetY))},e.prototype._updateBrushRect=function(t,e){var n=this._displayables,i=this.dataZoomModel,r=n.brushRect;r||(r=n.brushRect=new HB({silent:!0,style:i.getModel("brushStyle").getItemStyle()}),n.sliderGroup.add(r)),r.attr("ignore",!1);var o=this._brushStart,a=this._displayables.sliderGroup,s=a.transformCoordToLocal(t,e),l=a.transformCoordToLocal(o.x,o.y),u=this._size;s[0]=Math.max(Math.min(u[0],s[0]),0),r.setShape({x:l[0],y:0,width:s[0]-l[0],height:u[1]})},e.prototype._dispatchZoomAction=function(t){var e=this._range;this.api.dispatchAction({type:"dataZoom",from:this.uid,dataZoomId:this.dataZoomModel.id,animation:t?ZB:null,start:e[0],end:e[1]})},e.prototype._findCoordRect=function(){var t,e=TE(this.dataZoomModel).infoList;if(!t&&e.length){var n=e[0].model.coordinateSystem;t=n.getRect&&n.getRect()}if(!t){var i=this.api.getWidth(),r=this.api.getHeight();t={x:.2*i,y:.2*r,width:.6*i,height:.6*r}}return t},e.type="dataZoom.slider",e}(LE);function qB(t){return"vertical"===t?"ns-resize":"ew-resize"}function KB(t){t.registerComponentModel(WB),t.registerComponentView(jB),VE(t)}var $B=function(t,e,n){var i=T((JB[t]||{})[e]);return n&&Y(i)?i[i.length-1]:i},JB={color:{active:["#006edd","#e0ffff"],inactive:["rgba(0,0,0,0)"]},colorHue:{active:[0,360],inactive:[0,0]},colorSaturation:{active:[.3,1],inactive:[0,0]},colorLightness:{active:[.9,.5],inactive:[0,0]},colorAlpha:{active:[.3,1],inactive:[0,0]},opacity:{active:[.3,1],inactive:[0,0]},symbol:{active:["circle","roundRect","diamond"],inactive:["none"]},symbolSize:{active:[10,50],inactive:[0,0]}},QB=eD.mapVisual,tF=eD.eachVisual,eF=Y,nF=E,iF=Vr,rF=Nr,oF=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.stateList=["inRange","outOfRange"],n.replacableOptionKeys=["inRange","outOfRange","target","controller","color"],n.layoutMode={type:"box",ignoreSize:!0},n.dataBound=[-1/0,1/0],n.targetVisuals={},n.controllerVisuals={},n}return n(e,t),e.prototype.init=function(t,e,n){this.mergeDefaultAndTheme(t,n)},e.prototype.optionUpdated=function(t,e){var n=this.option;!e&&tV(n,t,this.replacableOptionKeys),this.textStyleModel=this.getModel("textStyle"),this.resetItemSize(),this.completeVisualOption()},e.prototype.resetVisual=function(t){var e=this.stateList;t=W(t,this),this.controllerVisuals=Qz(this.option.controller,e,t),this.targetVisuals=Qz(this.option.target,e,t)},e.prototype.getItemSymbol=function(){return null},e.prototype.getTargetSeriesIndices=function(){var t=this.option.seriesIndex,e=[];return null==t||"all"===t?this.ecModel.eachSeries((function(t,n){e.push(n)})):e=ho(t),e},e.prototype.eachTargetSeries=function(t,e){E(this.getTargetSeriesIndices(),(function(n){var i=this.ecModel.getSeriesByIndex(n);i&&t.call(e,i)}),this)},e.prototype.isTargetSeries=function(t){var e=!1;return this.eachTargetSeries((function(n){n===t&&(e=!0)})),e},e.prototype.formatValueText=function(t,e,n){var i,r=this.option,o=r.precision,a=this.dataBound,s=r.formatter;n=n||["<",">"],Y(t)&&(t=t.slice(),i=!0);var l=e?t:i?[u(t[0]),u(t[1])]:u(t);return X(s)?s.replace("{value}",i?l[0]:l).replace("{value2}",i?l[1]:l):U(s)?i?s(t[0],t[1]):s(t):i?t[0]===a[0]?n[0]+" "+l[1]:t[1]===a[1]?n[1]+" "+l[0]:l[0]+" - "+l[1]:l;function u(t){return t===a[0]?"min":t===a[1]?"max":(+t).toFixed(Math.min(o,20))}},e.prototype.resetExtent=function(){var t=this.option,e=iF([t.min,t.max]);this._dataExtent=e},e.prototype.getDataDimensionIndex=function(t){var e=this.option.dimension;if(null!=e)return t.getDimensionIndex(e);for(var n=t.dimensions,i=n.length-1;i>=0;i--){var r=n[i],o=t.getDimensionInfo(r);if(!o.isCalculationCoord)return o.storeDimIndex}},e.prototype.getExtent=function(){return this._dataExtent.slice()},e.prototype.completeVisualOption=function(){var t=this.ecModel,e=this.option,n={inRange:e.inRange,outOfRange:e.outOfRange},i=e.target||(e.target={}),r=e.controller||(e.controller={});C(i,n),C(r,n);var o=this.isCategory();function a(n){eF(e.color)&&!n.inRange&&(n.inRange={color:e.color.slice().reverse()}),n.inRange=n.inRange||{color:t.get("gradientColor")}}a.call(this,i),a.call(this,r),function(t,e,n){var i=t[e],r=t[n];i&&!r&&(r=t[n]={},nF(i,(function(t,e){if(eD.isValidType(e)){var n=$B(e,"inactive",o);null!=n&&(r[e]=n,"color"!==e||r.hasOwnProperty("opacity")||r.hasOwnProperty("colorAlpha")||(r.opacity=[0,0]))}})))}.call(this,i,"inRange","outOfRange"),function(t){var e=(t.inRange||{}).symbol||(t.outOfRange||{}).symbol,n=(t.inRange||{}).symbolSize||(t.outOfRange||{}).symbolSize,i=this.get("inactiveColor"),r=this.getItemSymbol()||"roundRect";nF(this.stateList,(function(a){var s=this.itemSize,l=t[a];l||(l=t[a]={color:o?i:[i]}),null==l.symbol&&(l.symbol=e&&T(e)||(o?r:[r])),null==l.symbolSize&&(l.symbolSize=n&&T(n)||(o?s[0]:[s[0],s[0]])),l.symbol=QB(l.symbol,(function(t){return"none"===t?r:t}));var u=l.symbolSize;if(null!=u){var h=-1/0;tF(u,(function(t){t>h&&(h=t)})),l.symbolSize=QB(u,(function(t){return rF(t,[0,h],[0,s[0]],!0)}))}}),this)}.call(this,r)},e.prototype.resetItemSize=function(){this.itemSize=[parseFloat(this.get("itemWidth")),parseFloat(this.get("itemHeight"))]},e.prototype.isCategory=function(){return!!this.option.categories},e.prototype.setSelected=function(t){},e.prototype.getSelected=function(){return null},e.prototype.getValueState=function(t){return null},e.prototype.getVisualMeta=function(t){return null},e.type="visualMap",e.dependencies=["series"],e.defaultOption={show:!0,z:4,seriesIndex:"all",min:0,max:200,left:0,right:null,top:null,bottom:0,itemWidth:null,itemHeight:null,inverse:!1,orient:"vertical",backgroundColor:"rgba(0,0,0,0)",borderColor:"#ccc",contentColor:"#5793f3",inactiveColor:"#aaa",borderWidth:0,padding:5,textGap:10,precision:0,textStyle:{color:"#333"}},e}(Ip),aF=[20,140],sF=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.optionUpdated=function(e,n){t.prototype.optionUpdated.apply(this,arguments),this.resetExtent(),this.resetVisual((function(t){t.mappingMethod="linear",t.dataExtent=this.getExtent()})),this._resetRange()},e.prototype.resetItemSize=function(){t.prototype.resetItemSize.apply(this,arguments);var e=this.itemSize;(null==e[0]||isNaN(e[0]))&&(e[0]=aF[0]),(null==e[1]||isNaN(e[1]))&&(e[1]=aF[1])},e.prototype._resetRange=function(){var t=this.getExtent(),e=this.option.range;!e||e.auto?(t.auto=1,this.option.range=t):Y(e)&&(e[0]>e[1]&&e.reverse(),e[0]=Math.max(e[0],t[0]),e[1]=Math.min(e[1],t[1]))},e.prototype.completeVisualOption=function(){t.prototype.completeVisualOption.apply(this,arguments),E(this.stateList,(function(t){var e=this.option.controller[t].symbolSize;e&&e[0]!==e[1]&&(e[0]=e[1]/3)}),this)},e.prototype.setSelected=function(t){this.option.range=t.slice(),this._resetRange()},e.prototype.getSelected=function(){var t=this.getExtent(),e=Vr((this.get("range")||[]).slice());return e[0]>t[1]&&(e[0]=t[1]),e[1]>t[1]&&(e[1]=t[1]),e[0]<t[0]&&(e[0]=t[0]),e[1]<t[0]&&(e[1]=t[0]),e},e.prototype.getValueState=function(t){var e=this.option.range,n=this.getExtent();return(e[0]<=n[0]||e[0]<=t)&&(e[1]>=n[1]||t<=e[1])?"inRange":"outOfRange"},e.prototype.findTargetDataIndices=function(t){var e=[];return this.eachTargetSeries((function(n){var i=[],r=n.getData();r.each(this.getDataDimensionIndex(r),(function(e,n){t[0]<=e&&e<=t[1]&&i.push(n)}),this),e.push({seriesId:n.id,dataIndex:i})}),this),e},e.prototype.getVisualMeta=function(t){var e=lF(this,"outOfRange",this.getExtent()),n=lF(this,"inRange",this.option.range.slice()),i=[];function r(e,n){i.push({value:e,color:t(e,n)})}for(var o=0,a=0,s=n.length,l=e.length;a<l&&(!n.length||e[a]<=n[0]);a++)e[a]<n[o]&&r(e[a],"outOfRange");for(var u=1;o<s;o++,u=0)u&&i.length&&r(n[o],"outOfRange"),r(n[o],"inRange");for(u=1;a<l;a++)(!n.length||n[n.length-1]<e[a])&&(u&&(i.length&&r(i[i.length-1].value,"outOfRange"),u=0),r(e[a],"outOfRange"));var h=i.length;return{stops:i,outerColors:[h?i[0].color:"transparent",h?i[h-1].color:"transparent"]}},e.type="visualMap.continuous",e.defaultOption=gc(oF.defaultOption,{align:"auto",calculable:!1,hoverLink:!0,realtime:!0,handleIcon:"path://M-11.39,9.77h0a3.5,3.5,0,0,1-3.5,3.5h-22a3.5,3.5,0,0,1-3.5-3.5h0a3.5,3.5,0,0,1,3.5-3.5h22A3.5,3.5,0,0,1-11.39,9.77Z",handleSize:"120%",handleStyle:{borderColor:"#fff",borderWidth:1},indicatorIcon:"circle",indicatorSize:"50%",indicatorStyle:{borderColor:"#fff",borderWidth:2,shadowBlur:2,shadowOffsetX:1,shadowOffsetY:1,shadowColor:"rgba(0,0,0,0.2)"}}),e}(oF);function lF(t,e,n){if(n[0]===n[1])return n.slice();for(var i=(n[1]-n[0])/200,r=n[0],o=[],a=0;a<=200&&r<n[1];a++)o.push(r),r+=i;return o.push(n[1]),o}var uF=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.autoPositionValues={left:1,right:1,top:1,bottom:1},n}return n(e,t),e.prototype.init=function(t,e){this.ecModel=t,this.api=e},e.prototype.render=function(t,e,n,i){this.visualMapModel=t,!1!==t.get("show")?this.doRender(t,e,n,i):this.group.removeAll()},e.prototype.renderBackground=function(t){var e=this.visualMapModel,n=np(e.get("padding")||0),i=t.getBoundingRect();t.add(new Ts({z2:-1,silent:!0,shape:{x:i.x-n[3],y:i.y-n[0],width:i.width+n[3]+n[1],height:i.height+n[0]+n[2]},style:{fill:e.get("backgroundColor"),stroke:e.get("borderColor"),lineWidth:e.get("borderWidth")}}))},e.prototype.getControllerVisual=function(t,e,n){var i=(n=n||{}).forceState,r=this.visualMapModel,o={};if("color"===e){var a=r.get("contentColor");o.color=a}function s(t){return o[t]}function l(t,e){o[t]=e}var u=r.controllerVisuals[i||r.getValueState(t)];return E(eD.prepareVisualTypes(u),(function(i){var r=u[i];n.convertOpacityToAlpha&&"opacity"===i&&(i="colorAlpha",r=u.__alphaForOpacity),eD.dependsOn(i,e)&&r&&r.applyVisual(t,s,l)})),o[e]},e.prototype.positionGroup=function(t){var e=this.visualMapModel,n=this.api;xp(t,e.getBoxLayoutParams(),{width:n.getWidth(),height:n.getHeight()})},e.prototype.doRender=function(t,e,n,i){},e.type="visualMap",e}(fg),hF=[["left","right","width"],["top","bottom","height"]];function cF(t,e,n){var i=t.option,r=i.align;if(null!=r&&"auto"!==r)return r;for(var o={width:e.getWidth(),height:e.getHeight()},a="horizontal"===i.orient?1:0,s=hF[a],l=[0,null,10],u={},h=0;h<3;h++)u[hF[1-a][h]]=l[h],u[s[h]]=2===h?n[0]:i[s[h]];var c=[["x","width",3],["y","height",0]][a],p=mp(u,o,i.padding);return s[(p.margin[c[2]]||0)+p[c[0]]+.5*p[c[1]]<.5*o[c[1]]?0:1]}function pF(t,e){return E(t||[],(function(t){null!=t.dataIndex&&(t.dataIndexInside=t.dataIndex,t.dataIndex=null),t.highlightKey="visualMap"+(e?e.componentIndex:"")})),t}var dF=Nr,fF=E,gF=Math.min,yF=Math.max,vF=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n._shapes={},n._dataInterval=[],n._handleEnds=[],n._hoverLinkDataIndices=[],n}return n(e,t),e.prototype.doRender=function(t,e,n,i){this._api=n,i&&"selectDataRange"===i.type&&i.from===this.uid||this._buildView()},e.prototype._buildView=function(){this.group.removeAll();var t=this.visualMapModel,e=this.group;this._orient=t.get("orient"),this._useHandle=t.get("calculable"),this._resetInterval(),this._renderBar(e);var n=t.get("text");this._renderEndsText(e,n,0),this._renderEndsText(e,n,1),this._updateView(!0),this.renderBackground(e),this._updateView(),this._enableHoverLinkToSeries(),this._enableHoverLinkFromSeries(),this.positionGroup(e)},e.prototype._renderEndsText=function(t,e,n){if(e){var i=e[1-n];i=null!=i?i+"":"";var r=this.visualMapModel,o=r.get("textGap"),a=r.itemSize,s=this._shapes.mainGroup,l=this._applyTransform([a[0]/2,0===n?-o:a[1]+o],s),u=this._applyTransform(0===n?"bottom":"top",s),h=this._orient,c=this.visualMapModel.textStyleModel;this.group.add(new As({style:{x:l[0],y:l[1],verticalAlign:"horizontal"===h?"middle":u,align:"horizontal"===h?u:"center",text:i,font:c.getFont(),fill:c.getTextColor()}}))}},e.prototype._renderBar=function(t){var e=this.visualMapModel,n=this._shapes,i=e.itemSize,r=this._orient,o=this._useHandle,a=cF(e,this.api,i),s=n.mainGroup=this._createBarGroup(a),l=new Cr;s.add(l),l.add(n.outOfRange=mF()),l.add(n.inRange=mF(null,o?_F(this._orient):null,W(this._dragHandle,this,"all",!1),W(this._dragHandle,this,"all",!0))),l.setClipPath(new Ts({shape:{x:0,y:0,width:i[0],height:i[1],r:3}}));var u=e.textStyleModel.getTextRect("国"),h=yF(u.width,u.height);o&&(n.handleThumbs=[],n.handleLabels=[],n.handleLabelPoints=[],this._createHandle(e,s,0,i,h,r),this._createHandle(e,s,1,i,h,r)),this._createIndicator(e,s,i,h,r),t.add(s)},e.prototype._createHandle=function(t,e,n,i,r,o){var a=W(this._dragHandle,this,n,!1),s=W(this._dragHandle,this,n,!0),l=gr(t.get("handleSize"),i[0]),u=ky(t.get("handleIcon"),-l/2,-l/2,l,l,null,!0),h=_F(this._orient);u.attr({cursor:h,draggable:!0,drift:a,ondragend:s,onmousemove:function(t){se(t.event)}}),u.x=i[0]/2,u.useStyle(t.getModel("handleStyle").getItemStyle()),u.setStyle({strokeNoScale:!0,strokeFirst:!0}),u.style.lineWidth*=2,u.ensureState("emphasis").style=t.getModel(["emphasis","handleStyle"]).getItemStyle(),Vl(u,!0),e.add(u);var c=this.visualMapModel.textStyleModel,p=new As({cursor:h,draggable:!0,drift:a,onmousemove:function(t){se(t.event)},ondragend:s,style:{x:0,y:0,text:"",font:c.getFont(),fill:c.getTextColor()}});p.ensureState("blur").style={opacity:.1},p.stateTransition={duration:200},this.group.add(p);var d=[l,0],f=this._shapes;f.handleThumbs[n]=u,f.handleLabelPoints[n]=d,f.handleLabels[n]=p},e.prototype._createIndicator=function(t,e,n,i,r){var o=gr(t.get("indicatorSize"),n[0]),a=ky(t.get("indicatorIcon"),-o/2,-o/2,o,o,null,!0);a.attr({cursor:"move",invisible:!0,silent:!0,x:n[0]/2});var s=t.getModel("indicatorStyle").getItemStyle();if(a instanceof xs){var l=a.style;a.useStyle(A({image:l.image,x:l.x,y:l.y,width:l.width,height:l.height},s))}else a.useStyle(s);e.add(a);var u=this.visualMapModel.textStyleModel,h=new As({silent:!0,invisible:!0,style:{x:0,y:0,text:"",font:u.getFont(),fill:u.getTextColor()}});this.group.add(h);var c=[("horizontal"===r?i/2:6)+n[0]/2,0],p=this._shapes;p.indicator=a,p.indicatorLabel=h,p.indicatorLabelPoint=c,this._firstShowIndicator=!0},e.prototype._dragHandle=function(t,e,n,i){if(this._useHandle){if(this._dragging=!e,!e){var r=this._applyTransform([n,i],this._shapes.mainGroup,!0);this._updateInterval(t,r[1]),this._hideIndicator(),this._updateView()}e===!this.visualMapModel.get("realtime")&&this.api.dispatchAction({type:"selectDataRange",from:this.uid,visualMapId:this.visualMapModel.id,selected:this._dataInterval.slice()}),e?!this._hovering&&this._clearHoverLinkToSeries():xF(this.visualMapModel)&&this._doHoverLinkToSeries(this._handleEnds[t],!1)}},e.prototype._resetInterval=function(){var t=this.visualMapModel,e=this._dataInterval=t.getSelected(),n=t.getExtent(),i=[0,t.itemSize[1]];this._handleEnds=[dF(e[0],n,i,!0),dF(e[1],n,i,!0)]},e.prototype._updateInterval=function(t,e){e=e||0;var n=this.visualMapModel,i=this._handleEnds,r=[0,n.itemSize[1]];sk(e,i,r,t,0);var o=n.getExtent();this._dataInterval=[dF(i[0],r,o,!0),dF(i[1],r,o,!0)]},e.prototype._updateView=function(t){var e=this.visualMapModel,n=e.getExtent(),i=this._shapes,r=[0,e.itemSize[1]],o=t?r:this._handleEnds,a=this._createBarVisual(this._dataInterval,n,o,"inRange"),s=this._createBarVisual(n,n,r,"outOfRange");i.inRange.setStyle({fill:a.barColor}).setShape("points",a.barPoints),i.outOfRange.setStyle({fill:s.barColor}).setShape("points",s.barPoints),this._updateHandle(o,a)},e.prototype._createBarVisual=function(t,e,n,i){var r={forceState:i,convertOpacityToAlpha:!0},o=this._makeColorGradient(t,r),a=[this.getControllerVisual(t[0],"symbolSize",r),this.getControllerVisual(t[1],"symbolSize",r)],s=this._createBarPoints(n,a);return{barColor:new Uu(0,0,0,1,o),barPoints:s,handlesColor:[o[0].color,o[o.length-1].color]}},e.prototype._makeColorGradient=function(t,e){var n=[],i=(t[1]-t[0])/100;n.push({color:this.getControllerVisual(t[0],"color",e),offset:0});for(var r=1;r<100;r++){var o=t[0]+i*r;if(o>t[1])break;n.push({color:this.getControllerVisual(o,"color",e),offset:r/100})}return n.push({color:this.getControllerVisual(t[1],"color",e),offset:1}),n},e.prototype._createBarPoints=function(t,e){var n=this.visualMapModel.itemSize;return[[n[0]-e[0],t[0]],[n[0],t[0]],[n[0],t[1]],[n[0]-e[1],t[1]]]},e.prototype._createBarGroup=function(t){var e=this._orient,n=this.visualMapModel.get("inverse");return new Cr("horizontal"!==e||n?"horizontal"===e&&n?{scaleX:"bottom"===t?-1:1,rotation:-Math.PI/2}:"vertical"!==e||n?{scaleX:"left"===t?1:-1}:{scaleX:"left"===t?1:-1,scaleY:-1}:{scaleX:"bottom"===t?1:-1,rotation:Math.PI/2})},e.prototype._updateHandle=function(t,e){if(this._useHandle){var n=this._shapes,i=this.visualMapModel,r=n.handleThumbs,o=n.handleLabels,a=i.itemSize,s=i.getExtent();fF([0,1],(function(l){var u=r[l];u.setStyle("fill",e.handlesColor[l]),u.y=t[l];var h=dF(t[l],[0,a[1]],s,!0),c=this.getControllerVisual(h,"symbolSize");u.scaleX=u.scaleY=c/a[0],u.x=a[0]-c/2;var p=Ih(n.handleLabelPoints[l],Mh(u,this.group));o[l].setStyle({x:p[0],y:p[1],text:i.formatValueText(this._dataInterval[l]),verticalAlign:"middle",align:"vertical"===this._orient?this._applyTransform("left",n.mainGroup):"center"})}),this)}},e.prototype._showIndicator=function(t,e,n,i){var r=this.visualMapModel,o=r.getExtent(),a=r.itemSize,s=[0,a[1]],l=this._shapes,u=l.indicator;if(u){u.attr("invisible",!1);var h=this.getControllerVisual(t,"color",{convertOpacityToAlpha:!0}),c=this.getControllerVisual(t,"symbolSize"),p=dF(t,o,s,!0),d=a[0]-c/2,f={x:u.x,y:u.y};u.y=p,u.x=d;var g=Ih(l.indicatorLabelPoint,Mh(u,this.group)),y=l.indicatorLabel;y.attr("invisible",!1);var v=this._applyTransform("left",l.mainGroup),m="horizontal"===this._orient;y.setStyle({text:(n||"")+r.formatValueText(e),verticalAlign:m?v:"middle",align:m?"center":v});var x={x:d,y:p,style:{fill:h}},_={style:{x:g[0],y:g[1]}};if(r.ecModel.isAnimationEnabled()&&!this._firstShowIndicator){var b={duration:100,easing:"cubicInOut",additive:!0};u.x=f.x,u.y=f.y,u.animateTo(x,b),y.animateTo(_,b)}else u.attr(x),y.attr(_);this._firstShowIndicator=!1;var w=this._shapes.handleLabels;if(w)for(var S=0;S<w.length;S++)this._api.enterBlur(w[S])}},e.prototype._enableHoverLinkToSeries=function(){var t=this;this._shapes.mainGroup.on("mousemove",(function(e){if(t._hovering=!0,!t._dragging){var n=t.visualMapModel.itemSize,i=t._applyTransform([e.offsetX,e.offsetY],t._shapes.mainGroup,!0,!0);i[1]=gF(yF(0,i[1]),n[1]),t._doHoverLinkToSeries(i[1],0<=i[0]&&i[0]<=n[0])}})).on("mouseout",(function(){t._hovering=!1,!t._dragging&&t._clearHoverLinkToSeries()}))},e.prototype._enableHoverLinkFromSeries=function(){var t=this.api.getZr();this.visualMapModel.option.hoverLink?(t.on("mouseover",this._hoverLinkFromSeriesMouseOver,this),t.on("mouseout",this._hideIndicator,this)):this._clearHoverLinkFromSeries()},e.prototype._doHoverLinkToSeries=function(t,e){var n=this.visualMapModel,i=n.itemSize;if(n.option.hoverLink){var r=[0,i[1]],o=n.getExtent();t=gF(yF(r[0],t),r[1]);var a=function(t,e,n){var i=6,r=t.get("hoverLinkDataSize");r&&(i=dF(r,e,n,!0)/2);return i}(n,o,r),s=[t-a,t+a],l=dF(t,r,o,!0),u=[dF(s[0],r,o,!0),dF(s[1],r,o,!0)];s[0]<r[0]&&(u[0]=-1/0),s[1]>r[1]&&(u[1]=1/0),e&&(u[0]===-1/0?this._showIndicator(l,u[1],"< ",a):u[1]===1/0?this._showIndicator(l,u[0],"> ",a):this._showIndicator(l,l,"≈ ",a));var h=this._hoverLinkDataIndices,c=[];(e||xF(n))&&(c=this._hoverLinkDataIndices=n.findTargetDataIndices(u));var p=function(t,e){var n={},i={};return r(t||[],n),r(e||[],i,n),[o(n),o(i)];function r(t,e,n){for(var i=0,r=t.length;i<r;i++){var o=xo(t[i].seriesId,null);if(null==o)return;for(var a=ho(t[i].dataIndex),s=n&&n[o],l=0,u=a.length;l<u;l++){var h=a[l];s&&s[h]?s[h]=null:(e[o]||(e[o]={}))[h]=1}}}function o(t,e){var n=[];for(var i in t)if(t.hasOwnProperty(i)&&null!=t[i])if(e)n.push(+i);else{var r=o(t[i],!0);r.length&&n.push({seriesId:i,dataIndex:r})}return n}}(h,c);this._dispatchHighDown("downplay",pF(p[0],n)),this._dispatchHighDown("highlight",pF(p[1],n))}},e.prototype._hoverLinkFromSeriesMouseOver=function(t){var e=t.target,n=this.visualMapModel;if(e&&null!=Ws(e).dataIndex){var i=Ws(e),r=this.ecModel.getSeriesByIndex(i.seriesIndex);if(n.isTargetSeries(r)){var o=r.getData(i.dataType),a=o.getStore().get(n.getDataDimensionIndex(o),i.dataIndex);isNaN(a)||this._showIndicator(a,a)}}},e.prototype._hideIndicator=function(){var t=this._shapes;t.indicator&&t.indicator.attr("invisible",!0),t.indicatorLabel&&t.indicatorLabel.attr("invisible",!0);var e=this._shapes.handleLabels;if(e)for(var n=0;n<e.length;n++)this._api.leaveBlur(e[n])},e.prototype._clearHoverLinkToSeries=function(){this._hideIndicator();var t=this._hoverLinkDataIndices;this._dispatchHighDown("downplay",pF(t,this.visualMapModel)),t.length=0},e.prototype._clearHoverLinkFromSeries=function(){this._hideIndicator();var t=this.api.getZr();t.off("mouseover",this._hoverLinkFromSeriesMouseOver),t.off("mouseout",this._hideIndicator)},e.prototype._applyTransform=function(t,e,n,i){var r=Mh(e,i?null:this.group);return Y(t)?Ih(t,r,n):Th(t,r,n)},e.prototype._dispatchHighDown=function(t,e){e&&e.length&&this.api.dispatchAction({type:t,batch:e})},e.prototype.dispose=function(){this._clearHoverLinkFromSeries(),this._clearHoverLinkToSeries()},e.prototype.remove=function(){this._clearHoverLinkFromSeries(),this._clearHoverLinkToSeries()},e.type="visualMap.continuous",e}(uF);function mF(t,e,n,i){return new Lu({shape:{points:t},draggable:!!n,cursor:e,drift:n,onmousemove:function(t){se(t.event)},ondragend:i})}function xF(t){var e=t.get("hoverLinkOnHandle");return!!(null==e?t.get("realtime"):e)}function _F(t){return"vertical"===t?"ns-resize":"ew-resize"}var bF={type:"selectDataRange",event:"dataRangeSelected",update:"update"},wF=function(t,e){e.eachComponent({mainType:"visualMap",query:t},(function(e){e.setSelected(t.selected)}))},SF=[{createOnAllSeries:!0,reset:function(t,e){var n=[];return e.eachComponent("visualMap",(function(e){var i,r,o,a,s,l=t.pipelineContext;!e.isTargetSeries(t)||l&&l.large||n.push((i=e.stateList,r=e.targetVisuals,o=W(e.getValueState,e),a=e.getDataDimensionIndex(t.getData()),s={},E(i,(function(t){var e=eD.prepareVisualTypes(r[t]);s[t]=e})),{progress:function(t,e){var n,i;function l(t){return dy(e,i,t)}function u(t,n){gy(e,i,t,n)}null!=a&&(n=e.getDimensionIndex(a));for(var h=e.getStore();null!=(i=t.next());){var c=e.getRawDataItem(i);if(!c||!1!==c.visualMap)for(var p=null!=a?h.get(n,i):i,d=o(p),f=r[d],g=s[d],y=0,v=g.length;y<v;y++){var m=g[y];f[m]&&f[m].applyVisual(p,l,u)}}}}))})),n}},{createOnAllSeries:!0,reset:function(t,e){var n=t.getData(),i=[];e.eachComponent("visualMap",(function(e){if(e.isTargetSeries(t)){var r=e.getVisualMeta(W(MF,null,t,e))||{stops:[],outerColors:[]},o=e.getDataDimensionIndex(n);o>=0&&(r.dimension=o,i.push(r))}})),t.getData().setVisual("visualMeta",i)}}];function MF(t,e,n,i){for(var r=e.targetVisuals[i],o=eD.prepareVisualTypes(r),a={color:fy(t.getData(),"color")},s=0,l=o.length;s<l;s++){var u=o[s],h=r["opacity"===u?"__alphaForOpacity":u];h&&h.applyVisual(n,c,p)}return a.color;function c(t){return a[t]}function p(t,e){a[t]=e}}var IF=E;function TF(t){var e=t&&t.visualMap;Y(e)||(e=e?[e]:[]),IF(e,(function(t){if(t){CF(t,"splitList")&&!CF(t,"pieces")&&(t.pieces=t.splitList,delete t.splitList);var e=t.pieces;e&&Y(e)&&IF(e,(function(t){q(t)&&(CF(t,"start")&&!CF(t,"min")&&(t.min=t.start),CF(t,"end")&&!CF(t,"max")&&(t.max=t.end))}))}}))}function CF(t,e){return t&&t.hasOwnProperty&&t.hasOwnProperty(e)}var DF=!1;function AF(t){DF||(DF=!0,t.registerSubTypeDefaulter("visualMap",(function(t){return t.categories||(t.pieces?t.pieces.length>0:t.splitNumber>0)&&!t.calculable?"piecewise":"continuous"})),t.registerAction(bF,wF),E(SF,(function(e){t.registerVisual(t.PRIORITY.VISUAL.COMPONENT,e)})),t.registerPreprocessor(TF))}function kF(t){t.registerComponentModel(sF),t.registerComponentView(vF),AF(t)}var LF=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n._pieceList=[],n}return n(e,t),e.prototype.optionUpdated=function(e,n){t.prototype.optionUpdated.apply(this,arguments),this.resetExtent();var i=this._mode=this._determineMode();this._pieceList=[],PF[this._mode].call(this,this._pieceList),this._resetSelected(e,n);var r=this.option.categories;this.resetVisual((function(t,e){"categories"===i?(t.mappingMethod="category",t.categories=T(r)):(t.dataExtent=this.getExtent(),t.mappingMethod="piecewise",t.pieceList=z(this._pieceList,(function(t){return t=T(t),"inRange"!==e&&(t.visual=null),t})))}))},e.prototype.completeVisualOption=function(){var e=this.option,n={},i=eD.listVisualTypes(),r=this.isCategory();function o(t,e,n){return t&&t[e]&&t[e].hasOwnProperty(n)}E(e.pieces,(function(t){E(i,(function(e){t.hasOwnProperty(e)&&(n[e]=1)}))})),E(n,(function(t,n){var i=!1;E(this.stateList,(function(t){i=i||o(e,t,n)||o(e.target,t,n)}),this),!i&&E(this.stateList,(function(t){(e[t]||(e[t]={}))[n]=$B(n,"inRange"===t?"active":"inactive",r)}))}),this),t.prototype.completeVisualOption.apply(this,arguments)},e.prototype._resetSelected=function(t,e){var n=this.option,i=this._pieceList,r=(e?n:t).selected||{};if(n.selected=r,E(i,(function(t,e){var n=this.getSelectedMapKey(t);r.hasOwnProperty(n)||(r[n]=!0)}),this),"single"===n.selectedMode){var o=!1;E(i,(function(t,e){var n=this.getSelectedMapKey(t);r[n]&&(o?r[n]=!1:o=!0)}),this)}},e.prototype.getItemSymbol=function(){return this.get("itemSymbol")},e.prototype.getSelectedMapKey=function(t){return"categories"===this._mode?t.value+"":t.index+""},e.prototype.getPieceList=function(){return this._pieceList},e.prototype._determineMode=function(){var t=this.option;return t.pieces&&t.pieces.length>0?"pieces":this.option.categories?"categories":"splitNumber"},e.prototype.setSelected=function(t){this.option.selected=T(t)},e.prototype.getValueState=function(t){var e=eD.findPieceIndex(t,this._pieceList);return null!=e&&this.option.selected[this.getSelectedMapKey(this._pieceList[e])]?"inRange":"outOfRange"},e.prototype.findTargetDataIndices=function(t){var e=[],n=this._pieceList;return this.eachTargetSeries((function(i){var r=[],o=i.getData();o.each(this.getDataDimensionIndex(o),(function(e,i){eD.findPieceIndex(e,n)===t&&r.push(i)}),this),e.push({seriesId:i.id,dataIndex:r})}),this),e},e.prototype.getRepresentValue=function(t){var e;if(this.isCategory())e=t.value;else if(null!=t.value)e=t.value;else{var n=t.interval||[];e=n[0]===-1/0&&n[1]===1/0?0:(n[0]+n[1])/2}return e},e.prototype.getVisualMeta=function(t){if(!this.isCategory()){var e=[],n=["",""],i=this,r=this._pieceList.slice();if(r.length){var o=r[0].interval[0];o!==-1/0&&r.unshift({interval:[-1/0,o]}),(o=r[r.length-1].interval[1])!==1/0&&r.push({interval:[o,1/0]})}else r.push({interval:[-1/0,1/0]});var a=-1/0;return E(r,(function(t){var e=t.interval;e&&(e[0]>a&&s([a,e[0]],"outOfRange"),s(e.slice()),a=e[1])}),this),{stops:e,outerColors:n}}function s(r,o){var a=i.getRepresentValue({interval:r});o||(o=i.getValueState(a));var s=t(a,o);r[0]===-1/0?n[0]=s:r[1]===1/0?n[1]=s:e.push({value:r[0],color:s},{value:r[1],color:s})}},e.type="visualMap.piecewise",e.defaultOption=gc(oF.defaultOption,{selected:null,minOpen:!1,maxOpen:!1,align:"auto",itemWidth:20,itemHeight:14,itemSymbol:"roundRect",pieces:null,categories:null,splitNumber:5,selectedMode:"multiple",itemGap:10,hoverLink:!0}),e}(oF),PF={splitNumber:function(t){var e=this.option,n=Math.min(e.precision,20),i=this.getExtent(),r=e.splitNumber;r=Math.max(parseInt(r,10),1),e.splitNumber=r;for(var o=(i[1]-i[0])/r;+o.toFixed(n)!==o&&n<5;)n++;e.precision=n,o=+o.toFixed(n),e.minOpen&&t.push({interval:[-1/0,i[0]],close:[0,0]});for(var a=0,s=i[0];a<r;s+=o,a++){var l=a===r-1?i[1]:s+o;t.push({interval:[s,l],close:[1,1]})}e.maxOpen&&t.push({interval:[i[1],1/0],close:[0,0]}),Qr(t),E(t,(function(t,e){t.index=e,t.text=this.formatValueText(t.interval)}),this)},categories:function(t){var e=this.option;E(e.categories,(function(e){t.push({text:this.formatValueText(e,!0),value:e})}),this),OF(e,t)},pieces:function(t){var e=this.option;E(e.pieces,(function(e,n){q(e)||(e={value:e});var i={text:"",index:n};if(null!=e.label&&(i.text=e.label),e.hasOwnProperty("value")){var r=i.value=e.value;i.interval=[r,r],i.close=[1,1]}else{for(var o=i.interval=[],a=i.close=[0,0],s=[1,0,1],l=[-1/0,1/0],u=[],h=0;h<2;h++){for(var c=[["gte","gt","min"],["lte","lt","max"]][h],p=0;p<3&&null==o[h];p++)o[h]=e[c[p]],a[h]=s[p],u[h]=2===p;null==o[h]&&(o[h]=l[h])}u[0]&&o[1]===1/0&&(a[0]=0),u[1]&&o[0]===-1/0&&(a[1]=0),o[0]===o[1]&&a[0]&&a[1]&&(i.value=o[0])}i.visual=eD.retrieveVisuals(e),t.push(i)}),this),OF(e,t),Qr(t),E(t,(function(t){var e=t.close,n=[["<","≤"][e[1]],[">","≥"][e[0]]];t.text=t.text||this.formatValueText(null!=t.value?t.value:t.interval,!1,n)}),this)}};function OF(t,e){var n=t.inverse;("vertical"===t.orient?!n:n)&&e.reverse()}var RF=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.doRender=function(){var t=this.group;t.removeAll();var e=this.visualMapModel,n=e.get("textGap"),i=e.textStyleModel,r=i.getFont(),o=i.getTextColor(),a=this._getItemAlign(),s=e.itemSize,l=this._getViewData(),u=l.endsText,h=it(e.get("showLabel",!0),!u);u&&this._renderEndsText(t,u[0],s,h,a),E(l.viewPieceList,(function(i){var l=i.piece,u=new Cr;u.onclick=W(this._onItemClick,this,l),this._enableHoverLink(u,i.indexInModelPieceList);var c=e.getRepresentValue(l);if(this._createItemSymbol(u,c,[0,0,s[0],s[1]]),h){var p=this.visualMapModel.getValueState(c);u.add(new As({style:{x:"right"===a?-n:s[0]+n,y:s[1]/2,text:l.text,verticalAlign:"middle",align:a,font:r,fill:o,opacity:"outOfRange"===p?.5:1}}))}t.add(u)}),this),u&&this._renderEndsText(t,u[1],s,h,a),vp(e.get("orient"),t,e.get("itemGap")),this.renderBackground(t),this.positionGroup(t)},e.prototype._enableHoverLink=function(t,e){var n=this;t.on("mouseover",(function(){return i("highlight")})).on("mouseout",(function(){return i("downplay")}));var i=function(t){var i=n.visualMapModel;i.option.hoverLink&&n.api.dispatchAction({type:t,batch:pF(i.findTargetDataIndices(e),i)})}},e.prototype._getItemAlign=function(){var t=this.visualMapModel,e=t.option;if("vertical"===e.orient)return cF(t,this.api,t.itemSize);var n=e.align;return n&&"auto"!==n||(n="left"),n},e.prototype._renderEndsText=function(t,e,n,i,r){if(e){var o=new Cr,a=this.visualMapModel.textStyleModel;o.add(new As({style:{x:i?"right"===r?n[0]:0:n[0]/2,y:n[1]/2,verticalAlign:"middle",align:i?r:"center",text:e,font:a.getFont(),fill:a.getTextColor()}})),t.add(o)}},e.prototype._getViewData=function(){var t=this.visualMapModel,e=z(t.getPieceList(),(function(t,e){return{piece:t,indexInModelPieceList:e}})),n=t.get("text"),i=t.get("orient"),r=t.get("inverse");return("horizontal"===i?r:!r)?e.reverse():n&&(n=n.slice().reverse()),{viewPieceList:e,endsText:n}},e.prototype._createItemSymbol=function(t,e,n){t.add(ky(this.getControllerVisual(e,"symbol"),n[0],n[1],n[2],n[3],this.getControllerVisual(e,"color")))},e.prototype._onItemClick=function(t){var e=this.visualMapModel,n=e.option,i=T(n.selected),r=e.getSelectedMapKey(t);"single"===n.selectedMode?(i[r]=!0,E(i,(function(t,e){i[e]=e===r}))):i[r]=!i[r],this.api.dispatchAction({type:"selectDataRange",from:this.uid,visualMapId:this.visualMapModel.id,selected:i})},e.type="visualMap.piecewise",e}(uF);function NF(t){t.registerComponentModel(LF),t.registerComponentView(RF),AF(t)}var EF={label:{enabled:!0},decal:{show:!1}},zF=So(),VF={};function BF(t,e){var n=t.getModel("aria");if(n.get("enabled")){var i=T(EF);C(i.label,t.getLocaleModel().get("aria"),!1),C(n.option,i,!1),function(){if(n.getModel("decal").get("show")){var e=ft();t.eachSeries((function(t){if(!t.isColorBySeries()){var n=e.get(t.type);n||(n={},e.set(t.type,n)),zF(t).scope=n}})),t.eachRawSeries((function(e){if(!t.isSeriesFiltered(e))if(U(e.enableAriaDecal))e.enableAriaDecal();else{var n=e.getData();if(e.isColorBySeries()){var i=td(e.ecModel,e.name,VF,t.getSeriesCount()),r=n.getVisual("decal");n.setVisual("decal",u(r,i))}else{var o=e.getRawData(),a={},s=zF(e).scope;n.each((function(t){var e=n.getRawIndex(t);a[e]=t}));var l=o.count();o.each((function(t){var i=a[t],r=o.getName(t)||t+"",h=td(e.ecModel,r,s,l),c=n.getItemVisual(i,"decal");n.setItemVisual(i,"decal",u(c,h))}))}}function u(t,e){var n=t?A(A({},e),t):e;return n.dirty=!0,n}}))}}(),function(){var i=t.getLocaleModel().get("aria"),o=n.getModel("label");if(o.option=k(o.option,i),!o.get("enabled"))return;var a=e.getZr().dom;if(o.get("description"))return void a.setAttribute("aria-label",o.get("description"));var s,l=t.getSeriesCount(),u=o.get(["data","maxCount"])||10,h=o.get(["series","maxCount"])||10,c=Math.min(l,h);if(l<1)return;var p=function(){var e=t.get("title");e&&e.length&&(e=e[0]);return e&&e.text}();if(p){var d=o.get(["general","withTitle"]);s=r(d,{title:p})}else s=o.get(["general","withoutTitle"]);var f=[],g=l>1?o.get(["series","multiple","prefix"]):o.get(["series","single","prefix"]);s+=r(g,{seriesCount:l}),t.eachSeries((function(e,n){if(n<c){var i=void 0,a=e.get("name")?"withName":"withoutName";i=r(i=l>1?o.get(["series","multiple",a]):o.get(["series","single",a]),{seriesId:e.seriesIndex,seriesName:e.get("name"),seriesType:(x=e.subType,t.getLocaleModel().get(["series","typeNames"])[x]||"自定义图")});var s=e.getData();if(s.count()>u)i+=r(o.get(["data","partialData"]),{displayCnt:u});else i+=o.get(["data","allData"]);for(var h=o.get(["data","separator","middle"]),p=o.get(["data","separator","end"]),d=[],g=0;g<s.count();g++)if(g<u){var y=s.getName(g),v=s.getValues(g),m=o.get(["data",y?"withName":"withoutName"]);d.push(r(m,{name:y,value:v.join(h)}))}i+=d.join(h)+p,f.push(i)}var x}));var y=o.getModel(["series","multiple","separator"]),v=y.get("middle"),m=y.get("end");s+=f.join(v)+m,a.setAttribute("aria-label",s)}()}function r(t,e){if(!X(t))return t;var n=t;return E(e,(function(t,e){n=n.replace(new RegExp("\\{\\s*"+e+"\\s*\\}","g"),t)})),n}}function FF(t){if(t&&t.aria){var e=t.aria;null!=e.show&&(e.enabled=e.show),e.label=e.label||{},E(["description","general","series","data"],(function(t){null!=e[t]&&(e.label[t]=e[t])}))}}var GF={value:"eq","<":"lt","<=":"lte",">":"gt",">=":"gte","=":"eq","!=":"ne","<>":"ne"},WF=function(){function t(t){if(null==(this._condVal=X(t)?new RegExp(t):et(t)?t:null)){var e="";0,ao(e)}}return t.prototype.evaluate=function(t){var e=typeof t;return X(e)?this._condVal.test(t):!!j(e)&&this._condVal.test(t+"")},t}(),HF=function(){function t(){}return t.prototype.evaluate=function(){return this.value},t}(),YF=function(){function t(){}return t.prototype.evaluate=function(){for(var t=this.children,e=0;e<t.length;e++)if(!t[e].evaluate())return!1;return!0},t}(),UF=function(){function t(){}return t.prototype.evaluate=function(){for(var t=this.children,e=0;e<t.length;e++)if(t[e].evaluate())return!0;return!1},t}(),XF=function(){function t(){}return t.prototype.evaluate=function(){return!this.child.evaluate()},t}(),ZF=function(){function t(){}return t.prototype.evaluate=function(){for(var t=!!this.valueParser,e=(0,this.getValue)(this.valueGetterParam),n=t?this.valueParser(e):null,i=0;i<this.subCondList.length;i++)if(!this.subCondList[i].evaluate(t?n:e))return!1;return!0},t}();function jF(t,e){if(!0===t||!1===t){var n=new HF;return n.value=t,n}var i="";return KF(t)||ao(i),t.and?qF("and",t,e):t.or?qF("or",t,e):t.not?function(t,e){var n=t.not,i="";0;KF(n)||ao(i);var r=new XF;r.child=jF(n,e),r.child||ao(i);return r}(t,e):function(t,e){for(var n="",i=e.prepareGetValue(t),r=[],o=G(t),a=t.parser,s=a?ff(a):null,l=0;l<o.length;l++){var u=o[l];if("parser"!==u&&!e.valueGetterAttrMap.get(u)){var h=mt(GF,u)?GF[u]:u,c=t[u],p=s?s(c):c,d=xf(h,p)||"reg"===h&&new WF(p);d||ao(n),r.push(d)}}r.length||ao(n);var f=new ZF;return f.valueGetterParam=i,f.valueParser=s,f.getValue=e.getValue,f.subCondList=r,f}(t,e)}function qF(t,e,n){var i=e[t],r="";Y(i)||ao(r),i.length||ao(r);var o="and"===t?new YF:new UF;return o.children=z(i,(function(t){return jF(t,n)})),o.children.length||ao(r),o}function KF(t){return q(t)&&!N(t)}var $F=function(){function t(t,e){this._cond=jF(t,e)}return t.prototype.evaluate=function(){return this._cond.evaluate()},t}();var JF={type:"echarts:filter",transform:function(t){for(var e,n,i,r=t.upstream,o=(n=t.config,i={valueGetterAttrMap:ft({dimension:!0}),prepareGetValue:function(t){var e="",n=t.dimension;mt(t,"dimension")||ao(e);var i=r.getDimensionInfo(n);return i||ao(e),{dimIdx:i.index}},getValue:function(t){return r.retrieveValueFromItem(e,t.dimIdx)}},new $F(n,i)),a=[],s=0,l=r.count();s<l;s++)e=r.getRawDataItem(s),o.evaluate()&&a.push(e);return{data:a}}};var QF={type:"echarts:sort",transform:function(t){var e=t.upstream,n=t.config,i="",r=ho(n);r.length||ao(i);var o=[];E(r,(function(t){var n=t.dimension,r=t.order,a=t.parser,s=t.incomparable;if(null==n&&ao(i),"asc"!==r&&"desc"!==r&&ao(i),s&&"min"!==s&&"max"!==s){var l="";0,ao(l)}if("asc"!==r&&"desc"!==r){var u="";0,ao(u)}var h=e.getDimensionInfo(n);h||ao(i);var c=a?ff(a):null;a&&!c&&ao(i),o.push({dimIdx:h.index,parser:c,comparator:new vf(r,s)})}));var a=e.sourceFormat;a!==Lp&&a!==Pp&&ao(i);for(var s=[],l=0,u=e.count();l<u;l++)s.push(e.getRawDataItem(l));return s.sort((function(t,n){for(var i=0;i<o.length;i++){var r=o[i],a=e.retrieveValueFromItem(t,r.dimIdx),s=e.retrieveValueFromItem(n,r.dimIdx);r.parser&&(a=r.parser(a),s=r.parser(s));var l=r.comparator.evaluate(a,s);if(0!==l)return l}return 0})),{data:s}}};var tG=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.type="dataset",e}return n(e,t),e.prototype.init=function(e,n,i){t.prototype.init.call(this,e,n,i),this._sourceManager=new Vf(this),Bf(this)},e.prototype.mergeOption=function(e,n){t.prototype.mergeOption.call(this,e,n),Bf(this)},e.prototype.optionUpdated=function(){this._sourceManager.dirty()},e.prototype.getSourceManager=function(){return this._sourceManager},e.type="dataset",e.defaultOption={seriesLayoutBy:Ep},e}(Ip),eG=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.type="dataset",e}return n(e,t),e.type="dataset",e}(fg);var nG=ja.CMD;function iG(t,e){return Math.abs(t-e)<1e-5}function rG(t){var e,n,i,r,o,a=t.data,s=t.len(),l=[],u=0,h=0,c=0,p=0;function d(t,n){e&&e.length>2&&l.push(e),e=[t,n]}function f(t,n,i,r){iG(t,i)&&iG(n,r)||e.push(t,n,i,r,i,r)}function g(t,n,i,r,o,a){var s=Math.abs(n-t),l=4*Math.tan(s/4)/3,u=n<t?-1:1,h=Math.cos(t),c=Math.sin(t),p=Math.cos(n),d=Math.sin(n),f=h*o+i,g=c*a+r,y=p*o+i,v=d*a+r,m=o*l*u,x=a*l*u;e.push(f-m*c,g+x*h,y+m*d,v-x*p,y,v)}for(var y=0;y<s;){var v=a[y++],m=1===y;switch(m&&(c=u=a[y],p=h=a[y+1],v!==nG.L&&v!==nG.C&&v!==nG.Q||(e=[c,p])),v){case nG.M:u=c=a[y++],h=p=a[y++],d(c,p);break;case nG.L:f(u,h,n=a[y++],i=a[y++]),u=n,h=i;break;case nG.C:e.push(a[y++],a[y++],a[y++],a[y++],u=a[y++],h=a[y++]);break;case nG.Q:n=a[y++],i=a[y++],r=a[y++],o=a[y++],e.push(u+2/3*(n-u),h+2/3*(i-h),r+2/3*(n-r),o+2/3*(i-o),r,o),u=r,h=o;break;case nG.A:var x=a[y++],_=a[y++],b=a[y++],w=a[y++],S=a[y++],M=a[y++]+S;y+=1;var I=!a[y++];n=Math.cos(S)*b+x,i=Math.sin(S)*w+_,m?d(c=n,p=i):f(u,h,n,i),u=Math.cos(M)*b+x,h=Math.sin(M)*w+_;for(var T=(I?-1:1)*Math.PI/2,C=S;I?C>M:C<M;C+=T){g(C,I?Math.max(C+T,M):Math.min(C+T,M),x,_,b,w)}break;case nG.R:c=u=a[y++],p=h=a[y++],n=c+a[y++],i=p+a[y++],d(n,p),f(n,p,n,i),f(n,i,c,i),f(c,i,c,p),f(c,p,n,p);break;case nG.Z:e&&f(u,h,c,p),u=c,h=p}}return e&&e.length>2&&l.push(e),l}function oG(t,e,n,i,r,o,a,s,l,u){if(iG(t,n)&&iG(e,i)&&iG(r,a)&&iG(o,s))l.push(a,s);else{var h=2/u,c=h*h,p=a-t,d=s-e,f=Math.sqrt(p*p+d*d);p/=f,d/=f;var g=n-t,y=i-e,v=r-a,m=o-s,x=g*g+y*y,_=v*v+m*m;if(x<c&&_<c)l.push(a,s);else{var b=p*g+d*y,w=-p*v-d*m;if(x-b*b<c&&b>=0&&_-w*w<c&&w>=0)l.push(a,s);else{var S=[],M=[];Ze(t,n,r,a,.5,S),Ze(e,i,o,s,.5,M),oG(S[0],M[0],S[1],M[1],S[2],M[2],S[3],M[3],l,u),oG(S[4],M[4],S[5],M[5],S[6],M[6],S[7],M[7],l,u)}}}}function aG(t,e,n){var i=t[e],r=t[1-e],o=Math.abs(i/r),a=Math.ceil(Math.sqrt(o*n)),s=Math.floor(n/a);0===s&&(s=1,a=n);for(var l=[],u=0;u<a;u++)l.push(s);var h=n-a*s;if(h>0)for(u=0;u<h;u++)l[u%a]+=1;return l}function sG(t,e,n){for(var i=t.r0,r=t.r,o=t.startAngle,a=t.endAngle,s=Math.abs(a-o),l=s*r,u=r-i,h=l>Math.abs(u),c=aG([l,u],h?0:1,e),p=(h?s:u)/c.length,d=0;d<c.length;d++)for(var f=(h?u:s)/c[d],g=0;g<c[d];g++){var y={};h?(y.startAngle=o+p*d,y.endAngle=o+p*(d+1),y.r0=i+f*g,y.r=i+f*(g+1)):(y.startAngle=o+f*g,y.endAngle=o+f*(g+1),y.r0=i+p*d,y.r=i+p*(d+1)),y.clockwise=t.clockwise,y.cx=t.cx,y.cy=t.cy,n.push(y)}}function lG(t,e,n,i){return t*i-n*e}function uG(t,e,n,i,r,o,a,s){var l=n-t,u=i-e,h=a-r,c=s-o,p=lG(h,c,l,u);if(Math.abs(p)<1e-6)return null;var d=lG(t-r,e-o,h,c)/p;return d<0||d>1?null:new Ji(d*l+t,d*u+e)}function hG(t,e,n){var i=new Ji;Ji.sub(i,n,e),i.normalize();var r=new Ji;return Ji.sub(r,t,e),r.dot(i)}function cG(t,e){var n=t[t.length-1];n&&n[0]===e[0]&&n[1]===e[1]||t.push(e)}function pG(t){var e=t.points,n=[],i=[];Ma(e,n,i);var r=new sr(n[0],n[1],i[0]-n[0],i[1]-n[1]),o=r.width,a=r.height,s=r.x,l=r.y,u=new Ji,h=new Ji;return o>a?(u.x=h.x=s+o/2,u.y=l,h.y=l+a):(u.y=h.y=l+a/2,u.x=s,h.x=s+o),function(t,e,n){for(var i=t.length,r=[],o=0;o<i;o++){var a=t[o],s=t[(o+1)%i],l=uG(a[0],a[1],s[0],s[1],e.x,e.y,n.x,n.y);l&&r.push({projPt:hG(l,e,n),pt:l,idx:o})}if(r.length<2)return[{points:t},{points:t}];r.sort((function(t,e){return t.projPt-e.projPt}));var u=r[0],h=r[r.length-1];if(h.idx<u.idx){var c=u;u=h,h=c}var p=[u.pt.x,u.pt.y],d=[h.pt.x,h.pt.y],f=[p],g=[d];for(o=u.idx+1;o<=h.idx;o++)cG(f,t[o].slice());for(cG(f,d),cG(f,p),o=h.idx+1;o<=u.idx+i;o++)cG(g,t[o%i].slice());return cG(g,p),cG(g,d),[{points:f},{points:g}]}(e,u,h)}function dG(t,e,n,i){if(1===n)i.push(e);else{var r=Math.floor(n/2),o=t(e);dG(t,o[0],r,i),dG(t,o[1],n-r,i)}return i}function fG(t,e){e.setStyle(t.style),e.z=t.z,e.z2=t.z2,e.zlevel=t.zlevel}function gG(t,e){var n,i=[],r=t.shape;switch(t.type){case"rect":!function(t,e,n){for(var i=t.width,r=t.height,o=i>r,a=aG([i,r],o?0:1,e),s=o?"width":"height",l=o?"height":"width",u=o?"x":"y",h=o?"y":"x",c=t[s]/a.length,p=0;p<a.length;p++)for(var d=t[l]/a[p],f=0;f<a[p];f++){var g={};g[u]=p*c,g[h]=f*d,g[s]=c,g[l]=d,g.x+=t.x,g.y+=t.y,n.push(g)}}(r,e,i),n=Ts;break;case"sector":sG(r,e,i),n=Tu;break;case"circle":sG({r0:0,r:r.r,startAngle:0,endAngle:2*Math.PI,cx:r.cx,cy:r.cy},e,i),n=Tu;break;default:var o=t.getComputedTransform(),a=o?Math.sqrt(Math.max(o[0]*o[0]+o[1]*o[1],o[2]*o[2]+o[3]*o[3])):1,s=z(function(t,e){var n=rG(t),i=[];e=e||1;for(var r=0;r<n.length;r++){var o=n[r],a=[],s=o[0],l=o[1];a.push(s,l);for(var u=2;u<o.length;){var h=o[u++],c=o[u++],p=o[u++],d=o[u++],f=o[u++],g=o[u++];oG(s,l,h,c,p,d,f,g,a,e),s=f,l=g}i.push(a)}return i}(t.getUpdatedPathProxy(),a),(function(t){return function(t){for(var e=[],n=0;n<t.length;)e.push([t[n++],t[n++]]);return e}(t)})),l=s.length;if(0===l)dG(pG,{points:s[0]},e,i);else if(l===e)for(var u=0;u<l;u++)i.push({points:s[u]});else{var h=0,c=z(s,(function(t){var e=[],n=[];Ma(t,e,n);var i=(n[1]-e[1])*(n[0]-e[0]);return h+=i,{poly:t,area:i}}));c.sort((function(t,e){return e.area-t.area}));var p=e;for(u=0;u<l;u++){var d=c[u];if(p<=0)break;var f=u===l-1?p:Math.ceil(d.area/h*e);f<0||(dG(pG,{points:d.poly},f,i),p-=f)}}n=Lu}if(!n)return function(t,e){for(var n=[],i=0;i<e;i++)n.push(su(t));return n}(t,e);var g=[];for(u=0;u<i.length;u++){var y=new n;y.setShape(i[u]),fG(t,y),g.push(y)}return g}function yG(t,e){var n=t.length,i=e.length;if(n===i)return[t,e];for(var r=[],o=[],a=n<i?t:e,s=Math.min(n,i),l=Math.abs(i-n)/6,u=(s-2)/6,h=Math.ceil(l/u)+1,c=[a[0],a[1]],p=l,d=2;d<s;){var f=a[d-2],g=a[d-1],y=a[d++],v=a[d++],m=a[d++],x=a[d++],_=a[d++],b=a[d++];if(p<=0)c.push(y,v,m,x,_,b);else{for(var w=Math.min(p,h-1)+1,S=1;S<=w;S++){var M=S/w;Ze(f,y,m,_,M,r),Ze(g,v,x,b,M,o),f=r[3],g=o[3],c.push(r[1],o[1],r[2],o[2],f,g),y=r[5],v=o[5],m=r[6],x=o[6]}p-=w-1}}return a===t?[c,e]:[t,c]}function vG(t,e){for(var n=t.length,i=t[n-2],r=t[n-1],o=[],a=0;a<e.length;)o[a++]=i,o[a++]=r;return o}function mG(t){for(var e=0,n=0,i=0,r=t.length,o=0,a=r-2;o<r;a=o,o+=2){var s=t[a],l=t[a+1],u=t[o],h=t[o+1],c=s*h-u*l;e+=c,n+=(s+u)*c,i+=(l+h)*c}return 0===e?[t[0]||0,t[1]||0]:[n/e/3,i/e/3,e]}function xG(t,e,n,i){for(var r=(t.length-2)/6,o=1/0,a=0,s=t.length,l=s-2,u=0;u<r;u++){for(var h=6*u,c=0,p=0;p<s;p+=2){var d=0===p?h:(h+p-2)%l+2,f=t[d]-n[0],g=t[d+1]-n[1],y=e[p]-i[0]-f,v=e[p+1]-i[1]-g;c+=y*y+v*v}c<o&&(o=c,a=u)}return a}function _G(t){for(var e=[],n=t.length,i=0;i<n;i+=2)e[i]=t[n-i-2],e[i+1]=t[n-i-1];return e}function bG(t){return t.__isCombineMorphing}var wG="__mOriginal_";function SG(t,e,n){var i=wG+e,r=t[i]||t[e];t[i]||(t[i]=t[e]);var o=n.replace,a=n.after,s=n.before;t[e]=function(){var t,e=arguments;return s&&s.apply(this,e),t=o?o.apply(this,e):r.apply(this,e),a&&a.apply(this,e),t}}function MG(t,e){var n=wG+e;t[n]&&(t[e]=t[n],t[n]=null)}function IG(t,e){for(var n=0;n<t.length;n++)for(var i=t[n],r=0;r<i.length;){var o=i[r],a=i[r+1];i[r++]=e[0]*o+e[2]*a+e[4],i[r++]=e[1]*o+e[3]*a+e[5]}}function TG(t,e){var n=t.getUpdatedPathProxy(),i=e.getUpdatedPathProxy(),r=function(t,e){for(var n,i,r,o=[],a=[],s=0;s<Math.max(t.length,e.length);s++){var l=t[s],u=e[s],h=void 0,c=void 0;l?u?(i=h=(n=yG(l,u))[0],r=c=n[1]):(c=vG(r||l,l),h=l):(h=vG(i||u,u),c=u),o.push(h),a.push(c)}return[o,a]}(rG(n),rG(i)),o=r[0],a=r[1],s=t.getComputedTransform(),l=e.getComputedTransform();s&&IG(o,s),l&&IG(a,l),SG(e,"updateTransform",{replace:function(){this.transform=null}}),e.transform=null;var u=function(t,e,n,i){for(var r,o=[],a=0;a<t.length;a++){var s=t[a],l=e[a],u=mG(s),h=mG(l);null==r&&(r=u[2]<0!=h[2]<0);var c=[],p=[],d=0,f=1/0,g=[],y=s.length;r&&(s=_G(s));for(var v=6*xG(s,l,u,h),m=y-2,x=0;x<m;x+=2){var _=(v+x)%m+2;c[x+2]=s[_]-u[0],c[x+3]=s[_+1]-u[1]}if(c[0]=s[v]-u[0],c[1]=s[v+1]-u[1],n>0)for(var b=i/n,w=-i/2;w<=i/2;w+=b){var S=Math.sin(w),M=Math.cos(w),I=0;for(x=0;x<s.length;x+=2){var T=c[x],C=c[x+1],D=l[x]-h[0],A=l[x+1]-h[1],k=D*M-A*S,L=D*S+A*M;g[x]=k,g[x+1]=L;var P=k-T,O=L-C;I+=P*P+O*O}if(I<f){f=I,d=w;for(var R=0;R<g.length;R++)p[R]=g[R]}}else for(var N=0;N<y;N+=2)p[N]=l[N]-h[0],p[N+1]=l[N+1]-h[1];o.push({from:c,to:p,fromCp:u,toCp:h,rotation:-d})}return o}(o,a,10,Math.PI),h=[];SG(e,"buildPath",{replace:function(t){for(var n=e.__morphT,i=1-n,r=[],o=0;o<u.length;o++){var a=u[o],s=a.from,l=a.to,c=a.rotation*n,p=a.fromCp,d=a.toCp,f=Math.sin(c),g=Math.cos(c);Bt(r,p,d,n);for(var y=0;y<s.length;y+=2){var v=s[y],m=s[y+1],x=v*i+(S=l[y])*n,_=m*i+(M=l[y+1])*n;h[y]=x*g-_*f+r[0],h[y+1]=x*f+_*g+r[1]}var b=h[0],w=h[1];t.moveTo(b,w);for(y=2;y<s.length;){var S=h[y++],M=h[y++],I=h[y++],T=h[y++],C=h[y++],D=h[y++];b===S&&w===M&&I===C&&T===D?t.lineTo(C,D):t.bezierCurveTo(S,M,I,T,C,D),b=C,w=D}}}})}function CG(t,e,n){if(!t||!e)return e;var i=n.done,r=n.during;return TG(t,e),e.__morphT=0,e.animateTo({__morphT:1},k({during:function(t){e.dirtyShape(),r&&r(t)},done:function(){MG(e,"buildPath"),MG(e,"updateTransform"),e.__morphT=-1,e.createPathProxy(),e.dirtyShape(),i&&i()}},n)),e}function DG(t,e,n,i,r,o){t=r===n?0:Math.round(32767*(t-n)/(r-n)),e=o===i?0:Math.round(32767*(e-i)/(o-i));for(var a,s=0,l=32768;l>0;l/=2){var u=0,h=0;(t&l)>0&&(u=1),(e&l)>0&&(h=1),s+=l*l*(3*u^h),0===h&&(1===u&&(t=l-1-t,e=l-1-e),a=t,t=e,e=a)}return s}function AG(t){var e=1/0,n=1/0,i=-1/0,r=-1/0,o=z(t,(function(t){var o=t.getBoundingRect(),a=t.getComputedTransform(),s=o.x+o.width/2+(a?a[4]:0),l=o.y+o.height/2+(a?a[5]:0);return e=Math.min(s,e),n=Math.min(l,n),i=Math.max(s,i),r=Math.max(l,r),[s,l]}));return z(o,(function(o,a){return{cp:o,z:DG(o[0],o[1],e,n,i,r),path:t[a]}})).sort((function(t,e){return t.z-e.z})).map((function(t){return t.path}))}function kG(t){return gG(t.path,t.count)}function LG(t){return Y(t[0])}function PG(t,e){for(var n=[],i=t.length,r=0;r<i;r++)n.push({one:t[r],many:[]});for(r=0;r<e.length;r++){var o=e[r].length,a=void 0;for(a=0;a<o;a++)n[a%i].many.push(e[r][a])}var s=0;for(r=i-1;r>=0;r--)if(!n[r].many.length){var l=n[s].many;if(l.length<=1){if(!s)return n;s=0}o=l.length;var u=Math.ceil(o/2);n[r].many=l.slice(u,o),n[s].many=l.slice(0,u),s++}return n}var OG={clone:function(t){for(var e=[],n=1-Math.pow(1-t.path.style.opacity,1/t.count),i=0;i<t.count;i++){var r=su(t.path);r.setStyle("opacity",n),e.push(r)}return e},split:null};function RG(t,e,n,i,r,o){if(t.length&&e.length){var a=eh("update",i,r);if(a&&a.duration>0){var s,l,u=i.getModel("universalTransition").get("delay"),h=Object.assign({setToFinal:!0},a);LG(t)&&(s=t,l=e),LG(e)&&(s=e,l=t);for(var c=s?s===t:t.length>e.length,p=s?PG(l,s):PG(c?e:t,[c?t:e]),d=0,f=0;f<p.length;f++)d+=p[f].many.length;var g=0;for(f=0;f<p.length;f++)y(p[f],c,g,d),g+=p[f].many.length}}function y(t,e,i,r,a){var s=t.many,l=t.one;if(1!==s.length||a)for(var c=k({dividePath:OG[n],individualDelay:u&&function(t,e,n,o){return u(t+i,r)}},h),p=e?function(t,e,n){var i=[];!function t(e){for(var n=0;n<e.length;n++){var r=e[n];bG(r)?t(r.childrenRef()):r instanceof fs&&i.push(r)}}(t);var r=i.length;if(!r)return{fromIndividuals:[],toIndividuals:[],count:0};var o=(n.dividePath||kG)({path:e,count:r});if(o.length!==r)return console.error("Invalid morphing: unmatched splitted path"),{fromIndividuals:[],toIndividuals:[],count:0};i=AG(i),o=AG(o);for(var a=n.done,s=n.during,l=n.individualDelay,u=new qi,h=0;h<r;h++){var c=i[h],p=o[h];p.parent=e,p.copyTransform(u),l||TG(c,p)}function d(t){for(var e=0;e<o.length;e++)o[e].addSelfToZr(t)}function f(){e.__isCombineMorphing=!1,e.__morphT=-1,e.childrenRef=null,MG(e,"addSelfToZr"),MG(e,"removeSelfFromZr")}e.__isCombineMorphing=!0,e.childrenRef=function(){return o},SG(e,"addSelfToZr",{after:function(t){d(t)}}),SG(e,"removeSelfFromZr",{after:function(t){for(var e=0;e<o.length;e++)o[e].removeSelfFromZr(t)}});var g=o.length;if(l){var y=g,v=function(){0==--y&&(f(),a&&a())};for(h=0;h<g;h++){var m=l?k({delay:(n.delay||0)+l(h,g,i[h],o[h]),done:v},n):n;CG(i[h],o[h],m)}}else e.__morphT=0,e.animateTo({__morphT:1},k({during:function(t){for(var n=0;n<g;n++){var i=o[n];i.__morphT=e.__morphT,i.dirtyShape()}s&&s(t)},done:function(){f();for(var e=0;e<t.length;e++)MG(t[e],"updateTransform");a&&a()}},n));return e.__zr&&d(e.__zr),{fromIndividuals:i,toIndividuals:o,count:g}}(s,l,c):function(t,e,n){var i=e.length,r=[],o=n.dividePath||kG;if(bG(t)){!function t(e){for(var n=0;n<e.length;n++){var i=e[n];bG(i)?t(i.childrenRef()):i instanceof fs&&r.push(i)}}(t.childrenRef());var a=r.length;if(a<i)for(var s=0,l=a;l<i;l++)r.push(su(r[s++%a]));r.length=i}else{r=o({path:t,count:i});var u=t.getComputedTransform();for(l=0;l<r.length;l++)r[l].setLocalTransform(u);if(r.length!==i)return console.error("Invalid morphing: unmatched splitted path"),{fromIndividuals:[],toIndividuals:[],count:0}}r=AG(r),e=AG(e);var h=n.individualDelay;for(l=0;l<i;l++){var c=h?k({delay:(n.delay||0)+h(l,i,r[l],e[l])},n):n;CG(r[l],e[l],c)}return{fromIndividuals:r,toIndividuals:e,count:e.length}}(l,s,c),d=p.fromIndividuals,f=p.toIndividuals,g=d.length,v=0;v<g;v++){m=u?k({delay:u(v,g)},h):h;o(d[v],f[v],e?s[v]:t.one,e?t.one:s[v],m)}else{var m,x=e?s[0]:l,_=e?l:s[0];if(bG(x))y({many:[x],one:_},!0,i,r,!0);else CG(x,_,m=u?k({delay:u(i,r)},h):h),o(x,_,x,_,m)}}}function NG(t){if(!t)return[];if(Y(t)){for(var e=[],n=0;n<t.length;n++)e.push(NG(t[n]));return e}var i=[];return t.traverse((function(t){t instanceof fs&&!t.disableMorphing&&!t.invisible&&!t.ignore&&i.push(t)})),i}var EG=So();function zG(t){var e=[];return E(t,(function(t){var n=t.data;if(!(n.count()>1e4))for(var i=n.getIndices(),r=function(t){for(var e=t.dimensions,n=0;n<e.length;n++){var i=t.getDimensionInfo(e[n]);if(i&&0===i.otherDims.itemGroupId)return e[n]}}(n),o=0;o<i.length;o++)e.push({data:n,dim:t.dim||r,divide:t.divide,dataIndex:o})})),e}function VG(t,e,n){t.traverse((function(t){t instanceof fs&&rh(t,{style:{opacity:0}},e,{dataIndex:n,isFrom:!0})}))}function BG(t){if(t.parent){var e=t.getComputedTransform();t.setLocalTransform(e),t.parent.remove(t)}}function FG(t){t.stopAnimation(),t.isGroup&&t.traverse((function(t){t.stopAnimation()}))}function GG(t,e,n){var i=eh("update",n,e);i&&t.traverse((function(t){if(t instanceof da){var e=function(t){return th(t).oldStyle}(t);e&&t.animateFrom({style:e},i)}}))}function WG(t,e,n){var i=zG(t),r=zG(e);function o(t,e,n,i,r){(n||t)&&e.animateFrom({style:n&&n!==t?A(A({},n.style),t.style):t.style},r)}function a(t){for(var e=0;e<t.length;e++)if(t[e].dim)return t[e].dim}var s=a(i),l=a(r),u=!1;function h(t,e){return function(n){var i=n.data,r=n.dataIndex;if(e)return i.getId(r);var o=i.hostModel&&i.hostModel.get("dataGroupId"),a=t?s||l:l||s,u=a&&i.getDimensionInfo(a),h=u&&u.ordinalMeta;if(u){var c=i.get(u.name,r);return h&&h.categories[c]||c+""}var p=i.getRawDataItem(r);return p&&p.groupId?p.groupId+"":o||i.getId(r)}}var c=function(t,e){var n=t.length;if(n!==e.length)return!1;for(var i=0;i<n;i++){var r=t[i],o=e[i];if(r.data.getId(r.dataIndex)!==o.data.getId(o.dataIndex))return!1}return!0}(i,r),p={};if(!c)for(var d=0;d<r.length;d++){var f=r[d],g=f.data.getItemGraphicEl(f.dataIndex);g&&(p[g.id]=!0)}function y(t,e){var n=i[e],a=r[t],s=a.data.hostModel,l=n.data.getItemGraphicEl(n.dataIndex),h=a.data.getItemGraphicEl(a.dataIndex);l!==h?l&&p[l.id]||h&&(FG(h),l?(FG(l),BG(l),u=!0,RG(NG(l),NG(h),a.divide,s,t,o)):VG(h,s,t)):h&&GG(h,a.dataIndex,s)}new Sm(i,r,h(!0,c),h(!1,c),null,"multiple").update(y).updateManyToOne((function(t,e){var n=r[t],a=n.data,s=a.hostModel,l=a.getItemGraphicEl(n.dataIndex),h=B(z(e,(function(t){return i[t].data.getItemGraphicEl(i[t].dataIndex)})),(function(t){return t&&t!==l&&!p[t.id]}));l&&(FG(l),h.length?(E(h,(function(t){FG(t),BG(t)})),u=!0,RG(NG(h),NG(l),n.divide,s,t,o)):VG(l,s,n.dataIndex))})).updateOneToMany((function(t,e){var n=i[e],a=n.data.getItemGraphicEl(n.dataIndex);if(!a||!p[a.id]){var s=B(z(t,(function(t){return r[t].data.getItemGraphicEl(r[t].dataIndex)})),(function(t){return t&&t!==a})),l=r[t[0]].data.hostModel;s.length&&(E(s,(function(t){return FG(t)})),a?(FG(a),BG(a),u=!0,RG(NG(a),NG(s),n.divide,l,t[0],o)):E(s,(function(e){return VG(e,l,t[0])})))}})).updateManyToMany((function(t,e){new Sm(e,t,(function(t){return i[t].data.getId(i[t].dataIndex)}),(function(t){return r[t].data.getId(r[t].dataIndex)})).update((function(n,i){y(t[n],e[i])})).execute()})).execute(),u&&E(e,(function(t){var e=t.data.hostModel,i=e&&n.getViewOfSeriesModel(e),r=eh("update",e,0);i&&e.isAnimationEnabled()&&r&&r.duration>0&&i.group.traverse((function(t){t instanceof fs&&!t.animators.length&&t.animateFrom({style:{opacity:0}},r)}))}))}function HG(t){var e=t.getModel("universalTransition").get("seriesKey");return e||t.id}function YG(t){return Y(t)?t.sort().join(","):t}function UG(t){if(t.hostModel)return t.hostModel.getModel("universalTransition").get("divideShape")}function XG(t,e){for(var n=0;n<t.length;n++){if(null!=e.seriesIndex&&e.seriesIndex===t[n].seriesIndex||null!=e.seriesId&&e.seriesId===t[n].id)return n}}_m([function(t){t.registerPainter("canvas",Vw)}]),_m([function(t){t.registerPainter("svg",Lw)}]),_m([function(t){t.registerChartView(mS),t.registerSeriesModel(Bw),t.registerLayout(xS("line",!0)),t.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)}}),t.registerProcessor(t.PRIORITY.PROCESSOR.STATISTIC,wS("line"))},function(t){t.registerChartView(LS),t.registerSeriesModel(MS),t.registerLayout(t.PRIORITY.VISUAL.LAYOUT,H(Dx,"bar")),t.registerLayout(t.PRIORITY.VISUAL.PROGRESSIVE_LAYOUT,Ax("bar")),t.registerProcessor(t.PRIORITY.PROCESSOR.STATISTIC,wS("bar")),t.registerAction({type:"changeAxisOrder",event:"changeAxisOrder",update:"update"},(function(t,e){var n=t.componentType||"series";e.eachComponent({mainType:n,query:t},(function(e){t.sortInfo&&e.axis.setCategorySortInfo(t.sortInfo)}))}))},function(t){t.registerChartView(aM),t.registerSeriesModel(uM),yy("pie",t.registerAction),t.registerLayout(H($S,"pie")),t.registerProcessor(JS("pie")),t.registerProcessor(function(t){return{seriesType:t,reset:function(t,e){var n=t.getData();n.filterSelf((function(t){var e=n.mapDimension("value"),i=n.get(e,t);return!(j(i)&&!isNaN(i)&&i<0)}))}}}("pie"))},function(t){_m(hI),t.registerSeriesModel(hM),t.registerChartView(fM),t.registerLayout(xS("scatter"))},function(t){_m(MI),t.registerChartView(gI),t.registerSeriesModel(yI),t.registerLayout(cI),t.registerProcessor(JS("radar")),t.registerPreprocessor(fI)},function(t){_m(JT),t.registerChartView(RT),t.registerSeriesModel(NT),t.registerLayout(zT),t.registerProcessor(t.PRIORITY.PROCESSOR.STATISTIC,ET),yy("map",t.registerAction)},function(t){t.registerChartView(hC),t.registerSeriesModel(PC),t.registerLayout(RC),t.registerVisual(NC),function(t){t.registerAction({type:"treeExpandAndCollapse",event:"treeExpandAndCollapse",update:"update"},(function(t,e){e.eachComponent({mainType:"series",subType:"tree",query:t},(function(e){var n=t.dataIndex,i=e.getData().tree.getNodeByDataIndex(n);i.isExpand=!i.isExpand}))})),t.registerAction({type:"treeRoam",event:"treeRoam",update:"none"},(function(t,e){e.eachComponent({mainType:"series",subType:"tree",query:t},(function(e){var n=qT(e.coordinateSystem,t);e.setCenter&&e.setCenter(n.center),e.setZoom&&e.setZoom(n.zoom)}))}))}(t)},function(t){t.registerSeriesModel(VC),t.registerChartView($C),t.registerVisual(fD),t.registerLayout(CD),function(t){for(var e=0;e<EC.length;e++)t.registerAction({type:EC[e],update:"updateView"},xt);t.registerAction({type:"treemapRootToNode",update:"updateView"},(function(t,e){e.eachComponent({mainType:"series",subType:"treemap",query:t},(function(e,n){var i=DC(t,["treemapZoomToNode","treemapRootToNode"],e);if(i){var r=e.getViewRoot();r&&(t.direction=kC(r,i.node)?"rollUp":"drillDown"),e.resetViewRoot(i.node)}}))}))}(t)},function(t){t.registerChartView(TA),t.registerSeriesModel(OA),t.registerProcessor(OD),t.registerVisual(RD),t.registerVisual(ED),t.registerLayout(XD),t.registerLayout(t.PRIORITY.VISUAL.POST_CHART_LAYOUT,QD),t.registerLayout(eA),t.registerCoordinateSystem("graphView",{dimensions:BT.dimensions,create:nA}),t.registerAction({type:"focusNodeAdjacency",event:"focusNodeAdjacency",update:"series:focusNodeAdjacency"},xt),t.registerAction({type:"unfocusNodeAdjacency",event:"unfocusNodeAdjacency",update:"series:unfocusNodeAdjacency"},xt),t.registerAction(RA,(function(t,e){e.eachComponent({mainType:"series",query:t},(function(e){var n=qT(e.coordinateSystem,t);e.setCenter&&e.setCenter(n.center),e.setZoom&&e.setZoom(n.zoom)}))}))},function(t){t.registerChartView(BA),t.registerSeriesModel(FA)},function(t){t.registerChartView(HA),t.registerSeriesModel(YA),t.registerLayout(UA),t.registerProcessor(JS("funnel"))},function(t){_m(vL),t.registerChartView(XA),t.registerSeriesModel($A),t.registerVisual(t.PRIORITY.VISUAL.BRUSH,tk)},function(t){t.registerChartView(_L),t.registerSeriesModel(bL),t.registerLayout(wL),t.registerVisual(RL),t.registerAction({type:"dragNode",event:"dragnode",update:"update"},(function(t,e){e.eachComponent({mainType:"series",subType:"sankey",query:t},(function(e){e.setNodePosition(t.dataIndex,[t.localX,t.localY])}))}))},function(t){t.registerSeriesModel(EL),t.registerChartView(zL),t.registerVisual(HL),t.registerLayout(UL),t.registerTransform(XL)},function(t){t.registerChartView(jL),t.registerSeriesModel(oP),t.registerPreprocessor(aP),t.registerVisual(cP),t.registerLayout(pP)},function(t){t.registerChartView(yP),t.registerSeriesModel(vP),t.registerLayout(xS("effectScatter"))},function(t){t.registerChartView(IP),t.registerSeriesModel(AP),t.registerLayout(MP),t.registerVisual(LP)},function(t){t.registerChartView(RP),t.registerSeriesModel(NP)},function(t){t.registerChartView(BP),t.registerSeriesModel(iO),t.registerLayout(t.PRIORITY.VISUAL.LAYOUT,H(Dx,"pictorialBar")),t.registerLayout(t.PRIORITY.VISUAL.PROGRESSIVE_LAYOUT,Ax("pictorialBar"))},function(t){t.registerChartView(rO),t.registerSeriesModel(oO),t.registerLayout(aO),t.registerProcessor(JS("themeRiver"))},function(t){t.registerChartView(cO),t.registerSeriesModel(pO),t.registerLayout(H(gO,"sunburst")),t.registerProcessor(H(JS,"sunburst")),t.registerVisual(vO),function(t){t.registerAction({type:uO,update:"updateView"},(function(t,e){e.eachComponent({mainType:"series",subType:"sunburst",query:t},(function(e,n){var i=DC(t,[uO],e);if(i){var r=e.getViewRoot();r&&(t.direction=kC(r,i.node)?"rollUp":"drillDown"),e.resetViewRoot(i.node)}}))})),t.registerAction({type:hO,update:"none"},(function(t,e,n){t=A({},t),e.eachComponent({mainType:"series",subType:"sunburst",query:t},(function(e){var n=DC(t,[hO],e);n&&(t.dataIndex=n.node.dataIndex)})),n.dispatchAction(A(t,{type:"highlight"}))})),t.registerAction({type:"sunburstUnhighlight",update:"updateView"},(function(t,e,n){t=A({},t),n.dispatchAction(A(t,{type:"downplay"}))}))}(t)},function(t){t.registerChartView(lR),t.registerSeriesModel(bO)}]),_m((function(t){_m(hI),_m(lN)})),_m((function(t){_m(lN),JM.registerAxisPointerClass("PolarAxisPointer",uN),t.registerCoordinateSystem("polar",SN),t.registerComponentModel(cN),t.registerComponentView(BN),wM(t,"angle",dN,zN),wM(t,"radius",fN,VN),t.registerComponentView(DN),t.registerComponentView(PN),t.registerLayout(H(EN,"bar"))})),_m(JT),_m((function(t){_m(lN),JM.registerAxisPointerClass("SingleAxisPointer",QN),t.registerComponentView(iE),t.registerComponentView(HN),t.registerComponentModel(UN),wM(t,"single",UN,UN.defaultOption),t.registerCoordinateSystem("single",KN)})),_m(vL),_m((function(t){t.registerComponentModel(rE),t.registerComponentView(aE),t.registerCoordinateSystem("calendar",lE)})),_m((function(t){t.registerComponentModel(fE),t.registerComponentView(vE),t.registerPreprocessor((function(t){var e=t.graphic;Y(e)?e[0]&&e[0].elements?t.graphic=[t.graphic[0]]:t.graphic=[{elements:e}]:e&&!e.elements&&(t.graphic=[{elements:[e]}])}))})),_m((function(t){t.registerComponentModel(YE),t.registerComponentView(XE),WE("saveAsImage",ZE),WE("magicType",KE),WE("dataView",iz),WE("dataZoom",Iz),WE("restore",lz),_m(BE)})),_m((function(t){_m(lN),t.registerComponentModel(Dz),t.registerComponentView(Uz),t.registerAction({type:"showTip",event:"showTip",update:"tooltip:manuallyShowTip"},xt),t.registerAction({type:"hideTip",event:"hideTip",update:"tooltip:manuallyHideTip"},xt)})),_m(lN),_m((function(t){t.registerComponentView(dV),t.registerComponentModel(fV),t.registerPreprocessor(Kz),t.registerVisual(t.PRIORITY.VISUAL.BRUSH,lV),t.registerAction({type:"brush",event:"brush",update:"updateVisual"},(function(t,e){e.eachComponent({mainType:"brush",query:t},(function(e){e.setAreas(t.areas)}))})),t.registerAction({type:"brushSelect",event:"brushSelected",update:"none"},xt),t.registerAction({type:"brushEnd",event:"brushEnd",update:"none"},xt),WE("brush",vV)})),_m((function(t){t.registerComponentModel(mV),t.registerComponentView(xV)})),_m((function(t){t.registerComponentModel(bV),t.registerComponentView(TV),t.registerSubTypeDefaulter("timeline",(function(){return"slider"})),function(t){t.registerAction({type:"timelineChange",event:"timelineChanged",update:"prepareAndUpdate"},(function(t,e,n){var i=e.getComponent("timeline");return i&&null!=t.currentIndex&&(i.setCurrentIndex(t.currentIndex),!i.get("loop",!0)&&i.isIndexMax()&&i.getPlayState()&&(i.setPlayState(!1),n.dispatchAction({type:"timelinePlayChange",playState:!1,from:t.from}))),e.resetOption("timeline",{replaceMerge:i.get("replaceMerge",!0)}),k({currentIndex:i.option.currentIndex},t)})),t.registerAction({type:"timelinePlayChange",event:"timelinePlayChanged",update:"update"},(function(t,e){var n=e.getComponent("timeline");n&&null!=t.playState&&n.setPlayState(t.playState)}))}(t),t.registerPreprocessor(AV)})),_m((function(t){t.registerComponentModel(EV),t.registerComponentView(ZV),t.registerPreprocessor((function(t){PV(t.series,"markPoint")&&(t.markPoint=t.markPoint||{})}))})),_m((function(t){t.registerComponentModel(jV),t.registerComponentView(eB),t.registerPreprocessor((function(t){PV(t.series,"markLine")&&(t.markLine=t.markLine||{})}))})),_m((function(t){t.registerComponentModel(nB),t.registerComponentView(hB),t.registerPreprocessor((function(t){PV(t.series,"markArea")&&(t.markArea=t.markArea||{})}))})),_m((function(t){_m(wB),_m(AB)})),_m((function(t){_m(GB),_m(KB)})),_m(GB),_m(KB),_m((function(t){_m(kF),_m(NF)})),_m(kF),_m(NF),_m((function(t){t.registerPreprocessor(FF),t.registerVisual(t.PRIORITY.VISUAL.ARIA,BF)})),_m((function(t){t.registerTransform(JF),t.registerTransform(QF)})),_m((function(t){t.registerComponentModel(tG),t.registerComponentView(eG)})),_m((function(t){t.registerUpdateLifecycle("series:beforeupdate",(function(t,e,n){E(ho(n.seriesTransition),(function(t){E(ho(t.to),(function(t){for(var e=n.updatedSeries,i=0;i<e.length;i++)(null!=t.seriesIndex&&t.seriesIndex===e[i].seriesIndex||null!=t.seriesId&&t.seriesId===e[i].id)&&(e[i].__universalTransitionEnabled=!0)}))}))})),t.registerUpdateLifecycle("series:transition",(function(t,e,n){var i=EG(e);if(i.oldSeries&&n.updatedSeries&&n.optionChanged){var r=n.seriesTransition;if(r)E(ho(r),(function(t){!function(t,e,n,i){var r=[],o=[];E(ho(t.from),(function(t){var n=XG(e.oldSeries,t);n>=0&&r.push({data:e.oldData[n],divide:UG(e.oldData[n]),dim:t.dimension})})),E(ho(t.to),(function(t){var e=XG(n.updatedSeries,t);if(e>=0){var i=n.updatedSeries[e].getData();o.push({data:i,divide:UG(i),dim:t.dimension})}})),r.length>0&&o.length>0&&WG(r,o,i)}(t,i,n,e)}));else{var o=function(t,e){var n=ft(),i=ft(),r=ft();return E(t.oldSeries,(function(e,n){var o=t.oldData[n],a=HG(e),s=YG(a);i.set(s,o),Y(a)&&E(a,(function(t){r.set(t,{data:o,key:s})}))})),E(e.updatedSeries,(function(t){if(t.isUniversalTransitionEnabled()&&t.isAnimationEnabled()){var e=t.getData(),o=HG(t),a=YG(o),s=i.get(a);if(s)n.set(a,{oldSeries:[{divide:UG(s),data:s}],newSeries:[{divide:UG(e),data:e}]});else if(Y(o)){var l=[];E(o,(function(t){var e=i.get(t);e&&l.push({divide:UG(e),data:e})})),l.length&&n.set(a,{oldSeries:l,newSeries:[{data:e,divide:UG(e)}]})}else{var u=r.get(o);if(u){var h=n.get(u.key);h||(h={oldSeries:[{data:u.data,divide:UG(u.data)}],newSeries:[]},n.set(u.key,h)),h.newSeries.push({data:e,divide:UG(e)})}}}})),n}(i,n);E(o.keys(),(function(t){var n=o.get(t);WG(n.oldSeries,n.newSeries,e)}))}E(n.updatedSeries,(function(t){t.__universalTransitionEnabled&&(t.__universalTransitionEnabled=!1)}))}for(var a=t.getSeries(),s=i.oldSeries=[],l=i.oldData=[],u=0;u<a.length;u++){var h=a[u].getData();h.count()<1e4&&(s.push(a[u]),l.push(h))}}))})),_m((function(t){t.registerUpdateLifecycle("series:beforeupdate",(function(t,e,n){var i=Tb(e).labelManager;i||(i=Tb(e).labelManager=new Ib),i.clearLabels()})),t.registerUpdateLifecycle("series:layoutlabels",(function(t,e,n){var i=Tb(e).labelManager;n.updatedSeries.forEach((function(t){i.addLabelsOfSeries(e.getViewOfSeriesModel(t))})),i.updateLayoutConfig(e),i.layout(e),i.processLabelsOverall()}))})),t.Axis=G_,t.ChartView=mg,t.ComponentModel=Ip,t.ComponentView=fg,t.List=Zm,t.Model=pc,t.PRIORITY=pv,t.SeriesModel=ag,t.color=Pn,t.connect=function(t){if(Y(t)){var e=t;t=null,E(e,(function(e){null!=e.group&&(t=e.group)})),t=t||"g_"+Jv++,E(e,(function(e){e.group=t}))}return Kv[t]=!0,t},t.dataTool={},t.dependencies={zrender:"5.3.1"},t.disConnect=tm,t.disconnect=em,t.dispose=function(t){X(t)?t=qv[t]:t instanceof Vv||(t=nm(t)),t instanceof Vv&&!t.isDisposed()&&t.dispose()},t.env=r,t.extendChartView=function(t){var e=mg.extend(t);return mg.registerClass(e),e},t.extendComponentModel=function(t){var e=Ip.extend(t);return Ip.registerClass(e),e},t.extendComponentView=function(t){var e=fg.extend(t);return fg.registerClass(e),e},t.extendSeriesModel=function(t){var e=ag.extend(t);return ag.registerClass(e),e},t.format=A_,t.getCoordinateSystemDimensions=function(t){var e=ud.get(t);if(e)return e.getDimensionsInfo?e.getDimensionsInfo():e.dimensions.slice()},t.getInstanceByDom=nm,t.getInstanceById=function(t){return qv[t]},t.getMap=function(t){var e=lv("getMap");return e&&e(t)},t.graphic=D_,t.helper=p_,t.init=function(t,e,n){var i=!(n&&n.ssr);if(i){0;var r=nm(t);if(r)return r;0}var o=new Vv(t,e,n);return o.id="ec_"+$v++,qv[o.id]=o,i&&ko(t,Qv,o.id),Ov(o),av.trigger("afterinit",o),o},t.innerDrawElementOnCanvas=$y,t.matrix=Gi,t.number=T_,t.parseGeoJSON=I_,t.parseGeoJson=I_,t.registerAction=um,t.registerCoordinateSystem=hm,t.registerLayout=cm,t.registerLoading=gm,t.registerLocale=wc,t.registerMap=ym,t.registerPostInit=am,t.registerPostUpdate=sm,t.registerPreprocessor=rm,t.registerProcessor=om,t.registerTheme=im,t.registerTransform=vm,t.registerUpdateLifecycle=lm,t.registerVisual=pm,t.setCanvasCreator=function(t){c({createCanvas:t})},t.setPlatformAPI=c,t.throttle=Cg,t.time=C_,t.use=_m,t.util=k_,t.vector=Ht,t.version="5.3.1",t.zrUtil=bt,t.zrender=Or,Object.defineProperty(t,"__esModule",{value:!0})})); \ No newline at end of file diff --git a/src/assets/jquery.min.js b/src/assets/jquery.min.js new file mode 100644 index 0000000..200b54e --- /dev/null +++ b/src/assets/jquery.min.js @@ -0,0 +1,2 @@ +/*! jQuery v3.6.0 | (c) OpenJS Foundation and other contributors | jquery.org/license */ +!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],r=Object.getPrototypeOf,s=t.slice,g=t.flat?function(e){return t.flat.call(e)}:function(e){return t.concat.apply([],e)},u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType&&"function"!=typeof e.item},x=function(e){return null!=e&&e===e.window},E=C.document,c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.6.0",S=function(e,t){return new S.fn.init(e,t)};function p(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0<t&&t-1 in e)}S.fn=S.prototype={jquery:f,constructor:S,length:0,toArray:function(){return s.call(this)},get:function(e){return null==e?s.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=S.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return S.each(this,e)},map:function(n){return this.pushStack(S.map(this,function(e,t){return n.call(e,t,e)}))},slice:function(){return this.pushStack(s.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},even:function(){return this.pushStack(S.grep(this,function(e,t){return(t+1)%2}))},odd:function(){return this.pushStack(S.grep(this,function(e,t){return t%2}))},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(0<=n&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:u,sort:t.sort,splice:t.splice},S.extend=S.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,u=arguments.length,l=!1;for("boolean"==typeof a&&(l=a,a=arguments[s]||{},s++),"object"==typeof a||m(a)||(a={}),s===u&&(a=this,s--);s<u;s++)if(null!=(e=arguments[s]))for(t in e)r=e[t],"__proto__"!==t&&a!==r&&(l&&r&&(S.isPlainObject(r)||(i=Array.isArray(r)))?(n=a[t],o=i&&!Array.isArray(n)?[]:i||S.isPlainObject(n)?n:{},i=!1,a[t]=S.extend(l,o,r)):void 0!==r&&(a[t]=r));return a},S.extend({expando:"jQuery"+(f+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isPlainObject:function(e){var t,n;return!(!e||"[object Object]"!==o.call(e))&&(!(t=r(e))||"function"==typeof(n=v.call(t,"constructor")&&t.constructor)&&a.call(n)===l)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},globalEval:function(e,t,n){b(e,{nonce:t&&t.nonce},n)},each:function(e,t){var n,r=0;if(p(e)){for(n=e.length;r<n;r++)if(!1===t.call(e[r],r,e[r]))break}else for(r in e)if(!1===t.call(e[r],r,e[r]))break;return e},makeArray:function(e,t){var n=t||[];return null!=e&&(p(Object(e))?S.merge(n,"string"==typeof e?[e]:e):u.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:i.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r=[],i=0,o=e.length,a=!n;i<o;i++)!t(e[i],i)!==a&&r.push(e[i]);return r},map:function(e,t,n){var r,i,o=0,a=[];if(p(e))for(r=e.length;o<r;o++)null!=(i=t(e[o],o,n))&&a.push(i);else for(o in e)null!=(i=t(e[o],o,n))&&a.push(i);return g(a)},guid:1,support:y}),"function"==typeof Symbol&&(S.fn[Symbol.iterator]=t[Symbol.iterator]),S.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){n["[object "+t+"]"]=t.toLowerCase()});var d=function(n){var e,d,b,o,i,h,f,g,w,u,l,T,C,a,E,v,s,c,y,S="sizzle"+1*new Date,p=n.document,k=0,r=0,m=ue(),x=ue(),A=ue(),N=ue(),j=function(e,t){return e===t&&(l=!0),0},D={}.hasOwnProperty,t=[],q=t.pop,L=t.push,H=t.push,O=t.slice,P=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},R="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",M="[\\x20\\t\\r\\n\\f]",I="(?:\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+",W="\\["+M+"*("+I+")(?:"+M+"*([*^$|!~]?=)"+M+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+I+"))|)"+M+"*\\]",F=":("+I+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+W+")*)|.*)\\)|)",B=new RegExp(M+"+","g"),$=new RegExp("^"+M+"+|((?:^|[^\\\\])(?:\\\\.)*)"+M+"+$","g"),_=new RegExp("^"+M+"*,"+M+"*"),z=new RegExp("^"+M+"*([>+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp(F),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+F),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(p.childNodes),p.childNodes),t[p.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!N[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&(U.test(t)||z.test(t))){(f=ee.test(t)&&ye(e.parentNode)||e)===e&&d.scope||((s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=S)),o=(l=h(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+xe(l[o]);c=l.join(",")}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){N(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return g(t.replace($,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[S]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e&&e.namespaceURI,n=e&&(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:p;return r!=C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),p!=C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.scope=ce(function(e){return a.appendChild(e).appendChild(C.createElement("div")),"undefined"!=typeof e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length}),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=S,!C.getElementsByName||!C.getElementsByName(S).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){var t;a.appendChild(e).innerHTML="<a id='"+S+"'></a><select id='"+S+"-\r\\' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+S+"-]").length||v.push("~="),(t=C.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||v.push("\\["+M+"*name"+M+"*="+M+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+S+"+*").length||v.push(".#.+[+~]"),e.querySelectorAll("\\\f"),v.push("[\\r\\n\\f]")}),ce(function(e){e.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",F)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},j=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e==C||e.ownerDocument==p&&y(p,e)?-1:t==C||t.ownerDocument==p&&y(p,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==C?-1:t==C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]==p?-1:s[r]==p?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(T(e),d.matchesSelector&&E&&!N[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){N(t,!0)}return 0<se(t,C,null,[e]).length},se.contains=function(e,t){return(e.ownerDocument||e)!=C&&T(e),y(e,t)},se.attr=function(e,t){(e.ownerDocument||e)!=C&&T(e);var n=b.attrHandle[t.toLowerCase()],r=n&&D.call(b.attrHandle,t.toLowerCase())?n(e,t,!E):void 0;return void 0!==r?r:d.attributes||!E?e.getAttribute(t):(r=e.getAttributeNode(t))&&r.specified?r.value:null},se.escape=function(e){return(e+"").replace(re,ie)},se.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},se.uniqueSort=function(e){var t,n=[],r=0,i=0;if(l=!d.detectDuplicates,u=!d.sortStable&&e.slice(0),e.sort(j),l){while(t=e[i++])t===e[i]&&(r=n.push(i));while(r--)e.splice(n[r],1)}return u=null,e},o=se.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=o(e)}else if(3===i||4===i)return e.nodeValue}else while(t=e[r++])n+=o(t);return n},(b=se.selectors={cacheLength:50,createPseudo:le,match:G,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=m[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&m(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1<t.indexOf(i):"$="===r?i&&t.slice(-i.length)===i:"~="===r?-1<(" "+t.replace(B," ")+" ").indexOf(i):"|="===r&&(t===i||t.slice(0,i.length+1)===i+"-"))}},CHILD:function(h,e,t,g,v){var y="nth"!==h.slice(0,3),m="last"!==h.slice(-4),x="of-type"===e;return 1===g&&0===v?function(e){return!!e.parentNode}:function(e,t,n){var r,i,o,a,s,u,l=y!==m?"nextSibling":"previousSibling",c=e.parentNode,f=x&&e.nodeName.toLowerCase(),p=!n&&!x,d=!1;if(c){if(y){while(l){a=e;while(a=a[l])if(x?a.nodeName.toLowerCase()===f:1===a.nodeType)return!1;u=l="only"===h&&!u&&"nextSibling"}return!0}if(u=[m?c.firstChild:c.lastChild],m&&p){d=(s=(r=(i=(o=(a=c)[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===k&&r[1])&&r[2],a=s&&c.childNodes[s];while(a=++s&&a&&a[l]||(d=s=0)||u.pop())if(1===a.nodeType&&++d&&a===e){i[h]=[k,s,d];break}}else if(p&&(d=s=(r=(i=(o=(a=e)[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===k&&r[1]),!1===d)while(a=++s&&a&&a[l]||(d=s=0)||u.pop())if((x?a.nodeName.toLowerCase()===f:1===a.nodeType)&&++d&&(p&&((i=(o=a[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]=[k,d]),a===e))break;return(d-=v)===g||d%g==0&&0<=d/g}}},PSEUDO:function(e,o){var t,a=b.pseudos[e]||b.setFilters[e.toLowerCase()]||se.error("unsupported pseudo: "+e);return a[S]?a(o):1<a.length?(t=[e,e,"",o],b.setFilters.hasOwnProperty(e.toLowerCase())?le(function(e,t){var n,r=a(e,o),i=r.length;while(i--)e[n=P(e,r[i])]=!(t[n]=r[i])}):function(e){return a(e,0,t)}):a}},pseudos:{not:le(function(e){var r=[],i=[],s=f(e.replace($,"$1"));return s[S]?le(function(e,t,n,r){var i,o=s(e,null,r,[]),a=e.length;while(a--)(i=o[a])&&(e[a]=!(t[a]=i))}):function(e,t,n){return r[0]=e,s(r,null,n,i),r[0]=null,!i.pop()}}),has:le(function(t){return function(e){return 0<se(t,e).length}}),contains:le(function(t){return t=t.replace(te,ne),function(e){return-1<(e.textContent||o(e)).indexOf(t)}}),lang:le(function(n){return V.test(n||"")||se.error("unsupported lang: "+n),n=n.replace(te,ne).toLowerCase(),function(e){var t;do{if(t=E?e.lang:e.getAttribute("xml:lang")||e.getAttribute("lang"))return(t=t.toLowerCase())===n||0===t.indexOf(n+"-")}while((e=e.parentNode)&&1===e.nodeType);return!1}}),target:function(e){var t=n.location&&n.location.hash;return t&&t.slice(1)===e.id},root:function(e){return e===a},focus:function(e){return e===C.activeElement&&(!C.hasFocus||C.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:ge(!1),disabled:ge(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!b.pseudos.empty(e)},header:function(e){return J.test(e.nodeName)},input:function(e){return Q.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:ve(function(){return[0]}),last:ve(function(e,t){return[t-1]}),eq:ve(function(e,t,n){return[n<0?n+t:n]}),even:ve(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:ve(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:ve(function(e,t,n){for(var r=n<0?n+t:t<n?t:n;0<=--r;)e.push(r);return e}),gt:ve(function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e})}}).pseudos.nth=b.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})b.pseudos[e]=de(e);for(e in{submit:!0,reset:!0})b.pseudos[e]=he(e);function me(){}function xe(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}function be(s,e,t){var u=e.dir,l=e.next,c=l||u,f=t&&"parentNode"===c,p=r++;return e.first?function(e,t,n){while(e=e[u])if(1===e.nodeType||f)return s(e,t,n);return!1}:function(e,t,n){var r,i,o,a=[k,p];if(n){while(e=e[u])if((1===e.nodeType||f)&&s(e,t,n))return!0}else while(e=e[u])if(1===e.nodeType||f)if(i=(o=e[S]||(e[S]={}))[e.uniqueID]||(o[e.uniqueID]={}),l&&l===e.nodeName.toLowerCase())e=e[u]||e;else{if((r=i[c])&&r[0]===k&&r[1]===p)return a[2]=r[2];if((i[c]=a)[2]=s(e,t,n))return!0}return!1}}function we(i){return 1<i.length?function(e,t,n){var r=i.length;while(r--)if(!i[r](e,t,n))return!1;return!0}:i[0]}function Te(e,t,n,r,i){for(var o,a=[],s=0,u=e.length,l=null!=t;s<u;s++)(o=e[s])&&(n&&!n(o,r,i)||(a.push(o),l&&t.push(s)));return a}function Ce(d,h,g,v,y,e){return v&&!v[S]&&(v=Ce(v)),y&&!y[S]&&(y=Ce(y,e)),le(function(e,t,n,r){var i,o,a,s=[],u=[],l=t.length,c=e||function(e,t,n){for(var r=0,i=t.length;r<i;r++)se(e,t[r],n);return n}(h||"*",n.nodeType?[n]:n,[]),f=!d||!e&&h?c:Te(c,s,d,n,r),p=g?y||(e?d:l||v)?[]:t:f;if(g&&g(f,p,n,r),v){i=Te(p,u),v(i,[],n,r),o=i.length;while(o--)(a=i[o])&&(p[u[o]]=!(f[u[o]]=a))}if(e){if(y||d){if(y){i=[],o=p.length;while(o--)(a=p[o])&&i.push(f[o]=a);y(null,p=[],i,r)}o=p.length;while(o--)(a=p[o])&&-1<(i=y?P(e,a):s[o])&&(e[i]=!(t[i]=a))}}else p=Te(p===t?p.splice(l,p.length):p),y?y(null,t,p,r):H.apply(t,p)})}function Ee(e){for(var i,t,n,r=e.length,o=b.relative[e[0].type],a=o||b.relative[" "],s=o?1:0,u=be(function(e){return e===i},a,!0),l=be(function(e){return-1<P(i,e)},a,!0),c=[function(e,t,n){var r=!o&&(n||t!==w)||((i=t).nodeType?u(e,t,n):l(e,t,n));return i=null,r}];s<r;s++)if(t=b.relative[e[s].type])c=[be(we(c),t)];else{if((t=b.filter[e[s].type].apply(null,e[s].matches))[S]){for(n=++s;n<r;n++)if(b.relative[e[n].type])break;return Ce(1<s&&we(c),1<s&&xe(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace($,"$1"),t,s<n&&Ee(e.slice(s,n)),n<r&&Ee(e=e.slice(n)),n<r&&xe(e))}c.push(t)}return we(c)}return me.prototype=b.filters=b.pseudos,b.setFilters=new me,h=se.tokenize=function(e,t){var n,r,i,o,a,s,u,l=x[e+" "];if(l)return t?0:l.slice(0);a=e,s=[],u=b.preFilter;while(a){for(o in n&&!(r=_.exec(a))||(r&&(a=a.slice(r[0].length)||a),s.push(i=[])),n=!1,(r=z.exec(a))&&(n=r.shift(),i.push({value:n,type:r[0].replace($," ")}),a=a.slice(n.length)),b.filter)!(r=G[o].exec(a))||u[o]&&!(r=u[o](r))||(n=r.shift(),i.push({value:n,type:o,matches:r}),a=a.slice(n.length));if(!n)break}return t?a.length:a?se.error(e):x(e,s).slice(0)},f=se.compile=function(e,t){var n,v,y,m,x,r,i=[],o=[],a=A[e+" "];if(!a){t||(t=h(e)),n=t.length;while(n--)(a=Ee(t[n]))[S]?i.push(a):o.push(a);(a=A(e,(v=o,m=0<(y=i).length,x=0<v.length,r=function(e,t,n,r,i){var o,a,s,u=0,l="0",c=e&&[],f=[],p=w,d=e||x&&b.find.TAG("*",i),h=k+=null==p?1:Math.random()||.1,g=d.length;for(i&&(w=t==C||t||i);l!==g&&null!=(o=d[l]);l++){if(x&&o){a=0,t||o.ownerDocument==C||(T(o),n=!E);while(s=v[a++])if(s(o,t||C,n)){r.push(o);break}i&&(k=h)}m&&((o=!s&&o)&&u--,e&&c.push(o))}if(u+=l,m&&l!==u){a=0;while(s=y[a++])s(c,f,t,n);if(e){if(0<u)while(l--)c[l]||f[l]||(f[l]=q.call(r));f=Te(f)}H.apply(r,f),i&&!e&&0<f.length&&1<u+y.length&&se.uniqueSort(r)}return i&&(k=h,w=p),c},m?le(r):r))).selector=e}return a},g=se.select=function(e,t,n,r){var i,o,a,s,u,l="function"==typeof e&&e,c=!r&&h(e=l.selector||e);if(n=n||[],1===c.length){if(2<(o=c[0]=c[0].slice(0)).length&&"ID"===(a=o[0]).type&&9===t.nodeType&&E&&b.relative[o[1].type]){if(!(t=(b.find.ID(a.matches[0].replace(te,ne),t)||[])[0]))return n;l&&(t=t.parentNode),e=e.slice(o.shift().value.length)}i=G.needsContext.test(e)?0:o.length;while(i--){if(a=o[i],b.relative[s=a.type])break;if((u=b.find[s])&&(r=u(a.matches[0].replace(te,ne),ee.test(o[0].type)&&ye(t.parentNode)||t))){if(o.splice(i,1),!(e=r.length&&xe(o)))return H.apply(n,r),n;break}}}return(l||f(e,c))(r,t,!E,n,!t||ee.test(e)&&ye(t.parentNode)||t),n},d.sortStable=S.split("").sort(j).join("")===S,d.detectDuplicates=!!l,T(),d.sortDetached=ce(function(e){return 1&e.compareDocumentPosition(C.createElement("fieldset"))}),ce(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||fe("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),d.attributes&&ce(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||fe("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),ce(function(e){return null==e.getAttribute("disabled")})||fe(R,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),se}(C);S.find=d,S.expr=d.selectors,S.expr[":"]=S.expr.pseudos,S.uniqueSort=S.unique=d.uniqueSort,S.text=d.getText,S.isXMLDoc=d.isXML,S.contains=d.contains,S.escapeSelector=d.escape;var h=function(e,t,n){var r=[],i=void 0!==n;while((e=e[t])&&9!==e.nodeType)if(1===e.nodeType){if(i&&S(e).is(n))break;r.push(e)}return r},T=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},k=S.expr.match.needsContext;function A(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var N=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,n,r){return m(n)?S.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?S.grep(e,function(e){return e===n!==r}):"string"!=typeof n?S.grep(e,function(e){return-1<i.call(n,e)!==r}):S.filter(n,e,r)}S.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?S.find.matchesSelector(r,e)?[r]:[]:S.find.matches(e,S.grep(t,function(e){return 1===e.nodeType}))},S.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(S(e).filter(function(){for(t=0;t<r;t++)if(S.contains(i[t],this))return!0}));for(n=this.pushStack([]),t=0;t<r;t++)S.find(e,i[t],n);return 1<r?S.uniqueSort(n):n},filter:function(e){return this.pushStack(j(this,e||[],!1))},not:function(e){return this.pushStack(j(this,e||[],!0))},is:function(e){return!!j(this,"string"==typeof e&&k.test(e)?S(e):e||[],!1).length}});var D,q=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(S.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||D,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:q.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof S?t[0]:t,S.merge(this,S.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),N.test(r[1])&&S.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(S):S.makeArray(e,this)}).prototype=S.fn,D=S(E);var L=/^(?:parents|prev(?:Until|All))/,H={children:!0,contents:!0,next:!0,prev:!0};function O(e,t){while((e=e[t])&&1!==e.nodeType);return e}S.fn.extend({has:function(e){var t=S(e,this),n=t.length;return this.filter(function(){for(var e=0;e<n;e++)if(S.contains(this,t[e]))return!0})},closest:function(e,t){var n,r=0,i=this.length,o=[],a="string"!=typeof e&&S(e);if(!k.test(e))for(;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?-1<a.index(n):1===n.nodeType&&S.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(1<o.length?S.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?i.call(S(e),this[0]):i.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(S.uniqueSort(S.merge(this.get(),S(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),S.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return h(e,"parentNode")},parentsUntil:function(e,t,n){return h(e,"parentNode",n)},next:function(e){return O(e,"nextSibling")},prev:function(e){return O(e,"previousSibling")},nextAll:function(e){return h(e,"nextSibling")},prevAll:function(e){return h(e,"previousSibling")},nextUntil:function(e,t,n){return h(e,"nextSibling",n)},prevUntil:function(e,t,n){return h(e,"previousSibling",n)},siblings:function(e){return T((e.parentNode||{}).firstChild,e)},children:function(e){return T(e.firstChild)},contents:function(e){return null!=e.contentDocument&&r(e.contentDocument)?e.contentDocument:(A(e,"template")&&(e=e.content||e),S.merge([],e.childNodes))}},function(r,i){S.fn[r]=function(e,t){var n=S.map(this,i,e);return"Until"!==r.slice(-5)&&(t=e),t&&"string"==typeof t&&(n=S.filter(t,n)),1<this.length&&(H[r]||S.uniqueSort(n),L.test(r)&&n.reverse()),this.pushStack(n)}});var P=/[^\x20\t\r\n\f]+/g;function R(e){return e}function M(e){throw e}function I(e,t,n,r){var i;try{e&&m(i=e.promise)?i.call(e).done(t).fail(n):e&&m(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}S.Callbacks=function(r){var e,n;r="string"==typeof r?(e=r,n={},S.each(e.match(P)||[],function(e,t){n[t]=!0}),n):S.extend({},r);var i,t,o,a,s=[],u=[],l=-1,c=function(){for(a=a||r.once,o=i=!0;u.length;l=-1){t=u.shift();while(++l<s.length)!1===s[l].apply(t[0],t[1])&&r.stopOnFalse&&(l=s.length,t=!1)}r.memory||(t=!1),i=!1,a&&(s=t?[]:"")},f={add:function(){return s&&(t&&!i&&(l=s.length-1,u.push(t)),function n(e){S.each(e,function(e,t){m(t)?r.unique&&f.has(t)||s.push(t):t&&t.length&&"string"!==w(t)&&n(t)})}(arguments),t&&!i&&c()),this},remove:function(){return S.each(arguments,function(e,t){var n;while(-1<(n=S.inArray(t,s,n)))s.splice(n,1),n<=l&&l--}),this},has:function(e){return e?-1<S.inArray(e,s):0<s.length},empty:function(){return s&&(s=[]),this},disable:function(){return a=u=[],s=t="",this},disabled:function(){return!s},lock:function(){return a=u=[],t||i||(s=t=""),this},locked:function(){return!!a},fireWith:function(e,t){return a||(t=[e,(t=t||[]).slice?t.slice():t],u.push(t),i||c()),this},fire:function(){return f.fireWith(this,arguments),this},fired:function(){return!!o}};return f},S.extend({Deferred:function(e){var o=[["notify","progress",S.Callbacks("memory"),S.Callbacks("memory"),2],["resolve","done",S.Callbacks("once memory"),S.Callbacks("once memory"),0,"resolved"],["reject","fail",S.Callbacks("once memory"),S.Callbacks("once memory"),1,"rejected"]],i="pending",a={state:function(){return i},always:function(){return s.done(arguments).fail(arguments),this},"catch":function(e){return a.then(null,e)},pipe:function(){var i=arguments;return S.Deferred(function(r){S.each(o,function(e,t){var n=m(i[t[4]])&&i[t[4]];s[t[1]](function(){var e=n&&n.apply(this,arguments);e&&m(e.promise)?e.promise().progress(r.notify).done(r.resolve).fail(r.reject):r[t[0]+"With"](this,n?[e]:arguments)})}),i=null}).promise()},then:function(t,n,r){var u=0;function l(i,o,a,s){return function(){var n=this,r=arguments,e=function(){var e,t;if(!(i<u)){if((e=a.apply(n,r))===o.promise())throw new TypeError("Thenable self-resolution");t=e&&("object"==typeof e||"function"==typeof e)&&e.then,m(t)?s?t.call(e,l(u,o,R,s),l(u,o,M,s)):(u++,t.call(e,l(u,o,R,s),l(u,o,M,s),l(u,o,R,o.notifyWith))):(a!==R&&(n=void 0,r=[e]),(s||o.resolveWith)(n,r))}},t=s?e:function(){try{e()}catch(e){S.Deferred.exceptionHook&&S.Deferred.exceptionHook(e,t.stackTrace),u<=i+1&&(a!==M&&(n=void 0,r=[e]),o.rejectWith(n,r))}};i?t():(S.Deferred.getStackHook&&(t.stackTrace=S.Deferred.getStackHook()),C.setTimeout(t))}}return S.Deferred(function(e){o[0][3].add(l(0,e,m(r)?r:R,e.notifyWith)),o[1][3].add(l(0,e,m(t)?t:R)),o[2][3].add(l(0,e,m(n)?n:M))}).promise()},promise:function(e){return null!=e?S.extend(e,a):a}},s={};return S.each(o,function(e,t){var n=t[2],r=t[5];a[t[1]]=n.add,r&&n.add(function(){i=r},o[3-e][2].disable,o[3-e][3].disable,o[0][2].lock,o[0][3].lock),n.add(t[3].fire),s[t[0]]=function(){return s[t[0]+"With"](this===s?void 0:this,arguments),this},s[t[0]+"With"]=n.fireWith}),a.promise(s),e&&e.call(s,s),s},when:function(e){var n=arguments.length,t=n,r=Array(t),i=s.call(arguments),o=S.Deferred(),a=function(t){return function(e){r[t]=this,i[t]=1<arguments.length?s.call(arguments):e,--n||o.resolveWith(r,i)}};if(n<=1&&(I(e,o.done(a(t)).resolve,o.reject,!n),"pending"===o.state()||m(i[t]&&i[t].then)))return o.then();while(t--)I(i[t],a(t),o.reject);return o.promise()}});var W=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;S.Deferred.exceptionHook=function(e,t){C.console&&C.console.warn&&e&&W.test(e.name)&&C.console.warn("jQuery.Deferred exception: "+e.message,e.stack,t)},S.readyException=function(e){C.setTimeout(function(){throw e})};var F=S.Deferred();function B(){E.removeEventListener("DOMContentLoaded",B),C.removeEventListener("load",B),S.ready()}S.fn.ready=function(e){return F.then(e)["catch"](function(e){S.readyException(e)}),this},S.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--S.readyWait:S.isReady)||(S.isReady=!0)!==e&&0<--S.readyWait||F.resolveWith(E,[S])}}),S.ready.then=F.then,"complete"===E.readyState||"loading"!==E.readyState&&!E.documentElement.doScroll?C.setTimeout(S.ready):(E.addEventListener("DOMContentLoaded",B),C.addEventListener("load",B));var $=function(e,t,n,r,i,o,a){var s=0,u=e.length,l=null==n;if("object"===w(n))for(s in i=!0,n)$(e,t,s,n[s],!0,o,a);else if(void 0!==r&&(i=!0,m(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(S(e),n)})),t))for(;s<u;s++)t(e[s],n,a?r:r.call(e[s],s,t(e[s],n)));return i?e:l?t.call(e):u?t(e[0],n):o},_=/^-ms-/,z=/-([a-z])/g;function U(e,t){return t.toUpperCase()}function X(e){return e.replace(_,"ms-").replace(z,U)}var V=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};function G(){this.expando=S.expando+G.uid++}G.uid=1,G.prototype={cache:function(e){var t=e[this.expando];return t||(t={},V(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,i=this.cache(e);if("string"==typeof t)i[X(t)]=n;else for(r in t)i[X(r)]=t[r];return i},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][X(t)]},access:function(e,t,n){return void 0===t||t&&"string"==typeof t&&void 0===n?this.get(e,t):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){var n,r=e[this.expando];if(void 0!==r){if(void 0!==t){n=(t=Array.isArray(t)?t.map(X):(t=X(t))in r?[t]:t.match(P)||[]).length;while(n--)delete r[t[n]]}(void 0===t||S.isEmptyObject(r))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!S.isEmptyObject(t)}};var Y=new G,Q=new G,J=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,K=/[A-Z]/g;function Z(e,t,n){var r,i;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(K,"-$&").toLowerCase(),"string"==typeof(n=e.getAttribute(r))){try{n="true"===(i=n)||"false"!==i&&("null"===i?null:i===+i+""?+i:J.test(i)?JSON.parse(i):i)}catch(e){}Q.set(e,t,n)}else n=void 0;return n}S.extend({hasData:function(e){return Q.hasData(e)||Y.hasData(e)},data:function(e,t,n){return Q.access(e,t,n)},removeData:function(e,t){Q.remove(e,t)},_data:function(e,t,n){return Y.access(e,t,n)},_removeData:function(e,t){Y.remove(e,t)}}),S.fn.extend({data:function(n,e){var t,r,i,o=this[0],a=o&&o.attributes;if(void 0===n){if(this.length&&(i=Q.get(o),1===o.nodeType&&!Y.get(o,"hasDataAttrs"))){t=a.length;while(t--)a[t]&&0===(r=a[t].name).indexOf("data-")&&(r=X(r.slice(5)),Z(o,r,i[r]));Y.set(o,"hasDataAttrs",!0)}return i}return"object"==typeof n?this.each(function(){Q.set(this,n)}):$(this,function(e){var t;if(o&&void 0===e)return void 0!==(t=Q.get(o,n))?t:void 0!==(t=Z(o,n))?t:void 0;this.each(function(){Q.set(this,n,e)})},null,e,1<arguments.length,null,!0)},removeData:function(e){return this.each(function(){Q.remove(this,e)})}}),S.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=Y.get(e,t),n&&(!r||Array.isArray(n)?r=Y.access(e,t,S.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=S.queue(e,t),r=n.length,i=n.shift(),o=S._queueHooks(e,t);"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,function(){S.dequeue(e,t)},o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return Y.get(e,n)||Y.access(e,n,{empty:S.Callbacks("once memory").add(function(){Y.remove(e,[t+"queue",n])})})}}),S.fn.extend({queue:function(t,n){var e=2;return"string"!=typeof t&&(n=t,t="fx",e--),arguments.length<e?S.queue(this[0],t):void 0===n?this:this.each(function(){var e=S.queue(this,t,n);S._queueHooks(this,t),"fx"===t&&"inprogress"!==e[0]&&S.dequeue(this,t)})},dequeue:function(e){return this.each(function(){S.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,i=S.Deferred(),o=this,a=this.length,s=function(){--r||i.resolveWith(o,[o])};"string"!=typeof e&&(t=e,e=void 0),e=e||"fx";while(a--)(n=Y.get(o[a],e+"queueHooks"))&&n.empty&&(r++,n.empty.add(s));return s(),i.promise(t)}});var ee=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,te=new RegExp("^(?:([+-])=|)("+ee+")([a-z%]*)$","i"),ne=["Top","Right","Bottom","Left"],re=E.documentElement,ie=function(e){return S.contains(e.ownerDocument,e)},oe={composed:!0};re.getRootNode&&(ie=function(e){return S.contains(e.ownerDocument,e)||e.getRootNode(oe)===e.ownerDocument});var ae=function(e,t){return"none"===(e=t||e).style.display||""===e.style.display&&ie(e)&&"none"===S.css(e,"display")};function se(e,t,n,r){var i,o,a=20,s=r?function(){return r.cur()}:function(){return S.css(e,t,"")},u=s(),l=n&&n[3]||(S.cssNumber[t]?"":"px"),c=e.nodeType&&(S.cssNumber[t]||"px"!==l&&+u)&&te.exec(S.css(e,t));if(c&&c[3]!==l){u/=2,l=l||c[3],c=+u||1;while(a--)S.style(e,t,c+l),(1-o)*(1-(o=s()/u||.5))<=0&&(a=0),c/=o;c*=2,S.style(e,t,c+l),n=n||[]}return n&&(c=+c||+u||0,i=n[1]?c+(n[1]+1)*n[2]:+n[2],r&&(r.unit=l,r.start=c,r.end=i)),i}var ue={};function le(e,t){for(var n,r,i,o,a,s,u,l=[],c=0,f=e.length;c<f;c++)(r=e[c]).style&&(n=r.style.display,t?("none"===n&&(l[c]=Y.get(r,"display")||null,l[c]||(r.style.display="")),""===r.style.display&&ae(r)&&(l[c]=(u=a=o=void 0,a=(i=r).ownerDocument,s=i.nodeName,(u=ue[s])||(o=a.body.appendChild(a.createElement(s)),u=S.css(o,"display"),o.parentNode.removeChild(o),"none"===u&&(u="block"),ue[s]=u)))):"none"!==n&&(l[c]="none",Y.set(r,"display",n)));for(c=0;c<f;c++)null!=l[c]&&(e[c].style.display=l[c]);return e}S.fn.extend({show:function(){return le(this,!0)},hide:function(){return le(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){ae(this)?S(this).show():S(this).hide()})}});var ce,fe,pe=/^(?:checkbox|radio)$/i,de=/<([a-z][^\/\0>\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i;ce=E.createDocumentFragment().appendChild(E.createElement("div")),(fe=E.createElement("input")).setAttribute("type","radio"),fe.setAttribute("checked","checked"),fe.setAttribute("name","t"),ce.appendChild(fe),y.checkClone=ce.cloneNode(!0).cloneNode(!0).lastChild.checked,ce.innerHTML="<textarea>x</textarea>",y.noCloneChecked=!!ce.cloneNode(!0).lastChild.defaultValue,ce.innerHTML="<option></option>",y.option=!!ce.lastChild;var ge={thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?S.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n<r;n++)Y.set(e[n],"globalEval",!t||Y.get(t[n],"globalEval"))}ge.tbody=ge.tfoot=ge.colgroup=ge.caption=ge.thead,ge.th=ge.td,y.option||(ge.optgroup=ge.option=[1,"<select multiple='multiple'>","</select>"]);var me=/<|&#?\w+;/;function xe(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d<h;d++)if((o=e[d])||0===o)if("object"===w(o))S.merge(p,o.nodeType?[o]:o);else if(me.test(o)){a=a||f.appendChild(t.createElement("div")),s=(de.exec(o)||["",""])[1].toLowerCase(),u=ge[s]||ge._default,a.innerHTML=u[1]+S.htmlPrefilter(o)+u[2],c=u[0];while(c--)a=a.lastChild;S.merge(p,a.childNodes),(a=f.firstChild).textContent=""}else p.push(t.createTextNode(o));f.textContent="",d=0;while(o=p[d++])if(r&&-1<S.inArray(o,r))i&&i.push(o);else if(l=ie(o),a=ve(f.appendChild(o),"script"),l&&ye(a),n){c=0;while(o=a[c++])he.test(o.type||"")&&n.push(o)}return f}var be=/^([^.]*)(?:\.(.+)|)/;function we(){return!0}function Te(){return!1}function Ce(e,t){return e===function(){try{return E.activeElement}catch(e){}}()==("focus"===t)}function Ee(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)Ee(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Te;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return S().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=S.guid++)),e.each(function(){S.event.add(this,t,i,r,n)})}function Se(e,i,o){o?(Y.set(e,i,!1),S.event.add(e,i,{namespace:!1,handler:function(e){var t,n,r=Y.get(this,i);if(1&e.isTrigger&&this[i]){if(r.length)(S.event.special[i]||{}).delegateType&&e.stopPropagation();else if(r=s.call(arguments),Y.set(this,i,r),t=o(this,i),this[i](),r!==(n=Y.get(this,i))||t?Y.set(this,i,!1):n={},r!==n)return e.stopImmediatePropagation(),e.preventDefault(),n&&n.value}else r.length&&(Y.set(this,i,{value:S.event.trigger(S.extend(r[0],S.Event.prototype),r.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Y.get(e,i)&&S.event.add(e,i,we)}S.event={global:{},add:function(t,e,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Y.get(t);if(V(t)){n.handler&&(n=(o=n).handler,i=o.selector),i&&S.find.matchesSelector(re,i),n.guid||(n.guid=S.guid++),(u=v.events)||(u=v.events=Object.create(null)),(a=v.handle)||(a=v.handle=function(e){return"undefined"!=typeof S&&S.event.triggered!==e.type?S.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(P)||[""]).length;while(l--)d=g=(s=be.exec(e[l])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=S.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=S.event.special[d]||{},c=S.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&S.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(t,r,h,a)||t.addEventListener&&t.addEventListener(d,a)),f.add&&(f.add.call(t,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),S.event.global[d]=!0)}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Y.hasData(e)&&Y.get(e);if(v&&(u=v.events)){l=(t=(t||"").match(P)||[""]).length;while(l--)if(d=g=(s=be.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),d){f=S.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;while(o--)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||S.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)S.event.remove(e,d+t[l],n,r,!0);S.isEmptyObject(u)&&Y.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=new Array(arguments.length),u=S.event.fix(e),l=(Y.get(this,"events")||Object.create(null))[u.type]||[],c=S.event.special[u.type]||{};for(s[0]=u,t=1;t<arguments.length;t++)s[t]=arguments[t];if(u.delegateTarget=this,!c.preDispatch||!1!==c.preDispatch.call(this,u)){a=S.event.handlers.call(this,u,l),t=0;while((i=a[t++])&&!u.isPropagationStopped()){u.currentTarget=i.elem,n=0;while((o=i.handlers[n++])&&!u.isImmediatePropagationStopped())u.rnamespace&&!1!==o.namespace&&!u.rnamespace.test(o.namespace)||(u.handleObj=o,u.data=o.data,void 0!==(r=((S.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,s))&&!1===(u.result=r)&&(u.preventDefault(),u.stopPropagation()))}return c.postDispatch&&c.postDispatch.call(this,u),u.result}},handlers:function(e,t){var n,r,i,o,a,s=[],u=t.delegateCount,l=e.target;if(u&&l.nodeType&&!("click"===e.type&&1<=e.button))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&("click"!==e.type||!0!==l.disabled)){for(o=[],a={},n=0;n<u;n++)void 0===a[i=(r=t[n]).selector+" "]&&(a[i]=r.needsContext?-1<S(i,this).index(l):S.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&s.push({elem:l,handlers:o})}return l=this,u<t.length&&s.push({elem:l,handlers:t.slice(u)}),s},addProp:function(t,e){Object.defineProperty(S.Event.prototype,t,{enumerable:!0,configurable:!0,get:m(e)?function(){if(this.originalEvent)return e(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[t]},set:function(e){Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:e})}})},fix:function(e){return e[S.expando]?e:new S.Event(e)},special:{load:{noBubble:!0},click:{setup:function(e){var t=this||e;return pe.test(t.type)&&t.click&&A(t,"input")&&Se(t,"click",we),!1},trigger:function(e){var t=this||e;return pe.test(t.type)&&t.click&&A(t,"input")&&Se(t,"click"),!0},_default:function(e){var t=e.target;return pe.test(t.type)&&t.click&&A(t,"input")&&Y.get(t,"click")||A(t,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},S.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},S.Event=function(e,t){if(!(this instanceof S.Event))return new S.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?we:Te,this.target=e.target&&3===e.target.nodeType?e.target.parentNode:e.target,this.currentTarget=e.currentTarget,this.relatedTarget=e.relatedTarget):this.type=e,t&&S.extend(this,t),this.timeStamp=e&&e.timeStamp||Date.now(),this[S.expando]=!0},S.Event.prototype={constructor:S.Event,isDefaultPrevented:Te,isPropagationStopped:Te,isImmediatePropagationStopped:Te,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=we,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=we,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=we,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},S.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,"char":!0,code:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:!0},S.event.addProp),S.each({focus:"focusin",blur:"focusout"},function(e,t){S.event.special[e]={setup:function(){return Se(this,e,Ce),!1},trigger:function(){return Se(this,e),!0},_default:function(){return!0},delegateType:t}}),S.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(e,i){S.event.special[e]={delegateType:i,bindType:i,handle:function(e){var t,n=e.relatedTarget,r=e.handleObj;return n&&(n===this||S.contains(this,n))||(e.type=r.origType,t=r.handler.apply(this,arguments),e.type=i),t}}}),S.fn.extend({on:function(e,t,n,r){return Ee(this,e,t,n,r)},one:function(e,t,n,r){return Ee(this,e,t,n,r,1)},off:function(e,t,n){var r,i;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,S(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"==typeof e){for(i in e)this.off(i,t,e[i]);return this}return!1!==t&&"function"!=typeof t||(n=t,t=void 0),!1===n&&(n=Te),this.each(function(){S.event.remove(this,e,n,t)})}});var ke=/<script|<style|<link/i,Ae=/checked\s*(?:[^=]|=\s*.checked.)/i,Ne=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function je(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&S(e).children("tbody")[0]||e}function De(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function qe(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Le(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(Y.hasData(e)&&(s=Y.get(e).events))for(i in Y.remove(t,"handle events"),s)for(n=0,r=s[i].length;n<r;n++)S.event.add(t,i,s[i][n]);Q.hasData(e)&&(o=Q.access(e),a=S.extend({},o),Q.set(t,a))}}function He(n,r,i,o){r=g(r);var e,t,a,s,u,l,c=0,f=n.length,p=f-1,d=r[0],h=m(d);if(h||1<f&&"string"==typeof d&&!y.checkClone&&Ae.test(d))return n.each(function(e){var t=n.eq(e);h&&(r[0]=d.call(this,e,t.html())),He(t,r,i,o)});if(f&&(t=(e=xe(r,n[0].ownerDocument,!1,n,o)).firstChild,1===e.childNodes.length&&(e=t),t||o)){for(s=(a=S.map(ve(e,"script"),De)).length;c<f;c++)u=e,c!==p&&(u=S.clone(u,!0,!0),s&&S.merge(a,ve(u,"script"))),i.call(n[c],u,c);if(s)for(l=a[a.length-1].ownerDocument,S.map(a,qe),c=0;c<s;c++)u=a[c],he.test(u.type||"")&&!Y.access(u,"globalEval")&&S.contains(l,u)&&(u.src&&"module"!==(u.type||"").toLowerCase()?S._evalUrl&&!u.noModule&&S._evalUrl(u.src,{nonce:u.nonce||u.getAttribute("nonce")},l):b(u.textContent.replace(Ne,""),u,l))}return n}function Oe(e,t,n){for(var r,i=t?S.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||S.cleanData(ve(r)),r.parentNode&&(n&&ie(r)&&ye(ve(r,"script")),r.parentNode.removeChild(r));return e}S.extend({htmlPrefilter:function(e){return e},clone:function(e,t,n){var r,i,o,a,s,u,l,c=e.cloneNode(!0),f=ie(e);if(!(y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||S.isXMLDoc(e)))for(a=ve(c),r=0,i=(o=ve(e)).length;r<i;r++)s=o[r],u=a[r],void 0,"input"===(l=u.nodeName.toLowerCase())&&pe.test(s.type)?u.checked=s.checked:"input"!==l&&"textarea"!==l||(u.defaultValue=s.defaultValue);if(t)if(n)for(o=o||ve(e),a=a||ve(c),r=0,i=o.length;r<i;r++)Le(o[r],a[r]);else Le(e,c);return 0<(a=ve(c,"script")).length&&ye(a,!f&&ve(e,"script")),c},cleanData:function(e){for(var t,n,r,i=S.event.special,o=0;void 0!==(n=e[o]);o++)if(V(n)){if(t=n[Y.expando]){if(t.events)for(r in t.events)i[r]?S.event.remove(n,r):S.removeEvent(n,r,t.handle);n[Y.expando]=void 0}n[Q.expando]&&(n[Q.expando]=void 0)}}}),S.fn.extend({detach:function(e){return Oe(this,e,!0)},remove:function(e){return Oe(this,e)},text:function(e){return $(this,function(e){return void 0===e?S.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return He(this,arguments,function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||je(this,e).appendChild(e)})},prepend:function(){return He(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=je(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return He(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return He(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(S.cleanData(ve(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return S.clone(this,e,t)})},html:function(e){return $(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!ke.test(e)&&!ge[(de.exec(e)||["",""])[1].toLowerCase()]){e=S.htmlPrefilter(e);try{for(;n<r;n++)1===(t=this[n]||{}).nodeType&&(S.cleanData(ve(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var n=[];return He(this,arguments,function(e){var t=this.parentNode;S.inArray(this,n)<0&&(S.cleanData(ve(this)),t&&t.replaceChild(e,this))},n)}}),S.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,a){S.fn[e]=function(e){for(var t,n=[],r=S(e),i=r.length-1,o=0;o<=i;o++)t=o===i?this:this.clone(!0),S(r[o])[a](t),u.apply(n,t.get());return this.pushStack(n)}});var Pe=new RegExp("^("+ee+")(?!px)[a-z%]+$","i"),Re=function(e){var t=e.ownerDocument.defaultView;return t&&t.opener||(t=C),t.getComputedStyle(e)},Me=function(e,t,n){var r,i,o={};for(i in t)o[i]=e.style[i],e.style[i]=t[i];for(i in r=n.call(e),t)e.style[i]=o[i];return r},Ie=new RegExp(ne.join("|"),"i");function We(e,t,n){var r,i,o,a,s=e.style;return(n=n||Re(e))&&(""!==(a=n.getPropertyValue(t)||n[t])||ie(e)||(a=S.style(e,t)),!y.pixelBoxStyles()&&Pe.test(a)&&Ie.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o)),void 0!==a?a+"":a}function Fe(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}!function(){function e(){if(l){u.style.cssText="position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0",l.style.cssText="position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%",re.appendChild(u).appendChild(l);var e=C.getComputedStyle(l);n="1%"!==e.top,s=12===t(e.marginLeft),l.style.right="60%",o=36===t(e.right),r=36===t(e.width),l.style.position="absolute",i=12===t(l.offsetWidth/3),re.removeChild(u),l=null}}function t(e){return Math.round(parseFloat(e))}var n,r,i,o,a,s,u=E.createElement("div"),l=E.createElement("div");l.style&&(l.style.backgroundClip="content-box",l.cloneNode(!0).style.backgroundClip="",y.clearCloneStyle="content-box"===l.style.backgroundClip,S.extend(y,{boxSizingReliable:function(){return e(),r},pixelBoxStyles:function(){return e(),o},pixelPosition:function(){return e(),n},reliableMarginLeft:function(){return e(),s},scrollboxSize:function(){return e(),i},reliableTrDimensions:function(){var e,t,n,r;return null==a&&(e=E.createElement("table"),t=E.createElement("tr"),n=E.createElement("div"),e.style.cssText="position:absolute;left:-11111px;border-collapse:separate",t.style.cssText="border:1px solid",t.style.height="1px",n.style.height="9px",n.style.display="block",re.appendChild(e).appendChild(t).appendChild(n),r=C.getComputedStyle(t),a=parseInt(r.height,10)+parseInt(r.borderTopWidth,10)+parseInt(r.borderBottomWidth,10)===t.offsetHeight,re.removeChild(e)),a}}))}();var Be=["Webkit","Moz","ms"],$e=E.createElement("div").style,_e={};function ze(e){var t=S.cssProps[e]||_e[e];return t||(e in $e?e:_e[e]=function(e){var t=e[0].toUpperCase()+e.slice(1),n=Be.length;while(n--)if((e=Be[n]+t)in $e)return e}(e)||e)}var Ue=/^(none|table(?!-c[ea]).+)/,Xe=/^--/,Ve={position:"absolute",visibility:"hidden",display:"block"},Ge={letterSpacing:"0",fontWeight:"400"};function Ye(e,t,n){var r=te.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):t}function Qe(e,t,n,r,i,o){var a="width"===t?1:0,s=0,u=0;if(n===(r?"border":"content"))return 0;for(;a<4;a+=2)"margin"===n&&(u+=S.css(e,n+ne[a],!0,i)),r?("content"===n&&(u-=S.css(e,"padding"+ne[a],!0,i)),"margin"!==n&&(u-=S.css(e,"border"+ne[a]+"Width",!0,i))):(u+=S.css(e,"padding"+ne[a],!0,i),"padding"!==n?u+=S.css(e,"border"+ne[a]+"Width",!0,i):s+=S.css(e,"border"+ne[a]+"Width",!0,i));return!r&&0<=o&&(u+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-o-u-s-.5))||0),u}function Je(e,t,n){var r=Re(e),i=(!y.boxSizingReliable()||n)&&"border-box"===S.css(e,"boxSizing",!1,r),o=i,a=We(e,t,r),s="offset"+t[0].toUpperCase()+t.slice(1);if(Pe.test(a)){if(!n)return a;a="auto"}return(!y.boxSizingReliable()&&i||!y.reliableTrDimensions()&&A(e,"tr")||"auto"===a||!parseFloat(a)&&"inline"===S.css(e,"display",!1,r))&&e.getClientRects().length&&(i="border-box"===S.css(e,"boxSizing",!1,r),(o=s in e)&&(a=e[s])),(a=parseFloat(a)||0)+Qe(e,t,n||(i?"border":"content"),o,r,a)+"px"}function Ke(e,t,n,r,i){return new Ke.prototype.init(e,t,n,r,i)}S.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=We(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=X(t),u=Xe.test(t),l=e.style;if(u||(t=ze(s)),a=S.cssHooks[t]||S.cssHooks[s],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:l[t];"string"===(o=typeof n)&&(i=te.exec(n))&&i[1]&&(n=se(e,t,i),o="number"),null!=n&&n==n&&("number"!==o||u||(n+=i&&i[3]||(S.cssNumber[s]?"":"px")),y.clearCloneStyle||""!==n||0!==t.indexOf("background")||(l[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(u?l.setProperty(t,n):l[t]=n))}},css:function(e,t,n,r){var i,o,a,s=X(t);return Xe.test(t)||(t=ze(s)),(a=S.cssHooks[t]||S.cssHooks[s])&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=We(e,t,r)),"normal"===i&&t in Ge&&(i=Ge[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),S.each(["height","width"],function(e,u){S.cssHooks[u]={get:function(e,t,n){if(t)return!Ue.test(S.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?Je(e,u,n):Me(e,Ve,function(){return Je(e,u,n)})},set:function(e,t,n){var r,i=Re(e),o=!y.scrollboxSize()&&"absolute"===i.position,a=(o||n)&&"border-box"===S.css(e,"boxSizing",!1,i),s=n?Qe(e,u,n,a,i):0;return a&&o&&(s-=Math.ceil(e["offset"+u[0].toUpperCase()+u.slice(1)]-parseFloat(i[u])-Qe(e,u,"border",!1,i)-.5)),s&&(r=te.exec(t))&&"px"!==(r[3]||"px")&&(e.style[u]=t,t=S.css(e,u)),Ye(0,t,s)}}}),S.cssHooks.marginLeft=Fe(y.reliableMarginLeft,function(e,t){if(t)return(parseFloat(We(e,"marginLeft"))||e.getBoundingClientRect().left-Me(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),S.each({margin:"",padding:"",border:"Width"},function(i,o){S.cssHooks[i+o]={expand:function(e){for(var t=0,n={},r="string"==typeof e?e.split(" "):[e];t<4;t++)n[i+ne[t]+o]=r[t]||r[t-2]||r[0];return n}},"margin"!==i&&(S.cssHooks[i+o].set=Ye)}),S.fn.extend({css:function(e,t){return $(this,function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=Re(e),i=t.length;a<i;a++)o[t[a]]=S.css(e,t[a],!1,r);return o}return void 0!==n?S.style(e,t,n):S.css(e,t)},e,t,1<arguments.length)}}),((S.Tween=Ke).prototype={constructor:Ke,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||S.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(S.cssNumber[n]?"":"px")},cur:function(){var e=Ke.propHooks[this.prop];return e&&e.get?e.get(this):Ke.propHooks._default.get(this)},run:function(e){var t,n=Ke.propHooks[this.prop];return this.options.duration?this.pos=t=S.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):Ke.propHooks._default.set(this),this}}).init.prototype=Ke.prototype,(Ke.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=S.css(e.elem,e.prop,""))&&"auto"!==t?t:0},set:function(e){S.fx.step[e.prop]?S.fx.step[e.prop](e):1!==e.elem.nodeType||!S.cssHooks[e.prop]&&null==e.elem.style[ze(e.prop)]?e.elem[e.prop]=e.now:S.style(e.elem,e.prop,e.now+e.unit)}}}).scrollTop=Ke.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},S.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},S.fx=Ke.prototype.init,S.fx.step={};var Ze,et,tt,nt,rt=/^(?:toggle|show|hide)$/,it=/queueHooks$/;function ot(){et&&(!1===E.hidden&&C.requestAnimationFrame?C.requestAnimationFrame(ot):C.setTimeout(ot,S.fx.interval),S.fx.tick())}function at(){return C.setTimeout(function(){Ze=void 0}),Ze=Date.now()}function st(e,t){var n,r=0,i={height:e};for(t=t?1:0;r<4;r+=2-t)i["margin"+(n=ne[r])]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function ut(e,t,n){for(var r,i=(lt.tweeners[t]||[]).concat(lt.tweeners["*"]),o=0,a=i.length;o<a;o++)if(r=i[o].call(n,t,e))return r}function lt(o,e,t){var n,a,r=0,i=lt.prefilters.length,s=S.Deferred().always(function(){delete u.elem}),u=function(){if(a)return!1;for(var e=Ze||at(),t=Math.max(0,l.startTime+l.duration-e),n=1-(t/l.duration||0),r=0,i=l.tweens.length;r<i;r++)l.tweens[r].run(n);return s.notifyWith(o,[l,n,t]),n<1&&i?t:(i||s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l]),!1)},l=s.promise({elem:o,props:S.extend({},e),opts:S.extend(!0,{specialEasing:{},easing:S.easing._default},t),originalProperties:e,originalOptions:t,startTime:Ze||at(),duration:t.duration,tweens:[],createTween:function(e,t){var n=S.Tween(o,l.opts,e,t,l.opts.specialEasing[e]||l.opts.easing);return l.tweens.push(n),n},stop:function(e){var t=0,n=e?l.tweens.length:0;if(a)return this;for(a=!0;t<n;t++)l.tweens[t].run(1);return e?(s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l,e])):s.rejectWith(o,[l,e]),this}}),c=l.props;for(!function(e,t){var n,r,i,o,a;for(n in e)if(i=t[r=X(n)],o=e[n],Array.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),(a=S.cssHooks[r])&&"expand"in a)for(n in o=a.expand(o),delete e[r],o)n in e||(e[n]=o[n],t[n]=i);else t[r]=i}(c,l.opts.specialEasing);r<i;r++)if(n=lt.prefilters[r].call(l,o,c,l.opts))return m(n.stop)&&(S._queueHooks(l.elem,l.opts.queue).stop=n.stop.bind(n)),n;return S.map(c,ut,l),m(l.opts.start)&&l.opts.start.call(o,l),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always),S.fx.timer(S.extend(u,{elem:o,anim:l,queue:l.opts.queue})),l}S.Animation=S.extend(lt,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return se(n.elem,e,te.exec(t),n),n}]},tweener:function(e,t){m(e)?(t=e,e=["*"]):e=e.match(P);for(var n,r=0,i=e.length;r<i;r++)n=e[r],lt.tweeners[n]=lt.tweeners[n]||[],lt.tweeners[n].unshift(t)},prefilters:[function(e,t,n){var r,i,o,a,s,u,l,c,f="width"in t||"height"in t,p=this,d={},h=e.style,g=e.nodeType&&ae(e),v=Y.get(e,"fxshow");for(r in n.queue||(null==(a=S._queueHooks(e,"fx")).unqueued&&(a.unqueued=0,s=a.empty.fire,a.empty.fire=function(){a.unqueued||s()}),a.unqueued++,p.always(function(){p.always(function(){a.unqueued--,S.queue(e,"fx").length||a.empty.fire()})})),t)if(i=t[r],rt.test(i)){if(delete t[r],o=o||"toggle"===i,i===(g?"hide":"show")){if("show"!==i||!v||void 0===v[r])continue;g=!0}d[r]=v&&v[r]||S.style(e,r)}if((u=!S.isEmptyObject(t))||!S.isEmptyObject(d))for(r in f&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],null==(l=v&&v.display)&&(l=Y.get(e,"display")),"none"===(c=S.css(e,"display"))&&(l?c=l:(le([e],!0),l=e.style.display||l,c=S.css(e,"display"),le([e]))),("inline"===c||"inline-block"===c&&null!=l)&&"none"===S.css(e,"float")&&(u||(p.done(function(){h.display=l}),null==l&&(c=h.display,l="none"===c?"":c)),h.display="inline-block")),n.overflow&&(h.overflow="hidden",p.always(function(){h.overflow=n.overflow[0],h.overflowX=n.overflow[1],h.overflowY=n.overflow[2]})),u=!1,d)u||(v?"hidden"in v&&(g=v.hidden):v=Y.access(e,"fxshow",{display:l}),o&&(v.hidden=!g),g&&le([e],!0),p.done(function(){for(r in g||le([e]),Y.remove(e,"fxshow"),d)S.style(e,r,d[r])})),u=ut(g?v[r]:0,r,p),r in v||(v[r]=u.start,g&&(u.end=u.start,u.start=0))}],prefilter:function(e,t){t?lt.prefilters.unshift(e):lt.prefilters.push(e)}}),S.speed=function(e,t,n){var r=e&&"object"==typeof e?S.extend({},e):{complete:n||!n&&t||m(e)&&e,duration:e,easing:n&&t||t&&!m(t)&&t};return S.fx.off?r.duration=0:"number"!=typeof r.duration&&(r.duration in S.fx.speeds?r.duration=S.fx.speeds[r.duration]:r.duration=S.fx.speeds._default),null!=r.queue&&!0!==r.queue||(r.queue="fx"),r.old=r.complete,r.complete=function(){m(r.old)&&r.old.call(this),r.queue&&S.dequeue(this,r.queue)},r},S.fn.extend({fadeTo:function(e,t,n,r){return this.filter(ae).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(t,e,n,r){var i=S.isEmptyObject(t),o=S.speed(e,n,r),a=function(){var e=lt(this,S.extend({},t),o);(i||Y.get(this,"finish"))&&e.stop(!0)};return a.finish=a,i||!1===o.queue?this.each(a):this.queue(o.queue,a)},stop:function(i,e,o){var a=function(e){var t=e.stop;delete e.stop,t(o)};return"string"!=typeof i&&(o=e,e=i,i=void 0),e&&this.queue(i||"fx",[]),this.each(function(){var e=!0,t=null!=i&&i+"queueHooks",n=S.timers,r=Y.get(this);if(t)r[t]&&r[t].stop&&a(r[t]);else for(t in r)r[t]&&r[t].stop&&it.test(t)&&a(r[t]);for(t=n.length;t--;)n[t].elem!==this||null!=i&&n[t].queue!==i||(n[t].anim.stop(o),e=!1,n.splice(t,1));!e&&o||S.dequeue(this,i)})},finish:function(a){return!1!==a&&(a=a||"fx"),this.each(function(){var e,t=Y.get(this),n=t[a+"queue"],r=t[a+"queueHooks"],i=S.timers,o=n?n.length:0;for(t.finish=!0,S.queue(this,a,[]),r&&r.stop&&r.stop.call(this,!0),e=i.length;e--;)i[e].elem===this&&i[e].queue===a&&(i[e].anim.stop(!0),i.splice(e,1));for(e=0;e<o;e++)n[e]&&n[e].finish&&n[e].finish.call(this);delete t.finish})}}),S.each(["toggle","show","hide"],function(e,r){var i=S.fn[r];S.fn[r]=function(e,t,n){return null==e||"boolean"==typeof e?i.apply(this,arguments):this.animate(st(r,!0),e,t,n)}}),S.each({slideDown:st("show"),slideUp:st("hide"),slideToggle:st("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,r){S.fn[e]=function(e,t,n){return this.animate(r,e,t,n)}}),S.timers=[],S.fx.tick=function(){var e,t=0,n=S.timers;for(Ze=Date.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1);n.length||S.fx.stop(),Ze=void 0},S.fx.timer=function(e){S.timers.push(e),S.fx.start()},S.fx.interval=13,S.fx.start=function(){et||(et=!0,ot())},S.fx.stop=function(){et=null},S.fx.speeds={slow:600,fast:200,_default:400},S.fn.delay=function(r,e){return r=S.fx&&S.fx.speeds[r]||r,e=e||"fx",this.queue(e,function(e,t){var n=C.setTimeout(e,r);t.stop=function(){C.clearTimeout(n)}})},tt=E.createElement("input"),nt=E.createElement("select").appendChild(E.createElement("option")),tt.type="checkbox",y.checkOn=""!==tt.value,y.optSelected=nt.selected,(tt=E.createElement("input")).value="t",tt.type="radio",y.radioValue="t"===tt.value;var ct,ft=S.expr.attrHandle;S.fn.extend({attr:function(e,t){return $(this,S.attr,e,t,1<arguments.length)},removeAttr:function(e){return this.each(function(){S.removeAttr(this,e)})}}),S.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return"undefined"==typeof e.getAttribute?S.prop(e,t,n):(1===o&&S.isXMLDoc(e)||(i=S.attrHooks[t.toLowerCase()]||(S.expr.match.bool.test(t)?ct:void 0)),void 0!==n?null===n?void S.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:null==(r=S.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!y.radioValue&&"radio"===t&&A(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(P);if(i&&1===e.nodeType)while(n=i[r++])e.removeAttribute(n)}}),ct={set:function(e,t,n){return!1===t?S.removeAttr(e,n):e.setAttribute(n,n),n}},S.each(S.expr.match.bool.source.match(/\w+/g),function(e,t){var a=ft[t]||S.find.attr;ft[t]=function(e,t,n){var r,i,o=t.toLowerCase();return n||(i=ft[o],ft[o]=r,r=null!=a(e,t,n)?o:null,ft[o]=i),r}});var pt=/^(?:input|select|textarea|button)$/i,dt=/^(?:a|area)$/i;function ht(e){return(e.match(P)||[]).join(" ")}function gt(e){return e.getAttribute&&e.getAttribute("class")||""}function vt(e){return Array.isArray(e)?e:"string"==typeof e&&e.match(P)||[]}S.fn.extend({prop:function(e,t){return $(this,S.prop,e,t,1<arguments.length)},removeProp:function(e){return this.each(function(){delete this[S.propFix[e]||e]})}}),S.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&S.isXMLDoc(e)||(t=S.propFix[t]||t,i=S.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=S.find.attr(e,"tabindex");return t?parseInt(t,10):pt.test(e.nodeName)||dt.test(e.nodeName)&&e.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),y.optSelected||(S.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),S.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){S.propFix[this.toLowerCase()]=this}),S.fn.extend({addClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){S(this).addClass(t.call(this,e,gt(this)))});if((e=vt(t)).length)while(n=this[u++])if(i=gt(n),r=1===n.nodeType&&" "+ht(i)+" "){a=0;while(o=e[a++])r.indexOf(" "+o+" ")<0&&(r+=o+" ");i!==(s=ht(r))&&n.setAttribute("class",s)}return this},removeClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){S(this).removeClass(t.call(this,e,gt(this)))});if(!arguments.length)return this.attr("class","");if((e=vt(t)).length)while(n=this[u++])if(i=gt(n),r=1===n.nodeType&&" "+ht(i)+" "){a=0;while(o=e[a++])while(-1<r.indexOf(" "+o+" "))r=r.replace(" "+o+" "," ");i!==(s=ht(r))&&n.setAttribute("class",s)}return this},toggleClass:function(i,t){var o=typeof i,a="string"===o||Array.isArray(i);return"boolean"==typeof t&&a?t?this.addClass(i):this.removeClass(i):m(i)?this.each(function(e){S(this).toggleClass(i.call(this,e,gt(this),t),t)}):this.each(function(){var e,t,n,r;if(a){t=0,n=S(this),r=vt(i);while(e=r[t++])n.hasClass(e)?n.removeClass(e):n.addClass(e)}else void 0!==i&&"boolean"!==o||((e=gt(this))&&Y.set(this,"__className__",e),this.setAttribute&&this.setAttribute("class",e||!1===i?"":Y.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;t=" "+e+" ";while(n=this[r++])if(1===n.nodeType&&-1<(" "+ht(gt(n))+" ").indexOf(t))return!0;return!1}});var yt=/\r/g;S.fn.extend({val:function(n){var r,e,i,t=this[0];return arguments.length?(i=m(n),this.each(function(e){var t;1===this.nodeType&&(null==(t=i?n.call(this,e,S(this).val()):n)?t="":"number"==typeof t?t+="":Array.isArray(t)&&(t=S.map(t,function(e){return null==e?"":e+""})),(r=S.valHooks[this.type]||S.valHooks[this.nodeName.toLowerCase()])&&"set"in r&&void 0!==r.set(this,t,"value")||(this.value=t))})):t?(r=S.valHooks[t.type]||S.valHooks[t.nodeName.toLowerCase()])&&"get"in r&&void 0!==(e=r.get(t,"value"))?e:"string"==typeof(e=t.value)?e.replace(yt,""):null==e?"":e:void 0}}),S.extend({valHooks:{option:{get:function(e){var t=S.find.attr(e,"value");return null!=t?t:ht(S.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a="select-one"===e.type,s=a?null:[],u=a?o+1:i.length;for(r=o<0?u:a?o:0;r<u;r++)if(((n=i[r]).selected||r===o)&&!n.disabled&&(!n.parentNode.disabled||!A(n.parentNode,"optgroup"))){if(t=S(n).val(),a)return t;s.push(t)}return s},set:function(e,t){var n,r,i=e.options,o=S.makeArray(t),a=i.length;while(a--)((r=i[a]).selected=-1<S.inArray(S.valHooks.option.get(r),o))&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),S.each(["radio","checkbox"],function(){S.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=-1<S.inArray(S(e).val(),t)}},y.checkOn||(S.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),y.focusin="onfocusin"in C;var mt=/^(?:focusinfocus|focusoutblur)$/,xt=function(e){e.stopPropagation()};S.extend(S.event,{trigger:function(e,t,n,r){var i,o,a,s,u,l,c,f,p=[n||E],d=v.call(e,"type")?e.type:e,h=v.call(e,"namespace")?e.namespace.split("."):[];if(o=f=a=n=n||E,3!==n.nodeType&&8!==n.nodeType&&!mt.test(d+S.event.triggered)&&(-1<d.indexOf(".")&&(d=(h=d.split(".")).shift(),h.sort()),u=d.indexOf(":")<0&&"on"+d,(e=e[S.expando]?e:new S.Event(d,"object"==typeof e&&e)).isTrigger=r?2:3,e.namespace=h.join("."),e.rnamespace=e.namespace?new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=n),t=null==t?[e]:S.makeArray(t,[e]),c=S.event.special[d]||{},r||!c.trigger||!1!==c.trigger.apply(n,t))){if(!r&&!c.noBubble&&!x(n)){for(s=c.delegateType||d,mt.test(s+d)||(o=o.parentNode);o;o=o.parentNode)p.push(o),a=o;a===(n.ownerDocument||E)&&p.push(a.defaultView||a.parentWindow||C)}i=0;while((o=p[i++])&&!e.isPropagationStopped())f=o,e.type=1<i?s:c.bindType||d,(l=(Y.get(o,"events")||Object.create(null))[e.type]&&Y.get(o,"handle"))&&l.apply(o,t),(l=u&&o[u])&&l.apply&&V(o)&&(e.result=l.apply(o,t),!1===e.result&&e.preventDefault());return e.type=d,r||e.isDefaultPrevented()||c._default&&!1!==c._default.apply(p.pop(),t)||!V(n)||u&&m(n[d])&&!x(n)&&((a=n[u])&&(n[u]=null),S.event.triggered=d,e.isPropagationStopped()&&f.addEventListener(d,xt),n[d](),e.isPropagationStopped()&&f.removeEventListener(d,xt),S.event.triggered=void 0,a&&(n[u]=a)),e.result}},simulate:function(e,t,n){var r=S.extend(new S.Event,n,{type:e,isSimulated:!0});S.event.trigger(r,null,t)}}),S.fn.extend({trigger:function(e,t){return this.each(function(){S.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return S.event.trigger(e,t,n,!0)}}),y.focusin||S.each({focus:"focusin",blur:"focusout"},function(n,r){var i=function(e){S.event.simulate(r,e.target,S.event.fix(e))};S.event.special[r]={setup:function(){var e=this.ownerDocument||this.document||this,t=Y.access(e,r);t||e.addEventListener(n,i,!0),Y.access(e,r,(t||0)+1)},teardown:function(){var e=this.ownerDocument||this.document||this,t=Y.access(e,r)-1;t?Y.access(e,r,t):(e.removeEventListener(n,i,!0),Y.remove(e,r))}}});var bt=C.location,wt={guid:Date.now()},Tt=/\?/;S.parseXML=function(e){var t,n;if(!e||"string"!=typeof e)return null;try{t=(new C.DOMParser).parseFromString(e,"text/xml")}catch(e){}return n=t&&t.getElementsByTagName("parsererror")[0],t&&!n||S.error("Invalid XML: "+(n?S.map(n.childNodes,function(e){return e.textContent}).join("\n"):e)),t};var Ct=/\[\]$/,Et=/\r?\n/g,St=/^(?:submit|button|image|reset|file)$/i,kt=/^(?:input|select|textarea|keygen)/i;function At(n,e,r,i){var t;if(Array.isArray(e))S.each(e,function(e,t){r||Ct.test(n)?i(n,t):At(n+"["+("object"==typeof t&&null!=t?e:"")+"]",t,r,i)});else if(r||"object"!==w(e))i(n,e);else for(t in e)At(n+"["+t+"]",e[t],r,i)}S.param=function(e,t){var n,r=[],i=function(e,t){var n=m(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(null==e)return"";if(Array.isArray(e)||e.jquery&&!S.isPlainObject(e))S.each(e,function(){i(this.name,this.value)});else for(n in e)At(n,e[n],t,i);return r.join("&")},S.fn.extend({serialize:function(){return S.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=S.prop(this,"elements");return e?S.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!S(this).is(":disabled")&&kt.test(this.nodeName)&&!St.test(e)&&(this.checked||!pe.test(e))}).map(function(e,t){var n=S(this).val();return null==n?null:Array.isArray(n)?S.map(n,function(e){return{name:t.name,value:e.replace(Et,"\r\n")}}):{name:t.name,value:n.replace(Et,"\r\n")}}).get()}});var Nt=/%20/g,jt=/#.*$/,Dt=/([?&])_=[^&]*/,qt=/^(.*?):[ \t]*([^\r\n]*)$/gm,Lt=/^(?:GET|HEAD)$/,Ht=/^\/\//,Ot={},Pt={},Rt="*/".concat("*"),Mt=E.createElement("a");function It(o){return function(e,t){"string"!=typeof e&&(t=e,e="*");var n,r=0,i=e.toLowerCase().match(P)||[];if(m(t))while(n=i[r++])"+"===n[0]?(n=n.slice(1)||"*",(o[n]=o[n]||[]).unshift(t)):(o[n]=o[n]||[]).push(t)}}function Wt(t,i,o,a){var s={},u=t===Pt;function l(e){var r;return s[e]=!0,S.each(t[e]||[],function(e,t){var n=t(i,o,a);return"string"!=typeof n||u||s[n]?u?!(r=n):void 0:(i.dataTypes.unshift(n),l(n),!1)}),r}return l(i.dataTypes[0])||!s["*"]&&l("*")}function Ft(e,t){var n,r,i=S.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&S.extend(!0,e,r),e}Mt.href=bt.href,S.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:bt.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(bt.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Rt,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":S.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?Ft(Ft(e,S.ajaxSettings),t):Ft(S.ajaxSettings,e)},ajaxPrefilter:It(Ot),ajaxTransport:It(Pt),ajax:function(e,t){"object"==typeof e&&(t=e,e=void 0),t=t||{};var c,f,p,n,d,r,h,g,i,o,v=S.ajaxSetup({},t),y=v.context||v,m=v.context&&(y.nodeType||y.jquery)?S(y):S.event,x=S.Deferred(),b=S.Callbacks("once memory"),w=v.statusCode||{},a={},s={},u="canceled",T={readyState:0,getResponseHeader:function(e){var t;if(h){if(!n){n={};while(t=qt.exec(p))n[t[1].toLowerCase()+" "]=(n[t[1].toLowerCase()+" "]||[]).concat(t[2])}t=n[e.toLowerCase()+" "]}return null==t?null:t.join(", ")},getAllResponseHeaders:function(){return h?p:null},setRequestHeader:function(e,t){return null==h&&(e=s[e.toLowerCase()]=s[e.toLowerCase()]||e,a[e]=t),this},overrideMimeType:function(e){return null==h&&(v.mimeType=e),this},statusCode:function(e){var t;if(e)if(h)T.always(e[T.status]);else for(t in e)w[t]=[w[t],e[t]];return this},abort:function(e){var t=e||u;return c&&c.abort(t),l(0,t),this}};if(x.promise(T),v.url=((e||v.url||bt.href)+"").replace(Ht,bt.protocol+"//"),v.type=t.method||t.type||v.method||v.type,v.dataTypes=(v.dataType||"*").toLowerCase().match(P)||[""],null==v.crossDomain){r=E.createElement("a");try{r.href=v.url,r.href=r.href,v.crossDomain=Mt.protocol+"//"+Mt.host!=r.protocol+"//"+r.host}catch(e){v.crossDomain=!0}}if(v.data&&v.processData&&"string"!=typeof v.data&&(v.data=S.param(v.data,v.traditional)),Wt(Ot,v,t,T),h)return T;for(i in(g=S.event&&v.global)&&0==S.active++&&S.event.trigger("ajaxStart"),v.type=v.type.toUpperCase(),v.hasContent=!Lt.test(v.type),f=v.url.replace(jt,""),v.hasContent?v.data&&v.processData&&0===(v.contentType||"").indexOf("application/x-www-form-urlencoded")&&(v.data=v.data.replace(Nt,"+")):(o=v.url.slice(f.length),v.data&&(v.processData||"string"==typeof v.data)&&(f+=(Tt.test(f)?"&":"?")+v.data,delete v.data),!1===v.cache&&(f=f.replace(Dt,"$1"),o=(Tt.test(f)?"&":"?")+"_="+wt.guid+++o),v.url=f+o),v.ifModified&&(S.lastModified[f]&&T.setRequestHeader("If-Modified-Since",S.lastModified[f]),S.etag[f]&&T.setRequestHeader("If-None-Match",S.etag[f])),(v.data&&v.hasContent&&!1!==v.contentType||t.contentType)&&T.setRequestHeader("Content-Type",v.contentType),T.setRequestHeader("Accept",v.dataTypes[0]&&v.accepts[v.dataTypes[0]]?v.accepts[v.dataTypes[0]]+("*"!==v.dataTypes[0]?", "+Rt+"; q=0.01":""):v.accepts["*"]),v.headers)T.setRequestHeader(i,v.headers[i]);if(v.beforeSend&&(!1===v.beforeSend.call(y,T,v)||h))return T.abort();if(u="abort",b.add(v.complete),T.done(v.success),T.fail(v.error),c=Wt(Pt,v,t,T)){if(T.readyState=1,g&&m.trigger("ajaxSend",[T,v]),h)return T;v.async&&0<v.timeout&&(d=C.setTimeout(function(){T.abort("timeout")},v.timeout));try{h=!1,c.send(a,l)}catch(e){if(h)throw e;l(-1,e)}}else l(-1,"No Transport");function l(e,t,n,r){var i,o,a,s,u,l=t;h||(h=!0,d&&C.clearTimeout(d),c=void 0,p=r||"",T.readyState=0<e?4:0,i=200<=e&&e<300||304===e,n&&(s=function(e,t,n){var r,i,o,a,s=e.contents,u=e.dataTypes;while("*"===u[0])u.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[i].test(r)){u.unshift(i);break}if(u[0]in n)o=u[0];else{for(i in n){if(!u[0]||e.converters[i+" "+u[0]]){o=i;break}a||(a=i)}o=o||a}if(o)return o!==u[0]&&u.unshift(o),n[o]}(v,T,n)),!i&&-1<S.inArray("script",v.dataTypes)&&S.inArray("json",v.dataTypes)<0&&(v.converters["text script"]=function(){}),s=function(e,t,n,r){var i,o,a,s,u,l={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)l[a.toLowerCase()]=e.converters[a];o=c.shift();while(o)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=o,o=c.shift())if("*"===o)o=u;else if("*"!==u&&u!==o){if(!(a=l[u+" "+o]||l["* "+o]))for(i in l)if((s=i.split(" "))[1]===o&&(a=l[u+" "+s[0]]||l["* "+s[0]])){!0===a?a=l[i]:!0!==l[i]&&(o=s[0],c.unshift(s[1]));break}if(!0!==a)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(e){return{state:"parsererror",error:a?e:"No conversion from "+u+" to "+o}}}return{state:"success",data:t}}(v,s,T,i),i?(v.ifModified&&((u=T.getResponseHeader("Last-Modified"))&&(S.lastModified[f]=u),(u=T.getResponseHeader("etag"))&&(S.etag[f]=u)),204===e||"HEAD"===v.type?l="nocontent":304===e?l="notmodified":(l=s.state,o=s.data,i=!(a=s.error))):(a=l,!e&&l||(l="error",e<0&&(e=0))),T.status=e,T.statusText=(t||l)+"",i?x.resolveWith(y,[o,l,T]):x.rejectWith(y,[T,l,a]),T.statusCode(w),w=void 0,g&&m.trigger(i?"ajaxSuccess":"ajaxError",[T,v,i?o:a]),b.fireWith(y,[T,l]),g&&(m.trigger("ajaxComplete",[T,v]),--S.active||S.event.trigger("ajaxStop")))}return T},getJSON:function(e,t,n){return S.get(e,t,n,"json")},getScript:function(e,t){return S.get(e,void 0,t,"script")}}),S.each(["get","post"],function(e,i){S[i]=function(e,t,n,r){return m(t)&&(r=r||n,n=t,t=void 0),S.ajax(S.extend({url:e,type:i,dataType:r,data:t,success:n},S.isPlainObject(e)&&e))}}),S.ajaxPrefilter(function(e){var t;for(t in e.headers)"content-type"===t.toLowerCase()&&(e.contentType=e.headers[t]||"")}),S._evalUrl=function(e,t,n){return S.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},dataFilter:function(e){S.globalEval(e,t,n)}})},S.fn.extend({wrapAll:function(e){var t;return this[0]&&(m(e)&&(e=e.call(this[0])),t=S(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstElementChild)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(n){return m(n)?this.each(function(e){S(this).wrapInner(n.call(this,e))}):this.each(function(){var e=S(this),t=e.contents();t.length?t.wrapAll(n):e.append(n)})},wrap:function(t){var n=m(t);return this.each(function(e){S(this).wrapAll(n?t.call(this,e):t)})},unwrap:function(e){return this.parent(e).not("body").each(function(){S(this).replaceWith(this.childNodes)}),this}}),S.expr.pseudos.hidden=function(e){return!S.expr.pseudos.visible(e)},S.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},S.ajaxSettings.xhr=function(){try{return new C.XMLHttpRequest}catch(e){}};var Bt={0:200,1223:204},$t=S.ajaxSettings.xhr();y.cors=!!$t&&"withCredentials"in $t,y.ajax=$t=!!$t,S.ajaxTransport(function(i){var o,a;if(y.cors||$t&&!i.crossDomain)return{send:function(e,t){var n,r=i.xhr();if(r.open(i.type,i.url,i.async,i.username,i.password),i.xhrFields)for(n in i.xhrFields)r[n]=i.xhrFields[n];for(n in i.mimeType&&r.overrideMimeType&&r.overrideMimeType(i.mimeType),i.crossDomain||e["X-Requested-With"]||(e["X-Requested-With"]="XMLHttpRequest"),e)r.setRequestHeader(n,e[n]);o=function(e){return function(){o&&(o=a=r.onload=r.onerror=r.onabort=r.ontimeout=r.onreadystatechange=null,"abort"===e?r.abort():"error"===e?"number"!=typeof r.status?t(0,"error"):t(r.status,r.statusText):t(Bt[r.status]||r.status,r.statusText,"text"!==(r.responseType||"text")||"string"!=typeof r.responseText?{binary:r.response}:{text:r.responseText},r.getAllResponseHeaders()))}},r.onload=o(),a=r.onerror=r.ontimeout=o("error"),void 0!==r.onabort?r.onabort=a:r.onreadystatechange=function(){4===r.readyState&&C.setTimeout(function(){o&&a()})},o=o("abort");try{r.send(i.hasContent&&i.data||null)}catch(e){if(o)throw e}},abort:function(){o&&o()}}}),S.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),S.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return S.globalEval(e),e}}}),S.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),S.ajaxTransport("script",function(n){var r,i;if(n.crossDomain||n.scriptAttrs)return{send:function(e,t){r=S("<script>").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var _t,zt=[],Ut=/(=)\?(?=&|$)|\?\?/;S.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=zt.pop()||S.expando+"_"+wt.guid++;return this[e]=!0,e}}),S.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Ut.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Ut.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Ut,"$1"+r):!1!==e.jsonp&&(e.url+=(Tt.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||S.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?S(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,zt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((_t=E.implementation.createHTMLDocument("").body).innerHTML="<form></form><form></form>",2===_t.childNodes.length),S.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=N.exec(e))?[t.createElement(i[1])]:(i=xe([e],t,o),o&&o.length&&S(o).remove(),S.merge([],i.childNodes)));var r,i,o},S.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1<s&&(r=ht(e.slice(s)),e=e.slice(0,s)),m(t)?(n=t,t=void 0):t&&"object"==typeof t&&(i="POST"),0<a.length&&S.ajax({url:e,type:i||"GET",dataType:"html",data:t}).done(function(e){o=arguments,a.html(r?S("<div>").append(S.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},S.expr.pseudos.animated=function(t){return S.grep(S.timers,function(e){return t===e.elem}).length},S.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=S.css(e,"position"),c=S(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=S.css(e,"top"),u=S.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,S.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},S.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){S.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===S.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===S.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=S(e).offset()).top+=S.css(e,"borderTopWidth",!0),i.left+=S.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-S.css(r,"marginTop",!0),left:t.left-i.left-S.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===S.css(e,"position"))e=e.offsetParent;return e||re})}}),S.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;S.fn[t]=function(e){return $(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),S.each(["top","left"],function(e,n){S.cssHooks[n]=Fe(y.pixelPosition,function(e,t){if(t)return t=We(e,n),Pe.test(t)?S(e).position()[n]+"px":t})}),S.each({Height:"height",Width:"width"},function(a,s){S.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){S.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return $(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?S.css(e,t,i):S.style(e,t,n,i)},s,n?e:void 0,n)}})}),S.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){S.fn[t]=function(e){return this.on(t,e)}}),S.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),S.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){S.fn[n]=function(e,t){return 0<arguments.length?this.on(n,null,e,t):this.trigger(n)}});var Xt=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;S.proxy=function(e,t){var n,r,i;if("string"==typeof t&&(n=e[t],t=e,e=n),m(e))return r=s.call(arguments,2),(i=function(){return e.apply(t||this,r.concat(s.call(arguments)))}).guid=e.guid=e.guid||S.guid++,i},S.holdReady=function(e){e?S.readyWait++:S.ready(!0)},S.isArray=Array.isArray,S.parseJSON=JSON.parse,S.nodeName=A,S.isFunction=m,S.isWindow=x,S.camelCase=X,S.type=w,S.now=Date.now,S.isNumeric=function(e){var t=S.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},S.trim=function(e){return null==e?"":(e+"").replace(Xt,"")},"function"==typeof define&&define.amd&&define("jquery",[],function(){return S});var Vt=C.jQuery,Gt=C.$;return S.noConflict=function(e){return C.$===S&&(C.$=Gt),e&&C.jQuery===S&&(C.jQuery=Vt),S},"undefined"==typeof e&&(C.jQuery=C.$=S),S}); \ No newline at end of file diff --git a/src/assets/msgList.css b/src/assets/msgList.css new file mode 100644 index 0000000..72d2d1a --- /dev/null +++ b/src/assets/msgList.css @@ -0,0 +1,206 @@ +div{ + display: block; +} +.h1, .h2, .h3, .h4, .h5, .h6, a, abbr, body, cite, dd, dl, dt, h1, h2, h3, h4, h5, h6, iframe, input, li, object, ol, p, pre, span, ul { + font-family: 'Microsoft YaHei','SF Pro Display',Roboto,Noto,Arial,'PingFang SC',sans-serif; +} +a{ + text-decoration: none; + cursor: pointer; +} +ul, li, ol, dl, dt, dd { + list-style: none; +} +div, figure, footer, header, hgroup, html, iframe, img, mark, menu, nav, object, section, span, table, tr, td, th, tbody, tfoot, thead, video { + border: 0; + margin: 0; + padding: 0; +} + + +.my_msg_list{ + position: fixed; + margin-top: 50px; + width: 1400px; + min-height: 400px; + margin-bottom: 20px; +} +.my_msg_list_view{ + position: relative; + margin-left: 100px; + background-color: #fff; + padding: 24px 16px; + -webkit-box-shadow: 0 2px 4px 0 rgba(0,0,0,0.28); + box-shadow: 0 2px 4px 0 rgba(0,0,0,0.28); +min-height: 520px; + box-sizing: border-box; +} +.my_msg_list_box{ + border: 0; + margin: 0; + padding: 0; + box-sizing: border-box; +} +.my_msg_list_con{ + border: 0; + margin: 0; + padding: 0; + box-sizing: border-box; +} +.my_msg_list_title{ + width: 100%; + margin: 0; + font-size: 14px; + color: #3d3d3d; + margin-bottom: 8px; + display: block; + overflow: hidden; + zoom: 1; + box-sizing: border-box; +} +.fr{ + float: right!important; + display: inline-block; + color: #4a90e2; +} +.line{ + display: inline-block; + height: 12px; + margin: 2px 12px; + border-right: 1px solid #979797; +} + +.msg_list{ + padding: 0 0 0 15px; + min-height: 370px; + box-sizing: border-box; +} +.msg_list_ul{ + font-size: 14px; + vertical-align: baseline; + margin: 0; + padding: 0; +} +.msg_list_ul_li{ + position: relative; + padding: 16px 0; + border-bottom: 1px solid #e0e0e0; +} +.msg_type{ + display: inline-block; + height: 40px; + line-height: 40px; + padding: 0 5px; + color: #4d4d4d; + font-size: 25px; + text-align: center; + background-color: #fff; + border: 1px solid #e0e0e0; + vertical-align: top; +} +.msg_info_box{ + width: 100%; + color: #4d4d4d; + display: inline-block; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + vertical-align: middle; +} +.msg_title{ + display: inline-block; + width: 85%; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + vertical-align: middle; +} +.options-f{ + width: 16%; + height: 20px; + margin: 0; + margin-top: -20px; + padding: 0; +} + +.msg_delete{ + width: 10px; + height: 10px; + float: right; +} +.msg_content{ + margin-top: 15px; + margin-bottom: -16px; + padding: 15px; + background-color: #f7f7f7; + font-size: 14px; + color: #4d4d4d; + line-height: 22px; +} + +.page-box{ + width: 100%; + margin: 32px 0 20px; + text-align: center; + border-top-color: initial; + border-right-color: initial; + border-bottom-color: initial; + border-left-color: initial; +} +.ule { + list-style-type: none; + margin: 0; + padding: 0; + overflow: hidden; +} +.lie { + width: 23%; + display: inline-block; + font: 13px sans-serif; +} +.lie a { + display: block; + color: rgb(39, 124, 184); + text-align: center; + padding: 14px 70px; + text-decoration: none; +} +/*鼠标移动到选项上修改背景颜色 */ +.lie a:hover { + background-color: #e3e3f5; +} +.ula { + width: 100%; + list-style-type: none; + margin: 0; + padding: 0; + overflow: hidden; +} +.lia { + width: 23%; + display: inline-block; + font: 13px sans-serif; +} +.lia a { + display: block; + font-size: larger; + color: rgb(0, 0, 0); + text-align: center; + padding: 14px 50px; + text-decoration: none; +} +/*鼠标移动到选项上修改背景颜色 */ +.lia a:hover { + background-color: #b7b7b7; +} +.square{ + width:200px; + + height:5px; + + border:1px solid transparent; + + background: #06b81a; + } + + -- 2.34.1