@amcharts/amcharts5 5.9.13 → 5.10.0

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 (247) hide show
  1. package/.internal/charts/flow/ArcDiagramNodes.d.ts.map +1 -1
  2. package/.internal/charts/flow/ArcDiagramNodes.js +2 -0
  3. package/.internal/charts/flow/ArcDiagramNodes.js.map +1 -1
  4. package/.internal/charts/flow/ChordNodes.d.ts.map +1 -1
  5. package/.internal/charts/flow/ChordNodes.js +2 -0
  6. package/.internal/charts/flow/ChordNodes.js.map +1 -1
  7. package/.internal/charts/flow/FlowNodes.d.ts +17 -1
  8. package/.internal/charts/flow/FlowNodes.d.ts.map +1 -1
  9. package/.internal/charts/flow/FlowNodes.js +13 -0
  10. package/.internal/charts/flow/FlowNodes.js.map +1 -1
  11. package/.internal/charts/flow/SankeyNodes.d.ts.map +1 -1
  12. package/.internal/charts/flow/SankeyNodes.js +2 -0
  13. package/.internal/charts/flow/SankeyNodes.js.map +1 -1
  14. package/.internal/charts/funnel/FunnelSeries.d.ts.map +1 -1
  15. package/.internal/charts/funnel/FunnelSeries.js +2 -0
  16. package/.internal/charts/funnel/FunnelSeries.js.map +1 -1
  17. package/.internal/charts/hierarchy/Hierarchy.d.ts +16 -0
  18. package/.internal/charts/hierarchy/Hierarchy.d.ts.map +1 -1
  19. package/.internal/charts/hierarchy/Hierarchy.js +25 -4
  20. package/.internal/charts/hierarchy/Hierarchy.js.map +1 -1
  21. package/.internal/charts/hierarchy/LinkedHierarchy.d.ts.map +1 -1
  22. package/.internal/charts/hierarchy/LinkedHierarchy.js +5 -0
  23. package/.internal/charts/hierarchy/LinkedHierarchy.js.map +1 -1
  24. package/.internal/charts/hierarchy/Pack.d.ts.map +1 -1
  25. package/.internal/charts/hierarchy/Pack.js +2 -0
  26. package/.internal/charts/hierarchy/Pack.js.map +1 -1
  27. package/.internal/charts/hierarchy/Partition.d.ts.map +1 -1
  28. package/.internal/charts/hierarchy/Partition.js +2 -0
  29. package/.internal/charts/hierarchy/Partition.js.map +1 -1
  30. package/.internal/charts/hierarchy/Sunburst.d.ts.map +1 -1
  31. package/.internal/charts/hierarchy/Sunburst.js +2 -0
  32. package/.internal/charts/hierarchy/Sunburst.js.map +1 -1
  33. package/.internal/charts/hierarchy/Treemap.d.ts.map +1 -1
  34. package/.internal/charts/hierarchy/Treemap.js +2 -0
  35. package/.internal/charts/hierarchy/Treemap.js.map +1 -1
  36. package/.internal/charts/hierarchy/VoronoiTreemap.d.ts.map +1 -1
  37. package/.internal/charts/hierarchy/VoronoiTreemap.js +2 -0
  38. package/.internal/charts/hierarchy/VoronoiTreemap.js.map +1 -1
  39. package/.internal/charts/percent/PercentSeries.d.ts +16 -0
  40. package/.internal/charts/percent/PercentSeries.d.ts.map +1 -1
  41. package/.internal/charts/percent/PercentSeries.js +13 -0
  42. package/.internal/charts/percent/PercentSeries.js.map +1 -1
  43. package/.internal/charts/pie/PieSeries.d.ts.map +1 -1
  44. package/.internal/charts/pie/PieSeries.js +2 -0
  45. package/.internal/charts/pie/PieSeries.js.map +1 -1
  46. package/.internal/charts/stock/indicators/ChartIndicator.js +2 -2
  47. package/.internal/charts/stock/indicators/ChartIndicator.js.map +1 -1
  48. package/.internal/charts/venn/Venn.d.ts +19 -3
  49. package/.internal/charts/venn/Venn.d.ts.map +1 -1
  50. package/.internal/charts/venn/Venn.js +13 -0
  51. package/.internal/charts/venn/Venn.js.map +1 -1
  52. package/.internal/charts/xy/XYChart.d.ts +1 -1
  53. package/.internal/charts/xy/XYChart.d.ts.map +1 -1
  54. package/.internal/charts/xy/XYChart.js +7 -0
  55. package/.internal/charts/xy/XYChart.js.map +1 -1
  56. package/.internal/charts/xy/series/BaseColumnSeries.d.ts.map +1 -1
  57. package/.internal/charts/xy/series/BaseColumnSeries.js +5 -0
  58. package/.internal/charts/xy/series/BaseColumnSeries.js.map +1 -1
  59. package/.internal/charts/xy/series/LineSeries.d.ts.map +1 -1
  60. package/.internal/charts/xy/series/LineSeries.js +8 -0
  61. package/.internal/charts/xy/series/LineSeries.js.map +1 -1
  62. package/.internal/core/Classes.d.ts +2 -0
  63. package/.internal/core/Classes.d.ts.map +1 -1
  64. package/.internal/core/Classes.js.map +1 -1
  65. package/.internal/core/Registry.js +1 -1
  66. package/.internal/core/Registry.js.map +1 -1
  67. package/.internal/core/render/Component.d.ts +12 -4
  68. package/.internal/core/render/Component.d.ts.map +1 -1
  69. package/.internal/core/render/Component.js +14 -6
  70. package/.internal/core/render/Component.js.map +1 -1
  71. package/.internal/core/render/SerialChart.d.ts +9 -1
  72. package/.internal/core/render/SerialChart.d.ts.map +1 -1
  73. package/.internal/core/render/SerialChart.js +4 -0
  74. package/.internal/core/render/SerialChart.js.map +1 -1
  75. package/.internal/core/render/Series.d.ts +12 -4
  76. package/.internal/core/render/Series.d.ts.map +1 -1
  77. package/.internal/core/render/Series.js +4 -3
  78. package/.internal/core/render/Series.js.map +1 -1
  79. package/.internal/core/render/Sprite.d.ts.map +1 -1
  80. package/.internal/core/render/Sprite.js +45 -39
  81. package/.internal/core/render/Sprite.js.map +1 -1
  82. package/.internal/core/util/DurationFormatter.d.ts.map +1 -1
  83. package/.internal/core/util/DurationFormatter.js +9 -2
  84. package/.internal/core/util/DurationFormatter.js.map +1 -1
  85. package/.internal/core/util/PatternSet.d.ts +91 -0
  86. package/.internal/core/util/PatternSet.d.ts.map +1 -0
  87. package/.internal/core/util/PatternSet.js +236 -0
  88. package/.internal/core/util/PatternSet.js.map +1 -0
  89. package/.internal/plugins/json/Classes-script.d.ts +2 -0
  90. package/.internal/plugins/json/Classes-script.d.ts.map +1 -1
  91. package/.internal/plugins/json/Classes-script.js +1 -0
  92. package/.internal/plugins/json/Classes-script.js.map +1 -1
  93. package/.internal/plugins/json/Classes.d.ts +2 -0
  94. package/.internal/plugins/json/Classes.d.ts.map +1 -1
  95. package/.internal/plugins/json/Classes.js +1 -0
  96. package/.internal/plugins/json/Classes.js.map +1 -1
  97. package/.internal/themes/DefaultTheme.d.ts.map +1 -1
  98. package/.internal/themes/DefaultTheme.js +7 -0
  99. package/.internal/themes/DefaultTheme.js.map +1 -1
  100. package/CHANGELOG.md +18 -1
  101. package/examples/javascript/flow-arc-horizontal/package.json +1 -1
  102. package/examples/javascript/flow-arc-vertical/package.json +1 -1
  103. package/examples/javascript/flow-chord/package.json +1 -1
  104. package/examples/javascript/flow-chord-directed/package.json +1 -1
  105. package/examples/javascript/flow-chord-non-ribbon/package.json +1 -1
  106. package/examples/javascript/flow-sankey/package.json +1 -1
  107. package/examples/javascript/gauge/package.json +1 -1
  108. package/examples/javascript/gauge-bands/package.json +1 -1
  109. package/examples/javascript/hierarchy-force-directed/package.json +1 -1
  110. package/examples/javascript/hierarchy-pack/package.json +1 -1
  111. package/examples/javascript/hierarchy-partition/package.json +1 -1
  112. package/examples/javascript/hierarchy-sunburst/package.json +1 -1
  113. package/examples/javascript/hierarchy-tree/package.json +1 -1
  114. package/examples/javascript/hierarchy-treemap/package.json +1 -1
  115. package/examples/javascript/hierarchy-voronoi-treemap/package.json +1 -1
  116. package/examples/javascript/jest/package.json +1 -1
  117. package/examples/javascript/json-pie/package.json +1 -1
  118. package/examples/javascript/json-xy/package.json +1 -1
  119. package/examples/javascript/map-animating-along-lines/package.json +1 -1
  120. package/examples/javascript/map-clustered-points/package.json +1 -1
  121. package/examples/javascript/map-day-and-night/package.json +1 -1
  122. package/examples/javascript/map-globe-rotate-to-country/package.json +1 -1
  123. package/examples/javascript/map-globe-with-projected-circles/package.json +1 -1
  124. package/examples/javascript/map-with-bubbles/package.json +1 -1
  125. package/examples/javascript/map-zoom-to-country/package.json +1 -1
  126. package/examples/javascript/misc-40-charts/package.json +1 -1
  127. package/examples/javascript/misc-microchart-grid/package.json +1 -1
  128. package/examples/javascript/pie-chart/package.json +1 -1
  129. package/examples/javascript/pie-donut-chart/package.json +1 -1
  130. package/examples/javascript/pie-variable-radius/package.json +1 -1
  131. package/examples/javascript/radar-column-iwatch-style/package.json +1 -1
  132. package/examples/javascript/radar-heat-map/package.json +1 -1
  133. package/examples/javascript/radar-line/package.json +1 -1
  134. package/examples/javascript/radar-time-line/package.json +1 -1
  135. package/examples/javascript/sliced-funnel/package.json +1 -1
  136. package/examples/javascript/sliced-pictorial-stacked/package.json +1 -1
  137. package/examples/javascript/sliced-pyramid/package.json +1 -1
  138. package/examples/javascript/stock-chart/package.json +1 -1
  139. package/examples/javascript/stock-chart-comparing-stocks/package.json +1 -1
  140. package/examples/javascript/stock-chart-data-granularity/package.json +1 -1
  141. package/examples/javascript/stock-chart-data-grouping/package.json +1 -1
  142. package/examples/javascript/stock-chart-intraday/package.json +1 -1
  143. package/examples/javascript/stock-chart-live/package.json +1 -1
  144. package/examples/javascript/stock-chart-volume-separate-panel/package.json +1 -1
  145. package/examples/javascript/venn-diagram/package.json +1 -1
  146. package/examples/javascript/wordcloud-with-data/package.json +1 -1
  147. package/examples/javascript/wordcloud-with-text/package.json +1 -1
  148. package/examples/javascript/xy-100-percent-stacked-column/package.json +1 -1
  149. package/examples/javascript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  150. package/examples/javascript/xy-bubble/package.json +1 -1
  151. package/examples/javascript/xy-candlestick/package.json +1 -1
  152. package/examples/javascript/xy-clustered-column/package.json +1 -1
  153. package/examples/javascript/xy-column/package.json +1 -1
  154. package/examples/javascript/xy-comparing-series-google-analytics-style/package.json +1 -1
  155. package/examples/javascript/xy-data-grouping/package.json +1 -1
  156. package/examples/javascript/xy-draggable-range/package.json +1 -1
  157. package/examples/javascript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  158. package/examples/javascript/xy-dumbbell plot/package.json +1 -1
  159. package/examples/javascript/xy-evenly-spaced-date-axis/package.json +1 -1
  160. package/examples/javascript/xy-line/package.json +1 -1
  161. package/examples/javascript/xy-line-highlight-on-legend-hover/package.json +1 -1
  162. package/examples/javascript/xy-live-data/package.json +1 -1
  163. package/examples/javascript/xy-multiple-synced-value-axes/package.json +1 -1
  164. package/examples/javascript/xy-ohlc/package.json +1 -1
  165. package/examples/javascript/xy-real-time-data-sorting/package.json +1 -1
  166. package/examples/javascript/xy-smoothed-line/package.json +1 -1
  167. package/examples/javascript/xy-stacked-and-clustered-column/package.json +1 -1
  168. package/examples/javascript/xy-stacked-column/package.json +1 -1
  169. package/examples/javascript/xy-stacked-step/package.json +1 -1
  170. package/examples/javascript/xy-stock/package.json +1 -1
  171. package/examples/javascript/xy-stock-comparing/package.json +1 -1
  172. package/examples/typescript/flow-arc-horizontal/package.json +1 -1
  173. package/examples/typescript/flow-arc-vertical/package.json +1 -1
  174. package/examples/typescript/flow-chord/package.json +1 -1
  175. package/examples/typescript/flow-chord-directed/package.json +1 -1
  176. package/examples/typescript/flow-chord-non-ribbon/package.json +1 -1
  177. package/examples/typescript/flow-sankey/package.json +1 -1
  178. package/examples/typescript/gauge/package.json +1 -1
  179. package/examples/typescript/gauge-bands/package.json +1 -1
  180. package/examples/typescript/hierarchy-force-directed/package.json +1 -1
  181. package/examples/typescript/hierarchy-pack/package.json +1 -1
  182. package/examples/typescript/hierarchy-partition/package.json +1 -1
  183. package/examples/typescript/hierarchy-sunburst/package.json +1 -1
  184. package/examples/typescript/hierarchy-tree/package.json +1 -1
  185. package/examples/typescript/hierarchy-treemap/package.json +1 -1
  186. package/examples/typescript/hierarchy-voronoi-treemap/package.json +1 -1
  187. package/examples/typescript/jest/package.json +1 -1
  188. package/examples/typescript/json-pie/package.json +1 -1
  189. package/examples/typescript/json-xy/package.json +1 -1
  190. package/examples/typescript/map-animating-along-lines/package.json +1 -1
  191. package/examples/typescript/map-clustered-points/package.json +1 -1
  192. package/examples/typescript/map-day-and-night/package.json +1 -1
  193. package/examples/typescript/map-globe-rotate-to-country/package.json +1 -1
  194. package/examples/typescript/map-globe-with-projected-circles/package.json +1 -1
  195. package/examples/typescript/map-with-bubbles/package.json +1 -1
  196. package/examples/typescript/map-zoom-to-country/package.json +1 -1
  197. package/examples/typescript/misc-40-charts/package.json +1 -1
  198. package/examples/typescript/misc-microchart-grid/package.json +1 -1
  199. package/examples/typescript/pie-chart/package.json +1 -1
  200. package/examples/typescript/pie-donut-chart/package.json +1 -1
  201. package/examples/typescript/pie-variable-radius/package.json +1 -1
  202. package/examples/typescript/radar-column-iwatch-style/package.json +1 -1
  203. package/examples/typescript/radar-heat-map/package.json +1 -1
  204. package/examples/typescript/radar-line/package.json +1 -1
  205. package/examples/typescript/radar-time-line/package.json +1 -1
  206. package/examples/typescript/sliced-funnel/package.json +1 -1
  207. package/examples/typescript/sliced-pictorial-stacked/package.json +1 -1
  208. package/examples/typescript/sliced-pyramid/package.json +1 -1
  209. package/examples/typescript/stock-chart/package.json +1 -1
  210. package/examples/typescript/stock-chart-comparing-stocks/package.json +1 -1
  211. package/examples/typescript/stock-chart-data-granularity/package.json +1 -1
  212. package/examples/typescript/stock-chart-data-grouping/package.json +1 -1
  213. package/examples/typescript/stock-chart-intraday/package.json +1 -1
  214. package/examples/typescript/stock-chart-live/package.json +1 -1
  215. package/examples/typescript/stock-chart-volume-separate-panel/package.json +1 -1
  216. package/examples/typescript/venn-diagram/package.json +1 -1
  217. package/examples/typescript/wordcloud-with-data/package.json +1 -1
  218. package/examples/typescript/wordcloud-with-text/package.json +1 -1
  219. package/examples/typescript/xy-100-percent-stacked-column/package.json +1 -1
  220. package/examples/typescript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  221. package/examples/typescript/xy-bubble/package.json +1 -1
  222. package/examples/typescript/xy-candlestick/package.json +1 -1
  223. package/examples/typescript/xy-clustered-column/package.json +1 -1
  224. package/examples/typescript/xy-column/package.json +1 -1
  225. package/examples/typescript/xy-comparing-series-google-analytics-style/package.json +1 -1
  226. package/examples/typescript/xy-data-grouping/package.json +1 -1
  227. package/examples/typescript/xy-draggable-range/package.json +1 -1
  228. package/examples/typescript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  229. package/examples/typescript/xy-dumbbell plot/package.json +1 -1
  230. package/examples/typescript/xy-evenly-spaced-date-axis/package.json +1 -1
  231. package/examples/typescript/xy-line/package.json +1 -1
  232. package/examples/typescript/xy-line-highlight-on-legend-hover/package.json +1 -1
  233. package/examples/typescript/xy-live-data/package.json +1 -1
  234. package/examples/typescript/xy-multiple-synced-value-axes/package.json +1 -1
  235. package/examples/typescript/xy-ohlc/package.json +1 -1
  236. package/examples/typescript/xy-real-time-data-sorting/package.json +1 -1
  237. package/examples/typescript/xy-smoothed-line/package.json +1 -1
  238. package/examples/typescript/xy-stacked-and-clustered-column/package.json +1 -1
  239. package/examples/typescript/xy-stacked-column/package.json +1 -1
  240. package/examples/typescript/xy-stacked-step/package.json +1 -1
  241. package/examples/typescript/xy-stock/package.json +1 -1
  242. package/examples/typescript/xy-stock-comparing/package.json +1 -1
  243. package/index.d.ts +1 -0
  244. package/index.d.ts.map +1 -1
  245. package/index.js +1 -0
  246. package/index.js.map +1 -1
  247. package/package.json +4 -1
