@amcharts/amcharts5 5.1.13 → 5.1.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (130) hide show
  1. package/.internal/charts/xy/XYChart.d.ts.map +1 -1
  2. package/.internal/charts/xy/XYChart.js +1 -2
  3. package/.internal/charts/xy/XYChart.js.map +1 -1
  4. package/.internal/charts/xy/axes/ValueAxis.d.ts.map +1 -1
  5. package/.internal/charts/xy/axes/ValueAxis.js +15 -7
  6. package/.internal/charts/xy/axes/ValueAxis.js.map +1 -1
  7. package/.internal/core/render/Series.d.ts.map +1 -1
  8. package/.internal/core/render/Series.js +9 -7
  9. package/.internal/core/render/Series.js.map +1 -1
  10. package/.internal/plugins/exporting/ExportingMenu.d.ts.map +1 -1
  11. package/.internal/plugins/exporting/ExportingMenu.js +4 -1
  12. package/.internal/plugins/exporting/ExportingMenu.js.map +1 -1
  13. package/CHANGELOG.md +10 -0
  14. package/examples/javascript/flow-chord/package.json +1 -1
  15. package/examples/javascript/flow-chord-directed/package.json +1 -1
  16. package/examples/javascript/flow-chord-non-ribbon/package.json +1 -1
  17. package/examples/javascript/flow-sankey/package.json +1 -1
  18. package/examples/javascript/gauge/package.json +1 -1
  19. package/examples/javascript/gauge-bands/package.json +1 -1
  20. package/examples/javascript/hierarchy-force-directed/package.json +1 -1
  21. package/examples/javascript/hierarchy-pack/package.json +1 -1
  22. package/examples/javascript/hierarchy-partition/package.json +1 -1
  23. package/examples/javascript/hierarchy-sunburst/package.json +1 -1
  24. package/examples/javascript/hierarchy-tree/package.json +1 -1
  25. package/examples/javascript/hierarchy-treemap/package.json +1 -1
  26. package/examples/javascript/json/package.json +1 -1
  27. package/examples/javascript/map-animating-along-lines/package.json +1 -1
  28. package/examples/javascript/map-day-and-night/package.json +1 -1
  29. package/examples/javascript/map-globe-rotate-to-country/package.json +1 -1
  30. package/examples/javascript/map-globe-with-projected-circles/package.json +1 -1
  31. package/examples/javascript/map-with-bubbles/package.json +1 -1
  32. package/examples/javascript/map-zoom-to-country/package.json +1 -1
  33. package/examples/javascript/misc-40-charts/package.json +1 -1
  34. package/examples/javascript/misc-microchart-grid/package.json +1 -1
  35. package/examples/javascript/pie-chart/package.json +1 -1
  36. package/examples/javascript/pie-donut-chart/package.json +1 -1
  37. package/examples/javascript/pie-variable-radius/package.json +1 -1
  38. package/examples/javascript/radar-column-iwatch-style/package.json +1 -1
  39. package/examples/javascript/radar-heat-map/package.json +1 -1
  40. package/examples/javascript/radar-line/package.json +1 -1
  41. package/examples/javascript/radar-time-line/package.json +1 -1
  42. package/examples/javascript/sliced-funnel/package.json +1 -1
  43. package/examples/javascript/sliced-pictorial-stacked/package.json +1 -1
  44. package/examples/javascript/sliced-pyramid/package.json +1 -1
  45. package/examples/javascript/venn-diagram/package.json +1 -1
  46. package/examples/javascript/wordcloud-with-data/package.json +1 -1
  47. package/examples/javascript/wordcloud-with-text/package.json +1 -1
  48. package/examples/javascript/xy-100-percent-stacked-column/package.json +1 -1
  49. package/examples/javascript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  50. package/examples/javascript/xy-bubble/package.json +1 -1
  51. package/examples/javascript/xy-candlestick/package.json +1 -1
  52. package/examples/javascript/xy-clustered-column/package.json +1 -1
  53. package/examples/javascript/xy-column/package.json +1 -1
  54. package/examples/javascript/xy-comparing-series-google-analytics-style/package.json +1 -1
  55. package/examples/javascript/xy-data-grouping/package.json +1 -1
  56. package/examples/javascript/xy-draggable-range/package.json +1 -1
  57. package/examples/javascript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  58. package/examples/javascript/xy-dumbbell plot/package.json +1 -1
  59. package/examples/javascript/xy-evenly-spaced-date-axis/package.json +1 -1
  60. package/examples/javascript/xy-line/package.json +1 -1
  61. package/examples/javascript/xy-line-highlight-on-legend-hover/package.json +1 -1
  62. package/examples/javascript/xy-live-data/package.json +1 -1
  63. package/examples/javascript/xy-multiple-synced-value-axes/package.json +1 -1
  64. package/examples/javascript/xy-ohlc/package.json +1 -1
  65. package/examples/javascript/xy-real-time-data-sorting/package.json +1 -1
  66. package/examples/javascript/xy-smoothed-line/package.json +1 -1
  67. package/examples/javascript/xy-stacked-and-clustered-column/package.json +1 -1
  68. package/examples/javascript/xy-stacked-column/package.json +1 -1
  69. package/examples/javascript/xy-stacked-step/package.json +1 -1
  70. package/examples/javascript/xy-stock/package.json +1 -1
  71. package/examples/javascript/xy-stock-comparing/package.json +1 -1
  72. package/examples/typescript/flow-chord/package.json +1 -1
  73. package/examples/typescript/flow-chord-directed/package.json +1 -1
  74. package/examples/typescript/flow-chord-non-ribbon/package.json +1 -1
  75. package/examples/typescript/flow-sankey/package.json +1 -1
  76. package/examples/typescript/gauge/package.json +1 -1
  77. package/examples/typescript/gauge-bands/package.json +1 -1
  78. package/examples/typescript/hierarchy-force-directed/package.json +1 -1
  79. package/examples/typescript/hierarchy-pack/package.json +1 -1
  80. package/examples/typescript/hierarchy-partition/package.json +1 -1
  81. package/examples/typescript/hierarchy-sunburst/package.json +1 -1
  82. package/examples/typescript/hierarchy-tree/package.json +1 -1
  83. package/examples/typescript/hierarchy-treemap/package.json +1 -1
  84. package/examples/typescript/json/package.json +1 -1
  85. package/examples/typescript/map-animating-along-lines/package.json +1 -1
  86. package/examples/typescript/map-day-and-night/package.json +1 -1
  87. package/examples/typescript/map-globe-rotate-to-country/package.json +1 -1
  88. package/examples/typescript/map-globe-with-projected-circles/package.json +1 -1
  89. package/examples/typescript/map-with-bubbles/package.json +1 -1
  90. package/examples/typescript/map-zoom-to-country/package.json +1 -1
  91. package/examples/typescript/misc-40-charts/package.json +1 -1
  92. package/examples/typescript/misc-microchart-grid/package.json +1 -1
  93. package/examples/typescript/pie-chart/package.json +1 -1
  94. package/examples/typescript/pie-donut-chart/package.json +1 -1
  95. package/examples/typescript/pie-variable-radius/package.json +1 -1
  96. package/examples/typescript/radar-column-iwatch-style/package.json +1 -1
  97. package/examples/typescript/radar-heat-map/package.json +1 -1
  98. package/examples/typescript/radar-line/package.json +1 -1
  99. package/examples/typescript/radar-time-line/package.json +1 -1
  100. package/examples/typescript/sliced-funnel/package.json +1 -1
  101. package/examples/typescript/sliced-pictorial-stacked/package.json +1 -1
  102. package/examples/typescript/sliced-pyramid/package.json +1 -1
  103. package/examples/typescript/venn-diagram/package.json +1 -1
  104. package/examples/typescript/wordcloud-with-data/package.json +1 -1
  105. package/examples/typescript/wordcloud-with-text/package.json +1 -1
  106. package/examples/typescript/xy-100-percent-stacked-column/package.json +1 -1
  107. package/examples/typescript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  108. package/examples/typescript/xy-bubble/package.json +1 -1
  109. package/examples/typescript/xy-candlestick/package.json +1 -1
  110. package/examples/typescript/xy-clustered-column/package.json +1 -1
  111. package/examples/typescript/xy-column/package.json +1 -1
  112. package/examples/typescript/xy-comparing-series-google-analytics-style/package.json +1 -1
  113. package/examples/typescript/xy-data-grouping/package.json +1 -1
  114. package/examples/typescript/xy-draggable-range/package.json +1 -1
  115. package/examples/typescript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  116. package/examples/typescript/xy-dumbbell plot/package.json +1 -1
  117. package/examples/typescript/xy-evenly-spaced-date-axis/package.json +1 -1
  118. package/examples/typescript/xy-line/package.json +1 -1
  119. package/examples/typescript/xy-line-highlight-on-legend-hover/package.json +1 -1
  120. package/examples/typescript/xy-live-data/package.json +1 -1
  121. package/examples/typescript/xy-multiple-synced-value-axes/package.json +1 -1
  122. package/examples/typescript/xy-ohlc/package.json +1 -1
  123. package/examples/typescript/xy-real-time-data-sorting/package.json +1 -1
  124. package/examples/typescript/xy-smoothed-line/package.json +1 -1
  125. package/examples/typescript/xy-stacked-and-clustered-column/package.json +1 -1
  126. package/examples/typescript/xy-stacked-column/package.json +1 -1
  127. package/examples/typescript/xy-stacked-step/package.json +1 -1
  128. package/examples/typescript/xy-stock/package.json +1 -1
  129. package/examples/typescript/xy-stock-comparing/package.json +1 -1
  130. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Series.js","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Series.ts"],"names":[],"mappings":"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","sourcesContent":["import { Component, IComponentSettings, IComponentPrivate, DataItem, IComponentEvents, IComponentDataItem } from \"../../core/render/Component\";\nimport { List } from \"../../core/util/List\";\nimport { Color } from \"../../core/util/Color\";\nimport { percentInterpolate } from \"../../core/util/Animation\";\nimport { Percent } from \"../../core/util/Percent\";\nimport * as $array from \"../../core/util/Array\";\nimport * as $type from \"../../core/util/Type\";\nimport * as $time from \"../../core/util/Time\";\nimport type { Root } from \"../../core/Root\";\nimport { p100 } from \"../../core/util/Percent\";\nimport type { Chart } from \"./Chart\";\nimport type { Bullet } from \"./Bullet\";\nimport { Container } from \"../../core/render/Container\";\nimport type { Graphics } from \"../../core/render/Graphics\";\nimport type { ILegendDataItem } from \"./Legend\";\nimport type { Template } from \"../../core/util/Template\";\nimport type { Sprite } from \"../../core/render/Sprite\";\nimport { Label } from \"../../core/render/Label\";\n//import { Animations } from \"../../core/util/Animation\";\n\n/**\n * Defines interface for a heat rule.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/settings/heat-rules/} for more info\n */\nexport interface IHeatRule {\n\n\t/**\n\t * Target template.\n\t */\n\ttarget: Template<any>;\n\n\t/**\n\t * The setting value to use for items if the lowest value.\n\t */\n\tmin: any;\n\n\t/**\n\t * The setting value to use for items if the highest value.\n\t */\n\tmax: any;\n\n\t/**\n\t * Which data field to use when determining item's value.\n\t */\n\tdataField: string;\n\n\t/**\n\t * A setting key to set.\n\t */\n\tkey?: string;\n\n\t/**\n\t * Custom lowest value.\n\t */\n\tminValue?: number;\n\n\t/**\n\t * Custom highest value.\n\t */\n\tmaxValue?: number;\n\n\t/**\n\t * Use logarithmic scale when calculating intermediate setting values.\n\t *\n\t * @default false\n\t */\n\tlogarithmic?: boolean;\n\n\t/**\n\t * A custom function that will set target element's settings.\n\t *\n\t * Can be used to do custom manipulation on complex objects requiring more\n\t * than modifying a setting.\n\t */\n\tcustomFunction?: (target: Sprite, minValue: number, maxValue: number, value?: any) => void;\n\n}\n\n\nexport interface ISeriesDataItem extends IComponentDataItem {\n\tid?: string;\n\n\tvalue?: number;\n\n\t/**\n\t * @ignore\n\t */\n\tvalueWorking?:number;\n\n\tvalueChange?: number;\n\tvalueChangePercent?: number;\n\tvalueChangeSelection?: number;\n\tvalueChangeSelectionPercent?: number;\n\tvalueChangePrevious?: number;\n\tvalueChangePreviousPercent?: number;\n\n\t/**\n\t * @ignore\n\t */\n\tvalueWorkingOpen?: number;\n\n\t/**\n\t * @ignore\n\t */\n\tvalueWorkingClose?: number;\n}\n\nexport interface ISeriesSettings extends IComponentSettings {\n\n\t/**\n\t * Name of the series.\n\t */\n\tname?: string;\n\n\t/**\n\t * A key to look up in data for an id of the data item.\n\t */\n\tidField?: string;\n\n\t/**\n\t * A key to look up in data for a numeric value of the data item.\n\t *\n\t * Some series use it to display its elements. It can also be used in heat\n\t * rules.\n\t */\n\tvalueField?: string;\n\n\t/**\n\t * A text template to be used for label in legend.\n\t */\n\tlegendLabelText?: string;\n\n\t/**\n\t * A text template to be used for value label in legend.\n\t */\n\tlegendValueText?: string;\n\n\t/**\n\t * If set to `true` the series initial animation will be played item by item\n\t * rather than all at once.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/animations/#Animation_of_series} for more info\n\t */\n\tsequencedInterpolation?:boolean;\n\n\t/**\n\t * A delay in milliseconds to wait before starting animation of next data\n\t * item.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/animations/#Animation_of_series} for more info\n\t */\n\tsequencedDelay?:number;\n\n\t/**\n\t * A list of heat rules to apply on series elements.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/settings/heat-rules/} for more info\n\t */\n\theatRules?:IHeatRule[];\n\n\t/**\n\t * If set to `true`, series will calculate aggregate values, e.g. change\n\t * percent, high, low, etc.\n\t *\n\t * Do not enable unless you are using such aggregate values in tooltips,\n\t * display data fields, heat rules, or similar.\n\t */\n\tcalculateAggregates?: boolean;\n\n\t/**\n\t * Series stroke color.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/series/#Series_colors} for more info\n\t */\n\tstroke?: Color;\n\n\t/**\n\t * Series fill color.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/series/#Series_colors} for more info\n\t */\n\tfill?: Color;\n\n\t/**\n\t * A data item representing series in a [[Legend]].\n\t *\n\t * @readonly\n\t */\n\tlegendDataItem?: DataItem<ILegendDataItem>;\n\n}\n\nexport interface ISeriesPrivate extends IComponentPrivate {\n\n\t/**\n\t * @ignore\n\t */\n\tchart?: Chart;\n\tstartIndex?: number;\n\tendIndex?: number;\n\n\tvalueAverage?: number;\n\tvalueCount?: number;\n\tvalueSum?: number;\n\tvalueAbsoluteSum?: number;\n\tvalueLow?: number;\n\tvalueHigh?: number;\n\tvalueOpen?: number;\n\tvalueClose?: number;\n\n\tbaseValueSeries?: Series;\n}\n\nexport interface ISeriesEvents extends IComponentEvents {\n\n}\n\n/**\n * A base class for all series.\n */\nexport abstract class Series extends Component {\n\tpublic static className: string = \"Series\";\n\tpublic static classNames: Array<string> = Component.classNames.concat([Series.className]);\n\n\tdeclare public _settings: ISeriesSettings;\n\tdeclare public _privateSettings: ISeriesPrivate;\n\tdeclare public _dataItemSettings: ISeriesDataItem;\n\tdeclare public _events: ISeriesEvents;\n\n\tprotected _aggregatesCalculated: boolean = false;\n\tprotected _selectionAggregatesCalculated: boolean = false;\n\tprotected _dataProcessed: boolean = false;\n\n\tprotected _psi: number | undefined;\n\tprotected _pei: number | undefined;\n\n\t/**\n\t * A chart series belongs to.\n\t */\n\tpublic chart:Chart | undefined;\n\n\t/**\n\t * List of bullets to use for the series.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/bullets/} for more info\n\t */\n\tpublic bullets: List<<D extends DataItem<this[\"_dataItemSettings\"]>>(root: Root, series:Series, dataItem: D) => Bullet | undefined> = new List();\n\n\t/**\n\t * A [[Container]] series' bullets are stored in.\n\t *\n\t * @default Container.new()\n\t */\n\tpublic readonly bulletsContainer: Container = Container.new(this._root, {width:p100, height:p100, position:\"absolute\"});\n\n\tprotected _afterNew() {\n\t\tthis.valueFields.push(\"value\");\n\n\t\tsuper._afterNew();\n\n\t\tthis.setPrivate(\"customData\", {});\n\n\t\tthis._disposers.push(this.bullets.events.onAll((change) => {\n\t\t\tif (change.type === \"clear\") {\n\t\t\t\tthis._handleBullets(this.dataItems);\n\t\t\t} else if (change.type === \"push\") {\n\t\t\t\tthis._handleBullets(this.dataItems);\n\t\t\t} else if (change.type === \"setIndex\") {\n\t\t\t\tthis._handleBullets(this.dataItems);\n\t\t\t} else if (change.type === \"insertIndex\") {\n\t\t\t\tthis._handleBullets(this.dataItems);\n\t\t\t} else if (change.type === \"removeIndex\") {\n\t\t\t\tthis._handleBullets(this.dataItems);\n\t\t\t} else if (change.type === \"moveIndex\") {\n\t\t\t\tthis._handleBullets(this.dataItems);\n\t\t\t} else {\n\t\t\t\tthrow new Error(\"Unknown IListEvent type\");\n\t\t\t}\n\t\t}));\n\t}\n\n\tprotected _dispose(){\n\t\tthis.bulletsContainer.dispose(); // can be in a different parent\n\t\tsuper._dispose();\n\t}\n\n\tpublic startIndex():number {\n\t\tlet len = this.dataItems.length;\n\t\treturn Math.min(this.getPrivate(\"startIndex\", 0), len);\n\t}\n\n\tpublic endIndex():number {\n\t\tlet len = this.dataItems.length;\n\t\treturn Math.min(this.getPrivate(\"endIndex\", len), len)\n\t}\n\n\tprotected _handleBullets(dataItems:Array<DataItem<this[\"_dataItemSettings\"]>>){\n\t\t$array.each(dataItems, (dataItem)=>{\n\t\t\tconst bullets = dataItem.bullets;\n\t\t\tif(bullets){\n\t\t\t\t$array.each(bullets, (bullet)=>{\n\t\t\t\t\tbullet.dispose();\n\t\t\t\t})\n\n\t\t\t\tdataItem.bullets = undefined;\n\t\t\t}\n\t\t})\n\n\t\tthis.markDirtyValues();\n\t}\n\n\t/**\n\t * Looks up and returns a data item by its ID.\n\t *\n\t * @param id ID\n\t * @return Data item\n\t */\n\tpublic getDataItemById(id: string): DataItem<this[\"_dataItemSettings\"]> | undefined {\n\t\treturn $array.find(this.dataItems, (dataItem: any) => {\n\t\t\treturn dataItem.get(\"id\") == id;\n\t\t})\n\t}\n\n\tprotected _makeBullets(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tif(this._shouldMakeBullet(dataItem)){\n\t\t\tdataItem.bullets = [];\n\n\t\t\tthis.bullets.each((bulletFunction) => {\n\t\t\t\tthis._makeBullet(dataItem, bulletFunction);\n\t\t\t})\n\t\t}\n\t}\n\n\tprotected _shouldMakeBullet(_dataItem: DataItem<this[\"_dataItemSettings\"]>):boolean{\n\t\treturn true;\n\t}\n\n\tprotected _makeBullet(dataItem: DataItem<this[\"_dataItemSettings\"]>, bulletFunction:(root: Root, series:Series, dataItem: DataItem<this[\"_dataItemSettings\"]>) => Bullet | undefined, index?:number):Bullet | undefined{\n\t\tconst bullet = bulletFunction(this._root, this, dataItem);\n\t\tif(bullet){\n\t\t\tlet sprite = bullet.get(\"sprite\");\n\n\t\t\tif (sprite) {\n\t\t\t\tsprite._setDataItem(dataItem);\n\t\t\t\tsprite.setRaw(\"position\", \"absolute\");\n\t\t\t\tthis.bulletsContainer.children.push(sprite);\n\t\t\t}\n\t\t\tbullet._index = index;\n\t\t\tbullet.series = this;\n\t\t\tdataItem.bullets!.push(bullet);\n\t\t}\n\t\treturn bullet;\n\t}\n\n\tpublic _clearDirty() {\n\t\tsuper._clearDirty();\n\t\tthis._aggregatesCalculated = false;\n\t\tthis._selectionAggregatesCalculated = false;\n\t}\n\n\tpublic _prepareChildren(){\n\t\tsuper._prepareChildren();\n\n\t\tlet startIndex = this.startIndex();\n\t\tlet endIndex = this.endIndex();\n\n\n\t\tif(this.isPrivateDirty(\"baseValueSeries\")){\n\t\t\tconst baseValueSeries = this.getPrivate(\"baseValueSeries\");\n\t\t\tif(baseValueSeries){\n\t\t\t\tthis._disposers.push(baseValueSeries.onPrivate(\"startIndex\", ()=>{\n\t\t\t\t\tthis.markDirtyValues();\n\t\t\t\t}))\n\t\t\t}\t\t\t\n\t\t}\n\n\t\tconst calculateAggregates = this.get(\"calculateAggregates\");\n\t\tif(calculateAggregates){\n\t\t\tif (this._valuesDirty && !this._dataProcessed) {\n\t\t\t\tif (!this._aggregatesCalculated) {\n\t\t\t\t\tthis._calculateAggregates(0, this.dataItems.length);\n\t\t\t\t\tthis._aggregatesCalculated = true;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif ((this._psi != startIndex || this._pei != endIndex) && !this._selectionAggregatesCalculated) {\n\t\t\t\tif (startIndex === 0 && endIndex === this.dataItems.length && this._aggregatesCalculated) {\n\t\t\t\t\t// void\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthis._calculateAggregates(startIndex, endIndex);\n\t\t\t\t}\n\n\t\t\t\tthis._selectionAggregatesCalculated = true;\n\t\t\t}\n\t\t}\n\n\t\tif(this.isDirty(\"tooltip\")){\n\t\t\tlet tooltip = this.get(\"tooltip\");\n\t\t\tif(tooltip){\n\t\t\t\ttooltip.hide(0);\n\t\t\t\ttooltip.set(\"tooltipTarget\", this);\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"fill\") || this.isDirty(\"stroke\")) {\n\n\t\t\tlet markerRectangle: Graphics | undefined;\n\t\t\tconst legendDataItem = this.get(\"legendDataItem\");\n\t\t\tif (legendDataItem) {\n\t\t\t\tmarkerRectangle = legendDataItem.get(\"markerRectangle\");\n\n\t\t\t\tif (markerRectangle) {\n\t\t\t\t\tif (this.isDirty(\"stroke\")) {\n\t\t\t\t\t\tlet stroke = this.get(\"stroke\");\n\t\t\t\t\t\tmarkerRectangle.set(\"stroke\", stroke);\n\t\t\t\t\t}\n\t\t\t\t\tif (this.isDirty(\"fill\")) {\n\t\t\t\t\t\tlet fill = this.get(\"fill\");\n\t\t\t\t\t\tmarkerRectangle.set(\"fill\", fill);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tthis.updateLegendMarker(undefined);\n\t\t}\n\n\n\t\tif (this.bullets.length > 0) {\n\t\t\tlet startIndex = this.startIndex();\n\t\t\tlet endIndex = this.endIndex();\n\n\t\t\tfor (let i = startIndex; i < endIndex; i++) {\n\t\t\t\tlet dataItem = this.dataItems[i];\n\t\t\t\tif (!dataItem.bullets) {\n\t\t\t\t\tthis._makeBullets(dataItem);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t}\n\n\tprotected _calculateAggregates(startIndex: number, endIndex: number) {\n\t\tlet fields = this._valueFields;\n\n\t\tif (!fields) {\n\t\t\tthrow new Error(\"No value fields are set for the series.\");\n\t\t}\n\n\t\tconst sum: { [index: string]: number } = {};\n\t\tconst absSum: { [index: string]: number } = {};\n\t\tconst count: { [index: string]: number } = {};\n\t\tconst low: { [index: string]: number } = {};\n\t\tconst high: { [index: string]: number } = {};\n\t\tconst open: { [index: string]: number } = {};\n\t\tconst close: { [index: string]: number } = {};\n\t\tconst average: { [index: string]: number } = {};\n\t\tconst previous: { [index: string]: number } = {};\n\n\t\t$array.each(fields, (key) => {\n\t\t\tsum[key] = 0;\n\t\t\tabsSum[key] = 0;\n\t\t\tcount[key] = 0;\n\t\t})\n\n\t\t$array.each(fields, (key) => {\n\t\t\tlet change = key + \"Change\";\n\t\t\tlet changePercent = key + \"ChangePercent\";\n\t\t\tlet changePrevious = key + \"ChangePrevious\";\n\t\t\tlet changePreviousPercent = key + \"ChangePreviousPercent\";\n\t\t\tlet changeSelection = key + \"ChangeSelection\";\n\t\t\tlet changeSelectionPercent = key + \"ChangeSelectionPercent\";\n\n\t\t\tlet openKey = \"valueY\";\n\n\t\t\tif(key == \"valueX\" || key == \"openValueX\" || key == \"lowValueX\" || key == \"highValueX\"){\n\t\t\t\topenKey = \"valueX\";\n\t\t\t}\n\n\t\t\tconst baseValueSeries = this.getPrivate(\"baseValueSeries\");\n\n\t\t\tfor (let i = startIndex; i < endIndex; i++) {\n\t\t\t\tconst dataItem = this.dataItems[i];\n\n\t\t\t\tlet value = dataItem.get(<any>key)\n\n\t\t\t\tif (value != null) {\n\t\t\t\t\tcount[key]++;\n\t\t\t\t\tsum[key] += value;\n\n\t\t\t\t\tabsSum[key] += Math.abs(value);\n\n\t\t\t\t\taverage[key] = sum[key] / count[key];\n\n\t\t\t\t\tif (low[key] > value || low[key] == null) {\n\t\t\t\t\t\tlow[key] = value;\n\t\t\t\t\t}\n\t\t\t\t\tif (high[key] < value || high[key] == null) {\n\t\t\t\t\t\thigh[key] = value;\n\t\t\t\t\t}\n\n\t\t\t\t\tclose[key] = value;\n\n\t\t\t\t\tif (open[key] == null) {\n\t\t\t\t\t\topen[key] = value;\n\t\t\t\t\t\tprevious[key] = value;\n\n\t\t\t\t\t\tif(baseValueSeries){\n\t\t\t\t\t\t\topen[openKey] = baseValueSeries._getBase(openKey);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tif (startIndex === 0) {\n\t\t\t\t\t\tdataItem.setRaw(<any>(change), value - open[openKey]);\n\t\t\t\t\t\tdataItem.setRaw(<any>(changePercent), (value - open[openKey]) / open[openKey] * 100);\n\t\t\t\t\t}\n\n\t\t\t\t\tdataItem.setRaw(<any>(changePrevious), value - previous[openKey]);\n\t\t\t\t\tdataItem.setRaw(<any>(changePreviousPercent), (value - previous[openKey]) / previous[openKey] * 100);\n\t\t\t\t\tdataItem.setRaw(<any>(changeSelection), value - open[openKey]);\n\t\t\t\t\tdataItem.setRaw(<any>(changeSelectionPercent), (value - open[openKey]) / open[openKey] * 100);\n\n\t\t\t\t\tprevious[key] = value;\n\t\t\t\t}\n\t\t\t}\n\t\t})\n\n\t\t$array.each(fields, (key) => {\n\t\t\tthis.setPrivate(<any>(key + \"AverageSelection\"), average[key]);\n\t\t\tthis.setPrivate(<any>(key + \"CountSelection\"), count[key]);\n\t\t\tthis.setPrivate(<any>(key + \"SumSelection\"), sum[key]);\n\t\t\tthis.setPrivate(<any>(key + \"AbsoluteSumSelection\"), absSum[key]);\n\t\t\tthis.setPrivate(<any>(key + \"LowSelection\"), low[key]);\n\t\t\tthis.setPrivate(<any>(key + \"HighSelection\"), high[key]);\n\t\t\tthis.setPrivate(<any>(key + \"OpenSelection\"), open[key]);\n\t\t\tthis.setPrivate(<any>(key + \"CloseSelection\"), close[key]);\n\t\t})\n\n\t\tif (startIndex === 0 && endIndex === this.dataItems.length) {\n\t\t\t$array.each(fields, (key) => {\n\t\t\t\tthis.setPrivate(<any>(key + \"Average\"), average[key]);\n\t\t\t\tthis.setPrivate(<any>(key + \"Count\"), count[key]);\n\t\t\t\tthis.setPrivate(<any>(key + \"Sum\"), sum[key]);\n\t\t\t\tthis.setPrivate(<any>(key + \"AbsoluteSum\"), absSum[key]);\n\t\t\t\tthis.setPrivate(<any>(key + \"Low\"), low[key]);\n\t\t\t\tthis.setPrivate(<any>(key + \"High\"), high[key]);\n\t\t\t\tthis.setPrivate(<any>(key + \"Open\"), open[key]);\n\t\t\t\tthis.setPrivate(<any>(key + \"Close\"), close[key]);\n\t\t\t})\n\t\t}\n\t}\n\n\tpublic _updateChildren() {\n\t\tsuper._updateChildren();\n\n\t\tthis._psi = this.startIndex();\n\t\tthis._pei = this.endIndex();\n\n\t\tif(this.isDirty(\"visible\")){\n\t\t\tthis.bulletsContainer.set(\"visible\", this.get(\"visible\"));\n\t\t}\n\n\n\t\t// Apply heat rules\n\t\tif (this._valuesDirty && this.get(\"heatRules\") != null) {\n\t\t\tconst rules = this.get(\"heatRules\", []);\n\t\t\t$array.each(rules, (rule) => {\n\t\t\t\tconst minValue = rule.minValue || this.getPrivate(<any>(rule.dataField + \"Low\")) || 0;\n\t\t\t\tconst maxValue = rule.maxValue || this.getPrivate(<any>(rule.dataField + \"High\")) || 0;\n\n\t\t\t\t$array.each(rule.target._entities, (target) => {\n\t\t\t\t\tconst value = target.dataItem.get(rule.dataField);\n\n\t\t\t\t\tif (!$type.isNumber(value)) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tlet percent: number;\n\t\t\t\t\tif (rule.logarithmic) {\n\t\t\t\t\t\tpercent = (Math.log(value) * Math.LOG10E - Math.log(minValue) * Math.LOG10E) / ((Math.log(maxValue) * Math.LOG10E - Math.log(minValue) * Math.LOG10E));\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tpercent = (value - minValue) / (maxValue - minValue);\n\t\t\t\t\t}\n\n\t\t\t\t\tif ($type.isNumber(value) && (!$type.isNumber(percent) || Math.abs(percent) == Infinity)) {\n\t\t\t\t\t\tpercent = 0.5;\n\t\t\t\t\t}\n\n\t\t\t\t\t// fixes problems if all values are the same\n\t\t\t\t\tlet propertyValue;\n\t\t\t\t\tif ($type.isNumber(rule.min)) {\n\t\t\t\t\t\tpropertyValue = rule.min + (rule.max - rule.min) * percent;\n\t\t\t\t\t}\n\t\t\t\t\telse if (rule.min instanceof Color) {\n\t\t\t\t\t\tpropertyValue = Color.interpolate(percent, rule.min, rule.max);\n\t\t\t\t\t}\n\t\t\t\t\telse if (rule.min instanceof Percent) {\n\t\t\t\t\t\tpropertyValue = percentInterpolate(percent, rule.min, rule.max);\n\t\t\t\t\t}\n\n\t\t\t\t\tif (rule.customFunction) {\n\t\t\t\t\t\trule.customFunction.call(this, target, minValue, maxValue, value);\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\ttarget.set(rule.key, propertyValue);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t});\n\t\t}\n\n\t\tif (this.bullets.length > 0) {\n\t\t\tlet count = this.dataItems.length;\n\t\t\tlet startIndex = this.startIndex();\n\t\t\tlet endIndex = this.endIndex();\n\n\t\t\tif(endIndex < count){\n\t\t\t\tendIndex++;\n\t\t\t}\n\t\t\tif(startIndex > 0){\n\t\t\t\tstartIndex--;\n\t\t\t}\n\n\t\t\tfor (let i = 0; i < startIndex; i++) {\n\t\t\t\tthis._hideBullets(this.dataItems[i]);\n\t\t\t}\n\n\t\t\tfor (let i = startIndex; i < endIndex; i++) {\n\t\t\t\tthis._positionBullets(this.dataItems[i]);\n\t\t\t}\n\n\t\t\tfor (let i = endIndex; i < count; i++) {\n\t\t\t\tthis._hideBullets(this.dataItems[i]);\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic _positionBullets(dataItem: DataItem<this[\"_dataItemSettings\"]>){\n\t\tif(dataItem.bullets){\n\t\t\t$array.each(dataItem.bullets, (bullet) => {\n\t\t\t\tthis._positionBullet(bullet);\n\t\t\t\tconst sprite = bullet.get(\"sprite\");\n\n\t\t\t\tif(bullet.get(\"dynamic\")){\n\n\t\t\t\t\tif(sprite){\n\t\t\t\t\t\tsprite._markDirtyKey(\"fill\" as any);\n\t\t\t\t\t\tsprite.markDirtySize();\n\t\t\t\t\t}\n\t\t\t\t\tif(sprite instanceof Container){\n\t\t\t\t\t\tsprite.walkChildren((child)=>{\n\t\t\t\t\t\t\tchild._markDirtyKey(\"fill\" as any);\n\t\t\t\t\t\t\tchild.markDirtySize();\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif(sprite instanceof Label && sprite.get(\"populateText\" as any)){\n\t\t\t\t\tsprite.text.markDirtyText();\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t}\n\n\tprotected _hideBullets(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tif (dataItem.bullets) {\n\t\t\t$array.each(dataItem.bullets, (bullet) => {\n\t\t\t\tlet sprite = bullet.get(\"sprite\");\n\t\t\t\tif (sprite) {\n\t\t\t\t\tsprite.setPrivate(\"visible\", false);\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t}\n\n\tpublic _positionBullet(_bullet: Bullet) {\n\t}\n\n\tpublic _placeBulletsContainer(chart:Chart){\n\t\tchart.bulletsContainer.children.moveValue(this.bulletsContainer);\n\t}\n\n\tpublic _removeBulletsContainer(){\n\t\tconst bulletsContainer = this.bulletsContainer;\n\t\tif(bulletsContainer.parent){\n\t\t\tbulletsContainer.parent.children.removeValue(bulletsContainer)\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic disposeDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tconst bullets = dataItem.bullets;\n\n\t\tif(bullets){\n\t\t\t$array.each(bullets, (bullet)=>{\n\t\t\t\tbullet.dispose();\n\t\t\t})\n\t\t}\n\t}\n\n\tprotected _getItemReaderLabel(): string {\n\t\treturn \"\";\n\t}\n\n\t/**\n\t * Shows series's data item.\n\t *\n\t * @param dataItem Data item\n\t * @param duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async showDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tconst promises = [super.showDataItem(dataItem, duration)];\n\t\tconst bullets = dataItem.bullets;\n\t\tif(bullets){\n\t\t\t$array.each(bullets, (bullet)=>{\n\t\t\t\tpromises.push(bullet.get(\"sprite\").show(duration));\n\t\t\t})\n\t\t}\n\t\tawait Promise.all(promises);\n\t}\n\n\t/**\n\t * Hides series's data item.\n\t *\n\t * @param dataItem Data item\n\t * @param duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async hideDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tconst promises = [super.hideDataItem(dataItem, duration)];\n\t\tconst bullets = dataItem.bullets;\n\t\tif(bullets){\n\t\t\t$array.each(bullets, (bullet)=>{\n\t\t\t\tpromises.push(bullet.get(\"sprite\").hide(duration));\n\t\t\t})\n\t\t}\n\t\tawait Promise.all(promises);\n\t}\n\n\n\tprotected async _sequencedShowHide(show: boolean, duration?: number): Promise<void> {\n\t\tif (this.get(\"sequencedInterpolation\")) {\n\n\t\t\tif (!$type.isNumber(duration)) {\n\t\t\t\tduration = this.get(\"interpolationDuration\", 0);\n\t\t\t}\n\n\t\t\tif (duration > 0) {\n\t\t\t\tconst startIndex = this.startIndex();\n\t\t\t\tconst endIndex = this.endIndex();\n\n\t\t\t\tawait Promise.all($array.map(this.dataItems, async (dataItem, i) => {\n\t\t\t\t\tlet realDuration = duration || 0;\n\n\t\t\t\t\tif (i < startIndex - 10 || i > endIndex + 10) {\n\t\t\t\t\t\trealDuration = 0;\n\t\t\t\t\t}\n\n\t\t\t\t\t//let delay = this.get(\"sequencedDelay\", 0) * i + realDuration * (i - startIndex) / (endIndex - startIndex);\n\t\t\t\t\tlet delay = this.get(\"sequencedDelay\", 0) + realDuration / (endIndex - startIndex);\n\n\t\t\t\t\tawait $time.sleep(delay * (i - startIndex));\n\n\t\t\t\t\tif (show) {\n\t\t\t\t\t\tawait this.showDataItem(dataItem, realDuration);\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tawait this.hideDataItem(dataItem, realDuration);\n\t\t\t\t\t}\n\t\t\t\t}));\n\t\t\t}\n\t\t\telse {\n\t\t\t\tawait Promise.all($array.map(this.dataItems, (dataItem) => {\n\t\t\t\t\tif (show) {\n\t\t\t\t\t\treturn this.showDataItem(dataItem, 0);\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\treturn this.hideDataItem(dataItem, 0);\n\t\t\t\t\t}\n\t\t\t\t}));\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic updateLegendValue(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tconst legendDataItem = dataItem.get(\"legendDataItem\" as any) as DataItem<ILegendDataItem>;\n\n\t\tif (legendDataItem) {\n\t\t\tconst valueLabel = legendDataItem.get(\"valueLabel\");\n\t\t\tif (valueLabel) {\n\t\t\t\tconst text = valueLabel.text;\n\t\t\t\tlet txt = \"\";\n\t\t\t\tvalueLabel._setDataItem(dataItem);\n\t\t\t\ttxt = this.get(\"legendValueText\", text.get(\"text\", \"\"));\n\n\t\t\t\tvalueLabel.set(\"text\", txt);\n\t\t\t\ttext.markDirtyText();\n\t\t\t}\n\n\t\t\tconst label = legendDataItem.get(\"label\");\n\t\t\tif (label) {\n\t\t\t\tconst text = label.text;\n\t\t\t\tlet txt = \"\";\n\t\t\t\tlabel._setDataItem(dataItem);\n\t\t\t\ttxt = this.get(\"legendLabelText\", text.get(\"text\", \"\"));\n\n\t\t\t\tlabel.set(\"text\", txt);\n\t\t\t\ttext.markDirtyText();\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic updateLegendMarker(_dataItem?: DataItem<this[\"_dataItemSettings\"]>) {\n\t}\n\n\tprotected _onHide(){\n\t\tsuper._onHide();\n\n\t\tconst tooltip = this.getTooltip();\n\t\tif(tooltip){\n\t\t\ttooltip.hide();\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic hoverDataItem(_dataItem: DataItem<this[\"_dataItemSettings\"]>) {}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic unhoverDataItem(_dataItem: DataItem<this[\"_dataItemSettings\"]>) {}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic _getBase(key: any): number {\n\t\tconst dataItem = this.dataItems[this.startIndex()];\n\t\tif (dataItem) {\n\t\t\treturn dataItem.get(key);\n\t\t}\n\t\treturn 0;\n\t}\n}\n"]}
