From e999c6edf460c13a32abaef72e6ea454e0683657 Mon Sep 17 00:00:00 2001 From: youjung-hong Date: Mon, 18 Dec 2017 17:19:09 +0900 Subject: [PATCH] 2.12.1 --- dist/chart.css | 4 +- dist/chart.js | 118 ++++++++++++++++++++++++++++++--------------- dist/chart.min.css | 4 +- dist/chart.min.js | 26 +++++----- 4 files changed, 95 insertions(+), 57 deletions(-) diff --git a/dist/chart.css b/dist/chart.css index c04eb8420..7374988ad 100644 --- a/dist/chart.css +++ b/dist/chart.css @@ -1,10 +1,10 @@ /*! * @fileoverview tui.chart * @author NHN Ent. FE Development Lab - * @version 2.12.0 + * @version 2.12.1 * @license MIT * @link https://github.com/nhnent/tui.chart - * bundle created at "Fri Dec 01 2017 18:56:23 GMT+0900 (KST)" + * bundle created at "Mon Dec 18 2017 17:18:42 GMT+0900 (KST)" */ .tui-chart { position: relative; diff --git a/dist/chart.js b/dist/chart.js index ac60f8118..0133e9555 100644 --- a/dist/chart.js +++ b/dist/chart.js @@ -1,10 +1,10 @@ /*! * @fileoverview tui.chart * @author NHN Ent. FE Development Lab - * @version 2.12.0 + * @version 2.12.1 * @license MIT * @link https://github.com/nhnent/tui.chart - * bundle created at "Fri Dec 01 2017 18:56:23 GMT+0900 (KST)" + * bundle created at "Mon Dec 18 2017 17:18:42 GMT+0900 (KST)" */ /******/ (function(modules) { // webpackBootstrap /******/ // The module cache @@ -4756,35 +4756,48 @@ /** * Get series item bound by indexes - * @param {string} name - series name - * @param {number} index - category index - * @param {number} [outlierIndex] - index of outlier of boxplot series, it only exists in boxplot chart + * @param {number} index - tooltip data's category index + * @param {number} seriesIndex - tooltip data's series index + * @param {number} [outlierIndex] - outlier index of tooltip, exists only hovered on boxplot chart's outlier point + * * @returns {?object} - series item bound * @private */ - _getSeriesData: function(name, index, outlierIndex) { - var legendModel = this.componentManager.get('legend').legendModel; - var foundSeries = legendModel.getDatumByLabel(name); - var seriesIndex = foundSeries.seriesIndex; - var indexes, foundData; + _getSeriesData: function(index, seriesIndex, outlierIndex) { + var indexes = { + index: index, + seriesIndex: seriesIndex, + outlierIndex: outlierIndex + }; if (seriesIndex < 0) { return null; } - indexes = { - index: index, - seriesIndex: seriesIndex, - outlierIndex: outlierIndex - }; + return this.componentManager.get('mouseEventDetector').findDataByIndexes(indexes); + }, - foundData = this.componentManager.get('mouseEventDetector').findDataByIndexes(indexes); + /** + * find series index by legend label + * @param {string} chartType - chart tyoe + * @param {string} legendLabel - legend label + * @returns {number} - if not found return -1, else return found series index + * @private + */ + _findSeriesIndexByLabel: function(chartType, legendLabel) { + var labels = this.dataProcessor.getLegendLabels(chartType); + var seriesIndex = -1; + var i = 0; + var len = labels ? labels.length : 0; - if (tui.util.isNumber(outlierIndex)) { - foundData.indexes.outlierIndex = outlierIndex; + for (; i < len; i += 1) { + if (labels[i] === legendLabel) { + seriesIndex = i; + break; + } } - return foundData; + return seriesIndex; }, /** @@ -4802,7 +4815,7 @@ * @ignore */ showTooltip: function(params) { - var isGroupTooltip, mouseEventDetector, foundData; + var isGroupTooltip, mouseEventDetector, foundSeriesIndex, foundData; if (!predicate.isSupportPublicShowTooptipAPI(this.chartType)) { return; @@ -4814,7 +4827,8 @@ if (isGroupTooltip) { foundData = {indexes: {groupIndex: params.index}}; } else { - foundData = this._getSeriesData(params.legend, params.index, params.outlierIndex); + foundSeriesIndex = this._findSeriesIndexByLabel(params.chartType, params.legend); + foundData = this._getSeriesData(params.index, foundSeriesIndex, params.outlierIndex); } if (foundData) { @@ -4833,7 +4847,7 @@ * @ignore */ hideTooltip: function() { - var isGroupTooltip, mouseEventDetector, prevData; + var isGroupTooltip, mouseEventDetector; if (!predicate.isSupportPublicShowTooptipAPI(this.chartType)) { return; @@ -4841,9 +4855,9 @@ isGroupTooltip = this.options.tooltip && this.options.tooltip.grouped; mouseEventDetector = this.componentManager.get('mouseEventDetector'); - prevData = isGroupTooltip ? mouseEventDetector.prevIndex : mouseEventDetector.prevFoundData; - if (prevData) { + if ((isGroupTooltip && mouseEventDetector.prevIndex >= 0) || + (!isGroupTooltip && mouseEventDetector.prevFoundData)) { mouseEventDetector._hideTooltip({silent: true}); } } @@ -10702,7 +10716,7 @@ _makeShowTooltipParams: function(indexes, additionParams) { var legendIndex = indexes.index; var legendData = this.dataProcessor.getLegendItem(legendIndex); - var chartType = legendData.chartType; + var chartType; var params; @@ -10710,6 +10724,7 @@ return null; } + chartType = legendData.chartType; params = tui.util.extend({ chartType: chartType, legend: legendData.label, @@ -11775,7 +11790,7 @@ var self = this; var indexes = this._getIndexesCustomAttribute(tooltipElement); var chartType = tooltipElement.getAttribute('data-chart-type'); - var silent = options.silent; + var silent = !!(options && options.silent); if (predicate.isChartToDetectMouseEventOnSeries(chartType)) { this.eventBus.fire('hoverOffSeries', indexes, chartType); @@ -12036,6 +12051,10 @@ cssTextTemplate = tooltipTemplate.tplGroupCssText, colors = this._makeColors(this.theme), itemsHtml = tui.util.map(items, function(item, index) { + if (!item.value) { + return null; + } + return template(tui.util.extend({ cssText: cssTextTemplate({color: colors[index]}) }, item)); @@ -12341,7 +12360,11 @@ _hideTooltipSector: function(index) { var groupTooltipSector = this._getTooltipSectorElement(); - dom.removeClass(groupTooltipSector, 'show'); + if (!dom.hasClass(groupTooltipSector, 'show')) { + this.eventBus.fire('hideGroupTooltipLine'); + } else { + dom.removeClass(groupTooltipSector, 'show'); + } this.eventBus.fire('hideGroupAnimation', index); this.eventBus.fire('hideGroupTooltipLine'); }, @@ -13461,7 +13484,8 @@ this.attachEvent(container); this.mouseEventDetectorContainer = container; - dom.append(container, this._createTransparentChild()); + this.transparentChild = this._createTransparentChild(); + dom.append(container, this.transparentChild); return container; }, @@ -13548,6 +13572,8 @@ this.selectedData = null; this._setDataForRendering(data); this._renderMouseEventDetectorArea(this.mouseEventDetectorContainer, tickCount); + + this.transparentChild.style.height = renderUtil.getStyle(this.mouseEventDetectorContainer).height; }, /** @@ -15130,7 +15156,7 @@ seriesIndex: index }; - return this._findDataByIndexes(indexes); + return this.findDataByIndexes(indexes); } }); @@ -15368,8 +15394,14 @@ */ _isOuterPosition: function(layerX, layerY) { var dimension = this.dimension; + var width = dimension.width; + var height = dimension.height; + var position = this.layout.position; + var top = position.top; + var left = position.left; - return layerX < 0 || layerX > dimension.width || layerY < 0 || layerY > dimension.height; + return layerX < left || layerX > left + width || + layerY < top || layerY > top + height; }, /** @@ -15383,15 +15415,21 @@ var positionValue = (this.isVertical ? this.layout.position.left : this.layout.position.top) - chartConst.CHART_PADDING; - this.prevIndex = index; - this.eventBus.fire('showTooltip', { - index: index, - range: this.tickBaseCoordinateModel.makeRange(index, positionValue), - size: this.dimension[this.sizeType], - isVertical: this.isVertical, - isMoving: isMoving, - silent: foundData.silent - }); + /** + * Can be called with showTooltip function + * At this time, the index may be larger than the data size. + */ + if (this.tickBaseCoordinateModel.data.length > index) { + this.prevIndex = index; + this.eventBus.fire('showTooltip', { + index: index, + range: this.tickBaseCoordinateModel.makeRange(index, positionValue), + size: this.dimension[this.sizeType], + isVertical: this.isVertical, + isMoving: isMoving, + silent: foundData.silent + }); + } }, /** @@ -18084,7 +18122,7 @@ * To call hideGroupTooltipLine function of graphRenderer. */ onHideGroupTooltipLine: function() { - if (!this.seriesData.length + if (!this.seriesData || !this.seriesData.isAvailable() || !this.graphRenderer.hideGroupTooltipLine ) { diff --git a/dist/chart.min.css b/dist/chart.min.css index ddc88335a..551185aa8 100644 --- a/dist/chart.min.css +++ b/dist/chart.min.css @@ -1,9 +1,9 @@ /*! * @fileoverview tui.chart * @author NHN Ent. FE Development Lab - * @version 2.12.0 + * @version 2.12.1 * @license MIT * @link https://github.com/nhnent/tui.chart - * bundle created at "Fri Dec 01 2017 18:56:30 GMT+0900 (KST)" + * bundle created at "Mon Dec 18 2017 17:18:50 GMT+0900 (KST)" */ .tui-chart{position:relative;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.tui-chart,.tui-chart *{box-sizing:border-box;line-height:1}.tui-chart .tui-chart-title{position:absolute;top:0;left:0;width:100%;text-align:center;padding:10px 0;z-index:350}.tui-chart .tui-chart-axis-area{z-index:300;position:absolute}.tui-chart .tui-chart-axis-area *{user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.tui-chart .tui-chart-axis-area .tui-chart-title-area{position:absolute}.tui-chart .tui-chart-axis-area .tui-chart-label-area,.tui-chart .tui-chart-axis-area .tui-chart-tick-area{position:absolute;top:0;width:100%;height:100%}.tui-chart .tui-chart-axis-area .tui-chart-tick-area .tui-chart-tick{position:absolute;background-color:#000}.tui-chart .tui-chart-axis-area .tui-chart-label-area .tui-chart-label{position:absolute}.tui-chart .tui-chart-axis-area .tui-chart-label-area .tui-chart-label>span{line-height:1.2}.tui-chart .tui-chart-axis-area.vertical{top:10px}.tui-chart .tui-chart-axis-area.vertical .tui-chart-title-area{text-align:center;white-space:nowrap;top:0}.tui-chart .tui-chart-axis-area.vertical .tui-chart-title-area.rotation{-webkit-transform-origin:top left;transform-origin:top left;-webkit-transform:rotate(-90deg);transform:rotate(-90deg);filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3)}.tui-chart .tui-chart-axis-area.vertical .tui-chart-tick-area{right:0}.tui-chart .tui-chart-axis-area.vertical .tui-chart-tick-area .tui-chart-tick{right:1px;width:5px;height:1px}.tui-chart .tui-chart-axis-area.vertical .tui-chart-tick-area .tui-chart-tick-line{left:auto;right:0;width:1px;background-color:#000;position:absolute}.tui-chart .tui-chart-axis-area.vertical .tui-chart-label-area{right:10px}.tui-chart .tui-chart-axis-area.vertical .tui-chart-label-area .tui-chart-label{left:0;width:100%;text-align:right;white-space:nowrap}.tui-chart .tui-chart-axis-area.vertical.right .tui-chart-title-area{text-align:center;white-space:nowrap;top:0}.tui-chart .tui-chart-axis-area.vertical.right .tui-chart-title-area.rotation{-webkit-transform-origin:top left;transform-origin:top left;-webkit-transform:rotate(90deg);transform:rotate(90deg);filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1)}.tui-chart .tui-chart-axis-area.vertical.right .tui-chart-label-area,.tui-chart .tui-chart-axis-area.vertical.right .tui-chart-tick-area{left:0}.tui-chart .tui-chart-axis-area.vertical.right .tui-chart-label-area .tui-chart-label{text-align:left;padding-right:0;padding-left:10px}.tui-chart .tui-chart-axis-area.vertical.center .tui-chart-title-area{width:100%!important;-webkit-transform:rotate(0deg);transform:rotate(0deg);filter:none;top:auto}.tui-chart .tui-chart-axis-area.vertical.center .tui-chart-label-area{left:0;width:100%!important}.tui-chart .tui-chart-axis-area.vertical.center .tui-chart-label-area .tui-chart-label{text-align:center}.tui-chart .tui-chart-axis-area.vertical.center .tui-chart-tick-area.opposite-side,.tui-chart .tui-chart-axis-area.vertical.right .tui-chart-tick-area{border-right:none}.tui-chart .tui-chart-axis-area.vertical.center .tui-chart-tick-area.opposite-side .tui-chart-tick,.tui-chart .tui-chart-axis-area.vertical.right .tui-chart-tick-area .tui-chart-tick{left:1px}.tui-chart .tui-chart-axis-area.vertical.center .tui-chart-tick-area.opposite-side .tui-chart-tick-line,.tui-chart .tui-chart-axis-area.vertical.right .tui-chart-tick-area .tui-chart-tick-line{right:auto;left:0}.tui-chart .tui-chart-axis-area.horizontal{right:10px}.tui-chart .tui-chart-axis-area.horizontal .tui-chart-title-area{bottom:0;width:100%;text-align:center}.tui-chart .tui-chart-axis-area.horizontal.division .tui-chart-title-area{left:0;width:auto}.tui-chart .tui-chart-axis-area.horizontal.division .tui-chart-title-area.right{left:auto;right:0}.tui-chart .tui-chart-axis-area.horizontal .tui-chart-label-area,.tui-chart .tui-chart-axis-area.horizontal .tui-chart-tick-area{left:0}.tui-chart .tui-chart-axis-area.horizontal .tui-chart-tick-area .tui-chart-tick-line{top:0;height:1px;background-color:#000;position:absolute}.tui-chart .tui-chart-axis-area.horizontal .tui-chart-tick-area .tui-chart-ticks{width:100%;position:absolute;left:0;top:0}.tui-chart .tui-chart-axis-area.horizontal .tui-chart-tick-area .tui-chart-tick{top:0;width:1px;height:6px}.tui-chart .tui-chart-axis-area.horizontal .tui-chart-label-area .tui-chart-label{top:10px;text-align:center;word-wrap:break-word;word-break:keep-all}.tui-chart .tui-chart-axis-area.horizontal .tui-chart-label-area .tui-chart-label.tui-chart-xaxis-rotation{text-align:right;white-space:nowrap}.tui-chart .tui-chart-axis-area.horizontal .tui-chart-label-area .tui-chart-label.tui-chart-xaxis-rotation span{position:absolute;right:0;top:0}.tui-chart .tui-chart-axis-area.horizontal .tui-chart-label-area .tui-chart-label.tui-chart-xaxis-rotation25{-webkit-transform:rotate(-25deg);transform:rotate(-25deg)}.tui-chart .tui-chart-axis-area.horizontal .tui-chart-label-area .tui-chart-label.tui-chart-xaxis-rotation25 span{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(SizingMethod='auto expand', M11=0.9063077870366499, M12=0.42261826174069944, M21=-0.42261826174069944, M22=0.9063077870366499)"}.tui-chart .tui-chart-axis-area.horizontal .tui-chart-label-area .tui-chart-label.tui-chart-xaxis-rotation45{-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.tui-chart .tui-chart-axis-area.horizontal .tui-chart-label-area .tui-chart-label.tui-chart-xaxis-rotation45 span{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(SizingMethod='auto expand', M11=0.7071067811865476, M12=0.7071067811865475, M21=-0.7071067811865475, M22=0.7071067811865476)"}.tui-chart .tui-chart-axis-area.horizontal .tui-chart-label-area .tui-chart-label.tui-chart-xaxis-rotation65{-webkit-transform:rotate(-65deg);transform:rotate(-65deg)}.tui-chart .tui-chart-axis-area.horizontal .tui-chart-label-area .tui-chart-label.tui-chart-xaxis-rotation65 span{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(SizingMethod='auto expand', M11=0.42261826174069944, M12=0.9063077870366499, M21=-0.9063077870366499, M22=0.42261826174069944)"}.tui-chart .tui-chart-axis-area.horizontal .tui-chart-label-area .tui-chart-label.tui-chart-xaxis-rotation85{-webkit-transform:rotate(-85deg);transform:rotate(-85deg)}.tui-chart .tui-chart-axis-area.horizontal .tui-chart-label-area .tui-chart-label.tui-chart-xaxis-rotation85 span{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(SizingMethod='auto expand', M11=0.08715574274765814, M12=0.9961946980917455, M21=-0.9961946980917455, M22=0.08715574274765814)"}.tui-chart .tui-chart-plot-area{position:absolute;right:10px;top:10px;z-index:-100}.tui-chart .tui-chart-plot-area .tui-chart-plot-optional-lines-area{left:0;top:0;width:100%;height:100%;position:absolute}.tui-chart .tui-chart-plot-area .tui-chart-plot-lines-area{width:100%;height:100%;position:relative}.tui-chart .tui-chart-plot-area .tui-chart-plot-line{background-color:#ccc;position:absolute}.tui-chart .tui-chart-plot-area .tui-chart-plot-line.vertical{top:0;width:1px}.tui-chart .tui-chart-plot-area .tui-chart-plot-line.horizontal{left:0;height:1px}.tui-chart .tui-chart-series-area{z-index:200;position:absolute;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.tui-chart .tui-chart-series-area:first-child{overflow:visible}.tui-chart .tui-chart-series-area .tui-chart-series-block-area{position:absolute;left:10px;top:10px}.tui-chart .tui-chart-series-area .tui-chart-series-block-area .tui-chart-series-block{position:absolute}.tui-chart .tui-chart-series-area .tui-chart-series-label-area{position:absolute;overflow:visible;left:0;top:0;display:none;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";filter:alpha(opacity=0);opacity:0}.tui-chart .tui-chart-series-area .tui-chart-series-label-area .tui-chart-series-label{position:absolute;cursor:default;text-align:center;white-space:nowrap;text-shadow:#fff 0 0 3px}.tui-chart .tui-chart-series-area .tui-chart-series-label-area.show{display:block}.tui-chart .tui-chart-series-area .tui-chart-series-label-area.opacity{-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";filter:alpha(opacity=100);opacity:1}.tui-chart .tui-chart-series-area .tui-chart-series-graph-area{position:absolute;left:0;top:0}.tui-chart .tui-chart-zoom-area{z-index:1500;position:absolute;border:1px solid #ccc;background-color:#ccc;border-radius:4px;background-clip:padding-box}.tui-chart .tui-chart-zoom-area>.tui-chart-zoom-btn{width:21px;height:21px;display:block;background-color:#fff;cursor:pointer;position:relative}.tui-chart .tui-chart-zoom-area>.tui-chart-zoom-btn:first-child{margin-bottom:1px;border-radius:4px 4px 0 0;background-clip:padding-box}.tui-chart .tui-chart-zoom-area>.tui-chart-zoom-btn:last-child{border-radius:0 0 4px 4px;background-clip:padding-box}.tui-chart .tui-chart-zoom-area>.tui-chart-zoom-btn:hover{background-color:#efefef}.tui-chart .tui-chart-zoom-area>.tui-chart-zoom-btn>div{font-szie:0;background-color:#555;position:absolute}.tui-chart .tui-chart-zoom-area>.tui-chart-zoom-btn>div.horizontal-line{width:9px;height:1px;left:6px;top:10px}.tui-chart .tui-chart-zoom-area>.tui-chart-zoom-btn>div.vertical-line{width:1px;height:9px;left:10px;top:6px}.tui-chart .tui-chart-series-custom-event-area{z-index:1000;position:absolute;left:0;top:0}.tui-chart .tui-chart-series-custom-event-area.hide{display:none}.tui-chart .tui-chart-series-custom-event-area.drag{cursor:move}.tui-chart .tui-chart-series-custom-event-area .tui-chart-drag-selection{top:10px;height:100%;background-color:gray;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";filter:alpha(opacity=30);opacity:.3;position:absolute;display:none}.tui-chart .tui-chart-series-custom-event-area .tui-chart-drag-selection.show{display:block}.tui-chart .tui-chart-series-custom-event-area .tui-chart-reset-zoom-btn{position:absolute;left:20px;top:20px;font-size:11px;padding:5px;border:1px solid #ccc;background-color:#efefef;cursor:pointer;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.tui-chart .tui-chart-legend-rect{margin-top:2px;width:12px;height:12px}.tui-chart .tui-chart-legend-rect.line{height:2px}.tui-chart .tui-chart-legend-rect.area,.tui-chart .tui-chart-legend-rect.bubble{-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";filter:alpha(opacity=50);opacity:.5}.tui-chart .tui-chart-chartExportMenu-area{z-index:900;position:absolute;font-family:Verdana;margin:0;padding:10px 0 0;z-index:5000}.tui-chart .tui-chart-chartExportMenu-area .tui-chart-chartExportMenu-button{position:absolute;width:26px;height:20px;right:0;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAPCAYAAADkmO9VAAAAKklEQVQ4EWMsKCj4z0BFwERFs8BGUd1AajtwCJjHOBrLQyCWKHXiCIxlAM/yBv2WsAlAAAAAAElFTkSuQmCC) 0 0 no-repeat;border:0;font-size:12px;padding:3px 5px;margin:0;cursor:pointer}.tui-chart .tui-chart-chartExportMenu-area ul{display:none;position:absolute;top:30px;right:0;width:120px;background:#fff;border:.5px solid #000;font-size:.8em;padding:0;margin:0;box-shadow:3px 3px 5px #888}.tui-chart .tui-chart-chartExportMenu-area ul>li{margin:0;padding:7px 3px;border-collapse:collapse;text-align:center;list-style-type:none;line-height:1;cursor:pointer}.tui-chart .tui-chart-chartExportMenu-area ul>li:hover{background-color:#91ade5}.tui-chart .tui-chart-legend-area{z-index:400;position:absolute;padding:10px;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.tui-chart .tui-chart-legend-area .tui-chart-legend{clear:both}.tui-chart .tui-chart-legend-area .tui-chart-legend>div{float:left}.tui-chart .tui-chart-legend-area .tui-chart-legend .tui-chart-legend-checkbox-area{width:20px;height:20px;position:relative;box-sizing:border-box}.tui-chart .tui-chart-legend-area .tui-chart-legend .tui-chart-legend-checkbox-area input{left:2px;top:2px;*left:-2px;*top:-2px;position:absolute;padding:0;margin:0}.tui-chart .tui-chart-legend-area .tui-chart-legend .tui-chart-legend-label{padding:2px 0 2px 4px;cursor:pointer;box-sizing:content-box;line-height:1}.tui-chart .tui-chart-legend-area .tui-chart-legend.unselected .tui-chart-legend-label,.tui-chart .tui-chart-legend-area .tui-chart-legend.unselected .tui-chart-legend-rect{-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";filter:alpha(opacity=30);opacity:.3}.tui-chart .tui-chart-legend-area .tui-chart-legend-tick-area{position:absolute;left:10px;top:10px}.tui-chart .tui-chart-legend-area .tui-chart-legend-tick-area .tui-chart-map-legend-tick{width:15px;height:1px;background-color:#ccc;position:absolute;left:0}.tui-chart .tui-chart-legend-area .tui-chart-legend-tick-area .tui-chart-map-legend-tick-label{position:absolute;left:30px;text-align:left}.tui-chart .tui-chart-legend-area .tui-chart-legend-tick-area.horizontal .tui-chart-map-legend-tick{top:0;width:1px;height:15px}.tui-chart .tui-chart-legend-area .tui-chart-legend-tick-area.horizontal .tui-chart-map-legend-tick-label{top:30px}.tui-chart .tui-chart-legend-area .tui-chart-map-legend-wedge{position:absolute;width:19px;height:4px;border-left:2px solid #777;border-right:2px solid #777;left:8px;top:30px;display:none}.tui-chart .tui-chart-legend-area .tui-chart-map-legend-wedge.show{display:block}.tui-chart .tui-chart-legend-area.horizontal{padding-left:0;padding-right:0}.tui-chart .tui-chart-legend-area.horizontal .tui-chart-legend{clear:none;float:left;white-space:nowrap}.tui-chart .tui-chart-circle-legend-area{position:absolute;z-index:400}.tui-chart .tui-chart-circle-legend-area .tui-chart-circle-legend-label-area{position:absolute;left:0;top:0}.tui-chart .tui-chart-circle-legend-area .tui-chart-circle-legend-label-area .tui-chart-circle-legend-label{position:absolute;font-size:9px;white-space:nowrap;text-shadow:#fff 0 0 3px}.tui-chart .tui-chart-tooltip-area{position:absolute;z-index:500}.tui-chart .tui-chart-tooltip-area *{user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.tui-chart .tui-chart-tooltip-area .tui-chart-tooltip{z-index:100;position:absolute;display:none;user-select:none}.tui-chart .tui-chart-tooltip-area .tui-chart-tooltip.show{display:block}.tui-chart .tui-chart-tooltip-area .tui-chart-tooltip .tui-chart-default-tooltip{padding:4px 0;font-size:12px;min-width:100px;color:#fff;border-radius:5px;background-clip:padding-box;background-color:rgba(0,0,0,.7);background-color:#555\9}.tui-chart .tui-chart-tooltip-area .tui-chart-tooltip .tui-chart-default-tooltip>*{padding:2px 7px;text-align:center;white-space:nowrap}.tui-chart .tui-chart-tooltip-area .tui-chart-tooltip .tui-chart-default-tooltip>:first-child{backgound-color:#fff;font-weight:700}.tui-chart .tui-chart-tooltip-area .tui-chart-tooltip .tui-chart-default-tooltip.tui-chart-group-tooltip>*{text-align:left;position:relative;padding-left:20px;padding-top:4px;padding-bottom:4px}.tui-chart .tui-chart-tooltip-area .tui-chart-tooltip .tui-chart-default-tooltip.tui-chart-group-tooltip .tui-chart-legend-rect{position:absolute;left:7px;top:2px}.tui-chart .tui-chart-tooltip-area .tui-chart-tooltip .tui-chart-default-tooltip.tui-chart-group-tooltip .tui-chart-legend-rect.line{top:7px}.tui-chart .tui-chart-tooltip-area .tui-chart-tooltip .tui-chart-default-tooltip.tui-chart-group-tooltip>:first-child{padding-left:7px;padding-top:6px;padding-bottom:6px;text-align:center}.tui-chart .tui-chart-tooltip-area .tui-chart-tooltip .tui-chart-default-tooltip .hide{display:none}.tui-chart .tui-chart-tooltip-area .tui-chart-group-tooltip-sector{z-index:50;position:absolute;background-color:#aaa;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";filter:alpha(opacity=30);opacity:.3;display:none}.tui-chart .tui-chart-tooltip-area .tui-chart-group-tooltip-sector.show{display:block}.tui-chart.tui-map-chart .tui-chart-series-area{overflow:hidden}.tui-chart.tui-map-chart .tui-chart-tooltip-area .tui-chart-default-tooltip>:first-child{font-weight:400}.tui-chart-size-check-element{clear:both;position:absolute;word-wrap:break-word;word-break:keep-all;top:100000px;left:100000px;width:1000px;height:100px;padding:0;line-height:1}.tui-chart-size-check-element>span{display:inline-block;box-sizing:border-box;text-align:center;padding:0}:root .tui-chart .tui-chart-axis-area.horizontal .tui-chart-label.tui-chart-xaxis-rotation25 span,:root .tui-chart .tui-chart-axis-area.horizontal .tui-chart-label.tui-chart-xaxis-rotation45 span,:root .tui-chart .tui-chart-axis-area.horizontal .tui-chart-label.tui-chart-xaxis-rotation65 span,:root .tui-chart .tui-chart-axis-area.horizontal .tui-chart-label.tui-chart-xaxis-rotation85 span,:root .tui-chart .tui-chart-axis-area.vertical .tui-chart-title-area{filter:none \0} \ No newline at end of file diff --git a/dist/chart.min.js b/dist/chart.min.js index 4909b1108..8caace93a 100644 --- a/dist/chart.min.js +++ b/dist/chart.min.js @@ -1,19 +1,19 @@ /*! * @fileoverview tui.chart * @author NHN Ent. FE Development Lab - * @version 2.12.0 + * @version 2.12.1 * @license MIT * @link https://github.com/nhnent/tui.chart - * bundle created at "Fri Dec 01 2017 18:56:30 GMT+0900 (KST)" + * bundle created at "Mon Dec 18 2017 17:18:50 GMT+0900 (KST)" */ -!function(t){function e(n){if(i[n])return i[n].exports;var o=i[n]={exports:{},id:n,loaded:!1};return t[n].call(o.exports,o,o.exports,e),o.loaded=!0,o.exports}var i={};return e.m=t,e.c=i,e.p="/dist/",e(0)}([function(t,e,i){"use strict";function n(t,e,i,n){var r,u,c,d;return e||(e={}),e.table&&(e=l.makeDataWithTable(e.table)),e.series||(e.series=[]),e=h.deepCopy(e),"combo"!==n&&(d=e.series,e.series={},e.series[n]=d),i=i?h.deepCopy(i):{},i.chartType=n,r=i.theme||o.DEFAULT_THEME_NAME,u=s.get(r,n,e.series),c=a.get(i.chartType,e,u,i),c.render(t),c.animateChart(),c}var o=i(2),a=i(3),r=i(7),s=i(8),u=i(10),h=i(11),l=i(12),c=i(13);i(15),i(17),i(18),i(123),tui.util.defineNamespace("tui.chart"),tui.chart.barChart=function(t,e,i){return n(t,e,i,o.CHART_TYPE_BAR)},tui.chart.columnChart=function(t,e,i){return n(t,e,i,o.CHART_TYPE_COLUMN)},tui.chart.lineChart=function(t,e,i){return n(t,e,i,o.CHART_TYPE_LINE)},tui.chart.areaChart=function(t,e,i){return n(t,e,i,o.CHART_TYPE_AREA)},tui.chart.bubbleChart=function(t,e,i){return n(t,e,i,o.CHART_TYPE_BUBBLE)},tui.chart.scatterChart=function(t,e,i){return n(t,e,i,o.CHART_TYPE_SCATTER)},tui.chart.heatmapChart=function(t,e,i){return n(t,e,i,o.CHART_TYPE_HEATMAP)},tui.chart.treemapChart=function(t,e,i){return n(t,e,i,o.CHART_TYPE_TREEMAP)},tui.chart.comboChart=function(t,e,i){return n(t,e,i,o.CHART_TYPE_COMBO)},tui.chart.pieChart=function(t,e,i){return n(t,e,i,o.CHART_TYPE_PIE)},tui.chart.mapChart=function(t,e,i){return n(t,e,i,o.CHART_TYPE_MAP)},tui.chart.radialChart=function(t,e,i){return n(t,e,i,o.CHART_TYPE_RADIAL)},tui.chart.boxplotChart=function(t,e,i){return n(t,e,i,o.CHART_TYPE_BOXPLOT)},tui.chart.registerTheme=function(t,e){s.register(t,e)},tui.chart.registerMap=function(t,e){u.register(t,e)},tui.chart.registerPlugin=function(t,e,i){r.register(t,e),c.addRendererType(t,i)},i(124)},,function(t,e){"use strict";var i={CLASS_NAME_LEGEND_LABEL:"tui-chart-legend-label",CLASS_NAME_LEGEND_CHECKBOX:"tui-chart-legend-checkbox",CLASS_NAME_SERIES_LABEL:"tui-chart-series-label",CLASS_NAME_SERIES_LEGEND:"tui-chart-series-legend",CLASS_NAME_RESET_ZOOM_BTN:"tui-chart-reset-zoom-btn",CLASS_NAME_CHART_EXPORT_MENU_AREA:"tui-chart-chartExportMenu-area",CLASS_NAME_CHART_EXPORT_MENU_ITEM:"tui-chart-chartExportMenu-item",CLASS_NAME_CHART_EXPORT_MENU_BUTTON:"tui-chart-chartExportMenu-button",CHART_TYPE_BAR:"bar",CHART_TYPE_COLUMN:"column",CHART_TYPE_LINE:"line",CHART_TYPE_AREA:"area",CHART_TYPE_COMBO:"combo",CHART_TYPE_COLUMN_LINE_COMBO:"columnLineCombo",CHART_TYPE_LINE_SCATTER_COMBO:"lineScatterCombo",CHART_TYPE_LINE_AREA_COMBO:"lineAreaCombo",CHART_TYPE_PIE_DONUT_COMBO:"pieDonutCombo",CHART_TYPE_PIE:"pie",CHART_TYPE_BUBBLE:"bubble",CHART_TYPE_SCATTER:"scatter",CHART_TYPE_HEATMAP:"heatmap",CHART_TYPE_TREEMAP:"treemap",CHART_TYPE_MAP:"map",CHART_TYPE_RADIAL:"radial",CHART_TYPE_BOXPLOT:"boxplot",CHART_PADDING:10,CHART_DEFAULT_WIDTH:500,CHART_DEFAULT_HEIGHT:400,OVERLAPPING_WIDTH:1,TEXT_PADDING:2,SERIES_EXPAND_SIZE:10,SERIES_LABEL_PADDING:5,DEFAULT_TITLE_FONT_SIZE:14,DEFAULT_AXIS_TITLE_FONT_SIZE:10,DEFAULT_LABEL_FONT_SIZE:12,DEFAULT_SERIES_LABEL_FONT_SIZE:11,DEFAULT_PLUGIN:"Raphael",DEFAULT_TICK_COLOR:"black",DEFAULT_THEME_NAME:"default",MAX_HEIGHT_WORLD:"A",NORMAL_STACK_TYPE:"normal",PERCENT_STACK_TYPE:"percent",DEFAULT_STACK:"___DEFAULT___STACK___",DUMMY_KEY:"___DUMMY___KEY___",TREEMAP_ROOT_ID:"___TUI_TREEMAP_ROOT___",TREEMAP_ID_PREFIX:"___TUI_TREEMAP_ID___",TREEMAP_DEPTH_KEY_PREFIX:"___TUI_TREEMAP_DEPTH___",TREEMAP_PARENT_KEY_PREFIX:"___TUI_TREEMAP_PARENT___",TREEMAP_LEAF_KEY_PREFIX:"___TUI_TREEMAP_LEAF___",TREEMAP_LIMIT_DEPTH_KEY_PREFIX:"___TUI_TREEMAP_LIMIT_DEPTH___",TREEMAP_DEFAULT_BORDER:"#ccc",EMPTY_AXIS_LABEL:"",ANGLE_85:85,ANGLE_90:90,ANGLE_360:360,RAD:Math.PI/180,RERENDER_TIME:700,ADDING_DATA_ANIMATION_DURATION:300,LABEL_ALIGN_OUTER:"outer",LEGEND_ALIGN_TOP:"top",LEGEND_ALIGN_BOTTOM:"bottom",LEGEND_ALIGN_LEFT:"left",SERIES_OUTER_LABEL_PADDING:20,PIE_GRAPH_DEFAULT_RATIO:.9,PIE_GRAPH_SMALL_RATIO:.75,SPECTRUM_LEGEND_TICK_COUNT:4,MAP_CHART_LABEL_DEFAULT_POSITION_RATIO:{x:.5,y:.5},DOT_RADIUS:4,SCATTER_RADIUS:5,THEME_PROPS_MAP:{yAxis:["tickColor","title","label"],series:["label","colors","borderColor","borderWidth","selectionColor","startColor","endColor","overColor","dot"]},TITLE_AREA_WIDTH_PADDING:20,XAXIS_LABEL_TOP_MARGIN:10,V_LABEL_RIGHT_PADDING:10,TOOLTIP_PREFIX:"tui-chart-tooltip",TOOLTIP_ZINDEX:500,TOOLTIP_ANIMATION_TIME:100,TOOLTIP_PIE_ANIMATION_TIME:50,MIN_PIXEL_TYPE_STEP_SIZE:45,MAX_PIXEL_TYPE_STEP_SIZE:65,PERCENT_STACKED_AXIS_SCALE:{limit:{min:0,max:100},step:25,labels:[0,25,50,75,100]},MINUS_PERCENT_STACKED_AXIS_SCALE:{limit:{min:-100,max:0},step:25,labels:[0,-25,-50,-75,-100]},DUAL_PERCENT_STACKED_AXIS_SCALE:{limit:{min:-100,max:100},step:25,labels:[-100,-75,-50,-25,0,25,50,75,100]},DIVERGING_PERCENT_STACKED_AXIS_SCALE:{limit:{min:-100,max:100},step:25,labels:[100,75,50,25,0,25,50,75,100]},AXIS_TYPE_DATETIME:"datetime",DEFAULT_DATE_FORMAT:"YYYY.MM.DD hh:mm:dd",DATE_TYPE_YEAR:"year",DATE_TYPE_MONTH:"month",DATE_TYPE_WEEK:"week",DATE_TYPE_DATE:"date",DATE_TYPE_HOUR:"hour",DATE_TYPE_MINUTE:"minute",DATE_TYPE_SECOND:"second",TITLE_PADDING:10,LEGEND_AREA_PADDING:10,LEGEND_CHECKBOX_WIDTH:10,LEGEND_ICON_WIDTH:40,LEGEND_ICON_HEIGHT:15,LEGEND_LABEL_LEFT_PADDING:5,MIN_LEGEND_WIDTH:100,MAP_LEGEND_SIZE:200,MAP_LEGEND_GRAPH_SIZE:25,MAP_LEGEND_LABEL_PADDING:10,CIRCLE_LEGEND_LABEL_FONT_SIZE:9,CIRCLE_LEGEND_PADDING:10,HALF_RATIO:.5,AXIS_LABEL_PADDING:7,DEGREE_CANDIDATES:[25,45,65,85],TICK_INTERVAL_AUTO:"auto",YAXIS_ALIGN_CENTER:"center",XAXIS_LABEL_COMPARE_MARGIN:20,XAXIS_LABEL_GUTTER:2,AXIS_STANDARD_MULTIPLE_NUMS:[1,2,5,10,20,50,100],AXIS_LAST_STANDARD_MULTIPLE_NUM:100,LABEL_PADDING_TOP:3,LINE_MARGIN_TOP:5,TOOLTIP_GAP:5,TOOLTIP_DIRECTION_FORWARD:"forword",TOOLTIP_DIRECTION_CENTER:"center",TOOLTIP_DIRECTION_BACKWARD:"backword",TOOLTIP_DEFAULT_ALIGN_OPTION:"center top",TOOLTIP_DEFAULT_HORIZONTAL_ALIGN_OPTION:"right middle",TOOLTIP_DEFAULT_GROUP_ALIGN_OPTION:"right middle",TOOLTIP_DEFAULT_GROUP_HORIZONTAL_ALIGN_OPTION:"center bottom",HIDE_DELAY:200,OLD_BROWSER_OPACITY_100:100,SERIES_LABEL_OPACITY:.3,WHEEL_TICK:120,MAX_ZOOM_MAGN:5,FF_WHEELDELTA_ADJUSTING_VALUE:-40,IE7_ROTATION_FILTER_STYLE_MAP:{25:" style=\"filter: progid:DXImageTransform.Microsoft.Matrix(SizingMethod='auto expand', M11=0.9063077870366499, M12=0.42261826174069944, M21=-0.42261826174069944, M22=0.9063077870366499)\"",45:" style=\"filter: progid:DXImageTransform.Microsoft.Matrix(SizingMethod='auto expand', M11=0.7071067811865476, M12=0.7071067811865475, M21=-0.7071067811865475, M22=0.7071067811865476)\"",65:" style=\"filter: progid:DXImageTransform.Microsoft.Matrix(SizingMethod='auto expand', M11=0.42261826174069944, M12=0.9063077870366499, M21=-0.9063077870366499, M22=0.42261826174069944)\"",85:" style=\"filter: progid:DXImageTransform.Microsoft.Matrix(SizingMethod='auto expand', M11=0.08715574274765814, M12=0.9961946980917455, M21=-0.9961946980917455, M22=0.08715574274765814)\""},PUBLIC_EVENT_PREFIX:"public_",PUBLIC_EVENT_MAP:{load:!0,selectLegend:!0,selectSeries:!0,unselectSeries:!0,beforeShowTooltip:!0,afterShowTooltip:!0,beforeHideTooltip:!0,zoom:!0},RADIAL_PLOT_PADDING:15,RADIAL_MARGIN_FOR_CATEGORY:60,RADIAL_CATEGORY_PADDING:20,COMPONENT_TYPE_DOM:"DOM",COMPONENT_TYPE_RAPHAEL:"Raphael",IMAGE_EXTENSIONS:["png","jpeg"],DATA_EXTENSIONS:["xls","csv"],GUIDE_AREACHART_AREAOPACITY_TYPE:"areaOpacity should be a number between 0 and 1"};t.exports=i},function(t,e,i){"use strict";var n=i(2),o=i(4),a=i(5),r={},s={_findKey:function(t,e){var i,r=null;return a.isComboChart(t)?(i=o.getChartTypeMap(e),i[n.CHART_TYPE_COLUMN]&&i[n.CHART_TYPE_LINE]?r=n.CHART_TYPE_COLUMN_LINE_COMBO:i[n.CHART_TYPE_LINE]&&i[n.CHART_TYPE_SCATTER]?r=n.CHART_TYPE_LINE_SCATTER_COMBO:i[n.CHART_TYPE_AREA]&&i[n.CHART_TYPE_LINE]?r=n.CHART_TYPE_LINE_AREA_COMBO:i[n.CHART_TYPE_PIE]&&(r=n.CHART_TYPE_PIE_DONUT_COMBO)):r=t,r},get:function(t,e,i,n){var o,a=this._findKey(t,e),s=r[a];if(!s)throw new Error("Not exist "+t+" chart.");return o=new s(e,i,n)},register:function(t,e){r[t]=e}};t.exports=s},function(t,e,i){"use strict";var n=i(2),o=i(5),a=i(6),r={pickStacks:function(t,e){var i,o,r;return i=tui.util.map(t,function(t){return t.stack}),o=a.unique(i),e&&(o=o.slice(0,2)),r=tui.util.filter(o,function(t){return!!t}),r.length1&&!e},isDatetimeType:function(t){return t===n.AXIS_TYPE_DATETIME},isSupportPublicShowTooptipAPI:function(t){return this.isBarChart(t)||this.isColumnChart(t)||this.isLineChart(t)||this.isAreaChart(t)||this.isBoxplotChart(t)},isSupportPublicHideTooptipAPI:function(t){return this.isBarChart(t)||this.isColumnChart(t)||this.isLineChart(t)||this.isAreaChart(t)||this.isBoxplotChart(t)}};t.exports=a},function(t,e){"use strict";var i=function(t,e,i){var n,o,a;return e?(n=t[0],o=e.call(i,n,0),a=t.slice(1),tui.util.forEachArray(a,function(t,a){var r=e.call(i,t,a+1);ro&&(o=r,n=t)})):n=Math.max.apply(null,t),n},o=function(t,e,i){var n=!1;return tui.util.forEach(t,function(o,a){return e.call(i,o,a,t)&&(n=!0),!n}),n},a=function(t,e,i){var n=!!(t||[]).length;return tui.util.forEach(t,function(o,a){return e.call(i,o,a,t)||(n=!1),n!==!1}),n},r=function(t,e,i,n){var o,a=[];return tui.util.isBoolean(e)||(n=i,i=e,e=!1),i=i||function(t){return t},e?tui.util.forEachArray(t,function(e,r){e=i.call(n,e,r,t),r&&o===e||a.push(e),o=e}):tui.util.forEachArray(t,function(e,o){e=i.call(n,e,o,t),tui.util.inArray(e,a)===-1&&a.push(e)}),a},s=function(t){var e,i=[],o=n(tui.util.map(t,function(t){return t.length}));return tui.util.forEachArray(t,function(t){for(e=0;e=a&&(r=0);return o},_setSeriesColors:function(t,e,i,n){var o,r,s,u,h=this,l=0;i=i||{},tui.util.forEachArray(t,function(t){i[t]?(o=i[t].colors,s=!0):(o=i.colors||a.series.colors,s=!1),u=n[t],r=u&&u.length?u[0]&&u[0].data&&u[0].data.length?Math.max(u.length,u[0].data.length):u.length:0,e[t].colors=h._makeEachSeriesColors(o,r,!s&&l),s||(l=(r+l)%o.length)})},_initTheme:function(t,e,i,o){var r;return t!==n.DEFAULT_THEME_NAME?(r=JSON.parse(JSON.stringify(a)),this._overwriteTheme(e,r)):r=JSON.parse(JSON.stringify(e)),r.yAxis=this._createComponentThemeWithSeriesName(i,e.yAxis,r.yAxis,"yAxis"),r.series=this._createComponentThemeWithSeriesName(i,e.series,r.series,"series"),this._setSeriesColors(i,r.series,e.series,o),r},_createTargetThemesForFontInherit:function(t){var e=[t.title,t.xAxis.title,t.xAxis.label,t.legend.label,t.plot.label];return tui.util.forEach(t.yAxis,function(t){e.push(t.title,t.label)}),tui.util.forEach(t.series,function(t){e.push(t.label)}),e},_inheritThemeFont:function(t){var e=this._createTargetThemesForFontInherit(t),i=t.chart.fontFamily;tui.util.forEachArray(e,function(t){t.fontFamily||(t.fontFamily=i)})},_copySeriesColorTheme:function(t,e,i){e[i]={colors:t.colors,borderColor:t.borderColor,selectionColor:t.selectionColor}},_copySeriesColorThemeToOther:function(t){var e=this;tui.util.forEach(t.series,function(i,n){e._copySeriesColorTheme(i,t.legend,n),e._copySeriesColorTheme(i,t.tooltip,n)})},get:function(t,e,i){var n,o,a=r[t];if(!a)throw new Error("Not exist "+t+" theme.");return o=this._pickSeriesNames(e,i),n=this._initTheme(t,a,o,i),this._inheritThemeFont(n,o),this._copySeriesColorThemeToOther(n),n}}},function(t,e){"use strict";var i="#000000",n="#ffffff",o="normal",a="",r={tickColor:i,title:{fontSize:12,fontFamily:a,color:i,fontWeight:o},label:{fontSize:12,fontFamily:a,color:i,fontWeight:o}},s={chart:{background:{color:n,opacity:1},fontFamily:"Verdana"},title:{fontSize:18,fontFamily:a,color:i,fontWeight:o},yAxis:r,xAxis:r,plot:{lineColor:"#dddddd",background:"#ffffff",label:{fontSize:11,fontFamily:a,color:"#888"}},series:{label:{fontSize:11,fontFamily:a,color:i,fontWeight:o},colors:["#ac4142","#d28445","#f4bf75","#90a959","#75b5aa","#6a9fb5","#aa759f","#8f5536"],borderColor:a,borderWidth:a,selectionColor:a,startColor:"#F4F4F4",endColor:"#345391",overColor:"#F0C952",dot:{fillColor:a,fillOpacity:1,strokeColor:a,strokeOpacity:1,strokeWidth:2,radius:2,hover:{fillColor:a,fillOpacity:1,strokeColor:a,strokeOpacity:.8,strokeWidth:3,radius:4}}},legend:{label:{fontSize:12,fontFamily:a,color:i,fontWeight:o}},tooltip:{},chartExportMenu:{backgroundColor:"#fff",borderRadius:0,borderWidth:1,color:"#000"}};t.exports=s},function(t,e){"use strict";var i={};t.exports={get:function(t){var e=i[t];if(!e)throw new Error("Not exist "+t+" map.");return e},register:function(t,e){i[t]=e}}},function(t,e){"use strict";var i=function(t){var e;return tui.util.isArray(t)?(e=[],tui.util.forEachArray(t,function(t,n){e[n]=i(t)})):tui.util.isFunction(t)||tui.util.isDate(t)?e=t:tui.util.isObject(t)?(e={},tui.util.forEach(t,function(t,n){e[n]=i(t)})):e=t,e},n={deepCopy:i};t.exports=n},function(t,e,i){"use strict";function n(t){var e;return t.length>0&&(e={},e.categories=[],e.series=[],e.categories=t.shift().slice(1),tui.util.forEach(t,function(t){var i={};i.name=t[0],i.data=t.slice(1),e.series.push(i)})),e}function o(t){var e=[],i=[],n=[];return t&&(e=tui.util.toArray(t.getElementsByTagName("TR")),tui.util.forEach(e,function(t,e){var n=0===e?"TH":"TD",o=tui.util.toArray(t.getElementsByTagName(n)),a=tui.util.pluck(o,"innerText");i.push(a)}),i[0].length-1||(i.push(e),t.className=i.join(" ")))},removeClass:function(t,e){var i=this._getClassNames(t),n=tui.util.inArray(e,i);n!==-1&&(i.splice(n,1),t.className=i.join(" "))},hasClass:function(t,e){var i=this._getClassNames(t),n=tui.util.inArray(e,i);return n>-1},findParentByClass:function(t,e,i){var n,o=t.parentNode;return n=o?this.hasClass(o,e)?o:"BODY"===o.nodeName||this.hasClass(o,i)?null:this.findParentByClass(o,e,i):null},append:function(t,e){t&&e&&(e=tui.util.isArray(e)?e:[e],tui.util.forEachArray(e,function(e){e&&t.appendChild(e)}))}};t.exports=n},function(t,e){},,function(module,exports){window.JSON||(window.JSON={parse:function(sJSON){return eval("("+sJSON+")")},stringify:function(){var t=Object.prototype.toString,e=Array.isArray||function(e){return"[object Array]"===t.call(e)},i={'"':'\\"',"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t"},n=function(t){return i[t]||"\\u"+(t.charCodeAt(0)+65536).toString(16).substr(1)},o=/[\\"\u0000-\u001F\u2028\u2029]/g;return function i(a){if(null==a)return"null";if("number"==typeof a)return isFinite(a)?a.toString():"null";if("boolean"==typeof a)return a.toString();if("object"==typeof a){if("function"==typeof a.toJSON)return i(a.toJSON());if(e(a)){for(var r="[",s=0;s1,e=r.isYAxisAlignCenter(this.hasRightYAxis,t.yAxis.align),t.yAxis.isCenter=e,t.xAxis.divided=e,t.series.divided=e,t.plot.divided=e)},addComponents:function(){this.componentManager.register("title","title"),this.componentManager.register("plot","plot"),this.componentManager.register("legend","legend"),this.componentManager.register("barSeries","barSeries"),this.componentManager.register("yAxis","axis"),this.componentManager.register("xAxis","axis"),this.hasRightYAxis&&this.componentManager.register("rightYAxis","axis"),this.componentManager.register("chartExportMenu","chartExportMenu"),this.componentManager.register("tooltip","tooltip"),this.componentManager.register("mouseEventDetector","mouseEventDetector")},getScaleOption:function(){return{xAxis:!0}},onChangeCheckedLegends:function(t){var e;this.hasRightYAxis&&(e={optionChartTypes:["bar","bar"]}),n.prototype.onChangeCheckedLegends.call(this,t,null,e)},addDataRatios:function(t){var e=this.options.series||{},i=this.chartType,n=(e[i]||e).stackType;this.dataProcessor.addDataRatios(t[i],n,i)}});t.exports=s},function(t,e,i){"use strict";var n=i(2),o=i(21),a=i(80),r=i(4),s=i(14),u=i(24),h=i(90),l=i(5),c=tui.util.defineClass({init:function(t){this.theme=t.theme,this._initializeOptions(t.options),this.chartType=this.options.chartType,this.hasAxes=t.hasAxes,this.isVertical=!!t.isVertical,this.dataProcessor=this._createDataProcessor(t),this.eventBus=new tui.util.CustomEvents,this.prevXAxisData=null,this.componentManager=this._createComponentManager(),this.addComponents(),this._attachToEventBus()},_attachToEventBus:function(){this.eventBus.on("changeCheckedLegends",this.onChangeCheckedLegends,this),this.onZoom&&this.eventBus.on({zoom:this.onZoom,resetZoom:this.onResetZoom},this)},_setOffsetProperty:function(t,e,i){tui.util.isExisty(t[e])&&(t.offset=t.offset||{},t.offset[i]=t[e],delete t[e])},_initializeOffset:function(t){t&&(this._setOffsetProperty(t,"offsetX","x"),this._setOffsetProperty(t,"offsetY","y"))},_initializeTitleOptions:function(t){var e,i=this;t&&(e=tui.util.isArray(t)?t:[t],tui.util.forEachArray(e,function(t){var e=t.title;tui.util.isString(e)&&(t.title={text:e}),i._initializeOffset(t.title)}))},_initializeTooltipOptions:function(t){var e=t.position;t.grouped=!!t.grouped,this._initializeOffset(t),!t.offset&&e&&(t.offset={x:e.left,y:e.top}),delete t.position},_initializeOptions:function(t){t.chartTypes=this.charTypes,t.xAxis=t.xAxis||{},t.series=t.series||{},t.tooltip=t.tooltip||{},t.legend=t.legend||{},t.chartExportMenu=t.chartExportMenu||{},this._initializeTitleOptions(t.chart),this._initializeTitleOptions(t.xAxis),this._initializeTitleOptions(t.yAxis),tui.util.isUndefined(t.legend.visible)&&(t.legend.visible=!0),tui.util.isUndefined(t.chartExportMenu.visible)&&(t.chartExportMenu.visible=!0),this._initializeTooltipOptions(t.tooltip),this.options=t},_createDataProcessor:function(t){var e,i;return e=t.DataProcessor||a,i=new e(t.rawData,this.chartType,t.options,this.seriesTypes)},_createComponentManager:function(){return new o({options:this.options,theme:this.theme,dataProcessor:this.dataProcessor,hasAxes:this.hasAxes,eventBus:this.eventBus,isVertical:this.isVertical,seriesTypes:this.seriesTypes||[this.chartType]})},addComponents:function(){},getScaleOption:function(){},_buildBoundsAndScaleData:function(t,e){return h.build(this.dataProcessor,this.componentManager,{chartType:this.chartType,seriesTypes:this.seriesTypes,options:this.options,theme:this.theme,hasAxes:this.hasAxes,scaleOption:this.getScaleOption(),isVertical:this.isVertical,hasRightYAxis:this.hasRightYAxis,addedDataCount:this._dynamicDataHelper?this._dynamicDataHelper.addedDataCount:null,prevXAxisData:t,addingDataMode:e})},addDataRatios:function(){},readyForRender:function(t){var e=this._buildBoundsAndScaleData(this.prevXAxisData,t);return e.axisDataMap.xAxis&&(this.prevXAxisData=e.axisDataMap.xAxis),this.addDataRatios(e.limitMap),e},render:function(t){var e,i=s.create("DIV","tui-chart "+this.className),o=this.componentManager,a=this.dataProcessor,h=a.getLegendVisibility(),l=r.filterCheckedRawData(a.rawData,h),c=o.drawingToolPicker.getPaper(i,n.COMPONENT_TYPE_RAPHAEL);this.dataProcessor.initData(l),c.changeChartBackgroundColor(this.theme.chart.background.color),c.changeChartBackgroundOpacity(this.theme.chart.background.opacity),u.renderFontFamily(i,this.theme.chart.fontFamily),s.append(t,i),e=this.readyForRender(),u.renderDimension(i,e.dimensionMap.chart),o.render("render",e,{checkedLegends:h},i),this.chartContainer=i,this.paper=c},rerender:function(t,e){var i,n=this.dataProcessor;e||(e=r.filterCheckedRawData(n.getZoomedRawData(),t)),this.dataProcessor.initData(e),i=this.readyForRender(),this.componentManager.render("rerender",i,{checkedLegends:t},this.chartContainer)},onChangeCheckedLegends:function(t,e,i){this.rerender(t,e,i)},animateChart:function(){this.componentManager.execute("animateComponent")},on:function(t,e){n.PUBLIC_EVENT_MAP[t]&&this.eventBus.on(n.PUBLIC_EVENT_PREFIX+t,e)},off:function(t,e){n.PUBLIC_EVENT_MAP[t]&&this.eventBus.off(n.PUBLIC_EVENT_PREFIX+t,e)},_updateChartDimension:function(t){var e=!1,i=this.options;return i.chart=i.chart||{},t.width&&t.width>0&&i.chart.width!==t.width&&(i.chart.width=t.width,e=!0),t.height&&t.height>0&&i.chart.height!==t.height&&(i.chart.height=t.height,e=!0),e},resize:function(t){var e,i,n;t&&(e=this._updateChartDimension(t),e&&(i=this.readyForRender(),n=i.dimensionMap.chart,u.renderDimension(this.chartContainer,n),this.paper.resizeBackground(n.width,n.height),this.componentManager.render("resize",i)))},setTooltipAlign:function(t){this.componentManager.get("tooltip").setAlign(t)},setTooltipOffset:function(t){this.componentManager.get("tooltip").setOffset(t)},setTooltipPosition:function(t){this.componentManager.get("tooltip").setPosition(t)},resetTooltipAlign:function(){this.componentManager.get("tooltip").resetAlign()},resetTooltipOffset:function(){this.componentManager.get("tooltip").resetOffset()},resetTooltipPosition:function(){this.resetTooltipOffset()},showSeriesLabel:function(){var t=this.componentManager.where({componentType:"series"});tui.util.forEachArray(t,function(t){t.showLabel()})},hideSeriesLabel:function(){var t=this.componentManager.where({componentType:"series"});tui.util.forEachArray(t,function(t){t.hideLabel()})},addData:function(){},addPlotLine:function(){},addPlotBand:function(){},removePlotLine:function(){},removePlotBand:function(){},_getSeriesData:function(t,e,i){var n,o,a=this.componentManager.get("legend").legendModel,r=a.getDatumByLabel(t),s=r.seriesIndex;return s<0?null:(n={index:e,seriesIndex:s,outlierIndex:i},o=this.componentManager.get("mouseEventDetector").findDataByIndexes(n),tui.util.isNumber(i)&&(o.indexes.outlierIndex=i),o)},_findDataByIndexes:function(t,e){return this.componentManager.get("mouseEventDetector").findDataByIndexes(t,e)},showTooltip:function(t){var e,i,n;l.isSupportPublicShowTooptipAPI(this.chartType)&&(e=this.options.tooltip&&this.options.tooltip.grouped,i=this.componentManager.get("mouseEventDetector"),n=e?{indexes:{groupIndex:t.index}}:this._getSeriesData(t.legend,t.index,t.outlierIndex),n?(n.silent=!0,e||(i.prevFoundData=n), -i._showTooltip(n)):this.hideTooltip())},hideTooltip:function(){var t,e,i;l.isSupportPublicShowTooptipAPI(this.chartType)&&(t=this.options.tooltip&&this.options.tooltip.grouped,e=this.componentManager.get("mouseEventDetector"),i=t?e.prevIndex:e.prevFoundData,i&&e._hideTooltip({silent:!0}))}});t.exports=c},function(t,e,i){"use strict";var n=i(2),o=i(14),a=i(22),r=i(25),s=i(26),u=i(27),h=i(29),l=i(13),c=i(35),d=i(37),p=i(38),f=i(39),m=i(45),g=i(47),_=i(48),T=i(52),v=i(59),x=i(64),y=i(65),D=i(67),A=i(68),E=i(69),C=i(71),L=i(72),S=i(73),M=i(74),P=i(75),b=i(77),k=i(78),R={axis:a,plot:r,radialPlot:u,legend:c,spectrumLegend:d,circleLegend:p,tooltip:f,groupTooltip:m,mapChartTooltip:g,mapChartEventDetector:_,mouseEventDetector:T,barSeries:v,columnSeries:x,lineSeries:y,radialSeries:D,areaSeries:A,bubbleSeries:E,scatterSeries:C,mapSeries:L,pieSeries:S,heatmapSeries:M,treemapSeries:P,boxplotSeries:b,zoom:k,chartExportMenu:h,title:s},I=tui.util.defineClass({init:function(t){var e=t.options.chart,i=tui.util.pick(e,"width")||n.CHART_DEFAULT_WIDTH,o=tui.util.pick(e,"height")||n.CHART_DEFAULT_HEIGHT;this.components=[],this.componentMap={},this.theme=t.theme||{},this.options=t.options||{},this.dataProcessor=t.dataProcessor,this.hasAxes=t.hasAxes,this.isVertical=t.isVertical,this.eventBus=t.eventBus,this.drawingToolPicker=new l,this.drawingToolPicker.initDimension({width:i,height:o}),this.seriesTypes=t.seriesTypes},_makeComponentOptions:function(t,e,i,n){return t=t||this.options[e],t=tui.util.isArray(t)?t[n]:t||{}},register:function(t,e,i){var n,o,a,r,s;i=i||{},i.name=t,n=i.index||0,r=R[e],a=r.componentType,i.chartTheme=this.theme,i.chartOptions=this.options,i.seriesTypes=this.seriesTypes,s="axis"===a?t:a,i.theme=this.theme[s],i.theme||"rightYAxis"!==s||(i.theme=this.theme.yAxis),i.options=this.options[s],"series"===s&&tui.util.forEach(this.seriesTypes,function(e){return 0!==t.indexOf(e)||(i.options=i.options[e]||i.options,i.theme=i.theme[e],tui.util.isArray(i.options)&&(i.options=i.options[n]||{}),!1)}),i.dataProcessor=this.dataProcessor,i.hasAxes=this.hasAxes,i.isVertical=this.isVertical,i.eventBus=this.eventBus,i.alternativeModel=this.alternativeModel,o=r(i),o&&(o.componentName=t,o.componentType=a,this.components.push(o),this.componentMap[t]=o)},_makeDataForRendering:function(t,e,i,n,o){var a=tui.util.extend({paper:i},o);return n&&(tui.util.extend(a,n),a.layout={dimension:a.dimensionMap[t]||a.dimensionMap[e],position:a.positionMap[t]||a.positionMap[e]}),a},render:function(t,e,i,n){var a,r,s=this,u=tui.util.map(this.components,function(o){var u,h,l,c=null;return o[t]&&(a=o.componentName,r=o.componentType,l=s.drawingToolPicker.getPaper(n,o.drawingType),u=s._makeDataForRendering(a,r,l,e,i),h=o[t](u),h&&!h.paper&&(c=h)),c});n&&o.append(n,u)},where:function(t){return tui.util.filter(this.components,function(e){var i=!0;return tui.util.forEach(t,function(t,n){return e[n]!==t&&(i=!1),i}),i})},execute:function(t){var e=Array.prototype.slice.call(arguments,1);tui.util.forEachArray(this.components,function(i){i[t]&&i[t].apply(i,e)})},get:function(t){return this.componentMap[t]},has:function(t){return!!this.get(t)}});t.exports=I},function(t,e,i){"use strict";function n(t){var e=t.chartOptions.chartType,i=t.name;return t.isYAxis="yAxis"===i||"rightYAxis"===i,t.shifting=t.chartOptions.series.shifting,"combo"===e?t.isYAxis?t.theme=t.theme[t.seriesTypes[0]]:"rightYAxis"===i&&(t.componentType="yAxis",t.theme=t.theme[t.seriesTypes[1]],t.index=1):t.isYAxis?t.theme=t.theme[e]:t.theme=t.theme,new h(t)}var o=i(2),a=i(5),r=i(23),s=i(7),u=i(24),h=tui.util.defineClass({init:function(t){this.className="tui-chart-axis-area",this.dataProcessor=t.dataProcessor,this.options=t.options||{},this.theme=tui.util.extend({},t.theme,{background:t.chartTheme.chart.background}),this.isLabelAxis=!1,this.isYAxis=t.isYAxis,this.shifting=t.shifting,this.data={},this.layout=null,this.dimensionMap=null,this.axisDataMap=null,this.graphRenderer=s.get(o.COMPONENT_TYPE_RAPHAEL,"axis"),this.drawingType=o.COMPONENT_TYPE_RAPHAEL,this.paperAdditionalWidth=0,this.paperAdditionalHeight=0,this._elBg=null},_renderBackground:function(){var t=tui.util.extend({},this.layout.dimension),e=tui.util.extend({},this.layout.position);this.isYAxis&&(t.height=this.dimensionMap.chart.height,e.top=0),this._elBg&&this._elBg.remove(),this._elBg=this.graphRenderer.renderBackground(this.paper,e,t,this.theme.background)},_renderChildContainers:function(t,e,i,n){var o=this.isYAxis&&this.data.aligned;this.isYAxis&&!this.data.isPositionRight&&!this.options.isCenter&&this.shifting&&this._renderBackground(),this._renderTitleArea(),this._renderLabelArea(t,e,i,n),o||this._renderTickArea(t,e,n)},_renderDividedAxis:function(t){var e=this.data,i=Math.round(t.width/2),n=t.width-i-1,o=e.tickCount,a=parseInt(o/2,10)+1,r=e.labels,s=r.slice(0,a),u=r.slice(a-1,o),h=i/a,l=i+this.dimensionMap.yAxis.width-1;this.paperAdditionalWidth=h,this._renderChildContainers(i,a,s,0),this._renderChildContainers(n+1,a,u,l)},_renderNotDividedAxis:function(t){var e=this.data,i=this.isYAxis,n=i?t.height:t.width,o=0;e.positionRatio&&(o=n*e.positionRatio),this._renderChildContainers(n,e.tickCount,e.labels,o)},_renderAxisArea:function(){var t=this.layout.dimension,e=this.data;this.isLabelAxis=e.isLabelAxis,this.options.divided?(this.containerWidth=t.width+this.dimensionMap.yAxis.width,this._renderDividedAxis(t),t.width=this.containerWidth):(t.width+=this.options.isCenter?1:0,this._renderNotDividedAxis(t))},_setDataForRendering:function(t){this.layout=t.layout,this.dimensionMap=t.dimensionMap,this.data=t.axisDataMap[this.componentName],this.options=this.data.options},render:function(t){this.paper=t.paper,this.axisSet=t.paper.set(),this._setDataForRendering(t),this._renderAxisArea()},rerender:function(t){this.axisSet.remove(),this.render(t)},resize:function(t){this.rerender(t)},zoom:function(t){this.rerender(t)},_renderTitleArea:function(){var t=this.options.title||{};t.text&&this.graphRenderer.renderTitle(this.paper,{text:t.text,offset:t.offset,theme:this.theme.title,rotationInfo:{rotateTitle:this.options.rotateTitle,isVertical:this.isYAxis,isPositionRight:this.data.isPositionRight,isCenter:this.options.isCenter},layout:this.layout,set:this.axisSet})},_renderTickLine:function(t,e,i){this.graphRenderer.renderTickLine({areaSize:t,additionalSize:i,additionalWidth:this.paperAdditionalWidth,additionalHeight:this.paperAdditionalHeight,isPositionRight:this.data.isPositionRight,isCenter:this.data.options.isCenter,isNotDividedXAxis:e,isVertical:this.isYAxis,tickColor:this.theme.tickColor,layout:this.layout,paper:this.paper,set:this.axisSet})},_renderTicks:function(t,e,i,n){var o=this.theme.tickColor,a=this.data,s=a.sizeRatio||1,u=this.isYAxis,h=this.data.options.isCenter,l=this.data.isPositionRight,c=r.makeTickPixelPositions(t*s,e),d=this.paperAdditionalHeight+1,p=this.paperAdditionalWidth;c.length=a.tickCount,this.graphRenderer.renderTicks({paper:this.paper,layout:this.layout,positions:c,isVertical:u,isCenter:h,additionalSize:n,additionalWidth:p,additionalHeight:d,isPositionRight:l,tickColor:o,set:this.axisSet})},_renderTickArea:function(t,e,i){var n=!this.isYAxis&&!this.options.divided;this._renderTickLine(t,n,i||0),this._renderTicks(t,e,n,i||0)},_renderLabelArea:function(t,e,i,n){var o=this.data.sizeRatio||1,a=r.makeTickPixelPositions(t*o,e,0),s=a[1]-a[0];this._renderLabels(a,i,s,n||0)},_renderRotationLabels:function(t,e,i,n){var a=this,r=this.graphRenderer,s=this.isYAxis,u=this.theme.label,h=this.data.degree,l=i/2,c=this.layout.position.top+o.AXIS_LABEL_PADDING,d=this.layout.position.left;tui.util.forEach(t,function(t,o){var p=t+(n||0),f={};s?(f.top=p+l,f.left=i):(f.top=c,f.left=d+p,a.isLabelAxis&&(f.left+=l)),r.renderRotatedLabel({degree:h,labelText:e[o],paper:a.paper,positionTopAndLeft:f,set:a.axisSet,theme:u})})},_renderNormalLabels:function(t,e,i,n){var r=this,s=this.graphRenderer,u=this.isYAxis,h=this.data.isPositionRight,l=this.isLabelAxis,c=this.theme.label,d=this.dataProcessor,p=a.isLineTypeChart(d.chartType,d.seriesTypes),f=p&&this.options.pointOnColumn,m=this.layout;tui.util.forEach(t,function(t,a){var d,g,_=t+n,T=i/2,v={};u?(d=_,l?d+=T+m.position.top:d=m.dimension.height+m.position.top-d,g=h?m.position.left+o.AXIS_LABEL_PADDING:m.position.left+m.dimension.width-o.AXIS_LABEL_PADDING):(d=m.position.top+o.CHART_PADDING+o.AXIS_LABEL_PADDING,g=_+m.position.left,l&&(p&&!f||(g+=T))),v.top=Math.round(d),v.left=Math.round(g),s.renderLabel({isPositionRight:h,isVertical:u,labelSize:i,labelText:e[a],paper:r.paper,positionTopAndLeft:v,set:r.axisSet,theme:c})})},_renderLabels:function(t,e,i,n){var o,a=!this.isYAxis&&this.isLabelAxis&&this.options.rotateLabel===!1,r="xAxis"===this.componentName&&this.data.degree;o=a?this.data.multilineLabels:e,o.length&&(t.length=o.length),o=u.addPrefixSuffix(o,this.options.prefix,this.options.suffix),r?this._renderRotationLabels(t,o,i,n):this._renderNormalLabels(t,o,i,n)},animateForAddingData:function(t){this.isYAxis||this.graphRenderer.animateForAddingData(t.tickSize)}});n.componentType="axis",n.Axis=h,t.exports=n},function(t,e,i){"use strict";var n=i(6),o=100,a={calculateLimit:function(t,e){var i,n=0,o={};return t<0&&(n=t,e-=t,t=0),i=(e-t)/20,o.max=e+i+n,e/6>t?o.min=n:o.min=t-i+n,o},makeTickPixelPositions:function(t,e,i){var n=[];return i=i||0,e>0&&(n=tui.util.map(tui.util.range(0,e),function(n){var o=0===n?0:n/(e-1);return o*t+i}),n[n.length-1]-=1),n},makeLabelsFromLimit:function(t,e){var i=a.findMultipleNum(e),n=Math.round(t.min*i),o=Math.round(t.max*i),r=tui.util.range(n,o+1,e*i);return tui.util.map(r,function(t){return t/i})},calculateStepFromLimit:function(t,e){return a.divide(a.subtract(t.max,t.min),e-1)},sumPlusValues:function(t){var e=tui.util.filter(t,function(t){return t>0});return a.sum(e)},sumMinusValues:function(t){var e=tui.util.filter(t,function(t){return t<0});return a.sum(e)},makePercentageValue:function(t,e){return t/e*o},calculateRatio:function(t,e,i,n){return(t-i)/e*n}},r=function(t){var e=String(t).split(".");return 2===e.length?e[1].length:0},s=function(){var t=[].slice.call(arguments),e=tui.util.map(t,function(t){return a.getDecimalLength(t)}),i=n.max(e);return Math.pow(10,i)},u=function(t,e){var i,n=a.findMultipleNum(e);return i=1===n?t%e:t*n%(e*n)/n},h=function(t,e){var i=a.findMultipleNum(t,e);return(t*i+e*i)/i},l=function(t,e){var i=a.findMultipleNum(t,e);return(t*i-e*i)/i},c=function(t,e){var i=a.findMultipleNum(t,e);return t*i*(e*i)/(i*i)},d=function(t,e){var i=a.findMultipleNum(t,e);return t*i/(e*i)},p=function(t){var e=t.slice();return e.unshift(0),tui.util.reduce(e,function(t,e){return a.add(parseFloat(t),parseFloat(e))})};a.getDecimalLength=r,a.findMultipleNum=s,a.mod=u,a.add=h,a.subtract=l,a.multiply=c,a.divide=d,a.sum=p,t.exports=a},function(t,e,i){"use strict";function n(t,e){t=tui.util.isArray(t)?t:[t],tui.util.forEachArray(t,e)}function o(t){return"alpha(opacity="+t*a.OLD_BROWSER_OPACITY_100+")"}var a=i(2),r=i(14),s=i(6),u=Array.prototype.concat,h=tui.util.browser,l=h.msie&&7===h.version,c=h.msie&&h.version<=8,d=window.getComputedStyle||!1,p={concatStr:function(){return String.prototype.concat.apply("",arguments)},makeFontCssText:function(t){var e=[];return t?(t.fontSize&&e.push(this.concatStr("font-size:",t.fontSize,"px")),t.fontFamily&&e.push(this.concatStr("font-family:",t.fontFamily)),t.color&&e.push(this.concatStr("color:",t.color)),t.fontWeight&&e.push(this.concatStr("font-weight:",t.fontWeight)),e.join(";")):""},checkEl:null,_createSizeCheckEl:function(){var t,e;return this.checkEl?this.checkEl.style.cssText="":(t=r.create("DIV","tui-chart-size-check-element"),e=r.create("SPAN"),t.appendChild(e),this.checkEl=t),this.checkEl},_makeCachingKey:function(t,e,i){var n=[t,i];return tui.util.forEach(e,function(t,e){n.push(t+e)}),n.join("-")},_addCssStyle:function(t,e){t.style.fontSize=(e.fontSize||a.DEFAULT_LABEL_FONT_SIZE)+"px",e.fontFamily&&(t.style.fontFamily=e.fontFamily),e.fontWeight&&(t.style.fontWeight=e.fontWeight),e.cssText&&(t.style.cssText+=e.cssText)},sizeCache:{},_getRenderedLabelSize:function(t,e,i){var n,o,a,r;return e=e||{},(t=tui.util.isExisty(t)?String(t):"")?(n=this._makeCachingKey(t,e,i),r=this.sizeCache[n],r||(o=this._createSizeCheckEl(),a=o.firstChild,a.innerHTML=t,this._addCssStyle(o,e),document.body.appendChild(o),r=a[i],document.body.removeChild(o),this.sizeCache[n]=r),r):0},getRenderedLabelWidth:function(t,e){var i=this._getRenderedLabelSize(t,e,"offsetWidth");return i},getRenderedLabelHeight:function(t,e){var i=this._getRenderedLabelSize(t,e,"offsetHeight");return i},_getRenderedLabelsMaxSize:function(t,e,i){var n,o=0;return t&&t.length&&(n=tui.util.map(t,function(t){return i(t,e)}),o=s.max(n)),o},getRenderedLabelsMaxWidth:function(t,e){var i=tui.util.bind(this.getRenderedLabelWidth,this),n=this._getRenderedLabelsMaxSize(t,e,i);return n},getRenderedLabelsMaxHeight:function(t,e){var i=tui.util.bind(this.getRenderedLabelHeight,this),n=this._getRenderedLabelsMaxSize(t,e,i);return n},renderDimension:function(t,e){t.style.cssText=[this.concatStr("width:",e.width,"px"),this.concatStr("height:",e.height,"px")].join(";")},renderPosition:function(t,e){tui.util.isUndefined(e)||tui.util.forEachArray(["top","bottom","left","right"],function(i){var n=e[i];tui.util.isNumber(n)&&(t.style[i]=e[i]+"px")})},renderBackground:function(t,e){e&&(t.style.background=e)},renderFontFamily:function(t,e){e&&(t.style.fontFamily=e)},renderTitle:function(t,e,i){var n,o;return t?(n=r.create("DIV",i),n.innerHTML=t,o=p.makeFontCssText(e),e.background&&(o+=";"+this.concatStr("background:",e.background)),n.style.cssText=o,n):null},expandBound:function(t){var e=t.dimension,i=t.position;return{dimension:{width:e.width+2*a.SERIES_EXPAND_SIZE,height:e.height+2*a.SERIES_EXPAND_SIZE},position:{left:i.left-a.SERIES_EXPAND_SIZE,top:i.top-a.SERIES_EXPAND_SIZE}}},_properCase:function(t){return t.substring(0,1).toUpperCase()+t.substring(1)},makeMouseEventDetectorName:function(t,e,i){return t+this._properCase(e)+this._properCase(i)},formatValue:function(t,e,i,n,o){var a=[String(t)].concat(e||[]);return o=o||"value",tui.util.reduce(a,function(t,e){return e(t,i,n,o)})},formatValues:function(t,e,i,n,o){var a;return e&&e.length?a=tui.util.map(t,function(t){return p.formatValue(t,e,i,n,o)}):t},formatDate:function(t,e){var i=tui.util.isDate(t)?t:new Date(t);return e=e||a.DEFAULT_DATE_FORMAT,tui.util.formatDate(e,i)||t},formatDates:function(t,e){var i=this.formatDate;return e=e||a.DEFAULT_DATE_FORMAT,tui.util.map(t,function(t){return i(t,e)})},cancelAnimation:function(t){t&&t.id&&(cancelAnimationFrame(t.id),delete t.id)},startAnimation:function(t,e,i){function n(){var r=(new Date).getTime()-o,s=Math.min(r/t,1);e(s),1===s?(delete a.id,i&&i()):a.id=requestAnimationFrame(n)}var o,a={};return o=(new Date).getTime(),a.id=requestAnimationFrame(n),a},isIE7:function(){return l},isOldBrowser:function(){return c},formatToZeroFill:function(t,e){var i="0";if(t=String(t),t.length>=e)return t;for(;t.length-1?"-":"",t.indexOf(".")>-1?(i=t.split("."),t=String(Math.abs(i[0])),r="."+i[1]):t=String(Math.abs(t)),t.length<=s?o=h:(i=t.split("").reverse(),n=i.length-1,i=tui.util.map(i,function(t,e){var i=[t];return e0?e.length-1:0,n=e[0],o=e[i],t[0]<=n&&t[1]>=o):this.dataProcessor.containedAllVisibleCategory(t[0],t[1])},_renderOptionalLine:function(t,e,i,n){var o,a=this._createOptionalLinePositionMap(n,t,e);return u.isExisty(a.start)&&a.start>=0&&a.start<=e&&(i.width=1,i.color=n.color||"transparent",i.opacity=n.opacity,o=this._renderLine(a.start+this.layout.position.left,i)),o},_makeOptionalBand:function(t,e,i,o){var a,r=o.range;return r&&r.length&&this._makeRangeTo2DArray(o),a=h(o.range,function(i){return this._createOptionalLinePositionMap({range:i},t,e)},this),o.mergeOverlappingRanges&&(a.sort(n),a=this._mergeOverlappingPositionMaps(a)),h(a,function(t){var n,a=t.end-t.start,r=u.isExisty(t.start)&&t.start>=0&&t.start<=e;return r&&(i.color=o.color||"transparent",i.opacity=o.opacity,n=this._renderBand(t.start+this.layout.position.left,a,i)),n},this)},_makeOptionalLines:function(t,e){var i=e.width,n=this.axisDataMap.xAxis,o=this._makeVerticalLineTemplateParams({height:e.height+"px"}),a=u.bind(this._renderOptionalLine,this,n,i,o);return h(t,a)},_makeOptionalBands:function(t,e){var i=e.width,n=this.axisDataMap.xAxis,o=this._makeVerticalLineTemplateParams({height:e.height+"px"}),a=u.bind(this._makeOptionalBand,this,n,i,o);return h(t,a)},_renderOptionalLines:function(t,e){var i=[];i.concat(this._makeOptionalBands(this.options.bands,e)),i.concat(this._makeOptionalLines(this.options.lines,e)),this.optionalLines=i},_renderVerticalLines:function(t,e){var i=this._makeHorizontalPositions(t.width),n=this,o=this.layout,a=o.position.left,r=o.position.top;u.forEach(i,function(t){var i="M"+(t+a)+","+r+"V"+(r+o.dimension.height),s=n.paper.path(i);s.attr({stroke:e,"stroke-width":1}),n.plotSet.push(s)})},_renderHorizontalLines:function(t,e){var i=this._makeVerticalPositions(t.height),n=this,o=this.layout,a=o.position.left,r=o.position.top,s=i[1]-i[0];u.forEach(i,function(t,i){var u="M"+a+","+(s*i+r)+"H"+(a+o.dimension.width),h=n.paper.path(u);h.attr({stroke:e,"stroke-width":1}),n.plotSet.push(h)})},_renderPlotLines:function(t,e){var i=this.theme;r.isLineTypeChart(this.chartType)||this._renderVerticalLines(e,i.lineColor),this._renderHorizontalLines(e,i.lineColor)},_makeVerticalPositions:function(t){var e=this.axisDataMap,i=e.yAxis||e.rightYAxis,n=s.makeTickPixelPositions(t,i.validTickCount);return n.shift(),n},_makeDividedPlotPositions:function(t,e){var i,n,o,a,r=this.dimensionMap.yAxis.width;return e=parseInt(e/2,10)+1,t-=r,i=Math.round(t/2),n=t-i,o=s.makeTickPixelPositions(i,e),a=s.makeTickPixelPositions(n,e,i+r),o.pop(),a.shift(),o.concat(a)},_makeHorizontalPositions:function(t){var e,i=this.axisDataMap.xAxis.validTickCount;return this.options.divided?e=this._makeDividedPlotPositions(t,i):(e=s.makeTickPixelPositions(t,i),e.shift()),e},addPlotLine:function(t){this.options.lines.push(t),this.rerender()},addPlotBand:function(t){this.options.bands.push(t),this.rerender()},removePlotLine:function(t){this.options.lines=u.filter(this.options.lines,function(e){return e.id!==t}),this.rerender()},removePlotBand:function(t){this.options.bands=u.filter(this.options.bands,function(e){return e.id!==t}),this.rerender()},animateForAddingData:function(t){var e=this;this.dataProcessor.isCoordinateType()||t.shifting&&u.forEach(this.optionalLines,function(i){var n=i.getBBox();n.x-t.tickSize0&&a<180?"end":a>180&&a<360?"start":"middle",f.push({left:i.x,top:u-i.y,anchor:e});return f}function a(t){return new h(t)}var r=i(28),s=i(2),u=i(7),h=tui.util.defineClass({className:"tui-chart-plot-area",init:function(t){this.options=tui.util.extend({type:"spiderweb"},t.options),this.theme=t.theme||{},this.graphRenderer=u.get(s.COMPONENT_TYPE_RAPHAEL,"radialPlot"),this.drawingType=s.COMPONENT_TYPE_RAPHAEL},_renderPlotArea:function(t,e,i,n){var o={paper:t,layout:e,plotPositions:i,labelData:n,theme:this.theme,options:this.options};return this.graphRenderer.render(o)},_makePositions:function(t,e){var i=e.dimension.width-s.RADIAL_PLOT_PADDING-s.RADIAL_MARGIN_FOR_CATEGORY,o=e.dimension.height-s.RADIAL_PLOT_PADDING-s.RADIAL_MARGIN_FOR_CATEGORY,a=i/2+s.RADIAL_PLOT_PADDING/2+s.RADIAL_MARGIN_FOR_CATEGORY/2+e.position.left,r=o/2-s.RADIAL_PLOT_PADDING/2-s.RADIAL_MARGIN_FOR_CATEGORY/2-e.position.top,u=t.yAxis.tickCount,h=t.xAxis.labels.length;return n({width:i,height:o,centerX:a,centerY:r,angleStepCount:h,stepCount:u})},_makeCategoryPositions:function(t,e){var i=e.dimension.width-s.RADIAL_PLOT_PADDING-s.RADIAL_CATEGORY_PADDING,n=e.dimension.height-s.RADIAL_PLOT_PADDING-s.RADIAL_CATEGORY_PADDING,a=i/2+s.RADIAL_PLOT_PADDING/2+s.RADIAL_CATEGORY_PADDING/2+e.position.left,r=n/2-s.RADIAL_PLOT_PADDING/2-s.RADIAL_CATEGORY_PADDING/2-e.position.top,u=t.xAxis.labels.length;return o({width:i,height:n,centerX:a,centerY:r,angleStepCount:u})},_makeLabelData:function(t,e,i){var n,o,a=t.xAxis.labels,r=t.yAxis.labels,s=this._makeCategoryPositions(t,e),u=[],h=[];for(n=0;n",tui.util.forEach(t,function(t,o){var a=0!==i||0===o?' class="number"':"",r="<"+n+a+">"+t+"";e+=r}),e+=""}),e+=""}function a(t){var e=''+o(t)+"";return window.btoa(unescape(encodeURIComponent(e)))}function r(t,e){var i="",n=e&&e.lineDelimiter||"\n",o=e&&e.itemDelimiter||",",a=t.length-1;return tui.util.forEachArray(t,function(t,e){var r=t.length-1;tui.util.forEachArray(t,function(t,e){var n=tui.util.isNumber(t)?t:'"'+t+'"';i+=n,e0?(this.legendModel.updateCheckedLegendsWith(e),this._checkLegend()):this.legendModel.toggleCheckedIndex(t)},_labelClick:function(t){this._selectLegend(t)},_listenEvents:function(){this.eventBus.on("checkboxClicked",this._checkboxClick,this),this.eventBus.on("labelClicked",this._labelClick,this)}});tui.util.CustomEvents.mixin(h),n.componentType="legend",n.Legend=h,t.exports=n},function(t,e){"use strict";var i=Array.prototype.concat,n=tui.util.forEachArray,o=tui.util.defineClass({init:function(t){this.theme=t.theme,this.labels=t.labels,this.legendData=t.legendData,this.seriesTypes=t.seriesTypes||[],this.chartType=t.chartType,this.data=null,this.selectedIndex=null,this.checkedIndexesMap={},this.checkedWholeIndexes=[],this._setData(),this._initCheckedIndexes()},_initCheckedIndexes:function(){var t=this,e=[];n(this.legendData,function(i,n){i.visible&&e.push(n),t.checkedWholeIndexes[n]=i.visible}),this.updateCheckedLegendsWith(e)},_setThemeToLegendData:function(t,e,i){var o=0;n(t,function(t,n){var a={color:e.colors[n]};e.borderColor&&(a.borderColor=e.borderColor),t.theme=a,t.index=n,i&&tui.util.isUndefined(i[n])?t.seriesIndex=-1:(t.seriesIndex=o,o+=1)})},_setData:function(){var t,e,n=this,o=this.theme,a=this.chartType,r=this.seriesTypes,s=this.legendData,u=this.checkedIndexesMap;!r||r.length<2?(this._setThemeToLegendData(s,o[a],u[a]),t=s):(e=0,t=i.apply([],tui.util.map(r,function(t){var i,a,r=n.labels[t].length,h=e+r;return i=s.slice(e,h),a=u[t],e=h,n._setThemeToLegendData(i,o[t],a),i}))),this.data=t},getData:function(){return this.data},getDatum:function(t){return this.data[t]},getDatumByLabel:function(t){var e=null;return n(this.data,function(i){return i.label===t&&(e=i),!e}),e},getSelectedDatum:function(){return this.getDatum(this.selectedIndex)},updateSelectedIndex:function(t){this.selectedIndex=t},toggleSelectedIndex:function(t){var e;e=this.selectedIndex===t?null:t,this.updateSelectedIndex(e)},getSelectedIndex:function(){return this.selectedIndex},isUnselectedIndex:function(t){return!tui.util.isNull(this.selectedIndex)&&this.selectedIndex!==t},isCheckedSelectedIndex:function(){return this.isCheckedIndex(this.selectedIndex)},toggleCheckedIndex:function(t){this.checkedWholeIndexes[t]=!this.checkedWholeIndexes[t]},_updateCheckedIndex:function(t){this.checkedWholeIndexes[t]=!0},isCheckedIndex:function(t){return!!this.checkedWholeIndexes[t]},_addSendingDatum:function(t){var e=this.getDatum(t);this.checkedIndexesMap[e.chartType]||(this.checkedIndexesMap[e.chartType]=[]),this.checkedIndexesMap[e.chartType][e.index]=!0},checkSelectedIndex:function(){this._updateCheckedIndex(this.selectedIndex),this._addSendingDatum(this.selectedIndex),this._setData()},getCheckedIndexes:function(){return this.checkedIndexesMap},_resetCheckedData:function(){this.checkedWholeIndexes=[],this.checkedIndexesMap={}},updateCheckedLegendsWith:function(t){var e=this;this._resetCheckedData(),n(t,function(t){e._updateCheckedIndex(t),e._addSendingDatum(t)}),this._setData()}});t.exports=o},function(t,e,i){"use strict";function n(t){var e=!!tui.util.isUndefined(t.options.visible)||t.options.visible,i=t.chartOptions.chartType,n=null;return e&&(t.chartType=i,n=new s(t)),n}var o=i(2),a=i(5),r=i(7),s=tui.util.defineClass({init:function(t){var e=t.libType;this.chartType=t.chartType,this.theme=t.theme,this.options=t.options||{},this.dataProcessor=t.dataProcessor,this.colorSpectrum=t.colorSpectrum,this.eventBus=t.eventBus,this.graphRenderer=r.get(e,"mapLegend"),this.isHorizontal=a.isHorizontalLegend(this.options.align),this.scaleData=null,this.drawingType=o.COMPONENT_TYPE_RAPHAEL,this._attachToEventBus()},_attachToEventBus:function(){this.eventBus.on({showWedge:this.onShowWedge,hideTooltip:this.onHideWedge},this),this.eventBus.on("beforeImageDownload",tui.util.bind(this._removeLocationURLFromFillAttribute,this)),this.eventBus.on("afterImageDownload",tui.util.bind(this._restoreLocationURLToFillAttribute,this))},_removeLocationURLFromFillAttribute:function(){this.graphRenderer.removeLocationURLFromFillAttribute()},_restoreLocationURLToFillAttribute:function(){this.graphRenderer.restoreLocationURLToFillAttribute()},_makeBaseDataToMakeTickArea:function(){var t=this.layout.dimension,e=this.scaleData,i=e.stepCount||e.tickCount-1,n={};return n.position=this.layout.position,this.isHorizontal?(n.step=t.width/i,n.position.top+=o.MAP_LEGEND_GRAPH_SIZE+o.MAP_LEGEND_LABEL_PADDING):(n.step=t.height/i,n.position.left+=o.MAP_LEGEND_GRAPH_SIZE+o.MAP_LEGEND_LABEL_PADDING),n},_renderTickArea:function(t){this.graphRenderer.renderTicksAndLabels(this.paper,this._makeBaseDataToMakeTickArea(),this.scaleData.labels,this.isHorizontal,t)},_makeVerticalGraphDimension:function(){return{width:o.MAP_LEGEND_GRAPH_SIZE,height:this.layout.dimension.height}},_makeHorizontalGraphDimension:function(){return{width:this.layout.dimension.width+10,height:o.MAP_LEGEND_GRAPH_SIZE}},_renderGraph:function(t){var e;e=this.isHorizontal?this._makeHorizontalGraphDimension():this._makeVerticalGraphDimension(),this.graphRenderer.render(this.paper,{dimension:e,position:this.layout.position},this.colorSpectrum,this.isHorizontal,t)},_renderLegendArea:function(){var t=this.paper.set();return this._renderGraph(t),this._renderTickArea(t),t},_setDataForRendering:function(t){this.layout=t.layout,this.paper=t.paper,this.scaleData=t.legendScaleData},render:function(t){this._setDataForRendering(t),this.legnedSet=this._renderLegendArea()},rerender:function(t){this.legnedSet.remove(),this.render(t)},resize:function(t){this.rerender(t)},onShowWedge:function(t){this.graphRenderer.showWedge(o.MAP_LEGEND_SIZE*t)},onHideWedge:function(){this.graphRenderer.hideWedge()}});n.componentType="legend",n.SpectrumLegend=s,t.exports=n},function(t,e,i){"use strict";function n(t){var e,i=t.chartOptions.chartType,n=t.chartTheme,o=tui.util.pick(t.chartOptions,"circleLegend","visible"),a=null;return e=!!tui.util.isUndefined(o)||o,e&&(t.chartType=i,t.baseFontFamily=n.chart.fontFamily,a=new u(t)),a}var o=i(2),a=i(23),r=i(24),s=i(7),u=tui.util.defineClass({circleRatios:[1,.5,.25],init:function(t){var e=t.libType;this.chartType=t.chartType,this.dataProcessor=t.dataProcessor,this.labelTheme={fontSize:o.CIRCLE_LEGEND_LABEL_FONT_SIZE,fontFamily:t.baseFontFamily},this.graphRenderer=s.get(e,"circleLegend"),this.layout=null,this.maxRadius=null,this.drawingType=o.COMPONENT_TYPE_RAPHAEL},_formatLabel:function(t,e){var i,n=this.dataProcessor.getFormatFunctions();return i=0===e?String(parseInt(t,10)):r.formatToDecimal(String(t),e),r.formatValue(i,n,this.chartType,"circleLegend","r")},_makeLabels:function(){var t=this,e=this.dataProcessor.getMaxValue(this.chartType,"r"),i=a.getDecimalLength(e);return tui.util.map(this.circleRatios,function(n){return t._formatLabel(e*n,i)})},_render:function(t){return this.graphRenderer.render(t,this.layout,this.maxRadius,this.circleRatios,this._makeLabels())},_setDataForRendering:function(t){this.layout=t.layout,this.maxRadius=t.maxRadius},render:function(t){this._setDataForRendering(t),this.circleLegendSet=this._render(t.paper)},rerender:function(t){this.circleLegendSet.remove(),this._setDataForRendering(t),this.circleLegendSet=this._render(t.paper)},resize:function(t){this.rerender(t)}});n.componentType="legend",n.CircleLegend=u,t.exports=n},function(t,e,i){"use strict";function n(t,e,i){var n,o=(100*t.ratio).toFixed(4),a=parseFloat(o),r=a<9e-4||o.length>5;return o=r?o.substr(0,4):String(a),n=o+" % "||"",e.ratioLabel=i+n,e.label=t.tooltipLabel||(t.label?t.label:""),e}function o(t){var e,i=t.chartOptions.chartType,o=t.seriesTypes,h=t.chartOptions.xAxis,l=[];return tui.util.forEach(tui.util.filter(t.chartTheme.legend,function(t){return tui.util.isArray(t.colors)}),function(t){l=l.concat(t.colors)}),e="map"===i?s:t.options.grouped?r:a,("pie"===i||u.isPieDonutComboChart(i,o))&&(t.labelFormatter=n),t.chartType=i,t.chartTypes=o,t.xAxisType=h.type,t.dateFormat=h.dateFormat,t.colors=l,e(t)}var a=i(40),r=i(45),s=i(47),u=i(5);o.componentType="tooltip",t.exports=o},function(t,e,i){"use strict";function n(t){return new h(t)}var o=i(41),a=i(42),r=i(2),s=i(5),u=i(43),h=tui.util.defineClass(o,{init:function(){o.apply(this,arguments)},_makeTooltipHtml:function(t,e){var i,n=s.isPieChart(this.chartType)||s.isPieDonutComboChart(this.chartType,this.chartTypes);return s.isBoxplotChart(this.chartType)?tui.util.isNumber(e.outlierIndex)?(i=u.tplBoxplotChartOutlier,e.label=e.outliers[e.outlierIndex].label):i=u.tplBoxplotChartDefault:i=n?u.tplPieChart:this.dataProcessor.coordinateType?u.tplCoordinatetypeChart:u.tplDefault,i(tui.util.extend({categoryVisible:t?"show":"hide",category:t},e))},_makeHtmlForValueTypes:function(t,e){return tui.util.map(e,function(e){return t[e]?"
"+e+": "+t[e]+"
":""}).join("")},_makeSingleTooltipHtml:function(t,e){var i=e.groupIndex,n=tui.util.extend({},tui.util.pick(this.data,t,e.groupIndex,e.index));return s.isBoxplotChart(this.chartType)&&tui.util.isNumber(e.outlierIndex)&&(n.outlierIndex=e.outlierIndex),n=tui.util.extend({suffix:this.suffix},n),n.valueTypes=this._makeHtmlForValueTypes(n,["x","y","r"]),this.templateFunc(n.category,n,this.getRawCategory(i))},_setDefaultTooltipPositionOption:function(){this.options.align||(this.isVertical?this.options.align=r.TOOLTIP_DEFAULT_ALIGN_OPTION:this.options.align=r.TOOLTIP_DEFAULT_HORIZONTAL_ALIGN_OPTION)},_makeShowTooltipParams:function(t,e){var i,n=t.index,o=this.dataProcessor.getLegendItem(n),a=o.chartType;return o?(i=tui.util.extend({chartType:a,legend:o.label,legendIndex:n,index:t.groupIndex},e),s.isBoxplotChart(a)&&tui.util.isNumber(t.outlierIndex)&&(i.outlierIndex=t.outlierIndex),i):null},_makeTooltipDatum:function(t,e,i){var n=t&&i.label?": ":"",o=i.tooltipLabel,a=this.labelFormatter,r={legend:t||""};return r.label=o||(i.label?n+i.label:""),a&&(r=a(i,r,n)),r.category=e||"",tui.util.extend(r,i.pickValueMapForTooltip())},makeTooltipData:function(){var t=this,e=this.dataProcessor.getLegendLabels(),i=s.isTreemapChart(this.chartType),n={},o={};return tui.util.isArray(e)?n[this.chartType]=e:n=e,this.dataProcessor.eachBySeriesGroup(function(e,i,a){var r;a=a||t.chartType,r=e.map(function(e,o){var r=t.dataProcessor.makeTooltipCategory(i,o,t.isVertical);return e?t._makeTooltipDatum(n[a][o],r,e):null}),o[a]||(o[a]=[]),o[a].push(r)},i),o}});a.mixin(h),n.componentType="tooltip",n.NormalTooltip=h,t.exports=n},function(t,e,i){"use strict";var n=i(2),o=i(14),a=i(5),r=i(24),s=tui.util.defineClass({init:function(t){var e=a.isPieChart(t.chartType);this.chartType=t.chartType,this.chartTypes=t.chartTypes,this.dataProcessor=t.dataProcessor,this.options=t.options,this.colors=t.colors,this.theme=t.theme,this.isVertical=t.isVertical,this.eventBus=t.eventBus,this.labelTheme=t.labelTheme,this.xAxisType=t.xAxisType,this.dateFormat=t.dateFormat,this.labelFormatter=t.labelFormatter,this.className="tui-chart-tooltip-area",this.tooltipContainer=null,this.suffix=this.options.suffix?" "+this.options.suffix:"",this.templateFunc=this.options.template||tui.util.bind(this._makeTooltipHtml,this),this.animationTime=e?n.TOOLTIP_PIE_ANIMATION_TIME:n.TOOLTIP_ANIMATION_TIME,this.data=[],this.layout=null,this.dimensionMap=null,this.positionMap=null,this.drawingType=n.COMPONENT_TYPE_DOM,this._setDefaultTooltipPositionOption(),this._saveOriginalPositionOptions(),this._attachToEventBus()},_attachToEventBus:function(){this.eventBus.on({showTooltip:this.onShowTooltip,hideTooltip:this.onHideTooltip},this),this.onShowTooltipContainer&&this.eventBus.on({showTooltipContainer:this.onShowTooltipContainer,hideTooltipContainer:this.onHideTooltipContainer},this)},_makeTooltipHtml:function(){},_setDefaultTooltipPositionOption:function(){},_saveOriginalPositionOptions:function(){this.orgPositionOptions={align:this.options.align,offset:this.options.offset}},makeTooltipData:function(){},_setDataForRendering:function(t){this.layout=t.layout,this.dimensionMap=t.dimensionMap,this.positionMap=t.positionMap},render:function(t){var e=t.paper;return o.addClass(e,this.className),this._setDataForRendering(t),this.data=this.makeTooltipData(),r.renderPosition(e,this.layout.position),this.tooltipContainer=e,e},rerender:function(t){this.resize(t),this.data=this.makeTooltipData()},resize:function(t){this._setDataForRendering(t),r.renderPosition(this.tooltipContainer,this.layout.position),this.positionModel&&this.positionModel.updateBound(this.layout)},zoom:function(){this.data=this.makeTooltipData()},_getTooltipElement:function(){var t;return this.tooltipElement||(this.tooltipElement=t=o.create("DIV","tui-chart-tooltip"),o.append(this.tooltipContainer,t)),this.tooltipElement},onShowTooltip:function(t){var e,i=this._getTooltipElement(),n=a.isComboChart(this.chartType)&&a.isScatterChart(t.chartType);a.isChartToDetectMouseEventOnSeries(t.chartType)&&!n||!i.offsetWidth||(e={left:i.offsetLeft,top:i.offsetTop}),this._showTooltip(i,t,e)},getTooltipDimension:function(t){return{width:t.offsetWidth,height:t.offsetHeight}},_moveToPosition:function(t,e,i){i?this._slideTooltip(t,i,e):r.renderPosition(t,e)},_slideTooltip:function(t,e,i){var n=i.top-e.top,o=i.left-e.left;r.cancelAnimation(this.slidingAnimation),this.slidingAnimation=r.startAnimation(this.animationTime,function(i){var a=o*i,r=n*i;t.style.left=e.left+a+"px",t.style.top=e.top+r+"px"})},onHideTooltip:function(t,e){var i=this._getTooltipElement();this._hideTooltip(i,t,e)},setAlign:function(t){this.options.align=t,this.positionModel&&this.positionModel.updateOptions(this.options)},_updateOffsetOption:function(t){this.options.offset=t,this.positionModel&&this.positionModel.updateOptions(this.options)},setOffset:function(t){var e=tui.util.extend({},this.options.offset);tui.util.isExisty(t.x)&&(e.x=t.x),tui.util.isExisty(t.y)&&(e.y=t.y),this._updateOffsetOption(tui.util.extend({},this.options.offset,e))},setPosition:function(t){var e=tui.util.extend({},this.options.offset);tui.util.isExisty(t.left)&&(e.x=t.left),tui.util.isExisty(t.top)&&(e.y=t.y),this._updateOffsetOption(e)},resetAlign:function(){var t=this.orgPositionOptions.align;this.options.align=t,this.positionModel&&this.positionModel.updateOptions(this.options)},resetOffset:function(){this.options.offset=this.orgPositionOptions.offset,this._updateOffsetOption(this.options.offset)},getRawCategory:function(t,e){var i=this.isVertical?"x":"y",n=this.dataProcessor.categoriesMap?this.dataProcessor.categoriesMap[i]:null,o="";return n&&(o=n[t]),e&&(o=r.formatDate(o,e)),o}});t.exports=s},function(t,e,i){"use strict";var n=i(2),o=i(5),a=i(14),r=i(24),s={_setIndexesCustomAttribute:function(t,e){t.setAttribute("data-groupIndex",e.groupIndex),t.setAttribute("data-index",e.index)},_getIndexesCustomAttribute:function(t){var e=t.getAttribute("data-groupIndex"),i=t.getAttribute("data-index"),n=null;return tui.util.isNull(e)||tui.util.isNull(i)||(n={groupIndex:parseInt(e,10),index:parseInt(i,10)}),n},_setShowedCustomAttribute:function(t,e){t.setAttribute("data-showed",e)},_isShowedTooltip:function(t){var e=t.getAttribute("data-showed");return"true"===e||e===!0},_makeLeftPositionOfNotBarChart:function(t,e,i,o){var a=t,r=i||0,s=o||n.TOOLTIP_GAP;return e.indexOf("left")>-1?a-=r+s:e.indexOf("center")>-1&&r?a-=r/2:a+=s,a},_makeTopPositionOfNotBarChart:function(t,e,i,o){var a=t,r=i||0;return e.indexOf("bottom")>-1?a+=r+o:e.indexOf("middle")>-1&&r?a+=r/2:a-=r+n.TOOLTIP_GAP,a},_makeTooltipPositionForNotBarChart:function(t){var e=t.bound,i=t.positionOption,o=t.dimension.width-(e.width||0),a=e.width?0:n.TOOLTIP_GAP,r=t.alignOption||"",s=t.dimension.height,u=e.left-this.layout.position.left+i.left,h=e.top-this.layout.position.top+i.top-n.TOOLTIP_GAP;return{left:this._makeLeftPositionOfNotBarChart(u,r,o,a),top:this._makeTopPositionOfNotBarChart(h,r,s,a)}},_makeTooltipPositionToMousePosition:function(t){return t.bound||(t.bound=t.bound||{},tui.util.extend(t.bound,t.mousePosition)),this._makeTooltipPositionForNotBarChart(t)},_makeLeftPositionForBarChart:function(t,e,i){var o=t;return e.indexOf("left")>-1?o-=i:e.indexOf("center")>-1?o-=i/2:o+=n.TOOLTIP_GAP,o},_makeTopPositionForBarChart:function(t,e,i){var n=t;return e.indexOf("top")>-1?n-=i:e.indexOf("middle")>-1&&(n-=i/2),n},_makeTooltipPositionForBarChart:function(t){var e=this.layout.position,i=t.bound,n=t.positionOption,o=t.dimension.height-(i.height||0),a=t.alignOption||"",r=t.dimension.width,s=i.left+i.width+n.left-e.left,u=i.top+n.top-e.top;return{left:this._makeLeftPositionForBarChart(s,a,r),top:this._makeTopPositionForBarChart(u,a,o)}},_makeTooltipPositionForTreemapChart:function(t){var e=this.layout.position,i=t.bound,o=t.positionOption,a=r.getRenderedLabelHeight(n.MAX_HEIGHT_WORLD,this.labelTheme);return{left:i.left+(i.width-t.dimension.width)/2+o.left-e.left,top:i.top+i.height/2-a+o.top-e.top}},_adjustPosition:function(t,e){var i=this.dimensionMap.chart,n=this.layout.position;return e.left=Math.max(e.left,-n.left),e.left=Math.min(e.left,i.width-n.left-t.width),e.top=Math.max(e.top,-n.top),e.top=Math.min(e.top,i.height-n.top-t.height),e},_makeTooltipPosition:function(t){var e,i,n,a={};return t.mousePosition?a=this._makeTooltipPositionToMousePosition(t):(o.isBarChart(t.chartType)?(a=this._makeTooltipPositionForBarChart(t),e="width",i="left",n=1):o.isTreemapChart(t.chartType)?a=this._makeTooltipPositionForTreemapChart(t):(a=this._makeTooltipPositionForNotBarChart(t),e="height",i="top",n=-1),t.allowNegativeTooltip&&(a=this._moveToSymmetry(a,{bound:t.bound,indexes:t.indexes,dimension:t.dimension,chartType:t.chartType,sizeType:e,positionType:i,addPadding:n})),a=this._adjustPosition(t.dimension,a)),a},_moveToSymmetry:function(t,e){var i,n,a,r=e.bound,s=e.sizeType,u=e.positionType,h=e.seriesType||e.chartType,l=this.dataProcessor.getValue(e.indexes.groupIndex,e.indexes.index,h),c=o.isBarChart(this.chartType)?-1:1;return l<0&&(i=e.dimension[s],n=r[s],a=t[u]+(n+i)*c,t[u]=a),t},_isChangedIndexes:function(t,e){return!!t&&(t.groupIndex!==e.groupIndex||t.index!==e.index)},_showTooltip:function(t,e,i){var o,r=this.tooltipContainer.parentNode.getBoundingClientRect(),s=e.indexes,u=this._getIndexesCustomAttribute(t),h=this.options.offset||{},l={},c=t&&t.getAttribute("data-chart-type");!e.bound&&e.mousePosition&&(e.bound={left:e.mousePosition.left-r.left+n.CHART_PADDING,top:e.mousePosition.top-r.top+n.CHART_PADDING}),(this._isChangedIndexes(u,s)||c!==e.chartType)&&this.eventBus.fire("hoverOffSeries",u,c),t.innerHTML=this._makeSingleTooltipHtml(e.seriesType||e.chartType,s),t.setAttribute("data-chart-type",e.chartType),this._setIndexesCustomAttribute(t,s),this._setShowedCustomAttribute(t,!0),this._fireBeforeShowTooltipPublicEvent(s,e.silent),a.addClass(t,"show"),l.left=h.x||0,l.top=h.y||0,o=this._makeTooltipPosition(tui.util.extend({dimension:this.getTooltipDimension(t),positionOption:l,alignOption:this.options.align||""},e)),this._moveToPosition(t,o,i),this.eventBus.fire("hoverSeries",s,e.chartType),this._fireAfterShowTooltipPublicEvent(s,{element:t,position:o},e.silent),delete e.silent},_fireBeforeShowTooltipPublicEvent:function(t,e){var i;e||(i=this._makeShowTooltipParams(t),this.eventBus.fire(n.PUBLIC_EVENT_PREFIX+"beforeShowTooltip",i))},_fireAfterShowTooltipPublicEvent:function(t,e,i){var o;i||(o=this._makeShowTooltipParams(t,e),this.eventBus.fire(n.PUBLIC_EVENT_PREFIX+"afterShowTooltip",o))},_executeHidingTooltip:function(t){a.removeClass(t,"show"),t.removeAttribute("data-groupIndex"),t.removeAttribute("data-index"),t.style.cssText=""},_hideTooltip:function(t,e,i){var a=this,r=this._getIndexesCustomAttribute(t),s=t.getAttribute("data-chart-type"),u=i.silent;o.isChartToDetectMouseEventOnSeries(s)?(this.eventBus.fire("hoverOffSeries",r,s),this._fireBeforeHideTooltipPublicEvent(r,u),this._executeHidingTooltip(t)):s&&(this._setShowedCustomAttribute(t,!1),this.eventBus.fire("hoverOffSeries",r,s),this._isChangedIndexes(this.prevIndexes,r)&&delete this.prevIndexes,setTimeout(function(){a._isShowedTooltip(t)||(a._fireBeforeHideTooltipPublicEvent(r,u),a._executeHidingTooltip(t))},n.HIDE_DELAY))},_fireBeforeHideTooltipPublicEvent:function(t,e){var i;e||this.eventBus.fire(n.PUBLIC_EVENT_PREFIX+"beforeHideTooltip",i)},onShowTooltipContainer:function(){this.tooltipContainer.style.zIndex=n.TOOLTIP_ZINDEX},onHideTooltipContainer:function(){this.tooltipContainer.style.zIndex=0},mixin:function(t){tui.util.extend(t.prototype,this)}};t.exports=s},function(t,e,i){"use strict";var n=i(44),o={HTML_DEFAULT_TEMPLATE:'
{{ category }}
{{ legend }}{{ label }}{{ suffix }}
',HTML_PIE_TEMPLATE:'
{{ category }}
{{ legend }}{{ ratioLabel }}( {{ label }} {{ suffix }})
',HTML_COORDINATE_TYPE_CHART_TEMPLATE:'
{{ category }}
{{ legend }}{{ label }}
{{ valueTypes }}
',HTML_GROUP:'
{{ category }}
{{ items }}
',HTML_GROUP_ITEM:'
 {{ legend }}{{ value }}{{ suffix }}
',GROUP_CSS_TEXT:"background-color:{{ color }}",HTML_MAP_CHART_DEFAULT_TEMPLATE:'
{{ name }}: {{ value }}{{ suffix }}
',HTML_BOXPLOT_TEMPLATE:'
{{ category }}
{{ legend }}
Maximum: {{ maxLabel }}{{ suffix }}
Upper Quartile: {{ uqLabel }}{{ suffix }}
Median: {{ medianLabel }}{{ suffix }}
Lower Quartile: {{ lqLabel }}{{ suffix }}
Minimum: {{ minLabel }}{{ suffix }}
',HTML_BOXPLOT_OUTLIER:'
{{ category }}
{{ legend }}
Outlier: {{ label }}{{ suffix }}
'};t.exports={tplDefault:n.template(o.HTML_DEFAULT_TEMPLATE),tplPieChart:n.template(o.HTML_PIE_TEMPLATE),tplCoordinatetypeChart:n.template(o.HTML_COORDINATE_TYPE_CHART_TEMPLATE),tplGroup:n.template(o.HTML_GROUP),tplGroupItem:n.template(o.HTML_GROUP_ITEM),tplGroupCssText:n.template(o.GROUP_CSS_TEXT),tplMapChartDefault:n.template(o.HTML_MAP_CHART_DEFAULT_TEMPLATE),tplBoxplotChartDefault:n.template(o.HTML_BOXPLOT_TEMPLATE),tplBoxplotChartOutlier:n.template(o.HTML_BOXPLOT_OUTLIER)}},function(t,e){"use strict";t.exports={template:function(t){return function(e){var i=t;return tui.util.forEach(e,function(t,e){var n=new RegExp("{{\\s*"+e+"\\s*}}","g");i=i.replace(n,String(t).replace("$","$"))}),i}}}},function(t,e,i){"use strict";function n(t){return new c(t)}var o=i(41),a=i(46),r=i(2),s=i(14),u=i(24),h=i(9),l=i(43),c=tui.util.defineClass(o,{init:function(){this.prevIndex=null,o.apply(this,arguments)},_makeTooltipHtml:function(t,e){var i=l.tplGroupItem,n=l.tplGroupCssText,o=this._makeColors(this.theme),a=tui.util.map(e,function(t,e){return i(tui.util.extend({cssText:n({color:o[e]})},t))}).join("");return l.tplGroup({category:t,items:a})},_setDefaultTooltipPositionOption:function(){this.options.align||(this.isVertical?this.options.align=r.TOOLTIP_DEFAULT_GROUP_ALIGN_OPTION:this.options.align=r.TOOLTIP_DEFAULT_GROUP_HORIZONTAL_ALIGN_OPTION)},render:function(t){var e=o.prototype.render.call(this,t),i=this.dimensionMap.chart,n=this.layout; -return t.checkedLegends&&(this.theme={colors:this.colors}),this.positionModel=new a(i,n,this.isVertical,this.options),e},rerender:function(t){o.prototype.rerender.call(this,t),this.prevIndex=null,t.checkedLegends&&(this.theme=this._updateLegendTheme(t.checkedLegends))},zoom:function(){this.prevIndex=null,o.prototype.zoom.call(this)},_updateLegendTheme:function(t){var e=[];return tui.util.forEachArray(this.dataProcessor.getOriginalLegendData(),function(i){var n=t[i.chartType]||t;n[i.index]&&e.push(i.theme.color)}),{colors:e}},makeTooltipData:function(){var t=this,e=this.dataProcessor.getCategoryCount(this.isVertical);return tui.util.map(this.dataProcessor.getSeriesGroups(),function(i,n){return{category:t.dataProcessor.makeTooltipCategory(n,e-n,t.isVertical),values:i.pluck("label")}})},_makeColors:function(t){var e,i,n,o=0,a=this.dataProcessor.getLegendData();return t.colors?t.colors:(e=h.series.colors.slice(0,a.length),tui.util.map(tui.util.pluck(a,"chartType"),function(a){var r;return n!==a&&(i=t[a]?t[a].colors:e,o=0),n=a,r=i[o],o+=1,r}))},_makeItemRenderingData:function(t){var e=this.dataProcessor,i=this.suffix;return tui.util.map(t,function(t,n){var o=e.getLegendItem(n);return{value:t,legend:o.label,chartType:o.chartType,suffix:i}})},_makeGroupTooltipHtml:function(t){var e,i=this.data[t],n="";return i&&(e=this._makeItemRenderingData(i.values),n=this.templateFunc(i.category,e,this.getRawCategory(t))),n},_getTooltipSectorElement:function(){var t;return this.groupTooltipSector||(this.groupTooltipSector=t=s.create("DIV","tui-chart-group-tooltip-sector"),s.append(this.tooltipContainer,t)),this.groupTooltipSector},_makeVerticalTooltipSectorBound:function(t,e,i){var n;return n=i?1:e.end-e.start,{dimension:{width:n,height:t},position:{left:e.start,top:r.SERIES_EXPAND_SIZE}}},_makeHorizontalTooltipSectorBound:function(t,e){return{dimension:{width:t,height:e.end-e.start},position:{left:r.SERIES_EXPAND_SIZE,top:e.start}}},_makeTooltipSectorBound:function(t,e,i,n){var o;return o=i?this._makeVerticalTooltipSectorBound(t,e,n):this._makeHorizontalTooltipSectorBound(t,e)},_showTooltipSector:function(t,e,i,n,o){var a=this._getTooltipSectorElement(),r=e.start===e.end,h=this._makeTooltipSectorBound(t,e,i,r);r?this.eventBus.fire("showGroupTooltipLine",h):(u.renderDimension(a,h.dimension),u.renderPosition(a,h.position),s.addClass(a,"show")),o&&(n-=1),this.eventBus.fire("showGroupAnimation",n)},_hideTooltipSector:function(t){var e=this._getTooltipSectorElement();s.removeClass(e,"show"),this.eventBus.fire("hideGroupAnimation",t),this.eventBus.fire("hideGroupTooltipLine")},_showTooltip:function(t,e,i){var n,o;tui.util.isNull(this.prevIndex)||this.eventBus.fire("hideGroupAnimation",this.prevIndex),t.innerHTML=this._makeGroupTooltipHtml(e.index),this._fireBeforeShowTooltipPublicEvent(e.index,e.range,e.silent),s.addClass(t,"show"),this._showTooltipSector(e.size,e.range,e.isVertical,e.index,e.isMoving),n=this.getTooltipDimension(t),o=this.positionModel.calculatePosition(n,e.range),this._moveToPosition(t,o,i),this._fireAfterShowTooltipPublicEvent(e.index,e.range,{element:t,position:o},e.silent),this.prevIndex=e.index},_fireBeforeShowTooltipPublicEvent:function(t,e,i){i||this.eventBus.fire(r.PUBLIC_EVENT_PREFIX+"beforeShowTooltip",{chartType:this.chartType,index:t,range:e})},_fireAfterShowTooltipPublicEvent:function(t,e,i,n){n||this.eventBus.fire(r.PUBLIC_EVENT_PREFIX+"afterShowTooltip",tui.util.extend({chartType:this.chartType,index:t,range:e},i))},_hideTooltip:function(t,e,i){var n=i.silent;this.prevIndex=null,this._fireBeforeHideTooltipPublicEvent(e,n),this._hideTooltipSector(e),s.removeClass(t,"show"),t.style.cssText=""},_fireBeforeHideTooltipPublicEvent:function(t,e){e||this.eventBus.fire(r.PUBLIC_EVENT_PREFIX+"beforeHideTooltip",{chartType:this.chartType,index:t})}});n.componentType="tooltip",n.GroupTooltip=c,t.exports=n},function(t,e,i){"use strict";var n=i(2),o=tui.util.defineClass({init:function(t,e,i,n){this.chartDimension=t,this.areaBound=e,this.isVertical=i,this.options=n,this.positions={},this._setData(t,e,i,n)},_getHorizontalDirection:function(t){var e;return t=t||"",e=t.indexOf("left")>-1?n.TOOLTIP_DIRECTION_BACKWARD:t.indexOf("center")>-1?n.TOOLTIP_DIRECTION_CENTER:n.TOOLTIP_DIRECTION_FORWARD},_makeVerticalData:function(t,e,i){var o=this._getHorizontalDirection(i);return{positionType:"left",sizeType:"width",direction:o,areaPosition:e.position.left,areaSize:e.dimension.width,chartSize:t.width,basePosition:n.SERIES_EXPAND_SIZE}},_getVerticalDirection:function(t){var e;return t=t||"",e=t.indexOf("top")>-1?n.TOOLTIP_DIRECTION_BACKWARD:t.indexOf("bottom")>-1?n.TOOLTIP_DIRECTION_FORWARD:n.TOOLTIP_DIRECTION_CENTER},_makeHorizontalData:function(t,e,i){var o=this._getVerticalDirection(i);return{positionType:"top",sizeType:"height",direction:o,areaPosition:e.position.top,areaSize:e.dimension.height,chartSize:t.height,basePosition:n.SERIES_EXPAND_SIZE}},_setData:function(t,e,i,n){var o=this._makeVerticalData(t,e,n.align),a=this._makeHorizontalData(t,e,n.align),r=n.offset||{};i?(this.mainData=o,this.subData=a):(this.mainData=a,this.subData=o),this.positionOption={},this.positionOption.left=r.x||0,this.positionOption.top=r.y||0,this.positions={}},_calculateMainPositionValue:function(t,e,i){var o=e.start===e.end,a=9,r=5,s=o?a:r,u=i.basePosition;return u+=i.direction===n.TOOLTIP_DIRECTION_FORWARD?e.end+s:i.direction===n.TOOLTIP_DIRECTION_BACKWARD?e.start-t-s:o?e.start-t/2:e.start+(e.end-e.start-t)/2},_calculateSubPositionValue:function(t,e){var i,o=e.areaSize/2;return i=e.direction===n.TOOLTIP_DIRECTION_FORWARD?o+e.basePosition:e.direction===n.TOOLTIP_DIRECTION_BACKWARD?o-t+e.basePosition:o-t/2+e.basePosition},_makePositionValueDiff:function(t,e,i){return t+i.areaPosition+e-i.chartSize},_adjustBackwardPositionValue:function(t,e,i,o){var a;return t<-o.areaPosition&&(a=this._calculateMainPositionValue(i,e,{direction:n.TOOLTIP_DIRECTION_FORWARD,basePosition:o.basePosition}),t=this._makePositionValueDiff(a,i,o)>0?-o.areaPosition:a),t},_adjustForwardPositionValue:function(t,e,i,o){var a,r=this._makePositionValueDiff(t,i,o);return r>0&&(a=this._calculateMainPositionValue(i,e,{direction:n.TOOLTIP_DIRECTION_BACKWARD,basePosition:o.basePosition}),a<-o.areaPosition?t-=r:t=a),t},_adjustMainPositionValue:function(t,e,i,o){return o.direction===n.TOOLTIP_DIRECTION_BACKWARD?t=this._adjustBackwardPositionValue(t,e,i,o):o.direction===n.TOOLTIP_DIRECTION_FORWARD?t=this._adjustForwardPositionValue(t,e,i,o):(t=Math.max(t,-o.areaPosition),t=Math.min(t,o.chartSize-o.areaPosition-i)),t},_adjustSubPositionValue:function(t,e,i){return t=i.direction===n.TOOLTIP_DIRECTION_FORWARD?Math.min(t,i.chartSize-i.areaPosition-e):Math.max(t,-i.areaPosition)},_makeCachingKey:function(t){return t.start+"-"+t.end},_addPositionOptionValue:function(t,e){return t+this.positionOption[e]},_makeMainPositionValue:function(t,e,i){var n;return n=this._calculateMainPositionValue(t[i.sizeType],e,i),n=this._addPositionOptionValue(n,i.positionType),n=this._adjustMainPositionValue(n,e,t[i.sizeType],i)},_makeSubPositionValue:function(t,e){var i;return i=this._calculateSubPositionValue(t[e.sizeType],e),i=this._addPositionOptionValue(i,e.positionType),i=this._adjustSubPositionValue(i,t[e.sizeType],e)},calculatePosition:function(t,e){var i=this._makeCachingKey(e),n=this.mainData,o=this.subData,a=this.positions[i];return a||(a={},a[n.positionType]=this._makeMainPositionValue(t,e,n),a[o.positionType]=this._makeSubPositionValue(t,o),this.positions[i]=a),a},updateOptions:function(t){this.options=t,this._setData(this.chartDimension,this.areaBound,this.isVertical,t)},updateBound:function(t){this.areaBound=t,this._setData(this.chartDimension,t,this.isVertical,this.options)}});t.exports=o},function(t,e,i){"use strict";function n(t){return new u(t)}var o=i(2),a=i(41),r=i(42),s=i(43),u=tui.util.defineClass(a,{init:function(t){this.mapModel=t.mapModel,a.apply(this,arguments)},_makeTooltipHtml:function(t){return s.tplMapChartDefault(t)},_makeSingleTooltipHtml:function(t,e){var i=this.mapModel.getDatum(e.index),n=this.options.suffix?" "+this.options.suffix:"";return this.templateFunc({name:i.name||i.code,value:i.label,suffix:n})},_makeShowTooltipParams:function(t,e){var i,n=this.mapModel.getDatum(t.index);return i=tui.util.extend({chartType:this.chartType,code:n.code,name:n.name,value:n.label,index:t.index},e)},_setDefaultTooltipPositionOption:function(){this.options.align||(this.options.align=o.TOOLTIP_DEFAULT_ALIGN_OPTION)}});r.mixin(u),n.componentType="tooltip",t.exports=n},function(t,e,i){"use strict";function n(t){return new h(t)}var o=i(49),a=i(2),r=i(34),s=i(14),u=i(24),h=tui.util.defineClass(o,{init:function(t){this.chartType=t.chartType,this.eventBus=t.eventBus,this.isDown=!1,this.drawingType=a.COMPONENT_TYPE_DOM},_renderMouseEventDetectorArea:function(t){u.renderDimension(t,this.layout.dimension),u.renderPosition(t,this.layout.position)},_onClick:function(){},_onMousedown:function(t){this.isDown=!0,this.eventBus.fire("dragStartMapSeries",{left:t.clientX,top:t.clientY})},_dragEnd:function(){this.isDrag=!1,s.removeClass(this.mouseEventDetectorContainer,"drag"),this.eventBus.fire("dragEndMapSeries")},_onMouseup:function(t){this.isDown=!1,this.isDrag?this._dragEnd():this._onMouseEvent("click",t),this.isMove=!1},_onMousemove:function(t){this.isDown?(this.isDrag||s.addClass(this.mouseEventDetectorContainer,"drag"),this.isDrag=!0,this.eventBus.fire("dragMapSeries",{left:t.clientX,top:t.clientY})):(this.isMove=!0,this._onMouseEvent("move",t))},_onMouseout:function(t){this.isDrag?this._dragEnd():this._onMouseEvent("move",t),this.isDown=!1},_onMousewheel:function(t){var e=t.wheelDelta||t.detail*a.FF_WHEELDELTA_ADJUSTING_VALUE;return this.eventBus.fire("wheel",e,{left:t.clientX,top:t.clientY}),t.preventDefault&&t.preventDefault(),!1},attachEvent:function(t){o.prototype.attachEvent.call(this,t),tui.util.browser.firefox?r.on(t,"DOMMouseScroll",this._onMousewheel,this):r.on(t,"mousewheel",this._onMousewheel,this)}});n.componentType="mouseEventDetector",t.exports=n},function(t,e,i){"use strict";var n=i(50),o=i(51),a=i(2),r=i(34),s=i(5),u=i(14),h=i(24),l=tui.util.defineClass({init:function(t){var e;this.chartType=t.chartType,this.chartTypes=t.chartTypes,this.isVertical=t.isVertical,this.dataProcessor=t.dataProcessor,this.allowSelect=t.allowSelect,this.eventBus=t.eventBus,this.layout=null,this.selectedData=null,this.prevClientPosition=null,this.prevFoundData=null,e=s.isLineTypeChart(this.chartType,this.chartTypes),this.expandSize=e?a.SERIES_EXPAND_SIZE:0,this.seriesItemBoundsData=[],this.seriesCount=s.isComboChart(this.chartType)?2:1,this._attachToEventBus(),this.drawingType=a.COMPONENT_TYPE_DOM},_attachToEventBus:function(){this.eventBus.on("receiveSeriesData",this.onReceiveSeriesData,this)},_getRenderingBound:function(){var t=h.expandBound(this.layout);return t},_renderMouseEventDetectorArea:function(t,e){var i,o,a=this.layout.dimension;this.dimension=a,o=new n(this.layout,e,this.chartType,this.isVertical,this.chartTypes),this.tickBaseCoordinateModel=o,i=this._getRenderingBound(),h.renderDimension(t,i.dimension),h.renderPosition(t,i.position)},_setDataForRendering:function(t){this.layout=t.layout},_pickTickCount:function(t){var e;return e=this.isVertical?t.xAxis.eventTickCount||t.xAxis.tickCount:t.yAxis.tickCount},render:function(t){var e,i=t.paper;return this.positionMap=t.positionMap,u.addClass(i,"tui-chart-series-custom-event-area"),t.axisDataMap.xAxis&&(e=this._pickTickCount(t.axisDataMap)),this._setDataForRendering(t),this._renderMouseEventDetectorArea(i,e),this.attachEvent(i),this.mouseEventDetectorContainer=i,u.append(i,this._createTransparentChild()),i},_createTransparentChild:function(){var t=document.createElement("DIV"),e=t.style;return e.backgroundColor="#fff",e.height=h.getStyle(this.mouseEventDetectorContainer).height,h.setOpacity(t,0),t},_calculateLayerPosition:function(t,e,i){var n,o,r=this.mouseEventDetectorContainer.getBoundingClientRect(),s=this.positionMap.series,u=this.expandSize,h={};return i=!!tui.util.isUndefined(i)||i,i&&(n=r.right-u,o=r.left+u,t=Math.min(Math.max(t,o),n)),h.x=t-r.left+s.left+u-a.CHART_PADDING,tui.util.isUndefined(e)||(h.y=e-r.top+s.top+u-a.CHART_PADDING),h},onReceiveSeriesData:function(t){var e=this.seriesItemBoundsData,i=this.seriesCount;e.length===i&&(e=[]),e.push(t),e.length===i&&(this.boundsBaseCoordinateModel=new o(e))},rerender:function(t){var e;t.axisDataMap.xAxis&&(e=this._pickTickCount(t.axisDataMap)),this.selectedData=null,this._setDataForRendering(t),this._renderMouseEventDetectorArea(this.mouseEventDetectorContainer,e)},resize:function(t){this.containerBound=null,this.rerender(t)},_isChangedSelectData:function(t,e){return!t||!e||t.chartType!==e.chartType||t.indexes.groupIndex!==e.indexes.groupIndex||t.indexes.index!==e.indexes.index},_findDataFromBoundsCoordinateModel:function(t){var e,i=t.x,n=t.y;return e=s.isTreemapChart(this.chartType)?0:this.tickBaseCoordinateModel.findIndex(this.isVertical?i:n),this.boundsBaseCoordinateModel.findData(e,i,n)},_findData:function(t,e){var i=this._calculateLayerPosition(t,e);return this._findDataFromBoundsCoordinateModel(i)},_showTooltip:function(){},animateForAddingData:function(){var t,e;this.prevClientPosition&&(t=this._findData(this.prevClientPosition.x,this.prevClientPosition.y),t&&(e=this.prevFoundData&&this.prevFoundData.indexes.groupIndex===t.indexes.groupIndex,this._showTooltip(t,e)),this.prevFoundData=t)},_onMouseEvent:function(t,e){u.addClass(this.mouseEventDetectorContainer,"hide"),this.eventBus.fire(t+"Series",{left:e.clientX,top:e.clientY}),u.removeClass(this.mouseEventDetectorContainer,"hide")},_unselectSelectedData:function(){this.eventBus.fire("unselectSeries",this.selectedData),this.selectedData=null},_onClick:function(t){var e=this._findData(t.clientX,t.clientY);this._isChangedSelectData(this.selectedData,e)?e&&(this.selectedData&&this._unselectSelectedData(),this.eventBus.fire("selectSeries",e),this.allowSelect&&(this.selectedData=e)):this._unselectSelectedData()},_onMousedown:function(){},_onMouseup:function(){},_onMousemove:function(t){this.prevClientPosition={x:t.clientX,y:t.clientY}},_onMouseout:function(){this.prevClientPosition=null,this.prevFoundData=null},attachEvent:function(t){r.on(t,{click:this._onClick,mousedown:this._onMousedown,mouseup:this._onMouseup,mousemove:this._onMousemove,mouseout:this._onMouseout},this)},findDataByIndexes:function(){}});tui.util.CustomEvents.mixin(l),t.exports=l},function(t,e,i){"use strict";var n=i(5),o=i(6),a=tui.util.defineClass({init:function(t,e,i,o,a){this.isLineType=n.isLineTypeChart(i,a),this.data=this._makeData(t,e,o)},_getRanges:function(t,e,i){var n=e,o=i/2;return tui.util.map(tui.util.range(0,t),function(){var t={min:n-o,max:n+o};return n+=i,t})},_makeLineTypeData:function(t,e,i){var n=(t+1)/(e-1),o=this._getRanges(e,i||0,n);return o[e-1].max-=1,o},_makeNormalData:function(t,e,i){var n=e-1,a=t/n,r=i||0;return tui.util.map(tui.util.range(0,n),function(){var e=o.min([t+r,a+r]),i={min:r,max:e};return r=e,i})},_makeData:function(t,e,i){var n,o=i?"width":"height",a=i?"left":"top";return n=this.isLineType?this._makeLineTypeData(t.dimension[o],e,t.position[a]):this._makeNormalData(t.dimension[o],e,t.position[a])},findIndex:function(t){var e=-1;return tui.util.forEachArray(this.data,function(i,n){return!(i.min=t)||(e=n,!1)}),e},getLastIndex:function(){return this.data.length-1},makeRange:function(t,e){var i,n,o=this.data[t];return this.isLineType?(n=parseInt(o.max-(o.max-o.min)/2,10),i={start:n,end:n}):i={start:o.min-(e||0),end:o.max-(e||0)},i}});t.exports=a},function(t,e,i){"use strict";var n=i(2),o=i(5),a=i(6),r=tui.util.defineClass({init:function(t){this.data=this._makeData(t)},_makeRectTypePositionData:function(t,e){var i=!o.isBoxTypeChart(e);return tui.util.map(t,function(t,n){return tui.util.map(t,function(t,o){var a;return t?(a=t.end,{sendData:{chartType:e,indexes:{groupIndex:n,index:o},allowNegativeTooltip:i,bound:a},bound:{left:a.left,top:a.top,right:a.left+a.width,bottom:a.top+a.height}}):null})})},_makeOutliersPositionDataForBoxplot:function(t,e,i){var n=!o.isBoxTypeChart(e),a=[].concat(t);tui.util.forEach(a,function(t,o){tui.util.forEach(t,function(t,a){var r;t.outliers&&t.outliers.length&&(r=tui.util.map(t.outliers,function(t,i){var r={top:t.top-3,left:t.left-3,width:6,height:6};return{sendData:{chartType:e,indexes:{groupIndex:o,index:a,outlierIndex:i},allowNegativeTooltip:n,bound:r},bound:{left:r.left,top:r.top,right:r.left+r.width,bottom:r.top+r.height}}}),i[o]=i[o].concat(r))})})},_makeDotTypePositionData:function(t,e){return t?tui.util.map(a.pivot(t),function(t,i){return tui.util.map(t,function(t,o){return t?{sendData:{chartType:e,indexes:{groupIndex:i,index:o},bound:t},bound:{left:t.left-n.DOT_RADIUS,top:t.top-n.DOT_RADIUS,right:t.left+n.DOT_RADIUS,bottom:t.top+n.DOT_RADIUS}}:null})}):[]},_joinData:function(t){var e=[];return tui.util.forEachArray(t,function(t){tui.util.forEachArray(t,function(t,i){var n;e[i]?(n=e[i].length,tui.util.forEachArray(t,function(t){t&&(t.sendData.indexes.legendIndex=t.sendData.indexes.index+n)}),e[i]=e[i].concat(t)):e[i]=t})}),e},_makeData:function(t){var e=this,i=tui.util.map(t,function(t){var i;return i=o.isLineTypeChart(t.chartType)?e._makeDotTypePositionData(t.data.groupPositions,t.chartType):e._makeRectTypePositionData(t.data.groupBounds,t.chartType),o.isBoxplotChart(t.chartType)&&e._makeOutliersPositionDataForBoxplot(t.data.groupBounds,t.chartType,i),i});return this._joinData(i)},_findCandidates:function(t,e,i){return tui.util.filter(t,function(t){var n,o,a=t&&t.bound,r=!1;return a&&(n=a.left<=e&&a.right>=e,o=a.top<=i&&a.bottom>=i,r=n&&o),r})},findData:function(t,e,i){var n,o=1e4,a=null;return t>-1&&this.data[t]&&(n=this._findCandidates(this.data[t],e,i),tui.util.forEachArray(n,function(t){var e=Math.abs(i-t.bound.top);o>e&&(o=e,a=t.sendData)})),a},findDataByIndexes:function(t){var e=this.data[t.index][t.seriesIndex].sendData;return tui.util.isNumber(t.outlierIndex)?this._findOutlierDataByIndexes(t):e},_findOutlierDataByIndexes:function(t){var e=null;return tui.util.forEachArray(this.data[t.index],function(i){var n=i.sendData.indexes,o=n.index===t.seriesIndex&&n.outlierIndex===t.outlierIndex;return o&&(e=i.sendData),!o}),e}});t.exports=r},function(t,e,i){"use strict";function n(t){var e,i=t.chartOptions.chartType,n=t.seriesTypes,l=t.chartOptions.series.zoomable,c=t.chartOptions.series.allowSelect;return e=t.chartOptions.tooltip.grouped?s:o.isMapChart(i)?h:o.isBarTypeChart(i)||o.isBoxplotChart(i)||o.isHeatmapChart(i)||o.isTreemapChart(i)?u:o.isCoordinateTypeChart(i)||o.isPieChart(i)||o.isPieDonutComboChart(i,n)?r:a,t.chartType=i,t.chartTypes=n,t.zoomable=l,t.allowSelect=c,e(t)}var o=i(5),a=i(53),r=i(56),s=i(57),u=i(58),h=i(48);n.componentType="mouseEventDetector",t.exports=n},function(t,e,i){"use strict";function n(t){return new u(t)}var o=i(49),a=i(54),r=i(55),s=50,u=tui.util.defineClass(o,{init:function(t){o.call(this,t),this.prevFoundData=null,this.zoomable=t.zoomable,this.zoomable&&(tui.util.extend(this,a),this._initForZoom(t.zoomable))},onReceiveSeriesData:function(t){var e=this.seriesItemBoundsData,i=this.seriesCount;e.length===i&&(e=[]),e.push(t),e.length===i&&(this.dataModel=new r(e)),this.zoomable&&this._showTooltipAfterZoom()},_findData:function(t,e){var i=this._calculateLayerPosition(t,e);return this.dataModel.findData(i,s)},_findDataForZoomable:function(t,e){var i=this._calculateLayerPosition(t,e);return this.dataModel.findData(i)},_getFirstData:function(t){return this.dataModel.getFirstData(t)},_getLastData:function(t){return this.dataModel.getLastData(t)},_showTooltip:function(t){this.eventBus.fire("showTooltip",t)},_hideTooltip:function(t){t=t||{},this.eventBus.fire("hideTooltip",this.prevFoundData,t)},_onMousemove:function(t){var e,i;o.prototype._onMousemove.call(this,t),i=this._findData(t.clientX,t.clientY),this.zoomable&&(e=this._isAfterDragMouseup()),!e&&this._isChangedSelectData(this.prevFoundData,i)&&(i?this._showTooltip(i):this.prevFoundData&&this._hideTooltip(),this.prevFoundData=i)},_onMouseout:function(){this.prevFoundData&&this._hideTooltip(),o.prototype._onMouseout.call(this)},findDataByIndexes:function(t){return this.dataModel.findDataByIndexes(t)}});n.componentType="mouseEventDetector",t.exports=n},function(t,e,i){"use strict";var n=i(49),o=i(2),a=i(14),r=i(24),s=i(34),u={_initForZoom:function(t){this.zoomable=t,this.dragStartIndexes=null,this.startClientPosition=null,this.startLayerX=null,this.dragSelectionElement=null,this.containerBound=null,this.isShowTooltipAfterZoom=!1,this.afterMouseup=!1,this.prevDistanceOfRange=null,this.reverseMove=null,this.resetZoomBtn=null},_showTooltipAfterZoom:function(){var t,e=this.isShowTooltipAfterZoom;this.isShowTooltipAfterZoom=!1,e&&this.dragStartIndexes&&(t=this.reverseMove?this._getFirstData(this.dragStartIndexes.index):this._getLastData(this.dragEndIndexes.index),t&&this._showTooltip(t))},_updateDimensionForDragSelection:function(t){r.renderDimension(t,{height:this.layout.dimension.height})},_renderDragSelection:function(){var t=a.create("DIV","tui-chart-drag-selection");return this._updateDimensionForDragSelection(t),t},render:function(t){var e=n.prototype.render.call(this,t),i=this._renderDragSelection();return a.append(e,i),this.dragSelectionElement=i,e},resize:function(t){this.containerBound=null,n.prototype.resize.call(this,t),this._updateDimensionForDragSelection(this.dragSelectionElement)},_onClick:function(){},_isAfterDragMouseup:function(){var t=this.afterMouseup;return t&&(this.afterMouseup=!1),t},_bindDragEvent:function(t){t.setCapture&&t.setCapture(),s.on(document,"mousemove",this._onDrag,this),s.off(this.mouseEventDetectorContainer,"mouseup",this._onMouseup,this),s.on(document,"mouseup",this._onMouseupAfterDrag,this)},_unbindDragEvent:function(){this.downTarget&&this.downTarget.releaseCapture&&this.downTarget.releaseCapture(),s.off(document,"mousemove",this._onDrag,this),s.off(document,"mouseup",this._onMouseupAfterDrag,this),s.on(this.mouseEventDetectorContainer,"mouseup",this._onMouseup,this)},_onMousedown:function(t){var e;this.zoomable&&(e=t.target||t.srcElement,this.startClientPosition={x:t.clientX,y:t.clientY},this.startLayerX=this._calculateLayerPosition(t.clientX).x,this.downTarget=e,this._bindDragEvent(e))},_showDragSelection:function(t){var e=this._calculateLayerPosition(t).x,i=Math.min(e,this.startLayerX)-this.layout.position.left,n=Math.abs(e-this.startLayerX),o=this.dragSelectionElement;o.style.left=i+"px",o.style.width=n+"px",a.addClass(o,"show")},_hideDragSelection:function(){a.removeClass(this.dragSelectionElement,"show")},_onDrag:function(t){var e,i=this.startClientPosition,n=t.target||t.srcElement;i&&(e=this._findDataForZoomable(i.x,i.y),a.hasClass(n,o.CLASS_NAME_RESET_ZOOM_BTN)||(tui.util.isNull(this.dragStartIndexes)?this.dragStartIndexes=e?e.indexes:{}:this._showDragSelection(t.clientX)))},_adjustIndexRange:function(t,e){var i=[t,e].sort(function(t,e){return t-e}),n=i[1]-i[0];return 0===n?0===i[0]?i[1]+=2:(i[0]-=1,i[1]+=1):1===n&&(0===i[0]?i[1]+=1:i[0]-=1),i},_fireZoom:function(t,e){var i=t>e,n=this._adjustIndexRange(t,e),o=n[1]-n[0];this.prevDistanceOfRange!==o&&(this.prevDistanceOfRange=o,this.reverseMove=i,this.eventBus.fire("zoom",n))},_setIsShowTooltipAfterZoomFlag:function(t,e){var i=this._calculateLayerPosition(t,e,!1).x,n=this._calculateLayerPosition(t,e).x;this.isShowTooltipAfterZoom=i===n},_onMouseupAfterDrag:function(t){var e,i=this._findDataForZoomable(t.clientX,t.clientY);this._unbindDragEvent(),tui.util.isNull(this.dragStartIndexes)?(e=t.target||t.srcElement,a.hasClass(e,o.CLASS_NAME_RESET_ZOOM_BTN)?(this._hideTooltip(),this.prevDistanceOfRange=null,this.eventBus.fire("resetZoom")):n.prototype._onClick.call(this,t)):this.dragStartIndexes&&i?(this.dragEndIndexes=i.indexes,this._setIsShowTooltipAfterZoomFlag(t.clientX,t.clientY),this._hideDragSelection(),this._fireZoom(this.dragStartIndexes.groupIndex,this.dragEndIndexes.groupIndex)):(this._setIsShowTooltipAfterZoomFlag(t.clientX,t.clientY),this._hideDragSelection()),this.startClientPosition=null,this.dragStartIndexes=null,this.startLayerX=null,this.afterMouseup=!0},_renderResetZoomBtn:function(){var t=a.create("DIV",o.CLASS_NAME_RESET_ZOOM_BTN);return t.innerHTML="Reset Zoom",t},zoom:function(t){this.prevFoundData=null,this.rerender(t),this._updateDimensionForDragSelection(this.dragSelectionElement),this.resetZoomBtn?t.isResetZoom&&(this.mouseEventDetectorContainer.removeChild(this.resetZoomBtn),this.resetZoomBtn=null):(this.resetZoomBtn=this._renderResetZoomBtn(),a.append(this.mouseEventDetectorContainer,this.resetZoomBtn))}};t.exports=u},function(t,e,i){"use strict";var n=i(5),o=i(6),a=Array.prototype.concat,r=tui.util.defineClass({init:function(t){this.data=this._makeData(t),this.lastGroupIndex=0},_makeData:function(t){var e=0,i=t.length,r=tui.util.map(t,function(t,a){var r=t.data.groupPositions||t.data.groupBounds,s=t.chartType;return(n.isLineTypeChart(s)||n.isRadialChart(s))&&(r=o.pivot(r)),e=Math.max(r.length-1,e),tui.util.map(r,function(t,e){return tui.util.map(t,function(t,n){var o=null;return t&&(o={chartType:s,indexes:{groupIndex:e,index:n},bound:t}),i>1&&(o.indexes.legendIndex=a),o})})});return r=a.apply([],r),this.lastGroupIndex=e,tui.util.filter(a.apply([],r),function(t){return!!t})},findData:function(t,e){var i,n=1e5;return e=e||Number.MAX_VALUE,tui.util.forEach(this.data,function(o){var a=t.x-o.bound.left,r=t.y-o.bound.top,s=Math.sqrt(Math.pow(a,2)+Math.pow(r,2));si.width||e<0||e>i.height},_showTooltip:function(t,e){var i=t.indexes.groupIndex,n=(this.isVertical?this.layout.position.left:this.layout.position.top)-o.CHART_PADDING;this.prevIndex=i,this.eventBus.fire("showTooltip",{index:i,range:this.tickBaseCoordinateModel.makeRange(i,n),size:this.dimension[this.sizeType],isVertical:this.isVertical,isMoving:e,silent:t.silent})},_hideTooltip:function(t){t=t||{},this.eventBus.fire("hideTooltip",this.prevIndex,t),this.prevIndex=null},_onMousemove:function(t){var e,i;a.prototype._onMousemove.call(this,t),this.zoomable&&this._isAfterDragMouseup()||(e=this._findGroupData(t.clientX,t.clientY),i=e.indexes.groupIndex,i===-1?this._onMouseout(t):this.prevIndex!==i&&this._showTooltip(e))},_onMouseout:function(t){var e;e=this._calculateLayerPosition(t.clientX,t.clientY,!1),this._isOuterPosition(e.x,e.y)&&!tui.util.isNull(this.prevIndex)&&this._hideTooltip(),a.prototype._onMouseout.call(this)}});n.componentType="mouseEventDetector",t.exports=n},function(t,e,i){"use strict";function n(t){return new u(t)}var o=i(49),a=i(2),r=i(5),s=i(14),u=tui.util.defineClass(o,{init:function(){o.apply(this,arguments),this.prevFoundData=null,this.zoomHistory=[-1],this.historyBackBtn=null},_attachToEventBus:function(){o.prototype._attachToEventBus.call(this),this.eventBus.on("afterZoom",this.onAfterZoom,this)},_showTooltip:function(t){this.eventBus.fire("showTooltip",t)},_hideTooltip:function(t){t=t||{},this.eventBus.fire("hideTooltip",this.prevFoundData,t),this.prevFoundData=null,this.styleCursor(!1)},styleCursor:function(t){var e=this.mouseEventDetectorContainer;t?e.style.cursor="pointer":e.style.cursor="default"},_onMousemove:function(t){var e,i=this._calculateLayerPosition(t.clientX,t.clientY),n=this._findDataFromBoundsCoordinateModel(i);this._isChangedSelectData(this.prevFoundData,n)&&(this.prevFoundData&&this._hideTooltip(),this.prevFoundData=n,n&&(r.isTreemapChart(this.chartType)&&(e=this._getSeriesItemByIndexes(n.indexes),this.styleCursor(e.hasChild)),this._showTooltip(n)))},_zoomHistoryBack:function(){var t=this.zoomHistory[this.zoomHistory.length-2];this.zoomHistory.pop(),this.eventBus.fire("zoom",t),1===this.zoomHistory.length&&(this.mouseEventDetectorContainer.removeChild(this.historyBackBtn),this.historyBackBtn=null)},_getSeriesItemByIndexes:function(t){var e=this.dataProcessor.getSeriesDataModel(a.CHART_TYPE_TREEMAP);return e.getSeriesItem(t.groupIndex,t.index,!0)},_onClick:function(t){var e,i,n,u=t.target||t.srcElement;if(o.prototype._onClick.call(this,t),r.isTreemapChart(this.chartType)){if(s.hasClass(u,a.CLASS_NAME_RESET_ZOOM_BTN))return this._hideTooltip(),void this._zoomHistoryBack();if(e=this._calculateLayerPosition(t.clientX,t.clientY),i=this._findDataFromBoundsCoordinateModel(e)){if(n=this._getSeriesItemByIndexes(i.indexes),!n.hasChild)return;this._hideTooltip(),this.eventBus.fire("zoom",i.indexes.index)}}},_onMouseout:function(t){var e=this.mouseEventDetectorContainer.getBoundingClientRect(),i=t.clientX,n=t.clientY;e.left<=i&&e.top<=n&&e.right>=i&&e.bottom>=n||(this.prevFoundData&&this._hideTooltip(),o.prototype._onMouseout.call(this))},onAfterZoom:function(t){this.historyBackBtn||(this.historyBackBtn=s.create("DIV",a.CLASS_NAME_RESET_ZOOM_BTN),this.historyBackBtn.innerHTML="< Back",s.append(this.mouseEventDetectorContainer,this.historyBackBtn)),this.zoomHistory[this.zoomHistory.length-1]!==t&&this.zoomHistory.push(t)},findDataByIndexes:function(t){return this.boundsBaseCoordinateModel.findDataByIndexes(t)}});n.componentType="mouseEventDetector",t.exports=n},function(t,e,i){"use strict";function n(t){var e=t.chartOptions.libType,i=t.chartTheme;return t.libType=e,t.chartType="bar",t.chartBackground=i.chart.background,new u(t)}var o=i(60),a=i(62),r=i(2),s=i(5),u=tui.util.defineClass(o,{init:function(){o.apply(this,arguments)},_makeBound:function(t,e,i,n,o){return{start:{top:i,left:n,width:0,height:e},end:{top:i,left:o,width:t,height:e}}},_calculateAdditionalLeft:function(t){var e=0;return this.options.divided&&t>0&&(e=this.dimensionMap.yAxis.width+r.OVERLAPPING_WIDTH),e},_makeBarChartBound:function(t,e,i,n,o){var a,r,s,u,h=t.baseBarSize*n.ratioDistance,l=this._calculateAdditionalLeft(n.value),c=t.baseBarSize*n.startRatio,d=t.basePosition+c+l,p=n.stack!==e.prevStack;return(!i||!this.options.diverging&&p)&&(a=i?this.dataProcessor.findStackIndex(n.stack):o,e.top=e.baseTop+t.pointInterval*a,e.plusLeft=0,e.minusLeft=0),n.value>=0?(r=d+e.plusLeft,e.plusLeft+=h):(e.minusLeft-=h,r=d+e.minusLeft),e.prevStack=n.stack,u=e.top+t.pointInterval-t.barSize/2, -s=this._makeBound(h,t.barSize,u,d,r)},_makeBounds:function(){var t=this,e=this._getSeriesDataModel(),i=s.isValidStackOption(this.options.stackType),n=this.layout.dimension,o=this._makeBaseDataForMakingBound(n.height,n.width);return e.map(function(e,n){var a=n*o.groupSize+t.layout.position.top,r={baseTop:a,top:a,plusLeft:0,minusLeft:0,prevStack:null},s=tui.util.bind(t._makeBarChartBound,t,o,r,i);return e.map(s)})},_calculateTopPositionOfSumLabel:function(t,e){return t.top+(t.height-e+r.TEXT_PADDING)/2}});a.mixin(u),n.componentType="series",n.BarChartSeries=u,t.exports=n},function(t,e,i){"use strict";var n=600,o=tui.util.browser,a=o.msie&&7===o.version,r=i(2),s=i(14),u=i(5),h=i(24),l=i(7),c=i(61),d=tui.util.defineClass({className:"tui-chart-series-area",init:function(t){var e=t.libType;this.chartType=t.chartType,this.seriesType=t.seriesType||t.chartType,this.componentType=t.componentType,this.dataProcessor=t.dataProcessor,this.eventBus=t.eventBus,this.chartBackground=t.chartBackground,this.options=t.options||{},this.orgTheme=this.theme=t.theme,this.graphRenderer=l.get(e,t.chartType),this.seriesContainer=null,this.seriesLabelContainer=null,this.seriesData=[],this.selectedLegendIndex=null,this.labelShowEffector=null,this.paper=null,this.limit=null,this.aligned=null,this.layout=null,this.dimensionMap=null,this.positionMap=null,this.axisDataMap=null,this.beforeAxisDataMap=null,this.drawingType=r.COMPONENT_TYPE_RAPHAEL,this._attachToEventBus()},_attachToEventBus:function(){var t=tui.util.bind(function(){this.isInitRenderCompleted=!0,this.eventBus.off("load",t)},this);this.eventBus.on(r.PUBLIC_EVENT_PREFIX+"load",t),this.eventBus.on({selectLegend:this.onSelectLegend,selectSeries:this.onSelectSeries,unselectSeries:this.onUnselectSeries,hoverSeries:this.onHoverSeries,hoverOffSeries:this.onHoverOffSeries,showGroupAnimation:this.onShowGroupAnimation,hideGroupAnimation:this.onHideGroupAnimation},this),this.onShowTooltip&&this.eventBus.on("showTooltip",this.onShowTooltip,this),this.onShowGroupTooltipLine&&this.eventBus.on({showGroupTooltipLine:this.onShowGroupTooltipLine,hideGroupTooltipLine:this.onHideGroupTooltipLine},this),this.onClickSeries&&this.eventBus.on({clickSeries:this.onClickSeries,moveSeries:this.onMoveSeries},this)},_getSeriesDataModel:function(){return this.dataProcessor.getSeriesDataModel(this.seriesType)},_makeSeriesData:function(){},getSeriesData:function(){return this.seriesData},_renderSeriesLabel:function(){},_renderSeriesLabelArea:function(t){return this._renderSeriesLabel(t)},_sendBoundsToMouseEventDetector:function(t){this.eventBus.fire("receiveSeriesData",{chartType:this.chartType,data:t})},_renderSeriesArea:function(t,e){var i,n;i=this.dimensionMap.extendedSeries,this.seriesData=n=this._makeSeriesData(),this._sendBoundsToMouseEventDetector(n),(this.hasDataForRendering(n)||"map"===this.chartType)&&(e&&(this.seriesSet=e(i,n,t)),u.isShowLabel(this.options)&&(this.labelSet=this._renderSeriesLabelArea(t)))},_makeParamsForGraphRendering:function(t,e){return tui.util.extend({dimension:t,position:this.layout.position,chartType:this.seriesType,theme:this.theme,options:this.options},e)},_renderGraph:function(t,e,i){var n=this._makeParamsForGraphRendering(t,e);return this.graphRenderer.render(i,n)},_setDataForRendering:function(t){this.paper=t.paper,this.limit=t.limitMap[this.chartType],t.axisDataMap&&t.axisDataMap.xAxis&&(this.aligned=t.axisDataMap.xAxis.aligned),this.layout=t.layout,this.dimensionMap=t.dimensionMap,this.positionMap=t.positionMap,this.axisDataMap=t.axisDataMap},render:function(t){var e;this.paper=t.paper,this._setDataForRendering(t),this.beforeAxisDataMap=this.axisDataMap,t.checkedLegends&&(e=t.checkedLegends[this.seriesType],this.options.colorByPoint||(this.theme=this._getCheckedSeriesTheme(this.orgTheme,e))),this._renderSeriesArea(t.paper,tui.util.bind(this._renderGraph,this)),this.paper.pushDownBackgroundToBottom&&this.paper.pushDownBackgroundToBottom()},_getCheckedSeriesTheme:function(t,e){var i;return e.length?(i=JSON.parse(JSON.stringify(t)),i.colors=tui.util.filter(i.colors,function(t,i){return e[i]}),i):t},_clearSeriesContainer:function(){this.seriesSet&&this.seriesSet.remove&&this.seriesSet.remove(),this.labelSet&&this.labelSet.remove&&this.labelSet.remove(),this.seriesData=[]},rerender:function(t){var e;this._clearSeriesContainer(),this.dataProcessor.getGroupCount(this.seriesType)&&(t.checkedLegends&&(e=t.checkedLegends[this.seriesType],this.theme=this._getCheckedSeriesTheme(this.orgTheme,e)),this._setDataForRendering(t),this._renderSeriesArea(t.paper,tui.util.bind(this._renderGraph,this)),this.labelShowEffector&&clearInterval(this.labelShowEffector.timerId),!e&&this.isInitRenderCompleted||this.animateComponent(!0),tui.util.isNull(this.selectedLegendIndex)||this.graphRenderer.selectLegend(this.selectedLegendIndex))},_isLabelVisible:function(){return!(!this.options.showLabel&&!this.options.showLegend)},_resizeGraph:function(t,e){return this.graphRenderer.resize(tui.util.extend({dimension:this.dimensionMap.chart},e)),this.seriesSet},resize:function(t){this._setDataForRendering(t),this.labelSet&&this.labelSet.remove&&this.labelSet.remove(),this._renderSeriesArea(t.paper,tui.util.bind(this._resizeGraph,this))},_renderPosition:function(t,e){var i=h.isOldBrowser()?1:0;h.renderPosition(t,{top:e.top-i,left:e.left-2*i})},_getLimitDistanceFromZeroPoint:function(t,e){var i=e.min,n=e.max,o=n-i,a=0,r=0;return i<=0&&n>=0?(a=(o+i)/o*t,r=(o-n)/o*t):i>0&&(a=t),{toMax:a,toMin:r}},_findLabelElement:function(t){var e=null;return e=s.hasClass(t,r.CLASS_NAME_SERIES_LABEL)?t:s.findParentByClass(t,r.CLASS_NAME_SERIES_LABEL)},onHoverSeries:function(t,e){e===this.chartType&&this.graphRenderer.showAnimation&&this.graphRenderer.showAnimation(t)},onHoverOffSeries:function(t,e){e===this.chartType&&this.graphRenderer.hideAnimation&&t&&this.graphRenderer.hideAnimation(t)},onShowGroupAnimation:function(t){this.graphRenderer.showGroupAnimation&&this.graphRenderer.showGroupAnimation(t)},onHideGroupAnimation:function(t){this.graphRenderer.hideGroupAnimation&&this.graphRenderer.hideGroupAnimation(t)},animateComponent:function(t){this.graphRenderer.animate&&this.seriesSet?this.graphRenderer.animate(tui.util.bind(this.animateSeriesLabelArea,this,t),this.seriesSet):this.animateSeriesLabelArea(t)},_fireLoadEvent:function(t){t||this.eventBus.fire(r.PUBLIC_EVENT_PREFIX+"load")},animateSeriesLabelArea:function(t){return this._isLabelVisible()?void(a?(this._fireLoadEvent(t),this.labelSet.attr({opacity:1})):this.labelSet&&this.labelSet.length&&c.animateOpacity(this.labelSet,0,1,n)):void this._fireLoadEvent(t)},_makeExportationSeriesData:function(t){var e,i=t.indexes,n=tui.util.isExisty(i.legendIndex)?i.legendIndex:i.index,o=this.dataProcessor.getLegendItem(n),a=tui.util.isExisty(i.groupIndex)?i.groupIndex:0,r=this._getSeriesDataModel().getSeriesItem(a,i.index);return tui.util.isExisty(r)&&(e={chartType:o.chartType,legend:o.label,legendIndex:n},e.index=r.index),e},_executeGraphRenderer:function(t,e){var i,n=!1;return this.eventBus.fire("hideTooltipContainer"),this.seriesLabelContainer&&s.hasClass(this.seriesLabelContainer,"show")&&(s.removeClass(this.seriesLabelContainer,"show"),n=!0),i=this.graphRenderer[e](t),n&&s.addClass(this.seriesLabelContainer,"show"),this.eventBus.fire("showTooltipContainer"),i},onSelectSeries:function(t,e){var i;t.chartType===this.chartType&&(i=r.PUBLIC_EVENT_PREFIX+"selectSeries",this.eventBus.fire(i,this._makeExportationSeriesData(t)),e=!!tui.util.isEmpty(e)||e,this.options.allowSelect&&this.graphRenderer.selectSeries&&e&&this.graphRenderer.selectSeries(t.indexes))},onUnselectSeries:function(t){var e;t.chartType===this.chartType&&(e=r.PUBLIC_EVENT_PREFIX+"unselectSeries",this.eventBus.fire(e,this._makeExportationSeriesData(t)),this.options.allowSelect&&this.graphRenderer.unselectSeries&&this.graphRenderer.unselectSeries(t.indexes))},onSelectLegend:function(t,e){this.seriesType===t||tui.util.isNull(e)||(e=-1),this.selectedLegendIndex=e,this._getSeriesDataModel().getGroupCount()&&this.graphRenderer.selectLegend(e)},showLabel:function(){this.options.showLabel=!0,this.seriesLabelContainer||this._renderSeriesLabelArea(this.paper)},hideLabel:function(){this.options.showLabel=!1,this.seriesLabelContainer&&(s.removeClass(this.seriesLabelContainer,"show"),s.removeClass(this.seriesLabelContainer,"opacity"))},hasDataForRendering:function(t){return!(!t||!t.isAvailable())}});t.exports=d},function(t,e){"use strict";function i(t){return tui.util.isExisty(t)&&"number"==typeof t}var n=window.Raphael,o={makeLinePath:function(t,e,i){var n,o=[t.left,t.top],a=[e.left,e.top];return i=i||1,n=i%2/2,tui.util.forEachArray(o,function(t,e){t===a[e]&&(o[e]=a[e]=Math.round(t)-n)}),["M"].concat(o).concat("L").concat(a)},renderLine:function(t,e,i,n){var o=t.path([e]),a={stroke:i,"stroke-width":n||2};return"transparent"===i&&(a.stroke="#fff",a["stroke-opacity"]=0),o.attr(a),o},renderText:function(t,e,i,n){var o=t.text(e.left,e.top,i);return n&&(n["dominant-baseline"]?o.node.setAttribute("dominant-baseline",n["dominant-baseline"]):o.node.setAttribute("dominant-baseline","central"),o.attr(n)),o},renderArea:function(t,e,i){var n=t.path(e);return i=tui.util.extend({"stroke-opacity":0},i),n.attr(i),n},renderCircle:function(t,e,i,n){var o=t.circle(e.left,e.top,i);return n&&o.attr(n),o},renderRect:function(t,e,i){var n=t.rect(e.left,e.top,e.width,e.height);return i&&n.attr(i),n},updateRectBound:function(t,e){t.attr({x:e.left,y:e.top,width:e.width,height:e.height})},forEach2dArray:function(t,e){t&&tui.util.forEachArray(t,function(t,i){tui.util.forEachArray(t,function(t,n){e(t,i,n)})})},makeChangedLuminanceColor:function(t,e){var i;return t=t.replace("#",""),e=e||0,i=tui.util.map(tui.util.range(3),function(i){var n=parseInt(t.substr(2*i,2),16),o=n+n*e;return o=Math.round(Math.min(Math.max(0,o),255)).toString(16),tui.chart.renderUtil.formatToZeroFill(o,2)}).join(""),"#"+i},getRenderedTextSize:function(t,e,i){var o=n(document.body,100,100),a=o.text(0,0,t).attr({"font-size":e,"font-family":i}),r=a.getBBox();return a.remove(),o.remove(),{width:r.width,height:r.height}},animateOpacity:function(t,e,o,a){var r=i(a)?a:600,s=i(e)?e:0,u=i(o)?o:1,h=n.animation({opacity:u},r);t.attr({opacity:s}),t.animate(h)}};t.exports=o},function(t,e,i){"use strict";var n=i(2),o=i(63),a=i(5),r=i(23),s=i(24),u=i(61),h=.8,l=tui.util.defineClass({_makeSeriesData:function(){var t=this._makeBounds(this.layout.dimension);return this.groupBounds=t,{groupBounds:t,seriesDataModel:this._getSeriesDataModel(),isAvailable:function(){return t&&t.length>0}}},_getBarWidthOptionSize:function(t,e){var i=0;return e&&(e/2>=t?e=2*t:e<0&&(e=0),i=e),i},_calculateAdditionalPosition:function(t,e,i){var n=0;return e&&e0&&(o=d?this.options.diverging?1:this.dataProcessor.getStackCount(this.seriesType):p.getFirstSeriesGroup().getSeriesItemCount(),l=f/(o+1),r=l*h,s=this.options.barWidth||this.options.pointWidth,r=this._getBarWidthOptionSize(l,s)||r,u=g+i,a.isColumnChart(this.chartType)&&(u=e-u),a.isBoxplotChart(this.chartType)&&g&&(u-=2*g),c={baseBarSize:e,groupSize:f,barSize:r,pointInterval:l,firstAdditionalPosition:l,basePosition:u}),c},_renderNormalSeriesLabel:function(t){var e,i=this.graphRenderer,n=this._getSeriesDataModel(),r=this.seriesData.groupBounds,s=this.theme.label,u=this.selectedLegendIndex,h=n.map(function(t){return t.map(function(t){var e={end:t.endLabel};return tui.util.isExisty(t.start)&&(e.start=t.startLabel),e})});return e=a.isBarChart(this.chartType)?o.boundsToLabelPositionsForBarChart(n,r,s):o.boundsToLabelPositionsForColumnChart(n,r,s),i.renderSeriesLabel(t,e,h,s,u)},_makeSumValues:function(t){var e=r.sum(t);return s.formatValue(e,this.dataProcessor.getFormatFunctions(),this.chartType,"seires")},_makeStackedLabelPosition:function(t){var e=t.left+t.width/2,i=t.top+t.height/2;return{left:e,top:i}},_makeStackedLabelPositions:function(t){var e=this,i=t.seriesGroup,n=i.map(function(i,n){var o,a=t.bounds[n];return a&&i&&(o=e._makeStackedLabelPosition(a.end)),{end:o}});return n},getGroupLabels:function(t,e,i){var n=a.isNormalStack(this.options.stackType);return t.map(function(t){var o,a=t.map(function(t){return{end:t.endLabel}});return n&&(e.push(r.sumPlusValues(t.pluck("value"))),o=r.sumMinusValues(t.pluck("value")),o<0&&i.push(o)),a})},getGroupPositions:function(t,e){var i=this;return t.map(function(t,n){return i._makeStackedLabelPositions({seriesGroup:t,bounds:e[n]})})},_renderStackedSeriesLabel:function(t){var e=this,i=[],o=[],r=this.theme.label,h=this.seriesData.groupBounds,l=this._getSeriesDataModel(),c=this.getGroupPositions(l,h),d=this.getGroupLabels(l,i,o),p=!0,f=a.isNormalStack(this.options.stackType),m=a.isBarChart(this.chartType),g=m?"width":"height",_=m?"left":"top",T=m?1:-1;return f&&(tui.util.forEach(d,function(t,n){var a=i[n],r=o[n];r<0&&e.options.diverging&&(r*=-1),t.push({end:s.formatToComma(a)}),o.length&&t.push({end:s.formatToComma(r)})}),tui.util.forEach(c,function(t,a){var s=h[a],l=s[s.length-1].end,c=s[Math.max(parseInt(s.length/2,10),1)-1].end,d=e._makeStackedLabelPosition(l),p=e._makeStackedLabelPosition(c),f=i[a],m=o[a],v=u.getRenderedTextSize(f,r.fontSize,r.fontFamily),x=u.getRenderedTextSize(m,r.fontSize,r.fontFamily),y=(l[g]+v[g])/2,D=(c[g]+x[g])/2;d[_]+=(y+n.LEGEND_LABEL_LEFT_PADDING)*T,p[_]-=(D+n.LEGEND_LABEL_LEFT_PADDING)*T,t.push({end:d}),o.length&&t.push({end:p})})),this.graphRenderer.renderSeriesLabel(t,c,d,r,p)},_renderSeriesLabel:function(t){var e;return e=this.options.stackType?this._renderStackedSeriesLabel(t):this._renderNormalSeriesLabel(t)}});l.mixin=function(t){tui.util.extend(t.prototype,l.prototype)},t.exports=l},function(t,e,i){"use strict";var n=i(2),o=i(24),a={_calculateLeftPositionForCenterAlign:function(t){return t.left+t.width/2},_calculateTopPositionForMiddleAlign:function(t){return t.top+t.height/2},_makePositionForBoundType:function(t){return{left:this._calculateLeftPositionForCenterAlign(t),top:this._calculateTopPositionForMiddleAlign(t)}},_makePositionMap:function(t,e,i,n,o){var a=t.value,r=a>=0,s={end:o(e,i,t.endLabel||t.label,n,r)};return t.isRange&&(r=a<0,s.start=o(e,i,t.startLabel,n,r)),s},boundsToLabelPositions:function(t,e,i,a,r){var s=this,u=o.getRenderedLabelHeight(n.MAX_HEIGHT_WORLD,i);return a=a||tui.util.bind(this._makePositionForBoundType,this),r=!!r,t.map(function(t,n){var o=e[n];return t.map(function(t,e){var n=o[e].end;return s._makePositionMap(t,n,u,i,a)})},r)},_makePositionForBarChart:function(t,e,i,a,r){var s=o.getRenderedLabelWidth(i,a),u=t.left;return r?u+=t.width+n.SERIES_LABEL_PADDING:u-=s+n.SERIES_LABEL_PADDING,{left:u,top:this._calculateTopPositionForMiddleAlign(t)}},boundsToLabelPositionsForBarChart:function(t,e,i){var n=tui.util.bind(this._makePositionForBarChart,this);return this.boundsToLabelPositions(t,e,i,n)},_makePositionForColumnChart:function(t,e,i,o,a){var r=t.top;return a?r-=e+n.SERIES_LABEL_PADDING:r+=t.height+n.SERIES_LABEL_PADDING,{left:this._calculateLeftPositionForCenterAlign(t),top:r}},boundsToLabelPositionsForColumnChart:function(t,e,i){var n=tui.util.bind(this._makePositionForColumnChart,this);return this.boundsToLabelPositions(t,e,i,n)},boundsToLabelPostionsForTreemap:function(t,e){var i=this,n=tui.util.map(t,function(t){var n,o=e[t.id];return o&&(n=i._makePositionForBoundType(o)),n});return n}};t.exports=a},function(t,e,i){"use strict";function n(t){var e=t.chartOptions.libType,i=t.chartTheme;return t.libType=e,t.chartType="column",t.chartBackground=i.chart.background,new h(t)}var o=i(60),a=i(62),r=i(2),s=i(5),u=i(24),h=tui.util.defineClass(o,{init:function(){o.apply(this,arguments)},_makeBound:function(t,e,i,n,o){return{start:{top:n,left:i,width:t,height:0},end:{top:o,left:i,width:t,height:e}}},_makeColumnChartBound:function(t,e,i,n,o){var a,s,u,h,l=Math.abs(t.baseBarSize*n.ratioDistance),c=t.baseBarSize*n.startRatio,d=t.basePosition+c+r.SERIES_EXPAND_SIZE,p=n.stack!==e.prevStack;return(!i||!this.options.diverging&&p)&&(a=i?this.dataProcessor.findStackIndex(n.stack):o,e.left=e.baseLeft+t.pointInterval*a,e.plusTop=0,e.minusTop=0),n.value>=0?(e.plusTop-=l,s=d+e.plusTop):(s=d+e.minusTop,e.minusTop+=l),e.prevStack=n.stack,h=e.left+t.pointInterval-t.barSize/2,u=this._makeBound(t.barSize,l,h,d,s)},_makeBounds:function(){var t=this,e=this._getSeriesDataModel(),i=s.isValidStackOption(this.options.stackType),n=this.layout.dimension,o=this._makeBaseDataForMakingBound(n.width,n.height);return e.map(function(e,n){var a=n*o.groupSize+t.layout.position.left,r={baseLeft:a,left:a,plusTop:0,minusTop:0,prevStack:null},s=tui.util.bind(t._makeColumnChartBound,t,o,r,i);return e.map(s)})},_calculateLeftPositionOfSumLabel:function(t,e){var i=u.getRenderedLabelWidth(e,this.theme.label);return t.left+(t.width-i+r.TEXT_PADDING)/2}});a.mixin(h),n.componentType="series",n.ColumnChartSeries=h,t.exports=n},function(t,e,i){"use strict";function n(t){var e=t.chartOptions.libType,i=t.chartTheme;return t.libType=e,t.chartType="line",t.chartBackground=i.chart.background,new r(t)}var o=i(60),a=i(66),r=tui.util.defineClass(o,{init:function(){o.apply(this,arguments),this.movingAnimation=null},_makePositions:function(t){return this._makeBasicPositions(t)},_makeSeriesData:function(){var t=this._makePositions();return{chartBackground:this.chartBackground,groupPositions:t,isAvailable:function(){return t&&t.length>0}}},rerender:function(t){var e;return this._cancelMovingAnimation(),e=o.prototype.rerender.call(this,t)}});a.mixin(r),n.componentType="series",t.exports=n},function(t,e,i){"use strict";var n=i(6),o=i(2),a=i(5),r=i(23),s=i(24),u=tui.util.defineClass({_makePositionsForDefaultType:function(t){var e,i=this.layout.dimension,n=this._getSeriesDataModel(),o=t||i.width||0,a=i.height,r=n.getGroupCount(),s=this.layout.position.top,u=this.layout.position.left;return this.aligned?e=o/(r>1?r-1:r):(e=o/r,u+=e/2),n.map(function(t){return t.map(function(t,i){var n;return tui.util.isNull(t.end)||(n={left:u+e*i,top:s+a-t.ratio*a},tui.util.isExisty(t.startRatio)&&(n.startTop=s+a-t.startRatio*a)),n})},!0)},_makePositionForCoordinateType:function(t){var e=this.layout.dimension,i=this._getSeriesDataModel(),n=t||e.width||0,a=e.height,s=this.axisDataMap.xAxis,u=0,h=this.layout.position.top,l=this.layout.position.left;return s.sizeRatio&&(u=r.multiply(n,s.positionRatio),n=r.multiply(n,s.sizeRatio)),i.map(function(t){return t.map(function(t){var e;return tui.util.isNull(t.end)||(e={left:l+t.ratioMap.x*n+u,top:h+a-t.ratioMap.y*a},tui.util.isExisty(t.ratioMap.start)&&(e.startTop=a-t.ratioMap.start*a+o.SERIES_EXPAND_SIZE)),e})},!0)},_makeBasicPositions:function(t){var e;return e=this.dataProcessor.isCoordinateType()?this._makePositionForCoordinateType(t):this._makePositionsForDefaultType(t)},_calculateLabelPositionTop:function(t,e,i,n){var r,s=t.top;return r=a.isValidStackOption(this.options.stackType)?(t.startTop+s-i)/2+1:e>=0&&!n||e<0&&n?s-i-o.SERIES_LABEL_PADDING:s+o.SERIES_LABEL_PADDING},_makeLabelPosition:function(t,e,i,n,o){return{left:t.left,top:this._calculateLabelPositionTop(t,n,e/2,o)}},_getLabelPositions:function(t,e){var i=this,o=n.pivot(this.seriesData.groupPositions),a=t.getFirstItemLabel(),r=s.getRenderedLabelHeight(a,e);return t.map(function(t,e){return t.map(function(t,n){var a=o[e][n],s=i._makeLabelPosition(a,r,t.endLabel,t.end),u={end:s};return t.isRange&&(a.top=a.startTop,u.start=i._makeLabelPosition(a,r,t.startLabel,t.start)),u})})},_getLabelTexts:function(t){return t.map(function(t){return t.map(function(t){var e={end:t.endLabel};return t.isRange&&(e.start=t.startLabel),e})})},_renderSeriesLabel:function(t){var e=this.theme.label,i=this._getSeriesDataModel(),n=this._getLabelTexts(i),o=this._getLabelPositions(i,e);return this.graphRenderer.renderSeriesLabel(t,o,n,e)},onShowGroupTooltipLine:function(t){this.graphRenderer.showGroupTooltipLine&&this.graphRenderer.showGroupTooltipLine(t,this.layout)},onHideGroupTooltipLine:function(){this.seriesData.length&&this.seriesData.isAvailable()&&this.graphRenderer.hideGroupTooltipLine&&this.graphRenderer.hideGroupTooltipLine()},zoom:function(t){this._cancelMovingAnimation(),this._clearSeriesContainer(t.paper),this._setDataForRendering(t),this._renderSeriesArea(t.paper,tui.util.bind(this._renderGraph,this)),this.animateComponent(!0),tui.util.isNull(this.selectedLegendIndex)||this.graphRenderer.selectLegend(this.selectedLegendIndex)},_isChangedLimit:function(t,e){return t.min!==e.min||t.max!==e.max},_isChangedAxisLimit:function(){var t=this.beforeAxisDataMap,e=this.axisDataMap,i=!0;return t&&(i=this._isChangedLimit(t.yAxis.limit,e.yAxis.limit),e.xAxis.limit&&(i=i||this._isChangedLimit(t.xAxis.limit,e.xAxis.limit))),this.beforeAxisDataMap=e,i},_animate:function(t){var e=this,i=o.ADDING_DATA_ANIMATION_DURATION,n=this._isChangedAxisLimit();n&&this.seriesLabelContainer&&(this.seriesLabelContainer.innerHTML=""),t&&(this.movingAnimation=s.startAnimation(i,t,function(){e.movingAnimation=null}))},_makeZeroTopForAddingData:function(){var t=this.layout.dimension.height,e=this.axisDataMap.yAxis.limit;return this._getLimitDistanceFromZeroPoint(t,e).toMax+o.SERIES_EXPAND_SIZE},animateForAddingData:function(t){var e,i,n,o,a=this.dimensionMap.extendedSeries,r=this.layout.dimension.width,s=t.tickSize,u=this.options.shifting;this.limit=t.limitMap[this.chartType],this.axisDataMap=t.axisDataMap,e=this._makeSeriesData(),i=this._makeParamsForGraphRendering(a,e),u&&(r+=s),n=this._makePositions(r),o=this._makeZeroTopForAddingData(),this.graphRenderer.animateForAddingData(i,s,n,u,o)},_cancelMovingAnimation:function(){this.movingAnimation&&(cancelAnimationFrame(this.movingAnimation.id),this.movingAnimation=null)}});u.mixin=function(t){tui.util.extend(t.prototype,u.prototype)},t.exports=u},function(t,e,i){"use strict";function n(t){var e=t.chartOptions.chartType,i=t.chartOptions.libType,n=t.chartTheme;return t.libType=i,t.chartType=e,t.chartBackground=n.background,new s(t)}var o=i(60),a=i(2),r=i(28),s=tui.util.defineClass(o,{init:function(){o.apply(this,arguments),this.options=tui.util.extend({showDot:!0,showArea:!0},this.options),this.movingAnimation=null,this.drawingType=a.COMPONENT_TYPE_RAPHAEL},_makePositionsForRadial:function(t,e){var i,n=this.layout,o=n.dimension,s=o.width-a.RADIAL_PLOT_PADDING-a.RADIAL_MARGIN_FOR_CATEGORY,u=o.height-a.RADIAL_PLOT_PADDING-a.RADIAL_MARGIN_FOR_CATEGORY,h=s/2+a.RADIAL_PLOT_PADDING/2+a.RADIAL_MARGIN_FOR_CATEGORY/2+n.position.left,l=u/2-a.RADIAL_PLOT_PADDING/2-a.RADIAL_MARGIN_FOR_CATEGORY/2-n.position.top,c=360/e;return i=Math.min(s,u)/2,tui.util.map(t,function(t){var e=tui.util.map(t,function(t,e){var n,o,a,s,d;return tui.util.isNull(t.end)||(d=t.ratio*i,o=l+d,a=360-c*e,s=r.rotatePointAroundOrigin(h,l,h,o,a),n={left:s.x,top:u-s.y}),n});return e.push(e[0]),e},!0)},_getSeriesGroups:function(){var t=this._getSeriesDataModel();return t.map(function(t){return t.map(function(t){return t})},!0)},_makeSeriesData:function(){var t=this._getSeriesGroups(),e=this._makePositionsForRadial(t,this._getSeriesDataModel().getGroupCount());return{groupPositions:e,isAvailable:function(){return e&&e.length>0}}},rerender:function(t){return o.prototype.rerender.call(this,t)}});n.componentType="series",n.RadialChartSeries=s,t.exports=n},function(t,e,i){"use strict";function n(t){var e=t.chartOptions.libType,i=t.chartTheme;return t.libType=e,t.chartType="area",t.chartBackground=i.chart.background,new s(t)}var o=i(60),a=i(66),r=i(5),s=tui.util.defineClass(o,{init:function(){o.apply(this,arguments),this.movingAnimation=null},_makePositionTopOfZeroPoint:function(){var t=this.layout.dimension,e=this.axisDataMap.yAxis.limit,i=this.layout.position.top,n=this._getLimitDistanceFromZeroPoint(t.height,e).toMax+i;return e.min>=0&&!n&&(n=t.height),n},_makeStackedPositions:function(t){var e=this.layout.dimension.height,i=this.layout.position.top,n=this._makePositionTopOfZeroPoint(),o=[];return tui.util.map(t,function(t){return tui.util.map(t,function(t,a){var r=o[a]||n,s=t?t.top:0,u=e-s+i,h=t?r-u:r;return t&&(t.startTop=r,t.top=h),o[a]=h,t})})},_makePositions:function(t){var e=this._makeBasicPositions(t);return r.isValidStackOption(this.options.stackType)&&(e=this._makeStackedPositions(e)),e},_makeSeriesData:function(){var t=this.layout.dimension,e=this.layout.position.top,i=this._getLimitDistanceFromZeroPoint(t.height,this.limit).toMax+e,n=this._makePositions();return{chartBackground:this.chartBackground,groupPositions:n,hasRangeData:this._getSeriesDataModel().hasRangeData(),zeroTop:i,isAvailable:function(){return n&&n.length>0}}},rerender:function(t){var e;return this._cancelMovingAnimation(),e=o.prototype.rerender.call(this,t)}});a.mixin(s),n.componentType="series",n.AreaChartSeries=s,t.exports=n},function(t,e,i){"use strict";function n(t){var e=t.chartOptions.libType,i=t.chartTheme;return t.libType=e,t.chartType="bubble",t.chartBackground=i.chart.background,new s(t)}var o=i(2),a=i(60),r=i(70),s=tui.util.defineClass(a,{init:function(){this.prevClickedIndex=null,this.maxRadius=null,this.drawingType=o.COMPONENT_TYPE_RAPHAEL,a.apply(this,arguments)},_calculateStep:function(){var t,e,i,n=0,o=this.dataProcessor.isXCountGreaterThanYCount(this.chartType);return this.dataProcessor.hasCategories(o)&&(t=this.layout.dimension,i=this.dataProcessor.getCategoryCount(o),e=o?t.height:t.width,n=e/i),n},_makeBound:function(t,e,i){var n=this.layout.dimension,o=this.layout.position,a=tui.util.isExisty(t.x)?t.x*n.width:e,r=tui.util.isExisty(t.y)?t.y*n.height:e;return{left:o.left+a,top:o.top+n.height-r,radius:Math.max(i*t.r,2)}},_makeBounds:function(){var t=this,e=this._getSeriesDataModel(),i=this.maxRadius,n=this._calculateStep(),o=n?n/2:0;return e.map(function(e,a){var r=o+n*a;return e.map(function(e){var n=e&&e.ratioMap;return n?t._makeBound(e.ratioMap,r,i):null})})},_setDataForRendering:function(t){this.maxRadius=t.maxRadius,a.prototype._setDataForRendering.call(this,t)}});r.mixin(s),n.componentType="series",n.BubbleChartSeries=s,t.exports=n},function(t,e){"use strict";var i=tui.util.defineClass({_makeSeriesData:function(){var t=this._makeBounds();return{groupBounds:t,seriesDataModel:this._getSeriesDataModel(),isAvailable:function(){return t&&t.length>0}}},showTooltip:function(t,e,i,n,o){this.eventBus.fire("showTooltip",tui.util.extend({indexes:{groupIndex:i,index:n},mousePosition:o},t))},hideTooltip:function(){this.eventBus.fire("hideTooltip")},_renderGraph:function(t,e,i){var n=tui.util.bind(this.showTooltip,this,{chartType:this.chartType}),o={showTooltip:n,hideTooltip:tui.util.bind(this.hideTooltip,this)},a=this._makeParamsForGraphRendering(t,e);return this.graphRenderer.render(i,a,o)},onClickSeries:function(t){var e,i=this._executeGraphRenderer(t,"findIndexes"),n=this.prevClickedIndexes,o=this.options.allowSelect;i&&n&&(this.onUnselectSeries({indexes:n}),this.prevClickedIndexes=null),i&&(e=!n||i.index!==n.index||i.groupIndex!==n.groupIndex,o&&!e||(this.onSelectSeries({chartType:this.chartType,indexes:i},e),o&&(this.prevClickedIndexes=i)))},onMoveSeries:function(t){this._executeGraphRenderer(t,"moveMouseOnSeries")}});i.mixin=function(t){tui.util.extend(t.prototype,i.prototype)},t.exports=i},function(t,e,i){"use strict";function n(t){var e=t.chartOptions.libType,i=t.chartTheme;return t.libType=e,t.chartType="scatter",t.chartBackground=i.chart.background,new s(t)}var o=i(60),a=i(70),r=i(2),s=tui.util.defineClass(o,{init:function(){this.prevClickedIndex=null,o.apply(this,arguments)},_makeBound:function(t){var e=this.layout.dimension,i=this.layout.position;return{left:i.left+t.x*e.width,top:e.height-t.y*e.height+i.top,radius:r.SCATTER_RADIUS}},_makeBounds:function(){var t=this,e=this._getSeriesDataModel();return e.map(function(e){return e.map(function(e){var i=e&&e.ratioMap;return i?t._makeBound(e.ratioMap):null})})}});a.mixin(s),n.componentType="series",n.ScatterChartSeries=s,t.exports=n},function(t,e,i){"use strict";function n(t){var e=t.chartOptions.libType;return t.libType=e,t.chartType="map",new u(t)}var o=i(60),a=i(2),r=tui.util.browser,s=r.msie&&r.version<=8,u=tui.util.defineClass(o,{init:function(t){this.basePosition={left:0,top:0},this.zoomMagn=1,this.mapRatio=1,this.graphDimension={},this.limitPosition={},this.mapModel=t.mapModel,this.colorSpectrum=t.colorSpectrum,this.prevPosition=null,this.prevMovedIndex=null,this.isDrag=!1,this.startPosition=null,o.call(this,t)},_attachToEventBus:function(){o.prototype._attachToEventBus.call(this),s||this.eventBus.on({dragStartMapSeries:this.onDragStartMapSeries,dragMapSeries:this.onDragMapSeries,dragEndMapSeries:this.onDragEndMapSeries,zoomMap:this.onZoomMap},this)},_setMapRatio:function(t){var e=this.layout.dimension,i=t||this.mapModel.getMapDimension(),n=e.width/i.width,o=e.height/i.height;this.mapRatio=Math.min(n,o)},_setGraphDimension:function(){var t=this.layout.dimension;this.graphDimension={width:t.width*this.zoomMagn,height:t.height*this.zoomMagn}},render:function(t){o.prototype.render.call(this,t),this._setMapRatio()},_setLimitPositionToMoveMap:function(){var t=this.layout.dimension,e=this.graphDimension;this.limitPosition={left:t.width-e.width,top:t.height-e.height}},_renderGraph:function(){this._setGraphDimension(),this._setLimitPositionToMoveMap(),this.graphRenderer.render(this.paper,{colorSpectrum:this.colorSpectrum,mapModel:this.mapModel,layout:this.layout,theme:this.theme})},_renderSeriesLabel:function(){var t=this.mapModel.getLabelData(this.zoomMagn*this.mapRatio);return this.graphRenderer.renderSeriesLabels(this.paper,t,this.theme.label)},_renderSeriesArea:function(t,e,i){o.prototype._renderSeriesArea.call(this,t,e,i)},_adjustMapPosition:function(t){return{left:Math.max(Math.min(t.left,0),this.limitPosition.left),top:Math.max(Math.min(t.top,0),this.limitPosition.top)}},_updateBasePositionForZoom:function(t,e,i){var n=this.basePosition,o=n.left-e.left/2,a=n.top-e.top/2,r={left:o*i+this.limitPosition.left/2,top:a*i+this.limitPosition.top/2};this.basePosition=this._adjustMapPosition(r)},_zoom:function(t,e){var i=this.graphDimension,n=this.limitPosition;this._setGraphDimension(),this._setLimitPositionToMoveMap(),this._updateBasePositionForZoom(i,n,t),this._setMapRatio(this.graphDimension),this.graphRenderer.scaleMapPaths(t,e,this.mapRatio,i,i)},_updatePositionsToResize:function(t){var e=this.mapRatio/t;this.basePosition.left*=e,this.basePosition.top*=e,this.limitPosition.left*=e,this.limitPosition.top*=e},onClickSeries:function(t){var e=this._executeGraphRenderer(t,"findSectorIndex");tui.util.isNull(e)||this.eventBus.fire("selectSeries",{chartType:this.chartType,index:e,code:this.mapModel.getDatum(e).code})},_isChangedPosition:function(t,e){return!t||t.left!==e.left||t.top!==e.top},_showWedge:function(t){var e=this.mapModel.getDatum(t);tui.util.isUndefined(e.ratio)||this.eventBus.fire("showWedge",e.ratio)},_showTooltip:function(t,e){this.eventBus.fire("showTooltip",{chartType:this.chartType,indexes:{index:t},mousePosition:{left:e.left,top:e.top-a.TOOLTIP_GAP}})},onMoveSeries:function(t){var e,i=this._executeGraphRenderer(t,"findSectorIndex");tui.util.isNull(i)?tui.util.isNull(this.prevMovedIndex)||(this.graphRenderer.restoreColor(this.prevMovedIndex),this.eventBus.fire("hideTooltip"),this.prevMovedIndex=null):(this.prevMovedIndex!==i&&(tui.util.isNull(this.prevMovedIndex)||(this.graphRenderer.restoreColor(this.prevMovedIndex),this.eventBus.fire("hideTooltip")),this.graphRenderer.changeColor(i)),this._isChangedPosition(this.prevPosition,t)&&(e=this.paper.canvas.getBoundingClientRect(),this._showTooltip(i,{left:t.left-e.left,top:t.top-e.top}),this.prevMovedIndex=i),this._showWedge(i)),this.prevPosition=t; -},onDragStartMapSeries:function(t){this.startPosition={left:t.left,top:t.top}},_movePosition:function(t,e){var i={x:(e.left-t.left)*this.mapRatio,y:(e.top-t.top)*this.mapRatio};this.graphRenderer.moveMapPaths(i,this.graphDimension)},onDragMapSeries:function(t){this._movePosition(this.startPosition,t),this.startPosition=t,this.isDrag||(this.isDrag=!0,this.eventBus.fire("hideTooltip"))},onDragEndMapSeries:function(){this.isDrag=!1},onZoomMap:function(t,e){var i=t/this.zoomMagn,n=this.layout.position,o=e?e:{left:this.layout.dimension.width/2,top:this.layout.dimension.height/2};this.zoomMagn=t,this._zoom(i,{left:o.left-n.left,top:o.top-n.top}),this.eventBus.fire(a.PUBLIC_EVENT_PREFIX+"zoom",t)},_makeExportationSeriesData:function(t){return t}});n.componentType="series",n.MapChartSeries=u,t.exports=n},function(t,e,i){"use strict";function n(t){var e=t.chartOptions.libType,i=t.chartTheme,n=t.chartOptions.chartType;return t.libType=e,t.chartType="pie","combo"===n&&(t.seriesType=t.name.split("Series")[0],t.isCombo=!0),t.chartBackground=i.chart.background,new s(t)}var o=i(60),a=i(2),r=i(5),s=tui.util.defineClass(o,{init:function(t){o.call(this,t),this.isCombo=!!t.isCombo,this.isShowOuterLabel=r.isShowOuterLabel(this.options),this.quadrantRange=null,this.prevClickedIndex=null,this.drawingType=a.COMPONENT_TYPE_RAPHAEL,this._setDefaultOptions()},_makeValidAngle:function(t,e){return tui.util.isUndefined(t)?t=e:t<0?t=a.ANGLE_360-Math.abs(t)%a.ANGLE_360:t>0&&(t%=a.ANGLE_360),t},_transformRadiusRange:function(t){return t=t||["0%","100%"],tui.util.map(t,function(t){var e=.01*parseInt(t,10);return Math.max(Math.min(e,1),0)})},_setDefaultOptions:function(){var t=this.options;t.startAngle=this._makeValidAngle(t.startAngle,0),t.endAngle=this._makeValidAngle(t.endAngle,t.startAngle),t.radiusRange=this._transformRadiusRange(t.radiusRange),1===t.radiusRange.length&&t.radiusRange.unshift(0)},_calculateAngleForRendering:function(){var t,e=this.options.startAngle,i=this.options.endAngle;return t=ei?a.ANGLE_360-(e-i):a.ANGLE_360},_makeSectorData:function(t){var e,i=this,n=this._getSeriesDataModel().getFirstSeriesGroup(),o=t.cx,a=t.cy,r=t.r,s=this.options.startAngle,u=this._calculateAngleForRendering(),h=10,l=this.options.radiusRange[0],c=.5*r;return l&&(c+=c*l),n?e=n.map(function(t){var e=t?t.ratio:0,n=u*e,l=s+n,d=s+n/2,p={start:{startAngle:s,endAngle:s},end:{startAngle:s,endAngle:l}},f={cx:o,cy:a,angle:d};return s=l,{ratio:e,angles:p,centerPosition:i._getArcPosition(tui.util.extend({r:c},f)),outerPosition:{start:i._getArcPosition(tui.util.extend({r:r},f)),middle:i._getArcPosition(tui.util.extend({r:r+h},f))}}}):null},_makeSeriesData:function(){var t=this._makeCircleBound(),e=this._makeSectorData(t);return{chartBackground:this.chartBackground,circleBound:t,sectorData:e,isAvailable:function(){return e&&e.length>0}}},_getQuadrantFromAngle:function(t,e){var i=parseInt(t/a.ANGLE_90,10)+1;return e&&t%a.ANGLE_90===0&&(i+=1===i?3:-1),i},_getRangeForQuadrant:function(){return this.quadrantRange||(this.quadrantRange={start:this._getQuadrantFromAngle(this.options.startAngle),end:this._getQuadrantFromAngle(this.options.endAngle,!0)}),this.quadrantRange},_isInQuadrantRange:function(t,e){var i=this._getRangeForQuadrant();return i.start===t&&i.end===e},_calculateBaseSize:function(){var t,e=this.layout.dimension,i=e.width,n=e.height;return this.isCombo||(t=this._getRangeForQuadrant(),this._isInQuadrantRange(2,3)||this._isInQuadrantRange(4,1)?n*=2:this._isInQuadrantRange(1,2)||this._isInQuadrantRange(3,4)?i*=2:t.start===t.end&&(i*=2,n*=2)),Math.min(i,n)},_calculateRadius:function(){var t=this.isShowOuterLabel?a.PIE_GRAPH_SMALL_RATIO:a.PIE_GRAPH_DEFAULT_RATIO,e=this._calculateBaseSize();return e*t*this.options.radiusRange[1]/2},_calculateCenterXY:function(t){var e=this.layout.dimension,i=this.layout.position,n=t/2,o=e.width/2+i.left,a=e.height/2+i.top;return this.isCombo||(this._isInQuadrantRange(1,1)?(o-=n,a+=n):this._isInQuadrantRange(1,2)?o-=n:this._isInQuadrantRange(2,2)?(o-=n,a-=n):this._isInQuadrantRange(2,3)?a-=n:this._isInQuadrantRange(3,3)?(o+=n,a-=n):this._isInQuadrantRange(3,4)?o+=n:this._isInQuadrantRange(4,1)?a+=n:this._isInQuadrantRange(4,4)&&(o+=n,a+=n)),{cx:o,cy:a}},_makeCircleBound:function(){var t=this._calculateRadius(),e=this._calculateCenterXY(t);return tui.util.extend({r:t},e)},_getArcPosition:function(t){return{left:t.cx+t.r*Math.sin(t.angle*a.RAD),top:t.cy-t.r*Math.cos(t.angle*a.RAD)}},_renderGraph:function(t,e,i){var n=tui.util.bind(this.showTooltip,this,{allowNegativeTooltip:!!this.allowNegativeTooltip,seriesType:this.seriesType,chartType:this.chartType}),o={showTooltip:n,hideTooltip:tui.util.bind(this.hideTooltip,this)},a=this._makeParamsForGraphRendering(t,e),r=this.seriesType,s=this.dataProcessor.seriesDataModelMap,u=[],h=0;return tui.util.forEach(this.dataProcessor.seriesTypes,function(t){var e=!0;return t!==r?u.push(t):e=!1,e}),tui.util.forEach(u,function(t){h+=s[t].baseGroups.length}),a.additionalIndex=h,this.graphRenderer.render(i,a,o)},resize:function(){o.prototype.resize.apply(this,arguments),this._moveLegendLines()},showTooltip:function(t,e,i,n,o){this.eventBus.fire("showTooltip",tui.util.extend({indexes:{groupIndex:i,index:n},mousePosition:o},t))},hideTooltip:function(){this.eventBus.fire("hideTooltip")},_makeSeriesDataBySelection:function(t){return{indexes:{index:t,groupIndex:t}}},_renderLegendLabel:function(t,e){var i,n=this.dataProcessor,o=n.getLegendLabels(this.seriesType);return i=e.funcMoveToPosition?tui.util.map(e.positions,function(t,i){var n=null;return t&&(n=e.funcMoveToPosition(t,o[i])),n}):e.positions,this.graphRenderer.renderLabels(t,i,o,this.theme.label)},_pickPositionsFromSectorData:function(t){return tui.util.map(this.seriesData.sectorData,function(e){return e.ratio?e[t]:null})},_renderCenterLegend:function(t){return this._renderLegendLabel(t,{positions:this._pickPositionsFromSectorData("centerPosition")})},_addEndPosition:function(t,e){tui.util.forEachArray(e,function(e){var i;e&&(i=tui.util.extend({},e.middle),i.left-1&&e!==o,a&&!i||(this.onSelectSeries({chartType:this.chartType,indexes:{index:e,legendIndex:n.legendIndex}},i),a&&e>-1&&(this.prevClickedIndex=e)))},onMoveSeries:function(t){this._executeGraphRenderer(t,"moveMouseOnSeries")}});n.componentType="series",n.PieChartSeries=s,t.exports=n},function(t,e,i){"use strict";function n(t){var e=t.chartOptions.libType;return t.libType=e,t.chartType="heatmap",new r(t)}var o=i(60),a=i(63),r=tui.util.defineClass(o,{init:function(t){this.colorSpectrum=t.colorSpectrum,o.call(this,t)},_makeSeriesData:function(){var t=this._makeBounds(),e=this._getSeriesDataModel();return{colorSpectrum:this.colorSpectrum,groupBounds:t,seriesDataModel:e,isAvailable:function(){return t&&t.length>0}}},_makeBound:function(t,e,i,n){var o=this.layout.dimension.height,a=t*i+this.layout.position.left,r=o-e*(n+1)+this.layout.position.top;return{end:{left:a,top:r,width:t,height:e}}},_makeBounds:function(){var t=this,e=this._getSeriesDataModel(),i=this.layout.dimension,n=i.width/this.dataProcessor.getCategoryCount(!1),o=i.height/this.dataProcessor.getCategoryCount(!0);return e.map(function(e,i){return e.map(function(e,a){return t._makeBound(n,o,i,a)})})},onShowTooltip:function(t){var e=this._getSeriesDataModel(),i=t.indexes,n=e.getSeriesItem(i.groupIndex,i.index).ratio;this.eventBus.fire("showWedge",n)},_renderSeriesLabel:function(t){var e=this._getSeriesDataModel(),i=this.seriesData.groupBounds,n=this.theme.label,o=this.selectedLegendIndex,r=a.boundsToLabelPositions(e,i,n),s=e.map(function(t){return t.valuesMap.value});return this.graphRenderer.renderSeriesLabel(t,r,s,n,o)},resize:function(){this.boundMap=null,o.prototype.resize.apply(this,arguments)},_makeExportationSeriesData:function(t){return{x:t.indexes.groupIndex,y:t.indexes.index}}});n.componentType="series",n.HeatmapChartSeries=r,t.exports=n},function(t,e,i){"use strict";function n(t){var e=t.chartOptions.libType,i=t.chartTheme;return t.libType=e,t.chartType="treemap",t.chartBackground=i.chart.background,new h(t)}var o=i(60),a=i(76),r=i(63),s=i(2),u=i(5),h=tui.util.defineClass(o,{init:function(t){o.call(this,t),this.theme.borderColor=this.theme.borderColor||s.TREEMAP_DEFAULT_BORDER,this.rootId=s.TREEMAP_ROOT_ID,this.startDepth=1,this.selectedGroup=null,this.boundMap=null,this.colorSpectrum=t.colorSpectrum,this._initOptions()},_initOptions:function(){this.options.useColorValue=!!this.options.useColorValue,tui.util.isUndefined(this.options.zoomable)&&(this.options.zoomable=!this.options.useColorValue),tui.util.isUndefined(this.options.useLeafLabel)&&(this.options.useLeafLabel=!this.options.zoomable)},_makeSeriesData:function(){var t=this._getBoundMap(),e=this._makeBounds(t);return{boundMap:t,groupBounds:e,seriesDataModel:this._getSeriesDataModel(),startDepth:this.startDepth,isPivot:!0,colorSpectrum:this.options.useColorValue?this.colorSpectrum:null,chartBackground:this.chartBackground,zoomable:this.options.zoomable,isAvailable:function(){return e&&e.length>0}}},_makeBoundMap:function(t,e,i){var n,o=this,r=this._getSeriesDataModel(),s=tui.util.extend({},this.layout.dimension,this.layout.position);return i=i||s,n=r.findSeriesItemsByParent(t),e=tui.util.extend(e||{},a.squarify(i,n)),tui.util.forEachArray(n,function(t){e=o._makeBoundMap(t.id,e,e[t.id])}),e},_makeBounds:function(t){var e,i=this.startDepth,n=this._getSeriesDataModel();return e=this.options.zoomable?function(t){return t.depth===i}:function(t){return!t.hasChild},n.map(function(i){return i.map(function(i){var n=t[i.id],o=null;return n&&e(i)&&(o={end:n}),o},!0)},!0)},_getBoundMap:function(){return this.boundMap||(this.boundMap=this._makeBoundMap(this.rootId)),this.boundMap},_shouldDimmed:function(t,e,i){var n,o=!1;return e&&i.id!==e.id&&i.group===e.group&&(n=t.findParentByDepth(i.id,e.depth+1),n&&n.parent===e.id&&(o=!0)),o},_renderSeriesLabel:function(t){var e,i,n,o=this._getSeriesDataModel(),a=this._getBoundMap(),s=this.theme.label,u=this.options.labelTemplate;return i=this.options.useLeafLabel?o.findLeafSeriesItems(this.selectedGroup):o.findSeriesItemsByDepth(this.startDepth,this.selectedGroup),n=tui.util.map(i,function(t){var e=u?u(t.pickLabelTemplateData()):t.label;return e}),e=r.boundsToLabelPostionsForTreemap(i,a,s),this.graphRenderer.renderSeriesLabelForTreemap(t,e,n,s)},resize:function(){this.boundMap=null,o.prototype.resize.apply(this,arguments)},_zoom:function(t,e,i){this._clearSeriesContainer(),this.boundMap=null,this.rootId=t,this.startDepth=e,this.selectedGroup=i,this._renderSeriesArea(this.paper,tui.util.bind(this._renderGraph,this))},zoom:function(t){var e,i,n=t.index;return this.labelSet.remove(),n===-1?void this._zoom(s.TREEMAP_ROOT_ID,1,null):(e=this._getSeriesDataModel(),i=e.getSeriesItem(0,n,!0),void(i&&i.hasChild&&(this._zoom(i.id,i.depth+1,i.group),this.eventBus.fire("afterZoom",n))))},_makeExportationSeriesData:function(t){var e=t.indexes,i=this._getSeriesDataModel().getSeriesItem(e.groupIndex,e.index,!0);return tui.util.extend({chartType:this.chartType,indexes:i.indexes})},onHoverSeries:function(t){u.isShowLabel(this.options)&&this.graphRenderer.showAnimation(t,this.options.useColorValue,.6)},onHoverOffSeries:function(t){u.isShowLabel(this.options)&&t&&this.graphRenderer.hideAnimation(t,this.options.useColorValue)},onShowTooltip:function(t){var e=this._getSeriesDataModel(),i=t.indexes,n=e.getSeriesItem(i.groupIndex,i.index,!0).colorRatio;n>-1&&this.eventBus.fire("showWedge",n)}});n.componentType="series",n.TreemapChartSeries=h,t.exports=n},function(t,e,i){"use strict";var n=i(23),o=i(6),a={boundMap:{},_makeBaseBound:function(t){return tui.util.extend({},t)},_calculateScale:function(t,e,i){return e*i/n.sum(t)},_makeBaseData:function(t,e,i){var n=this._calculateScale(tui.util.pluck(t,"value"),e,i),o=tui.util.map(t,function(t){return{id:t.id,weight:t.value*n}}).sort(function(t,e){return e.weight-t.weight});return o},_worst:function(t,e,i,n){var o=t*t,a=n*n;return Math.max(a*i/o,o/(a*e))},_changedStackDirection:function(t,e,i,n){var a=o.min(e),r=o.max(e),s=this._worst(t,a,r,i),u=this._worst(t+n,Math.min(a,n),Math.max(r,n),i);return u>=s},_isVerticalStack:function(t){return t.height=0?(e.plusTop-=l,s=d+e.plusTop):(s=d+e.minusTop,e.minusTop+=l),u=e.left+t.pointInterval-t.barSize/2,h=tui.util.map(n.outliers,function(e){return{top:t.baseBarSize*(1-e.ratio)+p,left:u+t.barSize/2}}),{start:{top:d,left:u,width:t.barSize,height:0},end:{top:s,left:u,width:t.barSize,height:l},min:{top:t.baseBarSize*(1-n.minRatio)+p,left:u,width:t.barSize,height:0},max:{top:t.baseBarSize*(1-n.maxRatio)+p,left:u,width:t.barSize,height:0},median:{top:t.baseBarSize*(1-n.medianRatio)+p,left:u,width:t.barSize,height:0},outliers:h}},_makeBounds:function(){var t=this,e=this._getSeriesDataModel(),i=s.isValidStackOption(this.options.stackType),n=this.layout.dimension,o=this._makeBaseDataForMakingBound(n.width,n.height);return e.map(function(e,n){var a=n*o.groupSize+t.layout.position.left,r={baseLeft:a,left:a,plusTop:0,minusTop:0,prevStack:null},s=tui.util.bind(t._makeBoxplotChartBound,t,o,r,i);return e.map(s)})},_calculateLeftPositionOfSumLabel:function(t,e){var i=u.getRenderedLabelWidth(e,this.theme.label);return t.left+(t.width-i+r.TEXT_PADDING)/2}});a.mixin(h),n.componentType="series",n.BoxplotChartSeries=h,t.exports=n},function(t,e,i){"use strict";function n(t){return new l(t)}var o=tui.util.browser.msie&&tui.util.browser.version<=8,a=i(79),r=i(2),s=i(14),u=i(24),h=i(34),l=tui.util.defineClass({className:"tui-chart-zoom-area",init:function(t){this.eventBus=t.eventBus,this.magn=1,this.stackedWheelDelta=0,this.drawingType=r.COMPONENT_TYPE_DOM,this._attachToEventBus()},_attachToEventBus:function(){this.eventBus.on("wheel",this.onWheel,this)},render:function(t){var e;return o||(e=s.create("DIV",this.className),e.innerHTML+=a.ZOOM_BUTTONS,u.renderPosition(e,t.positionMap.series),this._attachEvent(e)),e},_findBtnElement:function(t){var e="tui-chart-zoom-btn",i=t;return s.hasClass(t,e)||(i=s.findParentByClass(t,e)),i},_zoom:function(t,e){this.eventBus.fire("zoomMap",t,e)},_onClick:function(t){var e=t.target||t.srcElement,i=this._findBtnElement(e),n=i.getAttribute("data-magn"),o=this._calculateMagn(n);return o>5?this.magn=5:o<1?this.magn=1:o>=1&&this._zoom(o),t.preventDefault&&t.preventDefault(),!1},_attachEvent:function(t){h.on(t,"click",this._onClick,this)},_calculateMagn:function(t){return t>0?this.magn+=.1:t<0&&(this.magn-=.1),this.magn},onWheel:function(t,e){var i=this._calculateMagn(t);i>5?this.magn=5:i<1?this.magn=1:i>=1&&this._zoom(i,e)}});n.componentType="zoom",t.exports=n},function(t,e,i){"use strict";var n=i(44),o={HTML_SERIES_LABEL:'
{{ label }}
',TEXT_CSS_TEXT:"left:{{ left }}px;top:{{ top }}px;font-family:{{ fontFamily }};font-size:{{ fontSize }}px;font-weight:{{ fontWeight }}{{opacity}}",TEXT_CSS_TEXT_FOR_LINE_TYPE:"left:{{ left }}%;top:{{ top }}%;font-family:{{ fontFamily }};font-size:{{ fontSize }}px;font-weight:{{ fontWeight }}{{opacity}}",HTML_ZOOM_BUTTONS:'
',HTML_SERIES_BLOCK:'
{{ label }}
'};t.exports={tplSeriesLabel:n.template(o.HTML_SERIES_LABEL),tplCssText:n.template(o.TEXT_CSS_TEXT),tplCssTextForLineType:n.template(o.TEXT_CSS_TEXT_FOR_LINE_TYPE),ZOOM_BUTTONS:o.HTML_ZOOM_BUTTONS,tplSeriesBlock:n.template(o.HTML_SERIES_BLOCK)}},function(t,e,i){"use strict";var n=i(2),o=i(81),a=i(82),r=i(86),s=i(88),u=i(83),h=i(4),l=i(5),c=i(24),d=i(23),p=i(11),f=Array.prototype.concat,m=tui.util.isUndefined,g=tui.util.defineClass(o,{init:function(t,e,i,n){this.originalRawData=p.deepCopy(t),this.chartType=e,this.options=i,this.seriesTypes=n,this.originalLegendData=null,this.dynamicData=[],this.defaultValues=[0,500],this.initData(t),this.initZoomedRawData(),this.baseInit()},getOriginalRawData:function(){return p.deepCopy(this.originalRawData)},getZoomedRawData:function(){var t=this.zoomedRawData;return t=t?p.deepCopy(t):this.getOriginalRawData()},_filterSeriesDataByIndexRange:function(t,e,i){return tui.util.forEachArray(t,function(t){t.data=t.data.slice(e,i+1)}),t},_filterRawDataByIndexRange:function(t,e){var i=this,n=e[0],o=e[1];return tui.util.forEach(t.series,function(e,a){t.series[a]=i._filterSeriesDataByIndexRange(e,n,o)}),t.categories&&(t.categories=t.categories.slice(n,o+1)),t},updateRawDataForZoom:function(t){var e=this.getRawData(),i=this.getZoomedRawData();this.zoomedRawData=this._filterRawDataByIndexRange(i,t),e=this._filterRawDataByIndexRange(e,t),this.initData(e)},initZoomedRawData:function(){this.zoomedRawData=null},initData:function(t){this.rawData=t,this.categoriesMap=null,this.stacks=null,this.seriesDataModelMap={},this.seriesGroups=null,this.valuesMap={},this.legendLabels=null,this.legendData=null,this.multilineCategories=null,this.coordinateType=null},getRawData:function(){return this.rawData},findChartType:function(t){return h.findChartType(this.rawData.seriesAlias,t)},_escapeCategories:function(t){return tui.util.map(t,function(t){return tui.util.encodeHTMLEntity(String(t))})},_mapCategories:function(t,e){var i=e+"Axis",n=this.options[i]||{},o=!1;return o=tui.util.isArray(n)?tui.util.filter(n,function(t){return t.type&&l.isDatetimeType(t.type)}):n.type&&l.isDatetimeType(n.type),t=o?tui.util.map(t,function(t){var e=new Date(t);return e.getTime()||t}):this._escapeCategories(t)},_processCategories:function(t){var e=this.rawData.categories,i={};return tui.util.isArray(e)?i[t]=this._mapCategories(e,t):e&&(e.x&&(i.x=this._mapCategories(e.x,"x")),e.y&&(i.y=this._mapCategories(e.y,"y").reverse())),i},getCategories:function(t){var e=t?"y":"x",i=[];return this.categoriesMap||(this.categoriesMap=this._processCategories(e)),tui.util.isExisty(t)?i=this.categoriesMap[e]||[]:tui.util.forEach(this.categoriesMap,function(t){return i=t,!1}),i},getCategoryCount:function(t){var e=this.getCategories(t);return e?e.length:0},hasCategories:function(t){return!!this.getCategoryCount(t)},isXCountGreaterThanYCount:function(t){var e=this.getSeriesDataModel(t);return e.isXCountGreaterThanYCount()},hasXValue:function(t){var e=this.isXCountGreaterThanYCount(t);return!this.hasCategories(e)||e},hasYValue:function(t){var e=this.isXCountGreaterThanYCount(t);return!this.hasCategories(e)||!e},getCategory:function(t,e){return this.getCategories(e)[t]},findCategoryIndex:function(t){var e=this.getCategories(),i=null;return tui.util.forEachArray(e,function(e,n){return e===t&&(i=n),tui.util.isNull(i)}),i},containedAllVisibleCategory:function(t,e){var i,n,o,a,r,s,u=this.getCategories();return!!u.length&&(!(!this.originalRawData||!this.originalRawData.categories)&&(i=u[0],n=u[u.length-1],tui.util.forEachArray(this.originalRawData.categories,function(u,h){var l,c;return u===t?r=h:u===e?s=h:u===i?o=h:u===n&&(a=h),l=o&&(tui.util.isUndefined(r)||s),c=s&&tui.util.isUndefined(a),!(l||c)}),r=0?i=t.min:t.max<=0&&(i=t.max),this.getSeriesDataModel(e).addStartValueToAllSeriesItem(i)},addDataRatios:function(t,e,i){var n=this.getSeriesDataModel(i);this._addStartValueToAllSeriesItem(t,i),n.addDataRatios(t,e)},addDataRatiosForTreemapChart:function(t,e){this.getSeriesDataModel(e).addDataRatios(t)},_createBaseValuesForNormalStackedChart:function(t){var e=this.getSeriesDataModel(t),i=[];return e.each(function(t){var e=t._makeValuesMapPerStack();tui.util.forEach(e,function(t){var e=d.sumPlusValues(t),n=d.sumMinusValues(t);i=i.concat([e,n])})}),i},createBaseValuesForLimit:function(t,e,i,n,o){var a;return l.isComboChart(this.chartType)&&e?(a=this.getValues(this.chartType,n),l.isNormalStackChart(t,i)&&(a=a.concat(this._createBaseValuesForNormalStackedChart(t)))):a=l.isTreemapChart(t)?this.getValues(t,"colorValue"):l.isNormalStackChart(t,i)?this._createBaseValuesForNormalStackedChart(t):this.getValues(t,n,o),a},findOverflowItem:function(t,e){var i=this.getSeriesDataModel(t),o=i.getMaxValue("r"),a=function(t){return t.r/o>n.HALF_RATIO};return{minItem:i.findMinSeriesItem(e,a),maxItem:i.findMaxSeriesItem(e,a)}}});t.exports=g},function(t,e,i){"use strict";var n=i(6),o=i(24),a=i(23),r=tui.util.defineClass({baseInit:function(){this.formatFunctions=null},getValues:function(){},getMaxValue:function(t,e){return n.max(this.getValues(t,e))},getFormattedMaxValue:function(t,e,i){var n=this.getMaxValue(t,i),a=this.getFormatFunctions();return o.formatValue(n,a,t,e,i)},_pickMaxLenUnderPoint:function(t){var e=0;return tui.util.forEachArray(t,function(t){var i=a.getDecimalLength(t);i>e&&(e=i)}),e},_isZeroFill:function(t){return t.length>2&&"0"===t.charAt(0)},_isDecimal:function(t){var e=t.indexOf(".");return e>-1&&e-1},_formatToZeroFill:function(t,e){var i=e<0;return e=o.formatToZeroFill(Math.abs(e),t),(i?"-":"")+e},_formatToDecimal:function(t,e){return o.formatToDecimal(e,t)},_findSimpleTypeFormatFunctions:function(t){var e,i=[];if(this._isDecimal(t))e=this._pickMaxLenUnderPoint([t]), -i=[tui.util.bind(this._formatToDecimal,this,e)];else if(this._isZeroFill(t))return e=t.length,i=[tui.util.bind(this._formatToZeroFill,this,e)];return this._isComma(t)&&i.push(o.formatToComma),i},_findFormatFunctions:function(){var t=tui.util.pick(this.options,"chart","format"),e=[];return tui.util.isFunction(t)?e=[t]:tui.util.isString(t)&&(e=this._findSimpleTypeFormatFunctions(t)),e},getFormatFunctions:function(){return this.formatFunctions||(this.formatFunctions=this._findFormatFunctions()),this.formatFunctions}});t.exports=r},function(t,e,i){"use strict";var n=i(83),o=i(84),a=i(85),r=i(5),s=i(23),u=i(6),h=Array.prototype.concat,l=tui.util.defineClass({init:function(t,e,i,n,o){this.chartType=e,this.options=i||{},this.formatFunctions=n,this.rawSeriesData=t||[],this.isCoordinateType=o,this.baseGroups=null,this.groups=null,this.options.series=this.options.series||{},this.isDivergingChart=r.isDivergingChart(e,this.options.series.diverging),this.valuesMap={},this._removeRangeValue()},_removeRangeValue:function(){var t=tui.util.pick(this.options,"series")||{},e=r.isAllowRangeData(this.chartType)&&!r.isValidStackOption(t.stackType)&&!t.spline;e||this.isCoordinateType||tui.util.forEachArray(this.rawSeriesData,function(t){tui.util.isArray(t.data)&&tui.util.forEachArray(t.data,function(e,i){tui.util.isExisty(e)&&(t.data[i]=h.apply(e)[0])})})},_createBaseGroups:function(){var t,e,i=this.chartType,n=this.formatFunctions,s=this.options.xAxis,u=this.isDivergingChart,h=this.isCoordinateType,l=r.isPieChart(this.chartType),c=r.isHeatmapChart(this.chartType)||r.isTreemapChart(this.chartType);return h?(e=a,t=function(t){t.sort(function(t,e){return t.x-e.x})}):(e=o,t=function(){}),tui.util.map(this.rawSeriesData,function(o){var a,r,d;return r=tui.util.isArray(o)?o:[].concat(o.data),c||(a=o.stack),(h||l)&&(r=tui.util.filter(r,tui.util.isExisty)),d=tui.util.map(r,function(t,o){return new e({datum:t,chartType:i,formatFunctions:n,index:o,stack:a,isDivergingChart:u,xAxisType:s.type,dateFormat:s.dateFormat})}),t(d),d})},_getBaseGroups:function(){return this.baseGroups||(this.baseGroups=this._createBaseGroups()),this.baseGroups},_createSeriesGroupsFromRawData:function(t){var e=this._getBaseGroups();return t&&(e=u.pivot(e)),tui.util.map(e,function(t){return new n(t)})},_getSeriesGroups:function(){return this.groups||(this.groups=this._createSeriesGroupsFromRawData(!0)),this.groups},getGroupCount:function(){return this._getSeriesGroups().length},_getPivotGroups:function(){return this.pivotGroups||(this.pivotGroups=this._createSeriesGroupsFromRawData()),this.pivotGroups},getSeriesGroup:function(t,e){return e?this._getPivotGroups()[t]:this._getSeriesGroups()[t]},getFirstSeriesGroup:function(t){return this.getSeriesGroup(0,t)},getFirstItemLabel:function(){return this.getFirstSeriesGroup().getFirstSeriesItem().label},getSeriesItem:function(t,e,i){return this.getSeriesGroup(t,i).getSeriesItem(e)},getFirstSeriesItem:function(){return this.getSeriesItem(0,0)},getValue:function(t,e){return this.getSeriesItem(t,e).value},getMinValue:function(t){return u.min(this.getValues(t))},getMaxValue:function(t){return u.max(this.getValues(t))},_findSeriesItem:function(t){var e;return this.each(function(i){return e=i.find(t),!e}),e},_findSeriesItemByValue:function(t,e,i){return i=i||function(){return null},this._findSeriesItem(function(n){return n&&n[t]===e&&i(n)})},findMinSeriesItem:function(t,e){var i=this.getMinValue(t);return this._findSeriesItemByValue(t,i,e)},findMaxSeriesItem:function(t,e){var i=this.getMaxValue(t);return this._findSeriesItemByValue(t,i,e)},_createValues:function(t){var e=this.map(function(e){return e.getValues(t)});return e=h.apply([],e),tui.util.filter(e,function(t){return!isNaN(t)})},getValues:function(t){return t=t||"value",this.valuesMap[t]||(this.valuesMap[t]=this._createValues(t)),this.valuesMap[t]},isXCountGreaterThanYCount:function(){return this.getValues("x").length>this.getValues("y").length},_addRatiosWhenNormalStacked:function(t){var e=Math.abs(t.max-t.min);this.each(function(t){t.addRatios(e)})},_calculateBaseRatio:function(){var t=this.getValues(),e=s.sumPlusValues(t),i=Math.abs(s.sumMinusValues(t)),n=e>0&&i>0?.5:1;return n},_addRatiosWhenPercentStacked:function(){var t=this._calculateBaseRatio();this.each(function(e){e.addRatiosWhenPercentStacked(t)})},_addRatiosWhenDivergingStacked:function(){this.each(function(t){var e=t.pluck("value"),i=s.sumPlusValues(e),n=Math.abs(s.sumMinusValues(e));t.addRatiosWhenDivergingStacked(i,n)})},_makeSubtractionValue:function(t){var e=r.allowMinusPointRender(this.chartType),i=0;return!e&&r.isMinusLimit(t)?i=t.max:(e||t.min>=0)&&(i=t.min),i},_addRatios:function(t){var e=Math.abs(t.max-t.min),i=this._makeSubtractionValue(t);this.each(function(t){t.addRatios(e,i)})},addDataRatios:function(t,e){var i=r.isAllowedStackOption(this.chartType);i&&r.isNormalStack(e)?this._addRatiosWhenNormalStacked(t):i&&r.isPercentStack(e)?this.isDivergingChart?this._addRatiosWhenDivergingStacked():this._addRatiosWhenPercentStacked():this._addRatios(t)},addDataRatiosOfPieChart:function(){this.each(function(t){var e=s.sum(t.pluck("value"));t.addRatios(e)})},addDataRatiosForCoordinateType:function(t,e){var i,n,o,a,r=t.xAxis,s=t.yAxis,h=e?u.max(this.getValues("r")):0;r&&(i=Math.abs(r.max-r.min),n=this._makeSubtractionValue(r)),s&&(o=Math.abs(s.max-s.min),a=this._makeSubtractionValue(s)),this.each(function(t){t.each(function(t){t&&(t.addRatio("x",i,n),t.addRatio("y",o,a),t.addRatio("r",h,0),tui.util.isExisty(t.start)&&t.addRatio("start",o,a))})})},addStartValueToAllSeriesItem:function(t){this.each(function(e){e.addStartValueToAllSeriesItem(t)})},hasRangeData:function(){var t=!1;return this.each(function(e){return t=e.hasRangeData(),!t}),t},each:function(t,e){var i=e?this._getPivotGroups():this._getSeriesGroups();tui.util.forEachArray(i,function(e,i){return t(e,i)})},map:function(t,e){var i=[];return this.each(function(e,n){i.push(t(e,n))},e),i}});t.exports=l},function(t,e,i){"use strict";var n=i(23),o=tui.util.defineClass({init:function(t){this.items=t,this.valuesMap={},this.valuesMapPerStack=null},getSeriesItemCount:function(){return this.items.length},getSeriesItem:function(t){return this.items[t]},getFirstSeriesItem:function(){return this.getSeriesItem(0)},_createValues:function(t){var e=[];return this.each(function(i){i&&(tui.util.isExisty(i[t])&&e.push(i[t]),tui.util.isExisty(i.start)&&e.push(i.start))}),e},getValues:function(t){return t=t||"value",this.valuesMap[t]||(this.valuesMap[t]=this._createValues(t)),this.valuesMap[t]},_makeValuesMapPerStack:function(){var t={};return this.each(function(e){t[e.stack]||(t[e.stack]=[]),t[e.stack].push(e.value)}),t},getValuesMapPerStack:function(){return this.valuesMapPerStack||(this.valuesMapPerStack=this._makeValuesMapPerStack()),this.valuesMapPerStack},_makeSumMapPerStack:function(){var t=this.getValuesMapPerStack(),e={};return tui.util.forEach(t,function(t,i){e[i]=n.sum(tui.util.map(t,function(t){return Math.abs(t)}))}),e},addStartValueToAllSeriesItem:function(t){this.each(function(e){e&&e.addStart(t)})},addRatiosWhenPercentStacked:function(t){var e=this._makeSumMapPerStack();this.each(function(i){var n=e[i.stack];i.addRatio(n,0,t)})},addRatiosWhenDivergingStacked:function(t,e){this.each(function(i){var n=i.value>=0?t:e;i.addRatio(n,0,.5)})},addRatios:function(t,e){this.each(function(i){i&&i.addRatio(t,e)})},hasRangeData:function(){var t=!1;return this.each(function(e){return t=e&&e.isRange,!t}),t},each:function(t){tui.util.forEachArray(this.items,t)},map:function(t){return tui.util.map(this.items,t)},pluck:function(t){var e=tui.util.filter(this.items,tui.util.isExisty);return tui.util.pluck(e,t)},find:function(t){var e;return this.each(function(i){return t(i)&&(e=i),!e}),e||null},filter:function(t){return tui.util.filter(this.items,t)}});t.exports=o},function(t,e,i){"use strict";var n=i(2),o=i(24),a=i(23),r=tui.util.defineClass({init:function(t){this.chartType=t.chartType,this.stack=t.stack||n.DEFAULT_STACK,this.isDivergingChart=t.isDivergingChart,this.formatFunctions=t.formatFunctions,this.isRange=!1,this.value=null,this.label=null,this.ratio=null,this.end=null,this.endLabel=null,this.endRatio=null,this.start=null,this.startLabel=null,this.startRatio=null,this.ratioDistance=null,this._initValues(t.datum,t.index)},_initValues:function(t,e){var i=this._createValues(t),n="makingSeriesLabel",a=i.length>1,r=i[0];this.value=this.end=r,this.index=e,this.isDivergingChart&&(r=Math.abs(r)),tui.util.isNull(r)?this.label="":this.label=o.formatValue(r,this.formatFunctions,this.chartType,n),this.endLabel=this.label,a&&(this.addStart(i[1],!0),this._updateFormattedValueforRange(),this.isRange=!0)},_createValues:function(t){var e=tui.util.map([].concat(t),function(t){return tui.util.isNull(t)?null:parseFloat(t)});return e=e.sort(function(t,e){return t<0&&e<0?t-e:e-t})},addStart:function(t){tui.util.isNull(this.start)&&(this.start=t,this.startLabel=o.formatValue(t,this.formatFunctions,this.chartType,"series"))},_updateFormattedValueforRange:function(){this.label=this.startLabel+" ~ "+this.endLabel},addRatio:function(t,e,i){t=t||1,i=i||1,e=e||0,this.ratio=this.endRatio=a.calculateRatio(this.value,t,e,i),tui.util.isExisty(this.start)&&(this.startRatio=a.calculateRatio(this.start,t,e,i),this.ratioDistance=Math.abs(this.endRatio-this.startRatio))},_getFormattedValueForTooltip:function(t){return o.formatValue(this[t],this.formatFunctions,this.chartType,"tooltip",t)},pickValueMapForTooltip:function(){var t={value:this._getFormattedValueForTooltip("value"),ratio:this.ratio};return tui.util.isExisty(this.start)&&(t.start=this._getFormattedValueForTooltip("start"),t.end=this._getFormattedValueForTooltip("end"),t.startRatio=this.startRatio,t.endRatio=this.endRatio),t}});t.exports=r},function(t,e,i){"use strict";var n=i(5),o=i(24),a=tui.util.defineClass({init:function(t){this.chartType=t.chartType,this.formatFunctions=t.formatFunctions,this.xAxisType=t.xAxisType,this.dateFormat=t.dateFormat,this.ratioMap={},this._initData(t.datum,t.index)},_initData:function(t,e){var i;tui.util.isArray(t)?(this.x=t[0]||0,this.y=t[1]||0,n.isBubbleChart(this.chartType)?(this.r=t[2],this.label=t[3]||""):this.label=t[2]||""):(this.x=t.x,this.y=t.y,this.r=t.r,this.label=t.label||""),n.isDatetimeType(this.xAxisType)&&(i=tui.util.isDate(this.x)?this.x:new Date(this.x),this.x=i.getTime()||0),this.index=e,this.label||(n.isLineTypeChart(this.chartType)&&n.isDatetimeType(this.xAxisType)?this.label=o.formatDate(this.x,this.dateFormat):this.label=o.formatValue(this.x,this.formatFunctions,this.chartType,"series"),this.label+=", "+o.formatValue(this.y,this.formatFunctions,this.chartType,"series"))},addStart:function(t){this.start=t},addRatio:function(t,e,i){!tui.util.isExisty(this.ratioMap[t])&&e&&(this.ratioMap[t]=(this[t]-i)/e)},_getFormattedValueForTooltip:function(t){var e=this.ratioMap[t],i=this[t],n=o.formatValue(i,this.formatFunctions,this.chartType,"tooltip",t);return tui.util.isNumber(e)?n:i},pickValueMapForTooltip:function(){var t={x:this._getFormattedValueForTooltip("x"),y:this._getFormattedValueForTooltip("y"),xRatio:this.ratioMap.x,yRatio:this.ratioMap.y};return tui.util.isExisty(this.r)&&(t.r=this._getFormattedValueForTooltip("r"),t.rRatio=this.ratioMap.r),t}});t.exports=a},function(t,e,i){"use strict";var n=i(87),o=i(82),a=Array.prototype.concat,r=tui.util.defineClass(o,{init:function(t,e,i,n){this.chartType=e,this.options=i||{},this.formatFunctions=n,this.rawSeriesData=t||[],this.baseGroups=null,this.groups=null,this.options.series=this.options.series||{},this.valuesMap={}},_createBaseGroups:function(){var t=this.chartType,e=this.formatFunctions;return tui.util.map(this.rawSeriesData,function(i){var o=tui.util.isArray(i)?i:[].concat(i.data),a=tui.util.map(o,function(i,o){return new n({datum:i,chartType:t,formatFunctions:e,index:o})});return a})},_createValues:function(){var t=[];return this.map(function(e){tui.util.forEach(e.items,function(e){t.push(e.min),t.push(e.max),t.push(e.uq),t.push(e.lq),t.push(e.median)})}),t=a.apply([],t),tui.util.filter(t,function(t){return!isNaN(t)})}});t.exports=r},function(t,e,i){"use strict";var n=i(24),o=i(23),a=tui.util.defineClass({init:function(t){this.chartType=t.chartType,this.formatFunctions=t.formatFunctions,this.value=null,this.label=null,this.ratio=null,this.min=null,this.minLabel=null,this.minRatio=null,this.max=null,this.maxLabel=null,this.maxRatio=null,this.median=null,this.medianLabel=null,this.medianRatio=null,this.lq=null,this.lqLabel=null,this.lqRatio=null,this.uq=null,this.uqLabel=null,this.uqRatio=null,this.ratioDistance=null,this._initValues(t.datum,t.index)},_initValues:function(t,e){var i,o=this,a=this._createValues(t),r="makingSeriesLabel",s=a[4],u=a[3],h=a[2],l=a[1],c=a[0],d=a.length>5;this.value=this.max=s,this.uq=u,this.median=h,this.lq=l,this.min=c,this.index=e,d&&(this.outliers=[],i=this.outliers,tui.util.forEach(a.slice(5),function(t){i.push({value:t,label:n.formatValue(t,o.formatFunctions,o.chartType,r)})})),this.label=n.formatValue(s,this.formatFunctions,this.chartType,r),this.maxLabel=this.label,this.uqLabel=n.formatValue(u,this.formatFunctions,this.chartType,r),this.medianLabel=n.formatValue(h,this.formatFunctions,this.chartType,r),this.lqLabel=n.formatValue(l,this.formatFunctions,this.chartType,r),this.minLabel=n.formatValue(c,this.formatFunctions,this.chartType,r)},_createValues:function(t){var e=tui.util.map([].concat(t),function(t){return tui.util.isNull(t)?null:parseFloat(t)});return e},addStart:function(t){tui.util.isNull(this.min)&&(this.min=t,this.minLabel=n.formatValue(t,this.formatFunctions,this.chartType,"series"))},_updateFormattedValueforRange:function(){this.label=this.minLabel+" ~ "+this.maxLabel},addRatio:function(t,e,i){var n=o.calculateRatio;t=t||1,i=i||1,e=e||0,this.ratio=this.maxRatio=n(this.max,t,e,i),this.uqRatio=n(this.uq,t,e,i),this.medianRatio=n(this.median,t,e,i),this.lqRatio=n(this.lq,t,e,i),this.minRatio=n(this.min,t,e,i),tui.util.forEach(this.outliers,function(o){o.ratio=n(o.value,t,e,i)}),this.ratioDistance=Math.abs(this.uqRatio-this.lqRatio)},_getFormattedValueForTooltip:function(t){return n.formatValue(this[t],this.formatFunctions,this.chartType,"tooltip",t)},pickValueMapForTooltip:function(){var t={value:this._getFormattedValueForTooltip("value"),ratio:this.ratio};return tui.util.isExisty(this.min)&&(t.min=this._getFormattedValueForTooltip("min"),t.max=this._getFormattedValueForTooltip("max"),t.minRatio=this.minRatio,t.maxRatio=this.maxRatio,t.maxLabel=this.maxLabel,t.minLabel=this.minLabel,t.uqLabel=this.uqLabel,t.lqLabel=this.lqLabel,t.medianLabel=this.medianLabel,t.outliers=this.outliers),t}});t.exports=a},function(t,e,i){"use strict";var n=i(82),o=i(89),a=i(2),r=i(23),s=Array.prototype.slice,u=tui.util.defineClass(n,{init:function(){n.apply(this,arguments),this.foundSeriesItemsMap={},this.seriesItemMap={}},_flattenHierarchicalData:function(t,e,i){var n,o=this,r=[];return e?n=e+"_":(n=a.TREEMAP_ID_PREFIX,e=a.TREEMAP_ROOT_ID),i=i||[],tui.util.forEachArray(t,function(t,a){var s=n+a,u=t.children,h=i.concat(a);t.indexes=h,tui.util.isNull(t.value)||r.push(t),t.id||(t.id=s),t.parent||(t.parent=e),u&&(r=r.concat(o._flattenHierarchicalData(u,s,h)),delete t.children)}),r},_partitionRawSeriesDataByParent:function(t,e){var i=[],n=[];return tui.util.forEachArray(t,function(t){t.parent===e?i.push(t):n.push(t)}),[i,n]},_setTreeProperties:function(t,e,i,n){var o=this,a=this._partitionRawSeriesDataByParent(t,i),s=a[0],u=a[1],h=e+1;return tui.util.forEachArray(s,function(t,i){var a,l;t.depth=e,t.group=tui.util.isUndefined(n)?i:n,a=o._setTreeProperties(u,h,t.id,t.group),l=tui.util.filter(a,function(t){return t.depth===h}),l.length?(t.value=r.sum(tui.util.pluck(l,"value")),t.hasChild=!0):t.hasChild=!1,s=s.concat(a)}),s},_setRatio:function(t,e){var i=this,n=this._partitionRawSeriesDataByParent(t,e),o=n[0],a=n[1],s=r.sum(tui.util.pluck(o,"value"));tui.util.forEachArray(o,function(t){var e=tui.util.isNull(t.value)?0:t.value;t.ratio=e/s,t.hasChild&&i._setRatio(a,t.id)})},_createBaseGroups:function(){var t=this.chartType,e=this.seriesItemMap,i=this.formatFunctions,n=this._flattenHierarchicalData(this.rawSeriesData);return n=this._setTreeProperties(n,1,a.TREEMAP_ROOT_ID),this._setRatio(n,a.TREEMAP_ROOT_ID),[tui.util.map(n,function(n){var a=new o(n,i,t);return e[a.id]=a,a})]},_findSeriesItems:function(t,e){return this.foundSeriesItemsMap[t]||(this.foundSeriesItemsMap[t]=this.getFirstSeriesGroup(!0).filter(e)),this.foundSeriesItemsMap[t]},_makeCacheKey:function(t){var e=t;return arguments.length>1&&(e+=s.call(arguments,1).join("_")),e},_isValidGroup:function(t,e){return!tui.util.isExisty(e)||t===e},findSeriesItemsByDepth:function(t,e){var i=this,n=this._makeCacheKey(a.TREEMAP_DEPTH_KEY_PREFIX,t,e);return this._findSeriesItems(n,function(n){return n.depth===t&&i._isValidGroup(n.group,e)})},findSeriesItemsByParent:function(t){var e=this._makeCacheKey(a.TREEMAP_PARENT_KEY_PREFIX,t);return this._findSeriesItems(e,function(e){return e.parent===t})},findLeafSeriesItems:function(t){var e=this,i=this._makeCacheKey(a.TREEMAP_LEAF_KEY_PREFIX,t);return this._findSeriesItems(i,function(i){return!i.hasChild&&e._isValidGroup(i.group,t)})},findParentByDepth:function(t,e){var i=this.seriesItemMap[t]||null;return i&&i.depth!==e&&(i=this.findParentByDepth(i.parent,e)),i},initSeriesItemsMap:function(){this.foundSeriesItemsMap=null}});t.exports=u},function(t,e,i){"use strict";var n=i(23),o=i(24),a=tui.util.defineClass({init:function(t,e,i){this.chartType=i,this.formatFunctions=e,this.id=t.id,this.parent=t.parent,this.value=t.value,this.ratio=t.ratio,this.colorValue=t.colorValue,this.depth=t.depth,this.label=t.label||"",this.group=t.group,this.hasChild=!!t.hasChild,this.indexes=t.indexes},addRatio:function(t,e){t=t||1,e=e||0,this.colorRatio=n.calculateRatio(this.colorValue,t,e,1)||-1},pickValueMapForTooltip:function(){var t=this.formatFunctions,e=this.chartType,i=this.colorValue,n=o.formatValue(this.value,t,e,"tooltipValue"),a=(this.label?this.label+": ":"")+n,r={value:n,label:a,ratio:this.ratio};return tui.util.isExisty(i)&&(r.colorValue=o.formatValue(i,t,e,"tooltipColorValue"),r.colorRatio=this.colorRatio),r},pickLabelTemplateData:function(){var t={value:this.value,ratio:this.ratio,label:this.label};return tui.util.isExisty(this.colorValue)&&(t.colorValue=this.colorValue,t.colorValueRatio=this.ratio),t}});t.exports=a},function(t,e,i){"use strict";var n=i(91),o=i(97),a=i(2),r=i(5),s={_createBoundsModel:function(t,e){return new n({chartType:e.chartType,seriesTypes:e.seriesTypes,options:e.options,theme:e.theme,dataProcessor:t,hasAxes:e.hasAxes,isVertical:e.isVertical})},_createScaleDataModel:function(t,e,i){return new o({chartType:i.chartType,seriesTypes:i.seriesTypes,options:i.options,theme:i.theme,dataProcessor:t,boundsModel:e,hasRightYAxis:i.hasRightYAxis,addedDataCount:i.addedDataCount})},addYAxisScale:function(t,e,i,n){t.addScale(e,i&&i.options||n||{},{valueType:i.valueType||"value",areaType:i.areaType,chartType:i.chartType},i.additionalOptions)},_registerYAxisDimension:function(t,e,i,n,o){var a,r=t.get(n),s=null;r&&(a=i[n],a&&(s=a.limit),e.registerYAxisDimension(s,n,r.options,r.theme,o))},_setLayoutBoundsAndScale:function(t,e,i,n,o){var s,u=o.options,h=o.scaleOption||{},l=o.addingDataMode,c=o.isVertical;e.has("xAxis")&&i.registerXAxisHeight(),e.has("legend")&&(e.get("legend").colorSpectrum?i.registerSpectrumLegendDimension():i.registerLegendDimension()),h.yAxis&&this.addYAxisScale(n,"yAxis",h.yAxis,o.options.yAxis),h.rightYAxis&&this.addYAxisScale(n,"rightYAxis",h.rightYAxis),h.legend&&n.addScale("legend",{},{chartType:o.chartType},{tickCounts:[a.SPECTRUM_LEGEND_TICK_COUNT]}),s=n.scaleDataMap,this._registerYAxisDimension(e,i,s,"yAxis",c),this._registerYAxisDimension(e,i,s,"rightYAxis",c),h.xAxis&&n.addScale("xAxis",u.xAxis,{valueType:h.xAxis.valueType||"value"},h.xAxis.additionalOptions),o.hasAxes&&n.setAxisDataMap(),i.registerSeriesDimension(),e.has("circleLegend")&&u.circleLegend.visible&&i.registerCircleLegendDimension(n.axisDataMap),e.has("xAxis")&&(r.isAutoTickInterval(u.xAxis.tickInterval)&&n.updateXAxisDataForAutoTickInterval(o.prevXAxisData,l),n.updateXAxisDataForLabel(l)),i.registerBoundsData(n.axisDataMap.xAxis)},build:function(t,e,i){var n,o=this._createBoundsModel(t,i),a=this._createScaleDataModel(t,o,i);return this._setLayoutBoundsAndScale(t,e,o,a,i),n={dimensionMap:o.dimensionMap,positionMap:o.positionMap,limitMap:a.makeLimitMap(i.seriesTypes||[i.chartType],i.isVertical)},a.axisDataMap&&(n.axisDataMap=a.axisDataMap),r.isBubbleChart(i.chartType)&&(n.maxRadius=o.calculateMaxRadius(a.axisDataMap)),a.scaleDataMap.legend&&(n.legendScaleData=a.scaleDataMap.legend),n}};t.exports=s},function(t,e,i){"use strict";var n=i(2),o=i(5),a=i(24),r=i(61),s=i(92),u=i(93),h=i(94),l=i(95),c=i(96),d=tui.util.defineClass({init:function(t){this.options=t.options||{},this.options.legend=this.options.legend||{},this.options.yAxis=this.options.yAxis||{},this.theme=t.theme||{},this.hasAxes=t.hasAxes,this.chartType=t.chartType,this.seriesTypes=t.seriesTypes||[],this.dataProcessor=t.dataProcessor,this.initBoundsData()},initBoundsData:function(){this.dimensionMap={legend:{width:0},yAxis:{width:0},rightYAxis:{width:0},xAxis:{height:0},circleLegend:{width:0},chartExportMenu:{width:0}},this.positionMap={},this.chartLeftPadding=n.CHART_PADDING,this.maxRadiusForBubbleChart=null,this._registerChartDimension(),this._registerTitleDimension(),this._registerChartExportMenuDimension()},_registerDimension:function(t,e){this.dimensionMap[t]=tui.util.extend(this.dimensionMap[t]||{},e)},getBound:function(t){return{dimension:this.dimensionMap[t]||{},position:this.positionMap[t]||{}}},_setBound:function(t,e){this.dimensionMap[t]=e.dimension,this.positionMap[t]=e.position},getDimension:function(t){return this.dimensionMap[t]},getDimensionMap:function(t){var e=this,i={};return t&&t.length?tui.util.forEachArray(t,function(t){i[t]=e.dimensionMap[t]}):i=this.dimensionMap,JSON.parse(JSON.stringify(i))},getPosition:function(t){return this.positionMap[t]},_registerChartDimension:function(){var t=this.options.chart||{},e={width:t.width||n.CHART_DEFAULT_WIDTH,height:t.height||n.CHART_DEFAULT_HEIGHT};this._registerDimension("chart",e)},_registerTitleDimension:function(){var t=this.options.chart||{},e=tui.util.isExisty(t.title),i=e?r.getRenderedTextSize(t.title.text,this.theme.title.fontSize,this.theme.title.fontFamily).height:0,o={height:i?i+n.TITLE_PADDING:0};this._registerDimension("title",o)},_registerChartExportMenuDimension:function(){var t;t=this.options.chartExportMenu.visible?{height:17+n.CHART_PADDING,width:60}:{width:0,height:0},this._registerDimension("chartExportMenu",t)},registerXAxisHeight:function(){this._registerDimension("xAxis",{height:u.calculateXAxisHeight(this.options.xAxis.title,this.theme.xAxis)})},registerLegendDimension:function(){var t=tui.util.pluck(this.dataProcessor.getOriginalLegendData(),"label"),e=this.options.legend,i=this.theme.legend.label,n=this.getDimension("chart").width,o=h.calculate(e,i,t,n);this._registerDimension("legend",o)},registerSpectrumLegendDimension:function(){var t,e=this.dataProcessor.getFormattedMaxValue(this.chartType,"legend"),i=this.theme.label;t=o.isHorizontalLegend(this.options.legend.align)?c._makeHorizontalDimension(e,i):c._makeVerticalDimension(e,i),this._registerDimension("legend",t)},registerYAxisDimension:function(t,e,i,n,a){var r,s;if(t)r=[t.min,t.max];else{if(!o.isHeatmapChart(this.chartType)&&a)return;r=this.dataProcessor.getCategories(!0)}s=tui.util.isArray(i)?"yAxis"===e?i[0]:i[1]:i,this._registerDimension(e,{width:u.calculateYAxisWidth(r,s,n)})},calculateSeriesWidth:function(){var t=this.getDimensionMap(["chart","yAxis","legend","rightYAxis"]);return l.calculateWidth(t,this.options.legend)},calculateSeriesHeight:function(){var t=this.getDimensionMap(["chart","title","legend","xAxis","chartExportMenu"]);return l.calculateHeight(t,this.options.legend)},getBaseSizeForLimit:function(t){var e;return e=t?this.calculateSeriesHeight():this.calculateSeriesWidth()},_makeSeriesDimension:function(){return{width:this.calculateSeriesWidth(),height:this.calculateSeriesHeight()}},registerSeriesDimension:function(){var t=this._makeSeriesDimension();this._registerDimension("series",t)},_updateLegendAndSeriesWidth:function(t,e){var i=this.options.legend;o.isVerticalLegend(i.align)&&i.visible&&this._registerDimension("legend",{width:t}),this._registerDimension("series",{width:this.getDimension("series").width-e})},registerCircleLegendDimension:function(t){var e,i,a=this.getDimension("series"),r=this.options.legend,u=this.dataProcessor.getFormattedMaxValue(this.chartType,"circleLegend","r"),h=this.theme.chart.fontFamily,l=s.calculateCircleLegendWidth(a,t,u,h);e=o.isVerticalLegend(r.align)&&r.visible?this.getDimension("legend").width:0,l=Math.min(l,Math.max(e,n.MIN_LEGEND_WIDTH)),i=l-e,this._registerDimension("circleLegend",{width:l,height:l}),i>0&&this._updateLegendAndSeriesWidth(l,i)},_makePlotDimension:function(){var t=this.getDimension("series");return{width:t.width,height:t.height+n.OVERLAPPING_WIDTH}},_registerCenterComponentsDimension:function(){var t=this.getDimension("series");this._registerDimension("tooltip",t),this._registerDimension("mouseEventDetector",t)},_registerAxisComponentsDimension:function(){var t=this._makePlotDimension();this._registerDimension("plot",t),this._registerDimension("xAxis",{width:t.width}),this._registerDimension("yAxis",{height:t.height}),this._registerDimension("rightYAxis",{height:t.height})},_updateDimensionsWidth:function(t){var e=Math.max(t.overflowLeft,0),i=Math.max(t.overflowRight,0),n=e+i;this.chartLeftPadding+=e,this.dimensionMap.plot.width-=n,this.dimensionMap.series.width-=n,this.dimensionMap.mouseEventDetector.width-=n,this.dimensionMap.xAxis.width-=n},_updateDimensionsHeight:function(t){this.dimensionMap.plot.height-=t,this.dimensionMap.series.height-=t,this.dimensionMap.mouseEventDetector.height-=t,this.dimensionMap.tooltip.height-=t,this.dimensionMap.yAxis.height-=t,this.dimensionMap.rightYAxis.height-=t,this.dimensionMap.xAxis.height+=t},_updateDimensionsForXAxisLabel:function(t){(t.overflowRight>0||t.overflowLeft>0)&&this._updateDimensionsWidth(t),t.overflowHeight&&this._updateDimensionsHeight(t.overflowHeight)},_registerAxisComponentsPosition:function(t){var e=this.getPosition("series"),i=this.getDimension("series"),o=this.getDimension("yAxis").width,a=t+o+i.width;this.positionMap.plot={top:e.top,left:e.left},this.positionMap.yAxis={top:e.top,left:this.chartLeftPadding+t},this.positionMap.xAxis={top:e.top+i.height,left:e.left},this.positionMap.rightYAxis={top:e.top,left:this.chartLeftPadding+a-n.OVERLAPPING_WIDTH}},_makeLegendPosition:function(){var t,e,i=this.dimensionMap,a=this.getDimension("series"),r=this.options.legend,s=i.title.height||i.chartExportMenu.height;return o.isLegendAlignBottom(r.align)&&(s+=a.height+this.getDimension("xAxis").height+n.LEGEND_AREA_PADDING),o.isHorizontalLegend(r.align)?e=(this.getDimension("chart").width-this.getDimension("legend").width)/2:o.isLegendAlignLeft(r.align)?e=this.chartLeftPadding:(t=this.getDimension("yAxis").width+this.getDimension("rightYAxis").width,e=this.chartLeftPadding+t+a.width),{top:s,left:e}},_makeChartExportMenuPosition:function(){return{top:1,right:20}},_makeCircleLegendPosition:function(){var t,e,i=this.getPosition("series"),a=this.getDimension("series"),r=this.getDimension("circleLegend"),s=this.options.legend;return t=o.isLegendAlignLeft(s.align)?0:i.left+a.width,o.isVerticalLegend(s.align)&&s.visible&&(e=this.getDimension("legend").width+n.CHART_PADDING,t+=(e-r.width)/2),{top:i.top+a.height-r.height,left:t}},_isNeedExpansionSeries:function(){var t=this.chartType;return!(o.isPieChart(t)||o.isMapChart(t)||o.isTreemapChart(t)||o.isRadialChart(t)||o.isPieDonutComboChart(t,this.seriesTypes))},_registerEssentialComponentsPositions:function(){var t,e=this.getPosition("series");this.positionMap.mouseEventDetector=tui.util.extend({},e),this.positionMap.legend=this._makeLegendPosition(),this.positionMap.chartExportMenu=this._makeChartExportMenuPosition(),this.getDimension("circleLegend").width&&(this.positionMap.circleLegend=this._makeCircleLegendPosition()),t=this._isNeedExpansionSeries()?{top:e.top-n.SERIES_EXPAND_SIZE,left:e.left-n.SERIES_EXPAND_SIZE}:e,this.positionMap.tooltip=t},_registerPositions:function(){var t=this.options.legend.align,e=this.options.legend.visible,i=this.getDimension("legend"),a=o.isLegendAlignTop(t)&&e?i.height:0,r=o.isLegendAlignLeft(t)&&e?i.width:0,s=Math.max(this.getDimension("title").height,this.getDimension("chartExportMenu").height),u={top:s+n.CHART_PADDING+a,left:this.chartLeftPadding+r+this.getDimension("yAxis").width};this.positionMap.series=u,this.hasAxes&&this._registerAxisComponentsPosition(r),this._registerEssentialComponentsPositions()},_registerExtendedSeriesBound:function(){var t=this.getBound("series");this._isNeedExpansionSeries()&&(t=a.expandBound(t)),this._setBound("extendedSeries",t)},_updateBoundsForYAxisCenterOption:function(){var t=this.getDimension("yAxis").width,e=Math.floor(this.getDimension("series").width/2)+n.OVERLAPPING_WIDTH,i=t-n.OVERLAPPING_WIDTH,o=a.isOldBrowser()?1:0;this.dimensionMap.extendedSeries.width+=t,this.dimensionMap.xAxis.width+=n.OVERLAPPING_WIDTH,this.dimensionMap.plot.width+=t+n.OVERLAPPING_WIDTH,this.dimensionMap.mouseEventDetector.width+=t,this.dimensionMap.tooltip.width+=t,this.positionMap.series.left-=t-o,this.positionMap.extendedSeries.left-=i-o,this.positionMap.plot.left-=i,this.positionMap.yAxis.left+=e,this.positionMap.xAxis.left-=i,this.positionMap.mouseEventDetector.left-=i,this.positionMap.tooltip.left-=i},registerBoundsData:function(t){this._registerCenterComponentsDimension(),this.hasAxes&&(this._registerAxisComponentsDimension(),this._updateDimensionsForXAxisLabel(t)),this._registerPositions(),this._registerExtendedSeriesBound(),this.options.yAxis.isCenter&&this._updateBoundsForYAxisCenterOption()},calculateMaxRadius:function(t){var e=this.getDimensionMap(["series","circleLegend"]);return s.calculateMaxRadius(e,t)}});t.exports=d},function(t,e,i){"use strict";var n=i(2),o=i(24),a={_calculatePixelStep:function(t,e){var i,n=t.tickCount;return i=t.isLabelAxis?e/n/2:e/(n-1),parseInt(i,10)},_calculateRadiusByAxisData:function(t,e){var i=this._calculatePixelStep(e.yAxis,t.height),n=this._calculatePixelStep(e.xAxis,t.width);return Math.min(i,n)},_getCircleLegendLabelMaxWidth:function(t,e){return o.getRenderedLabelWidth(t,{fontSize:n.CIRCLE_LEGEND_LABEL_FONT_SIZE,fontFamily:e})},calculateCircleLegendWidth:function(t,e,i,o){var a=this._calculateRadiusByAxisData(t,e),r=this._getCircleLegendLabelMaxWidth(i,o);return Math.max(2*a,r)+n.CIRCLE_LEGEND_PADDING},calculateMaxRadius:function(t,e){var i=this._calculateRadiusByAxisData(t.series,e),o=t.circleLegend.width;return Math.min((o-n.CIRCLE_LEGEND_PADDING)/2,i)}};t.exports=a},function(t,e,i){"use strict";var n=i(2),o=i(5),a=i(24),r={calculateXAxisHeight:function(t,e){var i=t?a.getRenderedLabelHeight(t.text,e.title):0,o=i?i+n.TITLE_PADDING:0,r=a.getRenderedLabelHeight(n.MAX_HEIGHT_WORLD,e.label);return o+r+n.CHART_PADDING},calculateYAxisWidth:function(t,e,i){var r=e.title||"",s=0,u=0;return t=a.addPrefixSuffix(t,e.prefix,e.suffix),e.isCenter?u+=n.AXIS_LABEL_PADDING:s=e.rotateTitle===!1?a.getRenderedLabelWidth(r.text,i.title)+n.TITLE_PADDING:a.getRenderedLabelHeight(r.text,i.title)+n.TITLE_PADDING,o.isDatetimeType(e.type)&&(t=a.formatDates(t,e.dateFormat)),u+=a.getRenderedLabelsMaxWidth(t,i.label)+s+n.AXIS_LABEL_PADDING}};t.exports=r},function(t,e,i){"use strict";var n=i(2),o=i(5),a=i(23),r=i(24),s=i(6),u=n.LEGEND_CHECKBOX_WIDTH,h=n.LEGEND_ICON_WIDTH,l=n.LEGEND_ICON_HEIGHT,c=n.LEGEND_LABEL_LEFT_PADDING,d=n.LEGEND_AREA_PADDING,p={legendMargin:c+d,_calculateLegendsWidthSum:function(t,e,i){var n=d+i+h+c,o=this.legendMargin;return a.sum(tui.util.map(t,function(t){var i=r.getRenderedLabelWidth(t,e)+n; -return i+o}))},_divideLegendLabels:function(t,e){var i=Math.round(t.length/e),n=[],o=[];return tui.util.forEachArray(t,function(t){o.length=e);return{labels:o,maxLineWidth:s}},_calculateHorizontalLegendHeight:function(t,e){var i=Math.max.apply(null,tui.util.map(t,function(t){return r.getRenderedLabelsMaxHeight(t,e)})),o=Math.max(l,i)+n.LINE_MARGIN_TOP,a=o*t.length-n.LINE_MARGIN_TOP;return a},_makeHorizontalDimension:function(t,e,i,o){var a=this._makeDividedLabelsAndMaxLineWidth(e,i,t,o),r=this._calculateHorizontalLegendHeight(a.labels,t),s=r+2*d;return{width:Math.max(a.maxLineWidth,n.MIN_LEGEND_WIDTH),height:s}},_makeVerticalDimension:function(t,e,i){var n=d+i+h+c+r.getRenderedLabelsMaxWidth(e,t);return{width:n+this.legendMargin,height:0}},calculate:function(t,e,i,n){var a=t.showCheckbox===!1?0:u+c,r={};return t.visible?r=o.isHorizontalLegend(t.align)?this._makeHorizontalDimension(e,i,n,a):this._makeVerticalDimension(e,i,a):r.width=0,r}};t.exports=p},function(t,e,i){"use strict";var n=i(2),o=i(5),a={calculateWidth:function(t,e){var i=t.chart.width,a=t.yAxis.width+t.rightYAxis.width,r=t.legend,s=0;return o.isVerticalLegend(e.align)&&e.visible&&(s=r?r.width:0),i-2*n.CHART_PADDING-a-s},calculateHeight:function(t,e){var i,a,r=t.chart.height,s=Math.max(t.title.height,t.chartExportMenu.height);return i=o.isHorizontalLegend(e.align)&&e.visible?t.legend.height:0,a=i+t.xAxis.height,r-2*n.CHART_PADDING-s-a}};t.exports=a},function(t,e,i){"use strict";var n=i(2),o=i(24),a={_makeVerticalDimension:function(t,e){var i=o.getRenderedLabelWidth(t,e),a=n.LEGEND_AREA_PADDING+n.MAP_LEGEND_LABEL_PADDING;return{width:n.MAP_LEGEND_GRAPH_SIZE+i+a,height:n.MAP_LEGEND_SIZE}},_makeHorizontalDimension:function(t,e){var i=o.getRenderedLabelHeight(t,e),a=n.LEGEND_AREA_PADDING+n.MAP_LEGEND_LABEL_PADDING;return{width:n.MAP_LEGEND_SIZE,height:n.MAP_LEGEND_GRAPH_SIZE+i+a}}};t.exports=a},function(t,e,i){"use strict";var n=i(98),o=i(100),a=i(101),r=i(5),s=i(24),u=tui.util.defineClass({init:function(t){this.chartType=t.chartType,this.seriesTypes=t.seriesTypes,this.dataProcessor=t.dataProcessor,this.boundsModel=t.boundsModel,this.options=t.options,this.theme=t.theme,this.hasRightYAxis=!!t.hasRightYAxis,this.prevValidLabelCount=null,this.initScaleData(t.addedDataCount),this.initForAutoTickInterval()},initScaleData:function(t){this.scaleDataMap={},this.axisDataMap={},this.addedDataCount=t},initForAutoTickInterval:function(){this.firstTickCount=null},_pickLimitOption:function(t){return t=t||{},{min:t.min,max:t.max}},_createBaseScaleData:function(t,e,i,o){var a=t.chartType,s="xAxis"!==t.areaType,u=this.dataProcessor.createBaseValuesForLimit(a,o.isSingleYAxis,e.stackType,t.valueType,t.areaType),h=this.boundsModel.getBaseSizeForLimit(s),l=tui.util.extend(e,{isVertical:s,limitOption:this._pickLimitOption(i),tickCounts:o.tickCounts});return r.isBubbleChart(a)&&(l.overflowItem=this.dataProcessor.findOverflowItem(a,t.valueType)),n.makeScaleData(u,h,a,l)},_createScaleLabels:function(t,e,i,n){var a=this.dataProcessor.getFormatFunctions(),r=tui.util.extend(i,{dateFormat:n});return o.createFormattedLabels(t,e,r,a)},_createScaleData:function(t,e,i){var n,o,a=this.options.series,r=e.chartType||this.chartType;return e.chartType=r,a=a[r]||a,n={stackType:i.stackType||a.stackType,diverging:a.diverging,type:t.type},o=this._createBaseScaleData(e,n,t,i),tui.util.extend(o,{labels:this._createScaleLabels(o,e,n,t.dateFormat),axisOptions:t})},_createValueAxisData:function(t,e,i,n,o){var r,s,u=this.dataProcessor.hasCategories(),h=!n&&!u&&i,l=t.labels,c=t.limit,d=t.step,p=l.length,f=a.makeValueAxisData({labels:l,tickCount:l.length,limit:c,step:d,options:t.axisOptions,labelTheme:e,isVertical:!!n,isPositionRight:!!o,aligned:i});return h&&(r=this.dataProcessor.getValues(this.chartType,"x"),s=a.makeAdditionalDataForCoordinateLineType(l,r,c,d,p),tui.util.extend(f,s)),f},_createLabelAxisData:function(t,e,i,n,o){return a.makeLabelAxisData({labels:this.dataProcessor.getCategories(n),options:t,labelTheme:e,isVertical:!!n,isPositionRight:!!o,aligned:i,addedDataCount:this.options.series.shifting?this.addedDataCount:0})},_createAxisData:function(t,e,i,n,o){var a,s=r.isLineTypeChart(this.chartType,this.seriesTypes)&&!e.pointOnColumn;return a=t?this._createValueAxisData(t,i,s,n,o):this._createLabelAxisData(e,i,s,n,o)},_createAxesData:function(){var t=this.scaleDataMap,e=this.options,i=this.theme,n=tui.util.isArray(e.yAxis)?e.yAxis:[e.yAxis],o={};return o.xAxis=this._createAxisData(t.xAxis,e.xAxis,i.xAxis.label),o.yAxis=this._createAxisData(t.yAxis,n[0],i.yAxis.label,!0),this.hasRightYAxis&&(o.rightYAxis=this._createAxisData(t.rightYAxis,n[1],i.yAxis.label,!0,!0),o.rightYAxis.aligned=o.xAxis.aligned),o},addScale:function(t,e,i,n){i=i||{},n=n||{},i.areaType=i.areaType||t,i.chartType=n.chartType||i.chartType,this.scaleDataMap[t]=this._createScaleData(e,i,n)},setAxisDataMap:function(){this.axisDataMap=this._createAxesData()},updateXAxisDataForAutoTickInterval:function(t,e){var i=this.options.series.shifting,n=this.options.series.zoomable,o=this.axisDataMap.xAxis,r=this.boundsModel.getDimension("series").width,s=this.addedDataCount;i||!t||n?a.updateLabelAxisDataForAutoTickInterval(o,r,s,e):a.updateLabelAxisDataForStackingDynamicData(o,t,this.firstTickCount),this.firstTickCount||(this.firstTickCount=o.tickCount)},updateXAxisDataForLabel:function(t){var e,i,n,o=this.axisDataMap.xAxis,r=o.labels,u=this.boundsModel.getDimensionMap(["series","yAxis","chart"]),h=o.isLabelAxis,l=this.theme.xAxis.label;t&&(r=r.slice(0,r.length-1)),r=s.addPrefixSuffix(r,this.options.xAxis.prefix,this.options.xAxis.suffix),e=tui.util.filter(r,function(t){return!!t}),i=tui.util.isNull(this.prevValidLabelCount)?e.length:this.prevValidLabelCount,this.options.yAxis.isCenter&&(i+=1,u.yAxis.width=0),n=o.options.rotateLabel===!1?a.makeAdditionalDataForMultilineLabels(r,i,l,h,u):a.makeAdditionalDataForRotatedLabels(e,i,l,h,u),this.prevValidLabelCount=i,tui.util.extend(o,n)},_findLimit:function(t,e,i){var n;return n=0===e?i?t.yAxis:t.xAxis:t.rightYAxis?t.rightYAxis:t.yAxis},makeLimitMap:function(t,e){var i=this,n=this.scaleDataMap,o={};return n.xAxis&&(o.xAxis=n.xAxis.limit),n.yAxis&&(o.yAxis=n.yAxis.limit),n.rightYAxis&&(o.rightYAxis=n.rightYAxis.limit),n.legend&&(o.legend=n.legend.limit),tui.util.forEachArray(t,function(t,n){o[t]=i._findLimit(o,n,e)}),o}});t.exports=u},function(t,e,i){"use strict";var n=i(2),o=i(5),a=i(23),r=i(6),s=i(99),u=Math.abs,h={_makeLimitForDivergingOption:function(t){var e=Math.max(u(t.min),u(t.max));return{min:-e,max:e}},_adjustLimitForBubbleChart:function(t,e,i){var n=t.min,o=t.max;return i.minItem&&(n-=e),i.maxItem&&(o+=e),{min:n,max:o}},millisecondMap:{year:31536e6,month:26784e5,week:6048e5,date:864e5,hour:36e5,minute:6e4,second:1e3},millisecondTypes:["year","month","week","date","hour","minute","second"],_findDateType:function(t,e){var i,o=t.max-t.min,a=this.millisecondTypes,r=this.millisecondMap,s=a.length-1;return o?tui.util.forEachArray(a,function(t,n){var u,h=r[t],l=Math.floor(o/h);return l&&(u=n0?i.min=0:i.max=0):0===i.min&&0===i.max?i.max=10:i.min===i.max&&(i.min-=i.min/10,i.max+=i.max/10),i},_calculateDatetimeScale:function(t,e,i){var n,o,a;return n=this._makeDatetimeInfo(this._getLimitSafely(t),t.length),a=n.dataLimit,i&&(a=this._makeLimitForDivergingOption(a)),o=s({min:a.min,max:a.max,offsetSize:e,minimumStepSize:1}),o=this._restoreScaleToDatetimeType(o,n.minDate,n.divisionNumber)},_calculatePercentStackedScale:function(t,e){var i;return i=0===a.sumMinusValues(t)?n.PERCENT_STACKED_AXIS_SCALE:0===a.sumPlusValues(t)?n.MINUS_PERCENT_STACKED_AXIS_SCALE:e?n.DIVERGING_PERCENT_STACKED_AXIS_SCALE:n.DUAL_PERCENT_STACKED_AXIS_SCALE},_calculateCoordinateScale:function(t,e,i,n,o){var a,r=this._getLimitSafely(t),u=o.limitOption,h=o.stepCount,l=r.min,c=r.max;return u&&(u.min||u.max)&&(h=null,l=tui.util.isExisty(u.min)?u.min:l,c=tui.util.isExisty(u.max)?u.max:c),a=s({min:l,max:c,stepCount:h,offsetSize:e}),i?a.limit=this._adjustLimitForBubbleChart(a.limit,a.step,i):n&&(a.limit=this._makeLimitForDivergingOption(a.limit)),a},makeScaleData:function(t,e,i,n){var a,r=o.isDivergingChart(i,n.diverging),s=n.overflowItem;return o.isPercentStackChart(i,n.stackType)?a=this._calculatePercentStackedScale(t,r):o.isDatetimeType(n.type)?a=this._calculateDatetimeScale(t,e,r):(o.isRadialChart(i)&&(n.stepCount=Math.floor(e/100)),a=this._calculateCoordinateScale(t,e,s,r,n)),a}};t.exports=h},function(t,e){"use strict";function i(t){var e=0===t?1:Math.log(Math.abs(t))/Math.LN10;return Math.pow(10,Math.floor(e))}function n(t){var e,i,n,o;for(n=0,o=l.length;n1?1:1/o,r=n*a;return e=Math.ceil(e*a/r)*r/a,t=t>n?Math.floor(t*a/r)*r/a:t<0?-(Math.ceil(Math.abs(t)*a/r)*r)/a:0,{min:t,max:e}}function r(t,e){var n=1/Math.min(i(t),i(e));return t*n/(e*n)}function s(t){var e=o(t.step),i=a(t.limit.min,t.limit.max,e),n=Math.abs(i.max-i.min),s=r(n,e);return{limit:{min:i.min,max:i.max},step:e,stepCount:s}}function u(t,e,i,n,o){var a,r,s=Math.abs(e-t),u=s/i;return n||(n=Math.ceil(i/c)),a=i/n,r=u*a,tui.util.isNumber(o)&&ri.labelInterval&&(n=this._makeLabelsByIntervalOption(t.labels,i.labelInterval,t.addedDataCount)),o.isDatetimeType(i.type)&&(n=r.formatDates(n,i.dateFormat)),t.aligned||(e+=1),{labels:n,tickCount:e,validTickCount:0,isLabelAxis:!0,options:i,isVertical:!!t.isVertical,isPositionRight:!!t.isPositionRight,aligned:!!t.aligned}},makeValueAxisData:function(t){var e=t.labels,i=t.tickCount,n=t.limit,o={labels:e,tickCount:i,validTickCount:i,limit:n,dataMin:n.min,distance:n.max-n.min,step:t.step,options:t.options,isVertical:!!t.isVertical,isPositionRight:!!t.isPositionRight,aligned:!!t.aligned};return o},makeAdditionalDataForCoordinateLineType:function(t,e,i,n,o){var a,r=1,u=0,h=s.min(e),l=s.max(e);return a=l-h,a&&(i.minl&&(i.max-=n,r-=(l-i.max)/a,o-=1,t.pop())),{labels:t,tickCount:o,validTickCount:o,limit:i,dataMin:h,distance:a,positionRatio:u,sizeRatio:r}},_makeAdjustingIntervalInfo:function(t,e,i){var n,o=parseInt(e/i,10),a=parseInt(t/o,10),r=null;return a>1&&(n=t-a*o,n>=a&&(o+=parseInt(n/a,0),n%=a),r={blockCount:o,beforeRemainBlockCount:n,interval:a}),r},_makeCandidatesForAdjustingInterval:function(t,e){var i=this,n=tui.util.range(90,121,5),o=tui.util.map(n,function(n){return i._makeAdjustingIntervalInfo(t,e,n)});return tui.util.filter(o,function(t){return!!t})},_calculateAdjustingIntervalInfo:function(t,e){var i=this._makeCandidatesForAdjustingInterval(t,e),n=null;return i.length&&(n=s.min(i,function(t){return t.blockCount})),n},_makeFilteredLabelsByInterval:function(t,e,i){return tui.util.filter(t.slice(e),function(t,e){return e%i===0})},updateLabelAxisDataForAutoTickInterval:function(t,e,i,n){var o,a,r,s,u,h;n&&(t.tickCount-=1,t.labels.pop()),o=t.tickCount-1,a=this._calculateAdjustingIntervalInfo(o,e),a&&(r=a.blockCount,s=a.interval,u=a.beforeRemainBlockCount,t.eventTickCount=t.tickCount,h=Math.round(u/2)-i%s,h<0&&(h+=s),t.labels=this._makeFilteredLabelsByInterval(t.labels,h,s),tui.util.extend(t,{startIndex:h,tickCount:r+1,positionRatio:h/o,sizeRatio:1-u/o,interval:s}))},updateLabelAxisDataForStackingDynamicData:function(t,e,i){var n,o=e.interval,a=e.startIndex,r=t.tickCount-1,s=r/o,u=i?i-1:0;u&&2*u<=s&&(o*=2),t.labels=this._makeFilteredLabelsByInterval(t.labels,a,o),s=t.labels.length-1,n=r-o*s,tui.util.extend(t,{startIndex:a,eventTickCount:t.tickCount,tickCount:t.labels.length,positionRatio:a/r,sizeRatio:1-n/r,interval:o})},_calculateXAxisLabelAreaWidth:function(t,e,i){return t||(i-=1),e/i},_createMultilineLabel:function(t,e,i){var n=String(t).split(/\s+/),o=n[0],a=[];return tui.util.forEachArray(n.slice(1),function(t){var n=r.getRenderedLabelWidth(o+" "+t,i);n>e?(a.push(o),o=t):o+=" "+t}),o&&a.push(o),a.join("
")},_createMultilineLabels:function(t,e,i){var n=this._createMultilineLabel;return tui.util.map(t,function(t){return n(t,i,e)})},_calculateMultilineHeight:function(t,e,i){return r.getRenderedLabelsMaxHeight(t,tui.util.extend({cssText:"line-height:1.2;width:"+i+"px"},e))},makeAdditionalDataForMultilineLabels:function(t,e,i,n,o){var a=o.series.width,s=this._calculateXAxisLabelAreaWidth(n,a,e),u=this._createMultilineLabels(t,i,a),h=this._calculateMultilineHeight(u,i,s),l=r.getRenderedLabelsMaxHeight(t,i);return{multilineLabels:u,overflowHeight:h-l,overflowLeft:s/2-o.yAxis.width}},_findRotationDegree:function(t,e,i){var o=null;return tui.util.forEachArray(n.DEGREE_CANDIDATES,function(r){var s=a.calculateRotatedWidth(r,e,i);return o=r,!(s<=t+n.XAXIS_LABEL_COMPARE_MARGIN)}),o},_calculateRotatedWidth:function(t,e,i,o){var s=r.getRenderedLabelWidth(e,o),u=a.calculateRotatedWidth(t,s,i);return u-=a.calculateAdjacent(n.ANGLE_90-t,i/2)},_calculateLimitWidth:function(t,e,i){var n=t;return e&&(n+=i/2),n},makeAdditionalDataForRotatedLabels:function(t,e,i,o,s){var u,h,l,c,d,p=r.getRenderedLabelsMaxWidth(t,i),f=s.series.width,m=this._calculateXAxisLabelAreaWidth(o,f,e),g=null,_=n.CHART_PADDING+s.yAxis.width+f;return m1,i.tooltip=i.tooltip||{},i.tooltip.grouped=!0,n.call(this,{rawData:t,theme:e,options:i,hasAxes:!0,isVertical:!0})},_makeYAxisOptions:function(t,e){var i={};return e=e||{},tui.util.forEachArray(t,function(t,n){i[t]=e[n]||e}),i},onChangeCheckedLegends:function(t){var e=this.dataProcessor.getOriginalRawData(),i=o.filterCheckedRawData(e,t),n=r({rawSeriesData:i.series,yAxisOptions:this.options.yAxis});this.chartTypes=n.chartTypes,this.seriesTypes=n.seriesTypes,this.rerender(t,i,n)},addComponents:function(){this.componentManager.register("title","title"),this.componentManager.register("plot","plot"),this.componentManager.register("legend","legend"),this.componentManager.register("columnSeries","columnSeries"),this.componentManager.register("lineSeries","lineSeries"),this.componentManager.register("yAxis","axis"),this.hasRightYAxis&&this.componentManager.register("rightYAxis","axis"),this.componentManager.register("xAxis","axis"),this.componentManager.register("chartExportMenu","chartExportMenu"),this.componentManager.register("tooltip","tooltip"),this.componentManager.register("mouseEventDetector","mouseEventDetector")},getScaleOption:function(){var t={yAxis:this._makeYAxisScaleOption("yAxis",this.chartTypes[0],!this.hasRightYAxis)};return this.hasRightYAxis&&(t.rightYAxis=this._makeYAxisScaleOption("rightYAxis",this.chartTypes[1])),t},_makeYAxisScaleOption:function(t,e,i){var n=this.yAxisOptions[e],o={isSingleYAxis:!!i};return i&&this.options.series&&this._setAdditionalOptions(o),{options:n,areaType:"yAxis",chartType:e,additionalOptions:o}},_setAdditionalOptions:function(t){var e=this.dataProcessor;tui.util.forEach(this.options.series,function(i,n){var o;i.stackType&&(o=e.findChartType(n),a.isAllowedStackOption(o)&&(t.chartType=o,t.stackType=i.stackType))})},addDataRatios:function(t){var e,i=this,n=this.chartTypes||[this.chartType],o=this.options.series||{};e=function(e){var n=(o[e]||o).stackType;i.dataProcessor.addDataRatios(t[e],n,e)},tui.util.forEachArray(n,e)}});t.exports=s},function(t,e){"use strict";function i(t){var e=t.rawSeriesData,i=t.yAxisOptions,o=n(e,i);return{chartTypes:o.chartTypes,seriesTypes:o.seriesTypes}}function n(t,e){var i,n=tui.util.keys(t).sort(),a=o(n,e),r=a.length?a:n,s=tui.util.filter(a,function(e){return t[e].length});return i=1===s.length?{chartTypes:s,seriesTypes:s}:{chartTypes:r,seriesTypes:n}}function o(t,e){var i,n=t.slice(),o=[].concat(e||[]),a=!1;return!o.length||1===o.length&&!o[0].chartType?n=[]:o.length&&(i=tui.util.map(o,function(t){return t.chartType}),tui.util.forEachArray(i,function(t,e){a=a||t&&n[e]!==t||!1}),a&&n.reverse()),n}t.exports=i},function(t,e,i){"use strict";var n=i(20),o=tui.util.defineClass(n,{init:function(t,e,i){this.chartTypes=["line","scatter"],this.seriesTypes=["line","scatter"],n.call(this,{rawData:t,theme:e,options:i,hasAxes:!0,isVertical:!0})},getScaleOption:function(){return{yAxis:{valueType:"y"},xAxis:{valueType:"x"}}},addDataRatios:function(t){var e,i=this,n=this.chartTypes||[this.chartType];e=function(e){i.dataProcessor.addDataRatiosForCoordinateType(e,t,!1)},tui.util.forEachArray(n,e)},addComponents:function(){this.componentManager.register("title","title"),this.componentManager.register("plot","plot"),this.componentManager.register("legend","legend"),this.componentManager.register("lineSeries","lineSeries"),this.componentManager.register("scatterSeries","scatterSeries"),this.componentManager.register("yAxis","axis"),this.componentManager.register("xAxis","axis"),this.componentManager.register("chartExportMenu","chartExportMenu"),this.componentManager.register("tooltip","tooltip"),this.componentManager.register("mouseEventDetector","mouseEventDetector")}});t.exports=o},function(t,e,i){"use strict";var n=i(20),o=i(4),a=i(5),r=i(107),s=i(104),u=tui.util.defineClass(n,{className:"tui-combo-chart",init:function(t,e,i){var o=r({rawSeriesData:t.series,yAxisOptions:i.yAxis});this.chartTypes=o.chartTypes,this.seriesTypes=o.seriesTypes,this.yAxisOptions=this._makeYAxisOptions(this.chartTypes,i.yAxis),this.hasRightYAxis=tui.util.isArray(i.yAxis)&&i.yAxis.length>1,i.tooltip=i.tooltip||{},i.tooltip.grouped=!0,n.call(this,{rawData:t,theme:e,options:i,hasAxes:!0,isVertical:!0}),this._dynamicDataHelper=new s(this)},onChangeCheckedLegends:function(t){var e=this.dataProcessor.getZoomedRawData(),i=o.filterCheckedRawData(e,t),n=r({rawSeriesData:i.series,yAxisOptions:this.options.yAxis});this._dynamicDataHelper.reset(),this._dynamicDataHelper.changeCheckedLegends(t,i,n)},addComponents:function(){this.componentManager.register("title","title"),this.componentManager.register("plot","plot"),this.componentManager.register("legend","legend"),this.componentManager.register("areaSeries","areaSeries"),this.componentManager.register("lineSeries","lineSeries"),this.componentManager.register("xAxis","axis"),this.componentManager.register("yAxis","axis"),this.hasRightYAxis&&this.componentManager.register("rightYAxis","axis"),this.componentManager.register("chartExportMenu","chartExportMenu"),this.componentManager.register("tooltip","tooltip"),this.componentManager.register("mouseEventDetector","mouseEventDetector")},getScaleOption:function(){var t={yAxis:this._makeYAxisScaleOption("yAxis",this.chartTypes[0],!this.hasRightYAxis)};return this.hasRightYAxis&&(t.rightYAxis=this._makeYAxisScaleOption("rightYAxis",this.chartTypes[1])),t},_makeYAxisScaleOption:function(t,e,i){var n=this.yAxisOptions[e],o={isSingleYAxis:!!i};return i&&this.options.series&&this._setAdditionalOptions(o),{options:n,areaType:"yAxis",chartType:e,additionalOptions:o}},_makeYAxisOptions:function(t,e){var i={};return e=e||{},tui.util.forEachArray(t,function(t,n){i[t]=e[n]||e}),i},addData:function(t,e){this._dynamicDataHelper.addData(t,e)},_setAdditionalOptions:function(t){var e=this.dataProcessor;tui.util.forEach(this.options.series,function(i,n){var o;i.stackType&&(o=e.findChartType(n),a.isAllowedStackOption(o)&&(t.chartType=o,t.stackType=i.stackType))})},addDataRatios:function(t){var e,i=this,n=this.chartTypes||[this.chartType],o=this.options.series||{};e=this.dataProcessor.isCoordinateType()?function(e){i.dataProcessor.addDataRatiosForCoordinateType(e,t,!1)}:function(e){var n=(o[e]||o).stackType;i.dataProcessor.addDataRatios(t[e],n,e)},tui.util.forEachArray(n,e)},_renderForZoom:function(t){var e=this.readyForRender();this.componentManager.render("zoom",e,{isResetZoom:t})},onZoom:function(t){this._dynamicDataHelper.pauseAnimation(),this.dataProcessor.updateRawDataForZoom(t),this._renderForZoom(!1)},onResetZoom:function(){var t=this.dataProcessor.getOriginalRawData();this._dynamicDataHelper.checkedLegends&&(t=o.filterCheckedRawData(t,this._dynamicDataHelper.checkedLegends)),this.dataProcessor.initData(t),this.dataProcessor.initZoomedRawData(),this.dataProcessor.addDataFromRemainDynamicData(tui.util.pick(this.options.series,"shifting")),this._renderForZoom(!0),this._dynamicDataHelper.restartAnimation()}});t.exports=u},function(t,e,i){"use strict";var n=i(20),o=i(4),a=tui.util.defineClass(n,{className:"tui-combo-chart",init:function(t,e,i){this.seriesTypes=tui.util.keys(t.series).sort(),this.chartTypes=["pie","pie"],n.call(this,{rawData:t,theme:e,options:i,isVertical:!0})},addComponents:function(){this.componentManager.register("title","title"),this.componentManager.register("legend","legend"),this.componentManager.register("pie1Series","pieSeries"),this.componentManager.register("pie2Series","pieSeries"), -this.componentManager.register("chartExportMenu","chartExportMenu"),this.componentManager.register("tooltip","tooltip"),this.componentManager.register("mouseEventDetector","mouseEventDetector")},addDataRatios:function(){var t=this,e=this.seriesTypes||[this.chartType];tui.util.forEachArray(e,function(e){t.dataProcessor.addDataRatiosOfPieChart(e)})},onChangeCheckedLegends:function(t){var e=this.dataProcessor.getOriginalRawData(),i=o.filterCheckedRawData(e,t);n.prototype.onChangeCheckedLegends.call(this,t,i,{seriesTypes:this.seriesTypes})}});t.exports=a},function(t,e,i){"use strict";var n=i(20),o=i(2),a=tui.util.defineClass(n,{className:"tui-pie-chart",init:function(t,e,i){i.tooltip=i.tooltip||{},i.tooltip.align||(i.tooltip.align=o.TOOLTIP_DEFAULT_ALIGN_OPTION),n.call(this,{rawData:t,theme:e,options:i})},addComponents:function(){this.componentManager.register("title","title"),this.componentManager.register("legend","legend"),this.componentManager.register("pieSeries","pieSeries"),this.componentManager.register("chartExportMenu","chartExportMenu"),this.componentManager.register("tooltip","tooltip"),this.componentManager.register("mouseEventDetector","mouseEventDetector")},addDataRatios:function(){this.dataProcessor.addDataRatiosOfPieChart(this.chartType)}});t.exports=a},function(t,e,i){"use strict";var n=i(20),o=i(2),a=tui.util.defineClass(n,{className:"tui-bubble-chart",init:function(t,e,i){i.tooltip=i.tooltip||{},i.circleLegend=i.circleLegend||{},i.tooltip.align||(i.tooltip.align=o.TOOLTIP_DEFAULT_ALIGN_OPTION),tui.util.isUndefined(i.circleLegend.visible)&&(i.circleLegend.visible=!0),n.call(this,{rawData:t,theme:e,options:i,hasAxes:!0})},getScaleOption:function(){var t={};return this.dataProcessor.hasXValue(this.chartType)&&(t.xAxis={valueType:"x"}),this.dataProcessor.hasYValue(this.chartType)&&(t.yAxis={valueType:"y"}),t},_setDefaultOptions:function(t){n.prototype._setDefaultOptions.call(this,t),this.options.circleLegend=this.options.circleLegend||{},tui.util.isUndefined(this.options.circleLegend.visible)&&(this.options.circleLegend.visible=!0)},addComponents:function(){this.componentManager.register("title","title"),this.componentManager.register("plot","plot"),this.componentManager.register("legend","legend"),this.componentManager.register("circleLegend","circleLegend"),this.componentManager.register("bubbleSeries","bubbleSeries"),this.componentManager.register("yAxis","axis"),this.componentManager.register("xAxis","axis"),this.componentManager.register("chartExportMenu","chartExportMenu"),this.componentManager.register("tooltip","tooltip"),this.componentManager.register("mouseEventDetector","mouseEventDetector")},addDataRatios:function(t){this.dataProcessor.addDataRatiosForCoordinateType(this.chartType,t,!0)}});t.exports=a},function(t,e,i){"use strict";var n=i(20),o=i(2),a=tui.util.defineClass(n,{className:"tui-scatter-chart",init:function(t,e,i){i.tooltip=i.tooltip||{},i.tooltip.align||(i.tooltip.align=o.TOOLTIP_DEFAULT_ALIGN_OPTION),n.call(this,{rawData:t,theme:e,options:i,hasAxes:!0})},getScaleOption:function(){return{xAxis:{valueType:"x"},yAxis:{valueType:"y"}}},addComponents:function(){this.componentManager.register("title","title"),this.componentManager.register("plot","plot"),this.componentManager.register("legend","legend"),this.componentManager.register("scatterSeries","scatterSeries"),this.componentManager.register("yAxis","axis"),this.componentManager.register("xAxis","axis"),this.componentManager.register("chartExportMenu","chartExportMenu"),this.componentManager.register("tooltip","tooltip"),this.componentManager.register("mouseEventDetector","mouseEventDetector")},addDataRatios:function(t){this.dataProcessor.addDataRatiosForCoordinateType(this.chartType,t,!1)}});t.exports=a},function(t,e,i){"use strict";var n=i(20),o=i(115),a=i(2),r=tui.util.defineClass(n,{className:"tui-heatmap-chart",init:function(t,e,i){i.tooltip=i.tooltip||{},i.tooltip.align||(i.tooltip.align=a.TOOLTIP_DEFAULT_ALIGN_OPTION),i.tooltip.grouped=!1,n.call(this,{rawData:t,theme:e,options:i,hasAxes:!0,isVertical:!0})},_addComponents:function(){var t=this.theme.series[this.chartType],e=new o(t.startColor,t.endColor);this._addComponentsForAxisType({axis:[{name:"yAxis",isVertical:!0},{name:"xAxis"}],legend:{classType:"spectrumLegend",additionalParams:{colorSpectrum:e}},series:[{name:"heatmapSeries",data:{colorSpectrum:e}}],tooltip:!0,mouseEventDetector:!0})},getScaleOption:function(){return{legend:!0}},addDataRatios:function(t){this.dataProcessor.addDataRatios(t.legend,null,this.chartType)},addComponents:function(){var t=this.theme.series[this.chartType],e=new o(t.startColor,t.endColor);this.componentManager.register("title","title"),this.componentManager.register("legend","spectrumLegend",{colorSpectrum:e}),this.componentManager.register("heatmapSeries","heatmapSeries",{colorSpectrum:e}),this.componentManager.register("xAxis","axis"),this.componentManager.register("yAxis","axis"),this.componentManager.register("chartExportMenu","chartExportMenu"),this.componentManager.register("tooltip","tooltip"),this.componentManager.register("mouseEventDetector","mouseEventDetector")}});t.exports=r},function(t,e,i){"use strict";var n=i(116),o=tui.util.defineClass({init:function(t,e){var i;this.start=n.colorNameToHex(t),this.startRGB=n.hexToRGB(this.start),this.end=n.colorNameToHex(e),i=n.hexToRGB(this.end),this.distances=this._makeDistances(this.startRGB,i),this.colorMap={}},_makeDistances:function(t,e){return tui.util.map(t,function(t,i){return e[i]-t})},getColor:function(t){var e,i,o=this.colorMap[t];return o||(e=this.distances,i=tui.util.map(this.startRGB,function(i,n){return i+parseInt(e[n]*t,10)}),o=n.rgbToHEX.apply(null,i)),o||null}});t.exports=o},function(t,e){"use strict";var i=/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i,n={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",honeydew:"#f0fff0",hotpink:"#ff69b4","indianred ":"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgrey:"#d3d3d3",lightgreen:"#90ee90",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370d8",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#d87093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},o={leadingZero:function(t,e){var i="",n=0;if(String(t).length>e)return String(t);for(;n=0||i.isRange)&&(o=tui.util.extend({},t.leftTop),o.left-="column"===e||r<0?1:0,a=n.makeLinePath(o,t.rightTop).join(" ")),a},_makeRightLinePath:function(t,e,i){var o=null;return("column"===e||i.value>=0||i.isRange)&&(o=n.makeLinePath(t.rightTop,t.rightBottom).join(" ")),o},_makeBottomLinePath:function(t,e,i){var o=null;return("bar"===e||i.value<0||i.isRange)&&(o=n.makeLinePath(t.leftBottom,t.rightBottom).join(" ")),o},_makeLeftLinePath:function(t,e,i){var o=null;return("column"===e||i.value<0||i.isRange)&&(o=n.makeLinePath(t.leftTop,t.leftBottom).join(" ")),o},_makeBorderLinesPaths:function(t,e,i){var n=this._makeRectPoints(t),o={top:this._makeTopLinePath(n,e,i),right:this._makeRightLinePath(n,e,i),bottom:this._makeBottomLinePath(n,e,i),left:this._makeLeftLinePath(n,e,i)};return tui.util.filter(o,function(t){return t})},_renderBorderLines:function(t,e,i,o){var a=this,r=this._makeBorderLinesPaths(t,i,o),s={};return tui.util.forEach(r,function(t,i){s[i]=n.renderLine(a.paper,t,e,1)}),s},_renderBarBorders:function(t){var e,i=this,n=this.theme.borderColor;return n?e=tui.util.map(t,function(t,e){return tui.util.map(t,function(t,o){var a;return t?(a=i.seriesDataModel.getSeriesItem(e,o),i._renderBorderLines(t.start,n,i.chartType,a)):null})}):null},_animateRect:function(t,e){t.animate({x:e.left,y:e.top,width:e.width,height:e.height},a,">")},_animateBorders:function(t,e,i,n){var o=this._makeBorderLinesPaths(e,i,n);tui.util.forEach(t,function(t,e){t.animate({path:o[e]},a,">")})},animate:function(t){var e=this,i=this.groupBorders||[];n.forEach2dArray(this.groupBars,function(t,n,o){var a=i[n]&&i[n][o];t&&(e._animateRect(t.rect,t.bound),a&&e._animateBorders(a,t.bound,e.chartType,t.item))}),t&&(this.callbackTimeout=setTimeout(function(){t(),delete e.callbackTimeout},a))},showAnimation:function(t){var e=this.groupBars[t.groupIndex][t.index],i=e.bound;this.overlay.attr({width:i.width,height:i.height,x:i.left,y:i.top,"fill-opacity":.3})},hideAnimation:function(){this.overlay.attr({width:1,height:1,x:0,y:0,"fill-opacity":0})},_updateRectBound:function(t,e){t.attr({x:e.left,y:e.top,width:e.width,height:e.height})},resize:function(t){var e=this,i=this.groupBorders||[],o=t.dimension,a=t.groupBounds;this.groupBounds=a,this.paper.setSize(o.width,o.height),n.forEach2dArray(this.groupBars,function(t,o,r){var s,u;t&&(s=i[o]&&i[o][r],u=a[o][r].end,t.bound=u,n.updateRectBound(t.rect,u),s&&e._updateBordersPath(s,u,e.chartType,t.item))})},_changeBordersColor:function(t,e){tui.util.forEach(t,function(t){t.attr({stroke:e})})},_changeBarColor:function(t,e,i){var n,o=this.groupBars[t.groupIndex][t.index];o.rect.attr({fill:e}),i&&(n=this.groupBorders[t.groupIndex][t.index],this._changeBordersColor(n,i))},selectSeries:function(t){var e,i=this.groupBars[t.groupIndex][t.index],a=o.color(i.color),r=this.theme.selectionColor,s=r||n.makeChangedLuminanceColor(a.hex,u),h=this.theme.borderColor;h&&(e=o.color(h),h=n.makeChangedLuminanceColor(e.hex,u)),this._changeBarColor(t,s,h)},unselectSeries:function(t){var e=this.groupBars[t.groupIndex][t.index],i=this.theme.borderColor;this._changeBarColor(t,e.color,i)},selectLegend:function(t){var e=this.groupBorders||[],i=tui.util.isNull(t);n.forEach2dArray(this.groupBars,function(n,o,a){var u,h;n&&(u=e[o]&&e[o][a],h=i||t===a?r:s,n.rect.attr({"fill-opacity":h}),u&&tui.util.forEach(u,function(t){t.attr({"stroke-opacity":h})}))})},renderSeriesLabel:function(t,e,i,o,a){var r={"font-size":o.fontSize,"font-family":o.fontFamily,"font-weight":o.fontWeight,fill:o.color,opacity:0,"text-anchor":a?"middle":"start"},s=t.set();return tui.util.forEach(i,function(i,o){tui.util.forEach(i,function(i,a){var u,h=e[o][a],l=n.renderText(t,h.end,i.end,r);l.node.style.userSelect="none",l.node.style.cursor="default",l.node.setAttribute("filter","url(#glow)"),s.push(l),h.start&&(u=n.renderText(t,h.start,i.start,r),u.node.style.userSelect="none",u.node.style.cursor="default",u.node.setAttribute("filter","url(#glow)"),s.push(u))})}),s}});t.exports=h},function(t,e,i){"use strict";var n=i(61),o=window.Raphael,a=700,r=1,s=.3,u=.2,h=1,l=2,c=2,d=1,p=tui.util.defineClass({render:function(t,e){var i=e.groupBounds;return i?(this.paper=t,this.theme=e.theme,this.options=e.options,this.seriesDataModel=e.seriesDataModel,this.chartType=e.chartType,this.paper.setStart(),this.groupWhiskers=[],this.groupMedians=[],this.groupBoxes=this._renderBoxplots(i),this.groupBorders=this._renderBoxBorders(i),this.rectOverlay=this._renderRectOverlay(),this.circleOverlay=this._renderCircleOverlay(),this.groupBounds=i,this.paper.setFinish()):null},_renderRectOverlay:function(){var t={width:1,height:1,left:0,top:0},e={"fill-opacity":0};return n.renderRect(this.paper,t,tui.util.extend({"stroke-width":0},e))},_renderCircleOverlay:function(){var t={left:0,top:0},e={"fill-opacity":0};return n.renderCircle(this.paper,t,0,tui.util.extend({"stroke-width":0},e))},_renderBox:function(t,e,i){var o;return t.width<0||t.height<0?null:o=n.renderRect(this.paper,t,tui.util.extend({fill:"#fff",stroke:e,"stroke-width":h},i))},_renderBoxes:function(t){var e=this,i=this.theme.colors,n=this.options.colorByPoint;return tui.util.map(t,function(t,o){return tui.util.map(t,function(t,a){var r,s,u;return t?(u=e.seriesDataModel.getSeriesItem(o,a),r=n?i[o]:i[a],t.start&&(s=e._renderBox(t.start,r)),{rect:s,color:r,bound:t.end,item:u,groupIndex:o,index:a}):null})})},_renderBoxplots:function(t){var e=this._renderBoxes(t);return this.groupWhiskers=this._renderWhiskers(t),this.groupMedians=this._renderMedianLines(t),this.groupOutliers=this._renderOutliers(t),e},_renderWhisker:function(t,e,i){var o=this.paper,a=e.top-t.top,r=a>0?1:-1,s=t.width,u=t.left,h=s/4,c="M"+(u+h)+","+t.top+"H"+(u+3*h),p="M"+(u+2*h)+","+t.top+"V"+(t.top+Math.abs(a)*r),f=n.renderLine(o,c,i,l),m=n.renderLine(o,p,i,d),g=[];return f.attr({opacity:0}),m.attr({opacity:0}),g.push(f),g.push(m),g},_renderWhiskers:function(t){var e=this,i=this.theme.colors,n=this.options.colorByPoint,o=[];return tui.util.forEach(t,function(t,a){var r=[];tui.util.forEach(t,function(t,o){var s=n?i[a]:i[o];t&&(r=r.concat(e._renderWhisker(t.min,t.start,s)),r=r.concat(e._renderWhisker(t.max,t.end,s)))}),o.push(r)}),o},_renderMedianLine:function(t,e){var i=t.width,o="M"+t.left+","+t.top+"H"+(t.left+i),a=n.renderLine(this.paper,o,e,c);return a.attr({opacity:0}),a},_renderMedianLines:function(t){var e=this,i=this.theme.colors,n=this.options.colorByPoint,o=[];return tui.util.forEach(t,function(t,a){var r=[];tui.util.forEach(t,function(t,o){var s=n?i[a]:i[o];t&&r.push(e._renderMedianLine(t.median,s))}),o.push(r)}),o},_renderOutlier:function(t,e){var i=n.renderCircle(this.paper,{left:t.left,top:t.top},3,{stroke:e});return i.attr({opacity:0}),i},_renderOutliers:function(t){var e=this,i=this.theme.colors,n=this.options.colorByPoint,o=[];return tui.util.forEach(t,function(t,a){var r=[];tui.util.forEach(t,function(t,o){var s=n?i[a]:i[o],u=[];t&&(t.outliers.length&&tui.util.forEach(t.outliers,function(t){u.push(e._renderOutlier(t,s))}),r.push(u))}),o.push(r)}),o},_makeRectPoints:function(t){return{leftTop:{left:Math.ceil(t.left),top:Math.ceil(t.top)},rightTop:{left:Math.ceil(t.left+t.width),top:Math.ceil(t.top)},rightBottom:{left:Math.ceil(t.left+t.width),top:Math.ceil(t.top+t.height)},leftBottom:{left:Math.ceil(t.left),top:Math.ceil(t.top+t.height)}}},_renderBorderLines:function(t,e,i,o){var a=this,r=this._makeBorderLinesPaths(t,i,o),s={};return tui.util.forEach(r,function(t,i){s[i]=n.renderLine(a.paper,t,e,1)}),s},_renderBoxBorders:function(t){var e,i=this,n=this.theme.borderColor;return n?e=tui.util.map(t,function(t,e){return tui.util.map(t,function(t,o){var a;return t?(a=i.seriesDataModel.getSeriesItem(e,o),i._renderBorderLines(t.start,n,i.chartType,a)):null})}):null},_animateRect:function(t,e){t.animate({x:e.left,y:e.top,width:e.width,height:e.height},a,">")},animate:function(t){var e=this,i=o.animation({opacity:1},a);n.forEach2dArray(this.groupBoxes,function(t){t&&e._animateRect(t.rect,t.bound)}),n.forEach2dArray(e.groupWhiskers,function(t){t.animate(i.delay(a))}),n.forEach2dArray(e.groupMedians,function(t){t.animate(i.delay(a))}),n.forEach2dArray(e.groupOutliers,function(t){tui.util.forEach(t,function(t){t.animate(i.delay(a))})}),t&&(this.callbackTimeout=setTimeout(function(){t(),delete e.callbackTimeout},a))},showAnimation:function(t){tui.util.isNumber(t.outlierIndex)?this.showOutlierAnimation(t):this.showRectAnimation(t)},showRectAnimation:function(t){var e=this.groupBoxes[t.groupIndex][t.index],i=e.bound;this.rectOverlay.attr({width:i.width,height:i.height,x:i.left,y:i.top,fill:e.color,"fill-opacity":.3})},showOutlierAnimation:function(t){var e=this.groupOutliers[t.groupIndex][t.index][t.outlierIndex].attr();this.circleOverlay.attr({r:e.r,cx:e.cx,cy:e.cy,fill:e.stroke,"fill-opacity":.3,stroke:e.stroke,"stroke-width":2})},hideAnimation:function(){this.circleOverlay.attr({width:1,height:1,x:0,y:0,"fill-opacity":0,"stroke-width":0}),this.rectOverlay.attr({width:1,height:1,x:0,y:0,"fill-opacity":0})},_updateRectBound:function(t,e){t.attr({x:e.left,y:e.top,width:e.width,height:e.height})},resize:function(t){var e=t.dimension,i=t.groupBounds;this.groupBounds=i,this.paper.setSize(e.width,e.height),n.forEach2dArray(this.groupBoxes,function(t,e,o){var a;t&&(a=i[e][o].end,t.bound=a,n.updateRectBound(t.rect,a))})},_changeBordersColor:function(t,e){tui.util.forEach(t,function(t){t.attr({stroke:e})})},_changeBoxColor:function(t,e,i){var n,o=this.groupBoxes[t.groupIndex][t.index];o.rect.attr({stroke:e}),i&&(n=this.groupBorders[t.groupIndex][t.index],this._changeBordersColor(n,i))},selectSeries:function(t){var e,i=this.groupBoxes[t.groupIndex][t.index],a=o.color(i.color),r=this.theme.selectionColor,s=r||n.makeChangedLuminanceColor(a.hex,u),h=this.theme.borderColor;h&&(e=o.color(h),h=n.makeChangedLuminanceColor(e.hex,u)),this._changeBoxColor(t,s,h)},unselectSeries:function(t){var e=this.groupBoxes[t.groupIndex][t.index],i=this.theme.borderColor;this._changeBoxColor(t,e.color,i)},selectLegend:function(t){var e=tui.util.isNull(t);n.forEach2dArray(this.groupBoxes,function(i,n,o){var a;i&&(a=e||t===o?r:s,i.rect.attr({"stroke-opacity":a}))}),n.forEach2dArray(this.groupWhiskers,function(i,n,o){var a=e||t===o?r:s;i.attr({"stroke-opacity":a})}),n.forEach2dArray(this.groupMedians,function(i,n,o){var a=e||t===o?r:s;i.attr({"stroke-opacity":a})})},renderSeriesLabel:function(t,e,i,o,a){var r={"font-size":o.fontSize,"font-family":o.fontFamily,"font-weight":o.fontWeight,fill:o.color,opacity:0,"text-anchor":a?"middle":"start"},s=t.set();return tui.util.forEach(i,function(i,o){tui.util.forEach(i,function(i,a){var u,h=e[o][a],l=n.renderText(t,h.end,i.end,r); -l.node.style.userSelect="none",l.node.style.cursor="default",l.node.setAttribute("filter","url(#glow)"),s.push(l),h.start&&(u=n.renderText(t,h.start,i.start,r),u.node.style.userSelect="none",u.node.style.cursor="default",u.node.setAttribute("filter","url(#glow)"),s.push(u))})}),s}});t.exports=p},function(t,e,i){"use strict";var n=i(128),o=i(61),a=1,r=.3,s=tui.util.defineClass(n,{init:function(){this.selectedLegendIndex=null,this.chartType="line",this.lineWidth=2},render:function(t,e){var i,n=e.dimension,o=e.groupPositions,a=e.theme,r=a.colors,s=e.options,u=s.showDot?1:0,h=s.spline,l=this.lineWidth=tui.util.isNumber(s.pointWidth)?s.pointWidth:this.lineWidth,c=this.makeBorderStyle(a.borderColor,u),d=this.makeOutDotStyle(u,c);return i=h?this._getSplineLinesPath(o,s.connectNulls):this._getLinesPath(o,s.connectNulls),this.paper=t,this.theme=e.theme,this.isSpline=h,this.dimension=n,this.position=e.position,t.setStart(),this.groupLines=this._renderLines(t,i,r,l),this.tooltipLine=this._renderTooltipLine(t,n.height),this.groupDots=this._renderDots(t,o,r,u),s.allowSelect&&(this.selectionDot=this._makeSelectionDot(t),this.selectionColor=a.selectionColor),this.colors=r,this.borderStyle=c,this.outDotStyle=d,this.groupPositions=o,this.groupPaths=i,this.dotOpacity=u,delete this.pivotGroupDots,t.setFinish()},_getLinesPath:function(t,e){var i=this;return tui.util.map(t,function(t){return i._makeLinesPath(t,null,e)})},_getSplineLinesPath:function(t,e){var i=this;return tui.util.map(t,function(t){return i._makeSplineLinesPath(t,e)})},_renderLines:function(t,e,i,n){return tui.util.map(e,function(e,a){var r=i[a]||"transparent";return o.renderLine(t,e.join(" "),r,n)})},resize:function(t){var e=this,i=t.dimension,n=t.groupPositions;this.resizeClipRect(i),this.groupPositions=n,this.groupPaths=this.isSpline?this._getSplineLinesPath(n):this._getLinesPath(n),this.paper.setSize(i.width,i.height),this.tooltipLine.attr({top:i.height}),tui.util.forEachArray(this.groupPaths,function(t,i){e.groupLines[i].attr({path:t.join(" ")}),tui.util.forEachArray(e.groupDots[i],function(t,o){t.endDot&&e._moveDot(t.endDot.dot,n[i][o])})})},selectLegend:function(t){var e=this,i=tui.util.isNull(t);this.selectedLegendIndex=t,tui.util.forEachArray(this.groupLines,function(n,o){var s=i||t===o?a:r;n.attr({"stroke-opacity":s}),tui.util.forEachArray(e.groupDots[o],function(t){t.opacity=s,e.dotOpacity&&t.endDot.dot.attr({"fill-opacity":s})})})},animateForAddingData:function(t,e,i,n){var o=this,a=t.options.spline,r=a?this._getSplineLinesPath(i):this._getLinesPath(i),s=0;i.length&&(n&&(s=1),tui.util.forEachArray(this.groupLines,function(t,a){var u=o.groupDots[a],h=i[a];n&&o._removeFirstDot(u),tui.util.forEachArray(u,function(t,i){var n=h[i+s];o._animateByPosition(t.endDot.dot,n,e)}),o._animateByPath(t,r[a],e)}))},renderSeriesLabel:function(t,e,i,n){var a={"font-size":n.fontSize,"font-family":n.fontFamily,"font-weight":n.fontWeight,fill:n.color,"text-anchor":"middle",opacity:0},r=t.set();return tui.util.forEach(i,function(i,n){tui.util.forEach(i,function(i,s){var u,h=e[n][s],l=o.renderText(t,h.end,i.end,a);r.push(l),l.node.style.userSelect="none",l.node.style.cursor="default",l.node.setAttribute("filter","url(#glow)"),h.start&&(u=o.renderText(t,h.start,i.start,a),u.node.style.userSelect="none",u.node.style.cursor="default",u.node.setAttribute("filter","url(#glow)"),r.push(u))})}),r}});t.exports=s},function(t,e,i){"use strict";function n(t,e,i,n){var o=document.createElementNS("http://www.w3.org/2000/svg","clipPath"),a=t.rect(e.left-10,e.top-10,0,i.height);return a.id=n+"_rect",o.id=n,o.appendChild(a.node),t.defs.appendChild(o),a}var o=i(61),a=tui.util.browser,r=a.msie&&a.version<=8,s=700,u=3,h=7,l=.3,c=300,d="clipRectForAnimation",p=Array.prototype.concat,f=tui.util.defineClass({_makeLinesPath:function(t,e,i){var n=[],o=!1;return e=e||"top",tui.util.map(t,function(t){var a=o&&!i?"M":"L";t?(n.push([a,t.left,t[e]]),o&&(o=!1)):o=!0}),n=p.apply([],n),n.length>0&&(n[0]="M"),n},_getAnchor:function(t,e,i){var n,o,a,r,s,u=(e.left-t.left)/2,h=(i.left-e.left)/2,l=Math.atan((e.left-t.left)/Math.abs(e.top-t.top)),c=Math.atan((i.left-e.left)/Math.abs(e.top-i.top));return l=t.top0&&!e||r)&&(i.push(n),n=[])}),i},_getSplinePartialPaths:function(t){var e,i,n,o,a,r,s,u=this,h=[];return tui.util.forEach(t,function(t){s=e=t[0],n=t.length,o=e,i=t[n-1],a=t.slice(1).slice(0,n-2),r=tui.util.map(a,function(e,i){var n=t[i+2],a=u._getAnchor(o,e,n);return o=e,Math.abs(a.y1-s.top)>Math.abs(s.top-e.top)&&(a.y1=e.top),Math.abs(a.y2-n.top)>Math.abs(n.top-e.top)&&(a.y2=e.top),s=e,[a.x1,a.y1,e.left,e.top,a.x2,a.y2]}),r.push([i.left,i.top,i.left,i.top]),r.unshift(["M",e.left,e.top,"C",e.left,e.top]),h.push(r)}),h},_makeSplineLinesPath:function(t,e){var i=[],n=this._getSplinePositionsGroups(t,e),o=this._getSplinePartialPaths(n);return tui.util.forEach(o,function(t){i=i.concat(t)}),i},_renderTooltipLine:function(t,e){var i=o.makeLinePath({left:10,top:e},{left:10,top:0});return o.renderLine(t,i,"transparent",1)},makeBorderStyle:function(t,e){var i;return t&&(i={stroke:t,"stroke-width":1,"stroke-opacity":e}),i},makeOutDotStyle:function(t,e){var i={"fill-opacity":t,"stroke-opacity":0,r:u};return e&&tui.util.extend(i,e),i},renderDot:function(t,e,i,n){var o,a,r,s=this.theme&&this.theme.dot||{dot:{}};return e&&(o=t.circle(e.left,e.top,s.radius||u),a={fill:s.fillColor||i,"fill-opacity":tui.util.isNumber(n)?n:s.fillOpacity,stroke:s.strokeColor||i,"stroke-opacity":tui.util.isNumber(n)?n:s.strokeOpacity,"stroke-width":s.strokeWidth},o.attr(a),r={dot:o,color:i}),r},_moveDotsToFront:function(t){o.forEach2dArray(t,function(t){t.endDot.dot.toFront(),t.startDot&&t.startDot.dot.toFront()})},_renderDots:function(t,e,i,n,o){var a,r=this;return a=tui.util.map(e,function(e,a){var s=i[a];return tui.util.map(e,function(e){var i,a={endDot:r.renderDot(t,e,s,n)};return r.hasRangeData&&(i=tui.util.extend({},e),i.top=i.startTop,a.startDot=r.renderDot(t,i,s,n)),o&&(o.push(a.endDot.dot),a.startDot&&o.push(a.startDot.dot)),a})})},_getCenter:function(t,e){return{left:(t.left+e.left)/2,top:(t.top+e.top)/2}},_showDot:function(t){var e=this.theme.dot.hover,i={"fill-opacity":e.fillOpacity,stroke:e.strokeColor||t.color,"stroke-opacity":e.strokeOpacity,"stroke-width":e.strokeWidth,r:e.radius};this.prevDotAttributes=t.dot.attr(),e.fillColor&&(i.fill=e.fillColor),t.dot.attr(i)},_updateLineStrokeWidth:function(t,e){t.attr({"stroke-width":e})},showAnimation:function(t){var e,i,n=t.groupIndex,o=t.index,a=this.groupLines?this.groupLines[o]:this.groupAreas[o],r=this.groupDots[o][n];r&&("area"===this.chartType?(e=2*this.lineWidth,i=a.startLine,a=a.line):e=2*this.lineWidth,this._updateLineStrokeWidth(a,e),i&&this._updateLineStrokeWidth(i,e),this._showDot(r.endDot),r.startDot&&this._showDot(r.startDot))},_getPivotGroupDots:function(){return!this.pivotGroupDots&&this.groupDots&&(this.pivotGroupDots=tui.chart.arrayUtil.pivot(this.groupDots)),this.pivotGroupDots},_showGroupDots:function(t){var e=this,i=this._getPivotGroupDots();i&&i[t]&&tui.util.forEachArray(i[t],function(t){t.endDot&&e._showDot(t.endDot),t.startDot&&e._showDot(t.startDot)})},showGroupTooltipLine:function(t,e){var i=Math.max(t.position.left,11),n=o.makeLinePath({left:i,top:e.position.top+t.dimension.height},{left:i,top:e.position.top});this.tooltipLine&&this.tooltipLine.attr({path:n,stroke:"#999","stroke-opacity":1})},showGroupAnimation:function(t){this._showGroupDots(t)},_hideDot:function(t,e){var i=this.prevDotAttributes,n=this.outDotStyle;i&&!tui.util.isUndefined(e)&&(n=tui.util.extend({r:i.r,"stroke-opacity":i["stroke-opacity"],"stroke-width":i["stroke-width"]},{"fill-opacity":e})),t.attr(n)},hideAnimation:function(t){var e,i,n,o,a=t.groupIndex,r=t.index,s=this.dotOpacity,u=this.groupDots[r];u&&u[a]&&(e=this.groupLines?this.groupLines[r]:this.groupAreas[r],i=u[a],"area"===this.chartType?(n=this.lineWidth,o=e.startLine,e=e.line):n=this.lineWidth,s&&!tui.util.isNull(this.selectedLegendIndex)&&this.selectedLegendIndex!==r&&(s=l),e&&this._updateLineStrokeWidth(e,n),o&&this._updateLineStrokeWidth(o,n),i&&(this._hideDot(i.endDot.dot,s),i.startDot&&this._hideDot(i.startDot.dot,s)))},_hideGroupDots:function(t){var e=this,i=!tui.util.isNull(this.selectedLegendIndex),n=this.dotOpacity,o=this._getPivotGroupDots();o&&o[t]&&tui.util.forEachArray(o[t],function(t,o){var a=n;a&&i&&e.selectedLegendIndex!==o&&(a=l),t.endDot&&e._hideDot(t.endDot.dot,a),t.startDot&&e._hideDot(t.startDot.dot,a)})},hideGroupTooltipLine:function(){this.tooltipLine.attr({"stroke-opacity":0})},hideGroupAnimation:function(t){this._hideGroupDots(t)},_moveDot:function(t,e){var i={cx:e.left,cy:e.top};this.dotOpacity&&(i=tui.util.extend({"fill-opacity":this.dotOpacity},i,this.borderStyle)),t.attr(i)},animate:function(t,e){var i=this.paper,o=this.dimension,a=this.position,u=this.clipRect;!r&&o&&(u?u.attr({width:0}):(u=n(i,a,o,d),this.clipRect=u),e.forEach(function(t){t.node.setAttribute("clip-path","url(#"+d+")")}),u.animate({width:o.width},s,">",t))},_makeSelectionDot:function(t){var e=t.circle(0,0,h);return e.attr({fill:"#ffffff","fill-opacity":0,"stroke-opacity":0,"stroke-width":2}),e},selectSeries:function(t){var e=this.groupDots[t.index][t.groupIndex],i=this.groupPositions[t.index][t.groupIndex];this.selectedItem=e,this.selectionDot.attr({cx:i.left,cy:i.top,"fill-opacity":.5,"stroke-opacity":1,stroke:this.selectionColor||e.endDot.color}),this.selectionStartDot&&this.selectionStartDot.attr({cx:i.left,cy:i.startTop,"fill-opacity":.5,"stroke-opacity":1,stroke:this.selectionColor||e.startDot.color})},unselectSeries:function(t){var e=this.groupDots[t.index][t.groupIndex];this.selectedItem===e&&this.selectionDot.attr({"fill-opacity":0,"stroke-opacity":0}),this.selectionStartDot&&this.selectionStartDot.attr({"fill-opacity":0,"stroke-opacity":0})},setSize:function(t,e){t=t||this.dimension.width,e=e||this.dimension.height,this.paper.setSize(t,e)},_animateByPosition:function(t,e,i){var n={cx:e.left,cy:e.top};tui.util.isExisty(i)&&(n.transform="t-"+i+",0"),t.animate(n,c)},_animateByPath:function(t,e,i){var n={path:e.join(" ")};tui.util.isExisty(i)&&(n.transform="t-"+i+",0"),t.animate(n,c)},_removeFirstDot:function(t){var e=t.shift();e.endDot.dot.remove(),e.startDot&&e.startDot.dot.remove()},clear:function(){delete this.paper.dots,this.paper.clear()},resizeClipRect:function(t){var e=this.paper.getById(d+"_rect");e.attr({width:t.width,height:t.height})}});t.exports=f},function(t,e,i){"use strict";var n=i(128),o=i(61),a=1,r=.3,s=Array.prototype.concat,u=i(2).GUIDE_AREACHART_AREAOPACITY_TYPE,h=i(130),l=tui.util.defineClass(n,{init:function(){this.selectedLegendIndex=null,this.chartType="area",this.lineWidth=1},render:function(t,e){var i=e.dimension,n=e.groupPositions,o=e.theme,a=o.colors,r=e.options,s=this._isAreaOpacityNumber(r.areaOpacity)?r.areaOpacity:.5,u=r.showDot?1:0,h=this.makeBorderStyle(o.borderColor,u),l=this.makeOutDotStyle(u,h),c=this.lineWidth=tui.util.isNumber(r.pointWidth)?r.pointWidth:this.lineWidth;return this.paper=t,this.theme=e.theme,this.isSpline=r.spline,this.dimension=i,this.position=e.position,this.zeroTop=e.zeroTop,this.hasRangeData=e.hasRangeData,t.setStart(),this.groupPaths=this._getAreaChartPath(n,null,r.connectNulls),this.groupAreas=this._renderAreas(t,this.groupPaths,a,c,s),this.tooltipLine=this._renderTooltipLine(t,i.height),this.groupDots=this._renderDots(t,n,a,u),r.allowSelect&&(this.selectionDot=this._makeSelectionDot(t),this.selectionColor=o.selectionColor,this.hasRangeData&&(this.selectionStartDot=this._makeSelectionDot(t))),this.outDotStyle=l,this.groupPositions=n,this.dotOpacity=u,this.pivotGroupDots=null,t.setFinish()},_getAreaChartPath:function(t,e,i){var n;return n=this.isSpline?this._makeSplineAreaChartPath(t,e):this._makeAreaChartPath(t,e,i)},_renderAreas:function(t,e,i,n,a){var r;return i=i.slice(0,e.length),i.reverse(),e.reverse(),r=tui.util.map(e,function(e,r){var s=i[r]||"transparent",u=s,h={area:o.renderArea(t,e.area.join(" "),{fill:s,opacity:a,stroke:s}),line:o.renderLine(t,e.line.join(" "),u,n)};return e.startLine&&(h.startLine=o.renderLine(t,e.startLine.join(" "),u,1)),h}),r.reverse()},_makeHeight:function(t,e){return Math.abs(t-e)},_makeAreasPath:function(t,e){var i,n=[],o=[],a=!1,r=t.length,u=[],h=[];return tui.util.forEachArray(t,function(t,e){var i;t?(a?(i="M",a=!1):i="L",u.push([i,t.left,t.top]),h.unshift(["L",t.left,t.startTop])):(a=!0,h.push(["z"])),t&&e!==r-1||(o.push(u.concat(h)),u=[],h=[])}),tui.util.forEachArray(o,function(t){n=n.concat(t)}),e!==!1&&(i=t.length-1,n.splice(i+1,0,n[i],n[i+1])),n=s.apply([],n),n[0]="M",n},_makeAreaChartPath:function(t,e,i){var n=this;return tui.util.map(t,function(t){var o;return o={area:n._makeAreasPath(t,e),line:n._makeLinesPath(t,null,i)},n.hasRangeData&&(o.startLine=n._makeLinesPath(t,"startTop")),o})},_makeSplineAreaBottomPath:function(t){var e=this;return tui.util.map(t,function(t){return["L",t.left,e.zeroTop]}).reverse()},_makeSplineAreaChartPath:function(t,e){var i=this;return tui.util.map(t,function(t){var n,o=i._makeSplineLinesPath(t),a=JSON.parse(JSON.stringify(o)),r=i._makeSplineAreaBottomPath(t);return e!==!1&&(n=t[t.length-1],a.push(["L",n.left,n.top]),r.unshift(["L",n.left,i.zeroTop])),{area:a.concat(r),line:o}})},resize:function(t){var e=this,i=t.dimension,n=t.groupPositions;this.resizeClipRect(i),this.zeroTop=t.zeroTop,this.groupPositions=n,this.groupPaths=this._getAreaChartPath(n),this.paper.setSize(i.width,i.height),this.tooltipLine.attr({top:i.height}),tui.util.forEachArray(this.groupPaths,function(t,i){var o=e.groupAreas[i];o.area.attr({path:t.area.join(" ")}),o.line.attr({path:t.line.join(" ")}),o.startLine&&o.startLine.attr({path:t.startLine.join(" ")}),tui.util.forEachArray(e.groupDots[i],function(t,o){var a,r=n[i][o];t.endDot&&e._moveDot(t.endDot.dot,r),t.startDot&&(a=tui.util.extend({},r),a.top=a.startTop,e._moveDot(t.startDot.dot,a))})})},selectLegend:function(t){var e=this,i=tui.util.isNull(t);this.selectedLegendIndex=t,tui.util.forEachArray(this.groupAreas,function(n,o){var s=i||t===o?a:r;n.area.attr({"fill-opacity":s}),n.line.attr({"stroke-opacity":s}),n.startLine&&n.startLine.attr({"stroke-opacity":s}),tui.util.forEachArray(e.groupDots[o],function(t){e.dotOpacity&&(t.endDot.dot.attr({"fill-opacity":s}),t.startDot&&t.startDot.dot.attr({"fill-opacity":s}))})})},animateForAddingData:function(t,e,i,n,o){var a=this,r=this._getAreaChartPath(i,!1),s=0;i.length&&(n&&(s=1),this.zeroTop=o,tui.util.forEachArray(this.groupAreas,function(t,o){var u=a.groupDots[o],h=i[o],l=r[o];n&&a._removeFirstDot(u),tui.util.forEachArray(u,function(t,i){var n=h[i+s];a._animateByPosition(t.endDot.dot,n,e),t.startDot&&a._animateByPosition(t.startDot.dot,{left:n.left,top:n.startTop},e)}),a._animateByPath(t.area,l.area,e),a._animateByPath(t.line,l.line,e),t.startLine&&a._animateByPath(t.startLine,l.startLine,e)}))},renderSeriesLabel:function(t,e,i,n){var a={"font-size":n.fontSize,"font-family":n.fontFamily,"font-weight":n.fontWeight,fill:n.color,"text-anchor":"middle",opacity:0},r=t.set();return tui.util.forEach(i,function(i,n){tui.util.forEach(i,function(i,s){var u,h=e[n][s],l=o.renderText(t,h.end,i.end,a);r.push(l),l.node.style.userSelect="none",l.node.style.cursor="default",l.node.setAttribute("filter","url(#glow)"),h.start&&(u=o.renderText(t,h.start,i.start,a),u.node.style.userSelect="none",u.node.style.cursor="default",u.node.setAttribute("filter","url(#glow)"),r.push(u))})}),r},_isAreaOpacityNumber:function(t){var e=tui.util.isNumber(t);return e?(t<0||t>1)&&h.print(u,"warn"):tui.util.isUndefined(t)||h.print(u,"error"),e}});t.exports=l},function(t,e){"use strict";t.exports={print:function(t,e){e=e||"log",window.console&&window.console[e](t)}}},function(t,e,i){"use strict";var n=i(61),o=window.Raphael,a=180,r=360,s=.01,u=Math.PI/a,h=700,l=1,c=.3,d=.3,p=.2,f="overlay",m=20,g=tui.util.defineClass({render:function(t,e,i){var n=t.set();return this.paper=t,this.holeRatio=e.options.radiusRange[0],this.chartBackground=e.chartBackground,this.chartType=e.chartType,this.callbacks=i,this.selectionColor=e.theme.selectionColor,this.circleBound=e.circleBound,this.sectorName="sector_"+this.chartType,this._setSectorAttr(),this.sectorInfos=this._renderPie(e.sectorData,e.theme.colors,e.additionalIndex,n),this.overlay=this._renderOverlay(),this.prevPosition=null,this.prevHoverSector=null,n},clear:function(){this.legendLines=null,this.paper.clear()},_makeSectorPath:function(t,e,i,n,o){var r=n*u,s=o*u,h=t+i*Math.sin(r),l=e-i*Math.cos(r),c=t+i*Math.sin(s),d=e-i*Math.cos(s),p=o-n>a?1:0,f=["M",t,e,"L",h,l,"A",i,i,0,p,1,c,d,"Z"];return{path:f}},_makeDonutSectorPath:function(t,e,i,n,o,r){var s=n*u,h=o*u,l=r||i*this.holeRatio,c=t+i*Math.sin(s),d=e-i*Math.cos(s),p=t+l*Math.sin(s),f=e-l*Math.cos(s),m=t+i*Math.sin(h),g=e-i*Math.cos(h),_=t+l*Math.sin(h),T=e-l*Math.cos(h),v=o-n>a?1:0,x=["M",c,d,"A",i,i,0,v,1,m,g,"L",_,T,"A",l,l,0,v,0,p,f,"Z"];return{path:x}},_setSectorAttr:function(){var t;this.paper.customAttributes[this.sectorName]||(t=this.holeRatio?this._makeDonutSectorPath:this._makeSectorPath,this.paper.customAttributes[this.sectorName]=tui.util.bind(t,this))},_renderOverlay:function(){var t={paper:this.paper,circleBound:{cx:0,cy:0,r:0},angles:{startAngle:0,endAngle:0},attrs:{fill:"none",opacity:0,stroke:this.chartBackground.color,"stroke-width":1}},e=this._renderSector(t);return e.data("id",f),e.data("chartType",this.chartType),{inner:e,outer:this._renderSector(t)}},_renderSector:function(t){var e=t.circleBound,i=t.angles,n=t.attrs;return n[this.sectorName]=[e.cx,e.cy,e.r,i.startAngle,i.endAngle],t.paper.path().attr(n)},_renderPie:function(t,e,i,n){var o=this,a=this.circleBound,r=this.chartBackground,s=[];return tui.util.forEachArray(t,function(t,u){var h=t.ratio,l=e[u],c=o._renderSector({paper:o.paper,circleBound:a,angles:t.angles.start,attrs:{fill:r.color,stroke:r.color,"stroke-width":1}});c.data("index",u),c.data("legendIndex",u+i),c.data("chartType",o.chartType),s.push({sector:c,color:l,angles:t.angles.end,ratio:h}),n.push(c)}),s},renderLegendLines:function(t){var e,i=this.paper;this.legendLines||(e=this._makeLinePaths(t),this.legendLines=tui.util.map(e,function(t){return n.renderLine(i,t,"transparent",1)}))},_makeLinePaths:function(t){return tui.util.map(t,function(t){return[n.makeLinePath(t.start,t.middle),n.makeLinePath(t.middle,t.end),"Z"].join("")})},_showOverlay:function(t,e){var i,n=this.overlay,o=this.sectorInfos[t],a=o.angles.startAngle,r=o.angles.endAngle,s=this.circleBound;i={fill:"#fff",opacity:c},i[this.sectorName]=[s.cx,s.cy,s.r,a,r,s.r*this.holeRatio],n.inner.attr(i),n.inner.data("index",t),n.inner.data("legendIndex",e),n.outer.attr({path:this._makeDonutSectorPath(s.cx,s.cy,s.r+10,a,r,s.r).path,fill:o.color,opacity:c})},_hideOverlay:function(){var t=this.overlay,e={fill:"none",opacity:0};t.inner.attr(e),t.outer.attr(e)},animate:function(t){var e=0,i=this.sectorName,n=this.circleBound,a=[n.cx,n.cy,n.r];tui.util.forEachArray(this.sectorInfos,function(t){var n,u=t.angles,l={fill:t.color},c=h*t.ratio;0===u.startAngle&&u.endAngle===r&&(u.endAngle=r-s),l[i]=a.concat([u.startAngle,u.endAngle]),n=o.animation(l,c,">"),t.sector.animate(n.delay(e)),e+=c}),t&&setTimeout(t,e)},animateLegendLines:function(t){var e;this.legendLines&&(e=tui.util.isNull(t),tui.util.forEachArray(this.legendLines,function(i,n){var o=e||t===n?l:d;i.animate({stroke:"black","stroke-opacity":o})}))},resize:function(t){var e=t.dimension,i=t.circleBound,n=this.sectorName,o=this.labelSet;this.circleBound=i,this.paper.setSize(e.width,e.height),tui.util.forEachArray(this.sectorInfos,function(t,e){var a,r=t.angles,s={};s[n]=[i.cx,i.cy,i.r,r.startAngle,r.endAngle],t.sector.attr(s),o&&o.length&&(a=t.sector.getBBox(),o[e].attr({x:a.x+a.width/2,y:a.y+a.height/2}))})},moveLegendLines:function(t){var e;this.legendLines&&(e=this._makeLinePaths(t),tui.util.forEachArray(this.legendLines,function(t,i){return t.attr({path:e[i]}),t}))},findSectorInfo:function(t){var e=this.paper&&this.paper.getElementByPoint(t.left,t.top),i=null;return e&&(i={legendIndex:tui.util.isExisty(e.data("legendIndex"))?e.data("legendIndex"):-1,index:tui.util.isExisty(e.data("index"))?e.data("index"):-1,chartType:e.data("chartType")}),i},_isChangedPosition:function(t,e){return!t||t.left!==e.left||t.top!==e.top},_showTooltip:function(t,e){var i=[{},0,t.data("index"),{left:e.left-m,top:e.top-m}];this.callbacks.showTooltip.apply(null,i)},_isValidSector:function(t){return t&&t.data("chartType")===this.chartType},moveMouseOnSeries:function(t){var e=this.paper&&this.paper.getElementByPoint(t.left,t.top);this._isValidSector(e)?(this.prevHoverSector!==e&&(this._showOverlay(e.data("index"),e.data("legendIndex")),this.prevHoverSector=e),this._isChangedPosition(this.prevPosition,t)&&this._showTooltip(e,t)):this.prevHoverSector&&(this._hideOverlay(),this.callbacks.hideTooltip(),this.prevHoverSector=null),this.prevPosition=t},selectSeries:function(t){var e,i,a,r=this.sectorInfos[t.index];r&&(i=o.color(r.color),e=n.makeChangedLuminanceColor(i.hex,p),a=this.selectionColor||e,r.sector.attr({fill:a}))},unselectSeries:function(t){var e=this.sectorInfos[t.index];e&&e.sector.attr({fill:e.color})},selectLegend:function(t){var e=tui.util.isNull(t),i=this.legendLines;tui.util.forEachArray(this.sectorInfos,function(n,o){var a=e||t===o?l:d;n.sector.attr({"fill-opacity":a}),i&&i[o].attr({"stroke-opacity":a})})},getRenderedLabelWidth:function(t,e){return n.getRenderedTextSize(t,e.fontSize,e.fontFamily).width},getRenderedLabelHeight:function(t,e){return n.getRenderedTextSize(t,e.fontSize,e.fontFamily).height},renderLabels:function(t,e,i,o){var a=t.set(),r={"font-size":o.fontSize,"font-family":o.fontFamily,"font-weight":o.fontWeight,"text-anchor":"middle",fill:o.color,opacity:0};return tui.util.forEach(e,function(e,o){var s;e&&(s=n.renderText(t,e,i[o],r),s.node.style.userSelect="none",s.node.style.cursor="default",s.node.setAttribute("filter","url(#glow)")),a.push(s)}),this.labelSet=a,a}});t.exports=g},function(t,e,i){"use strict";var n=i(128),o=i(61),a=1,r=.3,s=tui.util.defineClass(n,{init:function(){this.selectedLegendIndex=null,this.chartType="radial",this.lineWidth=2},render:function(t,e){var i=e.dimension,n=e.groupPositions,o=e.theme,a=o.colors,r=e.options.showDot?1:0,s=e.options.showArea,u=this._getLinesPath(n),h=this.makeBorderStyle(o.borderColor,r),l=this.makeOutDotStyle(r,h),c=t.set(),d=this.lineWidth=e.options.pointWidth?e.options.pointWidth:this.lineWidth;return this.paper=t,this.theme=e.theme,this.dimension=i,this.position=e.position,s&&(this.groupAreas=this._renderArea(t,u,a,c)),this.groupLines=this._renderLines(t,u,a,d,c),this.groupDots=this._renderDots(t,n,a,r,c),e.options.allowSelect&&(this.selectionDot=this._makeSelectionDot(t),this.selectionColor=o.selectionColor),this.colors=a,this.borderStyle=h,this.outDotStyle=l,this.groupPositions=n,this.groupPaths=u,this.dotOpacity=r,c},_getLinesPath:function(t){var e=this;return tui.util.map(t,function(t){return e._makeLinesPath(t)})},_renderLines:function(t,e,i,n,a){return tui.util.map(e,function(e,r){var s=i[r]||"transparent",u=o.renderLine(t,e.join(" "),s,n);return a.push(u),u})},_renderArea:function(t,e,i,n){return tui.util.map(e,function(e,a){var r=i[a]||"transparent",s=o.renderArea(t,e,{fill:r,opacity:.4,"stroke-width":0,stroke:r});return n.push(s),s})},resize:function(t){var e=this,i=t.dimension,n=t.groupPositions;this.groupPositions=n,this.groupPaths=this._getLinesPath(n),this.paper.setSize(i.width,i.height),tui.util.forEachArray(this.groupPaths,function(t,i){e.groupLines[i].attr({path:t.join(" ")}),e.groupAreas[i].attr({path:t.join(" ")}),tui.util.forEachArray(e.groupDots[i],function(t,o){e._moveDot(t.endDot.dot,n[i][o])})})},selectLegend:function(t){var e=this,i=tui.util.isNull(t);this.selectedLegendIndex=t,tui.util.forEachArray(this.groupLines,function(n,o){var s=i||t===o?a:r;n.attr({"stroke-opacity":s}),tui.util.forEachArray(e.groupDots[o],function(t){t.opacity=s,e.dotOpacity&&t.endDot.dot.attr({"fill-opacity":s})})})}});t.exports=s},function(t,e,i){"use strict";var n=i(61),o=window.Raphael,a=700,r=.5,s=.3,u=.5,h=.3,l=.2,c=2,d=20,p=tui.util.defineClass({render:function(t,e,i){var n=t.set();return this.paper=t,this.theme=e.theme,this.seriesDataModel=e.seriesDataModel,this.groupBounds=e.groupBounds,this.callbacks=i,this.overlay=this._renderOverlay(),this.groupCircleInfos=this._renderCircles(n),this.prevCircle=null,this.prevOverCircle=null,this.animationTimeoutId=null,n},_renderOverlay:function(){var t={left:0,top:0},e={fill:"none",stroke:"#fff","stroke-opacity":s,"stroke-width":2},i=n.renderCircle(this.paper,t,0,e);return i},_renderCircles:function(t){var e=this,i=this.theme.colors;return tui.util.map(this.groupBounds,function(o,a){return tui.util.map(o,function(o,r){var s,u,h=null;return o&&(s=i[r],u=n.renderCircle(e.paper,o,0,{fill:s,opacity:0,stroke:"none"}),t.push(u),u.data("groupIndex",a),u.data("index",r),h={circle:u,color:s,bound:o}),h})})},_animateCircle:function(t,e){t.animate({r:e,opacity:r},a,">")},animate:function(){var t=this;n.forEach2dArray(this.groupCircleInfos,function(e){e&&t._animateCircle(e.circle,e.bound.radius)})},_updatePosition:function(t,e){t.attr({cx:e.left,cy:e.top,r:e.radius})},resize:function(t){var e=this,i=t.dimension,o=t.groupBounds;this.groupBounds=o,this.paper.setSize(i.width,i.height),n.forEach2dArray(this.groupCircleInfos,function(t,i,n){var a=o[i][n];t&&(t.bound=a,e._updatePosition(t.circle,a))})},findIndexes:function(t){var e=this.paper.getElementByPoint(t.left,t.top),i=null;return e&&(i={index:e.data("index"),groupIndex:e.data("groupIndex")}),i},_isChangedPosition:function(t,e){return!t||t.left!==e.left||t.top!==e.top},showAnimation:function(t){var e=this.groupCircleInfos[t.groupIndex][t.index],i=e.bound;this.overlay.attr({cx:i.left,cy:i.top,r:i.radius+c,stroke:e.color,opacity:1})},hideAnimation:function(){this.overlay.attr({cx:0,cy:0,r:0,opacity:0})},_findCircle:function(t){for(var e,i,n=[],o=this.paper;tui.util.isUndefined(e);)i=o.getElementByPoint(t.left,t.top),i?i.attrs.opacity>h?e=i:(n.push(i),i.hide()):e=null;return e||(e=n[0]),tui.util.forEachArray(n,function(t){t.show()}),e},moveMouseOnSeries:function(t){var e,i,n,o=this._findCircle(t);o&&tui.util.isExisty(o.data("groupIndex"))?(e=o.data("groupIndex"),i=o.data("index"),n=[{},e,i,{left:t.left-d,top:t.top-d}],this._isChangedPosition(this.prevPosition,t)&&(this.callbacks.showTooltip.apply(null,n),this.prevOverCircle=o)):this.prevOverCircle&&(this.callbacks.hideTooltip(),this.prevOverCircle=null),this.prevPosition=t},selectSeries:function(t){var e=t.groupIndex,i=t.index,a=this.groupCircleInfos[e][i],r=o.color(a.color),s=this.theme.selectionColor,u=s||n.makeChangedLuminanceColor(r.hex,l);a.circle.attr({fill:u})},unselectSeries:function(t){var e=t.groupIndex,i=t.index,n=this.groupCircleInfos[e][i];n.circle.attr({fill:n.color})},selectLegend:function(t){var e=tui.util.isNull(t);n.forEach2dArray(this.groupCircleInfos,function(i,n,o){var a;i&&(a=e||t===o?u:h,i.circle.attr({opacity:a}))})}});t.exports=p},function(t,e,i){"use strict";var n=i(61),o=100,a=1,r=3,s=tui.util.defineClass({render:function(t,e){var i=t.set();return this.paper=t,this.theme=e.theme||{},this.colorSpectrum=e.colorSpectrum,this.chartBackground=e.chartBackground,this.zoomable=e.zoomable,this.borderColor=this.theme.borderColor||"none",this.borderWidth=this.theme.borderWidth,this.groupBounds=e.groupBounds,this.boundMap=e.boundMap,this._bindGetBoundFunction(),this._bindGetColorFunction(),this.boxesSet=this._renderBoxes(e.seriesDataModel,e.startDepth,!!e.isPivot,i),i},_bindGetBoundFunction:function(){this.boundMap?this._getBound=this._getBoundFromBoundMap:this._getBound=this._getBoundFromGroupBounds},_bindGetColorFunction:function(){this.colorSpectrum?this._getColor=this._getColorFromSpectrum:this.zoomable?this._getColor=this._getColorFromColorsWhenZoomable:this._getColor=this._getColorFromColors},_getBoundFromGroupBounds:function(t){return this.groupBounds[t.groupIndex][t.index].end},_getBoundFromBoundMap:function(t){return this.boundMap[t.id]},_getColorFromSpectrum:function(t){var e;return e=t.hasChild?"none":this.colorSpectrum.getColor(t.colorRatio||t.ratio)||this.chartBackground},_getColorFromColors:function(t){return t.hasChild?"none":this.theme.colors[t.group]},_getColorFromColorsWhenZoomable:function(t,e){return t.depth===e?this.theme.colors[t.group]:"none"},_renderRect:function(t,e,i){return n.renderRect(this.paper,t,{fill:e,stroke:this.borderColor,"stroke-width":i})},_getStrokeWidth:function(t,e){var i;return i=this.borderWidth?this.borderWidth:tui.util.isExisty(t)?Math.max(a,r-(t-e)):a},_renderBoxes:function(t,e,i,n){var o,a=this;return o=this.colorSpectrum||!this.zoomable?function(t){t.toBack()}:function(){},t.map(function(t,i){return t.map(function(t,r){var s,u,h=null,l=a._getStrokeWidth(t.depth,e);return t.groupIndex=i,t.index=r,s=a._getBound(t),s&&(u=a._getColor(t,e),h={rect:a._renderRect(s,u,l),seriesItem:t,color:u},o(h.rect),n&&n.push(h.rect)),h})},i)},_animateChangingColor:function(t,e,i){var n={"fill-opacity":tui.util.isExisty(i)?i:1};e&&(n.fill=e),t.animate(n,o,">")},showAnimation:function(t,e,i){var n,o=this.boxesSet[t.groupIndex][t.index];o&&(e=!!tui.util.isUndefined(e)||e,n=e?this.theme.overColor:o.color,o.seriesItem.hasChild&&(e&&o.rect.attr({"fill-opacity":0}),o.rect.toFront()),this._animateChangingColor(o.rect,n,i))},hideAnimation:function(t,e){var i,n=this.colorSpectrum,a=this.boxesSet[t.groupIndex][t.index],r=1,s=a.rect.paper;a&&(a.seriesItem.hasChild?(i=null,e&&(r=0)):i=a.color,this._animateChangingColor(a.rect,i,r),setTimeout(function(){!n&&a.seriesItem.hasChild&&(a.rect.toBack(),s.pushDownBackgroundToBottom())},o))},resize:function(t){var e=this,i=t.dimension;this.boundMap=t.boundMap,this.groupBounds=t.groupBounds,this.paper.setSize(i.width,i.height),n.forEach2dArray(this.boxesSet,function(t,i,o){var a;t&&(a=e._getBound(t.seriesItem,i,o),a&&n.updateRectBound(t.rect,a))})},renderSeriesLabel:function(t,e,i,o){var a=t.set(),r={"font-size":o.fontSize,"font-family":o.fontFamily,"font-weight":o.fontWeight,fill:o.color,opacity:0};return tui.util.forEach(i,function(i,o){tui.util.forEach(i,function(i,s){var u=n.renderText(t,e[o][s].end,i,r);u.node.style.userSelect="none",u.node.style.cursor="default",u.node.setAttribute("filter","url(#glow)"),a.push(u)})}),a},renderSeriesLabelForTreemap:function(t,e,i,o){var a=t.set(),r={"font-size":o.fontSize,"font-family":o.fontFamily,"font-weight":o.fontWeight,fill:o.color,opacity:0};return tui.util.forEach(i,function(i,o){var s=n.renderText(t,e[o],i,r);s.node.style.userSelect="none",s.node.style.cursor="default",s.node.setAttribute("filter","url(#glow)"),a.push(s)}),a}});t.exports=s},function(t,e,i){"use strict";function n(t,e,i){var n=document.createElementNS("http://www.w3.org/2000/svg","g");return n.id=i,e.forEach(function(t){a.append(n,t.node)}),t.canvas.appendChild(n),n}var o=i(61),a=i(14),r=tui.util.browser,s=r.msie&&r.version<=8,u="gray",h=100,l="tui-chart-series-group",c=tui.util.defineClass({render:function(t,e){var i=e.mapModel.getMapDimension();this.ratio=this._getDimensionRatio(e.layout.dimension,i),this.dimension=e.layout.dimension,this.position=e.layout.position,this.paper=t,this.sectorSet=t.set(),this.sectors=this._renderMap(e,this.ratio),s||(this.g=n(t,this.sectorSet,l)),this.overColor=e.theme.overColor},_getDimensionRatio:function(t,e){return Math.min(t.height/e.height,t.width/e.width)},_renderMap:function(t,e){var i=this.sectorSet,n=t.layout.position,a=this.paper,r=t.colorSpectrum;return tui.util.map(t.mapModel.getMapData(),function(t,s){var h=t.ratio||0,l=r.getColor(h),c=o.renderArea(a,t.path,{fill:l,opacity:1, -stroke:u,"stroke-opacity":1,transform:"s"+e+","+e+",0,0t"+n.left/e+","+n.top/e});return c.data("index",s),i.push(c),{sector:c,color:l,ratio:t.ratio}})},findSectorIndex:function(t){var e=this.paper.getElementByPoint(t.left,t.top),i=e&&e.data("index"),n=!tui.util.isUndefined(i)&&this.sectors[i];return n&&!tui.util.isUndefined(n.ratio)?i:null},changeColor:function(t){var e=this.sectors[t];e.sector.animate({fill:this.overColor},h,">")},restoreColor:function(t){var e=this.sectors[t];e.sector.animate({fill:e.color},h,">")},scaleMapPaths:function(t,e,i,n,o){var a,r,s=this.g.transform.baseVal,u=this.paper.canvas.createSVGTransform(),h=this.paper.canvas.createSVGMatrix(),l=this.paper.raphael.matrix(),c=s.numberOfItems?s.getItem(0).matrix:{a:1,b:0,c:0,d:1,e:0,f:0},d=o.width-this.dimension.width,p=o.height-this.dimension.height,f=c.e/c.a,m=c.f/c.d,g=-d/c.a,_=-p/c.d;l.scale(t,t,e.left*i-f*t,e.top*i-m*t),a=l.e/l.a+f,r=l.f/l.d+m,a>=0?l.e=-f*l.a:a=0?l.f=-m*l.a:r<_&&(l.f=_-m),h.a=l.a,h.b=l.b,h.c=l.c,h.d=l.d,h.e=l.e,h.f=l.f,u.setMatrix(h),s.appendItem(u),s.initialize(s.consolidate())},moveMapPaths:function(t,e){var i,n,o,a,r=this.paper.canvas.createSVGMatrix(),s=this.paper.raphael.matrix(),u=this.g.transform.baseVal,h=this.paper.canvas.createSVGTransform(),l=e.width-this.dimension.width,c=e.height-this.dimension.height,d=u.numberOfItems?u.getItem(0).matrix:{a:1,b:0,c:0,d:1,e:0,f:0};s.translate(t.x,t.y),o=s.e/s.a,a=s.f/s.d,i=o+d.e/d.a,n=a+d.f/d.d,i>=0&&o>0?s.e=0:i<0&&i<-l/d.a&&o<0&&(s.e=0),n>=0&&a>0?s.f=0:n<0&&n<-c/d.d&&a<0&&(s.f=0),r.a=s.a,r.b=s.b,r.c=s.c,r.d=s.d,r.e=s.e,r.f=s.f,h.setMatrix(r),u.appendItem(h),u.initialize(u.consolidate())},renderSeriesLabels:function(t,e,i){var n={"font-size":i.fontSize,"font-family":i.fontFamily,"font-weight":i.fontWeight,fill:i.color,"text-anchor":"middle",opacity:0,transform:"s"+this.ratio+","+this.ratio+",0,0t"+this.position.left/this.ratio+","+this.position.top/this.ratio},a=t.set(),r=this;return tui.util.forEach(e,function(e){var i=e.labelPosition,u=o.renderText(t,i,e.name||e.code,n);a.push(u),u.node.style.userSelect="none",u.node.style.cursor="default",u.node.setAttribute("filter","url(#glow)"),s||r.g.appendChild(u.node)}),a}});t.exports=c},function(t,e,i){"use strict";function n(){return a.LEGEND_ICON_WIDTH+a.LEGEND_LABEL_LEFT_PADDING}var o,a=i(2),r=i(61),s=i(6),u=.5;o=tui.util.defineClass({init:function(){this._checkBoxWidth=0,this._checkBoxHeight=0,this._iconHeight=0,this._legendItemHeight=0,this._currentPageCount=1,this._showCheckbox=!0},_renderLegendItems:function(t){var e=this,i=a.LEGEND_LABEL_LEFT_PADDING,n=tui.util.extend({},this.basePosition);tui.util.forEach(t,function(t,o){var r=t.index,s=t.colorByPoint?"#aaa":t.theme.color,u=t.isUnselected,h=t.labelHeight,l=t.checkbox,c=n.left+e._calculateSingleLegendWidth(r),d=c>=e.paper.width;e.isHorizontal&&d&&(n.top+=e._legendItemHeight+a.LABEL_PADDING_TOP,n.left=e.basePosition.left),e._showCheckbox&&(e._renderCheckbox(n,{isChecked:l.checked,legendIndex:r,legendSet:e.legendSet}),n.left+=e._checkBoxWidth+i),e._renderIcon(n,{legendColor:s,iconType:t.iconType,labelHeight:h,isUnselected:u,legendIndex:r,legendSet:e.legendSet}),n.left+=a.LEGEND_ICON_WIDTH+i,e._renderLabel(n,{labelText:t.label,labelHeight:h,isUnselected:u,legendIndex:r,legendSet:e.legendSet}),e.isHorizontal?n.left+=e.labelWidths[o]+i:(n.left=e.basePosition.left,n.top+=e._legendItemHeight+a.LINE_MARGIN_TOP)})},_getLegendData:function(t,e){var i,n,o,r=this.basePosition.top,s=this.dimension.height,u=this.paper.height,h=t;return!this.isHorizontal&&s+2*r>u&&(i=u-2*r,this._legendItemHeight=Math.max(t[0].labelHeight,a.LEGEND_ICON_HEIGHT),n=this._legendItemHeight+a.LINE_MARGIN_TOP,o=Math.floor(i/n),h=t.slice((e-1)*o,e*o)),h},render:function(t){var e,i;return this.eventBus=t.eventBus,this.paper=t.paper,this.dimension=t.dimension,this.legendSet=this.paper.set(),this.labelWidths=t.labelWidths,this.labelTheme=t.labelTheme,this.basePosition=t.position,this.isHorizontal=t.isHorizontal,this.originalLegendData=t.legendData,this.originalLegendData.length&&(this._showCheckbox=tui.util.isExisty(t.legendData[0].checkbox),this._setComponentDimensionsBaseOnLabelHeight(t.legendData[0].labelHeight),t.dimension.width=this._calculateLegendWidth(t.legendData[0].labelHeight),e=this._getLegendData(t.legendData,this._currentPageCount),this._renderLegendItems(e),!this.isHorizontal&&e&&e.length1&&(i._paginateLegendAreaTo("previous"),i._currentPageCount-=1)}),this.lowerButton.click(function(){i._currentPageCountl.dimension.width||(r?s?(f+=p+","+(d+o),f+="H"+(p+5),f+="M"+c+","+(d+o),f+="H"+(c-5)):u?(f+=p+","+(d+o),f+="H"+(p+5)):(f+=c+","+(d+o),f+="H"+(c-5)):(f+=p+o+","+d,f+="V"+(d+5)),isNaN(o)||(e=n.path(f).attr({stroke:h}),t.set.push(e),i.ticks.push(e)))})},renderTickLine:function(t){var e,i,n,o=t.areaSize,a=o,r=t.paper,s=t.layout,u=t.isNotDividedXAxis,h=t.additionalSize,l=t.isPositionRight,c=t.isCenter,d=t.isVertical,p=t.tickColor,f="M",m=s.position.top,g=s.position.left,_=s.dimension.height+m,T=g+s.dimension.width;l?(f+=g+","+m,f+="V"+_):d?(e=m,f+=T+","+e,c?(f+="V"+_,f+="M"+g+","+e,f+="V"+_):(n=m+a,f+="V"+n)):(f+=u?g:g+h,f+=","+m+"H",i=g+a,u||(i+=h),f+=i),t.set.push(r.path(f).attr({"stroke-width":1,stroke:p}))},animateForAddingData:function(t){tui.util.forEach(this.ticks,function(e){e.animate({transform:"t-"+t+",0"},300)})},calculatePosition:function(t,e){var i=e.rotationInfo,o=n(e.text,e.theme),s=e.layout,u=a(i.isVertical,s.dimension,s.position),h={};return i.isCenter?(h.top=t.height-o/2,h.left=s.position.left+s.dimension.width/2):i.isPositionRight?(h.top=u,h.left=s.position.left+s.dimension.width):i.isVertical?(h.top=u,h.left=s.position.left+o/2):(h.top=s.position.top+s.dimension.height,h.left=u),i.isCenter||r(h,e.offset),h}});t.exports=l},function(t,e,i){"use strict";var n=i(61),o=i(6),a=8,r=3,s=tui.util.defineClass({render:function(t){var e=t.paper.set();return this.paper=t.paper,this.layout=t.layout,this.plotPositions=t.plotPositions,this.theme=t.theme,this.options=t.options,this.labelData=t.labelData,this._renderPlot(e),this._renderLabels(e),e.toBack(),this.paper.pushDownBackgroundToBottom(),e},_renderPlot:function(t){"circle"===this.options.type?this._renderCirclePlot(t):this._renderSpiderwebPlot(t),this._renderCatergoryLines(t)},_renderSpiderwebPlot:function(t){var e=this._getLinesPath(this.plotPositions);this._renderLines(e,this.theme.lineColor,t)},_renderCirclePlot:function(t){var e,i,o,a=this.plotPositions,r=a[0][0],s=this.theme.lineColor;for(e=1;e1&&!e},isDatetimeType:function(t){return t===n.AXIS_TYPE_DATETIME},isSupportPublicShowTooptipAPI:function(t){return this.isBarChart(t)||this.isColumnChart(t)||this.isLineChart(t)||this.isAreaChart(t)||this.isBoxplotChart(t)},isSupportPublicHideTooptipAPI:function(t){return this.isBarChart(t)||this.isColumnChart(t)||this.isLineChart(t)||this.isAreaChart(t)||this.isBoxplotChart(t)}};t.exports=a},function(t,e){"use strict";var i=function(t,e,i){var n,o,a;return e?(n=t[0],o=e.call(i,n,0),a=t.slice(1),tui.util.forEachArray(a,function(t,a){var r=e.call(i,t,a+1);ro&&(o=r,n=t)})):n=Math.max.apply(null,t),n},o=function(t,e,i){var n=!1;return tui.util.forEach(t,function(o,a){return e.call(i,o,a,t)&&(n=!0),!n}),n},a=function(t,e,i){var n=!!(t||[]).length;return tui.util.forEach(t,function(o,a){return e.call(i,o,a,t)||(n=!1),n!==!1}),n},r=function(t,e,i,n){var o,a=[];return tui.util.isBoolean(e)||(n=i,i=e,e=!1),i=i||function(t){return t},e?tui.util.forEachArray(t,function(e,r){e=i.call(n,e,r,t),r&&o===e||a.push(e),o=e}):tui.util.forEachArray(t,function(e,o){e=i.call(n,e,o,t),tui.util.inArray(e,a)===-1&&a.push(e)}),a},s=function(t){var e,i=[],o=n(tui.util.map(t,function(t){return t.length}));return tui.util.forEachArray(t,function(t){for(e=0;e=a&&(r=0);return o},_setSeriesColors:function(t,e,i,n){var o,r,s,u,h=this,l=0;i=i||{},tui.util.forEachArray(t,function(t){i[t]?(o=i[t].colors,s=!0):(o=i.colors||a.series.colors,s=!1),u=n[t],r=u&&u.length?u[0]&&u[0].data&&u[0].data.length?Math.max(u.length,u[0].data.length):u.length:0,e[t].colors=h._makeEachSeriesColors(o,r,!s&&l),s||(l=(r+l)%o.length)})},_initTheme:function(t,e,i,o){var r;return t!==n.DEFAULT_THEME_NAME?(r=JSON.parse(JSON.stringify(a)),this._overwriteTheme(e,r)):r=JSON.parse(JSON.stringify(e)),r.yAxis=this._createComponentThemeWithSeriesName(i,e.yAxis,r.yAxis,"yAxis"),r.series=this._createComponentThemeWithSeriesName(i,e.series,r.series,"series"),this._setSeriesColors(i,r.series,e.series,o),r},_createTargetThemesForFontInherit:function(t){var e=[t.title,t.xAxis.title,t.xAxis.label,t.legend.label,t.plot.label];return tui.util.forEach(t.yAxis,function(t){e.push(t.title,t.label)}),tui.util.forEach(t.series,function(t){e.push(t.label)}),e},_inheritThemeFont:function(t){var e=this._createTargetThemesForFontInherit(t),i=t.chart.fontFamily;tui.util.forEachArray(e,function(t){t.fontFamily||(t.fontFamily=i)})},_copySeriesColorTheme:function(t,e,i){e[i]={colors:t.colors,borderColor:t.borderColor,selectionColor:t.selectionColor}},_copySeriesColorThemeToOther:function(t){var e=this;tui.util.forEach(t.series,function(i,n){e._copySeriesColorTheme(i,t.legend,n),e._copySeriesColorTheme(i,t.tooltip,n)})},get:function(t,e,i){var n,o,a=r[t];if(!a)throw new Error("Not exist "+t+" theme.");return o=this._pickSeriesNames(e,i),n=this._initTheme(t,a,o,i),this._inheritThemeFont(n,o),this._copySeriesColorThemeToOther(n),n}}},function(t,e){"use strict";var i="#000000",n="#ffffff",o="normal",a="",r={tickColor:i,title:{fontSize:12,fontFamily:a,color:i,fontWeight:o},label:{fontSize:12,fontFamily:a,color:i,fontWeight:o}},s={chart:{background:{color:n,opacity:1},fontFamily:"Verdana"},title:{fontSize:18,fontFamily:a,color:i,fontWeight:o},yAxis:r,xAxis:r,plot:{lineColor:"#dddddd",background:"#ffffff",label:{fontSize:11,fontFamily:a,color:"#888"}},series:{label:{fontSize:11,fontFamily:a,color:i,fontWeight:o},colors:["#ac4142","#d28445","#f4bf75","#90a959","#75b5aa","#6a9fb5","#aa759f","#8f5536"],borderColor:a,borderWidth:a,selectionColor:a,startColor:"#F4F4F4",endColor:"#345391",overColor:"#F0C952",dot:{fillColor:a,fillOpacity:1,strokeColor:a,strokeOpacity:1,strokeWidth:2,radius:2,hover:{fillColor:a,fillOpacity:1,strokeColor:a,strokeOpacity:.8,strokeWidth:3,radius:4}}},legend:{label:{fontSize:12,fontFamily:a,color:i,fontWeight:o}},tooltip:{},chartExportMenu:{backgroundColor:"#fff",borderRadius:0,borderWidth:1,color:"#000"}};t.exports=s},function(t,e){"use strict";var i={};t.exports={get:function(t){var e=i[t];if(!e)throw new Error("Not exist "+t+" map.");return e},register:function(t,e){i[t]=e}}},function(t,e){"use strict";var i=function(t){var e;return tui.util.isArray(t)?(e=[],tui.util.forEachArray(t,function(t,n){e[n]=i(t)})):tui.util.isFunction(t)||tui.util.isDate(t)?e=t:tui.util.isObject(t)?(e={},tui.util.forEach(t,function(t,n){e[n]=i(t)})):e=t,e},n={deepCopy:i};t.exports=n},function(t,e,i){"use strict";function n(t){var e;return t.length>0&&(e={},e.categories=[],e.series=[],e.categories=t.shift().slice(1),tui.util.forEach(t,function(t){var i={};i.name=t[0],i.data=t.slice(1),e.series.push(i)})),e}function o(t){var e=[],i=[],n=[];return t&&(e=tui.util.toArray(t.getElementsByTagName("TR")),tui.util.forEach(e,function(t,e){var n=0===e?"TH":"TD",o=tui.util.toArray(t.getElementsByTagName(n)),a=tui.util.pluck(o,"innerText");i.push(a)}),i[0].length-1||(i.push(e),t.className=i.join(" ")))},removeClass:function(t,e){var i=this._getClassNames(t),n=tui.util.inArray(e,i);n!==-1&&(i.splice(n,1),t.className=i.join(" "))},hasClass:function(t,e){var i=this._getClassNames(t),n=tui.util.inArray(e,i);return n>-1},findParentByClass:function(t,e,i){var n,o=t.parentNode;return n=o?this.hasClass(o,e)?o:"BODY"===o.nodeName||this.hasClass(o,i)?null:this.findParentByClass(o,e,i):null},append:function(t,e){t&&e&&(e=tui.util.isArray(e)?e:[e],tui.util.forEachArray(e,function(e){e&&t.appendChild(e)}))}};t.exports=n},function(t,e){},,function(module,exports){window.JSON||(window.JSON={parse:function(sJSON){return eval("("+sJSON+")")},stringify:function(){var t=Object.prototype.toString,e=Array.isArray||function(e){return"[object Array]"===t.call(e)},i={'"':'\\"',"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t"},n=function(t){return i[t]||"\\u"+(t.charCodeAt(0)+65536).toString(16).substr(1)},o=/[\\"\u0000-\u001F\u2028\u2029]/g;return function i(a){if(null==a)return"null";if("number"==typeof a)return isFinite(a)?a.toString():"null";if("boolean"==typeof a)return a.toString();if("object"==typeof a){if("function"==typeof a.toJSON)return i(a.toJSON());if(e(a)){for(var r="[",s=0;s1,e=r.isYAxisAlignCenter(this.hasRightYAxis,t.yAxis.align),t.yAxis.isCenter=e,t.xAxis.divided=e,t.series.divided=e,t.plot.divided=e)},addComponents:function(){this.componentManager.register("title","title"),this.componentManager.register("plot","plot"),this.componentManager.register("legend","legend"),this.componentManager.register("barSeries","barSeries"),this.componentManager.register("yAxis","axis"),this.componentManager.register("xAxis","axis"),this.hasRightYAxis&&this.componentManager.register("rightYAxis","axis"),this.componentManager.register("chartExportMenu","chartExportMenu"),this.componentManager.register("tooltip","tooltip"),this.componentManager.register("mouseEventDetector","mouseEventDetector")},getScaleOption:function(){return{xAxis:!0}},onChangeCheckedLegends:function(t){var e;this.hasRightYAxis&&(e={optionChartTypes:["bar","bar"]}),n.prototype.onChangeCheckedLegends.call(this,t,null,e)},addDataRatios:function(t){var e=this.options.series||{},i=this.chartType,n=(e[i]||e).stackType;this.dataProcessor.addDataRatios(t[i],n,i)}});t.exports=s},function(t,e,i){"use strict";var n=i(2),o=i(21),a=i(80),r=i(4),s=i(14),u=i(24),h=i(90),l=i(5),c=tui.util.defineClass({init:function(t){this.theme=t.theme,this._initializeOptions(t.options),this.chartType=this.options.chartType,this.hasAxes=t.hasAxes,this.isVertical=!!t.isVertical,this.dataProcessor=this._createDataProcessor(t),this.eventBus=new tui.util.CustomEvents,this.prevXAxisData=null,this.componentManager=this._createComponentManager(),this.addComponents(),this._attachToEventBus()},_attachToEventBus:function(){this.eventBus.on("changeCheckedLegends",this.onChangeCheckedLegends,this),this.onZoom&&this.eventBus.on({zoom:this.onZoom,resetZoom:this.onResetZoom},this)},_setOffsetProperty:function(t,e,i){tui.util.isExisty(t[e])&&(t.offset=t.offset||{},t.offset[i]=t[e],delete t[e])},_initializeOffset:function(t){t&&(this._setOffsetProperty(t,"offsetX","x"),this._setOffsetProperty(t,"offsetY","y"))},_initializeTitleOptions:function(t){var e,i=this;t&&(e=tui.util.isArray(t)?t:[t],tui.util.forEachArray(e,function(t){var e=t.title;tui.util.isString(e)&&(t.title={text:e}),i._initializeOffset(t.title)}))},_initializeTooltipOptions:function(t){var e=t.position;t.grouped=!!t.grouped,this._initializeOffset(t),!t.offset&&e&&(t.offset={x:e.left,y:e.top}),delete t.position},_initializeOptions:function(t){t.chartTypes=this.charTypes,t.xAxis=t.xAxis||{},t.series=t.series||{},t.tooltip=t.tooltip||{},t.legend=t.legend||{},t.chartExportMenu=t.chartExportMenu||{},this._initializeTitleOptions(t.chart),this._initializeTitleOptions(t.xAxis),this._initializeTitleOptions(t.yAxis),tui.util.isUndefined(t.legend.visible)&&(t.legend.visible=!0),tui.util.isUndefined(t.chartExportMenu.visible)&&(t.chartExportMenu.visible=!0),this._initializeTooltipOptions(t.tooltip),this.options=t},_createDataProcessor:function(t){var e,i;return e=t.DataProcessor||a,i=new e(t.rawData,this.chartType,t.options,this.seriesTypes)},_createComponentManager:function(){return new o({options:this.options,theme:this.theme,dataProcessor:this.dataProcessor,hasAxes:this.hasAxes,eventBus:this.eventBus,isVertical:this.isVertical,seriesTypes:this.seriesTypes||[this.chartType]})},addComponents:function(){},getScaleOption:function(){},_buildBoundsAndScaleData:function(t,e){return h.build(this.dataProcessor,this.componentManager,{chartType:this.chartType,seriesTypes:this.seriesTypes,options:this.options,theme:this.theme,hasAxes:this.hasAxes,scaleOption:this.getScaleOption(),isVertical:this.isVertical,hasRightYAxis:this.hasRightYAxis,addedDataCount:this._dynamicDataHelper?this._dynamicDataHelper.addedDataCount:null,prevXAxisData:t,addingDataMode:e})},addDataRatios:function(){},readyForRender:function(t){var e=this._buildBoundsAndScaleData(this.prevXAxisData,t);return e.axisDataMap.xAxis&&(this.prevXAxisData=e.axisDataMap.xAxis),this.addDataRatios(e.limitMap),e},render:function(t){var e,i=s.create("DIV","tui-chart "+this.className),o=this.componentManager,a=this.dataProcessor,h=a.getLegendVisibility(),l=r.filterCheckedRawData(a.rawData,h),c=o.drawingToolPicker.getPaper(i,n.COMPONENT_TYPE_RAPHAEL);this.dataProcessor.initData(l),c.changeChartBackgroundColor(this.theme.chart.background.color),c.changeChartBackgroundOpacity(this.theme.chart.background.opacity),u.renderFontFamily(i,this.theme.chart.fontFamily),s.append(t,i),e=this.readyForRender(),u.renderDimension(i,e.dimensionMap.chart),o.render("render",e,{checkedLegends:h},i),this.chartContainer=i,this.paper=c},rerender:function(t,e){var i,n=this.dataProcessor;e||(e=r.filterCheckedRawData(n.getZoomedRawData(),t)),this.dataProcessor.initData(e),i=this.readyForRender(),this.componentManager.render("rerender",i,{checkedLegends:t},this.chartContainer)},onChangeCheckedLegends:function(t,e,i){this.rerender(t,e,i)},animateChart:function(){this.componentManager.execute("animateComponent")},on:function(t,e){n.PUBLIC_EVENT_MAP[t]&&this.eventBus.on(n.PUBLIC_EVENT_PREFIX+t,e)},off:function(t,e){n.PUBLIC_EVENT_MAP[t]&&this.eventBus.off(n.PUBLIC_EVENT_PREFIX+t,e)},_updateChartDimension:function(t){var e=!1,i=this.options;return i.chart=i.chart||{},t.width&&t.width>0&&i.chart.width!==t.width&&(i.chart.width=t.width,e=!0),t.height&&t.height>0&&i.chart.height!==t.height&&(i.chart.height=t.height,e=!0),e},resize:function(t){var e,i,n;t&&(e=this._updateChartDimension(t),e&&(i=this.readyForRender(),n=i.dimensionMap.chart,u.renderDimension(this.chartContainer,n),this.paper.resizeBackground(n.width,n.height),this.componentManager.render("resize",i)))},setTooltipAlign:function(t){this.componentManager.get("tooltip").setAlign(t)},setTooltipOffset:function(t){this.componentManager.get("tooltip").setOffset(t)},setTooltipPosition:function(t){this.componentManager.get("tooltip").setPosition(t)},resetTooltipAlign:function(){this.componentManager.get("tooltip").resetAlign()},resetTooltipOffset:function(){this.componentManager.get("tooltip").resetOffset()},resetTooltipPosition:function(){this.resetTooltipOffset()},showSeriesLabel:function(){var t=this.componentManager.where({componentType:"series"});tui.util.forEachArray(t,function(t){t.showLabel()})},hideSeriesLabel:function(){var t=this.componentManager.where({componentType:"series"});tui.util.forEachArray(t,function(t){t.hideLabel()})},addData:function(){},addPlotLine:function(){},addPlotBand:function(){},removePlotLine:function(){},removePlotBand:function(){},_getSeriesData:function(t,e,i){var n={index:t,seriesIndex:e,outlierIndex:i};return e<0?null:this.componentManager.get("mouseEventDetector").findDataByIndexes(n)},_findSeriesIndexByLabel:function(t,e){for(var i=this.dataProcessor.getLegendLabels(t),n=-1,o=0,a=i?i.length:0;o=0||!t&&e.prevFoundData)&&e._hideTooltip({silent:!0}))}});t.exports=c},function(t,e,i){"use strict";var n=i(2),o=i(14),a=i(22),r=i(25),s=i(26),u=i(27),h=i(29),l=i(13),c=i(35),d=i(37),p=i(38),f=i(39),m=i(45),g=i(47),_=i(48),T=i(52),v=i(59),x=i(64),y=i(65),D=i(67),A=i(68),E=i(69),C=i(71),L=i(72),S=i(73),M=i(74),P=i(75),b=i(77),k=i(78),R={axis:a,plot:r,radialPlot:u,legend:c,spectrumLegend:d,circleLegend:p,tooltip:f,groupTooltip:m,mapChartTooltip:g,mapChartEventDetector:_,mouseEventDetector:T,barSeries:v,columnSeries:x,lineSeries:y,radialSeries:D,areaSeries:A,bubbleSeries:E,scatterSeries:C,mapSeries:L,pieSeries:S,heatmapSeries:M,treemapSeries:P,boxplotSeries:b,zoom:k,chartExportMenu:h,title:s},I=tui.util.defineClass({init:function(t){var e=t.options.chart,i=tui.util.pick(e,"width")||n.CHART_DEFAULT_WIDTH,o=tui.util.pick(e,"height")||n.CHART_DEFAULT_HEIGHT;this.components=[],this.componentMap={},this.theme=t.theme||{},this.options=t.options||{},this.dataProcessor=t.dataProcessor,this.hasAxes=t.hasAxes,this.isVertical=t.isVertical,this.eventBus=t.eventBus,this.drawingToolPicker=new l,this.drawingToolPicker.initDimension({width:i,height:o}),this.seriesTypes=t.seriesTypes},_makeComponentOptions:function(t,e,i,n){return t=t||this.options[e],t=tui.util.isArray(t)?t[n]:t||{}},register:function(t,e,i){var n,o,a,r,s;i=i||{},i.name=t,n=i.index||0,r=R[e],a=r.componentType,i.chartTheme=this.theme,i.chartOptions=this.options,i.seriesTypes=this.seriesTypes,s="axis"===a?t:a,i.theme=this.theme[s],i.theme||"rightYAxis"!==s||(i.theme=this.theme.yAxis),i.options=this.options[s],"series"===s&&tui.util.forEach(this.seriesTypes,function(e){return 0!==t.indexOf(e)||(i.options=i.options[e]||i.options,i.theme=i.theme[e],tui.util.isArray(i.options)&&(i.options=i.options[n]||{}),!1)}),i.dataProcessor=this.dataProcessor,i.hasAxes=this.hasAxes,i.isVertical=this.isVertical,i.eventBus=this.eventBus,i.alternativeModel=this.alternativeModel,o=r(i),o&&(o.componentName=t,o.componentType=a,this.components.push(o),this.componentMap[t]=o)},_makeDataForRendering:function(t,e,i,n,o){var a=tui.util.extend({paper:i},o);return n&&(tui.util.extend(a,n),a.layout={dimension:a.dimensionMap[t]||a.dimensionMap[e],position:a.positionMap[t]||a.positionMap[e]}),a},render:function(t,e,i,n){var a,r,s=this,u=tui.util.map(this.components,function(o){var u,h,l,c=null;return o[t]&&(a=o.componentName,r=o.componentType,l=s.drawingToolPicker.getPaper(n,o.drawingType),u=s._makeDataForRendering(a,r,l,e,i),h=o[t](u),h&&!h.paper&&(c=h)),c});n&&o.append(n,u)},where:function(t){return tui.util.filter(this.components,function(e){var i=!0;return tui.util.forEach(t,function(t,n){return e[n]!==t&&(i=!1),i}),i})},execute:function(t){var e=Array.prototype.slice.call(arguments,1);tui.util.forEachArray(this.components,function(i){i[t]&&i[t].apply(i,e)})},get:function(t){return this.componentMap[t]},has:function(t){return!!this.get(t)}});t.exports=I},function(t,e,i){"use strict";function n(t){var e=t.chartOptions.chartType,i=t.name;return t.isYAxis="yAxis"===i||"rightYAxis"===i,t.shifting=t.chartOptions.series.shifting,"combo"===e?t.isYAxis?t.theme=t.theme[t.seriesTypes[0]]:"rightYAxis"===i&&(t.componentType="yAxis",t.theme=t.theme[t.seriesTypes[1]],t.index=1):t.isYAxis?t.theme=t.theme[e]:t.theme=t.theme,new h(t)}var o=i(2),a=i(5),r=i(23),s=i(7),u=i(24),h=tui.util.defineClass({init:function(t){this.className="tui-chart-axis-area",this.dataProcessor=t.dataProcessor,this.options=t.options||{},this.theme=tui.util.extend({},t.theme,{background:t.chartTheme.chart.background}),this.isLabelAxis=!1,this.isYAxis=t.isYAxis,this.shifting=t.shifting,this.data={},this.layout=null,this.dimensionMap=null,this.axisDataMap=null,this.graphRenderer=s.get(o.COMPONENT_TYPE_RAPHAEL,"axis"),this.drawingType=o.COMPONENT_TYPE_RAPHAEL,this.paperAdditionalWidth=0,this.paperAdditionalHeight=0,this._elBg=null},_renderBackground:function(){var t=tui.util.extend({},this.layout.dimension),e=tui.util.extend({},this.layout.position);this.isYAxis&&(t.height=this.dimensionMap.chart.height,e.top=0),this._elBg&&this._elBg.remove(),this._elBg=this.graphRenderer.renderBackground(this.paper,e,t,this.theme.background)},_renderChildContainers:function(t,e,i,n){var o=this.isYAxis&&this.data.aligned;this.isYAxis&&!this.data.isPositionRight&&!this.options.isCenter&&this.shifting&&this._renderBackground(),this._renderTitleArea(),this._renderLabelArea(t,e,i,n),o||this._renderTickArea(t,e,n)},_renderDividedAxis:function(t){var e=this.data,i=Math.round(t.width/2),n=t.width-i-1,o=e.tickCount,a=parseInt(o/2,10)+1,r=e.labels,s=r.slice(0,a),u=r.slice(a-1,o),h=i/a,l=i+this.dimensionMap.yAxis.width-1;this.paperAdditionalWidth=h,this._renderChildContainers(i,a,s,0),this._renderChildContainers(n+1,a,u,l)},_renderNotDividedAxis:function(t){var e=this.data,i=this.isYAxis,n=i?t.height:t.width,o=0;e.positionRatio&&(o=n*e.positionRatio),this._renderChildContainers(n,e.tickCount,e.labels,o)},_renderAxisArea:function(){var t=this.layout.dimension,e=this.data;this.isLabelAxis=e.isLabelAxis,this.options.divided?(this.containerWidth=t.width+this.dimensionMap.yAxis.width,this._renderDividedAxis(t),t.width=this.containerWidth):(t.width+=this.options.isCenter?1:0,this._renderNotDividedAxis(t))},_setDataForRendering:function(t){this.layout=t.layout,this.dimensionMap=t.dimensionMap,this.data=t.axisDataMap[this.componentName],this.options=this.data.options},render:function(t){this.paper=t.paper,this.axisSet=t.paper.set(),this._setDataForRendering(t),this._renderAxisArea()},rerender:function(t){this.axisSet.remove(),this.render(t)},resize:function(t){this.rerender(t)},zoom:function(t){this.rerender(t)},_renderTitleArea:function(){var t=this.options.title||{};t.text&&this.graphRenderer.renderTitle(this.paper,{text:t.text,offset:t.offset,theme:this.theme.title,rotationInfo:{rotateTitle:this.options.rotateTitle,isVertical:this.isYAxis,isPositionRight:this.data.isPositionRight,isCenter:this.options.isCenter},layout:this.layout,set:this.axisSet})},_renderTickLine:function(t,e,i){this.graphRenderer.renderTickLine({areaSize:t,additionalSize:i,additionalWidth:this.paperAdditionalWidth,additionalHeight:this.paperAdditionalHeight,isPositionRight:this.data.isPositionRight,isCenter:this.data.options.isCenter,isNotDividedXAxis:e,isVertical:this.isYAxis,tickColor:this.theme.tickColor,layout:this.layout,paper:this.paper,set:this.axisSet})},_renderTicks:function(t,e,i,n){var o=this.theme.tickColor,a=this.data,s=a.sizeRatio||1,u=this.isYAxis,h=this.data.options.isCenter,l=this.data.isPositionRight,c=r.makeTickPixelPositions(t*s,e),d=this.paperAdditionalHeight+1,p=this.paperAdditionalWidth;c.length=a.tickCount,this.graphRenderer.renderTicks({paper:this.paper,layout:this.layout,positions:c,isVertical:u,isCenter:h,additionalSize:n,additionalWidth:p,additionalHeight:d,isPositionRight:l,tickColor:o,set:this.axisSet})},_renderTickArea:function(t,e,i){var n=!this.isYAxis&&!this.options.divided;this._renderTickLine(t,n,i||0),this._renderTicks(t,e,n,i||0)},_renderLabelArea:function(t,e,i,n){var o=this.data.sizeRatio||1,a=r.makeTickPixelPositions(t*o,e,0),s=a[1]-a[0];this._renderLabels(a,i,s,n||0)},_renderRotationLabels:function(t,e,i,n){var a=this,r=this.graphRenderer,s=this.isYAxis,u=this.theme.label,h=this.data.degree,l=i/2,c=this.layout.position.top+o.AXIS_LABEL_PADDING,d=this.layout.position.left;tui.util.forEach(t,function(t,o){var p=t+(n||0),f={};s?(f.top=p+l,f.left=i):(f.top=c,f.left=d+p,a.isLabelAxis&&(f.left+=l)),r.renderRotatedLabel({degree:h,labelText:e[o],paper:a.paper,positionTopAndLeft:f,set:a.axisSet,theme:u})})},_renderNormalLabels:function(t,e,i,n){var r=this,s=this.graphRenderer,u=this.isYAxis,h=this.data.isPositionRight,l=this.isLabelAxis,c=this.theme.label,d=this.dataProcessor,p=a.isLineTypeChart(d.chartType,d.seriesTypes),f=p&&this.options.pointOnColumn,m=this.layout;tui.util.forEach(t,function(t,a){var d,g,_=t+n,T=i/2,v={};u?(d=_,l?d+=T+m.position.top:d=m.dimension.height+m.position.top-d,g=h?m.position.left+o.AXIS_LABEL_PADDING:m.position.left+m.dimension.width-o.AXIS_LABEL_PADDING):(d=m.position.top+o.CHART_PADDING+o.AXIS_LABEL_PADDING,g=_+m.position.left,l&&(p&&!f||(g+=T))),v.top=Math.round(d),v.left=Math.round(g),s.renderLabel({isPositionRight:h,isVertical:u,labelSize:i,labelText:e[a],paper:r.paper,positionTopAndLeft:v,set:r.axisSet,theme:c})})},_renderLabels:function(t,e,i,n){var o,a=!this.isYAxis&&this.isLabelAxis&&this.options.rotateLabel===!1,r="xAxis"===this.componentName&&this.data.degree;o=a?this.data.multilineLabels:e,o.length&&(t.length=o.length),o=u.addPrefixSuffix(o,this.options.prefix,this.options.suffix),r?this._renderRotationLabels(t,o,i,n):this._renderNormalLabels(t,o,i,n)},animateForAddingData:function(t){this.isYAxis||this.graphRenderer.animateForAddingData(t.tickSize)}});n.componentType="axis",n.Axis=h,t.exports=n},function(t,e,i){"use strict";var n=i(6),o=100,a={calculateLimit:function(t,e){var i,n=0,o={};return t<0&&(n=t,e-=t,t=0),i=(e-t)/20,o.max=e+i+n,e/6>t?o.min=n:o.min=t-i+n,o},makeTickPixelPositions:function(t,e,i){var n=[];return i=i||0,e>0&&(n=tui.util.map(tui.util.range(0,e),function(n){var o=0===n?0:n/(e-1);return o*t+i}),n[n.length-1]-=1),n},makeLabelsFromLimit:function(t,e){var i=a.findMultipleNum(e),n=Math.round(t.min*i),o=Math.round(t.max*i),r=tui.util.range(n,o+1,e*i);return tui.util.map(r,function(t){return t/i})},calculateStepFromLimit:function(t,e){return a.divide(a.subtract(t.max,t.min),e-1)},sumPlusValues:function(t){var e=tui.util.filter(t,function(t){return t>0});return a.sum(e)},sumMinusValues:function(t){var e=tui.util.filter(t,function(t){return t<0});return a.sum(e)},makePercentageValue:function(t,e){return t/e*o},calculateRatio:function(t,e,i,n){return(t-i)/e*n}},r=function(t){var e=String(t).split(".");return 2===e.length?e[1].length:0},s=function(){var t=[].slice.call(arguments),e=tui.util.map(t,function(t){return a.getDecimalLength(t)}),i=n.max(e);return Math.pow(10,i)},u=function(t,e){var i,n=a.findMultipleNum(e);return i=1===n?t%e:t*n%(e*n)/n},h=function(t,e){var i=a.findMultipleNum(t,e);return(t*i+e*i)/i},l=function(t,e){var i=a.findMultipleNum(t,e);return(t*i-e*i)/i},c=function(t,e){var i=a.findMultipleNum(t,e);return t*i*(e*i)/(i*i)},d=function(t,e){var i=a.findMultipleNum(t,e);return t*i/(e*i)},p=function(t){var e=t.slice();return e.unshift(0),tui.util.reduce(e,function(t,e){return a.add(parseFloat(t),parseFloat(e))})};a.getDecimalLength=r,a.findMultipleNum=s,a.mod=u,a.add=h,a.subtract=l,a.multiply=c,a.divide=d,a.sum=p,t.exports=a},function(t,e,i){"use strict";function n(t,e){t=tui.util.isArray(t)?t:[t],tui.util.forEachArray(t,e)}function o(t){return"alpha(opacity="+t*a.OLD_BROWSER_OPACITY_100+")"}var a=i(2),r=i(14),s=i(6),u=Array.prototype.concat,h=tui.util.browser,l=h.msie&&7===h.version,c=h.msie&&h.version<=8,d=window.getComputedStyle||!1,p={concatStr:function(){return String.prototype.concat.apply("",arguments)},makeFontCssText:function(t){var e=[];return t?(t.fontSize&&e.push(this.concatStr("font-size:",t.fontSize,"px")),t.fontFamily&&e.push(this.concatStr("font-family:",t.fontFamily)),t.color&&e.push(this.concatStr("color:",t.color)),t.fontWeight&&e.push(this.concatStr("font-weight:",t.fontWeight)),e.join(";")):""},checkEl:null,_createSizeCheckEl:function(){var t,e;return this.checkEl?this.checkEl.style.cssText="":(t=r.create("DIV","tui-chart-size-check-element"),e=r.create("SPAN"),t.appendChild(e),this.checkEl=t),this.checkEl},_makeCachingKey:function(t,e,i){var n=[t,i];return tui.util.forEach(e,function(t,e){n.push(t+e)}),n.join("-")},_addCssStyle:function(t,e){t.style.fontSize=(e.fontSize||a.DEFAULT_LABEL_FONT_SIZE)+"px",e.fontFamily&&(t.style.fontFamily=e.fontFamily),e.fontWeight&&(t.style.fontWeight=e.fontWeight),e.cssText&&(t.style.cssText+=e.cssText)},sizeCache:{},_getRenderedLabelSize:function(t,e,i){var n,o,a,r;return e=e||{},(t=tui.util.isExisty(t)?String(t):"")?(n=this._makeCachingKey(t,e,i),r=this.sizeCache[n],r||(o=this._createSizeCheckEl(),a=o.firstChild,a.innerHTML=t,this._addCssStyle(o,e),document.body.appendChild(o),r=a[i],document.body.removeChild(o),this.sizeCache[n]=r),r):0},getRenderedLabelWidth:function(t,e){var i=this._getRenderedLabelSize(t,e,"offsetWidth");return i},getRenderedLabelHeight:function(t,e){var i=this._getRenderedLabelSize(t,e,"offsetHeight");return i},_getRenderedLabelsMaxSize:function(t,e,i){var n,o=0;return t&&t.length&&(n=tui.util.map(t,function(t){return i(t,e)}),o=s.max(n)),o},getRenderedLabelsMaxWidth:function(t,e){var i=tui.util.bind(this.getRenderedLabelWidth,this),n=this._getRenderedLabelsMaxSize(t,e,i);return n},getRenderedLabelsMaxHeight:function(t,e){var i=tui.util.bind(this.getRenderedLabelHeight,this),n=this._getRenderedLabelsMaxSize(t,e,i);return n},renderDimension:function(t,e){t.style.cssText=[this.concatStr("width:",e.width,"px"),this.concatStr("height:",e.height,"px")].join(";")},renderPosition:function(t,e){tui.util.isUndefined(e)||tui.util.forEachArray(["top","bottom","left","right"],function(i){var n=e[i];tui.util.isNumber(n)&&(t.style[i]=e[i]+"px")})},renderBackground:function(t,e){e&&(t.style.background=e)},renderFontFamily:function(t,e){e&&(t.style.fontFamily=e)},renderTitle:function(t,e,i){var n,o;return t?(n=r.create("DIV",i),n.innerHTML=t,o=p.makeFontCssText(e),e.background&&(o+=";"+this.concatStr("background:",e.background)),n.style.cssText=o,n):null},expandBound:function(t){var e=t.dimension,i=t.position;return{dimension:{width:e.width+2*a.SERIES_EXPAND_SIZE,height:e.height+2*a.SERIES_EXPAND_SIZE},position:{left:i.left-a.SERIES_EXPAND_SIZE,top:i.top-a.SERIES_EXPAND_SIZE}}},_properCase:function(t){return t.substring(0,1).toUpperCase()+t.substring(1)},makeMouseEventDetectorName:function(t,e,i){return t+this._properCase(e)+this._properCase(i)},formatValue:function(t,e,i,n,o){var a=[String(t)].concat(e||[]);return o=o||"value",tui.util.reduce(a,function(t,e){return e(t,i,n,o)})},formatValues:function(t,e,i,n,o){var a;return e&&e.length?a=tui.util.map(t,function(t){return p.formatValue(t,e,i,n,o)}):t},formatDate:function(t,e){var i=tui.util.isDate(t)?t:new Date(t);return e=e||a.DEFAULT_DATE_FORMAT,tui.util.formatDate(e,i)||t},formatDates:function(t,e){var i=this.formatDate;return e=e||a.DEFAULT_DATE_FORMAT,tui.util.map(t,function(t){return i(t,e)})},cancelAnimation:function(t){t&&t.id&&(cancelAnimationFrame(t.id),delete t.id)},startAnimation:function(t,e,i){function n(){var r=(new Date).getTime()-o,s=Math.min(r/t,1);e(s),1===s?(delete a.id,i&&i()):a.id=requestAnimationFrame(n)}var o,a={};return o=(new Date).getTime(),a.id=requestAnimationFrame(n),a},isIE7:function(){return l},isOldBrowser:function(){return c},formatToZeroFill:function(t,e){var i="0";if(t=String(t),t.length>=e)return t;for(;t.length-1?"-":"",t.indexOf(".")>-1?(i=t.split("."),t=String(Math.abs(i[0])),r="."+i[1]):t=String(Math.abs(t)),t.length<=s?o=h:(i=t.split("").reverse(),n=i.length-1,i=tui.util.map(i,function(t,e){var i=[t];return e0?e.length-1:0,n=e[0],o=e[i],t[0]<=n&&t[1]>=o):this.dataProcessor.containedAllVisibleCategory(t[0],t[1])},_renderOptionalLine:function(t,e,i,n){var o,a=this._createOptionalLinePositionMap(n,t,e);return u.isExisty(a.start)&&a.start>=0&&a.start<=e&&(i.width=1,i.color=n.color||"transparent",i.opacity=n.opacity,o=this._renderLine(a.start+this.layout.position.left,i)),o},_makeOptionalBand:function(t,e,i,o){var a,r=o.range;return r&&r.length&&this._makeRangeTo2DArray(o),a=h(o.range,function(i){return this._createOptionalLinePositionMap({range:i},t,e)},this),o.mergeOverlappingRanges&&(a.sort(n),a=this._mergeOverlappingPositionMaps(a)),h(a,function(t){var n,a=t.end-t.start,r=u.isExisty(t.start)&&t.start>=0&&t.start<=e;return r&&(i.color=o.color||"transparent",i.opacity=o.opacity,n=this._renderBand(t.start+this.layout.position.left,a,i)),n},this)},_makeOptionalLines:function(t,e){var i=e.width,n=this.axisDataMap.xAxis,o=this._makeVerticalLineTemplateParams({height:e.height+"px"}),a=u.bind(this._renderOptionalLine,this,n,i,o);return h(t,a)},_makeOptionalBands:function(t,e){var i=e.width,n=this.axisDataMap.xAxis,o=this._makeVerticalLineTemplateParams({height:e.height+"px"}),a=u.bind(this._makeOptionalBand,this,n,i,o);return h(t,a)},_renderOptionalLines:function(t,e){var i=[];i.concat(this._makeOptionalBands(this.options.bands,e)),i.concat(this._makeOptionalLines(this.options.lines,e)),this.optionalLines=i},_renderVerticalLines:function(t,e){var i=this._makeHorizontalPositions(t.width),n=this,o=this.layout,a=o.position.left,r=o.position.top;u.forEach(i,function(t){var i="M"+(t+a)+","+r+"V"+(r+o.dimension.height),s=n.paper.path(i);s.attr({stroke:e,"stroke-width":1}),n.plotSet.push(s)})},_renderHorizontalLines:function(t,e){var i=this._makeVerticalPositions(t.height),n=this,o=this.layout,a=o.position.left,r=o.position.top,s=i[1]-i[0];u.forEach(i,function(t,i){var u="M"+a+","+(s*i+r)+"H"+(a+o.dimension.width),h=n.paper.path(u);h.attr({stroke:e,"stroke-width":1}),n.plotSet.push(h)})},_renderPlotLines:function(t,e){var i=this.theme;r.isLineTypeChart(this.chartType)||this._renderVerticalLines(e,i.lineColor),this._renderHorizontalLines(e,i.lineColor)},_makeVerticalPositions:function(t){var e=this.axisDataMap,i=e.yAxis||e.rightYAxis,n=s.makeTickPixelPositions(t,i.validTickCount);return n.shift(),n},_makeDividedPlotPositions:function(t,e){var i,n,o,a,r=this.dimensionMap.yAxis.width;return e=parseInt(e/2,10)+1,t-=r,i=Math.round(t/2),n=t-i,o=s.makeTickPixelPositions(i,e),a=s.makeTickPixelPositions(n,e,i+r),o.pop(),a.shift(),o.concat(a)},_makeHorizontalPositions:function(t){var e,i=this.axisDataMap.xAxis.validTickCount;return this.options.divided?e=this._makeDividedPlotPositions(t,i):(e=s.makeTickPixelPositions(t,i),e.shift()),e},addPlotLine:function(t){this.options.lines.push(t),this.rerender()},addPlotBand:function(t){this.options.bands.push(t),this.rerender()},removePlotLine:function(t){this.options.lines=u.filter(this.options.lines,function(e){return e.id!==t}),this.rerender()},removePlotBand:function(t){this.options.bands=u.filter(this.options.bands,function(e){return e.id!==t}),this.rerender()},animateForAddingData:function(t){var e=this;this.dataProcessor.isCoordinateType()||t.shifting&&u.forEach(this.optionalLines,function(i){var n=i.getBBox();n.x-t.tickSize0&&a<180?"end":a>180&&a<360?"start":"middle",f.push({left:i.x,top:u-i.y,anchor:e});return f}function a(t){return new h(t)}var r=i(28),s=i(2),u=i(7),h=tui.util.defineClass({className:"tui-chart-plot-area",init:function(t){this.options=tui.util.extend({type:"spiderweb"},t.options),this.theme=t.theme||{},this.graphRenderer=u.get(s.COMPONENT_TYPE_RAPHAEL,"radialPlot"),this.drawingType=s.COMPONENT_TYPE_RAPHAEL},_renderPlotArea:function(t,e,i,n){var o={paper:t,layout:e,plotPositions:i,labelData:n,theme:this.theme,options:this.options};return this.graphRenderer.render(o)},_makePositions:function(t,e){var i=e.dimension.width-s.RADIAL_PLOT_PADDING-s.RADIAL_MARGIN_FOR_CATEGORY,o=e.dimension.height-s.RADIAL_PLOT_PADDING-s.RADIAL_MARGIN_FOR_CATEGORY,a=i/2+s.RADIAL_PLOT_PADDING/2+s.RADIAL_MARGIN_FOR_CATEGORY/2+e.position.left,r=o/2-s.RADIAL_PLOT_PADDING/2-s.RADIAL_MARGIN_FOR_CATEGORY/2-e.position.top,u=t.yAxis.tickCount,h=t.xAxis.labels.length;return n({width:i,height:o,centerX:a,centerY:r,angleStepCount:h,stepCount:u})},_makeCategoryPositions:function(t,e){var i=e.dimension.width-s.RADIAL_PLOT_PADDING-s.RADIAL_CATEGORY_PADDING,n=e.dimension.height-s.RADIAL_PLOT_PADDING-s.RADIAL_CATEGORY_PADDING,a=i/2+s.RADIAL_PLOT_PADDING/2+s.RADIAL_CATEGORY_PADDING/2+e.position.left,r=n/2-s.RADIAL_PLOT_PADDING/2-s.RADIAL_CATEGORY_PADDING/2-e.position.top,u=t.xAxis.labels.length;return o({width:i,height:n,centerX:a,centerY:r,angleStepCount:u})},_makeLabelData:function(t,e,i){var n,o,a=t.xAxis.labels,r=t.yAxis.labels,s=this._makeCategoryPositions(t,e),u=[],h=[];for(n=0;n",tui.util.forEach(t,function(t,o){var a=0!==i||0===o?' class="number"':"",r="<"+n+a+">"+t+"";e+=r}),e+=""}),e+=""}function a(t){var e=''+o(t)+"";return window.btoa(unescape(encodeURIComponent(e)))}function r(t,e){var i="",n=e&&e.lineDelimiter||"\n",o=e&&e.itemDelimiter||",",a=t.length-1;return tui.util.forEachArray(t,function(t,e){var r=t.length-1;tui.util.forEachArray(t,function(t,e){var n=tui.util.isNumber(t)?t:'"'+t+'"';i+=n,e0?(this.legendModel.updateCheckedLegendsWith(e),this._checkLegend()):this.legendModel.toggleCheckedIndex(t)},_labelClick:function(t){this._selectLegend(t)},_listenEvents:function(){this.eventBus.on("checkboxClicked",this._checkboxClick,this),this.eventBus.on("labelClicked",this._labelClick,this)}});tui.util.CustomEvents.mixin(h),n.componentType="legend",n.Legend=h,t.exports=n},function(t,e){"use strict";var i=Array.prototype.concat,n=tui.util.forEachArray,o=tui.util.defineClass({init:function(t){this.theme=t.theme,this.labels=t.labels,this.legendData=t.legendData,this.seriesTypes=t.seriesTypes||[],this.chartType=t.chartType,this.data=null,this.selectedIndex=null,this.checkedIndexesMap={},this.checkedWholeIndexes=[],this._setData(),this._initCheckedIndexes()},_initCheckedIndexes:function(){var t=this,e=[];n(this.legendData,function(i,n){i.visible&&e.push(n),t.checkedWholeIndexes[n]=i.visible}),this.updateCheckedLegendsWith(e)},_setThemeToLegendData:function(t,e,i){var o=0;n(t,function(t,n){var a={color:e.colors[n]};e.borderColor&&(a.borderColor=e.borderColor),t.theme=a,t.index=n,i&&tui.util.isUndefined(i[n])?t.seriesIndex=-1:(t.seriesIndex=o,o+=1)})},_setData:function(){var t,e,n=this,o=this.theme,a=this.chartType,r=this.seriesTypes,s=this.legendData,u=this.checkedIndexesMap;!r||r.length<2?(this._setThemeToLegendData(s,o[a],u[a]),t=s):(e=0,t=i.apply([],tui.util.map(r,function(t){var i,a,r=n.labels[t].length,h=e+r;return i=s.slice(e,h),a=u[t],e=h,n._setThemeToLegendData(i,o[t],a),i}))),this.data=t},getData:function(){return this.data},getDatum:function(t){return this.data[t]},getDatumByLabel:function(t){var e=null;return n(this.data,function(i){return i.label===t&&(e=i),!e}),e},getSelectedDatum:function(){return this.getDatum(this.selectedIndex)},updateSelectedIndex:function(t){this.selectedIndex=t},toggleSelectedIndex:function(t){var e;e=this.selectedIndex===t?null:t,this.updateSelectedIndex(e)},getSelectedIndex:function(){return this.selectedIndex},isUnselectedIndex:function(t){return!tui.util.isNull(this.selectedIndex)&&this.selectedIndex!==t},isCheckedSelectedIndex:function(){return this.isCheckedIndex(this.selectedIndex)},toggleCheckedIndex:function(t){this.checkedWholeIndexes[t]=!this.checkedWholeIndexes[t]},_updateCheckedIndex:function(t){this.checkedWholeIndexes[t]=!0},isCheckedIndex:function(t){return!!this.checkedWholeIndexes[t]},_addSendingDatum:function(t){var e=this.getDatum(t);this.checkedIndexesMap[e.chartType]||(this.checkedIndexesMap[e.chartType]=[]),this.checkedIndexesMap[e.chartType][e.index]=!0},checkSelectedIndex:function(){this._updateCheckedIndex(this.selectedIndex),this._addSendingDatum(this.selectedIndex),this._setData()},getCheckedIndexes:function(){return this.checkedIndexesMap},_resetCheckedData:function(){this.checkedWholeIndexes=[],this.checkedIndexesMap={}},updateCheckedLegendsWith:function(t){var e=this;this._resetCheckedData(),n(t,function(t){e._updateCheckedIndex(t),e._addSendingDatum(t)}),this._setData()}});t.exports=o},function(t,e,i){"use strict";function n(t){var e=!!tui.util.isUndefined(t.options.visible)||t.options.visible,i=t.chartOptions.chartType,n=null;return e&&(t.chartType=i,n=new s(t)),n}var o=i(2),a=i(5),r=i(7),s=tui.util.defineClass({init:function(t){var e=t.libType;this.chartType=t.chartType,this.theme=t.theme,this.options=t.options||{},this.dataProcessor=t.dataProcessor,this.colorSpectrum=t.colorSpectrum,this.eventBus=t.eventBus,this.graphRenderer=r.get(e,"mapLegend"),this.isHorizontal=a.isHorizontalLegend(this.options.align),this.scaleData=null,this.drawingType=o.COMPONENT_TYPE_RAPHAEL,this._attachToEventBus()},_attachToEventBus:function(){this.eventBus.on({showWedge:this.onShowWedge,hideTooltip:this.onHideWedge},this),this.eventBus.on("beforeImageDownload",tui.util.bind(this._removeLocationURLFromFillAttribute,this)),this.eventBus.on("afterImageDownload",tui.util.bind(this._restoreLocationURLToFillAttribute,this))},_removeLocationURLFromFillAttribute:function(){this.graphRenderer.removeLocationURLFromFillAttribute()},_restoreLocationURLToFillAttribute:function(){this.graphRenderer.restoreLocationURLToFillAttribute()},_makeBaseDataToMakeTickArea:function(){var t=this.layout.dimension,e=this.scaleData,i=e.stepCount||e.tickCount-1,n={};return n.position=this.layout.position,this.isHorizontal?(n.step=t.width/i,n.position.top+=o.MAP_LEGEND_GRAPH_SIZE+o.MAP_LEGEND_LABEL_PADDING):(n.step=t.height/i,n.position.left+=o.MAP_LEGEND_GRAPH_SIZE+o.MAP_LEGEND_LABEL_PADDING),n},_renderTickArea:function(t){this.graphRenderer.renderTicksAndLabels(this.paper,this._makeBaseDataToMakeTickArea(),this.scaleData.labels,this.isHorizontal,t)},_makeVerticalGraphDimension:function(){return{width:o.MAP_LEGEND_GRAPH_SIZE,height:this.layout.dimension.height}},_makeHorizontalGraphDimension:function(){return{width:this.layout.dimension.width+10,height:o.MAP_LEGEND_GRAPH_SIZE}},_renderGraph:function(t){var e;e=this.isHorizontal?this._makeHorizontalGraphDimension():this._makeVerticalGraphDimension(),this.graphRenderer.render(this.paper,{dimension:e,position:this.layout.position},this.colorSpectrum,this.isHorizontal,t)},_renderLegendArea:function(){var t=this.paper.set();return this._renderGraph(t),this._renderTickArea(t),t},_setDataForRendering:function(t){this.layout=t.layout,this.paper=t.paper,this.scaleData=t.legendScaleData},render:function(t){this._setDataForRendering(t),this.legnedSet=this._renderLegendArea()},rerender:function(t){this.legnedSet.remove(),this.render(t)},resize:function(t){this.rerender(t)},onShowWedge:function(t){this.graphRenderer.showWedge(o.MAP_LEGEND_SIZE*t)},onHideWedge:function(){this.graphRenderer.hideWedge()}});n.componentType="legend",n.SpectrumLegend=s,t.exports=n},function(t,e,i){"use strict";function n(t){var e,i=t.chartOptions.chartType,n=t.chartTheme,o=tui.util.pick(t.chartOptions,"circleLegend","visible"),a=null;return e=!!tui.util.isUndefined(o)||o,e&&(t.chartType=i,t.baseFontFamily=n.chart.fontFamily,a=new u(t)),a}var o=i(2),a=i(23),r=i(24),s=i(7),u=tui.util.defineClass({circleRatios:[1,.5,.25],init:function(t){var e=t.libType;this.chartType=t.chartType,this.dataProcessor=t.dataProcessor,this.labelTheme={fontSize:o.CIRCLE_LEGEND_LABEL_FONT_SIZE,fontFamily:t.baseFontFamily},this.graphRenderer=s.get(e,"circleLegend"),this.layout=null,this.maxRadius=null,this.drawingType=o.COMPONENT_TYPE_RAPHAEL},_formatLabel:function(t,e){var i,n=this.dataProcessor.getFormatFunctions();return i=0===e?String(parseInt(t,10)):r.formatToDecimal(String(t),e),r.formatValue(i,n,this.chartType,"circleLegend","r")},_makeLabels:function(){var t=this,e=this.dataProcessor.getMaxValue(this.chartType,"r"),i=a.getDecimalLength(e);return tui.util.map(this.circleRatios,function(n){return t._formatLabel(e*n,i)})},_render:function(t){return this.graphRenderer.render(t,this.layout,this.maxRadius,this.circleRatios,this._makeLabels())},_setDataForRendering:function(t){this.layout=t.layout,this.maxRadius=t.maxRadius},render:function(t){this._setDataForRendering(t),this.circleLegendSet=this._render(t.paper)},rerender:function(t){this.circleLegendSet.remove(),this._setDataForRendering(t),this.circleLegendSet=this._render(t.paper)},resize:function(t){this.rerender(t)}});n.componentType="legend",n.CircleLegend=u,t.exports=n},function(t,e,i){"use strict";function n(t,e,i){var n,o=(100*t.ratio).toFixed(4),a=parseFloat(o),r=a<9e-4||o.length>5;return o=r?o.substr(0,4):String(a),n=o+" % "||"",e.ratioLabel=i+n,e.label=t.tooltipLabel||(t.label?t.label:""),e}function o(t){var e,i=t.chartOptions.chartType,o=t.seriesTypes,h=t.chartOptions.xAxis,l=[];return tui.util.forEach(tui.util.filter(t.chartTheme.legend,function(t){return tui.util.isArray(t.colors)}),function(t){l=l.concat(t.colors)}),e="map"===i?s:t.options.grouped?r:a,("pie"===i||u.isPieDonutComboChart(i,o))&&(t.labelFormatter=n),t.chartType=i,t.chartTypes=o,t.xAxisType=h.type,t.dateFormat=h.dateFormat,t.colors=l,e(t)}var a=i(40),r=i(45),s=i(47),u=i(5);o.componentType="tooltip",t.exports=o},function(t,e,i){"use strict";function n(t){return new h(t)}var o=i(41),a=i(42),r=i(2),s=i(5),u=i(43),h=tui.util.defineClass(o,{init:function(){o.apply(this,arguments)},_makeTooltipHtml:function(t,e){var i,n=s.isPieChart(this.chartType)||s.isPieDonutComboChart(this.chartType,this.chartTypes);return s.isBoxplotChart(this.chartType)?tui.util.isNumber(e.outlierIndex)?(i=u.tplBoxplotChartOutlier,e.label=e.outliers[e.outlierIndex].label):i=u.tplBoxplotChartDefault:i=n?u.tplPieChart:this.dataProcessor.coordinateType?u.tplCoordinatetypeChart:u.tplDefault,i(tui.util.extend({categoryVisible:t?"show":"hide",category:t},e))},_makeHtmlForValueTypes:function(t,e){return tui.util.map(e,function(e){return t[e]?"
"+e+": "+t[e]+"
":""}).join("")},_makeSingleTooltipHtml:function(t,e){var i=e.groupIndex,n=tui.util.extend({},tui.util.pick(this.data,t,e.groupIndex,e.index));return s.isBoxplotChart(this.chartType)&&tui.util.isNumber(e.outlierIndex)&&(n.outlierIndex=e.outlierIndex),n=tui.util.extend({suffix:this.suffix},n),n.valueTypes=this._makeHtmlForValueTypes(n,["x","y","r"]),this.templateFunc(n.category,n,this.getRawCategory(i))},_setDefaultTooltipPositionOption:function(){this.options.align||(this.isVertical?this.options.align=r.TOOLTIP_DEFAULT_ALIGN_OPTION:this.options.align=r.TOOLTIP_DEFAULT_HORIZONTAL_ALIGN_OPTION)},_makeShowTooltipParams:function(t,e){var i,n,o=t.index,a=this.dataProcessor.getLegendItem(o);return a?(i=a.chartType,n=tui.util.extend({chartType:i,legend:a.label,legendIndex:o,index:t.groupIndex},e),s.isBoxplotChart(i)&&tui.util.isNumber(t.outlierIndex)&&(n.outlierIndex=t.outlierIndex),n):null},_makeTooltipDatum:function(t,e,i){var n=t&&i.label?": ":"",o=i.tooltipLabel,a=this.labelFormatter,r={legend:t||""};return r.label=o||(i.label?n+i.label:""),a&&(r=a(i,r,n)),r.category=e||"",tui.util.extend(r,i.pickValueMapForTooltip())},makeTooltipData:function(){var t=this,e=this.dataProcessor.getLegendLabels(),i=s.isTreemapChart(this.chartType),n={},o={};return tui.util.isArray(e)?n[this.chartType]=e:n=e,this.dataProcessor.eachBySeriesGroup(function(e,i,a){var r;a=a||t.chartType,r=e.map(function(e,o){var r=t.dataProcessor.makeTooltipCategory(i,o,t.isVertical);return e?t._makeTooltipDatum(n[a][o],r,e):null}),o[a]||(o[a]=[]),o[a].push(r)},i),o}});a.mixin(h),n.componentType="tooltip",n.NormalTooltip=h,t.exports=n},function(t,e,i){"use strict";var n=i(2),o=i(14),a=i(5),r=i(24),s=tui.util.defineClass({init:function(t){var e=a.isPieChart(t.chartType);this.chartType=t.chartType,this.chartTypes=t.chartTypes,this.dataProcessor=t.dataProcessor,this.options=t.options,this.colors=t.colors,this.theme=t.theme,this.isVertical=t.isVertical,this.eventBus=t.eventBus,this.labelTheme=t.labelTheme,this.xAxisType=t.xAxisType,this.dateFormat=t.dateFormat,this.labelFormatter=t.labelFormatter,this.className="tui-chart-tooltip-area",this.tooltipContainer=null,this.suffix=this.options.suffix?" "+this.options.suffix:"",this.templateFunc=this.options.template||tui.util.bind(this._makeTooltipHtml,this),this.animationTime=e?n.TOOLTIP_PIE_ANIMATION_TIME:n.TOOLTIP_ANIMATION_TIME,this.data=[],this.layout=null,this.dimensionMap=null,this.positionMap=null,this.drawingType=n.COMPONENT_TYPE_DOM,this._setDefaultTooltipPositionOption(),this._saveOriginalPositionOptions(),this._attachToEventBus()},_attachToEventBus:function(){this.eventBus.on({showTooltip:this.onShowTooltip,hideTooltip:this.onHideTooltip},this),this.onShowTooltipContainer&&this.eventBus.on({showTooltipContainer:this.onShowTooltipContainer,hideTooltipContainer:this.onHideTooltipContainer},this)},_makeTooltipHtml:function(){},_setDefaultTooltipPositionOption:function(){},_saveOriginalPositionOptions:function(){this.orgPositionOptions={align:this.options.align,offset:this.options.offset}},makeTooltipData:function(){},_setDataForRendering:function(t){this.layout=t.layout,this.dimensionMap=t.dimensionMap,this.positionMap=t.positionMap},render:function(t){var e=t.paper;return o.addClass(e,this.className),this._setDataForRendering(t),this.data=this.makeTooltipData(),r.renderPosition(e,this.layout.position),this.tooltipContainer=e,e},rerender:function(t){this.resize(t),this.data=this.makeTooltipData()},resize:function(t){this._setDataForRendering(t),r.renderPosition(this.tooltipContainer,this.layout.position),this.positionModel&&this.positionModel.updateBound(this.layout)},zoom:function(){this.data=this.makeTooltipData()},_getTooltipElement:function(){var t;return this.tooltipElement||(this.tooltipElement=t=o.create("DIV","tui-chart-tooltip"),o.append(this.tooltipContainer,t)),this.tooltipElement},onShowTooltip:function(t){var e,i=this._getTooltipElement(),n=a.isComboChart(this.chartType)&&a.isScatterChart(t.chartType);a.isChartToDetectMouseEventOnSeries(t.chartType)&&!n||!i.offsetWidth||(e={left:i.offsetLeft,top:i.offsetTop}),this._showTooltip(i,t,e)},getTooltipDimension:function(t){return{width:t.offsetWidth,height:t.offsetHeight}},_moveToPosition:function(t,e,i){i?this._slideTooltip(t,i,e):r.renderPosition(t,e)},_slideTooltip:function(t,e,i){var n=i.top-e.top,o=i.left-e.left;r.cancelAnimation(this.slidingAnimation),this.slidingAnimation=r.startAnimation(this.animationTime,function(i){var a=o*i,r=n*i;t.style.left=e.left+a+"px",t.style.top=e.top+r+"px"})},onHideTooltip:function(t,e){var i=this._getTooltipElement();this._hideTooltip(i,t,e)},setAlign:function(t){this.options.align=t,this.positionModel&&this.positionModel.updateOptions(this.options)},_updateOffsetOption:function(t){this.options.offset=t,this.positionModel&&this.positionModel.updateOptions(this.options)},setOffset:function(t){var e=tui.util.extend({},this.options.offset);tui.util.isExisty(t.x)&&(e.x=t.x),tui.util.isExisty(t.y)&&(e.y=t.y),this._updateOffsetOption(tui.util.extend({},this.options.offset,e))},setPosition:function(t){var e=tui.util.extend({},this.options.offset);tui.util.isExisty(t.left)&&(e.x=t.left),tui.util.isExisty(t.top)&&(e.y=t.y),this._updateOffsetOption(e)},resetAlign:function(){var t=this.orgPositionOptions.align;this.options.align=t,this.positionModel&&this.positionModel.updateOptions(this.options)},resetOffset:function(){this.options.offset=this.orgPositionOptions.offset,this._updateOffsetOption(this.options.offset)},getRawCategory:function(t,e){var i=this.isVertical?"x":"y",n=this.dataProcessor.categoriesMap?this.dataProcessor.categoriesMap[i]:null,o="";return n&&(o=n[t]),e&&(o=r.formatDate(o,e)),o}});t.exports=s},function(t,e,i){"use strict";var n=i(2),o=i(5),a=i(14),r=i(24),s={_setIndexesCustomAttribute:function(t,e){t.setAttribute("data-groupIndex",e.groupIndex),t.setAttribute("data-index",e.index)},_getIndexesCustomAttribute:function(t){var e=t.getAttribute("data-groupIndex"),i=t.getAttribute("data-index"),n=null;return tui.util.isNull(e)||tui.util.isNull(i)||(n={groupIndex:parseInt(e,10),index:parseInt(i,10)}),n},_setShowedCustomAttribute:function(t,e){t.setAttribute("data-showed",e)},_isShowedTooltip:function(t){var e=t.getAttribute("data-showed");return"true"===e||e===!0},_makeLeftPositionOfNotBarChart:function(t,e,i,o){var a=t,r=i||0,s=o||n.TOOLTIP_GAP;return e.indexOf("left")>-1?a-=r+s:e.indexOf("center")>-1&&r?a-=r/2:a+=s,a},_makeTopPositionOfNotBarChart:function(t,e,i,o){var a=t,r=i||0;return e.indexOf("bottom")>-1?a+=r+o:e.indexOf("middle")>-1&&r?a+=r/2:a-=r+n.TOOLTIP_GAP,a},_makeTooltipPositionForNotBarChart:function(t){var e=t.bound,i=t.positionOption,o=t.dimension.width-(e.width||0),a=e.width?0:n.TOOLTIP_GAP,r=t.alignOption||"",s=t.dimension.height,u=e.left-this.layout.position.left+i.left,h=e.top-this.layout.position.top+i.top-n.TOOLTIP_GAP;return{left:this._makeLeftPositionOfNotBarChart(u,r,o,a),top:this._makeTopPositionOfNotBarChart(h,r,s,a)}},_makeTooltipPositionToMousePosition:function(t){return t.bound||(t.bound=t.bound||{},tui.util.extend(t.bound,t.mousePosition)),this._makeTooltipPositionForNotBarChart(t)},_makeLeftPositionForBarChart:function(t,e,i){var o=t;return e.indexOf("left")>-1?o-=i:e.indexOf("center")>-1?o-=i/2:o+=n.TOOLTIP_GAP,o},_makeTopPositionForBarChart:function(t,e,i){var n=t;return e.indexOf("top")>-1?n-=i:e.indexOf("middle")>-1&&(n-=i/2),n},_makeTooltipPositionForBarChart:function(t){var e=this.layout.position,i=t.bound,n=t.positionOption,o=t.dimension.height-(i.height||0),a=t.alignOption||"",r=t.dimension.width,s=i.left+i.width+n.left-e.left,u=i.top+n.top-e.top;return{left:this._makeLeftPositionForBarChart(s,a,r),top:this._makeTopPositionForBarChart(u,a,o)}},_makeTooltipPositionForTreemapChart:function(t){var e=this.layout.position,i=t.bound,o=t.positionOption,a=r.getRenderedLabelHeight(n.MAX_HEIGHT_WORLD,this.labelTheme);return{left:i.left+(i.width-t.dimension.width)/2+o.left-e.left,top:i.top+i.height/2-a+o.top-e.top}},_adjustPosition:function(t,e){var i=this.dimensionMap.chart,n=this.layout.position;return e.left=Math.max(e.left,-n.left),e.left=Math.min(e.left,i.width-n.left-t.width),e.top=Math.max(e.top,-n.top),e.top=Math.min(e.top,i.height-n.top-t.height),e},_makeTooltipPosition:function(t){var e,i,n,a={};return t.mousePosition?a=this._makeTooltipPositionToMousePosition(t):(o.isBarChart(t.chartType)?(a=this._makeTooltipPositionForBarChart(t),e="width",i="left",n=1):o.isTreemapChart(t.chartType)?a=this._makeTooltipPositionForTreemapChart(t):(a=this._makeTooltipPositionForNotBarChart(t),e="height",i="top",n=-1),t.allowNegativeTooltip&&(a=this._moveToSymmetry(a,{bound:t.bound,indexes:t.indexes,dimension:t.dimension,chartType:t.chartType,sizeType:e,positionType:i,addPadding:n})),a=this._adjustPosition(t.dimension,a)),a},_moveToSymmetry:function(t,e){var i,n,a,r=e.bound,s=e.sizeType,u=e.positionType,h=e.seriesType||e.chartType,l=this.dataProcessor.getValue(e.indexes.groupIndex,e.indexes.index,h),c=o.isBarChart(this.chartType)?-1:1;return l<0&&(i=e.dimension[s],n=r[s],a=t[u]+(n+i)*c,t[u]=a),t},_isChangedIndexes:function(t,e){return!!t&&(t.groupIndex!==e.groupIndex||t.index!==e.index)},_showTooltip:function(t,e,i){var o,r=this.tooltipContainer.parentNode.getBoundingClientRect(),s=e.indexes,u=this._getIndexesCustomAttribute(t),h=this.options.offset||{},l={},c=t&&t.getAttribute("data-chart-type");!e.bound&&e.mousePosition&&(e.bound={left:e.mousePosition.left-r.left+n.CHART_PADDING,top:e.mousePosition.top-r.top+n.CHART_PADDING}),(this._isChangedIndexes(u,s)||c!==e.chartType)&&this.eventBus.fire("hoverOffSeries",u,c),t.innerHTML=this._makeSingleTooltipHtml(e.seriesType||e.chartType,s),t.setAttribute("data-chart-type",e.chartType),this._setIndexesCustomAttribute(t,s),this._setShowedCustomAttribute(t,!0),this._fireBeforeShowTooltipPublicEvent(s,e.silent),a.addClass(t,"show"),l.left=h.x||0,l.top=h.y||0,o=this._makeTooltipPosition(tui.util.extend({dimension:this.getTooltipDimension(t),positionOption:l,alignOption:this.options.align||""},e)),this._moveToPosition(t,o,i),this.eventBus.fire("hoverSeries",s,e.chartType),this._fireAfterShowTooltipPublicEvent(s,{element:t,position:o},e.silent),delete e.silent},_fireBeforeShowTooltipPublicEvent:function(t,e){var i;e||(i=this._makeShowTooltipParams(t),this.eventBus.fire(n.PUBLIC_EVENT_PREFIX+"beforeShowTooltip",i))},_fireAfterShowTooltipPublicEvent:function(t,e,i){var o;i||(o=this._makeShowTooltipParams(t,e),this.eventBus.fire(n.PUBLIC_EVENT_PREFIX+"afterShowTooltip",o))},_executeHidingTooltip:function(t){a.removeClass(t,"show"),t.removeAttribute("data-groupIndex"),t.removeAttribute("data-index"),t.style.cssText=""},_hideTooltip:function(t,e,i){var a=this,r=this._getIndexesCustomAttribute(t),s=t.getAttribute("data-chart-type"),u=!(!i||!i.silent);o.isChartToDetectMouseEventOnSeries(s)?(this.eventBus.fire("hoverOffSeries",r,s),this._fireBeforeHideTooltipPublicEvent(r,u),this._executeHidingTooltip(t)):s&&(this._setShowedCustomAttribute(t,!1),this.eventBus.fire("hoverOffSeries",r,s),this._isChangedIndexes(this.prevIndexes,r)&&delete this.prevIndexes,setTimeout(function(){a._isShowedTooltip(t)||(a._fireBeforeHideTooltipPublicEvent(r,u),a._executeHidingTooltip(t))},n.HIDE_DELAY))},_fireBeforeHideTooltipPublicEvent:function(t,e){var i;e||this.eventBus.fire(n.PUBLIC_EVENT_PREFIX+"beforeHideTooltip",i)},onShowTooltipContainer:function(){this.tooltipContainer.style.zIndex=n.TOOLTIP_ZINDEX},onHideTooltipContainer:function(){this.tooltipContainer.style.zIndex=0},mixin:function(t){tui.util.extend(t.prototype,this)}};t.exports=s},function(t,e,i){"use strict";var n=i(44),o={HTML_DEFAULT_TEMPLATE:'
{{ category }}
{{ legend }}{{ label }}{{ suffix }}
',HTML_PIE_TEMPLATE:'
{{ category }}
{{ legend }}{{ ratioLabel }}( {{ label }} {{ suffix }})
',HTML_COORDINATE_TYPE_CHART_TEMPLATE:'
{{ category }}
{{ legend }}{{ label }}
{{ valueTypes }}
',HTML_GROUP:'
{{ category }}
{{ items }}
',HTML_GROUP_ITEM:'
 {{ legend }}{{ value }}{{ suffix }}
',GROUP_CSS_TEXT:"background-color:{{ color }}",HTML_MAP_CHART_DEFAULT_TEMPLATE:'
{{ name }}: {{ value }}{{ suffix }}
',HTML_BOXPLOT_TEMPLATE:'
{{ category }}
{{ legend }}
Maximum: {{ maxLabel }}{{ suffix }}
Upper Quartile: {{ uqLabel }}{{ suffix }}
Median: {{ medianLabel }}{{ suffix }}
Lower Quartile: {{ lqLabel }}{{ suffix }}
Minimum: {{ minLabel }}{{ suffix }}
',HTML_BOXPLOT_OUTLIER:'
{{ category }}
{{ legend }}
Outlier: {{ label }}{{ suffix }}
'};t.exports={tplDefault:n.template(o.HTML_DEFAULT_TEMPLATE),tplPieChart:n.template(o.HTML_PIE_TEMPLATE),tplCoordinatetypeChart:n.template(o.HTML_COORDINATE_TYPE_CHART_TEMPLATE),tplGroup:n.template(o.HTML_GROUP),tplGroupItem:n.template(o.HTML_GROUP_ITEM),tplGroupCssText:n.template(o.GROUP_CSS_TEXT),tplMapChartDefault:n.template(o.HTML_MAP_CHART_DEFAULT_TEMPLATE),tplBoxplotChartDefault:n.template(o.HTML_BOXPLOT_TEMPLATE),tplBoxplotChartOutlier:n.template(o.HTML_BOXPLOT_OUTLIER)}},function(t,e){"use strict";t.exports={template:function(t){return function(e){var i=t;return tui.util.forEach(e,function(t,e){var n=new RegExp("{{\\s*"+e+"\\s*}}","g");i=i.replace(n,String(t).replace("$","$"))}),i}}}},function(t,e,i){"use strict";function n(t){return new c(t)}var o=i(41),a=i(46),r=i(2),s=i(14),u=i(24),h=i(9),l=i(43),c=tui.util.defineClass(o,{init:function(){this.prevIndex=null,o.apply(this,arguments)},_makeTooltipHtml:function(t,e){var i=l.tplGroupItem,n=l.tplGroupCssText,o=this._makeColors(this.theme),a=tui.util.map(e,function(t,e){return t.value?i(tui.util.extend({cssText:n({color:o[e]})},t)):null}).join("");return l.tplGroup({category:t,items:a})},_setDefaultTooltipPositionOption:function(){this.options.align||(this.isVertical?this.options.align=r.TOOLTIP_DEFAULT_GROUP_ALIGN_OPTION:this.options.align=r.TOOLTIP_DEFAULT_GROUP_HORIZONTAL_ALIGN_OPTION); +},render:function(t){var e=o.prototype.render.call(this,t),i=this.dimensionMap.chart,n=this.layout;return t.checkedLegends&&(this.theme={colors:this.colors}),this.positionModel=new a(i,n,this.isVertical,this.options),e},rerender:function(t){o.prototype.rerender.call(this,t),this.prevIndex=null,t.checkedLegends&&(this.theme=this._updateLegendTheme(t.checkedLegends))},zoom:function(){this.prevIndex=null,o.prototype.zoom.call(this)},_updateLegendTheme:function(t){var e=[];return tui.util.forEachArray(this.dataProcessor.getOriginalLegendData(),function(i){var n=t[i.chartType]||t;n[i.index]&&e.push(i.theme.color)}),{colors:e}},makeTooltipData:function(){var t=this,e=this.dataProcessor.getCategoryCount(this.isVertical);return tui.util.map(this.dataProcessor.getSeriesGroups(),function(i,n){return{category:t.dataProcessor.makeTooltipCategory(n,e-n,t.isVertical),values:i.pluck("label")}})},_makeColors:function(t){var e,i,n,o=0,a=this.dataProcessor.getLegendData();return t.colors?t.colors:(e=h.series.colors.slice(0,a.length),tui.util.map(tui.util.pluck(a,"chartType"),function(a){var r;return n!==a&&(i=t[a]?t[a].colors:e,o=0),n=a,r=i[o],o+=1,r}))},_makeItemRenderingData:function(t){var e=this.dataProcessor,i=this.suffix;return tui.util.map(t,function(t,n){var o=e.getLegendItem(n);return{value:t,legend:o.label,chartType:o.chartType,suffix:i}})},_makeGroupTooltipHtml:function(t){var e,i=this.data[t],n="";return i&&(e=this._makeItemRenderingData(i.values),n=this.templateFunc(i.category,e,this.getRawCategory(t))),n},_getTooltipSectorElement:function(){var t;return this.groupTooltipSector||(this.groupTooltipSector=t=s.create("DIV","tui-chart-group-tooltip-sector"),s.append(this.tooltipContainer,t)),this.groupTooltipSector},_makeVerticalTooltipSectorBound:function(t,e,i){var n;return n=i?1:e.end-e.start,{dimension:{width:n,height:t},position:{left:e.start,top:r.SERIES_EXPAND_SIZE}}},_makeHorizontalTooltipSectorBound:function(t,e){return{dimension:{width:t,height:e.end-e.start},position:{left:r.SERIES_EXPAND_SIZE,top:e.start}}},_makeTooltipSectorBound:function(t,e,i,n){var o;return o=i?this._makeVerticalTooltipSectorBound(t,e,n):this._makeHorizontalTooltipSectorBound(t,e)},_showTooltipSector:function(t,e,i,n,o){var a=this._getTooltipSectorElement(),r=e.start===e.end,h=this._makeTooltipSectorBound(t,e,i,r);r?this.eventBus.fire("showGroupTooltipLine",h):(u.renderDimension(a,h.dimension),u.renderPosition(a,h.position),s.addClass(a,"show")),o&&(n-=1),this.eventBus.fire("showGroupAnimation",n)},_hideTooltipSector:function(t){var e=this._getTooltipSectorElement();s.hasClass(e,"show")?s.removeClass(e,"show"):this.eventBus.fire("hideGroupTooltipLine"),this.eventBus.fire("hideGroupAnimation",t),this.eventBus.fire("hideGroupTooltipLine")},_showTooltip:function(t,e,i){var n,o;tui.util.isNull(this.prevIndex)||this.eventBus.fire("hideGroupAnimation",this.prevIndex),t.innerHTML=this._makeGroupTooltipHtml(e.index),this._fireBeforeShowTooltipPublicEvent(e.index,e.range,e.silent),s.addClass(t,"show"),this._showTooltipSector(e.size,e.range,e.isVertical,e.index,e.isMoving),n=this.getTooltipDimension(t),o=this.positionModel.calculatePosition(n,e.range),this._moveToPosition(t,o,i),this._fireAfterShowTooltipPublicEvent(e.index,e.range,{element:t,position:o},e.silent),this.prevIndex=e.index},_fireBeforeShowTooltipPublicEvent:function(t,e,i){i||this.eventBus.fire(r.PUBLIC_EVENT_PREFIX+"beforeShowTooltip",{chartType:this.chartType,index:t,range:e})},_fireAfterShowTooltipPublicEvent:function(t,e,i,n){n||this.eventBus.fire(r.PUBLIC_EVENT_PREFIX+"afterShowTooltip",tui.util.extend({chartType:this.chartType,index:t,range:e},i))},_hideTooltip:function(t,e,i){var n=i.silent;this.prevIndex=null,this._fireBeforeHideTooltipPublicEvent(e,n),this._hideTooltipSector(e),s.removeClass(t,"show"),t.style.cssText=""},_fireBeforeHideTooltipPublicEvent:function(t,e){e||this.eventBus.fire(r.PUBLIC_EVENT_PREFIX+"beforeHideTooltip",{chartType:this.chartType,index:t})}});n.componentType="tooltip",n.GroupTooltip=c,t.exports=n},function(t,e,i){"use strict";var n=i(2),o=tui.util.defineClass({init:function(t,e,i,n){this.chartDimension=t,this.areaBound=e,this.isVertical=i,this.options=n,this.positions={},this._setData(t,e,i,n)},_getHorizontalDirection:function(t){var e;return t=t||"",e=t.indexOf("left")>-1?n.TOOLTIP_DIRECTION_BACKWARD:t.indexOf("center")>-1?n.TOOLTIP_DIRECTION_CENTER:n.TOOLTIP_DIRECTION_FORWARD},_makeVerticalData:function(t,e,i){var o=this._getHorizontalDirection(i);return{positionType:"left",sizeType:"width",direction:o,areaPosition:e.position.left,areaSize:e.dimension.width,chartSize:t.width,basePosition:n.SERIES_EXPAND_SIZE}},_getVerticalDirection:function(t){var e;return t=t||"",e=t.indexOf("top")>-1?n.TOOLTIP_DIRECTION_BACKWARD:t.indexOf("bottom")>-1?n.TOOLTIP_DIRECTION_FORWARD:n.TOOLTIP_DIRECTION_CENTER},_makeHorizontalData:function(t,e,i){var o=this._getVerticalDirection(i);return{positionType:"top",sizeType:"height",direction:o,areaPosition:e.position.top,areaSize:e.dimension.height,chartSize:t.height,basePosition:n.SERIES_EXPAND_SIZE}},_setData:function(t,e,i,n){var o=this._makeVerticalData(t,e,n.align),a=this._makeHorizontalData(t,e,n.align),r=n.offset||{};i?(this.mainData=o,this.subData=a):(this.mainData=a,this.subData=o),this.positionOption={},this.positionOption.left=r.x||0,this.positionOption.top=r.y||0,this.positions={}},_calculateMainPositionValue:function(t,e,i){var o=e.start===e.end,a=9,r=5,s=o?a:r,u=i.basePosition;return u+=i.direction===n.TOOLTIP_DIRECTION_FORWARD?e.end+s:i.direction===n.TOOLTIP_DIRECTION_BACKWARD?e.start-t-s:o?e.start-t/2:e.start+(e.end-e.start-t)/2},_calculateSubPositionValue:function(t,e){var i,o=e.areaSize/2;return i=e.direction===n.TOOLTIP_DIRECTION_FORWARD?o+e.basePosition:e.direction===n.TOOLTIP_DIRECTION_BACKWARD?o-t+e.basePosition:o-t/2+e.basePosition},_makePositionValueDiff:function(t,e,i){return t+i.areaPosition+e-i.chartSize},_adjustBackwardPositionValue:function(t,e,i,o){var a;return t<-o.areaPosition&&(a=this._calculateMainPositionValue(i,e,{direction:n.TOOLTIP_DIRECTION_FORWARD,basePosition:o.basePosition}),t=this._makePositionValueDiff(a,i,o)>0?-o.areaPosition:a),t},_adjustForwardPositionValue:function(t,e,i,o){var a,r=this._makePositionValueDiff(t,i,o);return r>0&&(a=this._calculateMainPositionValue(i,e,{direction:n.TOOLTIP_DIRECTION_BACKWARD,basePosition:o.basePosition}),a<-o.areaPosition?t-=r:t=a),t},_adjustMainPositionValue:function(t,e,i,o){return o.direction===n.TOOLTIP_DIRECTION_BACKWARD?t=this._adjustBackwardPositionValue(t,e,i,o):o.direction===n.TOOLTIP_DIRECTION_FORWARD?t=this._adjustForwardPositionValue(t,e,i,o):(t=Math.max(t,-o.areaPosition),t=Math.min(t,o.chartSize-o.areaPosition-i)),t},_adjustSubPositionValue:function(t,e,i){return t=i.direction===n.TOOLTIP_DIRECTION_FORWARD?Math.min(t,i.chartSize-i.areaPosition-e):Math.max(t,-i.areaPosition)},_makeCachingKey:function(t){return t.start+"-"+t.end},_addPositionOptionValue:function(t,e){return t+this.positionOption[e]},_makeMainPositionValue:function(t,e,i){var n;return n=this._calculateMainPositionValue(t[i.sizeType],e,i),n=this._addPositionOptionValue(n,i.positionType),n=this._adjustMainPositionValue(n,e,t[i.sizeType],i)},_makeSubPositionValue:function(t,e){var i;return i=this._calculateSubPositionValue(t[e.sizeType],e),i=this._addPositionOptionValue(i,e.positionType),i=this._adjustSubPositionValue(i,t[e.sizeType],e)},calculatePosition:function(t,e){var i=this._makeCachingKey(e),n=this.mainData,o=this.subData,a=this.positions[i];return a||(a={},a[n.positionType]=this._makeMainPositionValue(t,e,n),a[o.positionType]=this._makeSubPositionValue(t,o),this.positions[i]=a),a},updateOptions:function(t){this.options=t,this._setData(this.chartDimension,this.areaBound,this.isVertical,t)},updateBound:function(t){this.areaBound=t,this._setData(this.chartDimension,t,this.isVertical,this.options)}});t.exports=o},function(t,e,i){"use strict";function n(t){return new u(t)}var o=i(2),a=i(41),r=i(42),s=i(43),u=tui.util.defineClass(a,{init:function(t){this.mapModel=t.mapModel,a.apply(this,arguments)},_makeTooltipHtml:function(t){return s.tplMapChartDefault(t)},_makeSingleTooltipHtml:function(t,e){var i=this.mapModel.getDatum(e.index),n=this.options.suffix?" "+this.options.suffix:"";return this.templateFunc({name:i.name||i.code,value:i.label,suffix:n})},_makeShowTooltipParams:function(t,e){var i,n=this.mapModel.getDatum(t.index);return i=tui.util.extend({chartType:this.chartType,code:n.code,name:n.name,value:n.label,index:t.index},e)},_setDefaultTooltipPositionOption:function(){this.options.align||(this.options.align=o.TOOLTIP_DEFAULT_ALIGN_OPTION)}});r.mixin(u),n.componentType="tooltip",t.exports=n},function(t,e,i){"use strict";function n(t){return new h(t)}var o=i(49),a=i(2),r=i(34),s=i(14),u=i(24),h=tui.util.defineClass(o,{init:function(t){this.chartType=t.chartType,this.eventBus=t.eventBus,this.isDown=!1,this.drawingType=a.COMPONENT_TYPE_DOM},_renderMouseEventDetectorArea:function(t){u.renderDimension(t,this.layout.dimension),u.renderPosition(t,this.layout.position)},_onClick:function(){},_onMousedown:function(t){this.isDown=!0,this.eventBus.fire("dragStartMapSeries",{left:t.clientX,top:t.clientY})},_dragEnd:function(){this.isDrag=!1,s.removeClass(this.mouseEventDetectorContainer,"drag"),this.eventBus.fire("dragEndMapSeries")},_onMouseup:function(t){this.isDown=!1,this.isDrag?this._dragEnd():this._onMouseEvent("click",t),this.isMove=!1},_onMousemove:function(t){this.isDown?(this.isDrag||s.addClass(this.mouseEventDetectorContainer,"drag"),this.isDrag=!0,this.eventBus.fire("dragMapSeries",{left:t.clientX,top:t.clientY})):(this.isMove=!0,this._onMouseEvent("move",t))},_onMouseout:function(t){this.isDrag?this._dragEnd():this._onMouseEvent("move",t),this.isDown=!1},_onMousewheel:function(t){var e=t.wheelDelta||t.detail*a.FF_WHEELDELTA_ADJUSTING_VALUE;return this.eventBus.fire("wheel",e,{left:t.clientX,top:t.clientY}),t.preventDefault&&t.preventDefault(),!1},attachEvent:function(t){o.prototype.attachEvent.call(this,t),tui.util.browser.firefox?r.on(t,"DOMMouseScroll",this._onMousewheel,this):r.on(t,"mousewheel",this._onMousewheel,this)}});n.componentType="mouseEventDetector",t.exports=n},function(t,e,i){"use strict";var n=i(50),o=i(51),a=i(2),r=i(34),s=i(5),u=i(14),h=i(24),l=tui.util.defineClass({init:function(t){var e;this.chartType=t.chartType,this.chartTypes=t.chartTypes,this.isVertical=t.isVertical,this.dataProcessor=t.dataProcessor,this.allowSelect=t.allowSelect,this.eventBus=t.eventBus,this.layout=null,this.selectedData=null,this.prevClientPosition=null,this.prevFoundData=null,e=s.isLineTypeChart(this.chartType,this.chartTypes),this.expandSize=e?a.SERIES_EXPAND_SIZE:0,this.seriesItemBoundsData=[],this.seriesCount=s.isComboChart(this.chartType)?2:1,this._attachToEventBus(),this.drawingType=a.COMPONENT_TYPE_DOM},_attachToEventBus:function(){this.eventBus.on("receiveSeriesData",this.onReceiveSeriesData,this)},_getRenderingBound:function(){var t=h.expandBound(this.layout);return t},_renderMouseEventDetectorArea:function(t,e){var i,o,a=this.layout.dimension;this.dimension=a,o=new n(this.layout,e,this.chartType,this.isVertical,this.chartTypes),this.tickBaseCoordinateModel=o,i=this._getRenderingBound(),h.renderDimension(t,i.dimension),h.renderPosition(t,i.position)},_setDataForRendering:function(t){this.layout=t.layout},_pickTickCount:function(t){var e;return e=this.isVertical?t.xAxis.eventTickCount||t.xAxis.tickCount:t.yAxis.tickCount},render:function(t){var e,i=t.paper;return this.positionMap=t.positionMap,u.addClass(i,"tui-chart-series-custom-event-area"),t.axisDataMap.xAxis&&(e=this._pickTickCount(t.axisDataMap)),this._setDataForRendering(t),this._renderMouseEventDetectorArea(i,e),this.attachEvent(i),this.mouseEventDetectorContainer=i,this.transparentChild=this._createTransparentChild(),u.append(i,this.transparentChild),i},_createTransparentChild:function(){var t=document.createElement("DIV"),e=t.style;return e.backgroundColor="#fff",e.height=h.getStyle(this.mouseEventDetectorContainer).height,h.setOpacity(t,0),t},_calculateLayerPosition:function(t,e,i){var n,o,r=this.mouseEventDetectorContainer.getBoundingClientRect(),s=this.positionMap.series,u=this.expandSize,h={};return i=!!tui.util.isUndefined(i)||i,i&&(n=r.right-u,o=r.left+u,t=Math.min(Math.max(t,o),n)),h.x=t-r.left+s.left+u-a.CHART_PADDING,tui.util.isUndefined(e)||(h.y=e-r.top+s.top+u-a.CHART_PADDING),h},onReceiveSeriesData:function(t){var e=this.seriesItemBoundsData,i=this.seriesCount;e.length===i&&(e=[]),e.push(t),e.length===i&&(this.boundsBaseCoordinateModel=new o(e))},rerender:function(t){var e;t.axisDataMap.xAxis&&(e=this._pickTickCount(t.axisDataMap)),this.selectedData=null,this._setDataForRendering(t),this._renderMouseEventDetectorArea(this.mouseEventDetectorContainer,e),this.transparentChild.style.height=h.getStyle(this.mouseEventDetectorContainer).height},resize:function(t){this.containerBound=null,this.rerender(t)},_isChangedSelectData:function(t,e){return!t||!e||t.chartType!==e.chartType||t.indexes.groupIndex!==e.indexes.groupIndex||t.indexes.index!==e.indexes.index},_findDataFromBoundsCoordinateModel:function(t){var e,i=t.x,n=t.y;return e=s.isTreemapChart(this.chartType)?0:this.tickBaseCoordinateModel.findIndex(this.isVertical?i:n),this.boundsBaseCoordinateModel.findData(e,i,n)},_findData:function(t,e){var i=this._calculateLayerPosition(t,e);return this._findDataFromBoundsCoordinateModel(i)},_showTooltip:function(){},animateForAddingData:function(){var t,e;this.prevClientPosition&&(t=this._findData(this.prevClientPosition.x,this.prevClientPosition.y),t&&(e=this.prevFoundData&&this.prevFoundData.indexes.groupIndex===t.indexes.groupIndex,this._showTooltip(t,e)),this.prevFoundData=t)},_onMouseEvent:function(t,e){u.addClass(this.mouseEventDetectorContainer,"hide"),this.eventBus.fire(t+"Series",{left:e.clientX,top:e.clientY}),u.removeClass(this.mouseEventDetectorContainer,"hide")},_unselectSelectedData:function(){this.eventBus.fire("unselectSeries",this.selectedData),this.selectedData=null},_onClick:function(t){var e=this._findData(t.clientX,t.clientY);this._isChangedSelectData(this.selectedData,e)?e&&(this.selectedData&&this._unselectSelectedData(),this.eventBus.fire("selectSeries",e),this.allowSelect&&(this.selectedData=e)):this._unselectSelectedData()},_onMousedown:function(){},_onMouseup:function(){},_onMousemove:function(t){this.prevClientPosition={x:t.clientX,y:t.clientY}},_onMouseout:function(){this.prevClientPosition=null,this.prevFoundData=null},attachEvent:function(t){r.on(t,{click:this._onClick,mousedown:this._onMousedown,mouseup:this._onMouseup,mousemove:this._onMousemove,mouseout:this._onMouseout},this)},findDataByIndexes:function(){}});tui.util.CustomEvents.mixin(l),t.exports=l},function(t,e,i){"use strict";var n=i(5),o=i(6),a=tui.util.defineClass({init:function(t,e,i,o,a){this.isLineType=n.isLineTypeChart(i,a),this.data=this._makeData(t,e,o)},_getRanges:function(t,e,i){var n=e,o=i/2;return tui.util.map(tui.util.range(0,t),function(){var t={min:n-o,max:n+o};return n+=i,t})},_makeLineTypeData:function(t,e,i){var n=(t+1)/(e-1),o=this._getRanges(e,i||0,n);return o[e-1].max-=1,o},_makeNormalData:function(t,e,i){var n=e-1,a=t/n,r=i||0;return tui.util.map(tui.util.range(0,n),function(){var e=o.min([t+r,a+r]),i={min:r,max:e};return r=e,i})},_makeData:function(t,e,i){var n,o=i?"width":"height",a=i?"left":"top";return n=this.isLineType?this._makeLineTypeData(t.dimension[o],e,t.position[a]):this._makeNormalData(t.dimension[o],e,t.position[a])},findIndex:function(t){var e=-1;return tui.util.forEachArray(this.data,function(i,n){return!(i.min=t)||(e=n,!1)}),e},getLastIndex:function(){return this.data.length-1},makeRange:function(t,e){var i,n,o=this.data[t];return this.isLineType?(n=parseInt(o.max-(o.max-o.min)/2,10),i={start:n,end:n}):i={start:o.min-(e||0),end:o.max-(e||0)},i}});t.exports=a},function(t,e,i){"use strict";var n=i(2),o=i(5),a=i(6),r=tui.util.defineClass({init:function(t){this.data=this._makeData(t)},_makeRectTypePositionData:function(t,e){var i=!o.isBoxTypeChart(e);return tui.util.map(t,function(t,n){return tui.util.map(t,function(t,o){var a;return t?(a=t.end,{sendData:{chartType:e,indexes:{groupIndex:n,index:o},allowNegativeTooltip:i,bound:a},bound:{left:a.left,top:a.top,right:a.left+a.width,bottom:a.top+a.height}}):null})})},_makeOutliersPositionDataForBoxplot:function(t,e,i){var n=!o.isBoxTypeChart(e),a=[].concat(t);tui.util.forEach(a,function(t,o){tui.util.forEach(t,function(t,a){var r;t.outliers&&t.outliers.length&&(r=tui.util.map(t.outliers,function(t,i){var r={top:t.top-3,left:t.left-3,width:6,height:6};return{sendData:{chartType:e,indexes:{groupIndex:o,index:a,outlierIndex:i},allowNegativeTooltip:n,bound:r},bound:{left:r.left,top:r.top,right:r.left+r.width,bottom:r.top+r.height}}}),i[o]=i[o].concat(r))})})},_makeDotTypePositionData:function(t,e){return t?tui.util.map(a.pivot(t),function(t,i){return tui.util.map(t,function(t,o){return t?{sendData:{chartType:e,indexes:{groupIndex:i,index:o},bound:t},bound:{left:t.left-n.DOT_RADIUS,top:t.top-n.DOT_RADIUS,right:t.left+n.DOT_RADIUS,bottom:t.top+n.DOT_RADIUS}}:null})}):[]},_joinData:function(t){var e=[];return tui.util.forEachArray(t,function(t){tui.util.forEachArray(t,function(t,i){var n;e[i]?(n=e[i].length,tui.util.forEachArray(t,function(t){t&&(t.sendData.indexes.legendIndex=t.sendData.indexes.index+n)}),e[i]=e[i].concat(t)):e[i]=t})}),e},_makeData:function(t){var e=this,i=tui.util.map(t,function(t){var i;return i=o.isLineTypeChart(t.chartType)?e._makeDotTypePositionData(t.data.groupPositions,t.chartType):e._makeRectTypePositionData(t.data.groupBounds,t.chartType),o.isBoxplotChart(t.chartType)&&e._makeOutliersPositionDataForBoxplot(t.data.groupBounds,t.chartType,i),i});return this._joinData(i)},_findCandidates:function(t,e,i){return tui.util.filter(t,function(t){var n,o,a=t&&t.bound,r=!1;return a&&(n=a.left<=e&&a.right>=e,o=a.top<=i&&a.bottom>=i,r=n&&o),r})},findData:function(t,e,i){var n,o=1e4,a=null;return t>-1&&this.data[t]&&(n=this._findCandidates(this.data[t],e,i),tui.util.forEachArray(n,function(t){var e=Math.abs(i-t.bound.top);o>e&&(o=e,a=t.sendData)})),a},findDataByIndexes:function(t){var e=this.data[t.index][t.seriesIndex].sendData;return tui.util.isNumber(t.outlierIndex)?this._findOutlierDataByIndexes(t):e},_findOutlierDataByIndexes:function(t){var e=null;return tui.util.forEachArray(this.data[t.index],function(i){var n=i.sendData.indexes,o=n.index===t.seriesIndex&&n.outlierIndex===t.outlierIndex;return o&&(e=i.sendData),!o}),e}});t.exports=r},function(t,e,i){"use strict";function n(t){var e,i=t.chartOptions.chartType,n=t.seriesTypes,l=t.chartOptions.series.zoomable,c=t.chartOptions.series.allowSelect;return e=t.chartOptions.tooltip.grouped?s:o.isMapChart(i)?h:o.isBarTypeChart(i)||o.isBoxplotChart(i)||o.isHeatmapChart(i)||o.isTreemapChart(i)?u:o.isCoordinateTypeChart(i)||o.isPieChart(i)||o.isPieDonutComboChart(i,n)?r:a,t.chartType=i,t.chartTypes=n,t.zoomable=l,t.allowSelect=c,e(t)}var o=i(5),a=i(53),r=i(56),s=i(57),u=i(58),h=i(48);n.componentType="mouseEventDetector",t.exports=n},function(t,e,i){"use strict";function n(t){return new u(t)}var o=i(49),a=i(54),r=i(55),s=50,u=tui.util.defineClass(o,{init:function(t){o.call(this,t),this.prevFoundData=null,this.zoomable=t.zoomable,this.zoomable&&(tui.util.extend(this,a),this._initForZoom(t.zoomable))},onReceiveSeriesData:function(t){var e=this.seriesItemBoundsData,i=this.seriesCount;e.length===i&&(e=[]),e.push(t),e.length===i&&(this.dataModel=new r(e)),this.zoomable&&this._showTooltipAfterZoom()},_findData:function(t,e){var i=this._calculateLayerPosition(t,e);return this.dataModel.findData(i,s)},_findDataForZoomable:function(t,e){var i=this._calculateLayerPosition(t,e);return this.dataModel.findData(i)},_getFirstData:function(t){return this.dataModel.getFirstData(t)},_getLastData:function(t){return this.dataModel.getLastData(t)},_showTooltip:function(t){this.eventBus.fire("showTooltip",t)},_hideTooltip:function(t){t=t||{},this.eventBus.fire("hideTooltip",this.prevFoundData,t)},_onMousemove:function(t){var e,i;o.prototype._onMousemove.call(this,t),i=this._findData(t.clientX,t.clientY),this.zoomable&&(e=this._isAfterDragMouseup()),!e&&this._isChangedSelectData(this.prevFoundData,i)&&(i?this._showTooltip(i):this.prevFoundData&&this._hideTooltip(),this.prevFoundData=i)},_onMouseout:function(){this.prevFoundData&&this._hideTooltip(),o.prototype._onMouseout.call(this)},findDataByIndexes:function(t){return this.dataModel.findDataByIndexes(t)}});n.componentType="mouseEventDetector",t.exports=n},function(t,e,i){"use strict";var n=i(49),o=i(2),a=i(14),r=i(24),s=i(34),u={_initForZoom:function(t){this.zoomable=t,this.dragStartIndexes=null,this.startClientPosition=null,this.startLayerX=null,this.dragSelectionElement=null,this.containerBound=null,this.isShowTooltipAfterZoom=!1,this.afterMouseup=!1,this.prevDistanceOfRange=null,this.reverseMove=null,this.resetZoomBtn=null},_showTooltipAfterZoom:function(){var t,e=this.isShowTooltipAfterZoom;this.isShowTooltipAfterZoom=!1,e&&this.dragStartIndexes&&(t=this.reverseMove?this._getFirstData(this.dragStartIndexes.index):this._getLastData(this.dragEndIndexes.index),t&&this._showTooltip(t))},_updateDimensionForDragSelection:function(t){r.renderDimension(t,{height:this.layout.dimension.height})},_renderDragSelection:function(){var t=a.create("DIV","tui-chart-drag-selection");return this._updateDimensionForDragSelection(t),t},render:function(t){var e=n.prototype.render.call(this,t),i=this._renderDragSelection();return a.append(e,i),this.dragSelectionElement=i,e},resize:function(t){this.containerBound=null,n.prototype.resize.call(this,t),this._updateDimensionForDragSelection(this.dragSelectionElement)},_onClick:function(){},_isAfterDragMouseup:function(){var t=this.afterMouseup;return t&&(this.afterMouseup=!1),t},_bindDragEvent:function(t){t.setCapture&&t.setCapture(),s.on(document,"mousemove",this._onDrag,this),s.off(this.mouseEventDetectorContainer,"mouseup",this._onMouseup,this),s.on(document,"mouseup",this._onMouseupAfterDrag,this)},_unbindDragEvent:function(){this.downTarget&&this.downTarget.releaseCapture&&this.downTarget.releaseCapture(),s.off(document,"mousemove",this._onDrag,this),s.off(document,"mouseup",this._onMouseupAfterDrag,this),s.on(this.mouseEventDetectorContainer,"mouseup",this._onMouseup,this)},_onMousedown:function(t){var e;this.zoomable&&(e=t.target||t.srcElement,this.startClientPosition={x:t.clientX,y:t.clientY},this.startLayerX=this._calculateLayerPosition(t.clientX).x,this.downTarget=e,this._bindDragEvent(e))},_showDragSelection:function(t){var e=this._calculateLayerPosition(t).x,i=Math.min(e,this.startLayerX)-this.layout.position.left,n=Math.abs(e-this.startLayerX),o=this.dragSelectionElement;o.style.left=i+"px",o.style.width=n+"px",a.addClass(o,"show")},_hideDragSelection:function(){a.removeClass(this.dragSelectionElement,"show")},_onDrag:function(t){var e,i=this.startClientPosition,n=t.target||t.srcElement;i&&(e=this._findDataForZoomable(i.x,i.y),a.hasClass(n,o.CLASS_NAME_RESET_ZOOM_BTN)||(tui.util.isNull(this.dragStartIndexes)?this.dragStartIndexes=e?e.indexes:{}:this._showDragSelection(t.clientX)))},_adjustIndexRange:function(t,e){var i=[t,e].sort(function(t,e){return t-e}),n=i[1]-i[0];return 0===n?0===i[0]?i[1]+=2:(i[0]-=1,i[1]+=1):1===n&&(0===i[0]?i[1]+=1:i[0]-=1),i},_fireZoom:function(t,e){var i=t>e,n=this._adjustIndexRange(t,e),o=n[1]-n[0];this.prevDistanceOfRange!==o&&(this.prevDistanceOfRange=o,this.reverseMove=i,this.eventBus.fire("zoom",n))},_setIsShowTooltipAfterZoomFlag:function(t,e){var i=this._calculateLayerPosition(t,e,!1).x,n=this._calculateLayerPosition(t,e).x;this.isShowTooltipAfterZoom=i===n},_onMouseupAfterDrag:function(t){var e,i=this._findDataForZoomable(t.clientX,t.clientY);this._unbindDragEvent(),tui.util.isNull(this.dragStartIndexes)?(e=t.target||t.srcElement,a.hasClass(e,o.CLASS_NAME_RESET_ZOOM_BTN)?(this._hideTooltip(),this.prevDistanceOfRange=null,this.eventBus.fire("resetZoom")):n.prototype._onClick.call(this,t)):this.dragStartIndexes&&i?(this.dragEndIndexes=i.indexes,this._setIsShowTooltipAfterZoomFlag(t.clientX,t.clientY),this._hideDragSelection(),this._fireZoom(this.dragStartIndexes.groupIndex,this.dragEndIndexes.groupIndex)):(this._setIsShowTooltipAfterZoomFlag(t.clientX,t.clientY),this._hideDragSelection()),this.startClientPosition=null,this.dragStartIndexes=null,this.startLayerX=null,this.afterMouseup=!0},_renderResetZoomBtn:function(){var t=a.create("DIV",o.CLASS_NAME_RESET_ZOOM_BTN);return t.innerHTML="Reset Zoom",t},zoom:function(t){this.prevFoundData=null,this.rerender(t),this._updateDimensionForDragSelection(this.dragSelectionElement),this.resetZoomBtn?t.isResetZoom&&(this.mouseEventDetectorContainer.removeChild(this.resetZoomBtn),this.resetZoomBtn=null):(this.resetZoomBtn=this._renderResetZoomBtn(),a.append(this.mouseEventDetectorContainer,this.resetZoomBtn))}};t.exports=u},function(t,e,i){"use strict";var n=i(5),o=i(6),a=Array.prototype.concat,r=tui.util.defineClass({init:function(t){this.data=this._makeData(t),this.lastGroupIndex=0},_makeData:function(t){var e=0,i=t.length,r=tui.util.map(t,function(t,a){var r=t.data.groupPositions||t.data.groupBounds,s=t.chartType;return(n.isLineTypeChart(s)||n.isRadialChart(s))&&(r=o.pivot(r)),e=Math.max(r.length-1,e),tui.util.map(r,function(t,e){return tui.util.map(t,function(t,n){var o=null;return t&&(o={chartType:s,indexes:{groupIndex:e,index:n},bound:t}),i>1&&(o.indexes.legendIndex=a),o})})});return r=a.apply([],r),this.lastGroupIndex=e,tui.util.filter(a.apply([],r),function(t){return!!t})},findData:function(t,e){var i,n=1e5;return e=e||Number.MAX_VALUE,tui.util.forEach(this.data,function(o){var a=t.x-o.bound.left,r=t.y-o.bound.top,s=Math.sqrt(Math.pow(a,2)+Math.pow(r,2));ss+n||er+o},_showTooltip:function(t,e){var i=t.indexes.groupIndex,n=(this.isVertical?this.layout.position.left:this.layout.position.top)-o.CHART_PADDING;this.tickBaseCoordinateModel.data.length>i&&(this.prevIndex=i,this.eventBus.fire("showTooltip",{index:i,range:this.tickBaseCoordinateModel.makeRange(i,n),size:this.dimension[this.sizeType],isVertical:this.isVertical,isMoving:e,silent:t.silent}))},_hideTooltip:function(t){t=t||{},this.eventBus.fire("hideTooltip",this.prevIndex,t),this.prevIndex=null},_onMousemove:function(t){var e,i;a.prototype._onMousemove.call(this,t),this.zoomable&&this._isAfterDragMouseup()||(e=this._findGroupData(t.clientX,t.clientY),i=e.indexes.groupIndex,i===-1?this._onMouseout(t):this.prevIndex!==i&&this._showTooltip(e))},_onMouseout:function(t){var e;e=this._calculateLayerPosition(t.clientX,t.clientY,!1),this._isOuterPosition(e.x,e.y)&&!tui.util.isNull(this.prevIndex)&&this._hideTooltip(),a.prototype._onMouseout.call(this)}});n.componentType="mouseEventDetector",t.exports=n},function(t,e,i){"use strict";function n(t){return new u(t)}var o=i(49),a=i(2),r=i(5),s=i(14),u=tui.util.defineClass(o,{init:function(){o.apply(this,arguments),this.prevFoundData=null,this.zoomHistory=[-1],this.historyBackBtn=null},_attachToEventBus:function(){o.prototype._attachToEventBus.call(this),this.eventBus.on("afterZoom",this.onAfterZoom,this)},_showTooltip:function(t){this.eventBus.fire("showTooltip",t)},_hideTooltip:function(t){t=t||{},this.eventBus.fire("hideTooltip",this.prevFoundData,t),this.prevFoundData=null,this.styleCursor(!1)},styleCursor:function(t){var e=this.mouseEventDetectorContainer;t?e.style.cursor="pointer":e.style.cursor="default"},_onMousemove:function(t){var e,i=this._calculateLayerPosition(t.clientX,t.clientY),n=this._findDataFromBoundsCoordinateModel(i);this._isChangedSelectData(this.prevFoundData,n)&&(this.prevFoundData&&this._hideTooltip(),this.prevFoundData=n,n&&(r.isTreemapChart(this.chartType)&&(e=this._getSeriesItemByIndexes(n.indexes),this.styleCursor(e.hasChild)),this._showTooltip(n)))},_zoomHistoryBack:function(){var t=this.zoomHistory[this.zoomHistory.length-2];this.zoomHistory.pop(),this.eventBus.fire("zoom",t),1===this.zoomHistory.length&&(this.mouseEventDetectorContainer.removeChild(this.historyBackBtn),this.historyBackBtn=null)},_getSeriesItemByIndexes:function(t){var e=this.dataProcessor.getSeriesDataModel(a.CHART_TYPE_TREEMAP);return e.getSeriesItem(t.groupIndex,t.index,!0)},_onClick:function(t){var e,i,n,u=t.target||t.srcElement;if(o.prototype._onClick.call(this,t),r.isTreemapChart(this.chartType)){if(s.hasClass(u,a.CLASS_NAME_RESET_ZOOM_BTN))return this._hideTooltip(),void this._zoomHistoryBack();if(e=this._calculateLayerPosition(t.clientX,t.clientY),i=this._findDataFromBoundsCoordinateModel(e)){if(n=this._getSeriesItemByIndexes(i.indexes),!n.hasChild)return;this._hideTooltip(),this.eventBus.fire("zoom",i.indexes.index)}}},_onMouseout:function(t){var e=this.mouseEventDetectorContainer.getBoundingClientRect(),i=t.clientX,n=t.clientY;e.left<=i&&e.top<=n&&e.right>=i&&e.bottom>=n||(this.prevFoundData&&this._hideTooltip(),o.prototype._onMouseout.call(this))},onAfterZoom:function(t){this.historyBackBtn||(this.historyBackBtn=s.create("DIV",a.CLASS_NAME_RESET_ZOOM_BTN),this.historyBackBtn.innerHTML="< Back",s.append(this.mouseEventDetectorContainer,this.historyBackBtn)),this.zoomHistory[this.zoomHistory.length-1]!==t&&this.zoomHistory.push(t)},findDataByIndexes:function(t){return this.boundsBaseCoordinateModel.findDataByIndexes(t)}});n.componentType="mouseEventDetector",t.exports=n},function(t,e,i){"use strict";function n(t){var e=t.chartOptions.libType,i=t.chartTheme;return t.libType=e,t.chartType="bar",t.chartBackground=i.chart.background,new u(t)}var o=i(60),a=i(62),r=i(2),s=i(5),u=tui.util.defineClass(o,{init:function(){o.apply(this,arguments)},_makeBound:function(t,e,i,n,o){return{start:{top:i,left:n,width:0,height:e},end:{top:i,left:o,width:t,height:e}}},_calculateAdditionalLeft:function(t){var e=0;return this.options.divided&&t>0&&(e=this.dimensionMap.yAxis.width+r.OVERLAPPING_WIDTH),e},_makeBarChartBound:function(t,e,i,n,o){var a,r,s,u,h=t.baseBarSize*n.ratioDistance,l=this._calculateAdditionalLeft(n.value),c=t.baseBarSize*n.startRatio,d=t.basePosition+c+l,p=n.stack!==e.prevStack; +return(!i||!this.options.diverging&&p)&&(a=i?this.dataProcessor.findStackIndex(n.stack):o,e.top=e.baseTop+t.pointInterval*a,e.plusLeft=0,e.minusLeft=0),n.value>=0?(r=d+e.plusLeft,e.plusLeft+=h):(e.minusLeft-=h,r=d+e.minusLeft),e.prevStack=n.stack,u=e.top+t.pointInterval-t.barSize/2,s=this._makeBound(h,t.barSize,u,d,r)},_makeBounds:function(){var t=this,e=this._getSeriesDataModel(),i=s.isValidStackOption(this.options.stackType),n=this.layout.dimension,o=this._makeBaseDataForMakingBound(n.height,n.width);return e.map(function(e,n){var a=n*o.groupSize+t.layout.position.top,r={baseTop:a,top:a,plusLeft:0,minusLeft:0,prevStack:null},s=tui.util.bind(t._makeBarChartBound,t,o,r,i);return e.map(s)})},_calculateTopPositionOfSumLabel:function(t,e){return t.top+(t.height-e+r.TEXT_PADDING)/2}});a.mixin(u),n.componentType="series",n.BarChartSeries=u,t.exports=n},function(t,e,i){"use strict";var n=600,o=tui.util.browser,a=o.msie&&7===o.version,r=i(2),s=i(14),u=i(5),h=i(24),l=i(7),c=i(61),d=tui.util.defineClass({className:"tui-chart-series-area",init:function(t){var e=t.libType;this.chartType=t.chartType,this.seriesType=t.seriesType||t.chartType,this.componentType=t.componentType,this.dataProcessor=t.dataProcessor,this.eventBus=t.eventBus,this.chartBackground=t.chartBackground,this.options=t.options||{},this.orgTheme=this.theme=t.theme,this.graphRenderer=l.get(e,t.chartType),this.seriesContainer=null,this.seriesLabelContainer=null,this.seriesData=[],this.selectedLegendIndex=null,this.labelShowEffector=null,this.paper=null,this.limit=null,this.aligned=null,this.layout=null,this.dimensionMap=null,this.positionMap=null,this.axisDataMap=null,this.beforeAxisDataMap=null,this.drawingType=r.COMPONENT_TYPE_RAPHAEL,this._attachToEventBus()},_attachToEventBus:function(){var t=tui.util.bind(function(){this.isInitRenderCompleted=!0,this.eventBus.off("load",t)},this);this.eventBus.on(r.PUBLIC_EVENT_PREFIX+"load",t),this.eventBus.on({selectLegend:this.onSelectLegend,selectSeries:this.onSelectSeries,unselectSeries:this.onUnselectSeries,hoverSeries:this.onHoverSeries,hoverOffSeries:this.onHoverOffSeries,showGroupAnimation:this.onShowGroupAnimation,hideGroupAnimation:this.onHideGroupAnimation},this),this.onShowTooltip&&this.eventBus.on("showTooltip",this.onShowTooltip,this),this.onShowGroupTooltipLine&&this.eventBus.on({showGroupTooltipLine:this.onShowGroupTooltipLine,hideGroupTooltipLine:this.onHideGroupTooltipLine},this),this.onClickSeries&&this.eventBus.on({clickSeries:this.onClickSeries,moveSeries:this.onMoveSeries},this)},_getSeriesDataModel:function(){return this.dataProcessor.getSeriesDataModel(this.seriesType)},_makeSeriesData:function(){},getSeriesData:function(){return this.seriesData},_renderSeriesLabel:function(){},_renderSeriesLabelArea:function(t){return this._renderSeriesLabel(t)},_sendBoundsToMouseEventDetector:function(t){this.eventBus.fire("receiveSeriesData",{chartType:this.chartType,data:t})},_renderSeriesArea:function(t,e){var i,n;i=this.dimensionMap.extendedSeries,this.seriesData=n=this._makeSeriesData(),this._sendBoundsToMouseEventDetector(n),(this.hasDataForRendering(n)||"map"===this.chartType)&&(e&&(this.seriesSet=e(i,n,t)),u.isShowLabel(this.options)&&(this.labelSet=this._renderSeriesLabelArea(t)))},_makeParamsForGraphRendering:function(t,e){return tui.util.extend({dimension:t,position:this.layout.position,chartType:this.seriesType,theme:this.theme,options:this.options},e)},_renderGraph:function(t,e,i){var n=this._makeParamsForGraphRendering(t,e);return this.graphRenderer.render(i,n)},_setDataForRendering:function(t){this.paper=t.paper,this.limit=t.limitMap[this.chartType],t.axisDataMap&&t.axisDataMap.xAxis&&(this.aligned=t.axisDataMap.xAxis.aligned),this.layout=t.layout,this.dimensionMap=t.dimensionMap,this.positionMap=t.positionMap,this.axisDataMap=t.axisDataMap},render:function(t){var e;this.paper=t.paper,this._setDataForRendering(t),this.beforeAxisDataMap=this.axisDataMap,t.checkedLegends&&(e=t.checkedLegends[this.seriesType],this.options.colorByPoint||(this.theme=this._getCheckedSeriesTheme(this.orgTheme,e))),this._renderSeriesArea(t.paper,tui.util.bind(this._renderGraph,this)),this.paper.pushDownBackgroundToBottom&&this.paper.pushDownBackgroundToBottom()},_getCheckedSeriesTheme:function(t,e){var i;return e.length?(i=JSON.parse(JSON.stringify(t)),i.colors=tui.util.filter(i.colors,function(t,i){return e[i]}),i):t},_clearSeriesContainer:function(){this.seriesSet&&this.seriesSet.remove&&this.seriesSet.remove(),this.labelSet&&this.labelSet.remove&&this.labelSet.remove(),this.seriesData=[]},rerender:function(t){var e;this._clearSeriesContainer(),this.dataProcessor.getGroupCount(this.seriesType)&&(t.checkedLegends&&(e=t.checkedLegends[this.seriesType],this.theme=this._getCheckedSeriesTheme(this.orgTheme,e)),this._setDataForRendering(t),this._renderSeriesArea(t.paper,tui.util.bind(this._renderGraph,this)),this.labelShowEffector&&clearInterval(this.labelShowEffector.timerId),!e&&this.isInitRenderCompleted||this.animateComponent(!0),tui.util.isNull(this.selectedLegendIndex)||this.graphRenderer.selectLegend(this.selectedLegendIndex))},_isLabelVisible:function(){return!(!this.options.showLabel&&!this.options.showLegend)},_resizeGraph:function(t,e){return this.graphRenderer.resize(tui.util.extend({dimension:this.dimensionMap.chart},e)),this.seriesSet},resize:function(t){this._setDataForRendering(t),this.labelSet&&this.labelSet.remove&&this.labelSet.remove(),this._renderSeriesArea(t.paper,tui.util.bind(this._resizeGraph,this))},_renderPosition:function(t,e){var i=h.isOldBrowser()?1:0;h.renderPosition(t,{top:e.top-i,left:e.left-2*i})},_getLimitDistanceFromZeroPoint:function(t,e){var i=e.min,n=e.max,o=n-i,a=0,r=0;return i<=0&&n>=0?(a=(o+i)/o*t,r=(o-n)/o*t):i>0&&(a=t),{toMax:a,toMin:r}},_findLabelElement:function(t){var e=null;return e=s.hasClass(t,r.CLASS_NAME_SERIES_LABEL)?t:s.findParentByClass(t,r.CLASS_NAME_SERIES_LABEL)},onHoverSeries:function(t,e){e===this.chartType&&this.graphRenderer.showAnimation&&this.graphRenderer.showAnimation(t)},onHoverOffSeries:function(t,e){e===this.chartType&&this.graphRenderer.hideAnimation&&t&&this.graphRenderer.hideAnimation(t)},onShowGroupAnimation:function(t){this.graphRenderer.showGroupAnimation&&this.graphRenderer.showGroupAnimation(t)},onHideGroupAnimation:function(t){this.graphRenderer.hideGroupAnimation&&this.graphRenderer.hideGroupAnimation(t)},animateComponent:function(t){this.graphRenderer.animate&&this.seriesSet?this.graphRenderer.animate(tui.util.bind(this.animateSeriesLabelArea,this,t),this.seriesSet):this.animateSeriesLabelArea(t)},_fireLoadEvent:function(t){t||this.eventBus.fire(r.PUBLIC_EVENT_PREFIX+"load")},animateSeriesLabelArea:function(t){return this._isLabelVisible()?void(a?(this._fireLoadEvent(t),this.labelSet.attr({opacity:1})):this.labelSet&&this.labelSet.length&&c.animateOpacity(this.labelSet,0,1,n)):void this._fireLoadEvent(t)},_makeExportationSeriesData:function(t){var e,i=t.indexes,n=tui.util.isExisty(i.legendIndex)?i.legendIndex:i.index,o=this.dataProcessor.getLegendItem(n),a=tui.util.isExisty(i.groupIndex)?i.groupIndex:0,r=this._getSeriesDataModel().getSeriesItem(a,i.index);return tui.util.isExisty(r)&&(e={chartType:o.chartType,legend:o.label,legendIndex:n},e.index=r.index),e},_executeGraphRenderer:function(t,e){var i,n=!1;return this.eventBus.fire("hideTooltipContainer"),this.seriesLabelContainer&&s.hasClass(this.seriesLabelContainer,"show")&&(s.removeClass(this.seriesLabelContainer,"show"),n=!0),i=this.graphRenderer[e](t),n&&s.addClass(this.seriesLabelContainer,"show"),this.eventBus.fire("showTooltipContainer"),i},onSelectSeries:function(t,e){var i;t.chartType===this.chartType&&(i=r.PUBLIC_EVENT_PREFIX+"selectSeries",this.eventBus.fire(i,this._makeExportationSeriesData(t)),e=!!tui.util.isEmpty(e)||e,this.options.allowSelect&&this.graphRenderer.selectSeries&&e&&this.graphRenderer.selectSeries(t.indexes))},onUnselectSeries:function(t){var e;t.chartType===this.chartType&&(e=r.PUBLIC_EVENT_PREFIX+"unselectSeries",this.eventBus.fire(e,this._makeExportationSeriesData(t)),this.options.allowSelect&&this.graphRenderer.unselectSeries&&this.graphRenderer.unselectSeries(t.indexes))},onSelectLegend:function(t,e){this.seriesType===t||tui.util.isNull(e)||(e=-1),this.selectedLegendIndex=e,this._getSeriesDataModel().getGroupCount()&&this.graphRenderer.selectLegend(e)},showLabel:function(){this.options.showLabel=!0,this.seriesLabelContainer||this._renderSeriesLabelArea(this.paper)},hideLabel:function(){this.options.showLabel=!1,this.seriesLabelContainer&&(s.removeClass(this.seriesLabelContainer,"show"),s.removeClass(this.seriesLabelContainer,"opacity"))},hasDataForRendering:function(t){return!(!t||!t.isAvailable())}});t.exports=d},function(t,e){"use strict";function i(t){return tui.util.isExisty(t)&&"number"==typeof t}var n=window.Raphael,o={makeLinePath:function(t,e,i){var n,o=[t.left,t.top],a=[e.left,e.top];return i=i||1,n=i%2/2,tui.util.forEachArray(o,function(t,e){t===a[e]&&(o[e]=a[e]=Math.round(t)-n)}),["M"].concat(o).concat("L").concat(a)},renderLine:function(t,e,i,n){var o=t.path([e]),a={stroke:i,"stroke-width":n||2};return"transparent"===i&&(a.stroke="#fff",a["stroke-opacity"]=0),o.attr(a),o},renderText:function(t,e,i,n){var o=t.text(e.left,e.top,i);return n&&(n["dominant-baseline"]?o.node.setAttribute("dominant-baseline",n["dominant-baseline"]):o.node.setAttribute("dominant-baseline","central"),o.attr(n)),o},renderArea:function(t,e,i){var n=t.path(e);return i=tui.util.extend({"stroke-opacity":0},i),n.attr(i),n},renderCircle:function(t,e,i,n){var o=t.circle(e.left,e.top,i);return n&&o.attr(n),o},renderRect:function(t,e,i){var n=t.rect(e.left,e.top,e.width,e.height);return i&&n.attr(i),n},updateRectBound:function(t,e){t.attr({x:e.left,y:e.top,width:e.width,height:e.height})},forEach2dArray:function(t,e){t&&tui.util.forEachArray(t,function(t,i){tui.util.forEachArray(t,function(t,n){e(t,i,n)})})},makeChangedLuminanceColor:function(t,e){var i;return t=t.replace("#",""),e=e||0,i=tui.util.map(tui.util.range(3),function(i){var n=parseInt(t.substr(2*i,2),16),o=n+n*e;return o=Math.round(Math.min(Math.max(0,o),255)).toString(16),tui.chart.renderUtil.formatToZeroFill(o,2)}).join(""),"#"+i},getRenderedTextSize:function(t,e,i){var o=n(document.body,100,100),a=o.text(0,0,t).attr({"font-size":e,"font-family":i}),r=a.getBBox();return a.remove(),o.remove(),{width:r.width,height:r.height}},animateOpacity:function(t,e,o,a){var r=i(a)?a:600,s=i(e)?e:0,u=i(o)?o:1,h=n.animation({opacity:u},r);t.attr({opacity:s}),t.animate(h)}};t.exports=o},function(t,e,i){"use strict";var n=i(2),o=i(63),a=i(5),r=i(23),s=i(24),u=i(61),h=.8,l=tui.util.defineClass({_makeSeriesData:function(){var t=this._makeBounds(this.layout.dimension);return this.groupBounds=t,{groupBounds:t,seriesDataModel:this._getSeriesDataModel(),isAvailable:function(){return t&&t.length>0}}},_getBarWidthOptionSize:function(t,e){var i=0;return e&&(e/2>=t?e=2*t:e<0&&(e=0),i=e),i},_calculateAdditionalPosition:function(t,e,i){var n=0;return e&&e0&&(o=d?this.options.diverging?1:this.dataProcessor.getStackCount(this.seriesType):p.getFirstSeriesGroup().getSeriesItemCount(),l=f/(o+1),r=l*h,s=this.options.barWidth||this.options.pointWidth,r=this._getBarWidthOptionSize(l,s)||r,u=g+i,a.isColumnChart(this.chartType)&&(u=e-u),a.isBoxplotChart(this.chartType)&&g&&(u-=2*g),c={baseBarSize:e,groupSize:f,barSize:r,pointInterval:l,firstAdditionalPosition:l,basePosition:u}),c},_renderNormalSeriesLabel:function(t){var e,i=this.graphRenderer,n=this._getSeriesDataModel(),r=this.seriesData.groupBounds,s=this.theme.label,u=this.selectedLegendIndex,h=n.map(function(t){return t.map(function(t){var e={end:t.endLabel};return tui.util.isExisty(t.start)&&(e.start=t.startLabel),e})});return e=a.isBarChart(this.chartType)?o.boundsToLabelPositionsForBarChart(n,r,s):o.boundsToLabelPositionsForColumnChart(n,r,s),i.renderSeriesLabel(t,e,h,s,u)},_makeSumValues:function(t){var e=r.sum(t);return s.formatValue(e,this.dataProcessor.getFormatFunctions(),this.chartType,"seires")},_makeStackedLabelPosition:function(t){var e=t.left+t.width/2,i=t.top+t.height/2;return{left:e,top:i}},_makeStackedLabelPositions:function(t){var e=this,i=t.seriesGroup,n=i.map(function(i,n){var o,a=t.bounds[n];return a&&i&&(o=e._makeStackedLabelPosition(a.end)),{end:o}});return n},getGroupLabels:function(t,e,i){var n=a.isNormalStack(this.options.stackType);return t.map(function(t){var o,a=t.map(function(t){return{end:t.endLabel}});return n&&(e.push(r.sumPlusValues(t.pluck("value"))),o=r.sumMinusValues(t.pluck("value")),o<0&&i.push(o)),a})},getGroupPositions:function(t,e){var i=this;return t.map(function(t,n){return i._makeStackedLabelPositions({seriesGroup:t,bounds:e[n]})})},_renderStackedSeriesLabel:function(t){var e=this,i=[],o=[],r=this.theme.label,h=this.seriesData.groupBounds,l=this._getSeriesDataModel(),c=this.getGroupPositions(l,h),d=this.getGroupLabels(l,i,o),p=!0,f=a.isNormalStack(this.options.stackType),m=a.isBarChart(this.chartType),g=m?"width":"height",_=m?"left":"top",T=m?1:-1;return f&&(tui.util.forEach(d,function(t,n){var a=i[n],r=o[n];r<0&&e.options.diverging&&(r*=-1),t.push({end:s.formatToComma(a)}),o.length&&t.push({end:s.formatToComma(r)})}),tui.util.forEach(c,function(t,a){var s=h[a],l=s[s.length-1].end,c=s[Math.max(parseInt(s.length/2,10),1)-1].end,d=e._makeStackedLabelPosition(l),p=e._makeStackedLabelPosition(c),f=i[a],m=o[a],v=u.getRenderedTextSize(f,r.fontSize,r.fontFamily),x=u.getRenderedTextSize(m,r.fontSize,r.fontFamily),y=(l[g]+v[g])/2,D=(c[g]+x[g])/2;d[_]+=(y+n.LEGEND_LABEL_LEFT_PADDING)*T,p[_]-=(D+n.LEGEND_LABEL_LEFT_PADDING)*T,t.push({end:d}),o.length&&t.push({end:p})})),this.graphRenderer.renderSeriesLabel(t,c,d,r,p)},_renderSeriesLabel:function(t){var e;return e=this.options.stackType?this._renderStackedSeriesLabel(t):this._renderNormalSeriesLabel(t)}});l.mixin=function(t){tui.util.extend(t.prototype,l.prototype)},t.exports=l},function(t,e,i){"use strict";var n=i(2),o=i(24),a={_calculateLeftPositionForCenterAlign:function(t){return t.left+t.width/2},_calculateTopPositionForMiddleAlign:function(t){return t.top+t.height/2},_makePositionForBoundType:function(t){return{left:this._calculateLeftPositionForCenterAlign(t),top:this._calculateTopPositionForMiddleAlign(t)}},_makePositionMap:function(t,e,i,n,o){var a=t.value,r=a>=0,s={end:o(e,i,t.endLabel||t.label,n,r)};return t.isRange&&(r=a<0,s.start=o(e,i,t.startLabel,n,r)),s},boundsToLabelPositions:function(t,e,i,a,r){var s=this,u=o.getRenderedLabelHeight(n.MAX_HEIGHT_WORLD,i);return a=a||tui.util.bind(this._makePositionForBoundType,this),r=!!r,t.map(function(t,n){var o=e[n];return t.map(function(t,e){var n=o[e].end;return s._makePositionMap(t,n,u,i,a)})},r)},_makePositionForBarChart:function(t,e,i,a,r){var s=o.getRenderedLabelWidth(i,a),u=t.left;return r?u+=t.width+n.SERIES_LABEL_PADDING:u-=s+n.SERIES_LABEL_PADDING,{left:u,top:this._calculateTopPositionForMiddleAlign(t)}},boundsToLabelPositionsForBarChart:function(t,e,i){var n=tui.util.bind(this._makePositionForBarChart,this);return this.boundsToLabelPositions(t,e,i,n)},_makePositionForColumnChart:function(t,e,i,o,a){var r=t.top;return a?r-=e+n.SERIES_LABEL_PADDING:r+=t.height+n.SERIES_LABEL_PADDING,{left:this._calculateLeftPositionForCenterAlign(t),top:r}},boundsToLabelPositionsForColumnChart:function(t,e,i){var n=tui.util.bind(this._makePositionForColumnChart,this);return this.boundsToLabelPositions(t,e,i,n)},boundsToLabelPostionsForTreemap:function(t,e){var i=this,n=tui.util.map(t,function(t){var n,o=e[t.id];return o&&(n=i._makePositionForBoundType(o)),n});return n}};t.exports=a},function(t,e,i){"use strict";function n(t){var e=t.chartOptions.libType,i=t.chartTheme;return t.libType=e,t.chartType="column",t.chartBackground=i.chart.background,new h(t)}var o=i(60),a=i(62),r=i(2),s=i(5),u=i(24),h=tui.util.defineClass(o,{init:function(){o.apply(this,arguments)},_makeBound:function(t,e,i,n,o){return{start:{top:n,left:i,width:t,height:0},end:{top:o,left:i,width:t,height:e}}},_makeColumnChartBound:function(t,e,i,n,o){var a,s,u,h,l=Math.abs(t.baseBarSize*n.ratioDistance),c=t.baseBarSize*n.startRatio,d=t.basePosition+c+r.SERIES_EXPAND_SIZE,p=n.stack!==e.prevStack;return(!i||!this.options.diverging&&p)&&(a=i?this.dataProcessor.findStackIndex(n.stack):o,e.left=e.baseLeft+t.pointInterval*a,e.plusTop=0,e.minusTop=0),n.value>=0?(e.plusTop-=l,s=d+e.plusTop):(s=d+e.minusTop,e.minusTop+=l),e.prevStack=n.stack,h=e.left+t.pointInterval-t.barSize/2,u=this._makeBound(t.barSize,l,h,d,s)},_makeBounds:function(){var t=this,e=this._getSeriesDataModel(),i=s.isValidStackOption(this.options.stackType),n=this.layout.dimension,o=this._makeBaseDataForMakingBound(n.width,n.height);return e.map(function(e,n){var a=n*o.groupSize+t.layout.position.left,r={baseLeft:a,left:a,plusTop:0,minusTop:0,prevStack:null},s=tui.util.bind(t._makeColumnChartBound,t,o,r,i);return e.map(s)})},_calculateLeftPositionOfSumLabel:function(t,e){var i=u.getRenderedLabelWidth(e,this.theme.label);return t.left+(t.width-i+r.TEXT_PADDING)/2}});a.mixin(h),n.componentType="series",n.ColumnChartSeries=h,t.exports=n},function(t,e,i){"use strict";function n(t){var e=t.chartOptions.libType,i=t.chartTheme;return t.libType=e,t.chartType="line",t.chartBackground=i.chart.background,new r(t)}var o=i(60),a=i(66),r=tui.util.defineClass(o,{init:function(){o.apply(this,arguments),this.movingAnimation=null},_makePositions:function(t){return this._makeBasicPositions(t)},_makeSeriesData:function(){var t=this._makePositions();return{chartBackground:this.chartBackground,groupPositions:t,isAvailable:function(){return t&&t.length>0}}},rerender:function(t){var e;return this._cancelMovingAnimation(),e=o.prototype.rerender.call(this,t)}});a.mixin(r),n.componentType="series",t.exports=n},function(t,e,i){"use strict";var n=i(6),o=i(2),a=i(5),r=i(23),s=i(24),u=tui.util.defineClass({_makePositionsForDefaultType:function(t){var e,i=this.layout.dimension,n=this._getSeriesDataModel(),o=t||i.width||0,a=i.height,r=n.getGroupCount(),s=this.layout.position.top,u=this.layout.position.left;return this.aligned?e=o/(r>1?r-1:r):(e=o/r,u+=e/2),n.map(function(t){return t.map(function(t,i){var n;return tui.util.isNull(t.end)||(n={left:u+e*i,top:s+a-t.ratio*a},tui.util.isExisty(t.startRatio)&&(n.startTop=s+a-t.startRatio*a)),n})},!0)},_makePositionForCoordinateType:function(t){var e=this.layout.dimension,i=this._getSeriesDataModel(),n=t||e.width||0,a=e.height,s=this.axisDataMap.xAxis,u=0,h=this.layout.position.top,l=this.layout.position.left;return s.sizeRatio&&(u=r.multiply(n,s.positionRatio),n=r.multiply(n,s.sizeRatio)),i.map(function(t){return t.map(function(t){var e;return tui.util.isNull(t.end)||(e={left:l+t.ratioMap.x*n+u,top:h+a-t.ratioMap.y*a},tui.util.isExisty(t.ratioMap.start)&&(e.startTop=a-t.ratioMap.start*a+o.SERIES_EXPAND_SIZE)),e})},!0)},_makeBasicPositions:function(t){var e;return e=this.dataProcessor.isCoordinateType()?this._makePositionForCoordinateType(t):this._makePositionsForDefaultType(t)},_calculateLabelPositionTop:function(t,e,i,n){var r,s=t.top;return r=a.isValidStackOption(this.options.stackType)?(t.startTop+s-i)/2+1:e>=0&&!n||e<0&&n?s-i-o.SERIES_LABEL_PADDING:s+o.SERIES_LABEL_PADDING},_makeLabelPosition:function(t,e,i,n,o){return{left:t.left,top:this._calculateLabelPositionTop(t,n,e/2,o)}},_getLabelPositions:function(t,e){var i=this,o=n.pivot(this.seriesData.groupPositions),a=t.getFirstItemLabel(),r=s.getRenderedLabelHeight(a,e);return t.map(function(t,e){return t.map(function(t,n){var a=o[e][n],s=i._makeLabelPosition(a,r,t.endLabel,t.end),u={end:s};return t.isRange&&(a.top=a.startTop,u.start=i._makeLabelPosition(a,r,t.startLabel,t.start)),u})})},_getLabelTexts:function(t){return t.map(function(t){return t.map(function(t){var e={end:t.endLabel};return t.isRange&&(e.start=t.startLabel),e})})},_renderSeriesLabel:function(t){var e=this.theme.label,i=this._getSeriesDataModel(),n=this._getLabelTexts(i),o=this._getLabelPositions(i,e);return this.graphRenderer.renderSeriesLabel(t,o,n,e)},onShowGroupTooltipLine:function(t){this.graphRenderer.showGroupTooltipLine&&this.graphRenderer.showGroupTooltipLine(t,this.layout)},onHideGroupTooltipLine:function(){this.seriesData&&this.seriesData.isAvailable()&&this.graphRenderer.hideGroupTooltipLine&&this.graphRenderer.hideGroupTooltipLine()},zoom:function(t){this._cancelMovingAnimation(),this._clearSeriesContainer(t.paper),this._setDataForRendering(t),this._renderSeriesArea(t.paper,tui.util.bind(this._renderGraph,this)),this.animateComponent(!0),tui.util.isNull(this.selectedLegendIndex)||this.graphRenderer.selectLegend(this.selectedLegendIndex)},_isChangedLimit:function(t,e){return t.min!==e.min||t.max!==e.max},_isChangedAxisLimit:function(){var t=this.beforeAxisDataMap,e=this.axisDataMap,i=!0;return t&&(i=this._isChangedLimit(t.yAxis.limit,e.yAxis.limit),e.xAxis.limit&&(i=i||this._isChangedLimit(t.xAxis.limit,e.xAxis.limit))),this.beforeAxisDataMap=e,i},_animate:function(t){var e=this,i=o.ADDING_DATA_ANIMATION_DURATION,n=this._isChangedAxisLimit();n&&this.seriesLabelContainer&&(this.seriesLabelContainer.innerHTML=""),t&&(this.movingAnimation=s.startAnimation(i,t,function(){e.movingAnimation=null}))},_makeZeroTopForAddingData:function(){var t=this.layout.dimension.height,e=this.axisDataMap.yAxis.limit;return this._getLimitDistanceFromZeroPoint(t,e).toMax+o.SERIES_EXPAND_SIZE},animateForAddingData:function(t){var e,i,n,o,a=this.dimensionMap.extendedSeries,r=this.layout.dimension.width,s=t.tickSize,u=this.options.shifting;this.limit=t.limitMap[this.chartType],this.axisDataMap=t.axisDataMap,e=this._makeSeriesData(),i=this._makeParamsForGraphRendering(a,e),u&&(r+=s),n=this._makePositions(r),o=this._makeZeroTopForAddingData(),this.graphRenderer.animateForAddingData(i,s,n,u,o)},_cancelMovingAnimation:function(){this.movingAnimation&&(cancelAnimationFrame(this.movingAnimation.id),this.movingAnimation=null)}});u.mixin=function(t){tui.util.extend(t.prototype,u.prototype)},t.exports=u},function(t,e,i){"use strict";function n(t){var e=t.chartOptions.chartType,i=t.chartOptions.libType,n=t.chartTheme;return t.libType=i,t.chartType=e,t.chartBackground=n.background,new s(t)}var o=i(60),a=i(2),r=i(28),s=tui.util.defineClass(o,{init:function(){o.apply(this,arguments),this.options=tui.util.extend({showDot:!0,showArea:!0},this.options),this.movingAnimation=null,this.drawingType=a.COMPONENT_TYPE_RAPHAEL},_makePositionsForRadial:function(t,e){var i,n=this.layout,o=n.dimension,s=o.width-a.RADIAL_PLOT_PADDING-a.RADIAL_MARGIN_FOR_CATEGORY,u=o.height-a.RADIAL_PLOT_PADDING-a.RADIAL_MARGIN_FOR_CATEGORY,h=s/2+a.RADIAL_PLOT_PADDING/2+a.RADIAL_MARGIN_FOR_CATEGORY/2+n.position.left,l=u/2-a.RADIAL_PLOT_PADDING/2-a.RADIAL_MARGIN_FOR_CATEGORY/2-n.position.top,c=360/e;return i=Math.min(s,u)/2,tui.util.map(t,function(t){var e=tui.util.map(t,function(t,e){var n,o,a,s,d;return tui.util.isNull(t.end)||(d=t.ratio*i,o=l+d,a=360-c*e,s=r.rotatePointAroundOrigin(h,l,h,o,a),n={left:s.x,top:u-s.y}),n});return e.push(e[0]),e},!0)},_getSeriesGroups:function(){var t=this._getSeriesDataModel();return t.map(function(t){return t.map(function(t){return t})},!0)},_makeSeriesData:function(){var t=this._getSeriesGroups(),e=this._makePositionsForRadial(t,this._getSeriesDataModel().getGroupCount());return{groupPositions:e,isAvailable:function(){return e&&e.length>0}}},rerender:function(t){return o.prototype.rerender.call(this,t)}});n.componentType="series",n.RadialChartSeries=s,t.exports=n},function(t,e,i){"use strict";function n(t){var e=t.chartOptions.libType,i=t.chartTheme;return t.libType=e,t.chartType="area",t.chartBackground=i.chart.background,new s(t)}var o=i(60),a=i(66),r=i(5),s=tui.util.defineClass(o,{init:function(){o.apply(this,arguments),this.movingAnimation=null},_makePositionTopOfZeroPoint:function(){var t=this.layout.dimension,e=this.axisDataMap.yAxis.limit,i=this.layout.position.top,n=this._getLimitDistanceFromZeroPoint(t.height,e).toMax+i;return e.min>=0&&!n&&(n=t.height),n},_makeStackedPositions:function(t){var e=this.layout.dimension.height,i=this.layout.position.top,n=this._makePositionTopOfZeroPoint(),o=[];return tui.util.map(t,function(t){return tui.util.map(t,function(t,a){var r=o[a]||n,s=t?t.top:0,u=e-s+i,h=t?r-u:r;return t&&(t.startTop=r,t.top=h),o[a]=h,t})})},_makePositions:function(t){var e=this._makeBasicPositions(t);return r.isValidStackOption(this.options.stackType)&&(e=this._makeStackedPositions(e)),e},_makeSeriesData:function(){var t=this.layout.dimension,e=this.layout.position.top,i=this._getLimitDistanceFromZeroPoint(t.height,this.limit).toMax+e,n=this._makePositions();return{chartBackground:this.chartBackground,groupPositions:n,hasRangeData:this._getSeriesDataModel().hasRangeData(),zeroTop:i,isAvailable:function(){return n&&n.length>0}}},rerender:function(t){var e;return this._cancelMovingAnimation(),e=o.prototype.rerender.call(this,t)}});a.mixin(s),n.componentType="series",n.AreaChartSeries=s,t.exports=n},function(t,e,i){"use strict";function n(t){var e=t.chartOptions.libType,i=t.chartTheme;return t.libType=e,t.chartType="bubble",t.chartBackground=i.chart.background,new s(t)}var o=i(2),a=i(60),r=i(70),s=tui.util.defineClass(a,{init:function(){this.prevClickedIndex=null,this.maxRadius=null,this.drawingType=o.COMPONENT_TYPE_RAPHAEL,a.apply(this,arguments)},_calculateStep:function(){var t,e,i,n=0,o=this.dataProcessor.isXCountGreaterThanYCount(this.chartType);return this.dataProcessor.hasCategories(o)&&(t=this.layout.dimension,i=this.dataProcessor.getCategoryCount(o),e=o?t.height:t.width,n=e/i),n},_makeBound:function(t,e,i){var n=this.layout.dimension,o=this.layout.position,a=tui.util.isExisty(t.x)?t.x*n.width:e,r=tui.util.isExisty(t.y)?t.y*n.height:e;return{left:o.left+a,top:o.top+n.height-r,radius:Math.max(i*t.r,2)}},_makeBounds:function(){var t=this,e=this._getSeriesDataModel(),i=this.maxRadius,n=this._calculateStep(),o=n?n/2:0;return e.map(function(e,a){var r=o+n*a;return e.map(function(e){var n=e&&e.ratioMap;return n?t._makeBound(e.ratioMap,r,i):null})})},_setDataForRendering:function(t){this.maxRadius=t.maxRadius,a.prototype._setDataForRendering.call(this,t)}});r.mixin(s),n.componentType="series",n.BubbleChartSeries=s,t.exports=n},function(t,e){"use strict";var i=tui.util.defineClass({_makeSeriesData:function(){var t=this._makeBounds();return{groupBounds:t,seriesDataModel:this._getSeriesDataModel(),isAvailable:function(){return t&&t.length>0}}},showTooltip:function(t,e,i,n,o){this.eventBus.fire("showTooltip",tui.util.extend({indexes:{groupIndex:i,index:n},mousePosition:o},t))},hideTooltip:function(){this.eventBus.fire("hideTooltip")},_renderGraph:function(t,e,i){var n=tui.util.bind(this.showTooltip,this,{chartType:this.chartType}),o={showTooltip:n,hideTooltip:tui.util.bind(this.hideTooltip,this)},a=this._makeParamsForGraphRendering(t,e);return this.graphRenderer.render(i,a,o)},onClickSeries:function(t){var e,i=this._executeGraphRenderer(t,"findIndexes"),n=this.prevClickedIndexes,o=this.options.allowSelect;i&&n&&(this.onUnselectSeries({indexes:n}),this.prevClickedIndexes=null),i&&(e=!n||i.index!==n.index||i.groupIndex!==n.groupIndex,o&&!e||(this.onSelectSeries({chartType:this.chartType,indexes:i},e),o&&(this.prevClickedIndexes=i)))},onMoveSeries:function(t){this._executeGraphRenderer(t,"moveMouseOnSeries")}});i.mixin=function(t){tui.util.extend(t.prototype,i.prototype)},t.exports=i},function(t,e,i){"use strict";function n(t){var e=t.chartOptions.libType,i=t.chartTheme;return t.libType=e,t.chartType="scatter",t.chartBackground=i.chart.background,new s(t)}var o=i(60),a=i(70),r=i(2),s=tui.util.defineClass(o,{init:function(){this.prevClickedIndex=null,o.apply(this,arguments)},_makeBound:function(t){var e=this.layout.dimension,i=this.layout.position;return{left:i.left+t.x*e.width,top:e.height-t.y*e.height+i.top,radius:r.SCATTER_RADIUS}},_makeBounds:function(){var t=this,e=this._getSeriesDataModel();return e.map(function(e){return e.map(function(e){var i=e&&e.ratioMap;return i?t._makeBound(e.ratioMap):null})})}});a.mixin(s),n.componentType="series",n.ScatterChartSeries=s,t.exports=n},function(t,e,i){"use strict";function n(t){var e=t.chartOptions.libType;return t.libType=e,t.chartType="map",new u(t)}var o=i(60),a=i(2),r=tui.util.browser,s=r.msie&&r.version<=8,u=tui.util.defineClass(o,{init:function(t){this.basePosition={left:0,top:0},this.zoomMagn=1,this.mapRatio=1,this.graphDimension={},this.limitPosition={},this.mapModel=t.mapModel,this.colorSpectrum=t.colorSpectrum,this.prevPosition=null,this.prevMovedIndex=null,this.isDrag=!1,this.startPosition=null,o.call(this,t)},_attachToEventBus:function(){o.prototype._attachToEventBus.call(this),s||this.eventBus.on({dragStartMapSeries:this.onDragStartMapSeries,dragMapSeries:this.onDragMapSeries,dragEndMapSeries:this.onDragEndMapSeries,zoomMap:this.onZoomMap},this)},_setMapRatio:function(t){var e=this.layout.dimension,i=t||this.mapModel.getMapDimension(),n=e.width/i.width,o=e.height/i.height;this.mapRatio=Math.min(n,o)},_setGraphDimension:function(){var t=this.layout.dimension;this.graphDimension={width:t.width*this.zoomMagn,height:t.height*this.zoomMagn}},render:function(t){o.prototype.render.call(this,t),this._setMapRatio()},_setLimitPositionToMoveMap:function(){var t=this.layout.dimension,e=this.graphDimension;this.limitPosition={left:t.width-e.width,top:t.height-e.height}},_renderGraph:function(){this._setGraphDimension(),this._setLimitPositionToMoveMap(),this.graphRenderer.render(this.paper,{colorSpectrum:this.colorSpectrum,mapModel:this.mapModel,layout:this.layout,theme:this.theme})},_renderSeriesLabel:function(){var t=this.mapModel.getLabelData(this.zoomMagn*this.mapRatio);return this.graphRenderer.renderSeriesLabels(this.paper,t,this.theme.label)},_renderSeriesArea:function(t,e,i){o.prototype._renderSeriesArea.call(this,t,e,i)},_adjustMapPosition:function(t){return{left:Math.max(Math.min(t.left,0),this.limitPosition.left),top:Math.max(Math.min(t.top,0),this.limitPosition.top)}},_updateBasePositionForZoom:function(t,e,i){var n=this.basePosition,o=n.left-e.left/2,a=n.top-e.top/2,r={left:o*i+this.limitPosition.left/2,top:a*i+this.limitPosition.top/2};this.basePosition=this._adjustMapPosition(r)},_zoom:function(t,e){var i=this.graphDimension,n=this.limitPosition;this._setGraphDimension(),this._setLimitPositionToMoveMap(),this._updateBasePositionForZoom(i,n,t),this._setMapRatio(this.graphDimension),this.graphRenderer.scaleMapPaths(t,e,this.mapRatio,i,i)},_updatePositionsToResize:function(t){var e=this.mapRatio/t;this.basePosition.left*=e,this.basePosition.top*=e,this.limitPosition.left*=e,this.limitPosition.top*=e},onClickSeries:function(t){var e=this._executeGraphRenderer(t,"findSectorIndex");tui.util.isNull(e)||this.eventBus.fire("selectSeries",{chartType:this.chartType,index:e,code:this.mapModel.getDatum(e).code})},_isChangedPosition:function(t,e){return!t||t.left!==e.left||t.top!==e.top},_showWedge:function(t){var e=this.mapModel.getDatum(t);tui.util.isUndefined(e.ratio)||this.eventBus.fire("showWedge",e.ratio)},_showTooltip:function(t,e){this.eventBus.fire("showTooltip",{chartType:this.chartType,indexes:{index:t},mousePosition:{left:e.left,top:e.top-a.TOOLTIP_GAP}})},onMoveSeries:function(t){var e,i=this._executeGraphRenderer(t,"findSectorIndex");tui.util.isNull(i)?tui.util.isNull(this.prevMovedIndex)||(this.graphRenderer.restoreColor(this.prevMovedIndex),this.eventBus.fire("hideTooltip"),this.prevMovedIndex=null):(this.prevMovedIndex!==i&&(tui.util.isNull(this.prevMovedIndex)||(this.graphRenderer.restoreColor(this.prevMovedIndex), +this.eventBus.fire("hideTooltip")),this.graphRenderer.changeColor(i)),this._isChangedPosition(this.prevPosition,t)&&(e=this.paper.canvas.getBoundingClientRect(),this._showTooltip(i,{left:t.left-e.left,top:t.top-e.top}),this.prevMovedIndex=i),this._showWedge(i)),this.prevPosition=t},onDragStartMapSeries:function(t){this.startPosition={left:t.left,top:t.top}},_movePosition:function(t,e){var i={x:(e.left-t.left)*this.mapRatio,y:(e.top-t.top)*this.mapRatio};this.graphRenderer.moveMapPaths(i,this.graphDimension)},onDragMapSeries:function(t){this._movePosition(this.startPosition,t),this.startPosition=t,this.isDrag||(this.isDrag=!0,this.eventBus.fire("hideTooltip"))},onDragEndMapSeries:function(){this.isDrag=!1},onZoomMap:function(t,e){var i=t/this.zoomMagn,n=this.layout.position,o=e?e:{left:this.layout.dimension.width/2,top:this.layout.dimension.height/2};this.zoomMagn=t,this._zoom(i,{left:o.left-n.left,top:o.top-n.top}),this.eventBus.fire(a.PUBLIC_EVENT_PREFIX+"zoom",t)},_makeExportationSeriesData:function(t){return t}});n.componentType="series",n.MapChartSeries=u,t.exports=n},function(t,e,i){"use strict";function n(t){var e=t.chartOptions.libType,i=t.chartTheme,n=t.chartOptions.chartType;return t.libType=e,t.chartType="pie","combo"===n&&(t.seriesType=t.name.split("Series")[0],t.isCombo=!0),t.chartBackground=i.chart.background,new s(t)}var o=i(60),a=i(2),r=i(5),s=tui.util.defineClass(o,{init:function(t){o.call(this,t),this.isCombo=!!t.isCombo,this.isShowOuterLabel=r.isShowOuterLabel(this.options),this.quadrantRange=null,this.prevClickedIndex=null,this.drawingType=a.COMPONENT_TYPE_RAPHAEL,this._setDefaultOptions()},_makeValidAngle:function(t,e){return tui.util.isUndefined(t)?t=e:t<0?t=a.ANGLE_360-Math.abs(t)%a.ANGLE_360:t>0&&(t%=a.ANGLE_360),t},_transformRadiusRange:function(t){return t=t||["0%","100%"],tui.util.map(t,function(t){var e=.01*parseInt(t,10);return Math.max(Math.min(e,1),0)})},_setDefaultOptions:function(){var t=this.options;t.startAngle=this._makeValidAngle(t.startAngle,0),t.endAngle=this._makeValidAngle(t.endAngle,t.startAngle),t.radiusRange=this._transformRadiusRange(t.radiusRange),1===t.radiusRange.length&&t.radiusRange.unshift(0)},_calculateAngleForRendering:function(){var t,e=this.options.startAngle,i=this.options.endAngle;return t=ei?a.ANGLE_360-(e-i):a.ANGLE_360},_makeSectorData:function(t){var e,i=this,n=this._getSeriesDataModel().getFirstSeriesGroup(),o=t.cx,a=t.cy,r=t.r,s=this.options.startAngle,u=this._calculateAngleForRendering(),h=10,l=this.options.radiusRange[0],c=.5*r;return l&&(c+=c*l),n?e=n.map(function(t){var e=t?t.ratio:0,n=u*e,l=s+n,d=s+n/2,p={start:{startAngle:s,endAngle:s},end:{startAngle:s,endAngle:l}},f={cx:o,cy:a,angle:d};return s=l,{ratio:e,angles:p,centerPosition:i._getArcPosition(tui.util.extend({r:c},f)),outerPosition:{start:i._getArcPosition(tui.util.extend({r:r},f)),middle:i._getArcPosition(tui.util.extend({r:r+h},f))}}}):null},_makeSeriesData:function(){var t=this._makeCircleBound(),e=this._makeSectorData(t);return{chartBackground:this.chartBackground,circleBound:t,sectorData:e,isAvailable:function(){return e&&e.length>0}}},_getQuadrantFromAngle:function(t,e){var i=parseInt(t/a.ANGLE_90,10)+1;return e&&t%a.ANGLE_90===0&&(i+=1===i?3:-1),i},_getRangeForQuadrant:function(){return this.quadrantRange||(this.quadrantRange={start:this._getQuadrantFromAngle(this.options.startAngle),end:this._getQuadrantFromAngle(this.options.endAngle,!0)}),this.quadrantRange},_isInQuadrantRange:function(t,e){var i=this._getRangeForQuadrant();return i.start===t&&i.end===e},_calculateBaseSize:function(){var t,e=this.layout.dimension,i=e.width,n=e.height;return this.isCombo||(t=this._getRangeForQuadrant(),this._isInQuadrantRange(2,3)||this._isInQuadrantRange(4,1)?n*=2:this._isInQuadrantRange(1,2)||this._isInQuadrantRange(3,4)?i*=2:t.start===t.end&&(i*=2,n*=2)),Math.min(i,n)},_calculateRadius:function(){var t=this.isShowOuterLabel?a.PIE_GRAPH_SMALL_RATIO:a.PIE_GRAPH_DEFAULT_RATIO,e=this._calculateBaseSize();return e*t*this.options.radiusRange[1]/2},_calculateCenterXY:function(t){var e=this.layout.dimension,i=this.layout.position,n=t/2,o=e.width/2+i.left,a=e.height/2+i.top;return this.isCombo||(this._isInQuadrantRange(1,1)?(o-=n,a+=n):this._isInQuadrantRange(1,2)?o-=n:this._isInQuadrantRange(2,2)?(o-=n,a-=n):this._isInQuadrantRange(2,3)?a-=n:this._isInQuadrantRange(3,3)?(o+=n,a-=n):this._isInQuadrantRange(3,4)?o+=n:this._isInQuadrantRange(4,1)?a+=n:this._isInQuadrantRange(4,4)&&(o+=n,a+=n)),{cx:o,cy:a}},_makeCircleBound:function(){var t=this._calculateRadius(),e=this._calculateCenterXY(t);return tui.util.extend({r:t},e)},_getArcPosition:function(t){return{left:t.cx+t.r*Math.sin(t.angle*a.RAD),top:t.cy-t.r*Math.cos(t.angle*a.RAD)}},_renderGraph:function(t,e,i){var n=tui.util.bind(this.showTooltip,this,{allowNegativeTooltip:!!this.allowNegativeTooltip,seriesType:this.seriesType,chartType:this.chartType}),o={showTooltip:n,hideTooltip:tui.util.bind(this.hideTooltip,this)},a=this._makeParamsForGraphRendering(t,e),r=this.seriesType,s=this.dataProcessor.seriesDataModelMap,u=[],h=0;return tui.util.forEach(this.dataProcessor.seriesTypes,function(t){var e=!0;return t!==r?u.push(t):e=!1,e}),tui.util.forEach(u,function(t){h+=s[t].baseGroups.length}),a.additionalIndex=h,this.graphRenderer.render(i,a,o)},resize:function(){o.prototype.resize.apply(this,arguments),this._moveLegendLines()},showTooltip:function(t,e,i,n,o){this.eventBus.fire("showTooltip",tui.util.extend({indexes:{groupIndex:i,index:n},mousePosition:o},t))},hideTooltip:function(){this.eventBus.fire("hideTooltip")},_makeSeriesDataBySelection:function(t){return{indexes:{index:t,groupIndex:t}}},_renderLegendLabel:function(t,e){var i,n=this.dataProcessor,o=n.getLegendLabels(this.seriesType);return i=e.funcMoveToPosition?tui.util.map(e.positions,function(t,i){var n=null;return t&&(n=e.funcMoveToPosition(t,o[i])),n}):e.positions,this.graphRenderer.renderLabels(t,i,o,this.theme.label)},_pickPositionsFromSectorData:function(t){return tui.util.map(this.seriesData.sectorData,function(e){return e.ratio?e[t]:null})},_renderCenterLegend:function(t){return this._renderLegendLabel(t,{positions:this._pickPositionsFromSectorData("centerPosition")})},_addEndPosition:function(t,e){tui.util.forEachArray(e,function(e){var i;e&&(i=tui.util.extend({},e.middle),i.left-1&&e!==o,a&&!i||(this.onSelectSeries({chartType:this.chartType,indexes:{index:e,legendIndex:n.legendIndex}},i),a&&e>-1&&(this.prevClickedIndex=e)))},onMoveSeries:function(t){this._executeGraphRenderer(t,"moveMouseOnSeries")}});n.componentType="series",n.PieChartSeries=s,t.exports=n},function(t,e,i){"use strict";function n(t){var e=t.chartOptions.libType;return t.libType=e,t.chartType="heatmap",new r(t)}var o=i(60),a=i(63),r=tui.util.defineClass(o,{init:function(t){this.colorSpectrum=t.colorSpectrum,o.call(this,t)},_makeSeriesData:function(){var t=this._makeBounds(),e=this._getSeriesDataModel();return{colorSpectrum:this.colorSpectrum,groupBounds:t,seriesDataModel:e,isAvailable:function(){return t&&t.length>0}}},_makeBound:function(t,e,i,n){var o=this.layout.dimension.height,a=t*i+this.layout.position.left,r=o-e*(n+1)+this.layout.position.top;return{end:{left:a,top:r,width:t,height:e}}},_makeBounds:function(){var t=this,e=this._getSeriesDataModel(),i=this.layout.dimension,n=i.width/this.dataProcessor.getCategoryCount(!1),o=i.height/this.dataProcessor.getCategoryCount(!0);return e.map(function(e,i){return e.map(function(e,a){return t._makeBound(n,o,i,a)})})},onShowTooltip:function(t){var e=this._getSeriesDataModel(),i=t.indexes,n=e.getSeriesItem(i.groupIndex,i.index).ratio;this.eventBus.fire("showWedge",n)},_renderSeriesLabel:function(t){var e=this._getSeriesDataModel(),i=this.seriesData.groupBounds,n=this.theme.label,o=this.selectedLegendIndex,r=a.boundsToLabelPositions(e,i,n),s=e.map(function(t){return t.valuesMap.value});return this.graphRenderer.renderSeriesLabel(t,r,s,n,o)},resize:function(){this.boundMap=null,o.prototype.resize.apply(this,arguments)},_makeExportationSeriesData:function(t){return{x:t.indexes.groupIndex,y:t.indexes.index}}});n.componentType="series",n.HeatmapChartSeries=r,t.exports=n},function(t,e,i){"use strict";function n(t){var e=t.chartOptions.libType,i=t.chartTheme;return t.libType=e,t.chartType="treemap",t.chartBackground=i.chart.background,new h(t)}var o=i(60),a=i(76),r=i(63),s=i(2),u=i(5),h=tui.util.defineClass(o,{init:function(t){o.call(this,t),this.theme.borderColor=this.theme.borderColor||s.TREEMAP_DEFAULT_BORDER,this.rootId=s.TREEMAP_ROOT_ID,this.startDepth=1,this.selectedGroup=null,this.boundMap=null,this.colorSpectrum=t.colorSpectrum,this._initOptions()},_initOptions:function(){this.options.useColorValue=!!this.options.useColorValue,tui.util.isUndefined(this.options.zoomable)&&(this.options.zoomable=!this.options.useColorValue),tui.util.isUndefined(this.options.useLeafLabel)&&(this.options.useLeafLabel=!this.options.zoomable)},_makeSeriesData:function(){var t=this._getBoundMap(),e=this._makeBounds(t);return{boundMap:t,groupBounds:e,seriesDataModel:this._getSeriesDataModel(),startDepth:this.startDepth,isPivot:!0,colorSpectrum:this.options.useColorValue?this.colorSpectrum:null,chartBackground:this.chartBackground,zoomable:this.options.zoomable,isAvailable:function(){return e&&e.length>0}}},_makeBoundMap:function(t,e,i){var n,o=this,r=this._getSeriesDataModel(),s=tui.util.extend({},this.layout.dimension,this.layout.position);return i=i||s,n=r.findSeriesItemsByParent(t),e=tui.util.extend(e||{},a.squarify(i,n)),tui.util.forEachArray(n,function(t){e=o._makeBoundMap(t.id,e,e[t.id])}),e},_makeBounds:function(t){var e,i=this.startDepth,n=this._getSeriesDataModel();return e=this.options.zoomable?function(t){return t.depth===i}:function(t){return!t.hasChild},n.map(function(i){return i.map(function(i){var n=t[i.id],o=null;return n&&e(i)&&(o={end:n}),o},!0)},!0)},_getBoundMap:function(){return this.boundMap||(this.boundMap=this._makeBoundMap(this.rootId)),this.boundMap},_shouldDimmed:function(t,e,i){var n,o=!1;return e&&i.id!==e.id&&i.group===e.group&&(n=t.findParentByDepth(i.id,e.depth+1),n&&n.parent===e.id&&(o=!0)),o},_renderSeriesLabel:function(t){var e,i,n,o=this._getSeriesDataModel(),a=this._getBoundMap(),s=this.theme.label,u=this.options.labelTemplate;return i=this.options.useLeafLabel?o.findLeafSeriesItems(this.selectedGroup):o.findSeriesItemsByDepth(this.startDepth,this.selectedGroup),n=tui.util.map(i,function(t){var e=u?u(t.pickLabelTemplateData()):t.label;return e}),e=r.boundsToLabelPostionsForTreemap(i,a,s),this.graphRenderer.renderSeriesLabelForTreemap(t,e,n,s)},resize:function(){this.boundMap=null,o.prototype.resize.apply(this,arguments)},_zoom:function(t,e,i){this._clearSeriesContainer(),this.boundMap=null,this.rootId=t,this.startDepth=e,this.selectedGroup=i,this._renderSeriesArea(this.paper,tui.util.bind(this._renderGraph,this))},zoom:function(t){var e,i,n=t.index;return this.labelSet.remove(),n===-1?void this._zoom(s.TREEMAP_ROOT_ID,1,null):(e=this._getSeriesDataModel(),i=e.getSeriesItem(0,n,!0),void(i&&i.hasChild&&(this._zoom(i.id,i.depth+1,i.group),this.eventBus.fire("afterZoom",n))))},_makeExportationSeriesData:function(t){var e=t.indexes,i=this._getSeriesDataModel().getSeriesItem(e.groupIndex,e.index,!0);return tui.util.extend({chartType:this.chartType,indexes:i.indexes})},onHoverSeries:function(t){u.isShowLabel(this.options)&&this.graphRenderer.showAnimation(t,this.options.useColorValue,.6)},onHoverOffSeries:function(t){u.isShowLabel(this.options)&&t&&this.graphRenderer.hideAnimation(t,this.options.useColorValue)},onShowTooltip:function(t){var e=this._getSeriesDataModel(),i=t.indexes,n=e.getSeriesItem(i.groupIndex,i.index,!0).colorRatio;n>-1&&this.eventBus.fire("showWedge",n)}});n.componentType="series",n.TreemapChartSeries=h,t.exports=n},function(t,e,i){"use strict";var n=i(23),o=i(6),a={boundMap:{},_makeBaseBound:function(t){return tui.util.extend({},t)},_calculateScale:function(t,e,i){return e*i/n.sum(t)},_makeBaseData:function(t,e,i){var n=this._calculateScale(tui.util.pluck(t,"value"),e,i),o=tui.util.map(t,function(t){return{id:t.id,weight:t.value*n}}).sort(function(t,e){return e.weight-t.weight});return o},_worst:function(t,e,i,n){var o=t*t,a=n*n;return Math.max(a*i/o,o/(a*e))},_changedStackDirection:function(t,e,i,n){var a=o.min(e),r=o.max(e),s=this._worst(t,a,r,i),u=this._worst(t+n,Math.min(a,n),Math.max(r,n),i);return u>=s},_isVerticalStack:function(t){return t.height=0?(e.plusTop-=l,s=d+e.plusTop):(s=d+e.minusTop,e.minusTop+=l),u=e.left+t.pointInterval-t.barSize/2,h=tui.util.map(n.outliers,function(e){return{top:t.baseBarSize*(1-e.ratio)+p,left:u+t.barSize/2}}),{start:{top:d,left:u,width:t.barSize,height:0},end:{top:s,left:u,width:t.barSize,height:l},min:{top:t.baseBarSize*(1-n.minRatio)+p,left:u,width:t.barSize,height:0},max:{top:t.baseBarSize*(1-n.maxRatio)+p,left:u,width:t.barSize,height:0},median:{top:t.baseBarSize*(1-n.medianRatio)+p,left:u,width:t.barSize,height:0},outliers:h}},_makeBounds:function(){var t=this,e=this._getSeriesDataModel(),i=s.isValidStackOption(this.options.stackType),n=this.layout.dimension,o=this._makeBaseDataForMakingBound(n.width,n.height);return e.map(function(e,n){var a=n*o.groupSize+t.layout.position.left,r={baseLeft:a,left:a,plusTop:0,minusTop:0,prevStack:null},s=tui.util.bind(t._makeBoxplotChartBound,t,o,r,i);return e.map(s)})},_calculateLeftPositionOfSumLabel:function(t,e){var i=u.getRenderedLabelWidth(e,this.theme.label);return t.left+(t.width-i+r.TEXT_PADDING)/2}});a.mixin(h),n.componentType="series",n.BoxplotChartSeries=h,t.exports=n},function(t,e,i){"use strict";function n(t){return new l(t)}var o=tui.util.browser.msie&&tui.util.browser.version<=8,a=i(79),r=i(2),s=i(14),u=i(24),h=i(34),l=tui.util.defineClass({className:"tui-chart-zoom-area",init:function(t){this.eventBus=t.eventBus,this.magn=1,this.stackedWheelDelta=0,this.drawingType=r.COMPONENT_TYPE_DOM,this._attachToEventBus()},_attachToEventBus:function(){this.eventBus.on("wheel",this.onWheel,this)},render:function(t){var e;return o||(e=s.create("DIV",this.className),e.innerHTML+=a.ZOOM_BUTTONS,u.renderPosition(e,t.positionMap.series),this._attachEvent(e)),e},_findBtnElement:function(t){var e="tui-chart-zoom-btn",i=t;return s.hasClass(t,e)||(i=s.findParentByClass(t,e)),i},_zoom:function(t,e){this.eventBus.fire("zoomMap",t,e)},_onClick:function(t){var e=t.target||t.srcElement,i=this._findBtnElement(e),n=i.getAttribute("data-magn"),o=this._calculateMagn(n);return o>5?this.magn=5:o<1?this.magn=1:o>=1&&this._zoom(o),t.preventDefault&&t.preventDefault(),!1},_attachEvent:function(t){h.on(t,"click",this._onClick,this)},_calculateMagn:function(t){return t>0?this.magn+=.1:t<0&&(this.magn-=.1),this.magn},onWheel:function(t,e){var i=this._calculateMagn(t);i>5?this.magn=5:i<1?this.magn=1:i>=1&&this._zoom(i,e)}});n.componentType="zoom",t.exports=n},function(t,e,i){"use strict";var n=i(44),o={HTML_SERIES_LABEL:'
{{ label }}
',TEXT_CSS_TEXT:"left:{{ left }}px;top:{{ top }}px;font-family:{{ fontFamily }};font-size:{{ fontSize }}px;font-weight:{{ fontWeight }}{{opacity}}",TEXT_CSS_TEXT_FOR_LINE_TYPE:"left:{{ left }}%;top:{{ top }}%;font-family:{{ fontFamily }};font-size:{{ fontSize }}px;font-weight:{{ fontWeight }}{{opacity}}",HTML_ZOOM_BUTTONS:'
',HTML_SERIES_BLOCK:'
{{ label }}
'};t.exports={tplSeriesLabel:n.template(o.HTML_SERIES_LABEL),tplCssText:n.template(o.TEXT_CSS_TEXT),tplCssTextForLineType:n.template(o.TEXT_CSS_TEXT_FOR_LINE_TYPE),ZOOM_BUTTONS:o.HTML_ZOOM_BUTTONS,tplSeriesBlock:n.template(o.HTML_SERIES_BLOCK)}},function(t,e,i){"use strict";var n=i(2),o=i(81),a=i(82),r=i(86),s=i(88),u=i(83),h=i(4),l=i(5),c=i(24),d=i(23),p=i(11),f=Array.prototype.concat,m=tui.util.isUndefined,g=tui.util.defineClass(o,{init:function(t,e,i,n){this.originalRawData=p.deepCopy(t),this.chartType=e,this.options=i,this.seriesTypes=n,this.originalLegendData=null,this.dynamicData=[],this.defaultValues=[0,500],this.initData(t),this.initZoomedRawData(),this.baseInit()},getOriginalRawData:function(){return p.deepCopy(this.originalRawData)},getZoomedRawData:function(){var t=this.zoomedRawData;return t=t?p.deepCopy(t):this.getOriginalRawData()},_filterSeriesDataByIndexRange:function(t,e,i){return tui.util.forEachArray(t,function(t){t.data=t.data.slice(e,i+1)}),t},_filterRawDataByIndexRange:function(t,e){var i=this,n=e[0],o=e[1];return tui.util.forEach(t.series,function(e,a){t.series[a]=i._filterSeriesDataByIndexRange(e,n,o)}),t.categories&&(t.categories=t.categories.slice(n,o+1)),t},updateRawDataForZoom:function(t){var e=this.getRawData(),i=this.getZoomedRawData();this.zoomedRawData=this._filterRawDataByIndexRange(i,t),e=this._filterRawDataByIndexRange(e,t),this.initData(e)},initZoomedRawData:function(){this.zoomedRawData=null},initData:function(t){this.rawData=t,this.categoriesMap=null,this.stacks=null,this.seriesDataModelMap={},this.seriesGroups=null,this.valuesMap={},this.legendLabels=null,this.legendData=null,this.multilineCategories=null,this.coordinateType=null},getRawData:function(){return this.rawData},findChartType:function(t){return h.findChartType(this.rawData.seriesAlias,t)},_escapeCategories:function(t){return tui.util.map(t,function(t){return tui.util.encodeHTMLEntity(String(t))})},_mapCategories:function(t,e){var i=e+"Axis",n=this.options[i]||{},o=!1;return o=tui.util.isArray(n)?tui.util.filter(n,function(t){return t.type&&l.isDatetimeType(t.type)}):n.type&&l.isDatetimeType(n.type),t=o?tui.util.map(t,function(t){var e=new Date(t);return e.getTime()||t}):this._escapeCategories(t)},_processCategories:function(t){var e=this.rawData.categories,i={};return tui.util.isArray(e)?i[t]=this._mapCategories(e,t):e&&(e.x&&(i.x=this._mapCategories(e.x,"x")),e.y&&(i.y=this._mapCategories(e.y,"y").reverse())),i},getCategories:function(t){var e=t?"y":"x",i=[];return this.categoriesMap||(this.categoriesMap=this._processCategories(e)),tui.util.isExisty(t)?i=this.categoriesMap[e]||[]:tui.util.forEach(this.categoriesMap,function(t){return i=t,!1}),i},getCategoryCount:function(t){var e=this.getCategories(t);return e?e.length:0},hasCategories:function(t){return!!this.getCategoryCount(t)},isXCountGreaterThanYCount:function(t){var e=this.getSeriesDataModel(t);return e.isXCountGreaterThanYCount()},hasXValue:function(t){var e=this.isXCountGreaterThanYCount(t);return!this.hasCategories(e)||e},hasYValue:function(t){var e=this.isXCountGreaterThanYCount(t);return!this.hasCategories(e)||!e},getCategory:function(t,e){return this.getCategories(e)[t]},findCategoryIndex:function(t){var e=this.getCategories(),i=null;return tui.util.forEachArray(e,function(e,n){return e===t&&(i=n),tui.util.isNull(i)}),i},containedAllVisibleCategory:function(t,e){var i,n,o,a,r,s,u=this.getCategories();return!!u.length&&(!(!this.originalRawData||!this.originalRawData.categories)&&(i=u[0],n=u[u.length-1],tui.util.forEachArray(this.originalRawData.categories,function(u,h){var l,c;return u===t?r=h:u===e?s=h:u===i?o=h:u===n&&(a=h),l=o&&(tui.util.isUndefined(r)||s),c=s&&tui.util.isUndefined(a),!(l||c)}),r=0?i=t.min:t.max<=0&&(i=t.max),this.getSeriesDataModel(e).addStartValueToAllSeriesItem(i)},addDataRatios:function(t,e,i){var n=this.getSeriesDataModel(i);this._addStartValueToAllSeriesItem(t,i),n.addDataRatios(t,e)},addDataRatiosForTreemapChart:function(t,e){this.getSeriesDataModel(e).addDataRatios(t)},_createBaseValuesForNormalStackedChart:function(t){var e=this.getSeriesDataModel(t),i=[];return e.each(function(t){var e=t._makeValuesMapPerStack();tui.util.forEach(e,function(t){var e=d.sumPlusValues(t),n=d.sumMinusValues(t);i=i.concat([e,n])})}),i},createBaseValuesForLimit:function(t,e,i,n,o){var a;return l.isComboChart(this.chartType)&&e?(a=this.getValues(this.chartType,n),l.isNormalStackChart(t,i)&&(a=a.concat(this._createBaseValuesForNormalStackedChart(t)))):a=l.isTreemapChart(t)?this.getValues(t,"colorValue"):l.isNormalStackChart(t,i)?this._createBaseValuesForNormalStackedChart(t):this.getValues(t,n,o),a},findOverflowItem:function(t,e){var i=this.getSeriesDataModel(t),o=i.getMaxValue("r"),a=function(t){return t.r/o>n.HALF_RATIO};return{minItem:i.findMinSeriesItem(e,a),maxItem:i.findMaxSeriesItem(e,a)}}});t.exports=g},function(t,e,i){"use strict";var n=i(6),o=i(24),a=i(23),r=tui.util.defineClass({baseInit:function(){this.formatFunctions=null},getValues:function(){},getMaxValue:function(t,e){return n.max(this.getValues(t,e))},getFormattedMaxValue:function(t,e,i){var n=this.getMaxValue(t,i),a=this.getFormatFunctions();return o.formatValue(n,a,t,e,i)},_pickMaxLenUnderPoint:function(t){var e=0;return tui.util.forEachArray(t,function(t){var i=a.getDecimalLength(t);i>e&&(e=i)}),e},_isZeroFill:function(t){return t.length>2&&"0"===t.charAt(0)},_isDecimal:function(t){var e=t.indexOf(".");return e>-1&&e-1},_formatToZeroFill:function(t,e){var i=e<0;return e=o.formatToZeroFill(Math.abs(e),t),(i?"-":"")+e},_formatToDecimal:function(t,e){return o.formatToDecimal(e,t)},_findSimpleTypeFormatFunctions:function(t){var e,i=[];if(this._isDecimal(t))e=this._pickMaxLenUnderPoint([t]),i=[tui.util.bind(this._formatToDecimal,this,e)];else if(this._isZeroFill(t))return e=t.length,i=[tui.util.bind(this._formatToZeroFill,this,e)];return this._isComma(t)&&i.push(o.formatToComma),i},_findFormatFunctions:function(){var t=tui.util.pick(this.options,"chart","format"),e=[];return tui.util.isFunction(t)?e=[t]:tui.util.isString(t)&&(e=this._findSimpleTypeFormatFunctions(t)),e},getFormatFunctions:function(){return this.formatFunctions||(this.formatFunctions=this._findFormatFunctions()),this.formatFunctions}});t.exports=r},function(t,e,i){"use strict";var n=i(83),o=i(84),a=i(85),r=i(5),s=i(23),u=i(6),h=Array.prototype.concat,l=tui.util.defineClass({init:function(t,e,i,n,o){this.chartType=e,this.options=i||{},this.formatFunctions=n,this.rawSeriesData=t||[],this.isCoordinateType=o,this.baseGroups=null,this.groups=null,this.options.series=this.options.series||{},this.isDivergingChart=r.isDivergingChart(e,this.options.series.diverging),this.valuesMap={},this._removeRangeValue()},_removeRangeValue:function(){var t=tui.util.pick(this.options,"series")||{},e=r.isAllowRangeData(this.chartType)&&!r.isValidStackOption(t.stackType)&&!t.spline;e||this.isCoordinateType||tui.util.forEachArray(this.rawSeriesData,function(t){tui.util.isArray(t.data)&&tui.util.forEachArray(t.data,function(e,i){tui.util.isExisty(e)&&(t.data[i]=h.apply(e)[0])})})},_createBaseGroups:function(){var t,e,i=this.chartType,n=this.formatFunctions,s=this.options.xAxis,u=this.isDivergingChart,h=this.isCoordinateType,l=r.isPieChart(this.chartType),c=r.isHeatmapChart(this.chartType)||r.isTreemapChart(this.chartType);return h?(e=a,t=function(t){t.sort(function(t,e){return t.x-e.x})}):(e=o,t=function(){}),tui.util.map(this.rawSeriesData,function(o){var a,r,d;return r=tui.util.isArray(o)?o:[].concat(o.data),c||(a=o.stack),(h||l)&&(r=tui.util.filter(r,tui.util.isExisty)),d=tui.util.map(r,function(t,o){return new e({datum:t,chartType:i,formatFunctions:n,index:o,stack:a,isDivergingChart:u,xAxisType:s.type,dateFormat:s.dateFormat})}),t(d),d})},_getBaseGroups:function(){return this.baseGroups||(this.baseGroups=this._createBaseGroups()),this.baseGroups},_createSeriesGroupsFromRawData:function(t){var e=this._getBaseGroups();return t&&(e=u.pivot(e)),tui.util.map(e,function(t){return new n(t)})},_getSeriesGroups:function(){return this.groups||(this.groups=this._createSeriesGroupsFromRawData(!0)),this.groups},getGroupCount:function(){return this._getSeriesGroups().length},_getPivotGroups:function(){return this.pivotGroups||(this.pivotGroups=this._createSeriesGroupsFromRawData()),this.pivotGroups},getSeriesGroup:function(t,e){return e?this._getPivotGroups()[t]:this._getSeriesGroups()[t]},getFirstSeriesGroup:function(t){return this.getSeriesGroup(0,t)},getFirstItemLabel:function(){return this.getFirstSeriesGroup().getFirstSeriesItem().label},getSeriesItem:function(t,e,i){return this.getSeriesGroup(t,i).getSeriesItem(e)},getFirstSeriesItem:function(){return this.getSeriesItem(0,0)},getValue:function(t,e){return this.getSeriesItem(t,e).value},getMinValue:function(t){return u.min(this.getValues(t))},getMaxValue:function(t){return u.max(this.getValues(t))},_findSeriesItem:function(t){var e;return this.each(function(i){return e=i.find(t),!e}),e},_findSeriesItemByValue:function(t,e,i){return i=i||function(){return null},this._findSeriesItem(function(n){return n&&n[t]===e&&i(n)})},findMinSeriesItem:function(t,e){var i=this.getMinValue(t);return this._findSeriesItemByValue(t,i,e)},findMaxSeriesItem:function(t,e){var i=this.getMaxValue(t);return this._findSeriesItemByValue(t,i,e)},_createValues:function(t){var e=this.map(function(e){return e.getValues(t)});return e=h.apply([],e),tui.util.filter(e,function(t){return!isNaN(t)})},getValues:function(t){return t=t||"value",this.valuesMap[t]||(this.valuesMap[t]=this._createValues(t)),this.valuesMap[t]},isXCountGreaterThanYCount:function(){return this.getValues("x").length>this.getValues("y").length},_addRatiosWhenNormalStacked:function(t){var e=Math.abs(t.max-t.min);this.each(function(t){t.addRatios(e)})},_calculateBaseRatio:function(){var t=this.getValues(),e=s.sumPlusValues(t),i=Math.abs(s.sumMinusValues(t)),n=e>0&&i>0?.5:1;return n},_addRatiosWhenPercentStacked:function(){var t=this._calculateBaseRatio();this.each(function(e){e.addRatiosWhenPercentStacked(t)})},_addRatiosWhenDivergingStacked:function(){this.each(function(t){var e=t.pluck("value"),i=s.sumPlusValues(e),n=Math.abs(s.sumMinusValues(e));t.addRatiosWhenDivergingStacked(i,n)})},_makeSubtractionValue:function(t){var e=r.allowMinusPointRender(this.chartType),i=0;return!e&&r.isMinusLimit(t)?i=t.max:(e||t.min>=0)&&(i=t.min),i},_addRatios:function(t){var e=Math.abs(t.max-t.min),i=this._makeSubtractionValue(t);this.each(function(t){t.addRatios(e,i)})},addDataRatios:function(t,e){var i=r.isAllowedStackOption(this.chartType);i&&r.isNormalStack(e)?this._addRatiosWhenNormalStacked(t):i&&r.isPercentStack(e)?this.isDivergingChart?this._addRatiosWhenDivergingStacked():this._addRatiosWhenPercentStacked():this._addRatios(t)},addDataRatiosOfPieChart:function(){this.each(function(t){var e=s.sum(t.pluck("value"));t.addRatios(e)})},addDataRatiosForCoordinateType:function(t,e){var i,n,o,a,r=t.xAxis,s=t.yAxis,h=e?u.max(this.getValues("r")):0;r&&(i=Math.abs(r.max-r.min),n=this._makeSubtractionValue(r)),s&&(o=Math.abs(s.max-s.min),a=this._makeSubtractionValue(s)),this.each(function(t){t.each(function(t){t&&(t.addRatio("x",i,n),t.addRatio("y",o,a),t.addRatio("r",h,0),tui.util.isExisty(t.start)&&t.addRatio("start",o,a))})})},addStartValueToAllSeriesItem:function(t){this.each(function(e){e.addStartValueToAllSeriesItem(t)})},hasRangeData:function(){var t=!1;return this.each(function(e){return t=e.hasRangeData(),!t}),t},each:function(t,e){var i=e?this._getPivotGroups():this._getSeriesGroups();tui.util.forEachArray(i,function(e,i){return t(e,i)})},map:function(t,e){var i=[];return this.each(function(e,n){i.push(t(e,n))},e),i}});t.exports=l},function(t,e,i){"use strict";var n=i(23),o=tui.util.defineClass({init:function(t){this.items=t,this.valuesMap={},this.valuesMapPerStack=null},getSeriesItemCount:function(){return this.items.length},getSeriesItem:function(t){return this.items[t]},getFirstSeriesItem:function(){return this.getSeriesItem(0)},_createValues:function(t){var e=[];return this.each(function(i){i&&(tui.util.isExisty(i[t])&&e.push(i[t]),tui.util.isExisty(i.start)&&e.push(i.start))}),e},getValues:function(t){return t=t||"value",this.valuesMap[t]||(this.valuesMap[t]=this._createValues(t)),this.valuesMap[t]},_makeValuesMapPerStack:function(){var t={};return this.each(function(e){t[e.stack]||(t[e.stack]=[]),t[e.stack].push(e.value)}),t},getValuesMapPerStack:function(){return this.valuesMapPerStack||(this.valuesMapPerStack=this._makeValuesMapPerStack()),this.valuesMapPerStack},_makeSumMapPerStack:function(){var t=this.getValuesMapPerStack(),e={};return tui.util.forEach(t,function(t,i){e[i]=n.sum(tui.util.map(t,function(t){return Math.abs(t)}))}),e},addStartValueToAllSeriesItem:function(t){this.each(function(e){e&&e.addStart(t)})},addRatiosWhenPercentStacked:function(t){var e=this._makeSumMapPerStack();this.each(function(i){var n=e[i.stack];i.addRatio(n,0,t)})},addRatiosWhenDivergingStacked:function(t,e){this.each(function(i){var n=i.value>=0?t:e;i.addRatio(n,0,.5)})},addRatios:function(t,e){this.each(function(i){i&&i.addRatio(t,e)})},hasRangeData:function(){var t=!1;return this.each(function(e){return t=e&&e.isRange,!t}),t},each:function(t){tui.util.forEachArray(this.items,t)},map:function(t){return tui.util.map(this.items,t)},pluck:function(t){var e=tui.util.filter(this.items,tui.util.isExisty);return tui.util.pluck(e,t)},find:function(t){var e;return this.each(function(i){return t(i)&&(e=i),!e}),e||null},filter:function(t){return tui.util.filter(this.items,t)}});t.exports=o},function(t,e,i){"use strict";var n=i(2),o=i(24),a=i(23),r=tui.util.defineClass({init:function(t){this.chartType=t.chartType,this.stack=t.stack||n.DEFAULT_STACK,this.isDivergingChart=t.isDivergingChart,this.formatFunctions=t.formatFunctions,this.isRange=!1,this.value=null,this.label=null,this.ratio=null,this.end=null,this.endLabel=null,this.endRatio=null,this.start=null,this.startLabel=null,this.startRatio=null,this.ratioDistance=null,this._initValues(t.datum,t.index)},_initValues:function(t,e){var i=this._createValues(t),n="makingSeriesLabel",a=i.length>1,r=i[0];this.value=this.end=r,this.index=e,this.isDivergingChart&&(r=Math.abs(r)),tui.util.isNull(r)?this.label="":this.label=o.formatValue(r,this.formatFunctions,this.chartType,n),this.endLabel=this.label,a&&(this.addStart(i[1],!0),this._updateFormattedValueforRange(),this.isRange=!0)},_createValues:function(t){var e=tui.util.map([].concat(t),function(t){return tui.util.isNull(t)?null:parseFloat(t)});return e=e.sort(function(t,e){return t<0&&e<0?t-e:e-t})},addStart:function(t){tui.util.isNull(this.start)&&(this.start=t,this.startLabel=o.formatValue(t,this.formatFunctions,this.chartType,"series"))},_updateFormattedValueforRange:function(){this.label=this.startLabel+" ~ "+this.endLabel},addRatio:function(t,e,i){t=t||1,i=i||1,e=e||0,this.ratio=this.endRatio=a.calculateRatio(this.value,t,e,i),tui.util.isExisty(this.start)&&(this.startRatio=a.calculateRatio(this.start,t,e,i),this.ratioDistance=Math.abs(this.endRatio-this.startRatio))},_getFormattedValueForTooltip:function(t){return o.formatValue(this[t],this.formatFunctions,this.chartType,"tooltip",t)},pickValueMapForTooltip:function(){var t={value:this._getFormattedValueForTooltip("value"),ratio:this.ratio};return tui.util.isExisty(this.start)&&(t.start=this._getFormattedValueForTooltip("start"),t.end=this._getFormattedValueForTooltip("end"),t.startRatio=this.startRatio,t.endRatio=this.endRatio),t}});t.exports=r},function(t,e,i){"use strict";var n=i(5),o=i(24),a=tui.util.defineClass({init:function(t){this.chartType=t.chartType,this.formatFunctions=t.formatFunctions,this.xAxisType=t.xAxisType,this.dateFormat=t.dateFormat,this.ratioMap={},this._initData(t.datum,t.index)},_initData:function(t,e){var i;tui.util.isArray(t)?(this.x=t[0]||0,this.y=t[1]||0,n.isBubbleChart(this.chartType)?(this.r=t[2],this.label=t[3]||""):this.label=t[2]||""):(this.x=t.x,this.y=t.y,this.r=t.r,this.label=t.label||""),n.isDatetimeType(this.xAxisType)&&(i=tui.util.isDate(this.x)?this.x:new Date(this.x),this.x=i.getTime()||0),this.index=e,this.label||(n.isLineTypeChart(this.chartType)&&n.isDatetimeType(this.xAxisType)?this.label=o.formatDate(this.x,this.dateFormat):this.label=o.formatValue(this.x,this.formatFunctions,this.chartType,"series"),this.label+=", "+o.formatValue(this.y,this.formatFunctions,this.chartType,"series"))},addStart:function(t){this.start=t},addRatio:function(t,e,i){!tui.util.isExisty(this.ratioMap[t])&&e&&(this.ratioMap[t]=(this[t]-i)/e)},_getFormattedValueForTooltip:function(t){var e=this.ratioMap[t],i=this[t],n=o.formatValue(i,this.formatFunctions,this.chartType,"tooltip",t);return tui.util.isNumber(e)?n:i},pickValueMapForTooltip:function(){var t={x:this._getFormattedValueForTooltip("x"),y:this._getFormattedValueForTooltip("y"),xRatio:this.ratioMap.x,yRatio:this.ratioMap.y};return tui.util.isExisty(this.r)&&(t.r=this._getFormattedValueForTooltip("r"),t.rRatio=this.ratioMap.r),t}});t.exports=a},function(t,e,i){"use strict";var n=i(87),o=i(82),a=Array.prototype.concat,r=tui.util.defineClass(o,{init:function(t,e,i,n){this.chartType=e,this.options=i||{},this.formatFunctions=n,this.rawSeriesData=t||[],this.baseGroups=null,this.groups=null,this.options.series=this.options.series||{},this.valuesMap={}},_createBaseGroups:function(){var t=this.chartType,e=this.formatFunctions;return tui.util.map(this.rawSeriesData,function(i){var o=tui.util.isArray(i)?i:[].concat(i.data),a=tui.util.map(o,function(i,o){return new n({datum:i,chartType:t,formatFunctions:e,index:o})});return a})},_createValues:function(){var t=[];return this.map(function(e){tui.util.forEach(e.items,function(e){t.push(e.min),t.push(e.max),t.push(e.uq),t.push(e.lq),t.push(e.median)})}),t=a.apply([],t),tui.util.filter(t,function(t){return!isNaN(t)})}});t.exports=r},function(t,e,i){"use strict";var n=i(24),o=i(23),a=tui.util.defineClass({init:function(t){this.chartType=t.chartType,this.formatFunctions=t.formatFunctions,this.value=null,this.label=null,this.ratio=null,this.min=null,this.minLabel=null,this.minRatio=null,this.max=null,this.maxLabel=null,this.maxRatio=null,this.median=null,this.medianLabel=null,this.medianRatio=null,this.lq=null,this.lqLabel=null,this.lqRatio=null,this.uq=null,this.uqLabel=null,this.uqRatio=null,this.ratioDistance=null,this._initValues(t.datum,t.index)},_initValues:function(t,e){var i,o=this,a=this._createValues(t),r="makingSeriesLabel",s=a[4],u=a[3],h=a[2],l=a[1],c=a[0],d=a.length>5;this.value=this.max=s,this.uq=u,this.median=h,this.lq=l,this.min=c,this.index=e,d&&(this.outliers=[],i=this.outliers,tui.util.forEach(a.slice(5),function(t){i.push({value:t,label:n.formatValue(t,o.formatFunctions,o.chartType,r)})})),this.label=n.formatValue(s,this.formatFunctions,this.chartType,r),this.maxLabel=this.label,this.uqLabel=n.formatValue(u,this.formatFunctions,this.chartType,r),this.medianLabel=n.formatValue(h,this.formatFunctions,this.chartType,r),this.lqLabel=n.formatValue(l,this.formatFunctions,this.chartType,r),this.minLabel=n.formatValue(c,this.formatFunctions,this.chartType,r)},_createValues:function(t){var e=tui.util.map([].concat(t),function(t){return tui.util.isNull(t)?null:parseFloat(t)});return e},addStart:function(t){tui.util.isNull(this.min)&&(this.min=t,this.minLabel=n.formatValue(t,this.formatFunctions,this.chartType,"series"))},_updateFormattedValueforRange:function(){this.label=this.minLabel+" ~ "+this.maxLabel},addRatio:function(t,e,i){var n=o.calculateRatio;t=t||1,i=i||1,e=e||0,this.ratio=this.maxRatio=n(this.max,t,e,i),this.uqRatio=n(this.uq,t,e,i),this.medianRatio=n(this.median,t,e,i),this.lqRatio=n(this.lq,t,e,i),this.minRatio=n(this.min,t,e,i),tui.util.forEach(this.outliers,function(o){o.ratio=n(o.value,t,e,i)}),this.ratioDistance=Math.abs(this.uqRatio-this.lqRatio)},_getFormattedValueForTooltip:function(t){return n.formatValue(this[t],this.formatFunctions,this.chartType,"tooltip",t)},pickValueMapForTooltip:function(){var t={value:this._getFormattedValueForTooltip("value"),ratio:this.ratio};return tui.util.isExisty(this.min)&&(t.min=this._getFormattedValueForTooltip("min"),t.max=this._getFormattedValueForTooltip("max"),t.minRatio=this.minRatio,t.maxRatio=this.maxRatio,t.maxLabel=this.maxLabel,t.minLabel=this.minLabel,t.uqLabel=this.uqLabel,t.lqLabel=this.lqLabel,t.medianLabel=this.medianLabel,t.outliers=this.outliers),t}});t.exports=a},function(t,e,i){"use strict";var n=i(82),o=i(89),a=i(2),r=i(23),s=Array.prototype.slice,u=tui.util.defineClass(n,{init:function(){n.apply(this,arguments),this.foundSeriesItemsMap={},this.seriesItemMap={}},_flattenHierarchicalData:function(t,e,i){var n,o=this,r=[];return e?n=e+"_":(n=a.TREEMAP_ID_PREFIX,e=a.TREEMAP_ROOT_ID),i=i||[],tui.util.forEachArray(t,function(t,a){var s=n+a,u=t.children,h=i.concat(a);t.indexes=h,tui.util.isNull(t.value)||r.push(t),t.id||(t.id=s),t.parent||(t.parent=e),u&&(r=r.concat(o._flattenHierarchicalData(u,s,h)),delete t.children)}),r},_partitionRawSeriesDataByParent:function(t,e){var i=[],n=[];return tui.util.forEachArray(t,function(t){t.parent===e?i.push(t):n.push(t)}),[i,n]},_setTreeProperties:function(t,e,i,n){var o=this,a=this._partitionRawSeriesDataByParent(t,i),s=a[0],u=a[1],h=e+1;return tui.util.forEachArray(s,function(t,i){var a,l;t.depth=e,t.group=tui.util.isUndefined(n)?i:n,a=o._setTreeProperties(u,h,t.id,t.group),l=tui.util.filter(a,function(t){return t.depth===h}),l.length?(t.value=r.sum(tui.util.pluck(l,"value")),t.hasChild=!0):t.hasChild=!1,s=s.concat(a)}),s},_setRatio:function(t,e){var i=this,n=this._partitionRawSeriesDataByParent(t,e),o=n[0],a=n[1],s=r.sum(tui.util.pluck(o,"value"));tui.util.forEachArray(o,function(t){var e=tui.util.isNull(t.value)?0:t.value;t.ratio=e/s,t.hasChild&&i._setRatio(a,t.id)})},_createBaseGroups:function(){var t=this.chartType,e=this.seriesItemMap,i=this.formatFunctions,n=this._flattenHierarchicalData(this.rawSeriesData);return n=this._setTreeProperties(n,1,a.TREEMAP_ROOT_ID),this._setRatio(n,a.TREEMAP_ROOT_ID),[tui.util.map(n,function(n){var a=new o(n,i,t);return e[a.id]=a,a})]},_findSeriesItems:function(t,e){return this.foundSeriesItemsMap[t]||(this.foundSeriesItemsMap[t]=this.getFirstSeriesGroup(!0).filter(e)),this.foundSeriesItemsMap[t]},_makeCacheKey:function(t){var e=t;return arguments.length>1&&(e+=s.call(arguments,1).join("_")),e},_isValidGroup:function(t,e){return!tui.util.isExisty(e)||t===e},findSeriesItemsByDepth:function(t,e){var i=this,n=this._makeCacheKey(a.TREEMAP_DEPTH_KEY_PREFIX,t,e);return this._findSeriesItems(n,function(n){return n.depth===t&&i._isValidGroup(n.group,e)})},findSeriesItemsByParent:function(t){var e=this._makeCacheKey(a.TREEMAP_PARENT_KEY_PREFIX,t);return this._findSeriesItems(e,function(e){return e.parent===t})},findLeafSeriesItems:function(t){var e=this,i=this._makeCacheKey(a.TREEMAP_LEAF_KEY_PREFIX,t);return this._findSeriesItems(i,function(i){return!i.hasChild&&e._isValidGroup(i.group,t)})},findParentByDepth:function(t,e){var i=this.seriesItemMap[t]||null;return i&&i.depth!==e&&(i=this.findParentByDepth(i.parent,e)),i},initSeriesItemsMap:function(){this.foundSeriesItemsMap=null}});t.exports=u},function(t,e,i){"use strict";var n=i(23),o=i(24),a=tui.util.defineClass({init:function(t,e,i){this.chartType=i,this.formatFunctions=e,this.id=t.id,this.parent=t.parent,this.value=t.value,this.ratio=t.ratio,this.colorValue=t.colorValue,this.depth=t.depth,this.label=t.label||"",this.group=t.group,this.hasChild=!!t.hasChild,this.indexes=t.indexes},addRatio:function(t,e){t=t||1,e=e||0,this.colorRatio=n.calculateRatio(this.colorValue,t,e,1)||-1},pickValueMapForTooltip:function(){var t=this.formatFunctions,e=this.chartType,i=this.colorValue,n=o.formatValue(this.value,t,e,"tooltipValue"),a=(this.label?this.label+": ":"")+n,r={value:n,label:a,ratio:this.ratio};return tui.util.isExisty(i)&&(r.colorValue=o.formatValue(i,t,e,"tooltipColorValue"),r.colorRatio=this.colorRatio),r},pickLabelTemplateData:function(){var t={value:this.value,ratio:this.ratio,label:this.label};return tui.util.isExisty(this.colorValue)&&(t.colorValue=this.colorValue,t.colorValueRatio=this.ratio),t}});t.exports=a},function(t,e,i){"use strict";var n=i(91),o=i(97),a=i(2),r=i(5),s={_createBoundsModel:function(t,e){return new n({chartType:e.chartType,seriesTypes:e.seriesTypes,options:e.options,theme:e.theme,dataProcessor:t,hasAxes:e.hasAxes,isVertical:e.isVertical})},_createScaleDataModel:function(t,e,i){return new o({chartType:i.chartType,seriesTypes:i.seriesTypes,options:i.options,theme:i.theme,dataProcessor:t,boundsModel:e,hasRightYAxis:i.hasRightYAxis,addedDataCount:i.addedDataCount})},addYAxisScale:function(t,e,i,n){t.addScale(e,i&&i.options||n||{},{valueType:i.valueType||"value",areaType:i.areaType,chartType:i.chartType},i.additionalOptions)},_registerYAxisDimension:function(t,e,i,n,o){var a,r=t.get(n),s=null;r&&(a=i[n],a&&(s=a.limit),e.registerYAxisDimension(s,n,r.options,r.theme,o))},_setLayoutBoundsAndScale:function(t,e,i,n,o){var s,u=o.options,h=o.scaleOption||{},l=o.addingDataMode,c=o.isVertical;e.has("xAxis")&&i.registerXAxisHeight(),e.has("legend")&&(e.get("legend").colorSpectrum?i.registerSpectrumLegendDimension():i.registerLegendDimension()),h.yAxis&&this.addYAxisScale(n,"yAxis",h.yAxis,o.options.yAxis),h.rightYAxis&&this.addYAxisScale(n,"rightYAxis",h.rightYAxis),h.legend&&n.addScale("legend",{},{chartType:o.chartType},{tickCounts:[a.SPECTRUM_LEGEND_TICK_COUNT]}),s=n.scaleDataMap,this._registerYAxisDimension(e,i,s,"yAxis",c),this._registerYAxisDimension(e,i,s,"rightYAxis",c),h.xAxis&&n.addScale("xAxis",u.xAxis,{valueType:h.xAxis.valueType||"value"},h.xAxis.additionalOptions),o.hasAxes&&n.setAxisDataMap(),i.registerSeriesDimension(),e.has("circleLegend")&&u.circleLegend.visible&&i.registerCircleLegendDimension(n.axisDataMap),e.has("xAxis")&&(r.isAutoTickInterval(u.xAxis.tickInterval)&&n.updateXAxisDataForAutoTickInterval(o.prevXAxisData,l),n.updateXAxisDataForLabel(l)),i.registerBoundsData(n.axisDataMap.xAxis)},build:function(t,e,i){var n,o=this._createBoundsModel(t,i),a=this._createScaleDataModel(t,o,i);return this._setLayoutBoundsAndScale(t,e,o,a,i),n={dimensionMap:o.dimensionMap,positionMap:o.positionMap,limitMap:a.makeLimitMap(i.seriesTypes||[i.chartType],i.isVertical)},a.axisDataMap&&(n.axisDataMap=a.axisDataMap),r.isBubbleChart(i.chartType)&&(n.maxRadius=o.calculateMaxRadius(a.axisDataMap)),a.scaleDataMap.legend&&(n.legendScaleData=a.scaleDataMap.legend),n}};t.exports=s},function(t,e,i){"use strict";var n=i(2),o=i(5),a=i(24),r=i(61),s=i(92),u=i(93),h=i(94),l=i(95),c=i(96),d=tui.util.defineClass({init:function(t){this.options=t.options||{},this.options.legend=this.options.legend||{},this.options.yAxis=this.options.yAxis||{},this.theme=t.theme||{},this.hasAxes=t.hasAxes,this.chartType=t.chartType,this.seriesTypes=t.seriesTypes||[],this.dataProcessor=t.dataProcessor,this.initBoundsData()},initBoundsData:function(){this.dimensionMap={legend:{width:0},yAxis:{width:0},rightYAxis:{width:0},xAxis:{height:0},circleLegend:{width:0},chartExportMenu:{width:0}},this.positionMap={},this.chartLeftPadding=n.CHART_PADDING,this.maxRadiusForBubbleChart=null,this._registerChartDimension(),this._registerTitleDimension(),this._registerChartExportMenuDimension()},_registerDimension:function(t,e){this.dimensionMap[t]=tui.util.extend(this.dimensionMap[t]||{},e)},getBound:function(t){return{dimension:this.dimensionMap[t]||{},position:this.positionMap[t]||{}}},_setBound:function(t,e){this.dimensionMap[t]=e.dimension,this.positionMap[t]=e.position},getDimension:function(t){return this.dimensionMap[t]},getDimensionMap:function(t){var e=this,i={};return t&&t.length?tui.util.forEachArray(t,function(t){i[t]=e.dimensionMap[t]}):i=this.dimensionMap,JSON.parse(JSON.stringify(i))},getPosition:function(t){return this.positionMap[t]},_registerChartDimension:function(){var t=this.options.chart||{},e={width:t.width||n.CHART_DEFAULT_WIDTH,height:t.height||n.CHART_DEFAULT_HEIGHT};this._registerDimension("chart",e)},_registerTitleDimension:function(){var t=this.options.chart||{},e=tui.util.isExisty(t.title),i=e?r.getRenderedTextSize(t.title.text,this.theme.title.fontSize,this.theme.title.fontFamily).height:0,o={height:i?i+n.TITLE_PADDING:0};this._registerDimension("title",o)},_registerChartExportMenuDimension:function(){var t;t=this.options.chartExportMenu.visible?{height:17+n.CHART_PADDING,width:60}:{width:0,height:0},this._registerDimension("chartExportMenu",t)},registerXAxisHeight:function(){this._registerDimension("xAxis",{height:u.calculateXAxisHeight(this.options.xAxis.title,this.theme.xAxis)})},registerLegendDimension:function(){var t=tui.util.pluck(this.dataProcessor.getOriginalLegendData(),"label"),e=this.options.legend,i=this.theme.legend.label,n=this.getDimension("chart").width,o=h.calculate(e,i,t,n);this._registerDimension("legend",o)},registerSpectrumLegendDimension:function(){var t,e=this.dataProcessor.getFormattedMaxValue(this.chartType,"legend"),i=this.theme.label;t=o.isHorizontalLegend(this.options.legend.align)?c._makeHorizontalDimension(e,i):c._makeVerticalDimension(e,i),this._registerDimension("legend",t)},registerYAxisDimension:function(t,e,i,n,a){var r,s;if(t)r=[t.min,t.max];else{if(!o.isHeatmapChart(this.chartType)&&a)return;r=this.dataProcessor.getCategories(!0)}s=tui.util.isArray(i)?"yAxis"===e?i[0]:i[1]:i,this._registerDimension(e,{width:u.calculateYAxisWidth(r,s,n)})},calculateSeriesWidth:function(){var t=this.getDimensionMap(["chart","yAxis","legend","rightYAxis"]);return l.calculateWidth(t,this.options.legend)},calculateSeriesHeight:function(){var t=this.getDimensionMap(["chart","title","legend","xAxis","chartExportMenu"]);return l.calculateHeight(t,this.options.legend)},getBaseSizeForLimit:function(t){var e;return e=t?this.calculateSeriesHeight():this.calculateSeriesWidth()},_makeSeriesDimension:function(){return{width:this.calculateSeriesWidth(),height:this.calculateSeriesHeight()}},registerSeriesDimension:function(){var t=this._makeSeriesDimension();this._registerDimension("series",t)},_updateLegendAndSeriesWidth:function(t,e){var i=this.options.legend;o.isVerticalLegend(i.align)&&i.visible&&this._registerDimension("legend",{width:t}),this._registerDimension("series",{width:this.getDimension("series").width-e})},registerCircleLegendDimension:function(t){var e,i,a=this.getDimension("series"),r=this.options.legend,u=this.dataProcessor.getFormattedMaxValue(this.chartType,"circleLegend","r"),h=this.theme.chart.fontFamily,l=s.calculateCircleLegendWidth(a,t,u,h);e=o.isVerticalLegend(r.align)&&r.visible?this.getDimension("legend").width:0,l=Math.min(l,Math.max(e,n.MIN_LEGEND_WIDTH)),i=l-e,this._registerDimension("circleLegend",{width:l,height:l}),i>0&&this._updateLegendAndSeriesWidth(l,i)},_makePlotDimension:function(){var t=this.getDimension("series");return{width:t.width,height:t.height+n.OVERLAPPING_WIDTH}},_registerCenterComponentsDimension:function(){var t=this.getDimension("series");this._registerDimension("tooltip",t),this._registerDimension("mouseEventDetector",t)},_registerAxisComponentsDimension:function(){var t=this._makePlotDimension();this._registerDimension("plot",t),this._registerDimension("xAxis",{width:t.width}),this._registerDimension("yAxis",{height:t.height}),this._registerDimension("rightYAxis",{height:t.height})},_updateDimensionsWidth:function(t){var e=Math.max(t.overflowLeft,0),i=Math.max(t.overflowRight,0),n=e+i;this.chartLeftPadding+=e,this.dimensionMap.plot.width-=n,this.dimensionMap.series.width-=n,this.dimensionMap.mouseEventDetector.width-=n,this.dimensionMap.xAxis.width-=n},_updateDimensionsHeight:function(t){this.dimensionMap.plot.height-=t,this.dimensionMap.series.height-=t,this.dimensionMap.mouseEventDetector.height-=t,this.dimensionMap.tooltip.height-=t,this.dimensionMap.yAxis.height-=t,this.dimensionMap.rightYAxis.height-=t,this.dimensionMap.xAxis.height+=t},_updateDimensionsForXAxisLabel:function(t){(t.overflowRight>0||t.overflowLeft>0)&&this._updateDimensionsWidth(t),t.overflowHeight&&this._updateDimensionsHeight(t.overflowHeight)},_registerAxisComponentsPosition:function(t){var e=this.getPosition("series"),i=this.getDimension("series"),o=this.getDimension("yAxis").width,a=t+o+i.width;this.positionMap.plot={top:e.top,left:e.left},this.positionMap.yAxis={top:e.top,left:this.chartLeftPadding+t},this.positionMap.xAxis={top:e.top+i.height,left:e.left},this.positionMap.rightYAxis={top:e.top,left:this.chartLeftPadding+a-n.OVERLAPPING_WIDTH}},_makeLegendPosition:function(){var t,e,i=this.dimensionMap,a=this.getDimension("series"),r=this.options.legend,s=i.title.height||i.chartExportMenu.height;return o.isLegendAlignBottom(r.align)&&(s+=a.height+this.getDimension("xAxis").height+n.LEGEND_AREA_PADDING),o.isHorizontalLegend(r.align)?e=(this.getDimension("chart").width-this.getDimension("legend").width)/2:o.isLegendAlignLeft(r.align)?e=this.chartLeftPadding:(t=this.getDimension("yAxis").width+this.getDimension("rightYAxis").width,e=this.chartLeftPadding+t+a.width),{top:s,left:e}},_makeChartExportMenuPosition:function(){return{top:1,right:20}},_makeCircleLegendPosition:function(){var t,e,i=this.getPosition("series"),a=this.getDimension("series"),r=this.getDimension("circleLegend"),s=this.options.legend;return t=o.isLegendAlignLeft(s.align)?0:i.left+a.width,o.isVerticalLegend(s.align)&&s.visible&&(e=this.getDimension("legend").width+n.CHART_PADDING,t+=(e-r.width)/2),{top:i.top+a.height-r.height,left:t}},_isNeedExpansionSeries:function(){var t=this.chartType;return!(o.isPieChart(t)||o.isMapChart(t)||o.isTreemapChart(t)||o.isRadialChart(t)||o.isPieDonutComboChart(t,this.seriesTypes))},_registerEssentialComponentsPositions:function(){var t,e=this.getPosition("series");this.positionMap.mouseEventDetector=tui.util.extend({},e),this.positionMap.legend=this._makeLegendPosition(),this.positionMap.chartExportMenu=this._makeChartExportMenuPosition(),this.getDimension("circleLegend").width&&(this.positionMap.circleLegend=this._makeCircleLegendPosition()),t=this._isNeedExpansionSeries()?{top:e.top-n.SERIES_EXPAND_SIZE,left:e.left-n.SERIES_EXPAND_SIZE}:e,this.positionMap.tooltip=t},_registerPositions:function(){var t=this.options.legend.align,e=this.options.legend.visible,i=this.getDimension("legend"),a=o.isLegendAlignTop(t)&&e?i.height:0,r=o.isLegendAlignLeft(t)&&e?i.width:0,s=Math.max(this.getDimension("title").height,this.getDimension("chartExportMenu").height),u={top:s+n.CHART_PADDING+a,left:this.chartLeftPadding+r+this.getDimension("yAxis").width};this.positionMap.series=u,this.hasAxes&&this._registerAxisComponentsPosition(r),this._registerEssentialComponentsPositions()},_registerExtendedSeriesBound:function(){var t=this.getBound("series");this._isNeedExpansionSeries()&&(t=a.expandBound(t)),this._setBound("extendedSeries",t)},_updateBoundsForYAxisCenterOption:function(){var t=this.getDimension("yAxis").width,e=Math.floor(this.getDimension("series").width/2)+n.OVERLAPPING_WIDTH,i=t-n.OVERLAPPING_WIDTH,o=a.isOldBrowser()?1:0;this.dimensionMap.extendedSeries.width+=t,this.dimensionMap.xAxis.width+=n.OVERLAPPING_WIDTH,this.dimensionMap.plot.width+=t+n.OVERLAPPING_WIDTH,this.dimensionMap.mouseEventDetector.width+=t,this.dimensionMap.tooltip.width+=t,this.positionMap.series.left-=t-o,this.positionMap.extendedSeries.left-=i-o,this.positionMap.plot.left-=i,this.positionMap.yAxis.left+=e,this.positionMap.xAxis.left-=i,this.positionMap.mouseEventDetector.left-=i,this.positionMap.tooltip.left-=i},registerBoundsData:function(t){this._registerCenterComponentsDimension(),this.hasAxes&&(this._registerAxisComponentsDimension(),this._updateDimensionsForXAxisLabel(t)),this._registerPositions(),this._registerExtendedSeriesBound(),this.options.yAxis.isCenter&&this._updateBoundsForYAxisCenterOption()},calculateMaxRadius:function(t){var e=this.getDimensionMap(["series","circleLegend"]);return s.calculateMaxRadius(e,t)}});t.exports=d},function(t,e,i){"use strict";var n=i(2),o=i(24),a={_calculatePixelStep:function(t,e){var i,n=t.tickCount;return i=t.isLabelAxis?e/n/2:e/(n-1),parseInt(i,10)},_calculateRadiusByAxisData:function(t,e){var i=this._calculatePixelStep(e.yAxis,t.height),n=this._calculatePixelStep(e.xAxis,t.width);return Math.min(i,n)},_getCircleLegendLabelMaxWidth:function(t,e){return o.getRenderedLabelWidth(t,{fontSize:n.CIRCLE_LEGEND_LABEL_FONT_SIZE,fontFamily:e})},calculateCircleLegendWidth:function(t,e,i,o){var a=this._calculateRadiusByAxisData(t,e),r=this._getCircleLegendLabelMaxWidth(i,o);return Math.max(2*a,r)+n.CIRCLE_LEGEND_PADDING},calculateMaxRadius:function(t,e){var i=this._calculateRadiusByAxisData(t.series,e),o=t.circleLegend.width;return Math.min((o-n.CIRCLE_LEGEND_PADDING)/2,i)}};t.exports=a},function(t,e,i){"use strict";var n=i(2),o=i(5),a=i(24),r={calculateXAxisHeight:function(t,e){var i=t?a.getRenderedLabelHeight(t.text,e.title):0,o=i?i+n.TITLE_PADDING:0,r=a.getRenderedLabelHeight(n.MAX_HEIGHT_WORLD,e.label);return o+r+n.CHART_PADDING},calculateYAxisWidth:function(t,e,i){var r=e.title||"",s=0,u=0;return t=a.addPrefixSuffix(t,e.prefix,e.suffix),e.isCenter?u+=n.AXIS_LABEL_PADDING:s=e.rotateTitle===!1?a.getRenderedLabelWidth(r.text,i.title)+n.TITLE_PADDING:a.getRenderedLabelHeight(r.text,i.title)+n.TITLE_PADDING,o.isDatetimeType(e.type)&&(t=a.formatDates(t,e.dateFormat)),u+=a.getRenderedLabelsMaxWidth(t,i.label)+s+n.AXIS_LABEL_PADDING}};t.exports=r},function(t,e,i){"use strict";var n=i(2),o=i(5),a=i(23),r=i(24),s=i(6),u=n.LEGEND_CHECKBOX_WIDTH,h=n.LEGEND_ICON_WIDTH,l=n.LEGEND_ICON_HEIGHT,c=n.LEGEND_LABEL_LEFT_PADDING,d=n.LEGEND_AREA_PADDING,p={ +legendMargin:c+d,_calculateLegendsWidthSum:function(t,e,i){var n=d+i+h+c,o=this.legendMargin;return a.sum(tui.util.map(t,function(t){var i=r.getRenderedLabelWidth(t,e)+n;return i+o}))},_divideLegendLabels:function(t,e){var i=Math.round(t.length/e),n=[],o=[];return tui.util.forEachArray(t,function(t){o.length=e);return{labels:o,maxLineWidth:s}},_calculateHorizontalLegendHeight:function(t,e){var i=Math.max.apply(null,tui.util.map(t,function(t){return r.getRenderedLabelsMaxHeight(t,e)})),o=Math.max(l,i)+n.LINE_MARGIN_TOP,a=o*t.length-n.LINE_MARGIN_TOP;return a},_makeHorizontalDimension:function(t,e,i,o){var a=this._makeDividedLabelsAndMaxLineWidth(e,i,t,o),r=this._calculateHorizontalLegendHeight(a.labels,t),s=r+2*d;return{width:Math.max(a.maxLineWidth,n.MIN_LEGEND_WIDTH),height:s}},_makeVerticalDimension:function(t,e,i){var n=d+i+h+c+r.getRenderedLabelsMaxWidth(e,t);return{width:n+this.legendMargin,height:0}},calculate:function(t,e,i,n){var a=t.showCheckbox===!1?0:u+c,r={};return t.visible?r=o.isHorizontalLegend(t.align)?this._makeHorizontalDimension(e,i,n,a):this._makeVerticalDimension(e,i,a):r.width=0,r}};t.exports=p},function(t,e,i){"use strict";var n=i(2),o=i(5),a={calculateWidth:function(t,e){var i=t.chart.width,a=t.yAxis.width+t.rightYAxis.width,r=t.legend,s=0;return o.isVerticalLegend(e.align)&&e.visible&&(s=r?r.width:0),i-2*n.CHART_PADDING-a-s},calculateHeight:function(t,e){var i,a,r=t.chart.height,s=Math.max(t.title.height,t.chartExportMenu.height);return i=o.isHorizontalLegend(e.align)&&e.visible?t.legend.height:0,a=i+t.xAxis.height,r-2*n.CHART_PADDING-s-a}};t.exports=a},function(t,e,i){"use strict";var n=i(2),o=i(24),a={_makeVerticalDimension:function(t,e){var i=o.getRenderedLabelWidth(t,e),a=n.LEGEND_AREA_PADDING+n.MAP_LEGEND_LABEL_PADDING;return{width:n.MAP_LEGEND_GRAPH_SIZE+i+a,height:n.MAP_LEGEND_SIZE}},_makeHorizontalDimension:function(t,e){var i=o.getRenderedLabelHeight(t,e),a=n.LEGEND_AREA_PADDING+n.MAP_LEGEND_LABEL_PADDING;return{width:n.MAP_LEGEND_SIZE,height:n.MAP_LEGEND_GRAPH_SIZE+i+a}}};t.exports=a},function(t,e,i){"use strict";var n=i(98),o=i(100),a=i(101),r=i(5),s=i(24),u=tui.util.defineClass({init:function(t){this.chartType=t.chartType,this.seriesTypes=t.seriesTypes,this.dataProcessor=t.dataProcessor,this.boundsModel=t.boundsModel,this.options=t.options,this.theme=t.theme,this.hasRightYAxis=!!t.hasRightYAxis,this.prevValidLabelCount=null,this.initScaleData(t.addedDataCount),this.initForAutoTickInterval()},initScaleData:function(t){this.scaleDataMap={},this.axisDataMap={},this.addedDataCount=t},initForAutoTickInterval:function(){this.firstTickCount=null},_pickLimitOption:function(t){return t=t||{},{min:t.min,max:t.max}},_createBaseScaleData:function(t,e,i,o){var a=t.chartType,s="xAxis"!==t.areaType,u=this.dataProcessor.createBaseValuesForLimit(a,o.isSingleYAxis,e.stackType,t.valueType,t.areaType),h=this.boundsModel.getBaseSizeForLimit(s),l=tui.util.extend(e,{isVertical:s,limitOption:this._pickLimitOption(i),tickCounts:o.tickCounts});return r.isBubbleChart(a)&&(l.overflowItem=this.dataProcessor.findOverflowItem(a,t.valueType)),n.makeScaleData(u,h,a,l)},_createScaleLabels:function(t,e,i,n){var a=this.dataProcessor.getFormatFunctions(),r=tui.util.extend(i,{dateFormat:n});return o.createFormattedLabels(t,e,r,a)},_createScaleData:function(t,e,i){var n,o,a=this.options.series,r=e.chartType||this.chartType;return e.chartType=r,a=a[r]||a,n={stackType:i.stackType||a.stackType,diverging:a.diverging,type:t.type},o=this._createBaseScaleData(e,n,t,i),tui.util.extend(o,{labels:this._createScaleLabels(o,e,n,t.dateFormat),axisOptions:t})},_createValueAxisData:function(t,e,i,n,o){var r,s,u=this.dataProcessor.hasCategories(),h=!n&&!u&&i,l=t.labels,c=t.limit,d=t.step,p=l.length,f=a.makeValueAxisData({labels:l,tickCount:l.length,limit:c,step:d,options:t.axisOptions,labelTheme:e,isVertical:!!n,isPositionRight:!!o,aligned:i});return h&&(r=this.dataProcessor.getValues(this.chartType,"x"),s=a.makeAdditionalDataForCoordinateLineType(l,r,c,d,p),tui.util.extend(f,s)),f},_createLabelAxisData:function(t,e,i,n,o){return a.makeLabelAxisData({labels:this.dataProcessor.getCategories(n),options:t,labelTheme:e,isVertical:!!n,isPositionRight:!!o,aligned:i,addedDataCount:this.options.series.shifting?this.addedDataCount:0})},_createAxisData:function(t,e,i,n,o){var a,s=r.isLineTypeChart(this.chartType,this.seriesTypes)&&!e.pointOnColumn;return a=t?this._createValueAxisData(t,i,s,n,o):this._createLabelAxisData(e,i,s,n,o)},_createAxesData:function(){var t=this.scaleDataMap,e=this.options,i=this.theme,n=tui.util.isArray(e.yAxis)?e.yAxis:[e.yAxis],o={};return o.xAxis=this._createAxisData(t.xAxis,e.xAxis,i.xAxis.label),o.yAxis=this._createAxisData(t.yAxis,n[0],i.yAxis.label,!0),this.hasRightYAxis&&(o.rightYAxis=this._createAxisData(t.rightYAxis,n[1],i.yAxis.label,!0,!0),o.rightYAxis.aligned=o.xAxis.aligned),o},addScale:function(t,e,i,n){i=i||{},n=n||{},i.areaType=i.areaType||t,i.chartType=n.chartType||i.chartType,this.scaleDataMap[t]=this._createScaleData(e,i,n)},setAxisDataMap:function(){this.axisDataMap=this._createAxesData()},updateXAxisDataForAutoTickInterval:function(t,e){var i=this.options.series.shifting,n=this.options.series.zoomable,o=this.axisDataMap.xAxis,r=this.boundsModel.getDimension("series").width,s=this.addedDataCount;i||!t||n?a.updateLabelAxisDataForAutoTickInterval(o,r,s,e):a.updateLabelAxisDataForStackingDynamicData(o,t,this.firstTickCount),this.firstTickCount||(this.firstTickCount=o.tickCount)},updateXAxisDataForLabel:function(t){var e,i,n,o=this.axisDataMap.xAxis,r=o.labels,u=this.boundsModel.getDimensionMap(["series","yAxis","chart"]),h=o.isLabelAxis,l=this.theme.xAxis.label;t&&(r=r.slice(0,r.length-1)),r=s.addPrefixSuffix(r,this.options.xAxis.prefix,this.options.xAxis.suffix),e=tui.util.filter(r,function(t){return!!t}),i=tui.util.isNull(this.prevValidLabelCount)?e.length:this.prevValidLabelCount,this.options.yAxis.isCenter&&(i+=1,u.yAxis.width=0),n=o.options.rotateLabel===!1?a.makeAdditionalDataForMultilineLabels(r,i,l,h,u):a.makeAdditionalDataForRotatedLabels(e,i,l,h,u),this.prevValidLabelCount=i,tui.util.extend(o,n)},_findLimit:function(t,e,i){var n;return n=0===e?i?t.yAxis:t.xAxis:t.rightYAxis?t.rightYAxis:t.yAxis},makeLimitMap:function(t,e){var i=this,n=this.scaleDataMap,o={};return n.xAxis&&(o.xAxis=n.xAxis.limit),n.yAxis&&(o.yAxis=n.yAxis.limit),n.rightYAxis&&(o.rightYAxis=n.rightYAxis.limit),n.legend&&(o.legend=n.legend.limit),tui.util.forEachArray(t,function(t,n){o[t]=i._findLimit(o,n,e)}),o}});t.exports=u},function(t,e,i){"use strict";var n=i(2),o=i(5),a=i(23),r=i(6),s=i(99),u=Math.abs,h={_makeLimitForDivergingOption:function(t){var e=Math.max(u(t.min),u(t.max));return{min:-e,max:e}},_adjustLimitForBubbleChart:function(t,e,i){var n=t.min,o=t.max;return i.minItem&&(n-=e),i.maxItem&&(o+=e),{min:n,max:o}},millisecondMap:{year:31536e6,month:26784e5,week:6048e5,date:864e5,hour:36e5,minute:6e4,second:1e3},millisecondTypes:["year","month","week","date","hour","minute","second"],_findDateType:function(t,e){var i,o=t.max-t.min,a=this.millisecondTypes,r=this.millisecondMap,s=a.length-1;return o?tui.util.forEachArray(a,function(t,n){var u,h=r[t],l=Math.floor(o/h);return l&&(u=n0?i.min=0:i.max=0):0===i.min&&0===i.max?i.max=10:i.min===i.max&&(i.min-=i.min/10,i.max+=i.max/10),i},_calculateDatetimeScale:function(t,e,i){var n,o,a;return n=this._makeDatetimeInfo(this._getLimitSafely(t),t.length),a=n.dataLimit,i&&(a=this._makeLimitForDivergingOption(a)),o=s({min:a.min,max:a.max,offsetSize:e,minimumStepSize:1}),o=this._restoreScaleToDatetimeType(o,n.minDate,n.divisionNumber)},_calculatePercentStackedScale:function(t,e){var i;return i=0===a.sumMinusValues(t)?n.PERCENT_STACKED_AXIS_SCALE:0===a.sumPlusValues(t)?n.MINUS_PERCENT_STACKED_AXIS_SCALE:e?n.DIVERGING_PERCENT_STACKED_AXIS_SCALE:n.DUAL_PERCENT_STACKED_AXIS_SCALE},_calculateCoordinateScale:function(t,e,i,n,o){var a,r=this._getLimitSafely(t),u=o.limitOption,h=o.stepCount,l=r.min,c=r.max;return u&&(u.min||u.max)&&(h=null,l=tui.util.isExisty(u.min)?u.min:l,c=tui.util.isExisty(u.max)?u.max:c),a=s({min:l,max:c,stepCount:h,offsetSize:e}),i?a.limit=this._adjustLimitForBubbleChart(a.limit,a.step,i):n&&(a.limit=this._makeLimitForDivergingOption(a.limit)),a},makeScaleData:function(t,e,i,n){var a,r=o.isDivergingChart(i,n.diverging),s=n.overflowItem;return o.isPercentStackChart(i,n.stackType)?a=this._calculatePercentStackedScale(t,r):o.isDatetimeType(n.type)?a=this._calculateDatetimeScale(t,e,r):(o.isRadialChart(i)&&(n.stepCount=Math.floor(e/100)),a=this._calculateCoordinateScale(t,e,s,r,n)),a}};t.exports=h},function(t,e){"use strict";function i(t){var e=0===t?1:Math.log(Math.abs(t))/Math.LN10;return Math.pow(10,Math.floor(e))}function n(t){var e,i,n,o;for(n=0,o=l.length;n1?1:1/o,r=n*a;return e=Math.ceil(e*a/r)*r/a,t=t>n?Math.floor(t*a/r)*r/a:t<0?-(Math.ceil(Math.abs(t)*a/r)*r)/a:0,{min:t,max:e}}function r(t,e){var n=1/Math.min(i(t),i(e));return t*n/(e*n)}function s(t){var e=o(t.step),i=a(t.limit.min,t.limit.max,e),n=Math.abs(i.max-i.min),s=r(n,e);return{limit:{min:i.min,max:i.max},step:e,stepCount:s}}function u(t,e,i,n,o){var a,r,s=Math.abs(e-t),u=s/i;return n||(n=Math.ceil(i/c)),a=i/n,r=u*a,tui.util.isNumber(o)&&ri.labelInterval&&(n=this._makeLabelsByIntervalOption(t.labels,i.labelInterval,t.addedDataCount)),o.isDatetimeType(i.type)&&(n=r.formatDates(n,i.dateFormat)),t.aligned||(e+=1),{labels:n,tickCount:e,validTickCount:0,isLabelAxis:!0,options:i,isVertical:!!t.isVertical,isPositionRight:!!t.isPositionRight,aligned:!!t.aligned}},makeValueAxisData:function(t){var e=t.labels,i=t.tickCount,n=t.limit,o={labels:e,tickCount:i,validTickCount:i,limit:n,dataMin:n.min,distance:n.max-n.min,step:t.step,options:t.options,isVertical:!!t.isVertical,isPositionRight:!!t.isPositionRight,aligned:!!t.aligned};return o},makeAdditionalDataForCoordinateLineType:function(t,e,i,n,o){var a,r=1,u=0,h=s.min(e),l=s.max(e);return a=l-h,a&&(i.minl&&(i.max-=n,r-=(l-i.max)/a,o-=1,t.pop())),{labels:t,tickCount:o,validTickCount:o,limit:i,dataMin:h,distance:a,positionRatio:u,sizeRatio:r}},_makeAdjustingIntervalInfo:function(t,e,i){var n,o=parseInt(e/i,10),a=parseInt(t/o,10),r=null;return a>1&&(n=t-a*o,n>=a&&(o+=parseInt(n/a,0),n%=a),r={blockCount:o,beforeRemainBlockCount:n,interval:a}),r},_makeCandidatesForAdjustingInterval:function(t,e){var i=this,n=tui.util.range(90,121,5),o=tui.util.map(n,function(n){return i._makeAdjustingIntervalInfo(t,e,n)});return tui.util.filter(o,function(t){return!!t})},_calculateAdjustingIntervalInfo:function(t,e){var i=this._makeCandidatesForAdjustingInterval(t,e),n=null;return i.length&&(n=s.min(i,function(t){return t.blockCount})),n},_makeFilteredLabelsByInterval:function(t,e,i){return tui.util.filter(t.slice(e),function(t,e){return e%i===0})},updateLabelAxisDataForAutoTickInterval:function(t,e,i,n){var o,a,r,s,u,h;n&&(t.tickCount-=1,t.labels.pop()),o=t.tickCount-1,a=this._calculateAdjustingIntervalInfo(o,e),a&&(r=a.blockCount,s=a.interval,u=a.beforeRemainBlockCount,t.eventTickCount=t.tickCount,h=Math.round(u/2)-i%s,h<0&&(h+=s),t.labels=this._makeFilteredLabelsByInterval(t.labels,h,s),tui.util.extend(t,{startIndex:h,tickCount:r+1,positionRatio:h/o,sizeRatio:1-u/o,interval:s}))},updateLabelAxisDataForStackingDynamicData:function(t,e,i){var n,o=e.interval,a=e.startIndex,r=t.tickCount-1,s=r/o,u=i?i-1:0;u&&2*u<=s&&(o*=2),t.labels=this._makeFilteredLabelsByInterval(t.labels,a,o),s=t.labels.length-1,n=r-o*s,tui.util.extend(t,{startIndex:a,eventTickCount:t.tickCount,tickCount:t.labels.length,positionRatio:a/r,sizeRatio:1-n/r,interval:o})},_calculateXAxisLabelAreaWidth:function(t,e,i){return t||(i-=1),e/i},_createMultilineLabel:function(t,e,i){var n=String(t).split(/\s+/),o=n[0],a=[];return tui.util.forEachArray(n.slice(1),function(t){var n=r.getRenderedLabelWidth(o+" "+t,i);n>e?(a.push(o),o=t):o+=" "+t}),o&&a.push(o),a.join("
")},_createMultilineLabels:function(t,e,i){var n=this._createMultilineLabel;return tui.util.map(t,function(t){return n(t,i,e)})},_calculateMultilineHeight:function(t,e,i){return r.getRenderedLabelsMaxHeight(t,tui.util.extend({cssText:"line-height:1.2;width:"+i+"px"},e))},makeAdditionalDataForMultilineLabels:function(t,e,i,n,o){var a=o.series.width,s=this._calculateXAxisLabelAreaWidth(n,a,e),u=this._createMultilineLabels(t,i,a),h=this._calculateMultilineHeight(u,i,s),l=r.getRenderedLabelsMaxHeight(t,i);return{multilineLabels:u,overflowHeight:h-l,overflowLeft:s/2-o.yAxis.width}},_findRotationDegree:function(t,e,i){var o=null;return tui.util.forEachArray(n.DEGREE_CANDIDATES,function(r){var s=a.calculateRotatedWidth(r,e,i);return o=r,!(s<=t+n.XAXIS_LABEL_COMPARE_MARGIN)}),o},_calculateRotatedWidth:function(t,e,i,o){var s=r.getRenderedLabelWidth(e,o),u=a.calculateRotatedWidth(t,s,i);return u-=a.calculateAdjacent(n.ANGLE_90-t,i/2)},_calculateLimitWidth:function(t,e,i){var n=t;return e&&(n+=i/2),n},makeAdditionalDataForRotatedLabels:function(t,e,i,o,s){var u,h,l,c,d,p=r.getRenderedLabelsMaxWidth(t,i),f=s.series.width,m=this._calculateXAxisLabelAreaWidth(o,f,e),g=null,_=n.CHART_PADDING+s.yAxis.width+f;return m1,i.tooltip=i.tooltip||{},i.tooltip.grouped=!0,n.call(this,{rawData:t,theme:e,options:i,hasAxes:!0,isVertical:!0})},_makeYAxisOptions:function(t,e){var i={};return e=e||{},tui.util.forEachArray(t,function(t,n){i[t]=e[n]||e}),i},onChangeCheckedLegends:function(t){var e=this.dataProcessor.getOriginalRawData(),i=o.filterCheckedRawData(e,t),n=r({rawSeriesData:i.series,yAxisOptions:this.options.yAxis});this.chartTypes=n.chartTypes,this.seriesTypes=n.seriesTypes,this.rerender(t,i,n)},addComponents:function(){this.componentManager.register("title","title"),this.componentManager.register("plot","plot"),this.componentManager.register("legend","legend"),this.componentManager.register("columnSeries","columnSeries"),this.componentManager.register("lineSeries","lineSeries"),this.componentManager.register("yAxis","axis"),this.hasRightYAxis&&this.componentManager.register("rightYAxis","axis"),this.componentManager.register("xAxis","axis"),this.componentManager.register("chartExportMenu","chartExportMenu"),this.componentManager.register("tooltip","tooltip"),this.componentManager.register("mouseEventDetector","mouseEventDetector")},getScaleOption:function(){var t={yAxis:this._makeYAxisScaleOption("yAxis",this.chartTypes[0],!this.hasRightYAxis)};return this.hasRightYAxis&&(t.rightYAxis=this._makeYAxisScaleOption("rightYAxis",this.chartTypes[1])),t},_makeYAxisScaleOption:function(t,e,i){var n=this.yAxisOptions[e],o={isSingleYAxis:!!i};return i&&this.options.series&&this._setAdditionalOptions(o),{options:n,areaType:"yAxis",chartType:e,additionalOptions:o}},_setAdditionalOptions:function(t){var e=this.dataProcessor;tui.util.forEach(this.options.series,function(i,n){var o;i.stackType&&(o=e.findChartType(n),a.isAllowedStackOption(o)&&(t.chartType=o,t.stackType=i.stackType))})},addDataRatios:function(t){var e,i=this,n=this.chartTypes||[this.chartType],o=this.options.series||{};e=function(e){var n=(o[e]||o).stackType;i.dataProcessor.addDataRatios(t[e],n,e)},tui.util.forEachArray(n,e)}});t.exports=s},function(t,e){"use strict";function i(t){var e=t.rawSeriesData,i=t.yAxisOptions,o=n(e,i);return{chartTypes:o.chartTypes,seriesTypes:o.seriesTypes}}function n(t,e){var i,n=tui.util.keys(t).sort(),a=o(n,e),r=a.length?a:n,s=tui.util.filter(a,function(e){return t[e].length});return i=1===s.length?{chartTypes:s,seriesTypes:s}:{chartTypes:r,seriesTypes:n}}function o(t,e){var i,n=t.slice(),o=[].concat(e||[]),a=!1;return!o.length||1===o.length&&!o[0].chartType?n=[]:o.length&&(i=tui.util.map(o,function(t){return t.chartType}),tui.util.forEachArray(i,function(t,e){a=a||t&&n[e]!==t||!1}),a&&n.reverse()),n}t.exports=i},function(t,e,i){"use strict";var n=i(20),o=tui.util.defineClass(n,{init:function(t,e,i){this.chartTypes=["line","scatter"],this.seriesTypes=["line","scatter"],n.call(this,{rawData:t,theme:e,options:i,hasAxes:!0,isVertical:!0})},getScaleOption:function(){return{yAxis:{valueType:"y"},xAxis:{valueType:"x"}}},addDataRatios:function(t){var e,i=this,n=this.chartTypes||[this.chartType];e=function(e){i.dataProcessor.addDataRatiosForCoordinateType(e,t,!1)},tui.util.forEachArray(n,e)},addComponents:function(){this.componentManager.register("title","title"),this.componentManager.register("plot","plot"),this.componentManager.register("legend","legend"),this.componentManager.register("lineSeries","lineSeries"),this.componentManager.register("scatterSeries","scatterSeries"),this.componentManager.register("yAxis","axis"),this.componentManager.register("xAxis","axis"),this.componentManager.register("chartExportMenu","chartExportMenu"),this.componentManager.register("tooltip","tooltip"),this.componentManager.register("mouseEventDetector","mouseEventDetector")}});t.exports=o},function(t,e,i){"use strict";var n=i(20),o=i(4),a=i(5),r=i(107),s=i(104),u=tui.util.defineClass(n,{className:"tui-combo-chart",init:function(t,e,i){var o=r({rawSeriesData:t.series,yAxisOptions:i.yAxis});this.chartTypes=o.chartTypes,this.seriesTypes=o.seriesTypes,this.yAxisOptions=this._makeYAxisOptions(this.chartTypes,i.yAxis),this.hasRightYAxis=tui.util.isArray(i.yAxis)&&i.yAxis.length>1,i.tooltip=i.tooltip||{},i.tooltip.grouped=!0,n.call(this,{rawData:t,theme:e,options:i,hasAxes:!0,isVertical:!0}),this._dynamicDataHelper=new s(this)},onChangeCheckedLegends:function(t){var e=this.dataProcessor.getZoomedRawData(),i=o.filterCheckedRawData(e,t),n=r({rawSeriesData:i.series,yAxisOptions:this.options.yAxis});this._dynamicDataHelper.reset(),this._dynamicDataHelper.changeCheckedLegends(t,i,n)},addComponents:function(){this.componentManager.register("title","title"),this.componentManager.register("plot","plot"),this.componentManager.register("legend","legend"),this.componentManager.register("areaSeries","areaSeries"),this.componentManager.register("lineSeries","lineSeries"),this.componentManager.register("xAxis","axis"),this.componentManager.register("yAxis","axis"),this.hasRightYAxis&&this.componentManager.register("rightYAxis","axis"),this.componentManager.register("chartExportMenu","chartExportMenu"),this.componentManager.register("tooltip","tooltip"),this.componentManager.register("mouseEventDetector","mouseEventDetector")},getScaleOption:function(){var t={yAxis:this._makeYAxisScaleOption("yAxis",this.chartTypes[0],!this.hasRightYAxis)};return this.hasRightYAxis&&(t.rightYAxis=this._makeYAxisScaleOption("rightYAxis",this.chartTypes[1])),t},_makeYAxisScaleOption:function(t,e,i){var n=this.yAxisOptions[e],o={isSingleYAxis:!!i};return i&&this.options.series&&this._setAdditionalOptions(o),{options:n,areaType:"yAxis",chartType:e,additionalOptions:o}},_makeYAxisOptions:function(t,e){var i={};return e=e||{},tui.util.forEachArray(t,function(t,n){i[t]=e[n]||e}),i},addData:function(t,e){this._dynamicDataHelper.addData(t,e)},_setAdditionalOptions:function(t){var e=this.dataProcessor;tui.util.forEach(this.options.series,function(i,n){var o;i.stackType&&(o=e.findChartType(n),a.isAllowedStackOption(o)&&(t.chartType=o,t.stackType=i.stackType))})},addDataRatios:function(t){var e,i=this,n=this.chartTypes||[this.chartType],o=this.options.series||{};e=this.dataProcessor.isCoordinateType()?function(e){i.dataProcessor.addDataRatiosForCoordinateType(e,t,!1)}:function(e){var n=(o[e]||o).stackType;i.dataProcessor.addDataRatios(t[e],n,e)},tui.util.forEachArray(n,e)},_renderForZoom:function(t){var e=this.readyForRender();this.componentManager.render("zoom",e,{isResetZoom:t})},onZoom:function(t){this._dynamicDataHelper.pauseAnimation(),this.dataProcessor.updateRawDataForZoom(t),this._renderForZoom(!1)},onResetZoom:function(){var t=this.dataProcessor.getOriginalRawData();this._dynamicDataHelper.checkedLegends&&(t=o.filterCheckedRawData(t,this._dynamicDataHelper.checkedLegends)),this.dataProcessor.initData(t),this.dataProcessor.initZoomedRawData(),this.dataProcessor.addDataFromRemainDynamicData(tui.util.pick(this.options.series,"shifting")),this._renderForZoom(!0),this._dynamicDataHelper.restartAnimation()}});t.exports=u},function(t,e,i){"use strict";var n=i(20),o=i(4),a=tui.util.defineClass(n,{className:"tui-combo-chart",init:function(t,e,i){this.seriesTypes=tui.util.keys(t.series).sort(),this.chartTypes=["pie","pie"],n.call(this,{rawData:t,theme:e,options:i,isVertical:!0})},addComponents:function(){this.componentManager.register("title","title"), +this.componentManager.register("legend","legend"),this.componentManager.register("pie1Series","pieSeries"),this.componentManager.register("pie2Series","pieSeries"),this.componentManager.register("chartExportMenu","chartExportMenu"),this.componentManager.register("tooltip","tooltip"),this.componentManager.register("mouseEventDetector","mouseEventDetector")},addDataRatios:function(){var t=this,e=this.seriesTypes||[this.chartType];tui.util.forEachArray(e,function(e){t.dataProcessor.addDataRatiosOfPieChart(e)})},onChangeCheckedLegends:function(t){var e=this.dataProcessor.getOriginalRawData(),i=o.filterCheckedRawData(e,t);n.prototype.onChangeCheckedLegends.call(this,t,i,{seriesTypes:this.seriesTypes})}});t.exports=a},function(t,e,i){"use strict";var n=i(20),o=i(2),a=tui.util.defineClass(n,{className:"tui-pie-chart",init:function(t,e,i){i.tooltip=i.tooltip||{},i.tooltip.align||(i.tooltip.align=o.TOOLTIP_DEFAULT_ALIGN_OPTION),n.call(this,{rawData:t,theme:e,options:i})},addComponents:function(){this.componentManager.register("title","title"),this.componentManager.register("legend","legend"),this.componentManager.register("pieSeries","pieSeries"),this.componentManager.register("chartExportMenu","chartExportMenu"),this.componentManager.register("tooltip","tooltip"),this.componentManager.register("mouseEventDetector","mouseEventDetector")},addDataRatios:function(){this.dataProcessor.addDataRatiosOfPieChart(this.chartType)}});t.exports=a},function(t,e,i){"use strict";var n=i(20),o=i(2),a=tui.util.defineClass(n,{className:"tui-bubble-chart",init:function(t,e,i){i.tooltip=i.tooltip||{},i.circleLegend=i.circleLegend||{},i.tooltip.align||(i.tooltip.align=o.TOOLTIP_DEFAULT_ALIGN_OPTION),tui.util.isUndefined(i.circleLegend.visible)&&(i.circleLegend.visible=!0),n.call(this,{rawData:t,theme:e,options:i,hasAxes:!0})},getScaleOption:function(){var t={};return this.dataProcessor.hasXValue(this.chartType)&&(t.xAxis={valueType:"x"}),this.dataProcessor.hasYValue(this.chartType)&&(t.yAxis={valueType:"y"}),t},_setDefaultOptions:function(t){n.prototype._setDefaultOptions.call(this,t),this.options.circleLegend=this.options.circleLegend||{},tui.util.isUndefined(this.options.circleLegend.visible)&&(this.options.circleLegend.visible=!0)},addComponents:function(){this.componentManager.register("title","title"),this.componentManager.register("plot","plot"),this.componentManager.register("legend","legend"),this.componentManager.register("circleLegend","circleLegend"),this.componentManager.register("bubbleSeries","bubbleSeries"),this.componentManager.register("yAxis","axis"),this.componentManager.register("xAxis","axis"),this.componentManager.register("chartExportMenu","chartExportMenu"),this.componentManager.register("tooltip","tooltip"),this.componentManager.register("mouseEventDetector","mouseEventDetector")},addDataRatios:function(t){this.dataProcessor.addDataRatiosForCoordinateType(this.chartType,t,!0)}});t.exports=a},function(t,e,i){"use strict";var n=i(20),o=i(2),a=tui.util.defineClass(n,{className:"tui-scatter-chart",init:function(t,e,i){i.tooltip=i.tooltip||{},i.tooltip.align||(i.tooltip.align=o.TOOLTIP_DEFAULT_ALIGN_OPTION),n.call(this,{rawData:t,theme:e,options:i,hasAxes:!0})},getScaleOption:function(){return{xAxis:{valueType:"x"},yAxis:{valueType:"y"}}},addComponents:function(){this.componentManager.register("title","title"),this.componentManager.register("plot","plot"),this.componentManager.register("legend","legend"),this.componentManager.register("scatterSeries","scatterSeries"),this.componentManager.register("yAxis","axis"),this.componentManager.register("xAxis","axis"),this.componentManager.register("chartExportMenu","chartExportMenu"),this.componentManager.register("tooltip","tooltip"),this.componentManager.register("mouseEventDetector","mouseEventDetector")},addDataRatios:function(t){this.dataProcessor.addDataRatiosForCoordinateType(this.chartType,t,!1)}});t.exports=a},function(t,e,i){"use strict";var n=i(20),o=i(115),a=i(2),r=tui.util.defineClass(n,{className:"tui-heatmap-chart",init:function(t,e,i){i.tooltip=i.tooltip||{},i.tooltip.align||(i.tooltip.align=a.TOOLTIP_DEFAULT_ALIGN_OPTION),i.tooltip.grouped=!1,n.call(this,{rawData:t,theme:e,options:i,hasAxes:!0,isVertical:!0})},_addComponents:function(){var t=this.theme.series[this.chartType],e=new o(t.startColor,t.endColor);this._addComponentsForAxisType({axis:[{name:"yAxis",isVertical:!0},{name:"xAxis"}],legend:{classType:"spectrumLegend",additionalParams:{colorSpectrum:e}},series:[{name:"heatmapSeries",data:{colorSpectrum:e}}],tooltip:!0,mouseEventDetector:!0})},getScaleOption:function(){return{legend:!0}},addDataRatios:function(t){this.dataProcessor.addDataRatios(t.legend,null,this.chartType)},addComponents:function(){var t=this.theme.series[this.chartType],e=new o(t.startColor,t.endColor);this.componentManager.register("title","title"),this.componentManager.register("legend","spectrumLegend",{colorSpectrum:e}),this.componentManager.register("heatmapSeries","heatmapSeries",{colorSpectrum:e}),this.componentManager.register("xAxis","axis"),this.componentManager.register("yAxis","axis"),this.componentManager.register("chartExportMenu","chartExportMenu"),this.componentManager.register("tooltip","tooltip"),this.componentManager.register("mouseEventDetector","mouseEventDetector")}});t.exports=r},function(t,e,i){"use strict";var n=i(116),o=tui.util.defineClass({init:function(t,e){var i;this.start=n.colorNameToHex(t),this.startRGB=n.hexToRGB(this.start),this.end=n.colorNameToHex(e),i=n.hexToRGB(this.end),this.distances=this._makeDistances(this.startRGB,i),this.colorMap={}},_makeDistances:function(t,e){return tui.util.map(t,function(t,i){return e[i]-t})},getColor:function(t){var e,i,o=this.colorMap[t];return o||(e=this.distances,i=tui.util.map(this.startRGB,function(i,n){return i+parseInt(e[n]*t,10)}),o=n.rgbToHEX.apply(null,i)),o||null}});t.exports=o},function(t,e){"use strict";var i=/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i,n={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",honeydew:"#f0fff0",hotpink:"#ff69b4","indianred ":"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgrey:"#d3d3d3",lightgreen:"#90ee90",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370d8",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#d87093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},o={leadingZero:function(t,e){var i="",n=0;if(String(t).length>e)return String(t);for(;n=0||i.isRange)&&(o=tui.util.extend({},t.leftTop),o.left-="column"===e||r<0?1:0,a=n.makeLinePath(o,t.rightTop).join(" ")),a},_makeRightLinePath:function(t,e,i){var o=null;return("column"===e||i.value>=0||i.isRange)&&(o=n.makeLinePath(t.rightTop,t.rightBottom).join(" ")),o},_makeBottomLinePath:function(t,e,i){var o=null;return("bar"===e||i.value<0||i.isRange)&&(o=n.makeLinePath(t.leftBottom,t.rightBottom).join(" ")),o},_makeLeftLinePath:function(t,e,i){var o=null;return("column"===e||i.value<0||i.isRange)&&(o=n.makeLinePath(t.leftTop,t.leftBottom).join(" ")),o},_makeBorderLinesPaths:function(t,e,i){var n=this._makeRectPoints(t),o={top:this._makeTopLinePath(n,e,i),right:this._makeRightLinePath(n,e,i),bottom:this._makeBottomLinePath(n,e,i),left:this._makeLeftLinePath(n,e,i)};return tui.util.filter(o,function(t){return t})},_renderBorderLines:function(t,e,i,o){var a=this,r=this._makeBorderLinesPaths(t,i,o),s={};return tui.util.forEach(r,function(t,i){s[i]=n.renderLine(a.paper,t,e,1)}),s},_renderBarBorders:function(t){var e,i=this,n=this.theme.borderColor;return n?e=tui.util.map(t,function(t,e){return tui.util.map(t,function(t,o){var a;return t?(a=i.seriesDataModel.getSeriesItem(e,o),i._renderBorderLines(t.start,n,i.chartType,a)):null})}):null},_animateRect:function(t,e){t.animate({x:e.left,y:e.top,width:e.width,height:e.height},a,">")},_animateBorders:function(t,e,i,n){var o=this._makeBorderLinesPaths(e,i,n);tui.util.forEach(t,function(t,e){t.animate({path:o[e]},a,">")})},animate:function(t){var e=this,i=this.groupBorders||[];n.forEach2dArray(this.groupBars,function(t,n,o){var a=i[n]&&i[n][o];t&&(e._animateRect(t.rect,t.bound),a&&e._animateBorders(a,t.bound,e.chartType,t.item))}),t&&(this.callbackTimeout=setTimeout(function(){t(),delete e.callbackTimeout},a))},showAnimation:function(t){var e=this.groupBars[t.groupIndex][t.index],i=e.bound;this.overlay.attr({width:i.width,height:i.height,x:i.left,y:i.top,"fill-opacity":.3})},hideAnimation:function(){this.overlay.attr({width:1,height:1,x:0,y:0,"fill-opacity":0})},_updateRectBound:function(t,e){t.attr({x:e.left,y:e.top,width:e.width,height:e.height})},resize:function(t){var e=this,i=this.groupBorders||[],o=t.dimension,a=t.groupBounds;this.groupBounds=a,this.paper.setSize(o.width,o.height),n.forEach2dArray(this.groupBars,function(t,o,r){var s,u;t&&(s=i[o]&&i[o][r],u=a[o][r].end,t.bound=u,n.updateRectBound(t.rect,u),s&&e._updateBordersPath(s,u,e.chartType,t.item))})},_changeBordersColor:function(t,e){tui.util.forEach(t,function(t){t.attr({stroke:e})})},_changeBarColor:function(t,e,i){var n,o=this.groupBars[t.groupIndex][t.index];o.rect.attr({fill:e}),i&&(n=this.groupBorders[t.groupIndex][t.index],this._changeBordersColor(n,i))},selectSeries:function(t){var e,i=this.groupBars[t.groupIndex][t.index],a=o.color(i.color),r=this.theme.selectionColor,s=r||n.makeChangedLuminanceColor(a.hex,u),h=this.theme.borderColor;h&&(e=o.color(h),h=n.makeChangedLuminanceColor(e.hex,u)),this._changeBarColor(t,s,h)},unselectSeries:function(t){var e=this.groupBars[t.groupIndex][t.index],i=this.theme.borderColor;this._changeBarColor(t,e.color,i)},selectLegend:function(t){var e=this.groupBorders||[],i=tui.util.isNull(t);n.forEach2dArray(this.groupBars,function(n,o,a){var u,h;n&&(u=e[o]&&e[o][a],h=i||t===a?r:s,n.rect.attr({"fill-opacity":h}),u&&tui.util.forEach(u,function(t){t.attr({"stroke-opacity":h})}))})},renderSeriesLabel:function(t,e,i,o,a){var r={"font-size":o.fontSize,"font-family":o.fontFamily,"font-weight":o.fontWeight,fill:o.color,opacity:0,"text-anchor":a?"middle":"start"},s=t.set();return tui.util.forEach(i,function(i,o){tui.util.forEach(i,function(i,a){var u,h=e[o][a],l=n.renderText(t,h.end,i.end,r);l.node.style.userSelect="none",l.node.style.cursor="default",l.node.setAttribute("filter","url(#glow)"),s.push(l),h.start&&(u=n.renderText(t,h.start,i.start,r),u.node.style.userSelect="none",u.node.style.cursor="default",u.node.setAttribute("filter","url(#glow)"),s.push(u))})}),s}});t.exports=h},function(t,e,i){"use strict";var n=i(61),o=window.Raphael,a=700,r=1,s=.3,u=.2,h=1,l=2,c=2,d=1,p=tui.util.defineClass({render:function(t,e){var i=e.groupBounds;return i?(this.paper=t,this.theme=e.theme,this.options=e.options,this.seriesDataModel=e.seriesDataModel,this.chartType=e.chartType,this.paper.setStart(),this.groupWhiskers=[],this.groupMedians=[],this.groupBoxes=this._renderBoxplots(i),this.groupBorders=this._renderBoxBorders(i),this.rectOverlay=this._renderRectOverlay(),this.circleOverlay=this._renderCircleOverlay(),this.groupBounds=i,this.paper.setFinish()):null},_renderRectOverlay:function(){var t={width:1,height:1,left:0,top:0},e={"fill-opacity":0};return n.renderRect(this.paper,t,tui.util.extend({"stroke-width":0},e))},_renderCircleOverlay:function(){var t={left:0,top:0},e={"fill-opacity":0};return n.renderCircle(this.paper,t,0,tui.util.extend({"stroke-width":0},e))},_renderBox:function(t,e,i){var o;return t.width<0||t.height<0?null:o=n.renderRect(this.paper,t,tui.util.extend({fill:"#fff",stroke:e,"stroke-width":h},i))},_renderBoxes:function(t){var e=this,i=this.theme.colors,n=this.options.colorByPoint;return tui.util.map(t,function(t,o){return tui.util.map(t,function(t,a){var r,s,u;return t?(u=e.seriesDataModel.getSeriesItem(o,a),r=n?i[o]:i[a],t.start&&(s=e._renderBox(t.start,r)),{rect:s,color:r,bound:t.end,item:u,groupIndex:o,index:a}):null})})},_renderBoxplots:function(t){var e=this._renderBoxes(t);return this.groupWhiskers=this._renderWhiskers(t),this.groupMedians=this._renderMedianLines(t),this.groupOutliers=this._renderOutliers(t),e},_renderWhisker:function(t,e,i){var o=this.paper,a=e.top-t.top,r=a>0?1:-1,s=t.width,u=t.left,h=s/4,c="M"+(u+h)+","+t.top+"H"+(u+3*h),p="M"+(u+2*h)+","+t.top+"V"+(t.top+Math.abs(a)*r),f=n.renderLine(o,c,i,l),m=n.renderLine(o,p,i,d),g=[];return f.attr({opacity:0}),m.attr({opacity:0}),g.push(f),g.push(m),g},_renderWhiskers:function(t){var e=this,i=this.theme.colors,n=this.options.colorByPoint,o=[];return tui.util.forEach(t,function(t,a){var r=[];tui.util.forEach(t,function(t,o){var s=n?i[a]:i[o];t&&(r=r.concat(e._renderWhisker(t.min,t.start,s)),r=r.concat(e._renderWhisker(t.max,t.end,s)))}),o.push(r)}),o},_renderMedianLine:function(t,e){var i=t.width,o="M"+t.left+","+t.top+"H"+(t.left+i),a=n.renderLine(this.paper,o,e,c);return a.attr({opacity:0}),a},_renderMedianLines:function(t){var e=this,i=this.theme.colors,n=this.options.colorByPoint,o=[];return tui.util.forEach(t,function(t,a){var r=[];tui.util.forEach(t,function(t,o){var s=n?i[a]:i[o];t&&r.push(e._renderMedianLine(t.median,s))}),o.push(r)}),o},_renderOutlier:function(t,e){var i=n.renderCircle(this.paper,{left:t.left,top:t.top},3,{stroke:e});return i.attr({opacity:0}),i},_renderOutliers:function(t){var e=this,i=this.theme.colors,n=this.options.colorByPoint,o=[];return tui.util.forEach(t,function(t,a){var r=[];tui.util.forEach(t,function(t,o){var s=n?i[a]:i[o],u=[];t&&(t.outliers.length&&tui.util.forEach(t.outliers,function(t){u.push(e._renderOutlier(t,s))}),r.push(u))}),o.push(r)}),o},_makeRectPoints:function(t){return{leftTop:{left:Math.ceil(t.left),top:Math.ceil(t.top)},rightTop:{left:Math.ceil(t.left+t.width),top:Math.ceil(t.top)},rightBottom:{left:Math.ceil(t.left+t.width),top:Math.ceil(t.top+t.height)},leftBottom:{left:Math.ceil(t.left),top:Math.ceil(t.top+t.height)}}},_renderBorderLines:function(t,e,i,o){var a=this,r=this._makeBorderLinesPaths(t,i,o),s={};return tui.util.forEach(r,function(t,i){s[i]=n.renderLine(a.paper,t,e,1)}),s},_renderBoxBorders:function(t){var e,i=this,n=this.theme.borderColor;return n?e=tui.util.map(t,function(t,e){return tui.util.map(t,function(t,o){var a;return t?(a=i.seriesDataModel.getSeriesItem(e,o),i._renderBorderLines(t.start,n,i.chartType,a)):null})}):null},_animateRect:function(t,e){t.animate({x:e.left,y:e.top,width:e.width,height:e.height},a,">")},animate:function(t){var e=this,i=o.animation({opacity:1},a);n.forEach2dArray(this.groupBoxes,function(t){t&&e._animateRect(t.rect,t.bound)}),n.forEach2dArray(e.groupWhiskers,function(t){t.animate(i.delay(a))}),n.forEach2dArray(e.groupMedians,function(t){t.animate(i.delay(a))}),n.forEach2dArray(e.groupOutliers,function(t){tui.util.forEach(t,function(t){t.animate(i.delay(a))})}),t&&(this.callbackTimeout=setTimeout(function(){t(),delete e.callbackTimeout},a))},showAnimation:function(t){tui.util.isNumber(t.outlierIndex)?this.showOutlierAnimation(t):this.showRectAnimation(t)},showRectAnimation:function(t){var e=this.groupBoxes[t.groupIndex][t.index],i=e.bound;this.rectOverlay.attr({width:i.width,height:i.height,x:i.left,y:i.top,fill:e.color,"fill-opacity":.3})},showOutlierAnimation:function(t){var e=this.groupOutliers[t.groupIndex][t.index][t.outlierIndex].attr();this.circleOverlay.attr({r:e.r,cx:e.cx,cy:e.cy,fill:e.stroke,"fill-opacity":.3,stroke:e.stroke,"stroke-width":2})},hideAnimation:function(){this.circleOverlay.attr({width:1,height:1,x:0,y:0,"fill-opacity":0,"stroke-width":0}),this.rectOverlay.attr({width:1,height:1,x:0,y:0,"fill-opacity":0})},_updateRectBound:function(t,e){t.attr({x:e.left,y:e.top,width:e.width,height:e.height})},resize:function(t){var e=t.dimension,i=t.groupBounds;this.groupBounds=i,this.paper.setSize(e.width,e.height),n.forEach2dArray(this.groupBoxes,function(t,e,o){var a;t&&(a=i[e][o].end,t.bound=a,n.updateRectBound(t.rect,a))})},_changeBordersColor:function(t,e){tui.util.forEach(t,function(t){t.attr({stroke:e})})},_changeBoxColor:function(t,e,i){var n,o=this.groupBoxes[t.groupIndex][t.index];o.rect.attr({stroke:e}),i&&(n=this.groupBorders[t.groupIndex][t.index],this._changeBordersColor(n,i))},selectSeries:function(t){var e,i=this.groupBoxes[t.groupIndex][t.index],a=o.color(i.color),r=this.theme.selectionColor,s=r||n.makeChangedLuminanceColor(a.hex,u),h=this.theme.borderColor;h&&(e=o.color(h),h=n.makeChangedLuminanceColor(e.hex,u)),this._changeBoxColor(t,s,h)},unselectSeries:function(t){var e=this.groupBoxes[t.groupIndex][t.index],i=this.theme.borderColor;this._changeBoxColor(t,e.color,i)},selectLegend:function(t){var e=tui.util.isNull(t);n.forEach2dArray(this.groupBoxes,function(i,n,o){var a;i&&(a=e||t===o?r:s,i.rect.attr({"stroke-opacity":a}))}),n.forEach2dArray(this.groupWhiskers,function(i,n,o){var a=e||t===o?r:s;i.attr({"stroke-opacity":a})}),n.forEach2dArray(this.groupMedians,function(i,n,o){var a=e||t===o?r:s;i.attr({"stroke-opacity":a})})},renderSeriesLabel:function(t,e,i,o,a){var r={"font-size":o.fontSize,"font-family":o.fontFamily,"font-weight":o.fontWeight, +fill:o.color,opacity:0,"text-anchor":a?"middle":"start"},s=t.set();return tui.util.forEach(i,function(i,o){tui.util.forEach(i,function(i,a){var u,h=e[o][a],l=n.renderText(t,h.end,i.end,r);l.node.style.userSelect="none",l.node.style.cursor="default",l.node.setAttribute("filter","url(#glow)"),s.push(l),h.start&&(u=n.renderText(t,h.start,i.start,r),u.node.style.userSelect="none",u.node.style.cursor="default",u.node.setAttribute("filter","url(#glow)"),s.push(u))})}),s}});t.exports=p},function(t,e,i){"use strict";var n=i(128),o=i(61),a=1,r=.3,s=tui.util.defineClass(n,{init:function(){this.selectedLegendIndex=null,this.chartType="line",this.lineWidth=2},render:function(t,e){var i,n=e.dimension,o=e.groupPositions,a=e.theme,r=a.colors,s=e.options,u=s.showDot?1:0,h=s.spline,l=this.lineWidth=tui.util.isNumber(s.pointWidth)?s.pointWidth:this.lineWidth,c=this.makeBorderStyle(a.borderColor,u),d=this.makeOutDotStyle(u,c);return i=h?this._getSplineLinesPath(o,s.connectNulls):this._getLinesPath(o,s.connectNulls),this.paper=t,this.theme=e.theme,this.isSpline=h,this.dimension=n,this.position=e.position,t.setStart(),this.groupLines=this._renderLines(t,i,r,l),this.tooltipLine=this._renderTooltipLine(t,n.height),this.groupDots=this._renderDots(t,o,r,u),s.allowSelect&&(this.selectionDot=this._makeSelectionDot(t),this.selectionColor=a.selectionColor),this.colors=r,this.borderStyle=c,this.outDotStyle=d,this.groupPositions=o,this.groupPaths=i,this.dotOpacity=u,delete this.pivotGroupDots,t.setFinish()},_getLinesPath:function(t,e){var i=this;return tui.util.map(t,function(t){return i._makeLinesPath(t,null,e)})},_getSplineLinesPath:function(t,e){var i=this;return tui.util.map(t,function(t){return i._makeSplineLinesPath(t,e)})},_renderLines:function(t,e,i,n){return tui.util.map(e,function(e,a){var r=i[a]||"transparent";return o.renderLine(t,e.join(" "),r,n)})},resize:function(t){var e=this,i=t.dimension,n=t.groupPositions;this.resizeClipRect(i),this.groupPositions=n,this.groupPaths=this.isSpline?this._getSplineLinesPath(n):this._getLinesPath(n),this.paper.setSize(i.width,i.height),this.tooltipLine.attr({top:i.height}),tui.util.forEachArray(this.groupPaths,function(t,i){e.groupLines[i].attr({path:t.join(" ")}),tui.util.forEachArray(e.groupDots[i],function(t,o){t.endDot&&e._moveDot(t.endDot.dot,n[i][o])})})},selectLegend:function(t){var e=this,i=tui.util.isNull(t);this.selectedLegendIndex=t,tui.util.forEachArray(this.groupLines,function(n,o){var s=i||t===o?a:r;n.attr({"stroke-opacity":s}),tui.util.forEachArray(e.groupDots[o],function(t){t.opacity=s,e.dotOpacity&&t.endDot.dot.attr({"fill-opacity":s})})})},animateForAddingData:function(t,e,i,n){var o=this,a=t.options.spline,r=a?this._getSplineLinesPath(i):this._getLinesPath(i),s=0;i.length&&(n&&(s=1),tui.util.forEachArray(this.groupLines,function(t,a){var u=o.groupDots[a],h=i[a];n&&o._removeFirstDot(u),tui.util.forEachArray(u,function(t,i){var n=h[i+s];o._animateByPosition(t.endDot.dot,n,e)}),o._animateByPath(t,r[a],e)}))},renderSeriesLabel:function(t,e,i,n){var a={"font-size":n.fontSize,"font-family":n.fontFamily,"font-weight":n.fontWeight,fill:n.color,"text-anchor":"middle",opacity:0},r=t.set();return tui.util.forEach(i,function(i,n){tui.util.forEach(i,function(i,s){var u,h=e[n][s],l=o.renderText(t,h.end,i.end,a);r.push(l),l.node.style.userSelect="none",l.node.style.cursor="default",l.node.setAttribute("filter","url(#glow)"),h.start&&(u=o.renderText(t,h.start,i.start,a),u.node.style.userSelect="none",u.node.style.cursor="default",u.node.setAttribute("filter","url(#glow)"),r.push(u))})}),r}});t.exports=s},function(t,e,i){"use strict";function n(t,e,i,n){var o=document.createElementNS("http://www.w3.org/2000/svg","clipPath"),a=t.rect(e.left-10,e.top-10,0,i.height);return a.id=n+"_rect",o.id=n,o.appendChild(a.node),t.defs.appendChild(o),a}var o=i(61),a=tui.util.browser,r=a.msie&&a.version<=8,s=700,u=3,h=7,l=.3,c=300,d="clipRectForAnimation",p=Array.prototype.concat,f=tui.util.defineClass({_makeLinesPath:function(t,e,i){var n=[],o=!1;return e=e||"top",tui.util.map(t,function(t){var a=o&&!i?"M":"L";t?(n.push([a,t.left,t[e]]),o&&(o=!1)):o=!0}),n=p.apply([],n),n.length>0&&(n[0]="M"),n},_getAnchor:function(t,e,i){var n,o,a,r,s,u=(e.left-t.left)/2,h=(i.left-e.left)/2,l=Math.atan((e.left-t.left)/Math.abs(e.top-t.top)),c=Math.atan((i.left-e.left)/Math.abs(e.top-i.top));return l=t.top0&&!e||r)&&(i.push(n),n=[])}),i},_getSplinePartialPaths:function(t){var e,i,n,o,a,r,s,u=this,h=[];return tui.util.forEach(t,function(t){s=e=t[0],n=t.length,o=e,i=t[n-1],a=t.slice(1).slice(0,n-2),r=tui.util.map(a,function(e,i){var n=t[i+2],a=u._getAnchor(o,e,n);return o=e,Math.abs(a.y1-s.top)>Math.abs(s.top-e.top)&&(a.y1=e.top),Math.abs(a.y2-n.top)>Math.abs(n.top-e.top)&&(a.y2=e.top),s=e,[a.x1,a.y1,e.left,e.top,a.x2,a.y2]}),r.push([i.left,i.top,i.left,i.top]),r.unshift(["M",e.left,e.top,"C",e.left,e.top]),h.push(r)}),h},_makeSplineLinesPath:function(t,e){var i=[],n=this._getSplinePositionsGroups(t,e),o=this._getSplinePartialPaths(n);return tui.util.forEach(o,function(t){i=i.concat(t)}),i},_renderTooltipLine:function(t,e){var i=o.makeLinePath({left:10,top:e},{left:10,top:0});return o.renderLine(t,i,"transparent",1)},makeBorderStyle:function(t,e){var i;return t&&(i={stroke:t,"stroke-width":1,"stroke-opacity":e}),i},makeOutDotStyle:function(t,e){var i={"fill-opacity":t,"stroke-opacity":0,r:u};return e&&tui.util.extend(i,e),i},renderDot:function(t,e,i,n){var o,a,r,s=this.theme&&this.theme.dot||{dot:{}};return e&&(o=t.circle(e.left,e.top,s.radius||u),a={fill:s.fillColor||i,"fill-opacity":tui.util.isNumber(n)?n:s.fillOpacity,stroke:s.strokeColor||i,"stroke-opacity":tui.util.isNumber(n)?n:s.strokeOpacity,"stroke-width":s.strokeWidth},o.attr(a),r={dot:o,color:i}),r},_moveDotsToFront:function(t){o.forEach2dArray(t,function(t){t.endDot.dot.toFront(),t.startDot&&t.startDot.dot.toFront()})},_renderDots:function(t,e,i,n,o){var a,r=this;return a=tui.util.map(e,function(e,a){var s=i[a];return tui.util.map(e,function(e){var i,a={endDot:r.renderDot(t,e,s,n)};return r.hasRangeData&&(i=tui.util.extend({},e),i.top=i.startTop,a.startDot=r.renderDot(t,i,s,n)),o&&(o.push(a.endDot.dot),a.startDot&&o.push(a.startDot.dot)),a})})},_getCenter:function(t,e){return{left:(t.left+e.left)/2,top:(t.top+e.top)/2}},_showDot:function(t){var e=this.theme.dot.hover,i={"fill-opacity":e.fillOpacity,stroke:e.strokeColor||t.color,"stroke-opacity":e.strokeOpacity,"stroke-width":e.strokeWidth,r:e.radius};this.prevDotAttributes=t.dot.attr(),e.fillColor&&(i.fill=e.fillColor),t.dot.attr(i)},_updateLineStrokeWidth:function(t,e){t.attr({"stroke-width":e})},showAnimation:function(t){var e,i,n=t.groupIndex,o=t.index,a=this.groupLines?this.groupLines[o]:this.groupAreas[o],r=this.groupDots[o][n];r&&("area"===this.chartType?(e=2*this.lineWidth,i=a.startLine,a=a.line):e=2*this.lineWidth,this._updateLineStrokeWidth(a,e),i&&this._updateLineStrokeWidth(i,e),this._showDot(r.endDot),r.startDot&&this._showDot(r.startDot))},_getPivotGroupDots:function(){return!this.pivotGroupDots&&this.groupDots&&(this.pivotGroupDots=tui.chart.arrayUtil.pivot(this.groupDots)),this.pivotGroupDots},_showGroupDots:function(t){var e=this,i=this._getPivotGroupDots();i&&i[t]&&tui.util.forEachArray(i[t],function(t){t.endDot&&e._showDot(t.endDot),t.startDot&&e._showDot(t.startDot)})},showGroupTooltipLine:function(t,e){var i=Math.max(t.position.left,11),n=o.makeLinePath({left:i,top:e.position.top+t.dimension.height},{left:i,top:e.position.top});this.tooltipLine&&this.tooltipLine.attr({path:n,stroke:"#999","stroke-opacity":1})},showGroupAnimation:function(t){this._showGroupDots(t)},_hideDot:function(t,e){var i=this.prevDotAttributes,n=this.outDotStyle;i&&!tui.util.isUndefined(e)&&(n=tui.util.extend({r:i.r,"stroke-opacity":i["stroke-opacity"],"stroke-width":i["stroke-width"]},{"fill-opacity":e})),t.attr(n)},hideAnimation:function(t){var e,i,n,o,a=t.groupIndex,r=t.index,s=this.dotOpacity,u=this.groupDots[r];u&&u[a]&&(e=this.groupLines?this.groupLines[r]:this.groupAreas[r],i=u[a],"area"===this.chartType?(n=this.lineWidth,o=e.startLine,e=e.line):n=this.lineWidth,s&&!tui.util.isNull(this.selectedLegendIndex)&&this.selectedLegendIndex!==r&&(s=l),e&&this._updateLineStrokeWidth(e,n),o&&this._updateLineStrokeWidth(o,n),i&&(this._hideDot(i.endDot.dot,s),i.startDot&&this._hideDot(i.startDot.dot,s)))},_hideGroupDots:function(t){var e=this,i=!tui.util.isNull(this.selectedLegendIndex),n=this.dotOpacity,o=this._getPivotGroupDots();o&&o[t]&&tui.util.forEachArray(o[t],function(t,o){var a=n;a&&i&&e.selectedLegendIndex!==o&&(a=l),t.endDot&&e._hideDot(t.endDot.dot,a),t.startDot&&e._hideDot(t.startDot.dot,a)})},hideGroupTooltipLine:function(){this.tooltipLine.attr({"stroke-opacity":0})},hideGroupAnimation:function(t){this._hideGroupDots(t)},_moveDot:function(t,e){var i={cx:e.left,cy:e.top};this.dotOpacity&&(i=tui.util.extend({"fill-opacity":this.dotOpacity},i,this.borderStyle)),t.attr(i)},animate:function(t,e){var i=this.paper,o=this.dimension,a=this.position,u=this.clipRect;!r&&o&&(u?u.attr({width:0}):(u=n(i,a,o,d),this.clipRect=u),e.forEach(function(t){t.node.setAttribute("clip-path","url(#"+d+")")}),u.animate({width:o.width},s,">",t))},_makeSelectionDot:function(t){var e=t.circle(0,0,h);return e.attr({fill:"#ffffff","fill-opacity":0,"stroke-opacity":0,"stroke-width":2}),e},selectSeries:function(t){var e=this.groupDots[t.index][t.groupIndex],i=this.groupPositions[t.index][t.groupIndex];this.selectedItem=e,this.selectionDot.attr({cx:i.left,cy:i.top,"fill-opacity":.5,"stroke-opacity":1,stroke:this.selectionColor||e.endDot.color}),this.selectionStartDot&&this.selectionStartDot.attr({cx:i.left,cy:i.startTop,"fill-opacity":.5,"stroke-opacity":1,stroke:this.selectionColor||e.startDot.color})},unselectSeries:function(t){var e=this.groupDots[t.index][t.groupIndex];this.selectedItem===e&&this.selectionDot.attr({"fill-opacity":0,"stroke-opacity":0}),this.selectionStartDot&&this.selectionStartDot.attr({"fill-opacity":0,"stroke-opacity":0})},setSize:function(t,e){t=t||this.dimension.width,e=e||this.dimension.height,this.paper.setSize(t,e)},_animateByPosition:function(t,e,i){var n={cx:e.left,cy:e.top};tui.util.isExisty(i)&&(n.transform="t-"+i+",0"),t.animate(n,c)},_animateByPath:function(t,e,i){var n={path:e.join(" ")};tui.util.isExisty(i)&&(n.transform="t-"+i+",0"),t.animate(n,c)},_removeFirstDot:function(t){var e=t.shift();e.endDot.dot.remove(),e.startDot&&e.startDot.dot.remove()},clear:function(){delete this.paper.dots,this.paper.clear()},resizeClipRect:function(t){var e=this.paper.getById(d+"_rect");e.attr({width:t.width,height:t.height})}});t.exports=f},function(t,e,i){"use strict";var n=i(128),o=i(61),a=1,r=.3,s=Array.prototype.concat,u=i(2).GUIDE_AREACHART_AREAOPACITY_TYPE,h=i(130),l=tui.util.defineClass(n,{init:function(){this.selectedLegendIndex=null,this.chartType="area",this.lineWidth=1},render:function(t,e){var i=e.dimension,n=e.groupPositions,o=e.theme,a=o.colors,r=e.options,s=this._isAreaOpacityNumber(r.areaOpacity)?r.areaOpacity:.5,u=r.showDot?1:0,h=this.makeBorderStyle(o.borderColor,u),l=this.makeOutDotStyle(u,h),c=this.lineWidth=tui.util.isNumber(r.pointWidth)?r.pointWidth:this.lineWidth;return this.paper=t,this.theme=e.theme,this.isSpline=r.spline,this.dimension=i,this.position=e.position,this.zeroTop=e.zeroTop,this.hasRangeData=e.hasRangeData,t.setStart(),this.groupPaths=this._getAreaChartPath(n,null,r.connectNulls),this.groupAreas=this._renderAreas(t,this.groupPaths,a,c,s),this.tooltipLine=this._renderTooltipLine(t,i.height),this.groupDots=this._renderDots(t,n,a,u),r.allowSelect&&(this.selectionDot=this._makeSelectionDot(t),this.selectionColor=o.selectionColor,this.hasRangeData&&(this.selectionStartDot=this._makeSelectionDot(t))),this.outDotStyle=l,this.groupPositions=n,this.dotOpacity=u,this.pivotGroupDots=null,t.setFinish()},_getAreaChartPath:function(t,e,i){var n;return n=this.isSpline?this._makeSplineAreaChartPath(t,e):this._makeAreaChartPath(t,e,i)},_renderAreas:function(t,e,i,n,a){var r;return i=i.slice(0,e.length),i.reverse(),e.reverse(),r=tui.util.map(e,function(e,r){var s=i[r]||"transparent",u=s,h={area:o.renderArea(t,e.area.join(" "),{fill:s,opacity:a,stroke:s}),line:o.renderLine(t,e.line.join(" "),u,n)};return e.startLine&&(h.startLine=o.renderLine(t,e.startLine.join(" "),u,1)),h}),r.reverse()},_makeHeight:function(t,e){return Math.abs(t-e)},_makeAreasPath:function(t,e){var i,n=[],o=[],a=!1,r=t.length,u=[],h=[];return tui.util.forEachArray(t,function(t,e){var i;t?(a?(i="M",a=!1):i="L",u.push([i,t.left,t.top]),h.unshift(["L",t.left,t.startTop])):(a=!0,h.push(["z"])),t&&e!==r-1||(o.push(u.concat(h)),u=[],h=[])}),tui.util.forEachArray(o,function(t){n=n.concat(t)}),e!==!1&&(i=t.length-1,n.splice(i+1,0,n[i],n[i+1])),n=s.apply([],n),n[0]="M",n},_makeAreaChartPath:function(t,e,i){var n=this;return tui.util.map(t,function(t){var o;return o={area:n._makeAreasPath(t,e),line:n._makeLinesPath(t,null,i)},n.hasRangeData&&(o.startLine=n._makeLinesPath(t,"startTop")),o})},_makeSplineAreaBottomPath:function(t){var e=this;return tui.util.map(t,function(t){return["L",t.left,e.zeroTop]}).reverse()},_makeSplineAreaChartPath:function(t,e){var i=this;return tui.util.map(t,function(t){var n,o=i._makeSplineLinesPath(t),a=JSON.parse(JSON.stringify(o)),r=i._makeSplineAreaBottomPath(t);return e!==!1&&(n=t[t.length-1],a.push(["L",n.left,n.top]),r.unshift(["L",n.left,i.zeroTop])),{area:a.concat(r),line:o}})},resize:function(t){var e=this,i=t.dimension,n=t.groupPositions;this.resizeClipRect(i),this.zeroTop=t.zeroTop,this.groupPositions=n,this.groupPaths=this._getAreaChartPath(n),this.paper.setSize(i.width,i.height),this.tooltipLine.attr({top:i.height}),tui.util.forEachArray(this.groupPaths,function(t,i){var o=e.groupAreas[i];o.area.attr({path:t.area.join(" ")}),o.line.attr({path:t.line.join(" ")}),o.startLine&&o.startLine.attr({path:t.startLine.join(" ")}),tui.util.forEachArray(e.groupDots[i],function(t,o){var a,r=n[i][o];t.endDot&&e._moveDot(t.endDot.dot,r),t.startDot&&(a=tui.util.extend({},r),a.top=a.startTop,e._moveDot(t.startDot.dot,a))})})},selectLegend:function(t){var e=this,i=tui.util.isNull(t);this.selectedLegendIndex=t,tui.util.forEachArray(this.groupAreas,function(n,o){var s=i||t===o?a:r;n.area.attr({"fill-opacity":s}),n.line.attr({"stroke-opacity":s}),n.startLine&&n.startLine.attr({"stroke-opacity":s}),tui.util.forEachArray(e.groupDots[o],function(t){e.dotOpacity&&(t.endDot.dot.attr({"fill-opacity":s}),t.startDot&&t.startDot.dot.attr({"fill-opacity":s}))})})},animateForAddingData:function(t,e,i,n,o){var a=this,r=this._getAreaChartPath(i,!1),s=0;i.length&&(n&&(s=1),this.zeroTop=o,tui.util.forEachArray(this.groupAreas,function(t,o){var u=a.groupDots[o],h=i[o],l=r[o];n&&a._removeFirstDot(u),tui.util.forEachArray(u,function(t,i){var n=h[i+s];a._animateByPosition(t.endDot.dot,n,e),t.startDot&&a._animateByPosition(t.startDot.dot,{left:n.left,top:n.startTop},e)}),a._animateByPath(t.area,l.area,e),a._animateByPath(t.line,l.line,e),t.startLine&&a._animateByPath(t.startLine,l.startLine,e)}))},renderSeriesLabel:function(t,e,i,n){var a={"font-size":n.fontSize,"font-family":n.fontFamily,"font-weight":n.fontWeight,fill:n.color,"text-anchor":"middle",opacity:0},r=t.set();return tui.util.forEach(i,function(i,n){tui.util.forEach(i,function(i,s){var u,h=e[n][s],l=o.renderText(t,h.end,i.end,a);r.push(l),l.node.style.userSelect="none",l.node.style.cursor="default",l.node.setAttribute("filter","url(#glow)"),h.start&&(u=o.renderText(t,h.start,i.start,a),u.node.style.userSelect="none",u.node.style.cursor="default",u.node.setAttribute("filter","url(#glow)"),r.push(u))})}),r},_isAreaOpacityNumber:function(t){var e=tui.util.isNumber(t);return e?(t<0||t>1)&&h.print(u,"warn"):tui.util.isUndefined(t)||h.print(u,"error"),e}});t.exports=l},function(t,e){"use strict";t.exports={print:function(t,e){e=e||"log",window.console&&window.console[e](t)}}},function(t,e,i){"use strict";var n=i(61),o=window.Raphael,a=180,r=360,s=.01,u=Math.PI/a,h=700,l=1,c=.3,d=.3,p=.2,f="overlay",m=20,g=tui.util.defineClass({render:function(t,e,i){var n=t.set();return this.paper=t,this.holeRatio=e.options.radiusRange[0],this.chartBackground=e.chartBackground,this.chartType=e.chartType,this.callbacks=i,this.selectionColor=e.theme.selectionColor,this.circleBound=e.circleBound,this.sectorName="sector_"+this.chartType,this._setSectorAttr(),this.sectorInfos=this._renderPie(e.sectorData,e.theme.colors,e.additionalIndex,n),this.overlay=this._renderOverlay(),this.prevPosition=null,this.prevHoverSector=null,n},clear:function(){this.legendLines=null,this.paper.clear()},_makeSectorPath:function(t,e,i,n,o){var r=n*u,s=o*u,h=t+i*Math.sin(r),l=e-i*Math.cos(r),c=t+i*Math.sin(s),d=e-i*Math.cos(s),p=o-n>a?1:0,f=["M",t,e,"L",h,l,"A",i,i,0,p,1,c,d,"Z"];return{path:f}},_makeDonutSectorPath:function(t,e,i,n,o,r){var s=n*u,h=o*u,l=r||i*this.holeRatio,c=t+i*Math.sin(s),d=e-i*Math.cos(s),p=t+l*Math.sin(s),f=e-l*Math.cos(s),m=t+i*Math.sin(h),g=e-i*Math.cos(h),_=t+l*Math.sin(h),T=e-l*Math.cos(h),v=o-n>a?1:0,x=["M",c,d,"A",i,i,0,v,1,m,g,"L",_,T,"A",l,l,0,v,0,p,f,"Z"];return{path:x}},_setSectorAttr:function(){var t;this.paper.customAttributes[this.sectorName]||(t=this.holeRatio?this._makeDonutSectorPath:this._makeSectorPath,this.paper.customAttributes[this.sectorName]=tui.util.bind(t,this))},_renderOverlay:function(){var t={paper:this.paper,circleBound:{cx:0,cy:0,r:0},angles:{startAngle:0,endAngle:0},attrs:{fill:"none",opacity:0,stroke:this.chartBackground.color,"stroke-width":1}},e=this._renderSector(t);return e.data("id",f),e.data("chartType",this.chartType),{inner:e,outer:this._renderSector(t)}},_renderSector:function(t){var e=t.circleBound,i=t.angles,n=t.attrs;return n[this.sectorName]=[e.cx,e.cy,e.r,i.startAngle,i.endAngle],t.paper.path().attr(n)},_renderPie:function(t,e,i,n){var o=this,a=this.circleBound,r=this.chartBackground,s=[];return tui.util.forEachArray(t,function(t,u){var h=t.ratio,l=e[u],c=o._renderSector({paper:o.paper,circleBound:a,angles:t.angles.start,attrs:{fill:r.color,stroke:r.color,"stroke-width":1}});c.data("index",u),c.data("legendIndex",u+i),c.data("chartType",o.chartType),s.push({sector:c,color:l,angles:t.angles.end,ratio:h}),n.push(c)}),s},renderLegendLines:function(t){var e,i=this.paper;this.legendLines||(e=this._makeLinePaths(t),this.legendLines=tui.util.map(e,function(t){return n.renderLine(i,t,"transparent",1)}))},_makeLinePaths:function(t){return tui.util.map(t,function(t){return[n.makeLinePath(t.start,t.middle),n.makeLinePath(t.middle,t.end),"Z"].join("")})},_showOverlay:function(t,e){var i,n=this.overlay,o=this.sectorInfos[t],a=o.angles.startAngle,r=o.angles.endAngle,s=this.circleBound;i={fill:"#fff",opacity:c},i[this.sectorName]=[s.cx,s.cy,s.r,a,r,s.r*this.holeRatio],n.inner.attr(i),n.inner.data("index",t),n.inner.data("legendIndex",e),n.outer.attr({path:this._makeDonutSectorPath(s.cx,s.cy,s.r+10,a,r,s.r).path,fill:o.color,opacity:c})},_hideOverlay:function(){var t=this.overlay,e={fill:"none",opacity:0};t.inner.attr(e),t.outer.attr(e)},animate:function(t){var e=0,i=this.sectorName,n=this.circleBound,a=[n.cx,n.cy,n.r];tui.util.forEachArray(this.sectorInfos,function(t){var n,u=t.angles,l={fill:t.color},c=h*t.ratio;0===u.startAngle&&u.endAngle===r&&(u.endAngle=r-s),l[i]=a.concat([u.startAngle,u.endAngle]),n=o.animation(l,c,">"),t.sector.animate(n.delay(e)),e+=c}),t&&setTimeout(t,e)},animateLegendLines:function(t){var e;this.legendLines&&(e=tui.util.isNull(t),tui.util.forEachArray(this.legendLines,function(i,n){var o=e||t===n?l:d;i.animate({stroke:"black","stroke-opacity":o})}))},resize:function(t){var e=t.dimension,i=t.circleBound,n=this.sectorName,o=this.labelSet;this.circleBound=i,this.paper.setSize(e.width,e.height),tui.util.forEachArray(this.sectorInfos,function(t,e){var a,r=t.angles,s={};s[n]=[i.cx,i.cy,i.r,r.startAngle,r.endAngle],t.sector.attr(s),o&&o.length&&(a=t.sector.getBBox(),o[e].attr({x:a.x+a.width/2,y:a.y+a.height/2}))})},moveLegendLines:function(t){var e;this.legendLines&&(e=this._makeLinePaths(t),tui.util.forEachArray(this.legendLines,function(t,i){return t.attr({path:e[i]}),t}))},findSectorInfo:function(t){var e=this.paper&&this.paper.getElementByPoint(t.left,t.top),i=null;return e&&(i={legendIndex:tui.util.isExisty(e.data("legendIndex"))?e.data("legendIndex"):-1,index:tui.util.isExisty(e.data("index"))?e.data("index"):-1,chartType:e.data("chartType")}),i},_isChangedPosition:function(t,e){return!t||t.left!==e.left||t.top!==e.top},_showTooltip:function(t,e){var i=[{},0,t.data("index"),{left:e.left-m,top:e.top-m}];this.callbacks.showTooltip.apply(null,i)},_isValidSector:function(t){return t&&t.data("chartType")===this.chartType},moveMouseOnSeries:function(t){var e=this.paper&&this.paper.getElementByPoint(t.left,t.top);this._isValidSector(e)?(this.prevHoverSector!==e&&(this._showOverlay(e.data("index"),e.data("legendIndex")),this.prevHoverSector=e),this._isChangedPosition(this.prevPosition,t)&&this._showTooltip(e,t)):this.prevHoverSector&&(this._hideOverlay(),this.callbacks.hideTooltip(),this.prevHoverSector=null),this.prevPosition=t},selectSeries:function(t){var e,i,a,r=this.sectorInfos[t.index];r&&(i=o.color(r.color),e=n.makeChangedLuminanceColor(i.hex,p),a=this.selectionColor||e,r.sector.attr({fill:a}))},unselectSeries:function(t){var e=this.sectorInfos[t.index];e&&e.sector.attr({fill:e.color})},selectLegend:function(t){var e=tui.util.isNull(t),i=this.legendLines;tui.util.forEachArray(this.sectorInfos,function(n,o){var a=e||t===o?l:d;n.sector.attr({"fill-opacity":a}),i&&i[o].attr({"stroke-opacity":a})})},getRenderedLabelWidth:function(t,e){return n.getRenderedTextSize(t,e.fontSize,e.fontFamily).width},getRenderedLabelHeight:function(t,e){return n.getRenderedTextSize(t,e.fontSize,e.fontFamily).height},renderLabels:function(t,e,i,o){var a=t.set(),r={"font-size":o.fontSize,"font-family":o.fontFamily,"font-weight":o.fontWeight,"text-anchor":"middle",fill:o.color,opacity:0};return tui.util.forEach(e,function(e,o){var s;e&&(s=n.renderText(t,e,i[o],r),s.node.style.userSelect="none",s.node.style.cursor="default",s.node.setAttribute("filter","url(#glow)")),a.push(s)}),this.labelSet=a,a}});t.exports=g},function(t,e,i){"use strict";var n=i(128),o=i(61),a=1,r=.3,s=tui.util.defineClass(n,{init:function(){this.selectedLegendIndex=null,this.chartType="radial",this.lineWidth=2},render:function(t,e){var i=e.dimension,n=e.groupPositions,o=e.theme,a=o.colors,r=e.options.showDot?1:0,s=e.options.showArea,u=this._getLinesPath(n),h=this.makeBorderStyle(o.borderColor,r),l=this.makeOutDotStyle(r,h),c=t.set(),d=this.lineWidth=e.options.pointWidth?e.options.pointWidth:this.lineWidth;return this.paper=t,this.theme=e.theme,this.dimension=i,this.position=e.position,s&&(this.groupAreas=this._renderArea(t,u,a,c)),this.groupLines=this._renderLines(t,u,a,d,c),this.groupDots=this._renderDots(t,n,a,r,c),e.options.allowSelect&&(this.selectionDot=this._makeSelectionDot(t),this.selectionColor=o.selectionColor),this.colors=a,this.borderStyle=h,this.outDotStyle=l,this.groupPositions=n,this.groupPaths=u,this.dotOpacity=r,c},_getLinesPath:function(t){var e=this;return tui.util.map(t,function(t){return e._makeLinesPath(t)})},_renderLines:function(t,e,i,n,a){return tui.util.map(e,function(e,r){var s=i[r]||"transparent",u=o.renderLine(t,e.join(" "),s,n);return a.push(u),u})},_renderArea:function(t,e,i,n){return tui.util.map(e,function(e,a){var r=i[a]||"transparent",s=o.renderArea(t,e,{fill:r,opacity:.4,"stroke-width":0,stroke:r});return n.push(s),s})},resize:function(t){var e=this,i=t.dimension,n=t.groupPositions;this.groupPositions=n,this.groupPaths=this._getLinesPath(n),this.paper.setSize(i.width,i.height),tui.util.forEachArray(this.groupPaths,function(t,i){e.groupLines[i].attr({path:t.join(" ")}),e.groupAreas[i].attr({path:t.join(" ")}),tui.util.forEachArray(e.groupDots[i],function(t,o){e._moveDot(t.endDot.dot,n[i][o])})})},selectLegend:function(t){var e=this,i=tui.util.isNull(t);this.selectedLegendIndex=t,tui.util.forEachArray(this.groupLines,function(n,o){var s=i||t===o?a:r;n.attr({"stroke-opacity":s}),tui.util.forEachArray(e.groupDots[o],function(t){t.opacity=s,e.dotOpacity&&t.endDot.dot.attr({"fill-opacity":s})})})}});t.exports=s},function(t,e,i){"use strict";var n=i(61),o=window.Raphael,a=700,r=.5,s=.3,u=.5,h=.3,l=.2,c=2,d=20,p=tui.util.defineClass({render:function(t,e,i){var n=t.set();return this.paper=t,this.theme=e.theme,this.seriesDataModel=e.seriesDataModel,this.groupBounds=e.groupBounds,this.callbacks=i,this.overlay=this._renderOverlay(),this.groupCircleInfos=this._renderCircles(n),this.prevCircle=null,this.prevOverCircle=null,this.animationTimeoutId=null,n},_renderOverlay:function(){var t={left:0,top:0},e={fill:"none",stroke:"#fff","stroke-opacity":s,"stroke-width":2},i=n.renderCircle(this.paper,t,0,e);return i},_renderCircles:function(t){var e=this,i=this.theme.colors;return tui.util.map(this.groupBounds,function(o,a){return tui.util.map(o,function(o,r){var s,u,h=null;return o&&(s=i[r],u=n.renderCircle(e.paper,o,0,{fill:s,opacity:0,stroke:"none"}),t.push(u),u.data("groupIndex",a),u.data("index",r),h={circle:u,color:s,bound:o}),h})})},_animateCircle:function(t,e){t.animate({r:e,opacity:r},a,">")},animate:function(){var t=this;n.forEach2dArray(this.groupCircleInfos,function(e){e&&t._animateCircle(e.circle,e.bound.radius)})},_updatePosition:function(t,e){t.attr({cx:e.left,cy:e.top,r:e.radius})},resize:function(t){var e=this,i=t.dimension,o=t.groupBounds;this.groupBounds=o,this.paper.setSize(i.width,i.height),n.forEach2dArray(this.groupCircleInfos,function(t,i,n){var a=o[i][n];t&&(t.bound=a,e._updatePosition(t.circle,a))})},findIndexes:function(t){var e=this.paper.getElementByPoint(t.left,t.top),i=null;return e&&(i={index:e.data("index"),groupIndex:e.data("groupIndex")}),i},_isChangedPosition:function(t,e){return!t||t.left!==e.left||t.top!==e.top},showAnimation:function(t){var e=this.groupCircleInfos[t.groupIndex][t.index],i=e.bound;this.overlay.attr({cx:i.left,cy:i.top,r:i.radius+c,stroke:e.color,opacity:1})},hideAnimation:function(){this.overlay.attr({cx:0,cy:0,r:0,opacity:0})},_findCircle:function(t){for(var e,i,n=[],o=this.paper;tui.util.isUndefined(e);)i=o.getElementByPoint(t.left,t.top),i?i.attrs.opacity>h?e=i:(n.push(i),i.hide()):e=null;return e||(e=n[0]),tui.util.forEachArray(n,function(t){t.show()}),e},moveMouseOnSeries:function(t){var e,i,n,o=this._findCircle(t);o&&tui.util.isExisty(o.data("groupIndex"))?(e=o.data("groupIndex"),i=o.data("index"),n=[{},e,i,{left:t.left-d,top:t.top-d}],this._isChangedPosition(this.prevPosition,t)&&(this.callbacks.showTooltip.apply(null,n),this.prevOverCircle=o)):this.prevOverCircle&&(this.callbacks.hideTooltip(),this.prevOverCircle=null),this.prevPosition=t},selectSeries:function(t){var e=t.groupIndex,i=t.index,a=this.groupCircleInfos[e][i],r=o.color(a.color),s=this.theme.selectionColor,u=s||n.makeChangedLuminanceColor(r.hex,l);a.circle.attr({fill:u})},unselectSeries:function(t){var e=t.groupIndex,i=t.index,n=this.groupCircleInfos[e][i];n.circle.attr({fill:n.color})},selectLegend:function(t){var e=tui.util.isNull(t);n.forEach2dArray(this.groupCircleInfos,function(i,n,o){var a;i&&(a=e||t===o?u:h,i.circle.attr({opacity:a}))})}});t.exports=p},function(t,e,i){"use strict";var n=i(61),o=100,a=1,r=3,s=tui.util.defineClass({render:function(t,e){var i=t.set();return this.paper=t,this.theme=e.theme||{},this.colorSpectrum=e.colorSpectrum,this.chartBackground=e.chartBackground,this.zoomable=e.zoomable,this.borderColor=this.theme.borderColor||"none",this.borderWidth=this.theme.borderWidth,this.groupBounds=e.groupBounds,this.boundMap=e.boundMap,this._bindGetBoundFunction(),this._bindGetColorFunction(),this.boxesSet=this._renderBoxes(e.seriesDataModel,e.startDepth,!!e.isPivot,i),i},_bindGetBoundFunction:function(){this.boundMap?this._getBound=this._getBoundFromBoundMap:this._getBound=this._getBoundFromGroupBounds},_bindGetColorFunction:function(){this.colorSpectrum?this._getColor=this._getColorFromSpectrum:this.zoomable?this._getColor=this._getColorFromColorsWhenZoomable:this._getColor=this._getColorFromColors},_getBoundFromGroupBounds:function(t){return this.groupBounds[t.groupIndex][t.index].end},_getBoundFromBoundMap:function(t){return this.boundMap[t.id]},_getColorFromSpectrum:function(t){var e;return e=t.hasChild?"none":this.colorSpectrum.getColor(t.colorRatio||t.ratio)||this.chartBackground},_getColorFromColors:function(t){return t.hasChild?"none":this.theme.colors[t.group]},_getColorFromColorsWhenZoomable:function(t,e){return t.depth===e?this.theme.colors[t.group]:"none"},_renderRect:function(t,e,i){return n.renderRect(this.paper,t,{fill:e,stroke:this.borderColor,"stroke-width":i})},_getStrokeWidth:function(t,e){var i;return i=this.borderWidth?this.borderWidth:tui.util.isExisty(t)?Math.max(a,r-(t-e)):a},_renderBoxes:function(t,e,i,n){var o,a=this;return o=this.colorSpectrum||!this.zoomable?function(t){t.toBack()}:function(){},t.map(function(t,i){return t.map(function(t,r){var s,u,h=null,l=a._getStrokeWidth(t.depth,e);return t.groupIndex=i,t.index=r,s=a._getBound(t),s&&(u=a._getColor(t,e),h={rect:a._renderRect(s,u,l),seriesItem:t,color:u},o(h.rect),n&&n.push(h.rect)),h})},i)},_animateChangingColor:function(t,e,i){var n={"fill-opacity":tui.util.isExisty(i)?i:1};e&&(n.fill=e),t.animate(n,o,">")},showAnimation:function(t,e,i){var n,o=this.boxesSet[t.groupIndex][t.index];o&&(e=!!tui.util.isUndefined(e)||e,n=e?this.theme.overColor:o.color,o.seriesItem.hasChild&&(e&&o.rect.attr({"fill-opacity":0}),o.rect.toFront()),this._animateChangingColor(o.rect,n,i))},hideAnimation:function(t,e){var i,n=this.colorSpectrum,a=this.boxesSet[t.groupIndex][t.index],r=1,s=a.rect.paper;a&&(a.seriesItem.hasChild?(i=null,e&&(r=0)):i=a.color,this._animateChangingColor(a.rect,i,r),setTimeout(function(){!n&&a.seriesItem.hasChild&&(a.rect.toBack(),s.pushDownBackgroundToBottom())},o))},resize:function(t){var e=this,i=t.dimension;this.boundMap=t.boundMap,this.groupBounds=t.groupBounds,this.paper.setSize(i.width,i.height),n.forEach2dArray(this.boxesSet,function(t,i,o){var a;t&&(a=e._getBound(t.seriesItem,i,o),a&&n.updateRectBound(t.rect,a))})},renderSeriesLabel:function(t,e,i,o){var a=t.set(),r={"font-size":o.fontSize,"font-family":o.fontFamily,"font-weight":o.fontWeight,fill:o.color,opacity:0};return tui.util.forEach(i,function(i,o){tui.util.forEach(i,function(i,s){var u=n.renderText(t,e[o][s].end,i,r);u.node.style.userSelect="none",u.node.style.cursor="default",u.node.setAttribute("filter","url(#glow)"),a.push(u)})}),a},renderSeriesLabelForTreemap:function(t,e,i,o){var a=t.set(),r={"font-size":o.fontSize,"font-family":o.fontFamily,"font-weight":o.fontWeight,fill:o.color,opacity:0};return tui.util.forEach(i,function(i,o){var s=n.renderText(t,e[o],i,r);s.node.style.userSelect="none",s.node.style.cursor="default",s.node.setAttribute("filter","url(#glow)"),a.push(s)}),a}});t.exports=s},function(t,e,i){"use strict";function n(t,e,i){var n=document.createElementNS("http://www.w3.org/2000/svg","g");return n.id=i,e.forEach(function(t){a.append(n,t.node)}),t.canvas.appendChild(n),n}var o=i(61),a=i(14),r=tui.util.browser,s=r.msie&&r.version<=8,u="gray",h=100,l="tui-chart-series-group",c=tui.util.defineClass({render:function(t,e){var i=e.mapModel.getMapDimension();this.ratio=this._getDimensionRatio(e.layout.dimension,i),this.dimension=e.layout.dimension,this.position=e.layout.position,this.paper=t,this.sectorSet=t.set(),this.sectors=this._renderMap(e,this.ratio),s||(this.g=n(t,this.sectorSet,l)),this.overColor=e.theme.overColor},_getDimensionRatio:function(t,e){return Math.min(t.height/e.height,t.width/e.width)},_renderMap:function(t,e){var i=this.sectorSet,n=t.layout.position,a=this.paper,r=t.colorSpectrum; +return tui.util.map(t.mapModel.getMapData(),function(t,s){var h=t.ratio||0,l=r.getColor(h),c=o.renderArea(a,t.path,{fill:l,opacity:1,stroke:u,"stroke-opacity":1,transform:"s"+e+","+e+",0,0t"+n.left/e+","+n.top/e});return c.data("index",s),i.push(c),{sector:c,color:l,ratio:t.ratio}})},findSectorIndex:function(t){var e=this.paper.getElementByPoint(t.left,t.top),i=e&&e.data("index"),n=!tui.util.isUndefined(i)&&this.sectors[i];return n&&!tui.util.isUndefined(n.ratio)?i:null},changeColor:function(t){var e=this.sectors[t];e.sector.animate({fill:this.overColor},h,">")},restoreColor:function(t){var e=this.sectors[t];e.sector.animate({fill:e.color},h,">")},scaleMapPaths:function(t,e,i,n,o){var a,r,s=this.g.transform.baseVal,u=this.paper.canvas.createSVGTransform(),h=this.paper.canvas.createSVGMatrix(),l=this.paper.raphael.matrix(),c=s.numberOfItems?s.getItem(0).matrix:{a:1,b:0,c:0,d:1,e:0,f:0},d=o.width-this.dimension.width,p=o.height-this.dimension.height,f=c.e/c.a,m=c.f/c.d,g=-d/c.a,_=-p/c.d;l.scale(t,t,e.left*i-f*t,e.top*i-m*t),a=l.e/l.a+f,r=l.f/l.d+m,a>=0?l.e=-f*l.a:a=0?l.f=-m*l.a:r<_&&(l.f=_-m),h.a=l.a,h.b=l.b,h.c=l.c,h.d=l.d,h.e=l.e,h.f=l.f,u.setMatrix(h),s.appendItem(u),s.initialize(s.consolidate())},moveMapPaths:function(t,e){var i,n,o,a,r=this.paper.canvas.createSVGMatrix(),s=this.paper.raphael.matrix(),u=this.g.transform.baseVal,h=this.paper.canvas.createSVGTransform(),l=e.width-this.dimension.width,c=e.height-this.dimension.height,d=u.numberOfItems?u.getItem(0).matrix:{a:1,b:0,c:0,d:1,e:0,f:0};s.translate(t.x,t.y),o=s.e/s.a,a=s.f/s.d,i=o+d.e/d.a,n=a+d.f/d.d,i>=0&&o>0?s.e=0:i<0&&i<-l/d.a&&o<0&&(s.e=0),n>=0&&a>0?s.f=0:n<0&&n<-c/d.d&&a<0&&(s.f=0),r.a=s.a,r.b=s.b,r.c=s.c,r.d=s.d,r.e=s.e,r.f=s.f,h.setMatrix(r),u.appendItem(h),u.initialize(u.consolidate())},renderSeriesLabels:function(t,e,i){var n={"font-size":i.fontSize,"font-family":i.fontFamily,"font-weight":i.fontWeight,fill:i.color,"text-anchor":"middle",opacity:0,transform:"s"+this.ratio+","+this.ratio+",0,0t"+this.position.left/this.ratio+","+this.position.top/this.ratio},a=t.set(),r=this;return tui.util.forEach(e,function(e){var i=e.labelPosition,u=o.renderText(t,i,e.name||e.code,n);a.push(u),u.node.style.userSelect="none",u.node.style.cursor="default",u.node.setAttribute("filter","url(#glow)"),s||r.g.appendChild(u.node)}),a}});t.exports=c},function(t,e,i){"use strict";function n(){return a.LEGEND_ICON_WIDTH+a.LEGEND_LABEL_LEFT_PADDING}var o,a=i(2),r=i(61),s=i(6),u=.5;o=tui.util.defineClass({init:function(){this._checkBoxWidth=0,this._checkBoxHeight=0,this._iconHeight=0,this._legendItemHeight=0,this._currentPageCount=1,this._showCheckbox=!0},_renderLegendItems:function(t){var e=this,i=a.LEGEND_LABEL_LEFT_PADDING,n=tui.util.extend({},this.basePosition);tui.util.forEach(t,function(t,o){var r=t.index,s=t.colorByPoint?"#aaa":t.theme.color,u=t.isUnselected,h=t.labelHeight,l=t.checkbox,c=n.left+e._calculateSingleLegendWidth(r),d=c>=e.paper.width;e.isHorizontal&&d&&(n.top+=e._legendItemHeight+a.LABEL_PADDING_TOP,n.left=e.basePosition.left),e._showCheckbox&&(e._renderCheckbox(n,{isChecked:l.checked,legendIndex:r,legendSet:e.legendSet}),n.left+=e._checkBoxWidth+i),e._renderIcon(n,{legendColor:s,iconType:t.iconType,labelHeight:h,isUnselected:u,legendIndex:r,legendSet:e.legendSet}),n.left+=a.LEGEND_ICON_WIDTH+i,e._renderLabel(n,{labelText:t.label,labelHeight:h,isUnselected:u,legendIndex:r,legendSet:e.legendSet}),e.isHorizontal?n.left+=e.labelWidths[o]+i:(n.left=e.basePosition.left,n.top+=e._legendItemHeight+a.LINE_MARGIN_TOP)})},_getLegendData:function(t,e){var i,n,o,r=this.basePosition.top,s=this.dimension.height,u=this.paper.height,h=t;return!this.isHorizontal&&s+2*r>u&&(i=u-2*r,this._legendItemHeight=Math.max(t[0].labelHeight,a.LEGEND_ICON_HEIGHT),n=this._legendItemHeight+a.LINE_MARGIN_TOP,o=Math.floor(i/n),h=t.slice((e-1)*o,e*o)),h},render:function(t){var e,i;return this.eventBus=t.eventBus,this.paper=t.paper,this.dimension=t.dimension,this.legendSet=this.paper.set(),this.labelWidths=t.labelWidths,this.labelTheme=t.labelTheme,this.basePosition=t.position,this.isHorizontal=t.isHorizontal,this.originalLegendData=t.legendData,this.originalLegendData.length&&(this._showCheckbox=tui.util.isExisty(t.legendData[0].checkbox),this._setComponentDimensionsBaseOnLabelHeight(t.legendData[0].labelHeight),t.dimension.width=this._calculateLegendWidth(t.legendData[0].labelHeight),e=this._getLegendData(t.legendData,this._currentPageCount),this._renderLegendItems(e),!this.isHorizontal&&e&&e.length1&&(i._paginateLegendAreaTo("previous"),i._currentPageCount-=1)}),this.lowerButton.click(function(){i._currentPageCountl.dimension.width||(r?s?(f+=p+","+(d+o),f+="H"+(p+5),f+="M"+c+","+(d+o),f+="H"+(c-5)):u?(f+=p+","+(d+o),f+="H"+(p+5)):(f+=c+","+(d+o),f+="H"+(c-5)):(f+=p+o+","+d,f+="V"+(d+5)),isNaN(o)||(e=n.path(f).attr({stroke:h}),t.set.push(e),i.ticks.push(e)))})},renderTickLine:function(t){var e,i,n,o=t.areaSize,a=o,r=t.paper,s=t.layout,u=t.isNotDividedXAxis,h=t.additionalSize,l=t.isPositionRight,c=t.isCenter,d=t.isVertical,p=t.tickColor,f="M",m=s.position.top,g=s.position.left,_=s.dimension.height+m,T=g+s.dimension.width;l?(f+=g+","+m,f+="V"+_):d?(e=m,f+=T+","+e,c?(f+="V"+_,f+="M"+g+","+e,f+="V"+_):(n=m+a,f+="V"+n)):(f+=u?g:g+h,f+=","+m+"H",i=g+a,u||(i+=h),f+=i),t.set.push(r.path(f).attr({"stroke-width":1,stroke:p}))},animateForAddingData:function(t){tui.util.forEach(this.ticks,function(e){e.animate({transform:"t-"+t+",0"},300)})},calculatePosition:function(t,e){var i=e.rotationInfo,o=n(e.text,e.theme),s=e.layout,u=a(i.isVertical,s.dimension,s.position),h={};return i.isCenter?(h.top=t.height-o/2,h.left=s.position.left+s.dimension.width/2):i.isPositionRight?(h.top=u,h.left=s.position.left+s.dimension.width):i.isVertical?(h.top=u,h.left=s.position.left+o/2):(h.top=s.position.top+s.dimension.height,h.left=u),i.isCenter||r(h,e.offset),h}});t.exports=l},function(t,e,i){"use strict";var n=i(61),o=i(6),a=8,r=3,s=tui.util.defineClass({render:function(t){var e=t.paper.set();return this.paper=t.paper,this.layout=t.layout,this.plotPositions=t.plotPositions,this.theme=t.theme,this.options=t.options,this.labelData=t.labelData,this._renderPlot(e),this._renderLabels(e),e.toBack(),this.paper.pushDownBackgroundToBottom(),e},_renderPlot:function(t){"circle"===this.options.type?this._renderCirclePlot(t):this._renderSpiderwebPlot(t),this._renderCatergoryLines(t)},_renderSpiderwebPlot:function(t){var e=this._getLinesPath(this.plotPositions);this._renderLines(e,this.theme.lineColor,t)},_renderCirclePlot:function(t){var e,i,o,a=this.plotPositions,r=a[0][0],s=this.theme.lineColor;for(e=1;e