@@ -72,11 +72,11 @@ export class ChartIndicator extends Indicator {
72
72
  const chart = stockChart.panels.push(StockPanel.new(root, { themeTags: this._themeTags }));
73
73
  chart.addTag("indicator");
74
74
  this.panel = chart;
75
- stockChart.panels.events.on("removeIndex", (e) => {
75
+ this.addDisposer(stockChart.panels.events.on("removeIndex", (e) => {
76
76
  if (e.oldValue == chart) {
77
77
  stockChart.indicators.removeValue(this);
78
78
  }
79
- });
79
+ }));
80
80
  const seriesXAxis = stockSeries.get("xAxis");
81
81
  // xAxis
82
82
  const xRenderer = AxisRendererX.new(root, {});
@@ -1 +1 @@
1
- {"version":3,"file":"ChartIndicator.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/indicators/ChartIndicator.ts"],"names":[],"mappings":"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","sourcesContent":["import type { XYSeries } from \"../../xy/series/XYSeries\";\r\nimport type { AxisRenderer } from \"../../xy/axes/AxisRenderer\";\r\n\r\nimport { Indicator, IIndicatorSettings, IIndicatorPrivate, IIndicatorEvents } from \"./Indicator\";\r\nimport { StockPanel } from \"../StockPanel\";\r\nimport { XYCursor } from \"../../xy/XYCursor\";\r\nimport { DateAxis } from \"../../xy/axes/DateAxis\";\r\nimport { GaplessDateAxis } from \"../../xy/axes/GaplessDateAxis\";\r\nimport { ValueAxis } from \"../../xy/axes/ValueAxis\";\r\nimport { AxisRendererX } from \"../../xy/axes/AxisRendererX\";\r\nimport { AxisRendererY } from \"../../xy/axes/AxisRendererY\";\r\nimport { Tooltip } from \"../../../core/render/Tooltip\";\r\nimport { StockLegend } from \"../StockLegend\";\r\n\r\n\r\nexport interface IChartIndicatorSettings extends IIndicatorSettings {\r\n}\r\n\r\nexport interface IChartIndicatorPrivate extends IIndicatorPrivate {\r\n}\r\n\r\nexport interface IChartIndicatorEvents extends IIndicatorEvents {\r\n}\r\n\r\n\r\n/**\r\n * A base class for chart-based [[StockChart]] indicators.\r\n *\r\n * @see {@link https://www.amcharts.com/docs/v5/charts/stock/indicators/} for more info\r\n */\r\nexport abstract class ChartIndicator extends Indicator {\r\n\tpublic static className: string = \"ChartIndicator\";\r\n\tpublic static classNames: Array<string> = Indicator.classNames.concat([ChartIndicator.className]);\r\n\r\n\tdeclare public _settings: IChartIndicatorSettings;\r\n\tdeclare public _privateSettings: IChartIndicatorPrivate;\r\n\tdeclare public _events: IChartIndicatorEvents;\r\n\r\n\tpublic panel!: StockPanel;\r\n\tpublic xAxis!: DateAxis<AxisRenderer>;\r\n\tpublic yAxis!: ValueAxis<AxisRenderer>;\r\n\tpublic cursor!: XYCursor;\r\n\tpublic legend!: StockLegend;\r\n\r\n\tprotected _themeTag?: string;\r\n\tprotected _themeTags:Array<string> = [\"indicator\"];\r\n\r\n\tprotected _afterNew() {\r\n\t\tsuper._afterNew();\r\n\r\n\t\tconst stockChart = this.get(\"stockChart\");\r\n\t\tconst stockSeries = this.get(\"stockSeries\");\r\n\t\tconst seriesChart = stockSeries.chart;\r\n\t\tconst root = this._root;\r\n\t\tif (stockChart && seriesChart) {\r\n\t\t\t// make chart\r\n\t\t\tconst chart = stockChart.panels.push(StockPanel.new(root, { themeTags: this._themeTags }));\r\n\t\t\tchart.addTag(\"indicator\");\r\n\t\t\tthis.panel = chart;\r\n\r\n\t\t\tstockChart.panels.events.on(\"removeIndex\", (e) => {\r\n\t\t\t\tif (e.oldValue == chart) {\r\n\t\t\t\t\tstockChart.indicators.removeValue(this);\r\n\t\t\t\t}\r\n\t\t\t})\r\n\r\n\t\t\tconst seriesXAxis = stockSeries.get(\"xAxis\") as any;\r\n\r\n\t\t\t// xAxis\r\n\t\t\tconst xRenderer = AxisRendererX.new(root, {});\r\n\t\t\tlet xAxis: DateAxis<AxisRenderer> | GaplessDateAxis<AxisRenderer> | undefined;\r\n\t\t\tlet baseInterval = seriesXAxis.get(\"baseInterval\");\r\n\t\t\tlet start = seriesXAxis.get(\"start\");\r\n\t\t\tlet end = seriesXAxis.get(\"end\");\r\n\r\n\t\t\tif (seriesXAxis instanceof GaplessDateAxis) {\r\n\t\t\t\txAxis = chart.xAxes.push(GaplessDateAxis.new(root, { renderer: xRenderer, baseInterval: baseInterval }));\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\txAxis = chart.xAxes.push(DateAxis.new(root, { renderer: xRenderer, baseInterval: baseInterval }));\r\n\t\t\t}\r\n\r\n\t\t\txRenderer.set(\"minorGridEnabled\", seriesXAxis.get(\"renderer\")?.get(\"minorGridEnabled\"));\r\n\t\t\txAxis.set(\"groupData\", seriesXAxis.get(\"groupData\"));\r\n\t\t\txAxis.set(\"groupCount\", seriesXAxis.get(\"groupCount\"));\r\n\r\n\t\t\txAxis.set(\"tooltip\", Tooltip.new(root, { forceHidden: true }));\r\n\r\n\t\t\txAxis.setAll({ start: start, end: end })\r\n\t\t\tthis.xAxis = xAxis;\r\n\r\n\t\t\t// yAxis\r\n\t\t\tconst yRenderer = AxisRendererY.new(root, {\r\n\t\t\t\tminGridDistance:20\r\n\t\t\t});\r\n\t\t\tconst yAxis = chart.yAxes.push(ValueAxis.new(root, {\r\n\t\t\t\trenderer: yRenderer,\r\n\t\t\t\ttooltip: Tooltip.new(root, { forceHidden: true })\r\n\t\t\t}))\r\n\t\t\tthis.yAxis = yAxis;\r\n\r\n\t\t\tconst series = this._createSeries();\r\n\t\t\tthis.series = series;\r\n\r\n\t\t\t// legend\r\n\t\t\tconst legend = chart.topPlotContainer.children.insertIndex(0,\r\n\t\t\t\tStockLegend.new(root, { stockChart: this.get(\"stockChart\") })\r\n\t\t\t);\r\n\r\n\t\t\tlegend.data.push(series);\r\n\r\n\t\t\tconst legendDataItem = legend.dataItems[legend.dataItems.length - 1];\r\n\t\t\tlegendDataItem.set(\"panel\", chart);\r\n\t\t\tlegendDataItem.get(\"marker\").set(\"forceHidden\", true);\r\n\r\n\t\t\tconst settingsButton = legendDataItem.get(\"settingsButton\");\r\n\t\t\tsettingsButton.setPrivate(\"customData\", this);\r\n\r\n\t\t\tconst editableSettings = this._editableSettings;\r\n\t\t\tif (!editableSettings || editableSettings.length == 0) {\r\n\t\t\t\tsettingsButton.set(\"forceHidden\", true);\r\n\t\t\t}\r\n\r\n\t\t\tchart.set(\"cursor\", XYCursor.new(root, { yAxis: yAxis, xAxis: xAxis }));\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _dispose() {\r\n\t\tsuper._dispose();\r\n\t\tconst stockChart = this.get(\"stockChart\");\r\n\t\tstockChart.panels.removeValue(this.panel);\r\n\t}\r\n\r\n\tpublic async hide(duration?: number): Promise<any> {\r\n\t\treturn Promise.all([\r\n\t\t\tsuper.hide(duration),\r\n\t\t\tthis.panel.hide(duration)\r\n\t\t]);\r\n\t}\r\n\r\n\tpublic async show(duration?: number): Promise<any> {\r\n\t\treturn Promise.all([\r\n\t\t\tsuper.show(duration),\r\n\t\t\tthis.panel.show(duration)\r\n\t\t]);\r\n\t}\r\n\r\n\tprotected abstract _createSeries(): XYSeries;\r\n}"]}
1
+ {"version":3,"file":"ChartIndicator.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/indicators/ChartIndicator.ts"],"names":[],"mappings":"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","sourcesContent":["import type { XYSeries } from \"../../xy/series/XYSeries\";\r\nimport type { AxisRenderer } from \"../../xy/axes/AxisRenderer\";\r\n\r\nimport { Indicator, IIndicatorSettings, IIndicatorPrivate, IIndicatorEvents } from \"./Indicator\";\r\nimport { StockPanel } from \"../StockPanel\";\r\nimport { XYCursor } from \"../../xy/XYCursor\";\r\nimport { DateAxis } from \"../../xy/axes/DateAxis\";\r\nimport { GaplessDateAxis } from \"../../xy/axes/GaplessDateAxis\";\r\nimport { ValueAxis } from \"../../xy/axes/ValueAxis\";\r\nimport { AxisRendererX } from \"../../xy/axes/AxisRendererX\";\r\nimport { AxisRendererY } from \"../../xy/axes/AxisRendererY\";\r\nimport { Tooltip } from \"../../../core/render/Tooltip\";\r\nimport { StockLegend } from \"../StockLegend\";\r\n\r\n\r\nexport interface IChartIndicatorSettings extends IIndicatorSettings {\r\n}\r\n\r\nexport interface IChartIndicatorPrivate extends IIndicatorPrivate {\r\n}\r\n\r\nexport interface IChartIndicatorEvents extends IIndicatorEvents {\r\n}\r\n\r\n\r\n/**\r\n * A base class for chart-based [[StockChart]] indicators.\r\n *\r\n * @see {@link https://www.amcharts.com/docs/v5/charts/stock/indicators/} for more info\r\n */\r\nexport abstract class ChartIndicator extends Indicator {\r\n\tpublic static className: string = \"ChartIndicator\";\r\n\tpublic static classNames: Array<string> = Indicator.classNames.concat([ChartIndicator.className]);\r\n\r\n\tdeclare public _settings: IChartIndicatorSettings;\r\n\tdeclare public _privateSettings: IChartIndicatorPrivate;\r\n\tdeclare public _events: IChartIndicatorEvents;\r\n\r\n\tpublic panel!: StockPanel;\r\n\tpublic xAxis!: DateAxis<AxisRenderer>;\r\n\tpublic yAxis!: ValueAxis<AxisRenderer>;\r\n\tpublic cursor!: XYCursor;\r\n\tpublic legend!: StockLegend;\r\n\r\n\tprotected _themeTag?: string;\r\n\tprotected _themeTags:Array<string> = [\"indicator\"];\r\n\r\n\tprotected _afterNew() {\r\n\t\tsuper._afterNew();\r\n\r\n\t\tconst stockChart = this.get(\"stockChart\");\r\n\t\tconst stockSeries = this.get(\"stockSeries\");\r\n\t\tconst seriesChart = stockSeries.chart;\r\n\t\tconst root = this._root;\r\n\t\tif (stockChart && seriesChart) {\r\n\t\t\t// make chart\r\n\t\t\tconst chart = stockChart.panels.push(StockPanel.new(root, { themeTags: this._themeTags }));\r\n\t\t\tchart.addTag(\"indicator\");\r\n\t\t\tthis.panel = chart;\r\n\r\n\t\t\tthis.addDisposer(stockChart.panels.events.on(\"removeIndex\", (e) => {\r\n\t\t\t\tif (e.oldValue == chart) {\r\n\t\t\t\t\tstockChart.indicators.removeValue(this);\r\n\t\t\t\t}\r\n\t\t\t}))\r\n\r\n\t\t\tconst seriesXAxis = stockSeries.get(\"xAxis\") as any;\r\n\r\n\t\t\t// xAxis\r\n\t\t\tconst xRenderer = AxisRendererX.new(root, {});\r\n\t\t\tlet xAxis: DateAxis<AxisRenderer> | GaplessDateAxis<AxisRenderer> | undefined;\r\n\t\t\tlet baseInterval = seriesXAxis.get(\"baseInterval\");\r\n\t\t\tlet start = seriesXAxis.get(\"start\");\r\n\t\t\tlet end = seriesXAxis.get(\"end\");\r\n\r\n\t\t\tif (seriesXAxis instanceof GaplessDateAxis) {\r\n\t\t\t\txAxis = chart.xAxes.push(GaplessDateAxis.new(root, { renderer: xRenderer, baseInterval: baseInterval }));\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\txAxis = chart.xAxes.push(DateAxis.new(root, { renderer: xRenderer, baseInterval: baseInterval }));\r\n\t\t\t}\r\n\r\n\t\t\txRenderer.set(\"minorGridEnabled\", seriesXAxis.get(\"renderer\")?.get(\"minorGridEnabled\"));\r\n\t\t\txAxis.set(\"groupData\", seriesXAxis.get(\"groupData\"));\r\n\t\t\txAxis.set(\"groupCount\", seriesXAxis.get(\"groupCount\"));\r\n\r\n\t\t\txAxis.set(\"tooltip\", Tooltip.new(root, { forceHidden: true }));\r\n\r\n\t\t\txAxis.setAll({ start: start, end: end })\r\n\t\t\tthis.xAxis = xAxis;\r\n\r\n\t\t\t// yAxis\r\n\t\t\tconst yRenderer = AxisRendererY.new(root, {\r\n\t\t\t\tminGridDistance:20\r\n\t\t\t});\r\n\t\t\tconst yAxis = chart.yAxes.push(ValueAxis.new(root, {\r\n\t\t\t\trenderer: yRenderer,\r\n\t\t\t\ttooltip: Tooltip.new(root, { forceHidden: true })\r\n\t\t\t}))\r\n\t\t\tthis.yAxis = yAxis;\r\n\r\n\t\t\tconst series = this._createSeries();\r\n\t\t\tthis.series = series;\r\n\r\n\t\t\t// legend\r\n\t\t\tconst legend = chart.topPlotContainer.children.insertIndex(0,\r\n\t\t\t\tStockLegend.new(root, { stockChart: this.get(\"stockChart\") })\r\n\t\t\t);\r\n\r\n\t\t\tlegend.data.push(series);\r\n\r\n\t\t\tconst legendDataItem = legend.dataItems[legend.dataItems.length - 1];\r\n\t\t\tlegendDataItem.set(\"panel\", chart);\r\n\t\t\tlegendDataItem.get(\"marker\").set(\"forceHidden\", true);\r\n\r\n\t\t\tconst settingsButton = legendDataItem.get(\"settingsButton\");\r\n\t\t\tsettingsButton.setPrivate(\"customData\", this);\r\n\r\n\t\t\tconst editableSettings = this._editableSettings;\r\n\t\t\tif (!editableSettings || editableSettings.length == 0) {\r\n\t\t\t\tsettingsButton.set(\"forceHidden\", true);\r\n\t\t\t}\r\n\r\n\t\t\tchart.set(\"cursor\", XYCursor.new(root, { yAxis: yAxis, xAxis: xAxis }));\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _dispose() {\r\n\t\tsuper._dispose();\r\n\t\tconst stockChart = this.get(\"stockChart\");\r\n\t\tstockChart.panels.removeValue(this.panel);\r\n\t}\r\n\r\n\tpublic async hide(duration?: number): Promise<any> {\r\n\t\treturn Promise.all([\r\n\t\t\tsuper.hide(duration),\r\n\t\t\tthis.panel.hide(duration)\r\n\t\t]);\r\n\t}\r\n\r\n\tpublic async show(duration?: number): Promise<any> {\r\n\t\treturn Promise.all([\r\n\t\t\tsuper.show(duration),\r\n\t\t\tthis.panel.show(duration)\r\n\t\t]);\r\n\t}\r\n\r\n\tprotected abstract _createSeries(): XYSeries;\r\n}"]}
@@ -1,12 +1,14 @@
1
1
  import type { DataItem } from "../../core/render/Component";