1
+ {"version":3,"file":"Series.js","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Series.ts"],"names":[],"mappings":"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","sourcesContent":["import { Component, IComponentSettings, IComponentPrivate, DataItem, IComponentEvents, IComponentDataItem } from \"../../core/render/Component\";\nimport { List } from \"../../core/util/List\";\nimport { Color } from \"../../core/util/Color\";\nimport { percentInterpolate } from \"../../core/util/Animation\";\nimport { Percent } from \"../../core/util/Percent\";\nimport * as $array from \"../../core/util/Array\";\nimport * as $type from \"../../core/util/Type\";\nimport * as $time from \"../../core/util/Time\";\nimport type { Root } from \"../../core/Root\";\nimport { p100 } from \"../../core/util/Percent\";\nimport type { Chart } from \"./Chart\";\nimport type { Bullet } from \"./Bullet\";\nimport { Container } from \"../../core/render/Container\";\nimport type { Graphics } from \"../../core/render/Graphics\";\nimport type { ILegendDataItem } from \"./Legend\";\nimport type { Template } from \"../../core/util/Template\";\nimport type { Sprite } from \"../../core/render/Sprite\";\nimport { Label } from \"../../core/render/Label\";\n//import { Animations } from \"../../core/util/Animation\";\n\n/**\n * Defines interface for a heat rule.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/settings/heat-rules/} for more info\n */\nexport interface IHeatRule {\n\n\t/**\n\t * Target template.\n\t */\n\ttarget: Template<any>;\n\n\t/**\n\t * The setting value to use for items if the lowest value.\n\t */\n\tmin: any;\n\n\t/**\n\t * The setting value to use for items if the highest value.\n\t */\n\tmax: any;\n\n\t/**\n\t * Which data field to use when determining item's value.\n\t */\n\tdataField: string;\n\n\t/**\n\t * A setting key to set.\n\t */\n\tkey?: string;\n\n\t/**\n\t * Custom lowest value.\n\t */\n\tminValue?: number;\n\n\t/**\n\t * Custom highest value.\n\t */\n\tmaxValue?: number;\n\n\t/**\n\t * Use logarithmic scale when calculating intermediate setting values.\n\t *\n\t * @default false\n\t */\n\tlogarithmic?: boolean;\n\n\t/**\n\t * A custom function that will set target element's settings.\n\t *\n\t * Can be used to do custom manipulation on complex objects requiring more\n\t * than modifying a setting.\n\t */\n\tcustomFunction?: (target: Sprite, minValue: number, maxValue: number, value?: any) => void;\n\n}\n\n\nexport interface ISeriesDataItem extends IComponentDataItem {\n\tid?: string;\n\n\tvalue?: number;\n\n\t/**\n\t * @ignore\n\t */\n\tvalueWorking?:number;\n\n\tvalueChange?: number;\n\tvalueChangePercent?: number;\n\tvalueChangeSelection?: number;\n\tvalueChangeSelectionPercent?: number;\n\tvalueChangePrevious?: number;\n\tvalueChangePreviousPercent?: number;\n\n\t/**\n\t * @ignore\n\t */\n\tvalueWorkingOpen?: number;\n\n\t/**\n\t * @ignore\n\t */\n\tvalueWorkingClose?: number;\n}\n\nexport interface ISeriesSettings extends IComponentSettings {\n\n\t/**\n\t * Name of the series.\n\t */\n\tname?: string;\n\n\t/**\n\t * A key to look up in data for an id of the data item.\n\t */\n\tidField?: string;\n\n\t/**\n\t * A key to look up in data for a numeric value of the data item.\n\t *\n\t * Some series use it to display its elements. It can also be used in heat\n\t * rules.\n\t */\n\tvalueField?: string;\n\n\t/**\n\t * A text template to be used for label in legend.\n\t */\n\tlegendLabelText?: string;\n\n\t/**\n\t * A text template to be used for value label in legend.\n\t */\n\tlegendValueText?: string;\n\n\t/**\n\t * If set to `true` the series initial animation will be played item by item\n\t * rather than all at once.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/animations/#Animation_of_series} for more info\n\t */\n\tsequencedInterpolation?:boolean;\n\n\t/**\n\t * A delay in milliseconds to wait before starting animation of next data\n\t * item.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/animations/#Animation_of_series} for more info\n\t */\n\tsequencedDelay?:number;\n\n\t/**\n\t * A list of heat rules to apply on series elements.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/settings/heat-rules/} for more info\n\t */\n\theatRules?:IHeatRule[];\n\n\t/**\n\t * If set to `true`, series will calculate aggregate values, e.g. change\n\t * percent, high, low, etc.\n\t *\n\t * Do not enable unless you are using such aggregate values in tooltips,\n\t * display data fields, heat rules, or similar.\n\t */\n\tcalculateAggregates?: boolean;\n\n\t/**\n\t * Series stroke color.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/series/#Series_colors} for more info\n\t */\n\tstroke?: Color;\n\n\t/**\n\t * Series fill color.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/series/#Series_colors} for more info\n\t */\n\tfill?: Color;\n\n\t/**\n\t * A data item representing series in a [[Legend]].\n\t *\n\t * @readonly\n\t */\n\tlegendDataItem?: DataItem<ILegendDataItem>;\n\n}\n\nexport interface ISeriesPrivate extends IComponentPrivate {\n\n\t/**\n\t * @ignore\n\t */\n\tchart?: Chart;\n\tstartIndex?: number;\n\tendIndex?: number;\n\n\tvalueAverage?: number;\n\tvalueCount?: number;\n\tvalueSum?: number;\n\tvalueAbsoluteSum?: number;\n\tvalueLow?: number;\n\tvalueHigh?: number;\n\tvalueOpen?: number;\n\tvalueClose?: number;\n\n\tbaseValueSeries?: Series;\n}\n\nexport interface ISeriesEvents extends IComponentEvents {\n\n}\n\n/**\n * A base class for all series.\n */\nexport abstract class Series extends Component {\n\tpublic static className: string = \"Series\";\n\tpublic static classNames: Array<string> = Component.classNames.concat([Series.className]);\n\n\tdeclare public _settings: ISeriesSettings;\n\tdeclare public _privateSettings: ISeriesPrivate;\n\tdeclare public _dataItemSettings: ISeriesDataItem;\n\tdeclare public _events: ISeriesEvents;\n\n\tprotected _aggregatesCalculated: boolean = false;\n\tprotected _selectionAggregatesCalculated: boolean = false;\n\tprotected _dataProcessed: boolean = false;\n\n\tprotected _psi: number | undefined;\n\tprotected _pei: number | undefined;\n\n\t/**\n\t * A chart series belongs to.\n\t */\n\tpublic chart:Chart | undefined;\n\n\t/**\n\t * List of bullets to use for the series.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/bullets/} for more info\n\t */\n\tpublic bullets: List<<D extends DataItem<this[\"_dataItemSettings\"]>>(root: Root, series:Series, dataItem: D) => Bullet | undefined> = new List();\n\n\t/**\n\t * A [[Container]] series' bullets are stored in.\n\t *\n\t * @default Container.new()\n\t */\n\tpublic readonly bulletsContainer: Container = Container.new(this._root, {width:p100, height:p100, position:\"absolute\"});\n\n\tprotected _afterNew() {\n\t\tthis.valueFields.push(\"value\");\n\n\t\tsuper._afterNew();\n\n\t\tthis.setPrivate(\"customData\", {});\n\n\t\tthis._disposers.push(this.bullets.events.onAll((change) => {\n\t\t\tif (change.type === \"clear\") {\n\t\t\t\tthis._handleBullets(this.dataItems);\n\t\t\t} else if (change.type === \"push\") {\n\t\t\t\tthis._handleBullets(this.dataItems);\n\t\t\t} else if (change.type === \"setIndex\") {\n\t\t\t\tthis._handleBullets(this.dataItems);\n\t\t\t} else if (change.type === \"insertIndex\") {\n\t\t\t\tthis._handleBullets(this.dataItems);\n\t\t\t} else if (change.type === \"removeIndex\") {\n\t\t\t\tthis._handleBullets(this.dataItems);\n\t\t\t} else if (change.type === \"moveIndex\") {\n\t\t\t\tthis._handleBullets(this.dataItems);\n\t\t\t} else {\n\t\t\t\tthrow new Error(\"Unknown IListEvent type\");\n\t\t\t}\n\t\t}));\n\t}\n\n\tprotected _dispose(){\n\t\tthis.bulletsContainer.dispose(); // can be in a different parent\n\t\tsuper._dispose();\n\t}\n\n\tpublic startIndex():number {\n\t\tlet len = this.dataItems.length;\n\t\treturn Math.min(this.getPrivate(\"startIndex\", 0), len);\n\t}\n\n\tpublic endIndex():number {\n\t\tlet len = this.dataItems.length;\n\t\treturn Math.min(this.getPrivate(\"endIndex\", len), len)\n\t}\n\n\tprotected _handleBullets(dataItems:Array<DataItem<this[\"_dataItemSettings\"]>>){\n\t\t$array.each(dataItems, (dataItem)=>{\n\t\t\tconst bullets = dataItem.bullets;\n\t\t\tif(bullets){\n\t\t\t\t$array.each(bullets, (bullet)=>{\n\t\t\t\t\tbullet.dispose();\n\t\t\t\t})\n\n\t\t\t\tdataItem.bullets = undefined;\n\t\t\t}\n\t\t})\n\n\t\tthis.markDirtyValues();\n\t}\n\n\t/**\n\t * Looks up and returns a data item by its ID.\n\t *\n\t * @param id ID\n\t * @return Data item\n\t */\n\tpublic getDataItemById(id: string): DataItem<this[\"_dataItemSettings\"]> | undefined {\n\t\treturn $array.find(this.dataItems, (dataItem: any) => {\n\t\t\treturn dataItem.get(\"id\") == id;\n\t\t})\n\t}\n\n\tprotected _makeBullets(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tif(this._shouldMakeBullet(dataItem)){\n\t\t\tdataItem.bullets = [];\n\n\t\t\tthis.bullets.each((bulletFunction) => {\n\t\t\t\tthis._makeBullet(dataItem, bulletFunction);\n\t\t\t})\n\t\t}\n\t}\n\n\tprotected _shouldMakeBullet(_dataItem: DataItem<this[\"_dataItemSettings\"]>):boolean{\n\t\treturn true;\n\t}\n\n\tprotected _makeBullet(dataItem: DataItem<this[\"_dataItemSettings\"]>, bulletFunction:(root: Root, series:Series, dataItem: DataItem<this[\"_dataItemSettings\"]>) => Bullet | undefined, index?:number):Bullet | undefined{\n\t\tconst bullet = bulletFunction(this._root, this, dataItem);\n\t\tif(bullet){\n\t\t\tlet sprite = bullet.get(\"sprite\");\n\n\t\t\tif (sprite) {\n\t\t\t\tsprite._setDataItem(dataItem);\n\t\t\t\tsprite.setRaw(\"position\", \"absolute\");\n\t\t\t\tthis.bulletsContainer.children.push(sprite);\n\t\t\t}\n\t\t\tbullet._index = index;\n\t\t\tbullet.series = this;\n\t\t\tdataItem.bullets!.push(bullet);\n\t\t}\n\t\treturn bullet;\n\t}\n\n\tpublic _clearDirty() {\n\t\tsuper._clearDirty();\n\t\tthis._aggregatesCalculated = false;\n\t\tthis._selectionAggregatesCalculated = false;\n\t}\n\n\tpublic _prepareChildren(){\n\t\tsuper._prepareChildren();\n\n\t\tlet startIndex = this.startIndex();\n\t\tlet endIndex = this.endIndex();\n\n\n\t\tif(this.isPrivateDirty(\"baseValueSeries\")){\n\t\t\tconst baseValueSeries = this.getPrivate(\"baseValueSeries\");\n\t\t\tif(baseValueSeries){\n\t\t\t\tthis._disposers.push(baseValueSeries.onPrivate(\"startIndex\", ()=>{\n\t\t\t\t\tthis.markDirtyValues();\n\t\t\t\t}))\n\t\t\t}\t\t\t\n\t\t}\n\n\t\tconst calculateAggregates = this.get(\"calculateAggregates\");\n\t\tif(calculateAggregates){\n\t\t\tif (this._valuesDirty && !this._dataProcessed) {\n\t\t\t\tif (!this._aggregatesCalculated) {\n\t\t\t\t\tthis._calculateAggregates(0, this.dataItems.length);\n\t\t\t\t\tthis._aggregatesCalculated = true;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif ((this._psi != startIndex || this._pei != endIndex) && !this._selectionAggregatesCalculated) {\n\t\t\t\tif (startIndex === 0 && endIndex === this.dataItems.length && this._aggregatesCalculated) {\n\t\t\t\t\t// void\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthis._calculateAggregates(startIndex, endIndex);\n\t\t\t\t}\n\n\t\t\t\tthis._selectionAggregatesCalculated = true;\n\t\t\t}\n\t\t}\n\n\t\tif(this.isDirty(\"tooltip\")){\n\t\t\tlet tooltip = this.get(\"tooltip\");\n\t\t\tif(tooltip){\n\t\t\t\ttooltip.hide(0);\n\t\t\t\ttooltip.set(\"tooltipTarget\", this);\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"fill\") || this.isDirty(\"stroke\")) {\n\n\t\t\tlet markerRectangle: Graphics | undefined;\n\t\t\tconst legendDataItem = this.get(\"legendDataItem\");\n\t\t\tif (legendDataItem) {\n\t\t\t\tmarkerRectangle = legendDataItem.get(\"markerRectangle\");\n\n\t\t\t\tif (markerRectangle) {\n\t\t\t\t\tif(this.isVisible()){\n\t\t\t\t\t\tif (this.isDirty(\"stroke\")) {\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\tlet stroke = this.get(\"stroke\");\n\t\t\t\t\t\t\tmarkerRectangle.set(\"stroke\", stroke);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (this.isDirty(\"fill\")) {\n\t\t\t\t\t\t\tlet fill = this.get(\"fill\");\t\t\t\t\t\t\n\t\t\t\t\t\t\tmarkerRectangle.set(\"fill\", fill);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tthis.updateLegendMarker(undefined);\n\t\t}\n\n\n\t\tif (this.bullets.length > 0) {\n\t\t\tlet startIndex = this.startIndex();\n\t\t\tlet endIndex = this.endIndex();\n\n\t\t\tfor (let i = startIndex; i < endIndex; i++) {\n\t\t\t\tlet dataItem = this.dataItems[i];\n\t\t\t\tif (!dataItem.bullets) {\n\t\t\t\t\tthis._makeBullets(dataItem);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t}\n\n\tprotected _calculateAggregates(startIndex: number, endIndex: number) {\n\t\tlet fields = this._valueFields;\n\n\t\tif (!fields) {\n\t\t\tthrow new Error(\"No value fields are set for the series.\");\n\t\t}\n\n\t\tconst sum: { [index: string]: number } = {};\n\t\tconst absSum: { [index: string]: number } = {};\n\t\tconst count: { [index: string]: number } = {};\n\t\tconst low: { [index: string]: number } = {};\n\t\tconst high: { [index: string]: number } = {};\n\t\tconst open: { [index: string]: number } = {};\n\t\tconst close: { [index: string]: number } = {};\n\t\tconst average: { [index: string]: number } = {};\n\t\tconst previous: { [index: string]: number } = {};\n\n\t\t$array.each(fields, (key) => {\n\t\t\tsum[key] = 0;\n\t\t\tabsSum[key] = 0;\n\t\t\tcount[key] = 0;\n\t\t})\n\n\t\t$array.each(fields, (key) => {\n\t\t\tlet change = key + \"Change\";\n\t\t\tlet changePercent = key + \"ChangePercent\";\n\t\t\tlet changePrevious = key + \"ChangePrevious\";\n\t\t\tlet changePreviousPercent = key + \"ChangePreviousPercent\";\n\t\t\tlet changeSelection = key + \"ChangeSelection\";\n\t\t\tlet changeSelectionPercent = key + \"ChangeSelectionPercent\";\n\n\t\t\tlet openKey = \"valueY\";\n\n\t\t\tif(key == \"valueX\" || key == \"openValueX\" || key == \"lowValueX\" || key == \"highValueX\"){\n\t\t\t\topenKey = \"valueX\";\n\t\t\t}\n\n\t\t\tconst baseValueSeries = this.getPrivate(\"baseValueSeries\");\n\n\t\t\tfor (let i = startIndex; i < endIndex; i++) {\n\t\t\t\tconst dataItem = this.dataItems[i];\n\n\t\t\t\tlet value = dataItem.get(<any>key)\n\n\t\t\t\tif (value != null) {\n\t\t\t\t\tcount[key]++;\n\t\t\t\t\tsum[key] += value;\n\n\t\t\t\t\tabsSum[key] += Math.abs(value);\n\n\t\t\t\t\taverage[key] = sum[key] / count[key];\n\n\t\t\t\t\tif (low[key] > value || low[key] == null) {\n\t\t\t\t\t\tlow[key] = value;\n\t\t\t\t\t}\n\t\t\t\t\tif (high[key] < value || high[key] == null) {\n\t\t\t\t\t\thigh[key] = value;\n\t\t\t\t\t}\n\n\t\t\t\t\tclose[key] = value;\n\n\t\t\t\t\tif (open[key] == null) {\n\t\t\t\t\t\topen[key] = value;\n\t\t\t\t\t\tprevious[key] = value;\n\n\t\t\t\t\t\tif(baseValueSeries){\n\t\t\t\t\t\t\topen[openKey] = baseValueSeries._getBase(openKey);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tif (startIndex === 0) {\n\t\t\t\t\t\tdataItem.setRaw(<any>(change), value - open[openKey]);\n\t\t\t\t\t\tdataItem.setRaw(<any>(changePercent), (value - open[openKey]) / open[openKey] * 100);\n\t\t\t\t\t}\n\n\t\t\t\t\tdataItem.setRaw(<any>(changePrevious), value - previous[openKey]);\n\t\t\t\t\tdataItem.setRaw(<any>(changePreviousPercent), (value - previous[openKey]) / previous[openKey] * 100);\n\t\t\t\t\tdataItem.setRaw(<any>(changeSelection), value - open[openKey]);\n\t\t\t\t\tdataItem.setRaw(<any>(changeSelectionPercent), (value - open[openKey]) / open[openKey] * 100);\n\n\t\t\t\t\tprevious[key] = value;\n\t\t\t\t}\n\t\t\t}\n\t\t})\n\n\t\t$array.each(fields, (key) => {\n\t\t\tthis.setPrivate(<any>(key + \"AverageSelection\"), average[key]);\n\t\t\tthis.setPrivate(<any>(key + \"CountSelection\"), count[key]);\n\t\t\tthis.setPrivate(<any>(key + \"SumSelection\"), sum[key]);\n\t\t\tthis.setPrivate(<any>(key + \"AbsoluteSumSelection\"), absSum[key]);\n\t\t\tthis.setPrivate(<any>(key + \"LowSelection\"), low[key]);\n\t\t\tthis.setPrivate(<any>(key + \"HighSelection\"), high[key]);\n\t\t\tthis.setPrivate(<any>(key + \"OpenSelection\"), open[key]);\n\t\t\tthis.setPrivate(<any>(key + \"CloseSelection\"), close[key]);\n\t\t})\n\n\t\tif (startIndex === 0 && endIndex === this.dataItems.length) {\n\t\t\t$array.each(fields, (key) => {\n\t\t\t\tthis.setPrivate(<any>(key + \"Average\"), average[key]);\n\t\t\t\tthis.setPrivate(<any>(key + \"Count\"), count[key]);\n\t\t\t\tthis.setPrivate(<any>(key + \"Sum\"), sum[key]);\n\t\t\t\tthis.setPrivate(<any>(key + \"AbsoluteSum\"), absSum[key]);\n\t\t\t\tthis.setPrivate(<any>(key + \"Low\"), low[key]);\n\t\t\t\tthis.setPrivate(<any>(key + \"High\"), high[key]);\n\t\t\t\tthis.setPrivate(<any>(key + \"Open\"), open[key]);\n\t\t\t\tthis.setPrivate(<any>(key + \"Close\"), close[key]);\n\t\t\t})\n\t\t}\n\t}\n\n\tpublic _updateChildren() {\n\t\tsuper._updateChildren();\n\n\t\tthis._psi = this.startIndex();\n\t\tthis._pei = this.endIndex();\n\n\t\tif(this.isDirty(\"visible\")){\n\t\t\tthis.bulletsContainer.set(\"visible\", this.get(\"visible\"));\n\t\t}\n\n\n\t\t// Apply heat rules\n\t\tif (this._valuesDirty && this.get(\"heatRules\") != null) {\n\t\t\tconst rules = this.get(\"heatRules\", []);\n\t\t\t$array.each(rules, (rule) => {\n\t\t\t\tconst minValue = rule.minValue || this.getPrivate(<any>(rule.dataField + \"Low\")) || 0;\n\t\t\t\tconst maxValue = rule.maxValue || this.getPrivate(<any>(rule.dataField + \"High\")) || 0;\n\n\t\t\t\t$array.each(rule.target._entities, (target) => {\n\t\t\t\t\tconst value = target.dataItem.get(rule.dataField);\n\n\t\t\t\t\tif (!$type.isNumber(value)) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tlet percent: number;\n\t\t\t\t\tif (rule.logarithmic) {\n\t\t\t\t\t\tpercent = (Math.log(value) * Math.LOG10E - Math.log(minValue) * Math.LOG10E) / ((Math.log(maxValue) * Math.LOG10E - Math.log(minValue) * Math.LOG10E));\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tpercent = (value - minValue) / (maxValue - minValue);\n\t\t\t\t\t}\n\n\t\t\t\t\tif ($type.isNumber(value) && (!$type.isNumber(percent) || Math.abs(percent) == Infinity)) {\n\t\t\t\t\t\tpercent = 0.5;\n\t\t\t\t\t}\n\n\t\t\t\t\t// fixes problems if all values are the same\n\t\t\t\t\tlet propertyValue;\n\t\t\t\t\tif ($type.isNumber(rule.min)) {\n\t\t\t\t\t\tpropertyValue = rule.min + (rule.max - rule.min) * percent;\n\t\t\t\t\t}\n\t\t\t\t\telse if (rule.min instanceof Color) {\n\t\t\t\t\t\tpropertyValue = Color.interpolate(percent, rule.min, rule.max);\n\t\t\t\t\t}\n\t\t\t\t\telse if (rule.min instanceof Percent) {\n\t\t\t\t\t\tpropertyValue = percentInterpolate(percent, rule.min, rule.max);\n\t\t\t\t\t}\n\n\t\t\t\t\tif (rule.customFunction) {\n\t\t\t\t\t\trule.customFunction.call(this, target, minValue, maxValue, value);\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\ttarget.set(rule.key, propertyValue);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t});\n\t\t}\n\n\t\tif (this.bullets.length > 0) {\n\t\t\tlet count = this.dataItems.length;\n\t\t\tlet startIndex = this.startIndex();\n\t\t\tlet endIndex = this.endIndex();\n\n\t\t\tif(endIndex < count){\n\t\t\t\tendIndex++;\n\t\t\t}\n\t\t\tif(startIndex > 0){\n\t\t\t\tstartIndex--;\n\t\t\t}\n\n\t\t\tfor (let i = 0; i < startIndex; i++) {\n\t\t\t\tthis._hideBullets(this.dataItems[i]);\n\t\t\t}\n\n\t\t\tfor (let i = startIndex; i < endIndex; i++) {\n\t\t\t\tthis._positionBullets(this.dataItems[i]);\n\t\t\t}\n\n\t\t\tfor (let i = endIndex; i < count; i++) {\n\t\t\t\tthis._hideBullets(this.dataItems[i]);\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic _positionBullets(dataItem: DataItem<this[\"_dataItemSettings\"]>){\n\t\tif(dataItem.bullets){\n\t\t\t$array.each(dataItem.bullets, (bullet) => {\n\t\t\t\tthis._positionBullet(bullet);\n\t\t\t\tconst sprite = bullet.get(\"sprite\");\n\n\t\t\t\tif(bullet.get(\"dynamic\")){\n\n\t\t\t\t\tif(sprite){\n\t\t\t\t\t\tsprite._markDirtyKey(\"fill\" as any);\n\t\t\t\t\t\tsprite.markDirtySize();\n\t\t\t\t\t}\n\t\t\t\t\tif(sprite instanceof Container){\n\t\t\t\t\t\tsprite.walkChildren((child)=>{\n\t\t\t\t\t\t\tchild._markDirtyKey(\"fill\" as any);\n\t\t\t\t\t\t\tchild.markDirtySize();\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif(sprite instanceof Label && sprite.get(\"populateText\" as any)){\n\t\t\t\t\tsprite.text.markDirtyText();\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t}\n\n\tprotected _hideBullets(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tif (dataItem.bullets) {\n\t\t\t$array.each(dataItem.bullets, (bullet) => {\n\t\t\t\tlet sprite = bullet.get(\"sprite\");\n\t\t\t\tif (sprite) {\n\t\t\t\t\tsprite.setPrivate(\"visible\", false);\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t}\n\n\tpublic _positionBullet(_bullet: Bullet) {\n\t}\n\n\tpublic _placeBulletsContainer(chart:Chart){\n\t\tchart.bulletsContainer.children.moveValue(this.bulletsContainer);\n\t}\n\n\tpublic _removeBulletsContainer(){\n\t\tconst bulletsContainer = this.bulletsContainer;\n\t\tif(bulletsContainer.parent){\n\t\t\tbulletsContainer.parent.children.removeValue(bulletsContainer)\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic disposeDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tconst bullets = dataItem.bullets;\n\n\t\tif(bullets){\n\t\t\t$array.each(bullets, (bullet)=>{\n\t\t\t\tbullet.dispose();\n\t\t\t})\n\t\t}\n\t}\n\n\tprotected _getItemReaderLabel(): string {\n\t\treturn \"\";\n\t}\n\n\t/**\n\t * Shows series's data item.\n\t *\n\t * @param dataItem Data item\n\t * @param duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async showDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tconst promises = [super.showDataItem(dataItem, duration)];\n\t\tconst bullets = dataItem.bullets;\n\t\tif(bullets){\n\t\t\t$array.each(bullets, (bullet)=>{\n\t\t\t\tpromises.push(bullet.get(\"sprite\").show(duration));\n\t\t\t})\n\t\t}\n\t\tawait Promise.all(promises);\n\t}\n\n\t/**\n\t * Hides series's data item.\n\t *\n\t * @param dataItem Data item\n\t * @param duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async hideDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tconst promises = [super.hideDataItem(dataItem, duration)];\n\t\tconst bullets = dataItem.bullets;\n\t\tif(bullets){\n\t\t\t$array.each(bullets, (bullet)=>{\n\t\t\t\tpromises.push(bullet.get(\"sprite\").hide(duration));\n\t\t\t})\n\t\t}\n\t\tawait Promise.all(promises);\n\t}\n\n\n\tprotected async _sequencedShowHide(show: boolean, duration?: number): Promise<void> {\n\t\tif (this.get(\"sequencedInterpolation\")) {\n\n\t\t\tif (!$type.isNumber(duration)) {\n\t\t\t\tduration = this.get(\"interpolationDuration\", 0);\n\t\t\t}\n\n\t\t\tif (duration > 0) {\n\t\t\t\tconst startIndex = this.startIndex();\n\t\t\t\tconst endIndex = this.endIndex();\n\n\t\t\t\tawait Promise.all($array.map(this.dataItems, async (dataItem, i) => {\n\t\t\t\t\tlet realDuration = duration || 0;\n\n\t\t\t\t\tif (i < startIndex - 10 || i > endIndex + 10) {\n\t\t\t\t\t\trealDuration = 0;\n\t\t\t\t\t}\n\n\t\t\t\t\t//let delay = this.get(\"sequencedDelay\", 0) * i + realDuration * (i - startIndex) / (endIndex - startIndex);\n\t\t\t\t\tlet delay = this.get(\"sequencedDelay\", 0) + realDuration / (endIndex - startIndex);\n\n\t\t\t\t\tawait $time.sleep(delay * (i - startIndex));\n\n\t\t\t\t\tif (show) {\n\t\t\t\t\t\tawait this.showDataItem(dataItem, realDuration);\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tawait this.hideDataItem(dataItem, realDuration);\n\t\t\t\t\t}\n\t\t\t\t}));\n\t\t\t}\n\t\t\telse {\n\t\t\t\tawait Promise.all($array.map(this.dataItems, (dataItem) => {\n\t\t\t\t\tif (show) {\n\t\t\t\t\t\treturn this.showDataItem(dataItem, 0);\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\treturn this.hideDataItem(dataItem, 0);\n\t\t\t\t\t}\n\t\t\t\t}));\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic updateLegendValue(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tconst legendDataItem = dataItem.get(\"legendDataItem\" as any) as DataItem<ILegendDataItem>;\n\n\t\tif (legendDataItem) {\n\t\t\tconst valueLabel = legendDataItem.get(\"valueLabel\");\n\t\t\tif (valueLabel) {\n\t\t\t\tconst text = valueLabel.text;\n\t\t\t\tlet txt = \"\";\n\t\t\t\tvalueLabel._setDataItem(dataItem);\n\t\t\t\ttxt = this.get(\"legendValueText\", text.get(\"text\", \"\"));\n\n\t\t\t\tvalueLabel.set(\"text\", txt);\n\t\t\t\ttext.markDirtyText();\n\t\t\t}\n\n\t\t\tconst label = legendDataItem.get(\"label\");\n\t\t\tif (label) {\n\t\t\t\tconst text = label.text;\n\t\t\t\tlet txt = \"\";\n\t\t\t\tlabel._setDataItem(dataItem);\n\t\t\t\ttxt = this.get(\"legendLabelText\", text.get(\"text\", \"\"));\n\n\t\t\t\tlabel.set(\"text\", txt);\n\t\t\t\ttext.markDirtyText();\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic updateLegendMarker(_dataItem?: DataItem<this[\"_dataItemSettings\"]>) {\n\t}\n\n\tprotected _onHide(){\n\t\tsuper._onHide();\n\n\t\tconst tooltip = this.getTooltip();\n\t\tif(tooltip){\n\t\t\ttooltip.hide();\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic hoverDataItem(_dataItem: DataItem<this[\"_dataItemSettings\"]>) {}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic unhoverDataItem(_dataItem: DataItem<this[\"_dataItemSettings\"]>) {}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic _getBase(key: any): number {\n\t\tconst dataItem = this.dataItems[this.startIndex()];\n\t\tif (dataItem) {\n\t\t\treturn dataItem.get(key);\n\t\t}\n\t\treturn 0;\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ExportingMenu.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/plugins/exporting/ExportingMenu.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAE9E,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAO/F,MAAM,WAAW,kBAAkB;IAElC;;;;;OAKG;IACH,IAAI,EAAE,QAAQ,GAAG,WAAW,GAAG,QAAQ,CAAC;IAExC;;;OAGG;IACH,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAE1B;;OAEG;IACH,UAAU,CAAC,EAAE,cAAc,CAAC;IAE5B;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,GAAG,KAAK,GAAG,CAAC;IAEnC;;OAEG;IACH,cAAc,CAAC,EAAE,GAAG,CAAC;IAErB;;;;OAIG;IACH,OAAO,CAAC,EAAE,iBAAiB,CAAC;CAE5B;AAED,MAAM,WAAW,sBAAuB,SAAQ,eAAe;IAE9D;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAEzB;;;;OAIG;IACH,MAAM,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;IAE1B;;;;OAIG;IACH,SAAS,CAAC,EAAE,WAAW,CAAC;IAExB;;OAEG;IACH,KAAK,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAE7B;;OAEG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;;;OAKG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAEzB;AAED,MAAM,WAAW,qBAAsB,SAAQ,cAAc;CAC5D;AAED,MAAM,WAAW,oBAAqB,SAAQ,aAAa;IAC1D,aAAa,EAAE,EAAE,CAAA;IACjB,YAAY,EAAE,EAAE,CAAA;IAChB,YAAY,EAAE,EAAE,CAAA;CAChB;AAED;;;;GAIG;AACH,qBAAa,aAAc,SAAQ,MAAM;IACxC,OAAc,SAAS,EAAE,MAAM,CAAmB;IAClD,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAuD;IAE/E,SAAS,EAAE,sBAAsB,CAAC;IAClC,gBAAgB,EAAE,qBAAqB,CAAC;IACxC,OAAO,EAAE,oBAAoB,CAAC;IAE7C,OAAO,CAAC,YAAY,CAAC,CAAiB;IACtC,OAAO,CAAC,YAAY,CAAC,CAAc;IACnC,OAAO,CAAC,YAAY,CAAC,CAAmB;IACxC,OAAO,CAAC,aAAa,CAAC,CAAuB;IAC7C,OAAO,CAAC,cAAc,CAAwB;IAE9C,OAAO,CAAC,YAAY,CAAC,CAAY;IACjC,OAAO,CAAC,WAAW,CAAC,CAAqB;IAElC,MAAM,EAAE,OAAO,CAAS;IAE/B,OAAO,CAAC,OAAO,CAAkB;IAEjC,SAAS,CAAC,SAAS;IAuLZ,aAAa;IAmCpB,SAAS,CAAC,QAAQ,IAAI,IAAI;IAQ1B,OAAO,CAAC,gBAAgB;IAUxB;;OAEG;IACI,WAAW,IAAI,IAAI;IA2E1B,OAAO,CAAC,YAAY;IAapB,OAAO,CAAC,gBAAgB;IAWxB,OAAO,CAAC,eAAe;IAavB;;;;OAIG;IACI,cAAc,IAAI,IAAI;IAU7B;;OAEG;IACI,IAAI,IAAI,IAAI;IASnB;;OAEG;IACI,KAAK,IAAI,IAAI;IAUpB;;OAEG;IACI,MAAM,IAAI,IAAI;CAUrB"}
1
+ {"version":3,"file":"ExportingMenu.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/plugins/exporting/ExportingMenu.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAE9E,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAO/F,MAAM,WAAW,kBAAkB;IAElC;;;;;OAKG;IACH,IAAI,EAAE,QAAQ,GAAG,WAAW,GAAG,QAAQ,CAAC;IAExC;;;OAGG;IACH,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAE1B;;OAEG;IACH,UAAU,CAAC,EAAE,cAAc,CAAC;IAE5B;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,GAAG,KAAK,GAAG,CAAC;IAEnC;;OAEG;IACH,cAAc,CAAC,EAAE,GAAG,CAAC;IAErB;;;;OAIG;IACH,OAAO,CAAC,EAAE,iBAAiB,CAAC;CAE5B;AAED,MAAM,WAAW,sBAAuB,SAAQ,eAAe;IAE9D;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAEzB;;;;OAIG;IACH,MAAM,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;IAE1B;;;;OAIG;IACH,SAAS,CAAC,EAAE,WAAW,CAAC;IAExB;;OAEG;IACH,KAAK,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAE7B;;OAEG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;;;OAKG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAEzB;AAED,MAAM,WAAW,qBAAsB,SAAQ,cAAc;CAC5D;AAED,MAAM,WAAW,oBAAqB,SAAQ,aAAa;IAC1D,aAAa,EAAE,EAAE,CAAA;IACjB,YAAY,EAAE,EAAE,CAAA;IAChB,YAAY,EAAE,EAAE,CAAA;CAChB;AAED;;;;GAIG;AACH,qBAAa,aAAc,SAAQ,MAAM;IACxC,OAAc,SAAS,EAAE,MAAM,CAAmB;IAClD,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAuD;IAE/E,SAAS,EAAE,sBAAsB,CAAC;IAClC,gBAAgB,EAAE,qBAAqB,CAAC;IACxC,OAAO,EAAE,oBAAoB,CAAC;IAE7C,OAAO,CAAC,YAAY,CAAC,CAAiB;IACtC,OAAO,CAAC,YAAY,CAAC,CAAc;IACnC,OAAO,CAAC,YAAY,CAAC,CAAmB;IACxC,OAAO,CAAC,aAAa,CAAC,CAAuB;IAC7C,OAAO,CAAC,cAAc,CAAwB;IAE9C,OAAO,CAAC,YAAY,CAAC,CAAY;IACjC,OAAO,CAAC,WAAW,CAAC,CAAqB;IAElC,MAAM,EAAE,OAAO,CAAS;IAE/B,OAAO,CAAC,OAAO,CAAkB;IAEjC,SAAS,CAAC,SAAS;IAuLZ,aAAa;IAmCpB,SAAS,CAAC,QAAQ,IAAI,IAAI;IAQ1B,OAAO,CAAC,gBAAgB;IAUxB;;OAEG;IACI,WAAW,IAAI,IAAI;IA2E1B,OAAO,CAAC,YAAY;IAapB,OAAO,CAAC,gBAAgB;IAWxB,OAAO,CAAC,eAAe;IAavB;;;;OAIG;IACI,cAAc,IAAI,IAAI;IAU7B;;OAEG;IACI,IAAI,IAAI,IAAI;IASnB;;OAEG;IACI,KAAK,IAAI,IAAI;IAapB;;OAEG;IACI,MAAM,IAAI,IAAI;CAUrB"}
@@ -218,7 +218,7 @@ var ExportingMenu = /** @class */ (function (_super) {
218
218
  }));
