qcobjects-charts
Version:
App template for New App in QCObjects
960 lines (959 loc) • 144 kB
JavaScript
!function(e) {
"object" == typeof module && "undefined" != typeof module.exports ? module.exports = e : e()
}((function() {
(window.webpackJsonpFusionCharts = window.webpackJsonpFusionCharts || []).push([[14], {
1193: function(e, t, o) {
"use strict";
var r = o(187);
t.__esModule = !0,
t["default"] = void 0;
var a = r(o(1194));
t.Maps = a["default"];
var n = {
name: "maps",
type: "package",
requiresFusionCharts: !0,
extension: function(e) {
return e.addDep(a["default"])
}
};
t["default"] = n
},
1194: function(e, t, o) {
"use strict";
var r = o(191)
, a = o(187);
t.__esModule = !0,
t["default"] = void 0;
var n = a(o(207))
, l = a(o(519))
, i = o(208)
, s = r(o(431))
, c = a(o(195))
, h = o(200)
, d = o(193)
, u = a(o(1195))
, p = a(o(420))
, g = a(o(1006))
, f = a(o(1010))
, m = (0,
d.extend2)({
foregroundcolor: "333333",
foregroundalpha: "100",
foregrounddarkcolor: "111111",
foregrounddarkalpha: "100",
foregroundlightcolor: "666666",
foregroundlightalpha: "100",
backgroundlightcolor: "FFFFFF",
backgroundlightalpha: "100",
backgroundlightangle: 90,
backgroundlightratio: "",
backgroundcolor: "FFFFCC",
backgroundalpha: "100",
backgrounddarkcolor: "ffcc66",
backgrounddarkalpha: "100",
backgrounddarkangle: 270,
backgrounddarkratio: "",
shadow: 1
}, s)
, b = {
basefontcolor: "foregroundcolor",
bordercolor: "foregrounddarkcolor",
borderalpha: "foregrounddarkalpha",
bgcolor: "backgroundlightcolor",
bgalpha: "backgroundlightalpha",
bgangle: "backgroundlightangle",
bgratio: "backgroundlightratio",
canvasbordercolor: "foregrounddarkcolor",
canvasborderalpha: "foregrounddarkalpha",
canvasbgcolor: "backgroundlightcolor",
canvasbgalpha: "backgroundlightalpha",
canvasbgangle: "backgroundlightangle",
canvasbgratio: "backgroundlightratio",
tooltipbordercolor: "foregrounddarkcolor",
tooltipborderalpha: "foregrounddarkalpha",
tooltipbgcolor: "backgroundlightcolor",
tooltipbgalpha: "backgroundlightalpha",
tooltipfontcolor: "foregroundcolor",
legendbordercolor: "foregrounddarkcolor",
legendborderalpha: "foregrounddarkalpha",
markerbordercolor: "foregroundlightcolor",
markerborderalpha: "foregroundlightalpha",
markerfillcolor: "backgrounddarkcolor",
markerfillalpha: "backgrounddarkalpha",
markerfillangle: "backgrounddarkangle",
markerfillratio: "backgrounddarkratio",
plotfillcolor: "backgroundcolor",
plotfillalpha: "backgroundalpha",
plotfillangle: "backgroundangle",
plotfillratio: "backgroundratio",
plothoverfillcolor: "backgrounddarkcolor",
plothoverfillalpha: "backgrounddarkalpha",
plothoverfillangle: "backgrounddarkangle",
plothoverfillratio: "backgrounddarkratio",
plotbordercolor: "foregroundcolor",
plotborderalpha: "foregroundalpha",
shadow: "shadow"
}
, k = {
getMapName: function() {
return this.jsVars.instanceAPI.getName().toLowerCase()
},
getEntityList: function() {
var e, t, o, r, a, n = this.jsVars.instanceAPI.getDatasets() || [], l = n.length, i = [];
for (e = 0; e < l; e++)
if ("entities" === (o = n[e] || []).getName()) {
t = o;
break
}
for (e in l = (r = t.components.data).length,
r)
r.hasOwnProperty(e) && (a = (r[e] || {}).config || {},
i.push({
id: a.id,
originalId: a.originalId || a.id,
label: a.label,
shortlabel: a.shortLabel,
value: a.value,
formattedValue: a.formattedValue,
toolText: a.toolText
}));
return i
},
getMapAttribute: function() {
var e = this;
return (0,
h.raiseWarning)(this, "12061210581", "run", "JavaScriptRenderer~getMapAttribute()", 'Use of deprecated "getMapAttribute()". Replace with "getChartAttribute()".'),
e.getChartAttribute.apply(e, arguments)
},
exportMap: function() {
var e = this;
return (0,
h.raiseWarning)(this, "12061210581", "run", "JavaScriptRenderer~exportMap()", 'Use of deprecated "exportMap()". Replace with "exportChart()".'),
e.exportChart && e.exportChart.apply(e, arguments)
},
addMarker: function(e) {
var t, o, r, a = this.jsVars.instanceAPI.getDatasets() || [], n = a.length;
for (t = 0; t < n; t++)
if ("markers" === (o = a[t] || []).getName()) {
r = o;
break
}
r && !r.addMarkerItem(e) && (0,
h.raiseWarning)(this, "1309264086", "run", "MapsRenderer~addMarker()", "Failed to add marker. Check the options and try again.")
},
updateMarker: function(e, t) {
var o, r, a, n, l = this.jsVars.instanceAPI.getDatasets() || [], i = l.length;
for (r = 0; r < i; r++)
if ("markers" === (a = l[r] || []).getName()) {
n = a;
break
}
n && e && (o = (e + v).toLowerCase(),
n.updateMarkerItem(o, t))
},
removeMarker: function(e) {
var t, o, r, a, n = this.jsVars.instanceAPI.getDatasets() || [], l = n.length;
for (o = 0; o < l; o++)
if ("markers" === (r = n[o] || []).getName()) {
a = r;
break
}
e && (t = (e + v).toLowerCase(),
a._removeMarkerItem(t))
}
}
, v = ""
, C = window.Math
, y = C.min
, F = C.max
, w = function(e) {
function t(t, o) {
var r, a;
for (a in (r = e.call(this) || this).subpalette = d.BLANKSTRING,
r.key = d.BLANKSTRING,
r.index = o,
t)
r.subpalette = m[t[a]],
r[a] = r.subpalette instanceof Array ? r.subpalette[o] : r.subpalette,
r.key = a;
return r
}
return (0,
n["default"])(t, e),
t
}(i.ComponentInterface)
, A = function(e) {
function t() {
var t;
return (t = e.call(this) || this).friendlyName = "Map",
t.revision = 1,
t.hasCanvas = !0,
t.standaloneInit = !1,
t.defaultDatasetType = "maps",
t.defaultSeriesType = "geo",
t.fireGroupEvent = !0,
t.legendposition = "right",
t.hasGradientLegend = !0,
t.isMap = !0,
t.defaultPaletteOptions = {
paletteColors: [["A6A6A6", "CCCCCC", "E1E1E1", "F0F0F0"], ["A7AA95", "C4C6B7", "DEDFD7", "F2F2EE"], ["04C2E3", "66E7FD", "9CEFFE", "CEF8FF"], ["FA9101", "FEB654", "FED7A0", "FFEDD5"], ["FF2B60", "FF6C92", "FFB9CB", "FFE8EE"]],
bgColor: ["FFFFFF", "CFD4BE,F3F5DD", "C5DADD,EDFBFE", "A86402,FDC16D", "FF7CA0,FFD1DD"],
bgAngle: [270, 270, 270, 270, 270],
bgRatio: ["0,100", "0,100", "0,100", "0,100", "0,100"],
bgAlpha: ["100", "60,50", "40,20", "20,10", "30,30"],
toolTipBgColor: ["FFFFFF", "FFFFFF", "FFFFFF", "FFFFFF", "FFFFFF"],
toolTipBorderColor: ["545454", "545454", "415D6F", "845001", "68001B"],
baseFontColor: ["555555", "60634E", "025B6A", "A15E01", "68001B"],
tickColor: ["333333", "60634E", "025B6A", "A15E01", "68001B"],
trendColor: ["545454", "60634E", "415D6F", "845001", "68001B"],
plotFillColor: ["545454", "60634E", "415D6F", "845001", "68001B"],
borderColor: ["767575", "545454", "415D6F", "845001", "68001B"],
borderAlpha: [50, 50, 50, 50, 50]
},
t.colorPaletteMap = b,
t.eiMethods = k,
t.registerFactory("legend", f["default"], ["canvas"]),
t.registerFactory("axis", d.stubFN, ["canvas"]),
t.registerFactory("colormanager-decider", g["default"], ["legend"]),
t.registerFactory("dataset", u["default"], ["colormanager-decider"]),
t.registerFactory("canvas", p["default"]),
t
}
(0,
n["default"])(t, e);
var o = t.prototype;
return o._checkInvalidSpecificData = function() {
return this.config.invalid = !1,
!1
}
,
o.__setDefaultConfig = function() {
e.prototype.__setDefaultConfig.call(this);
var t = this.config;
!t.baseWidth && (t.baseWidth = 400),
!t.baseHeight && (t.baseHeight = 300),
!t.baseScaleFactor && (t.baseScaleFactor = 1)
}
,
t.getName = function() {
return "maps"
}
,
t.getType = function() {
return "chartAPI"
}
,
o.getName = function() {
return this.config.name || "GEO"
}
,
o.getType = function() {
return "chartAPI"
}
,
o.configureAttributes = function(t) {
var o, r = this.getChildren("colorPalette") && this.getChildren("colorPalette")[0];
o = t.chart = t.chart || t.graph || t.map || {},
this.jsonData = t,
r || (r = new w(this.colorPaletteMap,(o.palette > 0 && o.palette < 6 ? o.palette : (0,
d.pluckNumber)(this.paletteIndex, 1)) - 1),
this.attachChild(r, "colorPalette")),
this.config.skipCanvasDrawing = !0,
e.prototype.configureAttributes.call(this, t),
this._parseBackgroundCosmetics()
}
,
o.parseChartAttr = function(t) {
var o, r, a, n, l, i = this.jsonData, s = i.chart || i.map, c = i.markers, h = new w(this.colorPaletteMap,(s.palette > 0 && s.palette < 6 ? s.palette : (0,
d.pluckNumber)(this.paletteIndex, 1)) - 1), u = (0,
d.pluck)(s.entitybordercolor, s.bordercolor, h.plotbordercolor), p = (0,
d.pluck)(s.entityfillcolor, s.fillcolor, h.plotfillcolor), g = (0,
d.pluck)(s.entityfillalpha, s.fillalpha, h.plotfillalpha), f = (0,
d.pluck)(s.entityfillratio, s.fillratio, h.plotfillratio), m = (0,
d.pluck)(s.entityfillangle, s.fillangle, h.plotfillangle), b = (0,
d.pluck)(s.nullentityfillcolor, s.nullentitycolor, p), k = (0,
d.pluckNumber)(s.usevaluesformarkers, i.markers && i.markers.items && i.markers.items.length, !(i.markers && i.markers.application && i.markers.application.length && i.markers.definition && i.markers.definition.length));
e.prototype.parseChartAttr.call(this, t),
(o = this.config).origMarginTop = (0,
d.pluckNumber)(s.charttopmargin, s.maptopmargin, 11),
o.origMarginLeft = (0,
d.pluckNumber)(s.chartleftmargin, s.mapleftmargin, 11),
o.origMarginBottom = (0,
d.pluckNumber)(s.chartbottommargin, s.mapbottommargin, 11),
o.origMarginRight = (0,
d.pluckNumber)(s.chartrightmargin, s.maprightmargin, 11),
o.labelsOnTop = (0,
d.pluckNumber)(s.entitylabelsontop, 1),
r = (l = o.style).inCancolor,
a = l.inCanfontFamily,
n = l.inCanfontSize,
o.entityOpts = {
baseScaleFactor: o.baseScaleFactor,
dataLabels: {
style: {
fontFamily: a,
fontSize: n,
lineHeight: l.inCanLineHeight,
color: (0,
d.pluck)(s.entitylabelcolor, l.inCancolor),
bgColor: (0,
d.pluck)(s.entitylabelbgcolor) || v,
borderColor: (0,
d.pluck)(s.entitylabelbordercolor) || v
}
},
fillColor: p,
fillAlpha: g,
fillRatio: f,
fillAngle: m,
borderColor: u,
borderAlpha: (0,
d.pluck)(s.entityborderalpha, s.borderalpha, this.borderAlpha, "100"),
borderThickness: (0,
d.pluckNumber)(s.showentityborder, s.showborder, 1) ? (0,
d.pluckNumber)(s.entityborderthickness, s.borderthickness, 1) : 0,
scaleBorder: (0,
d.pluckNumber)(s.scaleentityborder, s.scaleborder, 0),
hoverFillColor: (0,
d.pluck)(s.entityfillhovercolor, s.hoverfillcolor, s.hovercolor, h.plothoverfillcolor),
hoverFillAlpha: (0,
d.pluck)(s.entityfillhoveralpha, s.hoverfillalpha, s.hoveralpha, h.plothoverfillalpha),
hoverFillRatio: (0,
d.pluck)(s.entityfillhoverratio, s.hoverfillratio, s.hoverratio, h.plothoverfillratio),
hoverFillAngle: (0,
d.pluck)(s.entityfillhoverangle, s.hoverfillangle, s.hoverangle, h.plothoverfillangle),
hoverBorderThickness: (0,
d.pluck)(s.entityborderhoverthickness, s.hoverborderthickness),
hoverBorderColor: (0,
d.pluck)(s.entityborderhovercolor, u, h.plotbordercolor),
hoverBorderAlpha: (0,
d.pluck)(s.entityborderhoveralpha, h.plotborderalpha),
nullEntityColor: b,
nullEntityAlpha: (0,
d.pluck)(s.nullentityfillalpha, s.nullentityalpha, g),
nullEntityRatio: (0,
d.pluck)(s.nullentityfillratio, s.nullentityratio, f),
nullEntityAngle: (0,
d.pluck)(s.nullentityfillangle, s.nullentityangle, m),
connectorColor: (0,
d.pluck)(s.labelconnectorcolor, s.connectorcolor, r),
connectorAlpha: (0,
d.pluck)(s.labelconnectoralpha, s.connectoralpha, "100"),
connectorThickness: (0,
d.pluckNumber)(s.labelconnectorthickness, s.borderthickness, 1),
showHoverEffect: (0,
d.pluckNumber)(s.showentityhovereffect, s.usehovercolor, s.showhovereffect, 1),
hoverOnNull: (0,
d.pluckNumber)(s.hoveronnull, s.entityhoveronnull, 1),
labelPadding: (0,
d.pluckNumber)(s.labelpadding, 5),
showLabels: (0,
d.pluckNumber)(s.showlabels, 1),
labelsOnTop: (0,
d.pluckNumber)(s.entitylabelsontop, 1),
includeNameInLabels: (0,
d.pluckNumber)(s.includenameinlabels, 1),
includeValueInLabels: (0,
d.pluckNumber)(s.includevalueinlabels, 0),
useSNameInTooltip: (0,
d.pluckNumber)(s.usesnameintooltip, 0),
useShortName: (0,
d.pluckNumber)(s.usesnameinlabels, 1),
labelSepChar: (0,
d.pluck)(s.labelsepchar, ", "),
showTooltip: (0,
d.pluckNumber)(s.showentitytooltip, s.showtooltip, 1),
tooltipSepChar: (0,
d.pluck)(s.tooltipsepchar, ", "),
tooltext: s.entitytooltext,
hideNullEntities: (0,
d.pluckNumber)(s.hidenullentities, 0),
showHiddenEntityBorder: (0,
d.pluckNumber)(s.showhiddenentityborder, 1),
showNullEntityBorder: (0,
d.pluckNumber)(s.shownullentityborder, 1),
hiddenEntityColor: (0,
d.pluck)(s.hiddenentitycolor, s.hiddenentityfillcolor, s.hiddenentityalpha || s.hiddenentityfillalpha ? b : "ffffff"),
hiddenEntityAlpha: (0,
d.pluck)(s.hiddenentityalpha, s.hiddenentityfillalpha, .001),
shadow: (0,
d.pluckNumber)(s.showshadow, this.defaultPlotShadow, h.shadow)
},
o.markerOpts = {
dataLabels: {
style: {
fontFamily: (0,
d.pluck)(s.markerfont, a),
fontSize: (0,
d.pluckNumber)(s.markerfontsize, parseInt(n, 10)),
fontColor: (0,
d.pluck)(s.markerlabelcolor, s.markerfontcolor, r),
labelBgColor: (0,
d.pluck)(s.markerlabelbgcolor) || v,
labelBorderColor: (0,
d.pluck)(s.markerlabelbordercolor) || v
}
},
showTooltip: (0,
d.pluckNumber)(s.showmarkertooltip, s.showtooltip, 1),
showLabels: (0,
d.pluckNumber)(s.showmarkerlabels, s.showlabels, 1),
showHoverEffect: (0,
d.pluckNumber)(s.showmarkerhovereffect, 1),
labelPadding: (0,
d.pluck)(s.markerlabelpadding, "5"),
labelWrapWidth: (0,
d.pluckNumber)(s.markerlabelwrapwidth, 0),
labelWrapHeight: (0,
d.pluckNumber)(s.markerlabelwrapheight, 0),
fillColor: (0,
d.pluck)(s.markerfillcolor, s.markerbgcolor, h.markerfillcolor),
fillAlpha: (0,
d.pluck)(s.markerfillalpha, h.markerfillalpha),
fillAngle: (0,
d.pluck)(s.markerfillangle, h.markerfillangle),
fillRatio: (0,
d.pluck)(s.markerfillratio, h.markerfillratio),
fillPattern: (0,
d.pluck)(s.markerfillpattern, h.markerbgpattern),
hoverFillColor: s.markerfillhovercolor,
hoverFillAlpha: s.markerfillhoveralpha,
hoverFillRatio: s.markerfillhoverratio,
hoverFillAngle: s.markerfillhoverangle,
borderThickness: (0,
d.pluck)(s.markerborderthickness, 1),
borderColor: (0,
d.pluck)(s.markerbordercolor, h.markerbordercolor),
borderAlpha: (0,
d.pluckNumber)(s.markerborderalpha, h.markerborderalpha),
hoverBorderThickness: s.markerborderhoverthickness,
hoverBorderColor: s.markerborderhovercolor,
hoverBorderAlpha: s.markerborderhoveralpha,
radius: (0,
d.pluckNumber)(s.markerradius && (0,
d.trimString)(s.markerradius), 7),
shapeId: (0,
d.pluck)(s.defaultmarkershape, "circle"),
labelSepChar: (0,
d.pluck)(s.labelsepchar, ", "),
tooltipSepChar: (0,
d.pluck)(s.tooltipsepchar, ", "),
autoScale: (0,
d.pluckNumber)(s.autoscalemarkers, 0),
tooltext: (0,
d.pluck)(c && c.tooltext, s.markertooltext),
dataEnabled: k,
valueToRadius: (0,
d.pluckNumber)(s.markerradiusfromvalue, 1),
valueMarkerAlpha: (0,
d.pluck)(s.valuemarkeralpha, "75"),
hideNull: (0,
d.pluckNumber)(s.hidenullmarkers, 0),
nullRadius: (0,
d.pluckNumber)(s.nullmarkerradius, s.markerradius, 7),
adjustViewPort: (0,
d.pluckNumber)(s.adjustviewportformarkers, 0),
startAngle: (0,
d.pluckNumber)(s.markerstartangle, 90),
maxRadius: (0,
d.pluckNumber)(s.maxmarkerradius, 0),
minRadius: (0,
d.pluckNumber)(s.minmarkerradius, 0),
applyAll: (0,
d.pluckNumber)(s.applyallmarkers, 0),
shadow: (0,
d.pluckNumber)(s.showmarkershadow, s.showshadow, 0)
},
o.connectorOpts = {
showHoverEffect: (0,
d.pluckNumber)(s.showconnectorhovereffect, 1),
thickness: (0,
d.pluckNumber)(s.connectorthickness, s.markerconnthickness, "2"),
color: (0,
d.pluck)(s.connectorcolor, s.markerconncolor, h.markerbordercolor),
alpha: (0,
d.pluck)(s.connectoralpha, s.markerconnalpha, "100"),
hoverThickness: (0,
d.pluckNumber)(s.connectorhoverthickness, s.connectorthickness, s.markerconnthickness, "2"),
hoverColor: (0,
d.pluck)(s.connectorhovercolor, s.connectorcolor, s.markerconncolor, h.markerbordercolor),
hoverAlpha: (0,
d.pluck)(s.connectorhoveralpha, s.connectoralpha, s.markerconnalpha, "100"),
dashed: (0,
d.pluckNumber)(s.connectordashed, s.markerconndashed, 0),
dashLen: (0,
d.pluckNumber)(s.connectordashlen, s.markerconndashlen, 3),
dashGap: (0,
d.pluckNumber)(s.connectordashgap, s.markerconndashgap, 2),
font: (0,
d.pluck)(s.connectorfont, s.markerconnfont, a),
fontColor: (0,
d.pluck)(s.connectorlabelcolor, s.connectorfontcolor, s.markerconnfontcolor, r),
fontSize: (0,
d.pluckNumber)(s.connectorfontsize, s.markerconnfontsize, parseInt(n, 10)),
showLabels: (0,
d.pluckNumber)(s.showconnectorlabels, s.showmarkerlabels, s.showlabels, 1),
labelBgColor: (0,
d.pluck)(s.connectorlabelbgcolor, s.markerconnlabelbgcolor, h.plotfillcolor),
labelBorderColor: (0,
d.pluck)(s.connectorlabelbordercolor, s.markerconnlabelbordercolor, h.markerbordercolor),
shadow: (0,
d.pluckNumber)(s.showconnectorshadow, s.showmarkershadow, s.showshadow, 0),
showTooltip: (0,
d.pluckNumber)(s.showconnectortooltip, s.showmarkertooltip, s.showtooltip, 1),
tooltext: (0,
d.pluck)(c && c.connectortooltext, s.connectortooltext),
hideOpen: (0,
d.pluckNumber)(s.hideopenconnectors, 1)
},
o.adjustViewPortForMarkers = (0,
d.pluckNumber)(s.adjustviewportformarkers, k)
}
,
o._attachMouseEvents = function() {
var e = this.getFromEnv("eventListeners")
, o = this.getFromEnv("chart-container");
e.push(c["default"].listen(o, d.hasTouch ? "touchstart" : "click", t.searchMouseMove, this)),
e.push(c["default"].listen(window.document, d.hasTouch ? "touchstart" : "mousemove", t.searchMouseMove, this))
}
,
o._dispose = function() {
var o = this.getFromEnv("chart-container");
d.hasTouch && (c["default"].unlisten(o, "touchstart", t.searchMouseMove),
c["default"].unlisten(window.document, "touchstart", t.searchMouseMove)),
c["default"].unlisten(o, "click", t.searchMouseMove),
c["default"].unlisten(window.document, "mousemove", t.searchMouseMove),
e.prototype._dispose.call(this)
}
,
t.searchMouseMove = function(e) {
var t, o = e.data, r = o.config, a = o.getDatasets()[1], n = a && a.getFromEnv("toolTipController"), l = a && a.config.currentToolTip, i = o.config.lastHoveredPoint, s = {};
o.getFromEnv("chart-container") && o.config.lastInteractionEvent !== e.originalEvent && (o.config.lastInteractionEvent = e.originalEvent,
(t = function(e, t) {
var o = (0,
d.getMouseCoordinate)(t.getFromEnv("chart-container"), e, t)
, r = o.chartX
, a = o.chartY
, n = t.config
, l = n.canvasLeft
, i = n.canvasTop
, s = n.canvasLeft + n.canvasWidth
, c = n.canvasHeight + n.canvasTop;
return o.insideCanvas = !1,
o.originalEvent = e,
r > l && r < s && a > i && a < c && (o.insideCanvas = !0),
o
}(e, o)) && t.insideCanvas ? (r.lastMouseEvent = e,
s = {
x: t.chartX,
y: t.chartY
},
o._searchNearestNeighbour(s, e)) : (i && a && a.hoverOutFn(i.element),
o.config.lastHoveredPoint = null,
n && n.hide(l)))
}
,
o._searchNearestNeighbour = function(e, t) {
var o, r = this.getDatasets()[1];
if (r) {
if (!r.components.kDTree)
return;
(o = r.getElement(e)) ? r.highlightPoint(o, t) : r.highlightPoint(!1, t)
}
}
,
o._createLayers = function() {
e.prototype._createLayers.call(this),
this._attachMouseEvents()
}
,
o._parseBackgroundCosmetics = function() {
var e, t = this.getChildren("background")[0].config, o = this.getChildren("colorPalette")[0], r = this.getFromEnv("chart-attrib");
e = t.showBorder = (0,
d.pluckNumber)(r.showcanvasborder, 1),
t.borderWidth = e ? (0,
d.pluckNumber)(r.canvasborderthickness, 1) : 0,
t.borderRadius = t.borderRadius = (0,
d.pluckNumber)(r.canvasborderradius, 0),
t.borderDashStyle = t.borderDashStyle = (0,
d.pluckNumber)(r.borderdashed, 0) ? (0,
d.getDashStyle)((0,
d.pluckNumber)(r.borderdashlen, 4), (0,
d.pluckNumber)(r.borderdashgap, 2)) : "none",
t.borderAlpha = (0,
d.pluck)(r.canvasborderalpha, o.borderAlpha),
t.borderColor = t.borderColor = (0,
d.convertColor)((0,
d.pluck)(r.canvasbordercolor, o && o.borderColor), t.borderAlpha)
}
,
o._getBackgroundCosmetics = function() {
var e = this.getFromEnv("chart-attrib") || this.jsonData.map
, t = this.getChildren("colorPalette")[0];
return {
FCcolor: {
color: (0,
d.pluck)(e.bgcolor, e.canvasbgcolor, t.bgcolor),
alpha: (0,
d.pluck)(e.bgalpha, e.canvasbgalpha, t.bgalpha),
angle: (0,
d.pluck)(e.bgangle, e.canvasbgangle, t.bgangle),
ratio: (0,
d.pluck)(e.bgratio, e.canvasbgratio, t.bgratio)
}
}
}
,
o._parseCanvasCosmetics = function() {
e.prototype._parseCanvasCosmetics.call(this);
var t = this.config
, o = this.getFromEnv("chart-attrib") || this.jsonData.map
, r = this.getChildren("canvas")[0].config;
t.origMarginTop = (0,
d.pluckNumber)(o.maptopmargin, 11),
t.origMarginLeft = (0,
d.pluckNumber)(o.mapleftmargin, 11),
t.origMarginBottom = (0,
d.pluckNumber)(o.mapbottommargin, 11),
t.origMarginRight = (0,
d.pluckNumber)(o.maprightmargin, 11),
t.origCanvasLeftMargin = (0,
d.pluckNumber)(o.canvasleftmargin, 0),
t.origCanvasRightMargin = (0,
d.pluckNumber)(o.canvasrightmargin, 0),
t.origCanvasTopMargin = (0,
d.pluckNumber)(o.canvastopmargin, 0),
t.origCanvasBottomMargin = (0,
d.pluckNumber)(o.canvasbottommargin, 0),
r.canvasBorderRadius = (0,
d.pluckNumber)(o.canvasborderradius, 0),
r.origCanvasTopPad = (0,
d.pluckNumber)(o.canvastoppadding, 0),
r.origCanvasBottomPad = (0,
d.pluckNumber)(o.canvasbottompadding, 0),
r.origCanvasLeftPad = (0,
d.pluckNumber)(o.canvasleftpadding, 0),
r.origCanvasRightPad = (0,
d.pluckNumber)(o.canvasrightpadding, 0)
}
,
o.preliminaryScaling = function() {
for (var e, t, o, r = this.jsonData, a = r.markers && r.markers.items || [], n = a && a.length || 0, l = Infinity, i = Infinity, s = -Infinity, c = -Infinity; n--; )
o = a[n],
e = Number(o.x),
t = Number(o.y),
l = y(l, e),
i = y(i, t),
s = F(s, e),
c = F(c, t);
return {
x: l,
y: i,
x1: s,
y1: c
}
}
,
o.getScalingParameters = function(e, t, o, r) {
var a, n, l = e / t, i = o / (e * this.config.baseScaleFactor), s = r / (t * this.config.baseScaleFactor), c = 0, h = 0;
return i > s ? (c += (o - r * l) / 2,
n = 200 / (t * (a = s))) : (h += (r - o / l) / 2,
n = 200 / (e * (a = i))),
{
scaleFactor: a,
strokeWidth: n,
translateX: c,
translateY: h
}
}
,
o.calculateMarkerBounds = function(e, t, o) {
var r, a, n, l, i, s, c, h, d, u, p, g, f = this.config, m = f.markerOpts, b = this.getDatasets(), k = this.getDataLimits(), v = k.dataMin, C = k.dataMax, w = m.hideNull, A = m.nullRadius, E = m.valueToRadius, L = Infinity, x = Infinity, N = -Infinity, S = -Infinity;
for (s = 0,
h = b.length; s < h; s++)
"markers" === (c = b[s]).getName() && (r = c);
if (r)
for (s in r.calculateMarkerRadiusLimits(),
n = (a = r.config || {}).minRadius,
l = a.maxRadius,
i = r.components && r.components.markerObjs || {})
g = (f = i[s].config).definition || {},
null !== f.cleanValue ? (E && void 0 === g.radius && (f.radius = n + (l - n) * (f.cleanValue - v) / (C - v)),
p = Number(f.radius),
d = (Number(g.x) + t) * e,
u = (Number(g.y) + o) * e,
L = y(L, d - p),
x = y(x, u - p),
N = F(N, d + p),
S = F(S, u + p)) : w ? f.__hideMarker = !0 : null === f.radius && (f.radius = A);
return {
x: L,
y: x,
x1: N,
y1: S
}
}
,
o._spaceManager = function() {
var e, t, o, r, a, n, l, i, s, c, h = this.config, u = this.getChildren("legend") && this.getChildren("legend")[0], p = this.getChildren("gLegend") && this.getChildren("gLegend")[0], g = u && u.config.legendPos ? u.config.legendPos.split("-") : p && p.conf.legendPosition ? p.conf.legendPosition.split("-") : [], f = this.getFromEnv("chart-attrib"), m = h.showBorder, b = h.origMarginLeft, k = h.origMarginTop, v = this.config.baseWidth, C = this.config.baseHeight, y = {}, F = 0, w = 0, A = h.markerOpts, E = h.borderWidth = m ? (0,
d.pluckNumber)(f.borderthickness, 1) : 0;
this._allocateSpace({
top: E,
bottom: E,
left: E,
right: E
}),
this._allocateSpace(this._manageActionBarSpace && this._manageActionBarSpace(.225 * h.availableHeight) || {}),
s = "right" === g[0] || "left" === g[0] ? .3 * h.canvasWidth : .3 * h.canvasHeight,
t = g[0] === d.POSITION_TOP || "bottom" === g[0] ? h.canvasHeight : h.canvasWidth,
h.showLegend && this._manageLegendSpace(s),
e = "bottom" === g[0] || g[0] === d.POSITION_TOP ? .225 * h.canvasHeight : .225 * h.canvasWidth,
"top" === g[0] && (k += t - h.canvasHeight),
c = this._manageChartMenuBar(e),
"left" === g[0] && (b += t - h.canvasWidth),
r = h.canvasWidth,
a = h.canvasHeight,
A.dataEnabled ? (h.adjustViewPortForMarkers ? ((y = this.preliminaryScaling()).x1 > v && (v = y.x1),
y.x < 0 && (v += -y.x,
F = -y.x),
y.y1 > C && (C = y.y1),
y.y < 0 && (C += -y.y,
w = -y.y),
o = this.getScalingParameters(v, C, r, a),
l = a,
i = r,
(y = this.calculateMarkerBounds(o.scaleFactor * this.config.baseScaleFactor, F, w)).x < 0 && (b += -y.x,
r += y.x),
y.y < 0 && (k += -y.y,
a += y.y),
y.x1 > i && (r -= y.x1 - i),
y.y1 > l && (a -= y.y1 - l)) : (o = this.getScalingParameters(v, C, r, a),
this.calculateMarkerBounds(o.scaleFactor * this.config.baseScaleFactor, F, w)),
b += F * (o = this.getScalingParameters(v, C, r, a)).scaleFactor * this.config.baseScaleFactor,
k += w * o.scaleFactor * this.config.baseScaleFactor) : o = this.getScalingParameters(v, C, r, a),
this.config.scalingParams = o,
n = o.scaleFactor,
o.translateX = o.translateX + b,
o.translateY = o.translateY + k + c.top || 0,
o.sFactor = n * this.config.baseScaleFactor * 100 / 100,
o.transformStr = ["t", o.translateX, ",", o.translateY, "s", n, ",", n, ",0,0"].join(""),
this.config.annotationConfig = {
id: "Geo",
showbelow: 0,
autoscale: 0,
grpxshift: o.translateX ? o.translateX : 0,
grpyshift: o.translateY ? o.translateY : 0,
xscale: 100 * (n ? n * this.config.baseScaleFactor : 1),
yscale: 100 * (n ? n * this.config.baseScaleFactor : 1),
scaletext: 1,
options: {
useTracker: !0
}
}
}
,
o.getDataLimits = function() {
var e, t, o = this.getDatasets(), r = o.length, a = +Infinity, n = -Infinity;
for (t = 0; t < r; t++)
e = o[t].getDataLimits(),
a = y(a, e.min),
n = F(n, e.max);
return {
dataMin: a,
dataMax: n
}
}
,
o.getEntityPaths = function(e) {
var t, o = {}, r = this.config.entities;
if (e) {
for (t in r)
o[t] = r[t];
return o
}
return r
}
,
o.checkComplete = function() {
this.config.entityFlag && this.config.entitiesReady && (this.config.entityFlag = !1,
this.config.markersDrawn = !0,
this.fireChartInstanceEvent("internal.mapdrawingcomplete", {
renderer: this
}))
}
,
t
}(l["default"]);
t["default"] = A
},
1195: function(e, t, o) {
"use strict";
var r = o(187);
t.__esModule = !0,
t["default"] = function(e) {
var t, o = e.getFromEnv("dataSource"), r = o.data || {}, s = o.markers;
(0,
a.componentFactory)(e, i["default"], "mapGroup"),
t = e.getChildren("mapGroup")[0],
(0,
a.datasetFactory)(t, n["default"], "entities", 1, [r]),
s ? (0,
a.datasetFactory)(t, l["default"], "markers", 1, [s]) : e.getDatasets()[1] && e.getDatasets()[1].remove()
}
;
var a = o(193)
, n = r(o(1196))
, l = r(o(1198))
, i = r(o(1199))
},
1196: function(e, t, o) {
"use strict";
var r = o(187);
t.__esModule = !0,
t["default"] = void 0;
var a, n = r(o(207)), l = o(208), i = r(o(269)), s = o(201), c = r(o(1197)), h = o(193), d = o(205), u = r(o(552)), p = (0,
s.getDep)("redraphael", "plugin"), g = window.navigator.userAgent, f = /msie/i.test(g) && !window.opera, m = window.Math, b = m.min, k = m.max, v = /stroke/gi, C = /AppleWebKit/.test(g), y = m.ceil, F = function(e, t) {
var o = t ? (0,
h.extend2)(e.FCcolor, t, !1, !0) : {
FCcolor: e
};
return o.toString = h.toRaphaelColor,
o
}, w = function(e, t) {
var o, r, a = {};
if (r = t || 1,
!e || "object" != typeof e)
return a;
for (o in e)
v.test(o) || ("stroke-width" === o ? (a[o] = Number(e[o]) / r,
C && (a[o] = a[o] && y(a[o]) || 0)) : a[o] = e[o]);
return a
}, A = {
right: function() {
return arguments[1]
},
left: function(e, t) {
return e - t
},
center: function(e, t) {
return 2 * b(t, e - t)
}
}, E = {
top: function() {
return arguments[1]
},
middle: function(e, t) {
return 2 * b(t, e - t)
},
bottom: function(e, t) {
return e - t
}
}, L = function(e, t) {
e && e.graphics.outlines.attr(t)
};
(0,
s.addDep)({
name: "mapsAnimation",
type: "animationRule",
extension: c["default"]
}),
(0,
u["default"])(p);
var x = function(e) {
function t() {
var t;
return (t = e.call(this) || this).components = {},
t
}
(0,
n["default"])(t, e);
var o = t.prototype;
return o.getName = function() {
return "entities"
}
,
o.getType = function() {
return "dataset"
}
,
o.configureAttributes = function(e) {
if (e) {
this.JSONData = {
data: e
};
var o, r, n, l, i, s, c, d, u = this, p = u.getFromEnv("chart").jsonData, g = u.config, f = p.map || p.chart, m = [], b = u.getFromEnv("colorManager"), k = p.entitydef || [];
for (i in !g.attachEvent && b && (u.addExtEventListener("legendUpdate", (function() {
if ("legend" === (d = arguments[1]).component)
u.legendInteractivity(d.legendItem, d.colorObj);
else
for (m = d.maxMinArray,
s = m.length,
c = 0; c < s; c++)
u.updateEntityColors(m[c].min, m[c].max)
}
), b),
g.attachEvent = !0),
o = p.data && p.data[0] && p.data[0].data ? u.JSONData = p.data[0].data || [] : u.JSONData = p.data || [],
g.useSNameAsId = (0,
h.pluckNumber)(f.usesnameasid, 0),
this._redefineEntities(k),
r = u.components.data,
g.showTooltip = (0,
h.pluckNumber)(f.showtooltip, 1),
g.showHoverEffect = (0,
h.pluckNumber)(f.showhovereffect, 0),
o = function(e) {
for (var t, o = e && e.length || 0, r = {}; o--; )
(t = e[o]).id !== a && (r[t.id.toLowerCase()] = t);
return r
}(o),
u.calculateDataLimits(),
!p.colorrange && u._detachChild(u.getChildren("colorRange") && u.getChildren("colorRange")[0]),
r)
n = o[i],
l = r[i],
n ? this._configureEntity(i, l, (0,
h.imprint)(t._sanitizeEntityOptions((0,
h.extend2)({}, n)), l.config)) : this._configureEntity(i, l, l.config)
}
}
,
o.updateEntityColors = function(e, t) {
var o, r, a, n, l, i = this.components.data, s = this.getFromEnv("chart").config.entityOpts, c = s.nullEntityAlpha, h = s.nullEntityColor, d = F({
fill: h,
alpha: c
}), u = {
"fill-opacity": 0
};
for (n in i)
i.hasOwnProperty(n) && (a = (r = (o = i[n]).config).cleanValue,
l = {
"fill-opacity": (r.alphaArr || [])[0] / 100 || 1
},
null == a ? (L(o, d),
o.hidden = !1) : a < e || a > t ? (L(o, u),
o.hidden = !0) : (L(o, l),
o.hidden = !1))
}
,
o.legendInteractivity = function(e, t) {
var o, r, a, n, l, i, s = this.getFromEnv("chart"), c = this.components.data, h = e.config, d = e.hasState("hidden"), u = this.getFromEnv("colorManager"), p = {}, g = {
"fill-opacity": 0
};
for (o in s.getFromEnv("animationManager").setAnimationState("legendInteraction"),
c)
c.hasOwnProperty(o) && (a = (h = (r = c[o]).config).cleanValue,
i = u.getColorObj(a),
n = h.visibleEntityAttr,
p["fill-opacity"] = n["fill-opacity"],
l = d ? p : g,
t.code === (!i.outOfRange && i.code) && (r.hidden = !d,
L(r, l),
d ? e && e.removeLegendState("hidden") : e.setLegendState("hidden")))
}
,
o.calculateDataLimits = function() {
var e, t, o, r, a = this.getFromEnv("chart"), n = this.config, l = a.jsonData.data || [], i = this.getFromEnv("number-formatter"), s = +Infinity, c = -Infinity;
for (r = 0,
o = l.length; r < o; r++)