2
+ import type { ILegendDataItem } from "../../core/render/Legend";
3
+ import type { Color } from "../../core/util/Color";
4
+ import type { ColorSet } from "../../core/util/ColorSet";
5
+ import type { Pattern } from "../../core/render/patterns/Pattern";
6
+ import type { PatternSet } from "../../core/util/PatternSet";
2
7
  import { Series, ISeriesSettings, ISeriesDataItem, ISeriesPrivate } from "../../core/render/Series";
3
8
  import { Graphics } from "../../core/render/Graphics";
4
9
  import { Container } from "../../core/render/Container";
5
10
  import { Label } from "../../core/render/Label";
6
11
  import { ListTemplate } from "../../core/util/List";
7
- import type { ILegendDataItem } from "../../core/render/Legend";
8
- import type { Color } from "../../core/util/Color";
9
- import type { ColorSet } from "../../core/util/ColorSet";
10
12
  export interface IVennDataItem extends ISeriesDataItem {
11
13
  /**
12
14
  * Array of categories that this data item is an intersection for.
@@ -32,6 +34,13 @@ export interface IVennDataItem extends ISeriesDataItem {
32
34
  * Fill color used for the slice and related elements, e.g. legend marker.
33
35
  */
34
36
  fill: Color;
37
+ /**
38
+ * Fill pattern used for the slice and related elements, e.g. legend marker.
39
+ *
40
+ * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/patterns/} for more info
41
+ * @since 5.10.0
42
+ */
43
+ fillPattern: Pattern;
35
44
  }