219
219
  this._disposers.push($utils.addEventListener(menuElement, $utils.getRendererEvent("pointerout"), function (_ev) {
220
220
  _this._isOver = false;
221
- if (_this.get("deactivateRoot")) {
221
+ if (_this.get("deactivateRoot") && _this.isOpen) {
222
222
  _this._root._renderer.interactionsEnabled = true;
223
223
  }
224
224
  }));
@@ -461,6 +461,9 @@ var ExportingMenu = /** @class */ (function (_super) {
461
461
  writable: true,
462
462
  value: function () {
463
463
  this.isOpen = false;
464
+ if (this.get("deactivateRoot")) {
465
+ this._root._renderer.interactionsEnabled = true;
466
+ }
464
467
  $utils.blur();
465
468
  this._applyClassNames();
466
469
  this.events.dispatch("menuclosed", {
@@ -1 +1 @@
1
- {"version":3,"file":"ExportingMenu.js","sourceRoot":"","sources":["../../../../../src/.internal/plugins/exporting/ExportingMenu.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Exporting, ExportingFormats, ExportingTypes } from \"./Exporting\"\n\nimport { Entity, IEntitySettings, IEntityPrivate, IEntityEvents } from \"../../core/util/Entity\"\nimport { IDisposer, Disposer } from \"../../core/util/Disposer\";\nimport exportingCSS from \"./ExportingCSS\";\n\nimport * as $array from \"../../core/util/Array\";\nimport * as $utils from \"../../core/util/Utils\";\n\nexport interface IExportingMenuItem {\n\n\t/**\n\t * Indicates type of the menu item:\n\t * * `\"format\"` - indicates export action\n\t * * `\"separator\"` - will show horizontal divider.\n\t * * `\"custom\"` - will invoke custom function when clicked.\n\t */\n\ttype: \"format\" | \"separator\" | \"custom\";\n\n\t/**\n\t * If `type` is set to `\"format\"`, clicking item will initiate export in\n\t * that format.\n\t */\n\tformat?: ExportingFormats;\n\n\t/**\n\t * Indicates export type: `\"image\"`, `\"data\"`, or `\"print\"`.\n\t */\n\texportType?: ExportingTypes;\n\n\t/**\n\t * Menu label.\n\t */\n\tlabel?: string;\n\n\t/**\n\t * Additional information.\n\t */\n\tsublabel?: string;\n\n\t/**\n\t * If `type` is set to `\"custom\"`, this needs to be set to a function.\n\t */\n\tcallback?: (menuItem?: any) => any;\n\n\t/**\n\t * A target for callback function.\n\t */\n\tcallbackTarget?: any;\n\n\t/**\n\t * A DOM element for the menu item.\n\t *\n\t * @readonly\n\t */\n\telement?: HTMLAnchorElement;\n\n}\n\nexport interface IExportingMenuSettings extends IEntitySettings {\n\n\t/**\n\t * Horizontal alignment of the menu.\n\t *\n\t * @default \"right\"\n\t */\n\talign?: \"left\" | \"right\";\n\n\t/**\n\t * Vertical alignment of the menu.\n\t *\n\t * @default \"top\"\n\t */\n\tvalign?: \"top\" | \"bottom\";\n\n\t/**\n\t * A reference to an element in the document to place export menu in.\n\t *\n\t * If not set, will use root element's container.\n\t */\n\tcontainer?: HTMLElement;\n\n\t/**\n\t * A list of menu items.\n\t */\n\titems?: IExportingMenuItem[];\n\n\t/**\n\t * A reference to related [[Exporting]] object.\n\t */\n\texporting?: Exporting;\n\n\t/**\n\t * If set to `false` the legend will not load default CSS.\n\t *\n\t * @default true\n\t */\n\tuseDefaultCSS?: boolean;\n\n\t/**\n\t * If set to `true` the menu will close automatically when export operation\n\t * is initiated.\n\t *\n\t * @default true\n\t */\n\tautoClose?: boolean;\n\n\t/**\n\t * Menu will disable all interactions for the underlying chart when browsing\n\t * the menu.\n\t *\n\t * @default true\n\t */\n\tdeactivateRoot?: boolean;\n\n}\n\nexport interface IExportingMenuPrivate extends IEntityPrivate {\n}\n\nexport interface IExportingMenuEvents extends IEntityEvents {\n\t\"menucreated\": {}\n\t\"menuopened\": {}\n\t\"menuclosed\": {}\n}\n\n/**\n * Displays a menu for [[Exporting]].\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/exporting/} for more info\n */\nexport class ExportingMenu extends Entity {\n\tpublic static className: string = \"ExportingMenu\";\n\tpublic static classNames: Array<string> = Entity.classNames.concat([ExportingMenu.className]);\n\n\tdeclare public _settings: IExportingMenuSettings;\n\tdeclare public _privateSettings: IExportingMenuPrivate;\n\tdeclare public _events: IExportingMenuEvents;\n\n\tprivate _menuElement?: HTMLDivElement;\n\tprivate _iconElement?: HTMLElement;\n\tprivate _listElement?: HTMLUListElement;\n\tprivate _itemElements?: HTMLLIElement[] = [];\n\tprivate _itemDisposers: Array<IDisposer> = [];\n\n\tprivate _cssDisposer?: IDisposer;\n\tprivate _activeItem?: IExportingMenuItem;\n\n\tpublic isOpen: boolean = false;\n\n\tprivate _isOver: boolean = false;\n\n\tprotected _afterNew() {\n\t\tsuper._afterNew();\n\t\tthis._setRawDefault(\"container\", this._root._inner);\n\t\tthis._setRawDefault(\"align\", \"right\");\n\t\tthis._setRawDefault(\"valign\", \"top\");\n\t\tthis._setRawDefault(\"useDefaultCSS\", true);\n\t\tthis._setRawDefault(\"autoClose\", true);\n\t\tthis._setRawDefault(\"deactivateRoot\", true);\n\t\tthis._setRawDefault(\"items\", [{\n\t\t\ttype: \"separator\",\n\t\t\tlabel: this._t(\"Export\")\n\t\t}, {\n\t\t\ttype: \"format\",\n\t\t\tformat: \"png\",\n\t\t\texportType: \"image\",\n\t\t\tlabel: this._t(\"PNG\"),\n\t\t\tsublabel: this._t(\"Image\")\n\t\t}, {\n\t\t\ttype: \"format\",\n\t\t\tformat: \"jpg\",\n\t\t\texportType: \"image\",\n\t\t\tlabel: this._t(\"JPG\"),\n\t\t\tsublabel: this._t(\"Image\")\n\t\t}, {\n\t\t\ttype: \"format\",\n\t\t\tformat: \"pdf\",\n\t\t\texportType: \"image\",\n\t\t\tlabel: this._t(\"PDF\"),\n\t\t\tsublabel: this._t(\"Image\")\n\t\t}, {\n\t\t\ttype: \"separator\",\n\t\t\texportType: \"data\",\n\t\t\t//label: this._t(\"Data\")\n\t\t}, {\n\t\t\ttype: \"format\",\n\t\t\tformat: \"json\",\n\t\t\texportType: \"data\",\n\t\t\tlabel: this._t(\"JSON\"),\n\t\t\tsublabel: this._t(\"Data\")\n\t\t}, {\n\t\t\ttype: \"format\",\n\t\t\tformat: \"csv\",\n\t\t\texportType: \"data\",\n\t\t\tlabel: this._t(\"CSV\"),\n\t\t\tsublabel: this._t(\"Data\")\n\t\t}, {\n\t\t\ttype: \"format\",\n\t\t\tformat: \"xlsx\",\n\t\t\texportType: \"data\",\n\t\t\tlabel: this._t(\"XLSX\"),\n\t\t\tsublabel: this._t(\"Data\")\n\t\t}, {\n\t\t\ttype: \"format\",\n\t\t\tformat: \"pdfdata\",\n\t\t\texportType: \"data\",\n\t\t\tlabel: this._t(\"PDF\"),\n\t\t\tsublabel: this._t(\"Data\")\n\t\t}, {\n\t\t\ttype: \"format\",\n\t\t\tformat: \"html\",\n\t\t\texportType: \"data\",\n\t\t\tlabel: this._t(\"HTML\"),\n\t\t\tsublabel: this._t(\"Data\")\n\t\t}, {\n\t\t\ttype: \"separator\"\n\t\t}, {\n\t\t\ttype: \"format\",\n\t\t\tformat: \"print\",\n\t\t\texportType: \"print\",\n\t\t\tlabel: this._t(\"Print\")\n\t\t}]);\n\n\t\tconst menuElement = document.createElement(\"div\");\n\t\tthis._menuElement = menuElement;\n\n\t\tconst iconElement = document.createElement(\"a\");\n\t\tthis._iconElement = iconElement;\n\n\t\tthis._listElement = document.createElement(\"ul\");\n\t\tthis._listElement.setAttribute(\"role\", \"menu\");\n\t\tthis._applyClassNames();\n\n\t\ticonElement.innerHTML = '<svg fill=\"none\" height=\"20\" width=\"20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M6 10a2 2 0 11-4 0 2 2 0 014 0zM12 10a2 2 0 11-4 0 2 2 0 014 0zM16 12a2 2 0 100-4 2 2 0 000 4z\"/></svg>';\n\t\ticonElement.setAttribute(\"tabindex\", this._root.tabindex.toString());\n\t\ticonElement.setAttribute(\"aria-label\", this._t(\"Export\"));\n\t\ticonElement.setAttribute(\"aria-description\", this._t(\"Press ENTER to open\"));\n\n\t\tif ($utils.supports(\"keyboardevents\")) {\n\t\t\tthis._disposers.push($utils.addEventListener(document, \"keydown\", (ev: KeyboardEvent) => {\n\t\t\t\tif (document.activeElement == this._iconElement || this.isOpen) {\n\t\t\t\t\tif (ev.keyCode == 27) {\n\t\t\t\t\t\t// ESC\n\t\t\t\t\t\tthis.close();\n\t\t\t\t\t}\n\t\t\t\t\telse if (ev.keyCode == 13) {\n\t\t\t\t\t\t// ENTER\n\t\t\t\t\t\tif (this._activeItem) {\n\t\t\t\t\t\t\tthis._handleClick(this._activeItem);\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tthis.toggle();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\telse if (ev.keyCode == 38 || ev.keyCode == 40) {\n\t\t\t\t\t\tconst items = this.get(\"items\", []);\n\t\t\t\t\t\tlet currentIndex = (<any>items).indexOf(this._activeItem);\n\t\t\t\t\t\tif (this.get(\"valign\") == \"top\" && currentIndex == -1) {\n\t\t\t\t\t\t\tcurrentIndex = items.length;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst dir = ev.keyCode == 38 ? -1 : 1;\n\t\t\t\t\t\tlet newIndex = currentIndex + dir;\n\t\t\t\t\t\tlet newItem;\n\t\t\t\t\t\tdo {\n\t\t\t\t\t\t\tif (newIndex < 0) {\n\t\t\t\t\t\t\t\tnewIndex = items.length - 1;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\telse if (newIndex > (items.length - 1)) {\n\t\t\t\t\t\t\t\tnewIndex = 0;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (items[newIndex].type == \"separator\") {\n\t\t\t\t\t\t\t\tnewIndex += dir;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\telse {\n\t\t\t\t\t\t\t\tnewItem = items[newIndex];\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} while(!newItem);\n\n\t\t\t\t\t\tif (newItem) {\n\t\t\t\t\t\t\tthis._handleItemFocus(newItem);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}));\n\t\t}\n\n\t\tthis._disposers.push($utils.addEventListener(iconElement, \"click\", (ev: MouseEvent) => {\n\t\t\tev.stopImmediatePropagation();\n\t\t\tthis.toggle();\n\t\t}));\n\n\t\tmenuElement.appendChild(this._iconElement);\n\t\tmenuElement.appendChild(this._listElement);\n\n\t\tconst container = this.get(\"container\", this._root._inner);\n\n\t\tcontainer.appendChild(this._menuElement);\n\n\t\tthis._disposers.push($utils.addEventListener(menuElement, $utils.getRendererEvent(\"pointerover\"), (_ev) => {\n\t\t\tthis._isOver = true;\n\t\t\tif (this.get(\"deactivateRoot\")) {\n\t\t\t\tthis._root._renderer.interactionsEnabled = false;\n\t\t\t}\n\t\t}));\n\n\t\tthis._disposers.push($utils.addEventListener(menuElement, $utils.getRendererEvent(\"pointerout\"), (_ev) => {\n\t\t\tthis._isOver = false;\n\t\t\tif (this.get(\"deactivateRoot\")) {\n\t\t\t\tthis._root._renderer.interactionsEnabled = true;\n\t\t\t}\n\t\t}));\n\n\t\tthis._disposers.push(new Disposer(() => {\n\t\t\tif (this._menuElement) {\n\t\t\t\tcontainer.removeChild(this._menuElement);\n\t\t\t}\n\t\t}));\n\n\t\tthis._disposers.push($utils.addEventListener(document, \"click\", (_ev) => {\n\t\t\tif (this.isOpen && !this._isOver) {\n\t\t\t\tthis.close();\n\t\t\t}\n\t\t}));\n\n\t\tthis.loadDefaultCSS();\n\n\t\tthis._root.addDisposer(this);\n\n\t\tthis.events.dispatch(\"menucreated\", {\n\t\t\ttype: \"menucreated\",\n\t\t\ttarget: this\n\t\t});\n\t}\n\n\tpublic _afterChanged() {\n\t\tsuper._afterChanged();\n\n\t\tif (this._itemElements!.length == 0) {\n\t\t\tthis.createItems();\n\t\t}\n\n\t\tif (this.isDirty(\"useDefaultCSS\")) {\n\t\t\tif (this.get(\"useDefaultCSS\")) {\n\t\t\t\tthis.loadDefaultCSS();\n\t\t\t}\n\t\t\telse if (this._cssDisposer) {\n\t\t\t\tthis._cssDisposer.dispose();\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"exporting\")) {\n\t\t\tconst exporting = this.get(\"exporting\");\n\t\t\tif (exporting) {\n\t\t\t\tthis.createItems();\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"align\") || this.isDirty(\"valign\")) {\n\t\t\tthis._applyClassNames();\n\t\t}\n\n\t\tif (this.isDirty(\"container\")) {\n\t\t\tconst container = this.get(\"container\");\n\t\t\tif (container) {\n\t\t\t\tcontainer.appendChild(this._menuElement!);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected _dispose(): void {\n\t\tsuper._dispose();\n\n\t\t$array.each(this._itemDisposers, (x) => {\n\t\t\tx.dispose();\n\t\t});\n\t}\n\n\tprivate _applyClassNames(): void {\n\t\tconst align = this.get(\"align\", \"right\");\n\t\tconst valign = this.get(\"valign\", \"top\");\n\t\tconst status = this.isOpen ? \"am5exporting-menu-open\" : \"am5exporting-menu-closed\";\n\n\t\tthis._menuElement!.className = \"am5exporting am5exporting-menu am5exporting-align-\" + align + \" am5exporting-valign-\" + valign + \" \" + status;\n\t\tthis._iconElement!.className = \"am5exporting am5exporting-icon am5exporting-align-\" + align + \" am5exporting-valign-\" + valign;\n\t\tthis._listElement!.className = \"am5exporting am5exporting-list am5exporting-align-\" + align + \" am5exporting-valign-\" + valign;\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic createItems(): void {\n\t\tconst exporting = this.get(\"exporting\");\n\t\tif (!exporting) {\n\t\t\treturn;\n\t\t}\n\t\tthis._listElement!.innerHTML = \"\";\n\t\tthis._itemElements = [];\n\t\tconst items = this.get(\"items\", []);\n\t\tconst supportedFormats = exporting.supportedFormats();\n\t\tconst supportedExportTypes = exporting.supportedExportTypes();\n\n\t\t$array.each(this._itemDisposers, (x) => {\n\t\t\tx.dispose();\n\t\t});\n\n\t\tthis._itemDisposers.length = 0;\n\n\t\t$array.each(items, (item) => {\n\n\t\t\tif (item.format && supportedFormats.indexOf(item.format) == -1) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (item.exportType && supportedExportTypes.indexOf(item.exportType) == -1) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst li = document.createElement(\"li\");\n\t\t\tli.setAttribute(\"role\", \"menuitem\");\n\n\t\t\tli.className = \"am5exporting am5exporting-item am5exporting-type-\" + item.type;\n\t\t\tif (item.format) {\n\t\t\t\tli.className += \" am5exporting-format-\" + item.format;\n\t\t\t}\n\n\t\t\tconst a = document.createElement(\"a\");\n\n\t\t\tlet ariaLabel = this._t(\"Export\");\n\t\t\tif (item.label) {\n\t\t\t\ta.innerHTML = item.label;\n\t\t\t\tariaLabel += \" \" + item.label;\n\t\t\t}\n\n\t\t\tif (item.sublabel) {\n\t\t\t\ta.innerHTML += \" <span class=\\\"am5exporting-label-alt\\\">\" + item.sublabel + \"</span>\";\n\t\t\t\tariaLabel += \" (\" + item.sublabel + \")\";\n\t\t\t}\n\n\t\t\tif (item.callback) {\n\t\t\t\tthis._itemDisposers.push($utils.addEventListener(a, \"click\", (_ev) => {\n\t\t\t\t\titem.callback!.call(item.callbackTarget || this)\n\t\t\t\t}));\n\t\t\t\ta.setAttribute(\"tabindex\", this._root.tabindex.toString());\n\t\t\t}\n\t\t\telse if (item.format && exporting) {\n\t\t\t\tthis._itemDisposers.push($utils.addEventListener(a, \"click\", (_ev) => {\n\t\t\t\t\tthis._handleClick(item);\n\t\t\t\t}));\n\t\t\t\tthis._itemDisposers.push($utils.addEventListener(a, \"focus\", (_ev) => {\n\t\t\t\t\tthis._handleItemFocus(item);\n\t\t\t\t}));\n\t\t\t\tthis._itemDisposers.push($utils.addEventListener(a, \"blur\", (_ev) => {\n\t\t\t\t\tthis._handleItemBlur(item);\n\t\t\t\t}));\n\t\t\t\ta.setAttribute(\"tabindex\", this._root.tabindex.toString());\n\t\t\t\ta.setAttribute(\"aria-label\", ariaLabel);\n\t\t\t}\n\n\t\t\titem.element = a;\n\t\t\tli.appendChild(a);\n\t\t\tthis._listElement!.appendChild(li);\n\t\t\tthis._itemElements!.push(li);\n\t\t});\n\t}\n\n\tprivate _handleClick(item: IExportingMenuItem): void {\n\t\tconst exporting = this.get(\"exporting\")!;\n\t\tif (this.get(\"autoClose\")) {\n\t\t\tthis.close();\n\t\t}\n\t\tif (item.format == \"print\") {\n\t\t\texporting.print();\n\t\t}\n\t\telse {\n\t\t\texporting.download(item.format!);\n\t\t}\n\t}\n\n\tprivate _handleItemFocus(item: IExportingMenuItem): void {\n\t\tif (item != this._activeItem) {\n\t\t\tif (this._activeItem) {\n\t\t\t\tthis._activeItem.element!.className = \"\";\n\t\t\t}\n\t\t\tthis._activeItem = item;\n\t\t\titem.element!.className = \"am5exporting-item-active\";\n\t\t\titem.element!.focus();\n\t\t}\n\t}\n\n\tprivate _handleItemBlur(item: IExportingMenuItem): void {\n\t\titem.element!.className = \"\";\n\t\tif (item == this._activeItem) {\n\t\t\tthis._activeItem = undefined\n\t\t}\n\t\tthis.setTimeout(() => {\n\t\t\tif (!document.activeElement || !$utils.contains(this.get(\"container\")!, document.activeElement!)) {\n\t\t\t\tthis.close();\n\t\t\t}\n\t\t}, 10);\n\n\t}\n\n\t/**\n\t * Loads the default CSS.\n\t *\n\t * @ignore Exclude from docs\n\t */\n\tpublic loadDefaultCSS(): void {\n\t\tconst disposer = exportingCSS($utils.getShadowRoot(this._root.dom), this._root);\n\t\tthis._disposers.push(disposer);\n\t\tthis._cssDisposer = disposer;\n\n\t\t// if (this._element) {\n\t\t// \tthis._element.style.display = \"\";\n\t\t// }\n\t}\n\n\t/**\n\t * Opens menu.\n\t */\n\tpublic open(): void {\n\t\tthis.isOpen = true;\n\t\tthis._applyClassNames();\n\t\tthis.events.dispatch(\"menuopened\", {\n\t\t\ttype: \"menuopened\",\n\t\t\ttarget: this\n\t\t});\n\t}\n\n\t/**\n\t * Closes menu.\n\t */\n\tpublic close(): void {\n\t\tthis.isOpen = false;\n\t\t$utils.blur();\n\t\tthis._applyClassNames();\n\t\tthis.events.dispatch(\"menuclosed\", {\n\t\t\ttype: \"menuclosed\",\n\t\t\ttarget: this\n\t\t});\n\t}\n\n\t/**\n\t * Toggles menu open and close.\n\t */\n\tpublic toggle(): void {\n\t\tif (this.isOpen) {\n\t\t\tthis.close();\n\t\t}\n\t\telse {\n\t\t\tthis.open();\n\t\t}\n\t}\n\n\n}\n"]}
1
+ {"version":3,"file":"ExportingMenu.js","sourceRoot":"","sources":["../../../../../src/.internal/plugins/exporting/ExportingMenu.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Exporting, ExportingFormats, ExportingTypes } from \"./Exporting\"\n\nimport { Entity, IEntitySettings, IEntityPrivate, IEntityEvents } from \"../../core/util/Entity\"\nimport { IDisposer, Disposer } from \"../../core/util/Disposer\";\nimport exportingCSS from \"./ExportingCSS\";\n\nimport * as $array from \"../../core/util/Array\";\nimport * as $utils from \"../../core/util/Utils\";\n\nexport interface IExportingMenuItem {\n\n\t/**\n\t * Indicates type of the menu item:\n\t * * `\"format\"` - indicates export action\n\t * * `\"separator\"` - will show horizontal divider.\n\t * * `\"custom\"` - will invoke custom function when clicked.\n\t */\n\ttype: \"format\" | \"separator\" | \"custom\";\n\n\t/**\n\t * If `type` is set to `\"format\"`, clicking item will initiate export in\n\t * that format.\n\t */\n\tformat?: ExportingFormats;\n\n\t/**\n\t * Indicates export type: `\"image\"`, `\"data\"`, or `\"print\"`.\n\t */\n\texportType?: ExportingTypes;\n\n\t/**\n\t * Menu label.\n\t */\n\tlabel?: string;\n\n\t/**\n\t * Additional information.\n\t */\n\tsublabel?: string;\n\n\t/**\n\t * If `type` is set to `\"custom\"`, this needs to be set to a function.\n\t */\n\tcallback?: (menuItem?: any) => any;\n\n\t/**\n\t * A target for callback function.\n\t */\n\tcallbackTarget?: any;\n\n\t/**\n\t * A DOM element for the menu item.\n\t *\n\t * @readonly\n\t */\n\telement?: HTMLAnchorElement;\n\n}\n\nexport interface IExportingMenuSettings extends IEntitySettings {\n\n\t/**\n\t * Horizontal alignment of the menu.\n\t *\n\t * @default \"right\"\n\t */\n\talign?: \"left\" | \"right\";\n\n\t/**\n\t * Vertical alignment of the menu.\n\t *\n\t * @default \"top\"\n\t */\n\tvalign?: \"top\" | \"bottom\";\n\n\t/**\n\t * A reference to an element in the document to place export menu in.\n\t *\n\t * If not set, will use root element's container.\n\t */\n\tcontainer?: HTMLElement;\n\n\t/**\n\t * A list of menu items.\n\t */\n\titems?: IExportingMenuItem[];\n\n\t/**\n\t * A reference to related [[Exporting]] object.\n\t */\n\texporting?: Exporting;\n\n\t/**\n\t * If set to `false` the legend will not load default CSS.\n\t *\n\t * @default true\n\t */\n\tuseDefaultCSS?: boolean;\n\n\t/**\n\t * If set to `true` the menu will close automatically when export operation\n\t * is initiated.\n\t *\n\t * @default true\n\t */\n\tautoClose?: boolean;\n\n\t/**\n\t * Menu will disable all interactions for the underlying chart when browsing\n\t * the menu.\n\t *\n\t * @default true\n\t */\n\tdeactivateRoot?: boolean;\n\n}\n\nexport interface IExportingMenuPrivate extends IEntityPrivate {\n}\n\nexport interface IExportingMenuEvents extends IEntityEvents {\n\t\"menucreated\": {}\n\t\"menuopened\": {}\n\t\"menuclosed\": {}\n}\n\n/**\n * Displays a menu for [[Exporting]].\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/exporting/} for more info\n */\nexport class ExportingMenu extends Entity {\n\tpublic static className: string = \"ExportingMenu\";\n\tpublic static classNames: Array<string> = Entity.classNames.concat([ExportingMenu.className]);\n\n\tdeclare public _settings: IExportingMenuSettings;\n\tdeclare public _privateSettings: IExportingMenuPrivate;\n\tdeclare public _events: IExportingMenuEvents;\n\n\tprivate _menuElement?: HTMLDivElement;\n\tprivate _iconElement?: HTMLElement;\n\tprivate _listElement?: HTMLUListElement;\n\tprivate _itemElements?: HTMLLIElement[] = [];\n\tprivate _itemDisposers: Array<IDisposer> = [];\n\n\tprivate _cssDisposer?: IDisposer;\n\tprivate _activeItem?: IExportingMenuItem;\n\n\tpublic isOpen: boolean = false;\n\n\tprivate _isOver: boolean = false;\n\n\tprotected _afterNew() {\n\t\tsuper._afterNew();\n\t\tthis._setRawDefault(\"container\", this._root._inner);\n\t\tthis._setRawDefault(\"align\", \"right\");\n\t\tthis._setRawDefault(\"valign\", \"top\");\n\t\tthis._setRawDefault(\"useDefaultCSS\", true);\n\t\tthis._setRawDefault(\"autoClose\", true);\n\t\tthis._setRawDefault(\"deactivateRoot\", true);\n\t\tthis._setRawDefault(\"items\", [{\n\t\t\ttype: \"separator\",\n\t\t\tlabel: this._t(\"Export\")\n\t\t}, {\n\t\t\ttype: \"format\",\n\t\t\tformat: \"png\",\n\t\t\texportType: \"image\",\n\t\t\tlabel: this._t(\"PNG\"),\n\t\t\tsublabel: this._t(\"Image\")\n\t\t}, {\n\t\t\ttype: \"format\",\n\t\t\tformat: \"jpg\",\n\t\t\texportType: \"image\",\n\t\t\tlabel: this._t(\"JPG\"),\n\t\t\tsublabel: this._t(\"Image\")\n\t\t}, {\n\t\t\ttype: \"format\",\n\t\t\tformat: \"pdf\",\n\t\t\texportType: \"image\",\n\t\t\tlabel: this._t(\"PDF\"),\n\t\t\tsublabel: this._t(\"Image\")\n\t\t}, {\n\t\t\ttype: \"separator\",\n\t\t\texportType: \"data\",\n\t\t\t//label: this._t(\"Data\")\n\t\t}, {\n\t\t\ttype: \"format\",\n\t\t\tformat: \"json\",\n\t\t\texportType: \"data\",\n\t\t\tlabel: this._t(\"JSON\"),\n\t\t\tsublabel: this._t(\"Data\")\n\t\t}, {\n\t\t\ttype: \"format\",\n\t\t\tformat: \"csv\",\n\t\t\texportType: \"data\",\n\t\t\tlabel: this._t(\"CSV\"),\n\t\t\tsublabel: this._t(\"Data\")\n\t\t}, {\n\t\t\ttype: \"format\",\n\t\t\tformat: \"xlsx\",\n\t\t\texportType: \"data\",\n\t\t\tlabel: this._t(\"XLSX\"),\n\t\t\tsublabel: this._t(\"Data\")\n\t\t}, {\n\t\t\ttype: \"format\",\n\t\t\tformat: \"pdfdata\",\n\t\t\texportType: \"data\",\n\t\t\tlabel: this._t(\"PDF\"),\n\t\t\tsublabel: this._t(\"Data\")\n\t\t}, {\n\t\t\ttype: \"format\",\n\t\t\tformat: \"html\",\n\t\t\texportType: \"data\",\n\t\t\tlabel: this._t(\"HTML\"),\n\t\t\tsublabel: this._t(\"Data\")\n\t\t}, {\n\t\t\ttype: \"separator\"\n\t\t}, {\n\t\t\ttype: \"format\",\n\t\t\tformat: \"print\",\n\t\t\texportType: \"print\",\n\t\t\tlabel: this._t(\"Print\")\n\t\t}]);\n\n\t\tconst menuElement = document.createElement(\"div\");\n\t\tthis._menuElement = menuElement;\n\n\t\tconst iconElement = document.createElement(\"a\");\n\t\tthis._iconElement = iconElement;\n\n\t\tthis._listElement = document.createElement(\"ul\");\n\t\tthis._listElement.setAttribute(\"role\", \"menu\");\n\t\tthis._applyClassNames();\n\n\t\ticonElement.innerHTML = '<svg fill=\"none\" height=\"20\" width=\"20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M6 10a2 2 0 11-4 0 2 2 0 014 0zM12 10a2 2 0 11-4 0 2 2 0 014 0zM16 12a2 2 0 100-4 2 2 0 000 4z\"/></svg>';\n\t\ticonElement.setAttribute(\"tabindex\", this._root.tabindex.toString());\n\t\ticonElement.setAttribute(\"aria-label\", this._t(\"Export\"));\n\t\ticonElement.setAttribute(\"aria-description\", this._t(\"Press ENTER to open\"));\n\n\t\tif ($utils.supports(\"keyboardevents\")) {\n\t\t\tthis._disposers.push($utils.addEventListener(document, \"keydown\", (ev: KeyboardEvent) => {\n\t\t\t\tif (document.activeElement == this._iconElement || this.isOpen) {\n\t\t\t\t\tif (ev.keyCode == 27) {\n\t\t\t\t\t\t// ESC\n\t\t\t\t\t\tthis.close();\n\t\t\t\t\t}\n\t\t\t\t\telse if (ev.keyCode == 13) {\n\t\t\t\t\t\t// ENTER\n\t\t\t\t\t\tif (this._activeItem) {\n\t\t\t\t\t\t\tthis._handleClick(this._activeItem);\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tthis.toggle();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\telse if (ev.keyCode == 38 || ev.keyCode == 40) {\n\t\t\t\t\t\tconst items = this.get(\"items\", []);\n\t\t\t\t\t\tlet currentIndex = (<any>items).indexOf(this._activeItem);\n\t\t\t\t\t\tif (this.get(\"valign\") == \"top\" && currentIndex == -1) {\n\t\t\t\t\t\t\tcurrentIndex = items.length;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst dir = ev.keyCode == 38 ? -1 : 1;\n\t\t\t\t\t\tlet newIndex = currentIndex + dir;\n\t\t\t\t\t\tlet newItem;\n\t\t\t\t\t\tdo {\n\t\t\t\t\t\t\tif (newIndex < 0) {\n\t\t\t\t\t\t\t\tnewIndex = items.length - 1;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\telse if (newIndex > (items.length - 1)) {\n\t\t\t\t\t\t\t\tnewIndex = 0;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (items[newIndex].type == \"separator\") {\n\t\t\t\t\t\t\t\tnewIndex += dir;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\telse {\n\t\t\t\t\t\t\t\tnewItem = items[newIndex];\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} while(!newItem);\n\n\t\t\t\t\t\tif (newItem) {\n\t\t\t\t\t\t\tthis._handleItemFocus(newItem);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}));\n\t\t}\n\n\t\tthis._disposers.push($utils.addEventListener(iconElement, \"click\", (ev: MouseEvent) => {\n\t\t\tev.stopImmediatePropagation();\n\t\t\tthis.toggle();\n\t\t}));\n\n\t\tmenuElement.appendChild(this._iconElement);\n\t\tmenuElement.appendChild(this._listElement);\n\n\t\tconst container = this.get(\"container\", this._root._inner);\n\n\t\tcontainer.appendChild(this._menuElement);\n\n\t\tthis._disposers.push($utils.addEventListener(menuElement, $utils.getRendererEvent(\"pointerover\"), (_ev) => {\n\t\t\tthis._isOver = true;\n\t\t\tif (this.get(\"deactivateRoot\")) {\n\t\t\t\tthis._root._renderer.interactionsEnabled = false;\n\t\t\t}\n\t\t}));\n\n\t\tthis._disposers.push($utils.addEventListener(menuElement, $utils.getRendererEvent(\"pointerout\"), (_ev) => {\n\t\t\tthis._isOver = false;\n\t\t\tif (this.get(\"deactivateRoot\") && this.isOpen) {\n\t\t\t\tthis._root._renderer.interactionsEnabled = true;\n\t\t\t}\n\t\t}));\n\n\t\tthis._disposers.push(new Disposer(() => {\n\t\t\tif (this._menuElement) {\n\t\t\t\tcontainer.removeChild(this._menuElement);\n\t\t\t}\n\t\t}));\n\n\t\tthis._disposers.push($utils.addEventListener(document, \"click\", (_ev) => {\n\t\t\tif (this.isOpen && !this._isOver) {\n\t\t\t\tthis.close();\n\t\t\t}\n\t\t}));\n\n\t\tthis.loadDefaultCSS();\n\n\t\tthis._root.addDisposer(this);\n\n\t\tthis.events.dispatch(\"menucreated\", {\n\t\t\ttype: \"menucreated\",\n\t\t\ttarget: this\n\t\t});\n\t}\n\n\tpublic _afterChanged() {\n\t\tsuper._afterChanged();\n\n\t\tif (this._itemElements!.length == 0) {\n\t\t\tthis.createItems();\n\t\t}\n\n\t\tif (this.isDirty(\"useDefaultCSS\")) {\n\t\t\tif (this.get(\"useDefaultCSS\")) {\n\t\t\t\tthis.loadDefaultCSS();\n\t\t\t}\n\t\t\telse if (this._cssDisposer) {\n\t\t\t\tthis._cssDisposer.dispose();\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"exporting\")) {\n\t\t\tconst exporting = this.get(\"exporting\");\n\t\t\tif (exporting) {\n\t\t\t\tthis.createItems();\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"align\") || this.isDirty(\"valign\")) {\n\t\t\tthis._applyClassNames();\n\t\t}\n\n\t\tif (this.isDirty(\"container\")) {\n\t\t\tconst container = this.get(\"container\");\n\t\t\tif (container) {\n\t\t\t\tcontainer.appendChild(this._menuElement!);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected _dispose(): void {\n\t\tsuper._dispose();\n\n\t\t$array.each(this._itemDisposers, (x) => {\n\t\t\tx.dispose();\n\t\t});\n\t}\n\n\tprivate _applyClassNames(): void {\n\t\tconst align = this.get(\"align\", \"right\");\n\t\tconst valign = this.get(\"valign\", \"top\");\n\t\tconst status = this.isOpen ? \"am5exporting-menu-open\" : \"am5exporting-menu-closed\";\n\n\t\tthis._menuElement!.className = \"am5exporting am5exporting-menu am5exporting-align-\" + align + \" am5exporting-valign-\" + valign + \" \" + status;\n\t\tthis._iconElement!.className = \"am5exporting am5exporting-icon am5exporting-align-\" + align + \" am5exporting-valign-\" + valign;\n\t\tthis._listElement!.className = \"am5exporting am5exporting-list am5exporting-align-\" + align + \" am5exporting-valign-\" + valign;\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic createItems(): void {\n\t\tconst exporting = this.get(\"exporting\");\n\t\tif (!exporting) {\n\t\t\treturn;\n\t\t}\n\t\tthis._listElement!.innerHTML = \"\";\n\t\tthis._itemElements = [];\n\t\tconst items = this.get(\"items\", []);\n\t\tconst supportedFormats = exporting.supportedFormats();\n\t\tconst supportedExportTypes = exporting.supportedExportTypes();\n\n\t\t$array.each(this._itemDisposers, (x) => {\n\t\t\tx.dispose();\n\t\t});\n\n\t\tthis._itemDisposers.length = 0;\n\n\t\t$array.each(items, (item) => {\n\n\t\t\tif (item.format && supportedFormats.indexOf(item.format) == -1) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (item.exportType && supportedExportTypes.indexOf(item.exportType) == -1) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst li = document.createElement(\"li\");\n\t\t\tli.setAttribute(\"role\", \"menuitem\");\n\n\t\t\tli.className = \"am5exporting am5exporting-item am5exporting-type-\" + item.type;\n\t\t\tif (item.format) {\n\t\t\t\tli.className += \" am5exporting-format-\" + item.format;\n\t\t\t}\n\n\t\t\tconst a = document.createElement(\"a\");\n\n\t\t\tlet ariaLabel = this._t(\"Export\");\n\t\t\tif (item.label) {\n\t\t\t\ta.innerHTML = item.label;\n\t\t\t\tariaLabel += \" \" + item.label;\n\t\t\t}\n\n\t\t\tif (item.sublabel) {\n\t\t\t\ta.innerHTML += \" <span class=\\\"am5exporting-label-alt\\\">\" + item.sublabel + \"</span>\";\n\t\t\t\tariaLabel += \" (\" + item.sublabel + \")\";\n\t\t\t}\n\n\t\t\tif (item.callback) {\n\t\t\t\tthis._itemDisposers.push($utils.addEventListener(a, \"click\", (_ev) => {\n\t\t\t\t\titem.callback!.call(item.callbackTarget || this)\n\t\t\t\t}));\n\t\t\t\ta.setAttribute(\"tabindex\", this._root.tabindex.toString());\n\t\t\t}\n\t\t\telse if (item.format && exporting) {\n\t\t\t\tthis._itemDisposers.push($utils.addEventListener(a, \"click\", (_ev) => {\n\t\t\t\t\tthis._handleClick(item);\n\t\t\t\t}));\n\t\t\t\tthis._itemDisposers.push($utils.addEventListener(a, \"focus\", (_ev) => {\n\t\t\t\t\tthis._handleItemFocus(item);\n\t\t\t\t}));\n\t\t\t\tthis._itemDisposers.push($utils.addEventListener(a, \"blur\", (_ev) => {\n\t\t\t\t\tthis._handleItemBlur(item);\n\t\t\t\t}));\n\t\t\t\ta.setAttribute(\"tabindex\", this._root.tabindex.toString());\n\t\t\t\ta.setAttribute(\"aria-label\", ariaLabel);\n\t\t\t}\n\n\t\t\titem.element = a;\n\t\t\tli.appendChild(a);\n\t\t\tthis._listElement!.appendChild(li);\n\t\t\tthis._itemElements!.push(li);\n\t\t});\n\t}\n\n\tprivate _handleClick(item: IExportingMenuItem): void {\n\t\tconst exporting = this.get(\"exporting\")!;\n\t\tif (this.get(\"autoClose\")) {\n\t\t\tthis.close();\n\t\t}\n\t\tif (item.format == \"print\") {\n\t\t\texporting.print();\n\t\t}\n\t\telse {\n\t\t\texporting.download(item.format!);\n\t\t}\n\t}\n\n\tprivate _handleItemFocus(item: IExportingMenuItem): void {\n\t\tif (item != this._activeItem) {\n\t\t\tif (this._activeItem) {\n\t\t\t\tthis._activeItem.element!.className = \"\";\n\t\t\t}\n\t\t\tthis._activeItem = item;\n\t\t\titem.element!.className = \"am5exporting-item-active\";\n\t\t\titem.element!.focus();\n\t\t}\n\t}\n\n\tprivate _handleItemBlur(item: IExportingMenuItem): void {\n\t\titem.element!.className = \"\";\n\t\tif (item == this._activeItem) {\n\t\t\tthis._activeItem = undefined\n\t\t}\n\t\tthis.setTimeout(() => {\n\t\t\tif (!document.activeElement || !$utils.contains(this.get(\"container\")!, document.activeElement!)) {\n\t\t\t\tthis.close();\n\t\t\t}\n\t\t}, 10);\n\n\t}\n\n\t/**\n\t * Loads the default CSS.\n\t *\n\t * @ignore Exclude from docs\n\t */\n\tpublic loadDefaultCSS(): void {\n\t\tconst disposer = exportingCSS($utils.getShadowRoot(this._root.dom), this._root);\n\t\tthis._disposers.push(disposer);\n\t\tthis._cssDisposer = disposer;\n\n\t\t// if (this._element) {\n\t\t// \tthis._element.style.display = \"\";\n\t\t// }\n\t}\n\n\t/**\n\t * Opens menu.\n\t */\n\tpublic open(): void {\n\t\tthis.isOpen = true;\n\t\tthis._applyClassNames();\n\t\tthis.events.dispatch(\"menuopened\", {\n\t\t\ttype: \"menuopened\",\n\t\t\ttarget: this\n\t\t});\n\t}\n\n\t/**\n\t * Closes menu.\n\t */\n\tpublic close(): void {\n\t\tthis.isOpen = false;\n\t\tif (this.get(\"deactivateRoot\")) {\n\t\t\tthis._root._renderer.interactionsEnabled = true;\n\t\t}\n\t\t$utils.blur();\n\t\tthis._applyClassNames();\n\t\tthis.events.dispatch(\"menuclosed\", {\n\t\t\ttype: \"menuclosed\",\n\t\t\ttarget: this\n\t\t});\n\t}\n\n\t/**\n\t * Toggles menu open and close.\n\t */\n\tpublic toggle(): void {\n\t\tif (this.isOpen) {\n\t\t\tthis.close();\n\t\t}\n\t\telse {\n\t\t\tthis.open();\n\t\t}\n\t}\n\n\n}\n"]}
package/CHANGELOG.md CHANGED
@@ -5,6 +5,16 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/).
5
5
  Please note, that this project, while following numbering syntax, it DOES NOT
6
6
  adhere to [Semantic Versioning](http://semver.org/spec/v2.0.0.html) rules.
7
7
 
8
+ ## [5.1.14] - 2022-04-22
9
+
10
+ ### Fixed
11
+ - `ValueAxis` with a logarithmic scale was not showing some of the labels in some specific cases.
12
+ - Moved `zoomOutButton` of `XYChart` to `topPlotContainer` to solve unwanted zoom when cursor's `snapToSeries` was set.
13
+ - Initially-hidden series legend markers were not being dimmed out unless Animated theme was in use.
14
+ - When whole series was out of selected scope, its last or first value (depending on seleciton) was still included when calculating min and max, causing chart not to adjust min/max values to a visible series scope.
15
+ - `Annotator` was not disabling chart interactivite when activated in Firefox.
16
+
17
+
8
18
  ## [5.1.13] - 2022-04-15
9
19
 
10
20
  ### Added
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-flow-chord",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.1.13",
6
+ "@amcharts/amcharts5": "^5.1.14",
7
7
  "source-map-loader": "^3.0.0",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^4.1.0",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-flow-chord-directed",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.1.13",
6
+ "@amcharts/amcharts5": "^5.1.14",
7
7
  "source-map-loader": "^3.0.0",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^4.1.0",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-flow-chord-non-ribbon",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.1.13",
6
+ "@amcharts/amcharts5": "^5.1.14",
7
7
  "source-map-loader": "^3.0.0",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^4.1.0",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-flow-sankey",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.1.13",
6
+ "@amcharts/amcharts5": "^5.1.14",
7
7
  "source-map-loader": "^3.0.0",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^4.1.0",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-gauge",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.1.13",
6
+ "@amcharts/amcharts5": "^5.1.14",
7
7
  "source-map-loader": "^3.0.0",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^4.1.0",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-gauge-bands",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.1.13",
6
+ "@amcharts/amcharts5": "^5.1.14",
7
7
  "source-map-loader": "^3.0.0",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^4.1.0",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-hierarchy-force-directed",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.1.13",
6
+ "@amcharts/amcharts5": "^5.1.14",
7
7
  "source-map-loader": "^3.0.0",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^4.1.0",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-hierarchy-pack",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.1.13",
6
+ "@amcharts/amcharts5": "^5.1.14",
7
7
  "source-map-loader": "^3.0.0",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^4.1.0",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-hierarchy-partition",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.1.13",
6
+ "@amcharts/amcharts5": "^5.1.14",
7
7
  "source-map-loader": "^3.0.0",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^4.1.0",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-hierarchy-sunburst",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.1.13",
6
+ "@amcharts/amcharts5": "^5.1.14",
7
7
  "source-map-loader": "^3.0.0",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^4.1.0",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-hierarchy-tree",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.1.13",
6
+ "@amcharts/amcharts5": "^5.1.14",
7
7
  "source-map-loader": "^3.0.0",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^4.1.0",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-hierarchy-treemap",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.1.13",
6
+ "@amcharts/amcharts5": "^5.1.14",
7
7
  "source-map-loader": "^3.0.0",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^4.1.0",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-json",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.1.13",
6
+ "@amcharts/amcharts5": "^5.1.14",
7
7
  "source-map-loader": "^3.0.0",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^4.1.0",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-map-animating-along-lines",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.1.13",
6
+ "@amcharts/amcharts5": "^5.1.14",
7
7
  "source-map-loader": "^3.0.0",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^4.1.0",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-map-day-and-night",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.1.13",
6
+ "@amcharts/amcharts5": "^5.1.14",
7
7
  "source-map-loader": "^3.0.0",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^4.1.0",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-map-globe-rotate-to-country",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.1.13",
6
+ "@amcharts/amcharts5": "^5.1.14",
7
7
  "source-map-loader": "^3.0.0",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^4.1.0",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-map-globe-with-projected-circles",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.1.13",
6
+ "@amcharts/amcharts5": "^5.1.14",
7
7
  "source-map-loader": "^3.0.0",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^4.1.0",
@@ -3,7 +3,7 @@
3
3
  "name": "amcharts5-example-map-with-bubbles",
4
4
  "version": "0.1.0",
5
5
  "devDependencies": {
6
- "@amcharts/amcharts5": "^5.1.13",
6
+ "@amcharts/amcharts5": "^5.1.14",
7
7
  "source-map-loader": "^3.0.0",
8
8
  "webpack": "^5.1.3",
9
9
  "webpack-cli": "^4.1.0",