(window.webpackJsonp=window.webpackJsonp||[]).push([[2],{196:function(t,e,n){t.exports={}},203:function(t,e,n){t.exports={}},204:function(t,e,n){t.exports={}},205:function(t,e,n){t.exports={}},214:function(t,e,n){t.exports={}},217:function(t,e,n){"use strict";n(196)},234:function(t,e,n){"use strict";n(203)},235:function(t,e,n){"use strict";n(204)},243:function(t,e,n){"use strict";n(205)},303:function(t,e,n){"use strict";n(214)},305:function(t,e,n){var map={"./en/basics/download.md":[306,8],"./en/basics/help.md":[307,9],"./en/basics/import.md":[308,10],"./en/basics/inspiration.md":[309,11],"./en/basics/release-note/5-2-0.md":[310,12],"./en/basics/release-note/5-3-0.md":[311,13],"./en/basics/release-note/5-4-0.md":[312,14],"./en/basics/release-note/v5-feature.md":[313,15],"./en/basics/release-note/v5-upgrade-guide.md":[314,16],"./en/best-practices/aria.md":[315,17],"./en/best-practices/canvas-vs-svg.md":[316,18],"./en/best-practices/design/color-enhance.md":[317,19],"./en/best-practices/mobile.md":[318,20],"./en/best-practices/specification/bar/basic-bar.md":[319,21],"./en/best-practices/specification/bar/bi-directional-bar.md":[320,22],"./en/best-practices/specification/bar/grouped-bar.md":[321,23],"./en/best-practices/specification/bar/stacked-bar.md":[322,24],"./en/best-practices/specification/funnel.md":[323,25],"./en/best-practices/specification/gauge.md":[324,26],"./en/best-practices/specification/line/area.md":[325,27],"./en/best-practices/specification/line/basic-line.md":[326,28],"./en/best-practices/specification/line/stacked-area.md":[327,29],"./en/best-practices/specification/pie/basic-pie.md":[328,30],"./en/best-practices/specification/radar.md":[329,31],"./en/best-practices/specification/scatter/bubble.md":[330,32],"./en/best-practices/specification/scatter/scatter.md":[331,33],"./en/concepts/axis.md":[332,34],"./en/concepts/chart-size.md":[333,35],"./en/concepts/coordinate.md":[334,36],"./en/concepts/data-transform.md":[335,37],"./en/concepts/dataset.md":[336,38],"./en/concepts/event.md":[337,39],"./en/concepts/legend.md":[338,40],"./en/concepts/options.md":[339,41],"./en/concepts/series.md":[340,42],"./en/concepts/style.md":[341,43],"./en/concepts/tooltip.md":[342,44],"./en/concepts/visual-map.md":[343,45],"./en/get-started.md":[344,46],"./en/how-to/animation/transition.md":[345,47],"./en/how-to/chart-types/bar/bar-race.md":[346,48],"./en/how-to/chart-types/bar/basic-bar.md":[347,49],"./en/how-to/chart-types/bar/polar-bar.md":[348,50],"./en/how-to/chart-types/bar/stacked-bar.md":[349,51],"./en/how-to/chart-types/bar/waterfall.md":[350,52],"./en/how-to/chart-types/line/area-line.md":[351,53],"./en/how-to/chart-types/line/basic-line.md":[352,54],"./en/how-to/chart-types/line/smooth-line.md":[353,55],"./en/how-to/chart-types/line/stacked-line.md":[354,56],"./en/how-to/chart-types/line/step-line.md":[355,57],"./en/how-to/chart-types/pie/basic-pie.md":[356,58],"./en/how-to/chart-types/pie/doughnut.md":[357,59],"./en/how-to/chart-types/pie/rose.md":[358,60],"./en/how-to/chart-types/scatter/basic-scatter.md":[359,61],"./en/how-to/cross-platform/server.md":[360,62],"./en/how-to/data/drilldown.md":[361,63],"./en/how-to/data/dynamic-data.md":[362,64],"./en/how-to/interaction/coarse-pointer.md":[363,65],"./en/how-to/interaction/drag.md":[364,66],"./en/how-to/label/rich-text.md":[365,67],"./en/meta/edit-guide.md":[366,68],"./zh/basics/download.md":[367,69],"./zh/basics/help.md":[368,70],"./zh/basics/import.md":[369,71],"./zh/basics/inspiration.md":[370,72],"./zh/basics/release-note/5-2-0.md":[371,73],"./zh/basics/release-note/5-3-0.md":[372,74],"./zh/basics/release-note/5-4-0.md":[373,75],"./zh/basics/release-note/v5-feature.md":[374,76],"./zh/basics/release-note/v5-upgrade-guide.md":[375,77],"./zh/basics/resource.md":[376,78],"./zh/best-practices/aria.md":[377,79],"./zh/best-practices/canvas-vs-svg.md":[378,80],"./zh/best-practices/design/color-enhance.md":[379,81],"./zh/best-practices/mobile.md":[380,82],"./zh/best-practices/specification/bar/basic-bar.md":[381,83],"./zh/best-practices/specification/bar/bi-directional-bar.md":[382,84],"./zh/best-practices/specification/bar/grouped-bar.md":[383,85],"./zh/best-practices/specification/bar/stacked-bar.md":[384,86],"./zh/best-practices/specification/funnel.md":[385,87],"./zh/best-practices/specification/gauge.md":[386,88],"./zh/best-practices/specification/line/area.md":[387,89],"./zh/best-practices/specification/line/basic-line.md":[388,90],"./zh/best-practices/specification/line/stacked-area.md":[389,91],"./zh/best-practices/specification/pie/basic-pie.md":[390,92],"./zh/best-practices/specification/radar.md":[391,93],"./zh/best-practices/specification/scatter/bubble.md":[392,94],"./zh/best-practices/specification/scatter/scatter.md":[393,95],"./zh/concepts/axis.md":[394,96],"./zh/concepts/chart-size.md":[395,97],"./zh/concepts/coordinate.md":[396,98],"./zh/concepts/data-transform.md":[397,99],"./zh/concepts/dataset.md":[398,100],"./zh/concepts/event.md":[399,101],"./zh/concepts/legend.md":[400,102],"./zh/concepts/options.md":[401,103],"./zh/concepts/series.md":[402,104],"./zh/concepts/style.md":[403,105],"./zh/concepts/tooltip.md":[404,106],"./zh/concepts/visual-map.md":[405,107],"./zh/get-started.md":[406,108],"./zh/how-to/animation/transition.md":[407,109],"./zh/how-to/animation/universal-transition.md":[408,110],"./zh/how-to/chart-types/bar/bar-race.md":[409,111],"./zh/how-to/chart-types/bar/basic-bar.md":[410,112],"./zh/how-to/chart-types/bar/polar-bar.md":[411,113],"./zh/how-to/chart-types/bar/stacked-bar.md":[412,114],"./zh/how-to/chart-types/bar/waterfall.md":[413,115],"./zh/how-to/chart-types/line/area-line.md":[414,116],"./zh/how-to/chart-types/line/basic-line.md":[415,117],"./zh/how-to/chart-types/line/smooth-line.md":[416,118],"./zh/how-to/chart-types/line/stacked-line.md":[417,119],"./zh/how-to/chart-types/line/step-line.md":[418,120],"./zh/how-to/chart-types/pie/basic-pie.md":[419,121],"./zh/how-to/chart-types/pie/doughnut.md":[420,122],"./zh/how-to/chart-types/pie/rose.md":[421,123],"./zh/how-to/chart-types/scatter/basic-scatter.md":[422,124],"./zh/how-to/connect.md":[423,125],"./zh/how-to/cross-platform/baidu-app.md":[424,126],"./zh/how-to/cross-platform/server.md":[425,127],"./zh/how-to/cross-platform/wechat-app.md":[426,128],"./zh/how-to/data/drilldown.md":[427,129],"./zh/how-to/data/dynamic-data.md":[428,130],"./zh/how-to/interaction/coarse-pointer.md":[429,131],"./zh/how-to/interaction/drag.md":[430,132],"./zh/how-to/label/rich-text.md":[431,133],"./zh/how-to/mobile.md":[432,134],"./zh/meta/edit-guide.md":[433,135],"./zh/meta/writing.md":[434,136]};function c(t){if(!n.o(map,t))return Promise.resolve().then((function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}));var e=map[t],c=e[0];return n.e(e[1]).then((function(){return n(c)}))}c.keys=function(){return Object.keys(map)},c.id=305,t.exports=c},436:function(t,e,n){"use strict";n.r(e);var c=n(2),o=(n(27),n(45),n(108),n(49),n(0)),r=n.n(o),l=n(191),d=(n(215),n(216)),h=(n(142),n(107)),m=Object(l.c)({props:{width:{type:[String,Number],default:"100%"},height:{type:[String,Number],default:"350"},src:String},setup:function(t,e){var n=Object(l.a)((function(){return h.a.exampleViewPath.replace("${lang}",e.root.$i18n.locale)+t.src})),c=Object(l.f)("");return{finalSrc:c,visibilityChanged:function(t){t&&(c.value=n.value)}}}}),f=n(7),v=Object(f.a)(m,(function(){var t=this,e=t.$createElement;return(t._self._c||e)("iframe",{directives:[{name:"observe-visibility",rawName:"v-observe-visibility",value:t.visibilityChanged,expression:"visibilityChanged"}],attrs:{width:t.width||200,height:t.height||200,src:t.finalSrc}})}),[],!1,null,null,null).exports,w=(n(36),r.a.extend({props:{type:{type:String,default:"info",validator:function(t){return["info","success","warning","danger"].includes(t)}}}})),z=(n(217),Object(f.a)(w,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("blockquote",{class:"md-alert md-alert-"+t.type},[n("p",[t._t("default")],2)])}),[],!1,null,"baf1bad2",null).exports),y=(n(17),n(218)),O=(n(219),n(220)),k=(n(197),n(198),n(199),n(28),n(29),n(20),n(63),{});var j=n(221),C=n(222),_=n.n(C),x=n(192),S=n(16);function P(){var t={},e={},n=1;function c(t,c){var o,time,l=(o=t,time=c,h.getZr().animation.animate({val:0},{loop:!1}).when(time,{val:1}).during((function(){h.getZr().wakeUp()})).done((function(){r.a.nextTick(o)})).start());return e[n]=l,n++}function o(t,c){var o,time,l=(o=t,time=c,h.getZr().animation.animate({val:0},{loop:!0}).when(time,{val:1}).during((function(t,e){h.getZr().wakeUp(),1===e&&r.a.nextTick(o)})).start());return e[n]=l,n++}function l(t){var n=e[t];n&&(h.getZr().animation.removeAnimator(n),delete e[t])}function d(t){l(t)}var h,m=[];return{resize:function(){h&&h.resize()},dispose:function(){h&&(h.dispose(),h=null)},getDataURL:function(){return h.getDataURL({pixelRatio:2,excludeComponents:["toolbox"]})},getOption:function(){return h.getOption()},getInstance:function(){return h},pause:function(){h&&h.getZr().animation.pause()},resume:function(){h&&h.getZr().animation.resume()},run:function(n,code,r){var f,v,w;r=r||{},h||(h=echarts.init(n,r.darkMode?"dark":"",{renderer:r.renderer,useDirtyRect:r.useDirtyRect}),v=(f=h).on,w=f.setOption,f.on=function(t){var e=v.apply(f,arguments);return m.push(t),e},f.setOption=function(){return w.apply(this,arguments)}),function(){for(var t in e)e.hasOwnProperty(t)&&l(t)}(),function(t){m.forEach((function(e){t&&t.off(e)})),m.length=0}(h),t.config=null;var option=new Function("myChart","app","setTimeout","setInterval","clearTimeout","clearInterval","var option;\n"+code+"\nreturn option;")(h,t,c,o,l,d);if(option&&"object"===Object(S.a)(option)){var z=+new Date;h.setOption(option,!0),+new Date-z}}}}var $=n(233),E=n.n($),R=Object(l.c)({components:{},props:{source:{type:String}},setup:function(t){var e=Object(l.f)(null),n=Object(l.f)(!1);return Object(l.d)((function(){new E.a(e.value,{text:function(e){return t.source}}).on("success",(function(t){t.clearSelection(),n.value=!0,window.setTimeout((function(){n.value=!1}),2e3)}))})),{clipboardChecked:n,copyButton:e}}}),T=(n(234),Object(f.a)(R,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{ref:"copyButton",staticClass:"clipboard"},[t.clipboardChecked?n("svg",{staticClass:"h-6 w-6",attrs:{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"}},[n("path",{attrs:{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"}})]):n("svg",{staticClass:"h-6 w-6",attrs:{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"}},[n("svg",{staticClass:"h-6 w-6",attrs:{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"}},[n("path",{attrs:{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M8 5H6a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2v-1M8 5a2 2 0 002 2h2a2 2 0 002-2M8 5a2 2 0 012-2h2a2 2 0 012 2m0 0h2a2 2 0 012 2v3m2 4H10m0 0l3-3m-3 3l3 3"}})])])])}),[],!1,null,"479657ca",null).exports);function M(){return"undefined"==typeof echarts?(t=["https://fastly.jsdelivr.net/npm/echarts/dist/echarts.min.js"],Promise.all(t.map((function(t){return"string"==typeof t?{url:t,type:t.match(/\.css$/)?"css":"js"}:t})).map((function(t){if(k[t.url])return k[t.url];var e=new Promise((function(e,n){if("js"===t.type){var script=document.createElement("script");script.src=t.url,script.async=!1,script.onload=function(){e(null)},script.onerror=function(){n()},document.body.appendChild(script)}else if("css"===t.type){var link=document.createElement("link");link.rel="stylesheet",link.href=t.url,link.onload=function(){e(null)},link.onerror=function(){n()},document.body.appendChild(link)}}));return k[t.url]=e,e})))).then((function(){})):Promise.resolve();var t}var D=Object(l.c)({components:{PrismEditor:y.a,CodeBlockCopyClipboard:T},props:{lang:{type:String,default:"js"},code:{type:String},layout:{type:String,default:"tb",validator:function(t){return["lr","tb","rl","bt"].includes(t)}},height:{type:Number},readOnly:{type:Boolean,default:!1}},setup:function(t,e){var n,c=Object(l.f)(x.a(t.code)),o=Object(l.f)(null),r=Object(l.f)(null);function d(){n&&n.resize()}var h=_()((function(){t.height&&(r.value.style.height=t.height+"px"),M().then((function(){n||(Object(j.a)(Object(l.g)(o),d),n=P());try{Object(l.g)(o)&&n.run(Object(l.g)(o),Object(l.g)(c))}catch(t){console.error(t)}}))}),500,{trailing:!0});return Object(l.h)(c,(function(){h()})),Object(l.e)((function(){Object(j.b)(Object(l.g)(o),d)})),{innerCode:c,previewContainer:o,container:r,highlighter:function(code){return Object(O.highlight)(code,O.languages[t.lang]||O.languages.js)},visibilityChanged:function(t){t?n?n.resume():h():n&&n.pause()}}}}),N=(n(235),Object(f.a)(D,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.innerCode?n("div",{directives:[{name:"observe-visibility",rawName:"v-observe-visibility",value:t.visibilityChanged,expression:"visibilityChanged"}],ref:"container",class:"md-live layout-"+t.layout},[n("div",{staticClass:"md-live-editor"},[n("div",{staticClass:"md-live-editor-container"},[n("prism-editor",{attrs:{highlight:t.highlighter,readonly:t.readOnly},model:{value:t.innerCode,callback:function(e){t.innerCode=e},expression:"innerCode"}})],1),t._v(" "),n("div",{staticClass:"md-live-tag"},[t._v("live")]),t._v(" "),n("code-block-copy-clipboard",{attrs:{source:t.innerCode}})],1),t._v(" "),n("div",{ref:"previewContainer",staticClass:"md-live-preview"})]):t._e()}),[],!1,null,null,null).exports),L=n(236),B=n.n(L),H=(n(237),n(238),n(239),n(240),n(241),n(242),/^(diff)-([\w-]+)/i);var U=Object(l.c)({components:{CodeBlockCopyClipboard:T},props:{lang:{type:String,default:"js"},code:{type:String},lineHighlights:String,fileName:String},setup:function(t,e){var n=Object(l.f)(x.a(t.code)),c=Object(l.a)((function(){return function(t,e){var n="",c=(t=t||"").match(H);c&&(t=c[2],n=B.a.languages.diff),t="vue"===t?"html":t,n||(n=B.a.languages[t]);var o=c?"diff-".concat(t):t,code=n?B.a.highlight(e,n,o):e;return t&&n||(t="text",code=code.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#039;")),{lang:t,code:code}}(t.lang,n.value)}));return{rawCode:n,highlightResult:c}}}),I=(n(243),Object(f.a)(U,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"md-code-block"},[n("div",{staticClass:"nuxt-content-highlight"},[n("pre",{class:"language-"+t.highlightResult.lang+" line-numbers"},[n("code",{domProps:{innerHTML:t._s(t.highlightResult.code)}})])]),t._v(" "),t.fileName?n("span",{staticClass:"filename"},[t._v(t._s(t.fileName))]):t._e(),t._v(" "),n("code-block-copy-clipboard",{attrs:{source:t.rawCode}})],1)}),[],!1,null,null,null).exports),Z=(n(244),Object(l.c)({props:{link:String},setup:function(t){return{fullLink:Object(l.a)((function(){return h.a.optionPath+t.link}))}}})),A=Object(f.a)(Z,(function(){var t=this,e=t.$createElement;return(t._self._c||e)("a",{attrs:{href:t.fullLink,target:"_blank"}},[t._v(t._s(t.link))])}),[],!1,null,null,null).exports;r.a.use(l.b),r.a.component("md-example",v),r.a.component("md-alert",z),r.a.component("md-live",N),r.a.component("md-code-block",I),r.a.component("md-option",A),r.a.directive("observe-visibility",d.a);var G=n(246),V=n.n(G),F=n(302),J={"contents/zh/basics/resource.md":["Ovilia","pissang"],"contents/.prettierrc":["pissang"],"contents/en/basics/download.md":["plainheart","Ovilia","pissang","zachary-svoboda-accesso"],"contents/en/basics/release-note/5-4-0.md":["Ovilia"],"contents/en/how-to/animation/transition.md":["pissang"],"contents/en/best-practices/specification/line/stacked-area.md":["pissang"],"contents/en/best-practices/specification/gauge.md":["pissang"],"contents/en/how-to/chart-types/bar/bar-race.md":["Ovilia","pissang"],"contents/en/concepts/visual-map.md":["KrzysztofMadejski","pissang"],"contents/en/concepts/legend.md":["pissang"],"contents/en/how-to/chart-types/bar/stacked-bar.md":["pissang"],"contents/en/concepts/data-transform.md":["plainheart","100pah","pissang","shangchen0531"],"contents/en/how-to/data/drilldown.md":["pissang"],"contents/en/how-to/label/rich-text.md":["plainheart","TSinChen","pissang"],"contents/en/how-to/chart-types/line/smooth-line.md":["pissang"],"contents/en/how-to/chart-types/line/step-line.md":["pissang"],"contents/en/how-to/chart-types/scatter/basic-scatter.md":["pissang"],"contents/en/best-practices/specification/line/area.md":["pissang"],"contents/zh/basics/help.md":["Ovilia","plainheart","100pah","pissang"],"contents/zh/best-practices/specification/line/area.md":["pissang"],"contents/zh/basics/release-note/v5-feature.md":["pissang","plainheart","jiangmaniu","LuckyHookin"],"contents/en/meta/edit-guide.md":["pissang"],"contents/zh/best-practices/specification/radar.md":["pissang"],"contents/zh/best-practices/specification/scatter/scatter.md":["pissang"],"contents/zh/how-to/animation/transition.md":["pissang"],"contents/zh/concepts/dataset.md":["pissang","plainheart","100pah","Ovilia"],"contents/zh/concepts/options.md":["Ovilia"],"contents/zh/get-started.md":["Ovilia","pissang","zxx0006"],"contents/zh/basics/download.md":["pissang","plainheart","Ovilia","100pah"],"contents/zh/best-practices/specification/bar/grouped-bar.md":["pissang"],"contents/en/best-practices/specification/scatter/scatter.md":["pissang"],"contents/zh/concepts/axis.md":["pissang","Ovilia","plainheart","Essentric"],"contents/zh/best-practices/specification/line/stacked-area.md":["pissang"],"contents/zh/concepts/visual-map.md":["Ovilia","plainheart","pissang"],"contents/zh/how-to/interaction/drag.md":["pissang"],"contents/zh/how-to/chart-types/line/smooth-line.md":["pissang"],"contents/zh/how-to/cross-platform/server.md":["Ovilia","pissang"],"contents/zh/how-to/chart-types/line/area-line.md":["pissang"],"contents/zh/meta/edit-guide.md":["pissang"],"contents/zh/how-to/cross-platform/wechat-app.md":["pissang"],"contents/en/basics/import.md":["plainheart","pissang","aimuz","ikeq","zachary-svoboda-accesso"],"contents/zh/concepts/coordinate.md":["Ovilia"],"contents/en/how-to/chart-types/line/basic-line.md":["pissang"],"contents/en/best-practices/specification/radar.md":["pissang"],"contents/zh/best-practices/specification/funnel.md":["pissang"],"contents/en/basics/help.md":["plainheart","pissang"],"contents/en/best-practices/specification/scatter/bubble.md":["pissang"],"contents/en/best-practices/specification/pie/basic-pie.md":["pissang"],"contents/en/how-to/chart-types/pie/doughnut.md":["plainheart","pissang"],"contents/en/best-practices/specification/bar/bi-directional-bar.md":["pissang"],"contents/en/basics/release-note/v5-feature.md":["pissang","timonla"],"contents/en/basics/inspiration.md":["pissang","dbgee","plainheart"],"contents/en/best-practices/specification/line/basic-line.md":["pissang"],"contents/en/concepts/chart-size.md":["pissang","plainheart","ppd0705"],"contents/en/best-practices/specification/funnel.md":["pissang"],"contents/en/how-to/chart-types/bar/waterfall.md":["plainheart","pissang"],"contents/en/concepts/style.md":["plainheart","KrzysztofMadejski","pissang","fuchunhui","zachary-svoboda-accesso"],"contents/en/best-practices/specification/bar/stacked-bar.md":["pissang"],"contents/en/how-to/chart-types/line/stacked-line.md":["vincentbernat","pissang","omkar787"],"contents/en/how-to/interaction/coarse-pointer.md":["Ovilia","plainheart"],"contents/zh/best-practices/specification/scatter/bubble.md":["pissang"],"contents/en/best-practices/design/color-enhance.md":["pissang"],"contents/zh/best-practices/specification/line/basic-line.md":["pissang"],"contents/zh/basics/inspiration.md":["Ovilia","pissang"],"contents/zh/concepts/event.md":["pissang","Ovilia","plainheart","100pah"],"contents/en/best-practices/specification/bar/basic-bar.md":["pissang"],"contents/en/concepts/dataset.md":["plainheart","pissang","Ovilia","100pah","Bruce20190410"],"contents/en/how-to/cross-platform/server.md":["Ovilia","pissang","balloon72"],"contents/zh/best-practices/specification/bar/stacked-bar.md":["pissang"],"contents/zh/how-to/chart-types/bar/basic-bar.md":["plainheart","pissang","tanjiasong005"],"contents/en/basics/release-note/v5-upgrade-guide.md":["Ovilia","fuchunhui","pissang"],"contents/en/basics/release-note/5-3-0.md":["pissang","Ovilia","plainheart"],"contents/en/how-to/chart-types/bar/basic-bar.md":["plainheart","pissang"],"contents/zh/basics/release-note/5-3-0.md":["pissang","Ovilia","plainheart"],"contents/zh/basics/release-note/v5-upgrade-guide.md":["pissang","Ovilia","fredricen"],"contents/en/how-to/data/dynamic-data.md":["yhoiseth","pissang","balloon72"],"contents/en/how-to/chart-types/pie/basic-pie.md":["pissang"],"contents/zh/best-practices/design/color-enhance.md":["pissang"],"contents/zh/concepts/data-transform.md":["pissang","100pah","plainheart","idaibin","shangchen0531","meishijia"],"contents/en/best-practices/aria.md":["pissang","Ovilia","julien-deramond","zachary-svoboda-accesso"],"contents/zh/best-practices/canvas-vs-svg.md":["plainheart","pissang","Chengxi9","btea"],"contents/en/concepts/event.md":["pissang","Ovilia","100pah"],"contents/zh/basics/release-note/5-4-0.md":["Ovilia"],"contents/en/basics/release-note/5-2-0.md":["pissang","Ovilia"],"contents/zh/concepts/legend.md":["pissang","Ovilia","Geoffyscat"],"contents/en/how-to/chart-types/pie/rose.md":["pissang"],"contents/en/best-practices/mobile.md":["pissang"],"contents/zh/concepts/chart-size.md":["pissang","Ovilia","plainheart","ppd0705"],"contents/zh/best-practices/aria.md":["Ovilia","plainheart","pissang"],"contents/zh/best-practices/specification/pie/basic-pie.md":["pissang"],"contents/zh/how-to/chart-types/line/stacked-line.md":["vincentbernat","pissang"],"contents/zh/how-to/chart-types/bar/bar-race.md":["Ovilia","pissang"],"contents/zh/how-to/chart-types/pie/rose.md":["pissang"],"contents/zh/posts.yml":["pissang","Ovilia"],"contents/zh/how-to/chart-types/line/step-line.md":["pissang"],"contents/zh/how-to/chart-types/pie/doughnut.md":["pissang","guda-art"],"contents/zh/how-to/connect.md":["pissang"],"contents/zh/how-to/interaction/coarse-pointer.md":["Ovilia","plainheart"],"contents/zh/how-to/mobile.md":["pissang"],"contents/zh/how-to/label/rich-text.md":["plainheart","pissang"],"contents/zh/how-to/data/dynamic-data.md":["pissang","jishen027"],"contents/zh/how-to/chart-types/bar/polar-bar.md":["pissang"],"contents/zh/how-to/chart-types/bar/stacked-bar.md":["ArisLittle","pissang"],"contents/zh/how-to/chart-types/bar/waterfall.md":["robyle","pissang"],"contents/zh/how-to/chart-types/scatter/basic-scatter.md":["pissang"],"contents/zh/how-to/chart-types/pie/basic-pie.md":["pissang"],"contents/zh/how-to/cross-platform/baidu-app.md":["Ovilia","vincentbernat","pissang"],"contents/zh/meta/writing.md":["Ovilia","pissang"],"contents/zh/how-to/data/drilldown.md":["pissang"],"contents/zh/how-to/animation/universal-transition.md":["pissang"],"contents/zh/basics/release-note/5-2-0.md":["pissang","Ovilia"],"contents/zh/best-practices/specification/bar/bi-directional-bar.md":["pissang"],"contents/zh/best-practices/mobile.md":["pissang"],"contents/zh/concepts/style.md":["pissang","plainheart","fuchunhui","1335951413"],"contents/en/concepts/axis.md":["pissang"],"contents/zh/best-practices/specification/gauge.md":["pissang"],"contents/zh/concepts/tooltip.md":["Ovilia"],"contents/en/posts.yml":["pissang","Ovilia"],"contents/en/best-practices/specification/bar/grouped-bar.md":["pissang"],"contents/en/best-practices/canvas-vs-svg.md":["plainheart","pissang"],"contents/en/how-to/chart-types/bar/polar-bar.md":["pissang"],"contents/en/how-to/chart-types/line/area-line.md":["pissang"],"contents/zh/best-practices/specification/bar/basic-bar.md":["pissang"],"contents/zh/concepts/series.md":["Ovilia"],"contents/zh/basics/import.md":["pissang","plainheart","michaelxiaohan","aimuz","vueadmin","gugujigua","Yechuanjie"],"contents/en/get-started.md":["plainheart","Ovilia","randyl","pissang"],"contents/zh/how-to/chart-types/line/basic-line.md":["pissang"],"contents/en/how-to/interaction/drag.md":["pissang"],"contents/en/concepts/series.md":["huanghan01"],"contents/en/concepts/options.md":["huanghan01"],"contents/en/concepts/tooltip.md":["huanghan01"],"contents/en/concepts/coordinate.md":["huanghan01"]};n(143);var K=Object(l.c)({props:{path:String},setup:function(t){return{contributors:Object(l.a)((function(){return J["contents/".concat(t.path||"",".md")]})),sourcePath:Object(l.a)((function(){return(e=t.path).endsWith(".md")||(e+=".md"),n&&(e+="#".concat(decodeURIComponent(n))),"https://github.com/".concat(h.a.gitRepo,"/tree/master/contents/").concat(e);var e,n}))}}}),W=(n(303),Object(f.a)(K,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"post-contributors"},[n("h3",[n("span",{staticClass:"inline-block align-middle"},[t._v(t._s(t.$t("contributorsWithThisDocument")))]),t._v(" "),n("a",{staticClass:"inline-block align-middle text-sm",attrs:{target:"_blank",href:t.sourcePath,title:t.$t("editInThisDocumentTip")}},[n("svg",{staticClass:"h-8 w-8 inline-block align-middle",attrs:{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"}},[n("path",{attrs:{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M11 5H6a2 2 0 00-2 2v11a2 2 0 002 2h11a2 2 0 002-2v-5m-1.414-9.414a2 2 0 112.828 2.828L11.828 15H9v-2.828l8.586-8.586z"}})]),t._v(" "),n("span",{staticClass:"inline-block align-middle"},[t._v(t._s(t.$t("editInGithub")))])])]),t._v(" "),t.contributors&&t.contributors.length?n("div",{staticClass:"post-contributors-list"},t._l(t.contributors,(function(e){return n("a",{key:e,staticClass:"post-contributor",attrs:{href:"https://github.com/"+e,target:"_blank"}},[n("img",{attrs:{alt:e,src:"https://avatars.githubusercontent.com/"+e+"?size=60",loading:"lazy"}}),t._v(" "),n("span",[t._v(t._s(e))])])})),0):t._e()])}),[],!1,null,null,null).exports),Y={functional:!0,props:{content:String},render:function(t,e){return t({template:"<article>"+e.props.content+"</article>"})}},Q=n(304),X=n.n(Q);function tt(t){return t.replace(/^```(\w+?)\s+live\s*({.*?})?\s*?\n([\s\S]+?)^```/gm,(function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"js",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"{}",code=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"";e=e.trim(),n=n.trim()||"{}";var c=x.b(code.trim(),!0);return'<md-live lang="'.concat(e,'" code="\'').concat(c,'\'" v-bind="').concat(n,'" />')}))}function et(t){return t.replace(/^```(\w+?)\s*({.*?})?\s*?\n([\s\S]+?)^```/gm,(function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"js",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",code=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"";e=e.trim();var c=x.b(code.trim(),!0);return'<md-code-block lang="'.concat(e,'" code="\'').concat(c,"'\" line-highlights=\"'").concat(n,"'\" />")}))}function nt(t,e){return["optionPath","mainSitePath","exampleViewPath","exampleEditorPath"].forEach((function(p){var n=h.a[p].replace("${lang}",e);t=t.replace(new RegExp("\\$\\{"+p+"\\}","g"),n)})),t=t.replace(/\$\{lang\}/g,e)}function at(t,e){for(var n,i=0,c=t.length;i<c;i++)if((n=t[i]).dir===e)return n}function st(t,path){for(var e,n=[],c=path.split("/"),i=0;i<c.length;i++)(e=at(e?e.children:t,c[i]))&&n.unshift(e.title);return n.join(" - ")}var it={components:{Contributors:W,PostContent:Y},data:function(){return{toc:[]}},mounted:function(){var t,e=this;this.toc=[];for(var s,n=(null===(t=this.$el.querySelector(".post-inner"))||void 0===t?void 0:t.querySelectorAll("h2,h3"))||[],i=0;i<n.length;i++){var title=n[i].innerText;this.toc.push({title:title,depth:+n[i].nodeName.replace(/\D/g,""),id:(s=title,encodeURIComponent(String(s).trim().toLowerCase().replace(/\s+/g,"-")))})}setTimeout((function(){e._lazyload=new X.a({elements_selector:"img[data-src], iframe[data-src]",threshold:300})}))},destroyed:function(){this._lazyload&&this._lazyload.destroy()},head:function(){return{title:this.title,meta:[{hid:"docsearch:language",name:"docsearch:language",content:this.$i18n.locale}]}},asyncData:function(t){return Object(c.a)(regeneratorRuntime.mark((function e(){var c,o,r,l,path,title,d,h,content,m;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return c=t.params,o=t.i18n,r=t.store,l=r.state.posts[o.locale],path=c.pathMatch,title=st(l,path),d="".concat(o.locale,"/").concat(path),e.next=7,n(305)("./".concat(d,".md"));case 7:return h=e.sent,content=nt(et(tt(h.default)),o.locale),m=V()({html:!0,linkify:!0}).use(F.a,{permalink:!1,permalinkAfter:!0,permalinkSymbol:"#",permalinkClass:"permalink"}).use((function(t){var e=t.renderer.rules.image;t.renderer.rules.image=function(t,n,c,o,r){var l=t[n],d=l.attrGet("src");return l.attrPush(["data-src",d]),l.attrSet("src",""),e(t,n,c,o,r)}})),e.abrupt("return",{html:m.render(content),postPath:d,title:title});case 11:case"end":return e.stop()}}),e)})))()}},ct=Object(f.a)(it,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",[n("div",{staticClass:"post-inner"},[t.toc.length?n("div",{staticClass:"table-of-contents"},[n("h4",{staticClass:"toc-container-header"},[t._v(t._s(t.$t("inThisPage")))]),t._v(" "),n("ul",t._l(t.toc,(function(link){return n("li",{key:link.id,class:{toc2:2===link.depth,toc3:3===link.depth}},[n("NuxtLink",{attrs:{to:"#"+link.id}},[t._v(t._s(link.title))])],1)})),0)]):t._e(),t._v(" "),n("div",{staticClass:"nuxt-content"},[n("post-content",{attrs:{content:t.html}})],1)]),t._v(" "),n("contributors",{attrs:{path:t.postPath}})],1)}),[],!1,null,null,null);e.default=ct.exports}}]);