36
45
  export interface IVennSettings extends ISeriesSettings {
37
46
  /**
@@ -42,6 +51,13 @@ export interface IVennSettings extends ISeriesSettings {
42
51
  * A [[ColorSet]] to use when asigning colors for slices.
43
52
  */
44
53
  colors?: ColorSet;
54
+ /**
55
+ * A [[PatternSet]] to use when asigning patterns for slices.
56
+ *
57
+ * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/patterns/#Pattern_sets} for more info
58
+ * @since 5.10.0
59
+ */
60
+ patterns?: PatternSet;
45
61
  /**
46
62
  * A field in data that holds category names.
47
63
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Venn.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/venn/Venn.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Venn.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/venn/Venn.ts"],"names":[],"mappings":"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"}
@@ -109,6 +109,9 @@ export class Venn extends Series {
109
109
  slice.on("fill", () => {
110
110
  this.updateLegendMarker(dataItem);
111
111
  });
112
+ slice.on("fillPattern", () => {
113
+ this.updateLegendMarker(dataItem);
114
+ });
112
115
  slice.on("stroke", () => {
113
116
  this.updateLegendMarker(dataItem);
114
117
  });
@@ -153,6 +156,12 @@ export class Venn extends Series {
153
156
  dataItem.setRaw("fill", colors.next());
154
157
  }
155
158
  }
159
+ if (dataItem.get("fillPattern") == null) {
160
+ let patterns = this.get("patterns");
161
+ if (patterns) {
162
+ dataItem.setRaw("fillPattern", patterns.next());
163
+ }
164
+ }
156
165
  this.makeSlice(dataItem);
157
166
  this.makeLabel(dataItem);
158
167
  }
@@ -205,6 +214,8 @@ export class Venn extends Series {
205
214
  const slice = dataItem.get("slice");
206
215
  const color = dataItem.get("fill");
207
216
  slice._setDefault("fill", color);
217
+ const fillPattern = dataItem.get("fillPattern");
218
+ slice._setDefault("fillPattern", fillPattern);
208
219
  slice._setDefault("stroke", color);
209
220
  this.updateLegendMarker(dataItem);
210
221
  slice.set("svgPath", "M" + item.x + "," + item.y + " m -" + r + ", 0 a " + r + "," + r + " 0 1,1 " + r * 2 + ",0 a " + r + "," + r + " 0 1,1 -" + r * 2 + ",0");
@@ -230,6 +241,8 @@ export class Venn extends Series {
230
241
  const color = dataItem.get("fill");
231
242
  slice._setDefault("fill", color);
232
243
  slice._setDefault("stroke", color);
244
+ const fillPattern = dataItem.get("fillPattern");
245
+ slice._setDefault("fillPattern", fillPattern);
233
246
  slice.setAll({ svgPath: intersectionPath });
234
247
  }
235
248
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Venn.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/venn/Venn.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\n\nimport { VennDefaultTheme } from \"./VennDefaultTheme\";\nimport { Series, ISeriesSettings, ISeriesDataItem, ISeriesPrivate } from \"../../core/render/Series\";\nimport { Template } from \"../../core/util/Template\";\nimport { Graphics, visualSettings } from \"../../core/render/Graphics\";\nimport { Container } from \"../../core/render/Container\";\nimport { Label } from \"../../core/render/Label\";\nimport { ListTemplate } from \"../../core/util/List\";\nimport type { ILegendDataItem } from \"../../core/render/Legend\";\nimport type { Color } from \"../../core/util/Color\";\nimport type { ColorSet } from \"../../core/util/ColorSet\";\n\nimport * as $utils from \"../../core/util/Utils\";\nimport * as $array from \"../../core/util/Array\";\nimport * as $type from \"../../core/util/Type\";\nimport * as venn from \"./vennjs/index.js\";\n\nexport interface IVennDataItem extends ISeriesDataItem {\n\n\t/**\n\t * Array of categories that this data item is an intersection for.\n\t */\n\tintersections: Array<string>;\n\n\t/**\n\t * Category.\n\t */\n\tcategory: string;\n\n\t/**\n\t * Slice visaul element.\n\t */\n\tslice: Graphics;\n\n\t/**\n\t * Slice label.\n\t */\n\tlabel: Label;\n\n\t/**\n\t * A related legend data item.\n\t */\n\tlegendDataItem: DataItem<ILegendDataItem>;\n\n\t/**\n\t * Fill color used for the slice and related elements, e.g. legend marker.\n\t */\n\tfill: Color;\n\n}\n\nexport interface IVennSettings extends ISeriesSettings {\n\n\t/**\n\t * A field in data that holds array of categories that overlap.\n\t */\n\tintersectionsField?: string;\n\n\t/**\n\t * A [[ColorSet]] to use when asigning colors for slices.\n\t */\n\tcolors?: ColorSet;\n\n\t/**\n\t * A field in data that holds category names.\n\t */\n\tcategoryField?: string;\n\n\t/**\n\t * A field that holds color for slice fill.\n\t */\n\tfillField?: string;\n\n}\n\nexport interface IVennPrivate extends ISeriesPrivate {\n}\n\n/**\n * Creates a Venn diagram.\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/venn/} for more info\n * @important\n */\nexport class Venn extends Series {\n\n\tpublic static className: string = \"Venn\";\n\tpublic static classNames: Array<string> = Series.classNames.concat([Venn.className]);\n\n\tdeclare public _settings: IVennSettings;\n\tdeclare public _privateSettings: IVennPrivate;\n\tdeclare public _dataItemSettings: IVennDataItem;\n\n\tprotected _sets: string = \"\";\n\n\t/**\n\t * A [[Container]] that holds all slices (circles and intersections).\n\t *\n\t * @default Container.new()\n\t */\n\tpublic readonly slicesContainer = this.children.push(Container.new(this._root, {}));\n\n\t/**\n\t * A [[Container]] that holds all labels.\n\t *\n\t * @default Container.new()\n\t */\n\tpublic readonly labelsContainer = this.children.push(Container.new(this._root, {}));\n\n\t/**\n\t * A [[Graphics]] element that is used to show the shape of the hovered slice\n\t * or intersection.\n\t *\n\t * @default Graphics.new()\n\t */\n\tpublic readonly hoverGraphics = this.slicesContainer.children.push(Graphics.new(this._root, { position: \"absolute\", isMeasured: false }))\n\n\tprotected _hovered?: Graphics;\n\n\tprotected _afterNew() {\n\t\tthis._defaultThemes.push(VennDefaultTheme.new(this._root));\n\t\tthis.fields.push(\"intersections\", \"category\", \"fill\");\n\t\tsuper._afterNew();\n\t}\n\n\n\t/**\n\t * A [[ListTemplate]] of all slices in series.\n\t *\n\t * `slices.template` can also be used to configure slices.\n\t */\n\tpublic readonly slices: ListTemplate<Graphics> = this._makeSlices();\n\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeSlice(dataItem: DataItem<this[\"_dataItemSettings\"]>): Graphics {\n\t\tconst slice = this.slicesContainer.children.push(this.slices.make());\n\t\tslice.events.on(\"pointerover\", (e) => {\n\t\t\tthis._hovered = e.target;\n\t\t\tthis._updateHover();\n\t\t})\n\n\t\tslice.events.on(\"pointerout\", () => {\n\t\t\tthis._hovered = undefined;\n\t\t\tthis.hoverGraphics.hide();\n\t\t})\n\n\t\tslice.on(\"fill\", () => {\n\t\t\tthis.updateLegendMarker(dataItem);\n\t\t})\n\n\t\tslice.on(\"stroke\", () => {\n\t\t\tthis.updateLegendMarker(dataItem);\n\t\t})\n\n\t\tslice._setDataItem(dataItem);\n\t\tdataItem.set(\"slice\", slice);\n\t\tthis.slices.push(slice);\n\n\t\treturn slice;\n\t}\n\n\tprotected _updateHover() {\n\t\tif (this._hovered) {\n\t\t\tconst hoverGraphics = this.hoverGraphics;\n\t\t\thoverGraphics.set(\"svgPath\", this._hovered.get(\"svgPath\"));\n\t\t\thoverGraphics.show();\n\t\t\thoverGraphics.toFront();\n\t\t}\n\t}\n\n\t/**\n\t * A [[ListTemplate]] of all slice labels in series.\n\t *\n\t * `labels.template` can also be used to configure slice labels.\n\t */\n\tpublic readonly labels: ListTemplate<Label> = this._makeLabels();\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeLabel(dataItem: DataItem<this[\"_dataItemSettings\"]>): Label {\n\t\tconst label = this.labelsContainer.children.push(this.labels.make());\n\t\tlabel._setDataItem(dataItem);\n\t\tdataItem.set(\"label\", label);\n\t\tthis.labels.push(label);\n\t\treturn label;\n\t}\n\n\n\tprotected _makeSlices(): ListTemplate<Graphics> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => Graphics._new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.slices.template.get(\"themeTags\", []), [\"venn\", \"series\"])\n\t\t\t}, [this.slices.template]),\n\t\t);\n\t}\n\n\tprotected _makeLabels(): ListTemplate<Label> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => Label._new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.labels.template.get(\"themeTags\", []), [\"venn\", \"series\"])\n\t\t\t}, [this.labels.template]),\n\t\t);\n\t}\n\n\n\tprotected processDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.processDataItem(dataItem);\n\n\n\t\tif (dataItem.get(\"fill\") == null) {\n\t\t\tlet colors = this.get(\"colors\");\n\t\t\tif (colors) {\n\t\t\t\tdataItem.setRaw(\"fill\", colors.next());\n\t\t\t}\n\t\t}\n\n\t\tthis.makeSlice(dataItem);\n\t\tthis.makeLabel(dataItem);\n\t}\n\n\tpublic _prepareChildren() {\n\t\tsuper._prepareChildren();\n\n\t\tif (this._valuesDirty || this._sizeDirty) {\n\t\t\tconst sets: any[] = [];\n\n\t\t\t// prepare data for venn\n\t\t\t$array.each(this.dataItems, (dataItem) => {\n\t\t\t\tconst set: any = {};\n\t\t\t\tconst intersections = dataItem.get(\"intersections\");\n\t\t\t\tif (intersections) {\n\t\t\t\t\tset.sets = intersections;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tset.sets = [dataItem.get(\"category\")];\n\t\t\t\t}\n\t\t\t\tset.size = dataItem.get(\"valueWorking\");\n\n\t\t\t\t//if (set.size > 0) { // not good\n\t\t\t\t\tsets.push(set);\n\t\t\t\t//}\n\n\t\t\t\tconst label = dataItem.get(\"label\");\n\t\t\t\tconst slice = dataItem.get(\"slice\");\n\n\n\t\t\t\tlet visible = true;\n\t\t\t\tif (dataItem.get(\"value\") == 0) {\n\t\t\t\t\tvisible = false;\n\n\t\t\t\t\tif (slice) {\n\t\t\t\t\t\tslice.setAll({\n\t\t\t\t\t\t\tx: this.width() / 2,\n\t\t\t\t\t\t\ty: this.height() / 2\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (label) {\n\t\t\t\t\tlabel.setPrivate(\"visible\", visible);\n\t\t\t\t}\n\t\t\t})\n\n\n\t\t\tconst newSets = sets.toString();\n\n\t\t\tthis._sets = newSets;\n\n\t\t\tif (sets.length > 0) {\n\t\t\t\tlet vennData = venn.venn(sets);\n\t\t\t\tvennData = venn.normalizeSolution(vennData, null, null);\n\t\t\t\tvennData = venn.scaleSolution(vennData, this.innerWidth(), this.innerHeight(), 0);\n\n\t\t\t\tconst circles: any = {};\n\t\t\t\tfor (let name in vennData) {\n\t\t\t\t\tlet item = vennData[name];\n\t\t\t\t\tlet r = item.radius;\n\n\t\t\t\t\tconst dataItem = this.getDataItemByCategory(name);\n\t\t\t\t\tif (dataItem) {\n\t\t\t\t\t\tconst slice = dataItem.get(\"slice\");\n\t\t\t\t\t\tconst color = dataItem.get(\"fill\");\n\t\t\t\t\t\tslice._setDefault(\"fill\", color);\n\t\t\t\t\t\tslice._setDefault(\"stroke\", color);\n\n\t\t\t\t\t\tthis.updateLegendMarker(dataItem);\n\n\t\t\t\t\t\tslice.set(\"svgPath\", \"M\" + item.x + \",\" + item.y + \" m -\" + r + \", 0 a \" + r + \",\" + r + \" 0 1,1 \" + r * 2 + \",0 a \" + r + \",\" + r + \" 0 1,1 -\" + r * 2 + \",0\");\n\t\t\t\t\t\tcircles[name] = item;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\n\t\t\t\tlet centers: any = venn.computeTextCentres(circles, sets);\n\n\n\t\t\t\t$array.each(this.dataItems, (dataItem) => {\n\t\t\t\t\tlet name = dataItem.get(\"category\");\n\t\t\t\t\tlet center = centers[name];\n\t\t\t\t\tconst intersections = dataItem.get(\"intersections\");\n\t\t\t\t\tif (intersections) {\n\t\t\t\t\t\tname = intersections.toString();\n\t\t\t\t\t\tcenter = centers[name];\n\t\t\t\t\t\tif (center) {\n\t\t\t\t\t\t\tlet set = intersections;\n\t\t\t\t\t\t\tlet cc = [];\n\n\t\t\t\t\t\t\tfor (let s = 0; s < set.length; s++) {\n\t\t\t\t\t\t\t\tcc.push(circles[set[s]]);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tlet intersectionPath = venn.intersectionAreaPath(cc)\n\t\t\t\t\t\t\tlet slice = dataItem.get(\"slice\");\n\n\t\t\t\t\t\t\tconst color = dataItem.get(\"fill\");\n\t\t\t\t\t\t\tslice._setDefault(\"fill\", color);\n\t\t\t\t\t\t\tslice._setDefault(\"stroke\", color);\n\n\t\t\t\t\t\t\tslice.setAll({ svgPath: intersectionPath });\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tif (center) {\n\t\t\t\t\t\tlet label = dataItem.get(\"label\");\n\t\t\t\t\t\tlabel.setAll({ x: center.x, y: center.y });\n\t\t\t\t\t}\n\n\t\t\t\t\tthis.updateLegendValue(dataItem);\n\t\t\t\t})\n\t\t\t}\n\n\t\t\tthis._updateHover();\n\t\t}\n\t}\n\n\t/**\n\t * Looks up and returns a data item by its category.\n\t *\n\t * @param category Category\n\t * @return Data item\n\t */\n\tpublic getDataItemByCategory(id: string): DataItem<this[\"_dataItemSettings\"]> | undefined {\n\t\treturn $array.find(this.dataItems, (dataItem: any) => {\n\t\t\treturn dataItem.get(\"category\") == id;\n\t\t})\n\t}\n\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\tif (!$type.isNumber(duration)) {\n\t\t\tduration = this.get(\"stateAnimationDuration\", 0);\n\t\t}\n\n\t\tconst easing = this.get(\"stateAnimationEasing\");\n\n\t\tlet value = dataItem.get(\"value\");\n\n\t\tconst animation = dataItem.animate({ key: \"valueWorking\", to: value, duration: duration, easing: easing });\n\t\tif (animation) {\n\t\t\tpromises.push(animation.waitForStop());\n\t\t}\n\n\t\tconst label = dataItem.get(\"label\");\n\t\tif (label) {\n\t\t\tpromises.push(label.show(duration));\n\t\t}\n\n\t\tconst slice = dataItem.get(\"slice\");\n\t\tif (slice) {\n\t\t\tpromises.push(slice.show(duration));\n\t\t}\n\n\n\t\tconst intersections = dataItem.get(\"intersections\");\n\t\tif (intersections) {\n\t\t\t$array.each(intersections, (cat) => {\n\t\t\t\tconst di = this.getDataItemByCategory(cat);\n\t\t\t\tif (di && di.isHidden()) {\n\t\t\t\t\tthis.showDataItem(di, duration);\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\n\t\tif (!intersections) {\n\t\t\tconst category = dataItem.get(\"category\");\n\n\t\t\t$array.each(this.dataItems, (di) => {\n\t\t\t\tconst intersections = di.get(\"intersections\");\n\t\t\t\tif (di != dataItem && intersections) {\n\t\t\t\t\tlet allVisible = true;\n\t\t\t\t\t$array.each(intersections, (cat) => {\n\t\t\t\t\t\tconst dii = this.getDataItemByCategory(cat);\n\t\t\t\t\t\tif (dii && dii.isHidden()) {\n\t\t\t\t\t\t\tallVisible = false;\n\t\t\t\t\t\t}\n\t\t\t\t\t})\n\n\t\t\t\t\tif (allVisible && intersections.indexOf(category) != -1) {\n\t\t\t\t\t\tif (di.isHidden()) {\n\t\t\t\t\t\t\tthis.showDataItem(di, duration);\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\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 hiddenState = this.states.create(\"hidden\", {})\n\n\t\tif (!$type.isNumber(duration)) {\n\t\t\tduration = hiddenState.get(\"stateAnimationDuration\", this.get(\"stateAnimationDuration\", 0));\n\t\t}\n\n\t\tconst easing = hiddenState.get(\"stateAnimationEasing\", this.get(\"stateAnimationEasing\"));\n\n\t\tconst animation = dataItem.animate({ key: \"valueWorking\", to: 0, duration: duration, easing: easing });\n\t\tif (animation) {\n\t\t\tpromises.push(animation.waitForStop());\n\t\t}\n\n\t\tconst label = dataItem.get(\"label\");\n\t\tif (label) {\n\t\t\tpromises.push(label.hide(duration));\n\t\t}\n\n\t\tconst slice = dataItem.get(\"slice\");\n\t\tif (slice) {\n\t\t\tpromises.push(slice.hide(duration));\n\t\t\tslice.hideTooltip();\n\t\t}\n\n\t\tif (!dataItem.get(\"intersections\")) {\n\t\t\t$array.each(this.dataItems, (di) => {\n\t\t\t\tconst intersections = di.get(\"intersections\");\n\t\t\t\tif (di != dataItem && intersections) {\n\t\t\t\t\tif (intersections.indexOf(dataItem.get(\"category\")) != -1) {\n\t\t\t\t\t\tthis.hideDataItem(di, duration);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\n\t\tawait Promise.all(promises);\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic disposeDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.disposeDataItem(dataItem);\n\t\tlet label = dataItem.get(\"label\");\n\t\tif (label) {\n\t\t\tthis.labels.removeValue(label);\n\t\t\tlabel.dispose();\n\t\t}\n\n\t\tlet slice = dataItem.get(\"slice\");\n\t\tif (slice) {\n\t\t\tthis.slices.removeValue(slice);\n\t\t\tslice.dispose();\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic updateLegendMarker(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tconst slice = dataItem.get(\"slice\");\n\n\t\tif (slice) {\n\t\t\tconst legendDataItem = dataItem.get(\"legendDataItem\");\n\t\t\tif (legendDataItem) {\n\t\t\t\tconst markerRectangle = legendDataItem.get(\"markerRectangle\");\n\t\t\t\tif(!dataItem.isHidden()){\n\t\t\t\t\t$array.each(visualSettings, (setting: any) => {\n\t\t\t\t\t\tmarkerRectangle.set(setting, slice.get(setting));\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 * Triggers hover on a series data item.\n\t *\n\t * @since 5.0.7\n\t * @param dataItem Target data item\n\t */\n\tpublic hoverDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tconst slice = dataItem.get(\"slice\");\n\t\tif (slice && !slice.isHidden()) {\n\t\t\tslice.hover();\n\t\t}\n\t}\n\n\t/**\n\t * Triggers un-hover on a series data item.\n\t *\n\t * @since 5.0.7\n\t * @param dataItem Target data item\n\t */\n\tpublic unhoverDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tconst slice = dataItem.get(\"slice\");\n\t\tif (slice) {\n\t\t\tslice.unhover();\n\t\t}\n\t}\n}\n"]}
1
+ {"version":3,"file":"Venn.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/venn/Venn.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport type { ILegendDataItem } from \"../../core/render/Legend\";\nimport type { Color } from \"../../core/util/Color\";\nimport type { ColorSet } from \"../../core/util/ColorSet\";\nimport type { Pattern } from \"../../core/render/patterns/Pattern\";\nimport type { PatternSet } from \"../../core/util/PatternSet\";\n\nimport { VennDefaultTheme } from \"./VennDefaultTheme\";\nimport { Series, ISeriesSettings, ISeriesDataItem, ISeriesPrivate } from \"../../core/render/Series\";\nimport { Template } from \"../../core/util/Template\";\nimport { Graphics, visualSettings } from \"../../core/render/Graphics\";\nimport { Container } from \"../../core/render/Container\";\nimport { Label } from \"../../core/render/Label\";\nimport { ListTemplate } from \"../../core/util/List\";\n\nimport * as $utils from \"../../core/util/Utils\";\nimport * as $array from \"../../core/util/Array\";\nimport * as $type from \"../../core/util/Type\";\nimport * as venn from \"./vennjs/index.js\";\n\nexport interface IVennDataItem extends ISeriesDataItem {\n\n\t/**\n\t * Array of categories that this data item is an intersection for.\n\t */\n\tintersections: Array<string>;\n\n\t/**\n\t * Category.\n\t */\n\tcategory: string;\n\n\t/**\n\t * Slice visaul element.\n\t */\n\tslice: Graphics;\n\n\t/**\n\t * Slice label.\n\t */\n\tlabel: Label;\n\n\t/**\n\t * A related legend data item.\n\t */\n\tlegendDataItem: DataItem<ILegendDataItem>;\n\n\t/**\n\t * Fill color used for the slice and related elements, e.g. legend marker.\n\t */\n\tfill: Color;\n\n\t/**\n\t * Fill pattern used for the slice and related elements, e.g. legend marker.\n\t * \n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/patterns/} for more info\n\t * @since 5.10.0\n\t */\n\tfillPattern: Pattern;\n\n}\n\nexport interface IVennSettings extends ISeriesSettings {\n\n\t/**\n\t * A field in data that holds array of categories that overlap.\n\t */\n\tintersectionsField?: string;\n\n\t/**\n\t * A [[ColorSet]] to use when asigning colors for slices.\n\t */\n\tcolors?: ColorSet;\n\n\t/**\n\t * A [[PatternSet]] to use when asigning patterns for slices.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/patterns/#Pattern_sets} for more info\n\t * @since 5.10.0\n\t */\n\tpatterns?: PatternSet;\n\n\t/**\n\t * A field in data that holds category names.\n\t */\n\tcategoryField?: string;\n\n\t/**\n\t * A field that holds color for slice fill.\n\t */\n\tfillField?: string;\n\n}\n\nexport interface IVennPrivate extends ISeriesPrivate {\n}\n\n/**\n * Creates a Venn diagram.\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/venn/} for more info\n * @important\n */\nexport class Venn extends Series {\n\n\tpublic static className: string = \"Venn\";\n\tpublic static classNames: Array<string> = Series.classNames.concat([Venn.className]);\n\n\tdeclare public _settings: IVennSettings;\n\tdeclare public _privateSettings: IVennPrivate;\n\tdeclare public _dataItemSettings: IVennDataItem;\n\n\tprotected _sets: string = \"\";\n\n\t/**\n\t * A [[Container]] that holds all slices (circles and intersections).\n\t *\n\t * @default Container.new()\n\t */\n\tpublic readonly slicesContainer = this.children.push(Container.new(this._root, {}));\n\n\t/**\n\t * A [[Container]] that holds all labels.\n\t *\n\t * @default Container.new()\n\t */\n\tpublic readonly labelsContainer = this.children.push(Container.new(this._root, {}));\n\n\t/**\n\t * A [[Graphics]] element that is used to show the shape of the hovered slice\n\t * or intersection.\n\t *\n\t * @default Graphics.new()\n\t */\n\tpublic readonly hoverGraphics = this.slicesContainer.children.push(Graphics.new(this._root, { position: \"absolute\", isMeasured: false }))\n\n\tprotected _hovered?: Graphics;\n\n\tprotected _afterNew() {\n\t\tthis._defaultThemes.push(VennDefaultTheme.new(this._root));\n\t\tthis.fields.push(\"intersections\", \"category\", \"fill\");\n\t\tsuper._afterNew();\n\t}\n\n\n\t/**\n\t * A [[ListTemplate]] of all slices in series.\n\t *\n\t * `slices.template` can also be used to configure slices.\n\t */\n\tpublic readonly slices: ListTemplate<Graphics> = this._makeSlices();\n\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeSlice(dataItem: DataItem<this[\"_dataItemSettings\"]>): Graphics {\n\t\tconst slice = this.slicesContainer.children.push(this.slices.make());\n\t\tslice.events.on(\"pointerover\", (e) => {\n\t\t\tthis._hovered = e.target;\n\t\t\tthis._updateHover();\n\t\t})\n\n\t\tslice.events.on(\"pointerout\", () => {\n\t\t\tthis._hovered = undefined;\n\t\t\tthis.hoverGraphics.hide();\n\t\t})\n\n\t\tslice.on(\"fill\", () => {\n\t\t\tthis.updateLegendMarker(dataItem);\n\t\t})\n\n\t\tslice.on(\"fillPattern\", () => {\n\t\t\tthis.updateLegendMarker(dataItem);\n\t\t})\n\n\t\tslice.on(\"stroke\", () => {\n\t\t\tthis.updateLegendMarker(dataItem);\n\t\t})\n\n\t\tslice._setDataItem(dataItem);\n\t\tdataItem.set(\"slice\", slice);\n\t\tthis.slices.push(slice);\n\n\t\treturn slice;\n\t}\n\n\tprotected _updateHover() {\n\t\tif (this._hovered) {\n\t\t\tconst hoverGraphics = this.hoverGraphics;\n\t\t\thoverGraphics.set(\"svgPath\", this._hovered.get(\"svgPath\"));\n\t\t\thoverGraphics.show();\n\t\t\thoverGraphics.toFront();\n\t\t}\n\t}\n\n\t/**\n\t * A [[ListTemplate]] of all slice labels in series.\n\t *\n\t * `labels.template` can also be used to configure slice labels.\n\t */\n\tpublic readonly labels: ListTemplate<Label> = this._makeLabels();\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeLabel(dataItem: DataItem<this[\"_dataItemSettings\"]>): Label {\n\t\tconst label = this.labelsContainer.children.push(this.labels.make());\n\t\tlabel._setDataItem(dataItem);\n\t\tdataItem.set(\"label\", label);\n\t\tthis.labels.push(label);\n\t\treturn label;\n\t}\n\n\n\tprotected _makeSlices(): ListTemplate<Graphics> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => Graphics._new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.slices.template.get(\"themeTags\", []), [\"venn\", \"series\"])\n\t\t\t}, [this.slices.template]),\n\t\t);\n\t}\n\n\tprotected _makeLabels(): ListTemplate<Label> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => Label._new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.labels.template.get(\"themeTags\", []), [\"venn\", \"series\"])\n\t\t\t}, [this.labels.template]),\n\t\t);\n\t}\n\n\n\tprotected processDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.processDataItem(dataItem);\n\n\n\t\tif (dataItem.get(\"fill\") == null) {\n\t\t\tlet colors = this.get(\"colors\");\n\t\t\tif (colors) {\n\t\t\t\tdataItem.setRaw(\"fill\", colors.next());\n\t\t\t}\n\t\t}\n\n\t\tif (dataItem.get(\"fillPattern\") == null) {\n\t\t\tlet patterns = this.get(\"patterns\");\n\t\t\tif (patterns) {\n\t\t\t\tdataItem.setRaw(\"fillPattern\", patterns.next());\n\t\t\t}\n\t\t}\n\n\t\tthis.makeSlice(dataItem);\n\t\tthis.makeLabel(dataItem);\n\t}\n\n\tpublic _prepareChildren() {\n\t\tsuper._prepareChildren();\n\n\t\tif (this._valuesDirty || this._sizeDirty) {\n\t\t\tconst sets: any[] = [];\n\n\t\t\t// prepare data for venn\n\t\t\t$array.each(this.dataItems, (dataItem) => {\n\t\t\t\tconst set: any = {};\n\t\t\t\tconst intersections = dataItem.get(\"intersections\");\n\t\t\t\tif (intersections) {\n\t\t\t\t\tset.sets = intersections;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tset.sets = [dataItem.get(\"category\")];\n\t\t\t\t}\n\t\t\t\tset.size = dataItem.get(\"valueWorking\");\n\n\t\t\t\t//if (set.size > 0) { // not good\n\t\t\t\tsets.push(set);\n\t\t\t\t//}\n\n\t\t\t\tconst label = dataItem.get(\"label\");\n\t\t\t\tconst slice = dataItem.get(\"slice\");\n\n\n\t\t\t\tlet visible = true;\n\t\t\t\tif (dataItem.get(\"value\") == 0) {\n\t\t\t\t\tvisible = false;\n\n\t\t\t\t\tif (slice) {\n\t\t\t\t\t\tslice.setAll({\n\t\t\t\t\t\t\tx: this.width() / 2,\n\t\t\t\t\t\t\ty: this.height() / 2\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (label) {\n\t\t\t\t\tlabel.setPrivate(\"visible\", visible);\n\t\t\t\t}\n\t\t\t})\n\n\n\t\t\tconst newSets = sets.toString();\n\n\t\t\tthis._sets = newSets;\n\n\t\t\tif (sets.length > 0) {\n\t\t\t\tlet vennData = venn.venn(sets);\n\t\t\t\tvennData = venn.normalizeSolution(vennData, null, null);\n\t\t\t\tvennData = venn.scaleSolution(vennData, this.innerWidth(), this.innerHeight(), 0);\n\n\t\t\t\tconst circles: any = {};\n\t\t\t\tfor (let name in vennData) {\n\t\t\t\t\tlet item = vennData[name];\n\t\t\t\t\tlet r = item.radius;\n\n\t\t\t\t\tconst dataItem = this.getDataItemByCategory(name);\n\t\t\t\t\tif (dataItem) {\n\t\t\t\t\t\tconst slice = dataItem.get(\"slice\");\n\t\t\t\t\t\tconst color = dataItem.get(\"fill\");\n\t\t\t\t\t\tslice._setDefault(\"fill\", color);\n\n\t\t\t\t\t\tconst fillPattern = dataItem.get(\"fillPattern\");\n\t\t\t\t\t\tslice._setDefault(\"fillPattern\", fillPattern);\n\n\t\t\t\t\t\tslice._setDefault(\"stroke\", color);\n\n\t\t\t\t\t\tthis.updateLegendMarker(dataItem);\n\n\t\t\t\t\t\tslice.set(\"svgPath\", \"M\" + item.x + \",\" + item.y + \" m -\" + r + \", 0 a \" + r + \",\" + r + \" 0 1,1 \" + r * 2 + \",0 a \" + r + \",\" + r + \" 0 1,1 -\" + r * 2 + \",0\");\n\t\t\t\t\t\tcircles[name] = item;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\n\t\t\t\tlet centers: any = venn.computeTextCentres(circles, sets);\n\n\n\t\t\t\t$array.each(this.dataItems, (dataItem) => {\n\t\t\t\t\tlet name = dataItem.get(\"category\");\n\t\t\t\t\tlet center = centers[name];\n\t\t\t\t\tconst intersections = dataItem.get(\"intersections\");\n\t\t\t\t\tif (intersections) {\n\t\t\t\t\t\tname = intersections.toString();\n\t\t\t\t\t\tcenter = centers[name];\n\t\t\t\t\t\tif (center) {\n\t\t\t\t\t\t\tlet set = intersections;\n\t\t\t\t\t\t\tlet cc = [];\n\n\t\t\t\t\t\t\tfor (let s = 0; s < set.length; s++) {\n\t\t\t\t\t\t\t\tcc.push(circles[set[s]]);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tlet intersectionPath = venn.intersectionAreaPath(cc)\n\t\t\t\t\t\t\tlet slice = dataItem.get(\"slice\");\n\n\t\t\t\t\t\t\tconst color = dataItem.get(\"fill\");\n\t\t\t\t\t\t\tslice._setDefault(\"fill\", color);\n\t\t\t\t\t\t\tslice._setDefault(\"stroke\", color);\n\n\t\t\t\t\t\t\tconst fillPattern = dataItem.get(\"fillPattern\");\n\t\t\t\t\t\t\tslice._setDefault(\"fillPattern\", fillPattern);\n\n\t\t\t\t\t\t\tslice.setAll({ svgPath: intersectionPath });\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tif (center) {\n\t\t\t\t\t\tlet label = dataItem.get(\"label\");\n\t\t\t\t\t\tlabel.setAll({ x: center.x, y: center.y });\n\t\t\t\t\t}\n\n\t\t\t\t\tthis.updateLegendValue(dataItem);\n\t\t\t\t})\n\t\t\t}\n\n\t\t\tthis._updateHover();\n\t\t}\n\t}\n\n\t/**\n\t * Looks up and returns a data item by its category.\n\t *\n\t * @param category Category\n\t * @return Data item\n\t */\n\tpublic getDataItemByCategory(id: string): DataItem<this[\"_dataItemSettings\"]> | undefined {\n\t\treturn $array.find(this.dataItems, (dataItem: any) => {\n\t\t\treturn dataItem.get(\"category\") == id;\n\t\t})\n\t}\n\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\tif (!$type.isNumber(duration)) {\n\t\t\tduration = this.get(\"stateAnimationDuration\", 0);\n\t\t}\n\n\t\tconst easing = this.get(\"stateAnimationEasing\");\n\n\t\tlet value = dataItem.get(\"value\");\n\n\t\tconst animation = dataItem.animate({ key: \"valueWorking\", to: value, duration: duration, easing: easing });\n\t\tif (animation) {\n\t\t\tpromises.push(animation.waitForStop());\n\t\t}\n\n\t\tconst label = dataItem.get(\"label\");\n\t\tif (label) {\n\t\t\tpromises.push(label.show(duration));\n\t\t}\n\n\t\tconst slice = dataItem.get(\"slice\");\n\t\tif (slice) {\n\t\t\tpromises.push(slice.show(duration));\n\t\t}\n\n\n\t\tconst intersections = dataItem.get(\"intersections\");\n\t\tif (intersections) {\n\t\t\t$array.each(intersections, (cat) => {\n\t\t\t\tconst di = this.getDataItemByCategory(cat);\n\t\t\t\tif (di && di.isHidden()) {\n\t\t\t\t\tthis.showDataItem(di, duration);\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\n\t\tif (!intersections) {\n\t\t\tconst category = dataItem.get(\"category\");\n\n\t\t\t$array.each(this.dataItems, (di) => {\n\t\t\t\tconst intersections = di.get(\"intersections\");\n\t\t\t\tif (di != dataItem && intersections) {\n\t\t\t\t\tlet allVisible = true;\n\t\t\t\t\t$array.each(intersections, (cat) => {\n\t\t\t\t\t\tconst dii = this.getDataItemByCategory(cat);\n\t\t\t\t\t\tif (dii && dii.isHidden()) {\n\t\t\t\t\t\t\tallVisible = false;\n\t\t\t\t\t\t}\n\t\t\t\t\t})\n\n\t\t\t\t\tif (allVisible && intersections.indexOf(category) != -1) {\n\t\t\t\t\t\tif (di.isHidden()) {\n\t\t\t\t\t\t\tthis.showDataItem(di, duration);\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\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 hiddenState = this.states.create(\"hidden\", {})\n\n\t\tif (!$type.isNumber(duration)) {\n\t\t\tduration = hiddenState.get(\"stateAnimationDuration\", this.get(\"stateAnimationDuration\", 0));\n\t\t}\n\n\t\tconst easing = hiddenState.get(\"stateAnimationEasing\", this.get(\"stateAnimationEasing\"));\n\n\t\tconst animation = dataItem.animate({ key: \"valueWorking\", to: 0, duration: duration, easing: easing });\n\t\tif (animation) {\n\t\t\tpromises.push(animation.waitForStop());\n\t\t}\n\n\t\tconst label = dataItem.get(\"label\");\n\t\tif (label) {\n\t\t\tpromises.push(label.hide(duration));\n\t\t}\n\n\t\tconst slice = dataItem.get(\"slice\");\n\t\tif (slice) {\n\t\t\tpromises.push(slice.hide(duration));\n\t\t\tslice.hideTooltip();\n\t\t}\n\n\t\tif (!dataItem.get(\"intersections\")) {\n\t\t\t$array.each(this.dataItems, (di) => {\n\t\t\t\tconst intersections = di.get(\"intersections\");\n\t\t\t\tif (di != dataItem && intersections) {\n\t\t\t\t\tif (intersections.indexOf(dataItem.get(\"category\")) != -1) {\n\t\t\t\t\t\tthis.hideDataItem(di, duration);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\n\t\tawait Promise.all(promises);\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic disposeDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.disposeDataItem(dataItem);\n\t\tlet label = dataItem.get(\"label\");\n\t\tif (label) {\n\t\t\tthis.labels.removeValue(label);\n\t\t\tlabel.dispose();\n\t\t}\n\n\t\tlet slice = dataItem.get(\"slice\");\n\t\tif (slice) {\n\t\t\tthis.slices.removeValue(slice);\n\t\t\tslice.dispose();\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic updateLegendMarker(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tconst slice = dataItem.get(\"slice\");\n\n\t\tif (slice) {\n\t\t\tconst legendDataItem = dataItem.get(\"legendDataItem\");\n\t\t\tif (legendDataItem) {\n\t\t\t\tconst markerRectangle = legendDataItem.get(\"markerRectangle\");\n\t\t\t\tif (!dataItem.isHidden()) {\n\t\t\t\t\t$array.each(visualSettings, (setting: any) => {\n\t\t\t\t\t\tmarkerRectangle.set(setting, slice.get(setting));\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 * Triggers hover on a series data item.\n\t *\n\t * @since 5.0.7\n\t * @param dataItem Target data item\n\t */\n\tpublic hoverDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tconst slice = dataItem.get(\"slice\");\n\t\tif (slice && !slice.isHidden()) {\n\t\t\tslice.hover();\n\t\t}\n\t}\n\n\t/**\n\t * Triggers un-hover on a series data item.\n\t *\n\t * @since 5.0.7\n\t * @param dataItem Target data item\n\t */\n\tpublic unhoverDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tconst slice = dataItem.get(\"slice\");\n\t\tif (slice) {\n\t\t\tslice.unhover();\n\t\t}\n\t}\n}\n"]}
@@ -7,11 +7,11 @@ import type { IPointerEvent } from "../../core/render/backend/Renderer";
7
7
  import type { Scrollbar } from "../../core/render/Scrollbar";
8
8
  import type { IPoint } from "../../core/util/IPoint";
9
9
  import type { ISpritePointerEvent } from "../../core/render/Sprite";
10
+ import type { Animation } from "../../core/util/Entity";
10
11
  import { Container } from "../../core/render/Container";
11
12
  import { SerialChart, ISerialChartPrivate, ISerialChartSettings, ISerialChartEvents } from "../../core/render/SerialChart";
12
13
  import { ListAutoDispose } from "../../core/util/List";
13
14
  import { Button } from "../../core/render/Button";
14
- import type { Animation } from "../../core/util/Entity";
15
15
  export interface IXYChartSettings extends ISerialChartSettings {
16
16
  /**
17
17
  * horizontal scrollbar.
@@ -1 +1 @@
1
- {"version":3,"file":"XYChart.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/xy/XYChart.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"XYChart.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/xy/XYChart.ts"],"names":[],"mappings":"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"}
@@ -982,6 +982,13 @@ export class XYChart extends SerialChart {
982
982
  series._setSoft("fill", color);
983
983
  }
984
984
  }
985
+ const patternSet = this.get("patterns");
986
+ if (patternSet) {
987
+ if (series.get("fillPattern") == null) {
988
+ const pattern = patternSet.next();
989
+ series._setSoft("fillPattern", pattern);
990
+ }
991
+ }
985
992
  }
986
993
  _handleCursorSelectEnd() {
987
994
  const cursor = this.get("cursor");