@amcharts/amcharts5 5.0.19 → 5.1.1

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 (323) hide show
  1. package/.internal/charts/map/MapLineSeries.d.ts +6 -1
  2. package/.internal/charts/map/MapLineSeries.d.ts.map +1 -1
  3. package/.internal/charts/map/MapLineSeries.js +11 -6
  4. package/.internal/charts/map/MapLineSeries.js.map +1 -1
  5. package/.internal/charts/map/MapPointSeries.d.ts +6 -1
  6. package/.internal/charts/map/MapPointSeries.d.ts.map +1 -1
  7. package/.internal/charts/map/MapPointSeries.js +7 -2
  8. package/.internal/charts/map/MapPointSeries.js.map +1 -1
  9. package/.internal/charts/map/MapPolygonSeries.d.ts +6 -1
  10. package/.internal/charts/map/MapPolygonSeries.d.ts.map +1 -1
  11. package/.internal/charts/map/MapPolygonSeries.js +7 -2
  12. package/.internal/charts/map/MapPolygonSeries.js.map +1 -1
  13. package/.internal/charts/map/MapSeries.d.ts +1 -0
  14. package/.internal/charts/map/MapSeries.d.ts.map +1 -1
  15. package/.internal/charts/map/MapSeries.js +12 -0
  16. package/.internal/charts/map/MapSeries.js.map +1 -1
  17. package/.internal/charts/percent/PercentSeries.d.ts +3 -0
  18. package/.internal/charts/percent/PercentSeries.d.ts.map +1 -1
  19. package/.internal/charts/percent/PercentSeries.js +12 -0
  20. package/.internal/charts/percent/PercentSeries.js.map +1 -1
  21. package/.internal/charts/pie/PieSeries.d.ts.map +1 -1
  22. package/.internal/charts/pie/PieSeries.js.map +1 -1
  23. package/.internal/charts/xy/XYChart.d.ts +1 -1
  24. package/.internal/charts/xy/XYChart.d.ts.map +1 -1
  25. package/.internal/charts/xy/XYChart.js.map +1 -1
  26. package/.internal/charts/xy/XYChartDefaultTheme.d.ts.map +1 -1
  27. package/.internal/charts/xy/XYChartDefaultTheme.js +16 -2
  28. package/.internal/charts/xy/XYChartDefaultTheme.js.map +1 -1
  29. package/.internal/charts/xy/XYCursor.d.ts +6 -0
  30. package/.internal/charts/xy/XYCursor.d.ts.map +1 -1
  31. package/.internal/charts/xy/XYCursor.js +14 -3
  32. package/.internal/charts/xy/XYCursor.js.map +1 -1
  33. package/.internal/charts/xy/axes/Axis.d.ts +3 -2
  34. package/.internal/charts/xy/axes/Axis.d.ts.map +1 -1
  35. package/.internal/charts/xy/axes/Axis.js +12 -5
  36. package/.internal/charts/xy/axes/Axis.js.map +1 -1
  37. package/.internal/charts/xy/axes/CategoryDateAxis.js +1 -1
  38. package/.internal/charts/xy/axes/CategoryDateAxis.js.map +1 -1
  39. package/.internal/charts/xy/axes/DateAxis.d.ts +3 -0
  40. package/.internal/charts/xy/axes/DateAxis.d.ts.map +1 -1
  41. package/.internal/charts/xy/axes/DateAxis.js +75 -20
  42. package/.internal/charts/xy/axes/DateAxis.js.map +1 -1
  43. package/.internal/charts/xy/axes/GaplessDateAxis.d.ts +55 -0
  44. package/.internal/charts/xy/axes/GaplessDateAxis.d.ts.map +1 -0
  45. package/.internal/charts/xy/axes/GaplessDateAxis.js +316 -0
  46. package/.internal/charts/xy/axes/GaplessDateAxis.js.map +1 -0
  47. package/.internal/charts/xy/axes/ValueAxis.d.ts.map +1 -1
  48. package/.internal/charts/xy/axes/ValueAxis.js +1 -1
  49. package/.internal/charts/xy/axes/ValueAxis.js.map +1 -1
  50. package/.internal/charts/xy/series/BaseColumnSeries.d.ts.map +1 -1
  51. package/.internal/charts/xy/series/BaseColumnSeries.js +21 -3
  52. package/.internal/charts/xy/series/BaseColumnSeries.js.map +1 -1
  53. package/.internal/charts/xy/series/CandlestickSeries.d.ts +0 -177
  54. package/.internal/charts/xy/series/CandlestickSeries.d.ts.map +1 -1
  55. package/.internal/charts/xy/series/CandlestickSeries.js +0 -19
  56. package/.internal/charts/xy/series/CandlestickSeries.js.map +1 -1
  57. package/.internal/charts/xy/series/LineSeries.d.ts +1 -0
  58. package/.internal/charts/xy/series/LineSeries.d.ts.map +1 -1
  59. package/.internal/charts/xy/series/LineSeries.js +14 -2
  60. package/.internal/charts/xy/series/LineSeries.js.map +1 -1
  61. package/.internal/charts/xy/series/XYSeries.d.ts +207 -2
  62. package/.internal/charts/xy/series/XYSeries.d.ts.map +1 -1
  63. package/.internal/charts/xy/series/XYSeries.js +30 -5
  64. package/.internal/charts/xy/series/XYSeries.js.map +1 -1
  65. package/.internal/core/Classes.d.ts +4 -0
  66. package/.internal/core/Classes.d.ts.map +1 -1
  67. package/.internal/core/Classes.js.map +1 -1
  68. package/.internal/core/Root.d.ts +11 -3
  69. package/.internal/core/Root.d.ts.map +1 -1
  70. package/.internal/core/Root.js +14 -5
  71. package/.internal/core/Root.js.map +1 -1
  72. package/.internal/core/render/Component.d.ts +6 -1
  73. package/.internal/core/render/Component.d.ts.map +1 -1
  74. package/.internal/core/render/Component.js +9 -4
  75. package/.internal/core/render/Component.js.map +1 -1
  76. package/.internal/core/render/Container.d.ts +8 -0
  77. package/.internal/core/render/Container.d.ts.map +1 -1
  78. package/.internal/core/render/Container.js +1 -9
  79. package/.internal/core/render/Container.js.map +1 -1
  80. package/.internal/core/render/Ellipse.d.ts +28 -0
  81. package/.internal/core/render/Ellipse.d.ts.map +1 -0
  82. package/.internal/core/render/Ellipse.js +51 -0
  83. package/.internal/core/render/Ellipse.js.map +1 -0
  84. package/.internal/core/render/GridLayout.d.ts +1 -3
  85. package/.internal/core/render/GridLayout.d.ts.map +1 -1
  86. package/.internal/core/render/GridLayout.js +10 -10
  87. package/.internal/core/render/GridLayout.js.map +1 -1
  88. package/.internal/core/render/HorizontalLayout.d.ts.map +1 -1
  89. package/.internal/core/render/HorizontalLayout.js +18 -4
  90. package/.internal/core/render/HorizontalLayout.js.map +1 -1
  91. package/.internal/core/render/Layout.d.ts +2 -0
  92. package/.internal/core/render/Layout.d.ts.map +1 -1
  93. package/.internal/core/render/Layout.js +8 -0
  94. package/.internal/core/render/Layout.js.map +1 -1
  95. package/.internal/core/render/Legend.d.ts +6 -4
  96. package/.internal/core/render/Legend.d.ts.map +1 -1
  97. package/.internal/core/render/Legend.js +35 -34
  98. package/.internal/core/render/Legend.js.map +1 -1
  99. package/.internal/core/render/Line.js +1 -1
  100. package/.internal/core/render/Line.js.map +1 -1
  101. package/.internal/core/render/Series.d.ts +1 -1
  102. package/.internal/core/render/Series.d.ts.map +1 -1
  103. package/.internal/core/render/Series.js +5 -3
  104. package/.internal/core/render/Series.js.map +1 -1
  105. package/.internal/core/render/Slice.d.ts.map +1 -1
  106. package/.internal/core/render/Slice.js +7 -1
  107. package/.internal/core/render/Slice.js.map +1 -1
  108. package/.internal/core/render/Slider.d.ts +0 -2
  109. package/.internal/core/render/Slider.d.ts.map +1 -1
  110. package/.internal/core/render/Slider.js +0 -2
  111. package/.internal/core/render/Slider.js.map +1 -1
  112. package/.internal/core/render/Sprite.d.ts +11 -2
  113. package/.internal/core/render/Sprite.d.ts.map +1 -1
  114. package/.internal/core/render/Sprite.js +40 -17
  115. package/.internal/core/render/Sprite.js.map +1 -1
  116. package/.internal/core/render/VerticalLayout.d.ts.map +1 -1
  117. package/.internal/core/render/VerticalLayout.js +18 -4
  118. package/.internal/core/render/VerticalLayout.js.map +1 -1
  119. package/.internal/core/render/backend/CanvasRenderer.d.ts +9 -4
  120. package/.internal/core/render/backend/CanvasRenderer.d.ts.map +1 -1
  121. package/.internal/core/render/backend/CanvasRenderer.js +136 -32
  122. package/.internal/core/render/backend/CanvasRenderer.js.map +1 -1
  123. package/.internal/core/render/backend/Renderer.d.ts +2 -0
  124. package/.internal/core/render/backend/Renderer.d.ts.map +1 -1
  125. package/.internal/core/render/backend/Renderer.js.map +1 -1
  126. package/.internal/core/util/Array.d.ts.map +1 -1
  127. package/.internal/core/util/Array.js +13 -23
  128. package/.internal/core/util/Array.js.map +1 -1
  129. package/.internal/core/util/DateFormatter.d.ts.map +1 -1
  130. package/.internal/core/util/DateFormatter.js +4 -7
  131. package/.internal/core/util/DateFormatter.js.map +1 -1
  132. package/.internal/core/util/Entity.d.ts +19 -0
  133. package/.internal/core/util/Entity.d.ts.map +1 -1
  134. package/.internal/core/util/Entity.js +69 -7
  135. package/.internal/core/util/Entity.js.map +1 -1
  136. package/.internal/core/util/InterfaceColors.d.ts +1 -1
  137. package/.internal/core/util/InterfaceColors.js.map +1 -1
  138. package/.internal/core/util/List.d.ts +7 -0
  139. package/.internal/core/util/List.d.ts.map +1 -1
  140. package/.internal/core/util/List.js +14 -0
  141. package/.internal/core/util/List.js.map +1 -1
  142. package/.internal/core/util/Modal.d.ts +50 -0
  143. package/.internal/core/util/Modal.d.ts.map +1 -0
  144. package/.internal/core/util/Modal.js +215 -0
  145. package/.internal/core/util/Modal.js.map +1 -0
  146. package/.internal/core/util/Template.d.ts +2 -1
  147. package/.internal/core/util/Template.d.ts.map +1 -1
  148. package/.internal/core/util/Template.js +19 -1
  149. package/.internal/core/util/Template.js.map +1 -1
  150. package/.internal/core/util/Time.d.ts +16 -19
  151. package/.internal/core/util/Time.d.ts.map +1 -1
  152. package/.internal/core/util/Time.js +209 -122
  153. package/.internal/core/util/Time.js.map +1 -1
  154. package/.internal/core/util/Timezone.d.ts +28 -0
  155. package/.internal/core/util/Timezone.d.ts.map +1 -0
  156. package/.internal/core/util/Timezone.js +138 -0
  157. package/.internal/core/util/Timezone.js.map +1 -0
  158. package/.internal/core/util/Utils.d.ts +2 -1
  159. package/.internal/core/util/Utils.d.ts.map +1 -1
  160. package/.internal/core/util/Utils.js +6 -3
  161. package/.internal/core/util/Utils.js.map +1 -1
  162. package/.internal/plugins/exporting/Exporting.d.ts +10 -1
  163. package/.internal/plugins/exporting/Exporting.d.ts.map +1 -1
  164. package/.internal/plugins/exporting/Exporting.js +11 -3
  165. package/.internal/plugins/exporting/Exporting.js.map +1 -1
  166. package/.internal/plugins/sliceGrouper/SliceGrouper.d.ts +1 -0
  167. package/.internal/plugins/sliceGrouper/SliceGrouper.d.ts.map +1 -1
  168. package/.internal/plugins/sliceGrouper/SliceGrouper.js +15 -3
  169. package/.internal/plugins/sliceGrouper/SliceGrouper.js.map +1 -1
  170. package/.internal/themes/DefaultTheme.js +2 -2
  171. package/.internal/themes/DefaultTheme.js.map +1 -1
  172. package/CHANGELOG.md +70 -0
  173. package/examples/javascript/flow-chord/package.json +1 -1
  174. package/examples/javascript/flow-chord-directed/package.json +1 -1
  175. package/examples/javascript/flow-chord-non-ribbon/package.json +1 -1
  176. package/examples/javascript/flow-sankey/package.json +1 -1
  177. package/examples/javascript/gauge/package.json +1 -1
  178. package/examples/javascript/gauge-bands/package.json +1 -1
  179. package/examples/javascript/hierarchy-force-directed/package.json +1 -1
  180. package/examples/javascript/hierarchy-pack/package.json +1 -1
  181. package/examples/javascript/hierarchy-partition/package.json +1 -1
  182. package/examples/javascript/hierarchy-sunburst/package.json +1 -1
  183. package/examples/javascript/hierarchy-tree/package.json +1 -1
  184. package/examples/javascript/hierarchy-treemap/package.json +1 -1
  185. package/examples/javascript/map-animating-along-lines/package.json +1 -1
  186. package/examples/javascript/map-day-and-night/package.json +1 -1
  187. package/examples/javascript/map-globe-rotate-to-country/package.json +1 -1
  188. package/examples/javascript/map-globe-with-projected-circles/package.json +1 -1
  189. package/examples/javascript/map-with-bubbles/package.json +1 -1
  190. package/examples/javascript/map-zoom-to-country/package.json +1 -1
  191. package/examples/javascript/misc-40-charts/package.json +1 -1
  192. package/examples/javascript/misc-microchart-grid/package.json +1 -1
  193. package/examples/javascript/pie-chart/package.json +1 -1
  194. package/examples/javascript/pie-donut-chart/package.json +1 -1
  195. package/examples/javascript/pie-variable-radius/package.json +1 -1
  196. package/examples/javascript/radar-column-iwatch-style/package.json +1 -1
  197. package/examples/javascript/radar-heat-map/package.json +1 -1
  198. package/examples/javascript/radar-line/package.json +1 -1
  199. package/examples/javascript/radar-time-line/package.json +1 -1
  200. package/examples/javascript/sliced-funnel/package.json +1 -1
  201. package/examples/javascript/sliced-pictorial-stacked/package.json +1 -1
  202. package/examples/javascript/sliced-pyramid/package.json +1 -1
  203. package/examples/javascript/venn-diagram/package.json +1 -1
  204. package/examples/javascript/wordcloud-with-data/package.json +1 -1
  205. package/examples/javascript/wordcloud-with-text/package.json +1 -1
  206. package/examples/javascript/xy-100-percent-stacked-column/package.json +1 -1
  207. package/examples/javascript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  208. package/examples/javascript/xy-bubble/package.json +1 -1
  209. package/examples/javascript/xy-candlestick/package.json +1 -1
  210. package/examples/javascript/xy-clustered-column/package.json +1 -1
  211. package/examples/javascript/xy-column/package.json +1 -1
  212. package/examples/javascript/xy-comparing-series-google-analytics-style/package.json +1 -1
  213. package/examples/javascript/xy-data-grouping/package.json +1 -1
  214. package/examples/javascript/xy-draggable-range/package.json +1 -1
  215. package/examples/javascript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  216. package/examples/javascript/xy-dumbbell plot/package.json +1 -1
  217. package/examples/javascript/xy-evenly-spaced-date-axis/package.json +1 -1
  218. package/examples/javascript/xy-line/package.json +1 -1
  219. package/examples/javascript/xy-line-highlight-on-legend-hover/package.json +1 -1
  220. package/examples/javascript/xy-live-data/package.json +1 -1
  221. package/examples/javascript/xy-multiple-synced-value-axes/package.json +1 -1
  222. package/examples/javascript/xy-ohlc/package.json +1 -1
  223. package/examples/javascript/xy-real-time-data-sorting/package.json +1 -1
  224. package/examples/javascript/xy-smoothed-line/package.json +1 -1
  225. package/examples/javascript/xy-stacked-and-clustered-column/package.json +1 -1
  226. package/examples/javascript/xy-stacked-column/package.json +1 -1
  227. package/examples/javascript/xy-stacked-step/package.json +1 -1
  228. package/examples/javascript/xy-stock/package.json +1 -1
  229. package/examples/javascript/xy-stock-comparing/package.json +1 -1
  230. package/examples/typescript/flow-chord/package.json +1 -1
  231. package/examples/typescript/flow-chord-directed/package.json +1 -1
  232. package/examples/typescript/flow-chord-non-ribbon/package.json +1 -1
  233. package/examples/typescript/flow-sankey/package.json +1 -1
  234. package/examples/typescript/gauge/package.json +1 -1
  235. package/examples/typescript/gauge-bands/package.json +1 -1
  236. package/examples/typescript/hierarchy-force-directed/package.json +1 -1
  237. package/examples/typescript/hierarchy-pack/package.json +1 -1
  238. package/examples/typescript/hierarchy-partition/package.json +1 -1
  239. package/examples/typescript/hierarchy-sunburst/package.json +1 -1
  240. package/examples/typescript/hierarchy-tree/package.json +1 -1
  241. package/examples/typescript/hierarchy-treemap/package.json +1 -1
  242. package/examples/typescript/map-animating-along-lines/package.json +1 -1
  243. package/examples/typescript/map-day-and-night/package.json +1 -1
  244. package/examples/typescript/map-globe-rotate-to-country/package.json +1 -1
  245. package/examples/typescript/map-globe-with-projected-circles/package.json +1 -1
  246. package/examples/typescript/map-with-bubbles/package.json +1 -1
  247. package/examples/typescript/map-zoom-to-country/package.json +1 -1
  248. package/examples/typescript/misc-40-charts/package.json +1 -1
  249. package/examples/typescript/misc-microchart-grid/package.json +1 -1
  250. package/examples/typescript/pie-chart/package.json +1 -1
  251. package/examples/typescript/pie-donut-chart/package.json +1 -1
  252. package/examples/typescript/pie-variable-radius/package.json +1 -1
  253. package/examples/typescript/radar-column-iwatch-style/package.json +1 -1
  254. package/examples/typescript/radar-heat-map/package.json +1 -1
  255. package/examples/typescript/radar-line/package.json +1 -1
  256. package/examples/typescript/radar-time-line/package.json +1 -1
  257. package/examples/typescript/sliced-funnel/package.json +1 -1
  258. package/examples/typescript/sliced-pictorial-stacked/package.json +1 -1
  259. package/examples/typescript/sliced-pyramid/package.json +1 -1
  260. package/examples/typescript/venn-diagram/package.json +1 -1
  261. package/examples/typescript/wordcloud-with-data/package.json +1 -1
  262. package/examples/typescript/wordcloud-with-text/package.json +1 -1
  263. package/examples/typescript/xy-100-percent-stacked-column/package.json +1 -1
  264. package/examples/typescript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  265. package/examples/typescript/xy-bubble/package.json +1 -1
  266. package/examples/typescript/xy-candlestick/package.json +1 -1
  267. package/examples/typescript/xy-clustered-column/package.json +1 -1
  268. package/examples/typescript/xy-column/package.json +1 -1
  269. package/examples/typescript/xy-comparing-series-google-analytics-style/package.json +1 -1
  270. package/examples/typescript/xy-data-grouping/package.json +1 -1
  271. package/examples/typescript/xy-draggable-range/package.json +1 -1
  272. package/examples/typescript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  273. package/examples/typescript/xy-dumbbell plot/package.json +1 -1
  274. package/examples/typescript/xy-evenly-spaced-date-axis/package.json +1 -1
  275. package/examples/typescript/xy-line/package.json +1 -1
  276. package/examples/typescript/xy-line-highlight-on-legend-hover/package.json +1 -1
  277. package/examples/typescript/xy-live-data/package.json +1 -1
  278. package/examples/typescript/xy-multiple-synced-value-axes/package.json +1 -1
  279. package/examples/typescript/xy-ohlc/package.json +1 -1
  280. package/examples/typescript/xy-real-time-data-sorting/package.json +1 -1
  281. package/examples/typescript/xy-smoothed-line/package.json +1 -1
  282. package/examples/typescript/xy-stacked-and-clustered-column/package.json +1 -1
  283. package/examples/typescript/xy-stacked-column/package.json +1 -1
  284. package/examples/typescript/xy-stacked-step/package.json +1 -1
  285. package/examples/typescript/xy-stock/package.json +1 -1
  286. package/examples/typescript/xy-stock-comparing/package.json +1 -1
  287. package/flow.d.ts +15 -13
  288. package/flow.d.ts.map +1 -1
  289. package/flow.js +2 -0
  290. package/flow.js.map +1 -1
  291. package/hierarchy.d.ts +14 -12
  292. package/hierarchy.d.ts.map +1 -1
  293. package/hierarchy.js +2 -0
  294. package/hierarchy.js.map +1 -1
  295. package/index.d.ts +43 -40
  296. package/index.d.ts.map +1 -1
  297. package/index.js +5 -2
  298. package/index.js.map +1 -1
  299. package/map.d.ts +11 -9
  300. package/map.d.ts.map +1 -1
  301. package/map.js +2 -0
  302. package/map.js.map +1 -1
  303. package/package.json +1 -1
  304. package/percent.d.ts +10 -8
  305. package/percent.d.ts.map +1 -1
  306. package/percent.js +2 -0
  307. package/percent.js.map +1 -1
  308. package/radar.d.ts +10 -8
  309. package/radar.d.ts.map +1 -1
  310. package/radar.js +2 -0
  311. package/radar.js.map +1 -1
  312. package/venn.d.ts +3 -1
  313. package/venn.d.ts.map +1 -1
  314. package/venn.js +2 -0
  315. package/venn.js.map +1 -1
  316. package/wc.d.ts +3 -1
  317. package/wc.d.ts.map +1 -1
  318. package/wc.js +2 -0
  319. package/wc.js.map +1 -1
  320. package/xy.d.ts +30 -25
  321. package/xy.d.ts.map +1 -1
  322. package/xy.js +5 -0
  323. package/xy.js.map +1 -1
@@ -1,5 +1,5 @@
1
1
  import { __extends } from "tslib";
2
- import { Layout } from "./Layout";
2
+ import { Layout, eachChildren } from "./Layout";
3
3
  import * as $type from "../util/Type";
4
4
  import { Percent } from "../util/Percent";
5
5
  /**
@@ -23,11 +23,22 @@ var HorizontalLayout = /** @class */ (function (_super) {
23
23
  var paddingLeft = container.get("paddingLeft", 0);
24
24
  var availableWidth = container.innerWidth();
25
25
  var totalPercent = 0;
26
- container.children.each(function (child) {
26
+ eachChildren(container, function (child) {
27
27
  if (child.get("position") == "relative") {
28
28
  var childWidth = child.get("width");
29
29
  if (childWidth instanceof Percent) {
30
30
  totalPercent += childWidth.value;
31
+ var w = availableWidth * childWidth.value;
32
+ var minWidth = child.get("minWidth", -Infinity);
33
+ if (minWidth > w) {
34
+ availableWidth -= minWidth;
35
+ totalPercent -= childWidth.value;
36
+ }
37
+ var maxWidth = child.get("maxWidth", Infinity);
38
+ if (w > maxWidth) {
39
+ availableWidth -= maxWidth;
40
+ totalPercent -= childWidth.value;
41
+ }
31
42
  }
32
43
  else {
33
44
  if (!$type.isNumber(childWidth)) {
@@ -38,18 +49,21 @@ var HorizontalLayout = /** @class */ (function (_super) {
38
49
  }
39
50
  });
40
51
  if (availableWidth > 0) {
41
- container.children.each(function (child) {
52
+ eachChildren(container, function (child) {
42
53
  if (child.get("position") == "relative") {
43
54
  var childWidth = child.get("width");
44
55
  if (childWidth instanceof Percent) {
45
56
  var privateWidth = availableWidth * childWidth.value / totalPercent - child.get("marginLeft", 0) - child.get("marginRight", 0);
57
+ var minWidth = child.get("minWidth", -Infinity);
58
+ var maxWidth = child.get("maxWidth", Infinity);
59
+ privateWidth = Math.min(Math.max(minWidth, privateWidth), maxWidth);
46
60
  child.setPrivate("width", privateWidth);
47
61
  }
48
62
  }
49
63
  });
50
64
  }
51
65
  var prevX = paddingLeft;
52
- container.children.each(function (child) {
66
+ eachChildren(container, function (child) {
53
67
  if (child.get("position") == "relative") {
54
68
  var bounds = child.adjustedLocalBounds();
55
69
  var marginLeft = child.get("marginLeft", 0);
@@ -1 +1 @@
1
- {"version":3,"file":"HorizontalLayout.js","sourceRoot":"","sources":["../../../../../src/.internal/core/render/HorizontalLayout.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAG1C;;;;GAIG;AACH;IAAsC,oCAAM;IAA5C;;IAwDA,CAAC;IAnDA;;OAEG;;;;;eACH,UAAuB,SAAoB;YAE1C,IAAI,WAAW,GAAG,SAAS,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;YAElD,IAAI,cAAc,GAAG,SAAS,CAAC,UAAU,EAAE,CAAC;YAE5C,IAAI,YAAY,GAAG,CAAC,CAAC;YAErB,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAC,KAAK;gBAC7B,IAAI,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,UAAU,EAAE;oBACxC,IAAI,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;oBACpC,IAAI,UAAU,YAAY,OAAO,EAAE;wBAClC,YAAY,IAAI,UAAU,CAAC,KAAK,CAAC;qBACjC;yBACI;wBACJ,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;4BAChC,UAAU,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;yBAC3B;wBACD,cAAc,IAAI,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;qBACxF;iBACD;YACF,CAAC,CAAC,CAAC;YAEH,IAAG,cAAc,GAAG,CAAC,EAAC;gBACrB,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAC,KAAK;oBAC7B,IAAI,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,UAAU,EAAE;wBACxC,IAAI,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;wBACpC,IAAI,UAAU,YAAY,OAAO,EAAE;4BAClC,IAAI,YAAY,GAAG,cAAc,GAAG,UAAU,CAAC,KAAK,GAAG,YAAY,GAAG,KAAK,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;4BAC/H,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;yBACxC;qBACD;gBACF,CAAC,CAAC,CAAC;aACH;YAED,IAAI,KAAK,GAAG,WAAW,CAAC;YAExB,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAC,KAAK;gBAC7B,IAAI,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,UAAU,EAAE;oBACxC,IAAI,MAAM,GAAG,KAAK,CAAC,mBAAmB,EAAE,CAAC;oBACzC,IAAI,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;oBAC5C,IAAI,WAAW,GAAG,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;oBAC9C,IAAI,CAAC,GAAG,KAAK,GAAG,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC;oBACzC,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;oBACzB,KAAK,GAAG,CAAC,GAAG,MAAM,CAAC,KAAK,GAAG,WAAW,CAAC;iBACvC;YACF,CAAC,CAAC,CAAC;QACJ,CAAC;;IArDD;;;;eAAkC,kBAAkB;OAAC;IACrD;;;;eAA0C,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;OAAC;IAqDlG,uBAAC;CAAA,AAxDD,CAAsC,MAAM,GAwD3C;SAxDY,gBAAgB","sourcesContent":["import { Layout } from \"./Layout\";\nimport * as $type from \"../util/Type\";\nimport { Percent } from \"../util/Percent\";\nimport type { Container } from \"./Container\";\n\n/**\n * A horizontal children layout for [[Container]].\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/containers/#Layout} for more info\n */\nexport class HorizontalLayout extends Layout {\n\n\tpublic static className: string = \"HorizontalLayout\";\n\tpublic static classNames: Array<string> = Layout.classNames.concat([HorizontalLayout.className]);\n\n\t/**\n\t * @ignore\n\t */\n\tpublic updateContainer(container: Container): void {\n\n\t\tlet paddingLeft = container.get(\"paddingLeft\", 0);\n\n\t\tlet availableWidth = container.innerWidth();\n\n\t\tlet totalPercent = 0;\n\n\t\tcontainer.children.each((child) => {\n\t\t\tif (child.get(\"position\") == \"relative\") {\n\t\t\t\tlet childWidth = child.get(\"width\");\n\t\t\t\tif (childWidth instanceof Percent) {\n\t\t\t\t\ttotalPercent += childWidth.value;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tif (!$type.isNumber(childWidth)) {\n\t\t\t\t\t\tchildWidth = child.width();\n\t\t\t\t\t}\n\t\t\t\t\tavailableWidth -= childWidth + child.get(\"marginLeft\", 0) + child.get(\"marginRight\", 0);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tif(availableWidth > 0){\n\t\t\tcontainer.children.each((child) => {\n\t\t\t\tif (child.get(\"position\") == \"relative\") {\n\t\t\t\t\tlet childWidth = child.get(\"width\");\n\t\t\t\t\tif (childWidth instanceof Percent) {\n\t\t\t\t\t\tlet privateWidth = availableWidth * childWidth.value / totalPercent - child.get(\"marginLeft\", 0) - child.get(\"marginRight\", 0);\n\t\t\t\t\t\tchild.setPrivate(\"width\", privateWidth);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tlet prevX = paddingLeft;\n\n\t\tcontainer.children.each((child) => {\n\t\t\tif (child.get(\"position\") == \"relative\") {\n\t\t\t\tlet bounds = child.adjustedLocalBounds();\n\t\t\t\tlet marginLeft = child.get(\"marginLeft\", 0);\n\t\t\t\tlet marginRight = child.get(\"marginRight\", 0);\n\t\t\t\tlet x = prevX + marginLeft - bounds.left;\n\t\t\t\tchild.setPrivate(\"x\", x);\n\t\t\t\tprevX = x + bounds.right + marginRight;\n\t\t\t}\n\t\t});\n\t}\n}\n"]}
1
+ {"version":3,"file":"HorizontalLayout.js","sourceRoot":"","sources":["../../../../../src/.internal/core/render/HorizontalLayout.ts"],"names":[],"mappings":"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","sourcesContent":["import { Layout, eachChildren } from \"./Layout\";\nimport * as $type from \"../util/Type\";\nimport { Percent } from \"../util/Percent\";\nimport type { Container } from \"./Container\";\n\n/**\n * A horizontal children layout for [[Container]].\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/containers/#Layout} for more info\n */\nexport class HorizontalLayout extends Layout {\n\n\tpublic static className: string = \"HorizontalLayout\";\n\tpublic static classNames: Array<string> = Layout.classNames.concat([HorizontalLayout.className]);\n\n\t/**\n\t * @ignore\n\t */\n\tpublic updateContainer(container: Container): void {\n\n\t\tlet paddingLeft = container.get(\"paddingLeft\", 0);\n\n\t\tlet availableWidth = container.innerWidth();\n\n\t\tlet totalPercent = 0;\n\n\t\teachChildren(container, (child) => {\n\t\t\tif (child.get(\"position\") == \"relative\") {\n\t\t\t\tlet childWidth = child.get(\"width\");\n\t\t\t\tif (childWidth instanceof Percent) {\n\t\t\t\t\ttotalPercent += childWidth.value;\n\n\t\t\t\t\tlet w = availableWidth * childWidth.value;\n\t\t\t\t\tlet minWidth = child.get(\"minWidth\", -Infinity);\n\t\t\t\t\tif (minWidth > w) {\n\t\t\t\t\t\tavailableWidth -= minWidth;\n\t\t\t\t\t\ttotalPercent -= childWidth.value;\n\t\t\t\t\t}\n\t\t\t\t\tlet maxWidth = child.get(\"maxWidth\", Infinity);\n\t\t\t\t\tif (w > maxWidth) {\n\t\t\t\t\t\tavailableWidth -= maxWidth;\n\t\t\t\t\t\ttotalPercent -= childWidth.value;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tif (!$type.isNumber(childWidth)) {\n\t\t\t\t\t\tchildWidth = child.width();\n\t\t\t\t\t}\n\t\t\t\t\tavailableWidth -= childWidth + child.get(\"marginLeft\", 0) + child.get(\"marginRight\", 0);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tif (availableWidth > 0) {\n\t\t\teachChildren(container, (child) => {\n\t\t\t\tif (child.get(\"position\") == \"relative\") {\n\t\t\t\t\tlet childWidth = child.get(\"width\");\n\t\t\t\t\tif (childWidth instanceof Percent) {\n\t\t\t\t\t\tlet privateWidth = availableWidth * childWidth.value / totalPercent - child.get(\"marginLeft\", 0) - child.get(\"marginRight\", 0);\n\t\t\t\t\t\tlet minWidth = child.get(\"minWidth\", -Infinity);\n\t\t\t\t\t\tlet maxWidth = child.get(\"maxWidth\", Infinity);\n\t\t\t\t\t\tprivateWidth = Math.min(Math.max(minWidth, privateWidth), maxWidth);\n\n\t\t\t\t\t\tchild.setPrivate(\"width\", privateWidth);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tlet prevX = paddingLeft;\n\n\t\teachChildren(container, (child) => {\n\t\t\tif (child.get(\"position\") == \"relative\") {\n\t\t\t\tlet bounds = child.adjustedLocalBounds();\n\t\t\t\tlet marginLeft = child.get(\"marginLeft\", 0);\n\t\t\t\tlet marginRight = child.get(\"marginRight\", 0);\n\n\t\t\t\tlet x = prevX + marginLeft - bounds.left;\n\t\t\t\tchild.setPrivate(\"x\", x);\n\t\t\t\tprevX = x + bounds.right + marginRight;\n\t\t\t}\n\t\t});\n\t}\n}\n"]}
@@ -1,9 +1,11 @@
1
1
  import type { Container } from "./Container";
2
+ import type { Sprite } from "./Sprite";
2
3
  import { Entity, IEntitySettings, IEntityPrivate } from "../util/Entity";
3
4
  export interface ILayoutSettings extends IEntitySettings {
4
5
  }
5
6
  export interface ILayoutPrivate extends IEntityPrivate {
6
7
  }
8
+ export declare function eachChildren(container: Container, f: (sprite: Sprite) => void): void;
7
9
  /**
8
10
  * Base class for [[Container]] layouts.
9
11
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Layout.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Layout.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEzE,MAAM,WAAW,eAAgB,SAAQ,eAAe;CACvD;AAED,MAAM,WAAW,cAAe,SAAQ,cAAc;CACrD;AAED;;GAEG;AACH,8BAAsB,MAAO,SAAQ,MAAM;IAC3B,SAAS,EAAE,eAAe,CAAC;IAC3B,gBAAgB,EAAE,cAAc,CAAC;IAEhD,OAAc,SAAS,EAAE,MAAM,CAAY;IAC3C,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAgD;IAEvF;;OAEG;aACa,eAAe,CAAC,UAAU,EAAE,SAAS,GAAG,IAAI;CAC5D"}
1
+ {"version":3,"file":"Layout.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Layout.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEzE,MAAM,WAAW,eAAgB,SAAQ,eAAe;CACvD;AAED,MAAM,WAAW,cAAe,SAAQ,cAAc;CACrD;AAED,wBAAgB,YAAY,CAAC,SAAS,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAMpF;AAED;;GAEG;AACH,8BAAsB,MAAO,SAAQ,MAAM;IAC3B,SAAS,EAAE,eAAe,CAAC;IAC3B,gBAAgB,EAAE,cAAc,CAAC;IAEhD,OAAc,SAAS,EAAE,MAAM,CAAY;IAC3C,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAgD;IAEvF;;OAEG;aACa,eAAe,CAAC,UAAU,EAAE,SAAS,GAAG,IAAI;CAC5D"}
@@ -1,5 +1,13 @@
1
1
  import { __extends } from "tslib";
2
2
  import { Entity } from "../util/Entity";
3
+ export function eachChildren(container, f) {
4
+ if (container.get("reverseChildren", false)) {
5
+ container.children.eachReverse(f);
6
+ }
7
+ else {
8
+ container.children.each(f);
9
+ }
10
+ }
3
11
  /**
4
12
  * Base class for [[Container]] layouts.
5
13
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Layout.js","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Layout.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,EAAmC,MAAM,gBAAgB,CAAC;AAQzE;;GAEG;AACH;IAAqC,0BAAM;IAA3C;;IAWA,CAAC;IAPA;;;;eAAkC,QAAQ;OAAC;IAC3C;;;;eAA0C,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;OAAC;IAMxF,aAAC;CAAA,AAXD,CAAqC,MAAM,GAW1C;SAXqB,MAAM","sourcesContent":["import type { Container } from \"./Container\";\nimport { Entity, IEntitySettings, IEntityPrivate } from \"../util/Entity\";\n\nexport interface ILayoutSettings extends IEntitySettings {\n}\n\nexport interface ILayoutPrivate extends IEntityPrivate {\n}\n\n/**\n * Base class for [[Container]] layouts.\n */\nexport abstract class Layout extends Entity {\n\tdeclare public _settings: ILayoutSettings;\n\tdeclare public _privateSettings: ILayoutPrivate;\n\n\tpublic static className: string = \"Layout\";\n\tpublic static classNames: Array<string> = Entity.classNames.concat([Layout.className]);\n\n\t/**\n\t * @ignore\n\t */\n\tpublic abstract updateContainer(_container: Container): void;\n}\n"]}
1
+ {"version":3,"file":"Layout.js","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Layout.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,MAAM,EAAmC,MAAM,gBAAgB,CAAC;AAQzE,MAAM,UAAU,YAAY,CAAC,SAAoB,EAAE,CAA2B;IAC1E,IAAI,SAAS,CAAC,GAAG,CAAC,iBAAiB,EAAE,KAAK,CAAC,EAAE;QACzC,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;KACrC;SAAM;QACH,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KAC9B;AACL,CAAC;AAED;;GAEG;AACH;IAAqC,0BAAM;IAA3C;;IAWA,CAAC;IAPA;;;;eAAkC,QAAQ;OAAC;IAC3C;;;;eAA0C,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;OAAC;IAMxF,aAAC;CAAA,AAXD,CAAqC,MAAM,GAW1C;SAXqB,MAAM","sourcesContent":["import type { Container } from \"./Container\";\nimport type { Sprite } from \"./Sprite\";\nimport { Entity, IEntitySettings, IEntityPrivate } from \"../util/Entity\";\n\nexport interface ILayoutSettings extends IEntitySettings {\n}\n\nexport interface ILayoutPrivate extends IEntityPrivate {\n}\n\nexport function eachChildren(container: Container, f: (sprite: Sprite) => void): void {\n if (container.get(\"reverseChildren\", false)) {\n container.children.eachReverse(f);\n } else {\n container.children.each(f);\n }\n}\n\n/**\n * Base class for [[Container]] layouts.\n */\nexport abstract class Layout extends Entity {\n\tdeclare public _settings: ILayoutSettings;\n\tdeclare public _privateSettings: ILayoutPrivate;\n\n\tpublic static className: string = \"Layout\";\n\tpublic static classNames: Array<string> = Entity.classNames.concat([Layout.className]);\n\n\t/**\n\t * @ignore\n\t */\n\tpublic abstract updateContainer(_container: Container): void;\n}\n"]}
@@ -1,11 +1,11 @@
1
1
  import type { DataItem } from "../../core/render/Component";
2
- import type { Entity, IEntitySettings } from "../../core/util/Entity";
3
- import type { Color } from "../../core/util/Color";
4
- import { Series, ISeriesSettings, ISeriesDataItem, ISeriesPrivate } from "./Series";
2
+ import { Series, ISeriesSettings, ISeriesDataItem, ISeriesPrivate, ISeriesEvents } from "./Series";
5
3
  import { Container } from "../../core/render/Container";
6
4
  import { Label } from "../../core/render/Label";
7
5
  import { RoundedRectangle } from "../../core/render/RoundedRectangle";
8
6
  import { ListTemplate } from "../../core/util/List";
7
+ import type { Entity, IEntitySettings } from "../../core/util/Entity";
8
+ import type { Color } from "../../core/util/Color";
9
9
  export interface ILegendDataItem extends ISeriesDataItem {
10
10
  /**
11
11
  * [[Container]] element holding all other legend item elements, labels,
@@ -91,6 +91,8 @@ export interface ILegendSettings extends ISeriesSettings {
91
91
  }
92
92
  export interface ILegendPrivate extends ISeriesPrivate {
93
93
  }
94
+ export interface ILegendEvents extends ISeriesEvents {
95
+ }
94
96
  /**
95
97
  * A universal legend control.
96
98
  *
@@ -104,6 +106,7 @@ export declare class Legend extends Series {
104
106
  _settings: ILegendSettings;
105
107
  _privateSettings: ILegendPrivate;
106
108
  _dataItemSettings: ILegendDataItem;
109
+ _events: ILegendEvents;
107
110
  /**
108
111
  * List of all [[Container]] elements for legend items.
109
112
  *
@@ -155,7 +158,6 @@ export declare class Legend extends Series {
155
158
  */
156
159
  readonly markerRectangles: ListTemplate<RoundedRectangle>;
157
160
  protected processDataItem(dataItem: DataItem<this["_dataItemSettings"]>): void;
158
- protected _addHoverEvents(container: Container, item: ILegendItem, _dataItem: DataItem<this["_dataItemSettings"]>): void;
159
161
  protected _addClickEvents(container: Container, item: ILegendItem, dataItem: DataItem<this["_dataItemSettings"]>): void;
160
162
  /**
161
163
  * @ignore
@@ -1 +1 @@
1
- {"version":3,"file":"Legend.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Legend.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAEnD,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AACpF,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAGtE,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAIpD,MAAM,WAAW,eAAgB,SAAQ,eAAe;IAEvD;;;OAGG;IACH,aAAa,EAAE,SAAS,CAAC;IAEzB;;OAEG;IACH,MAAM,EAAE,SAAS,CAAC;IAElB;;OAEG;IACH,eAAe,EAAE,gBAAgB,CAAC;IAElC;;OAEG;IACH,KAAK,EAAE,KAAK,CAAC;IAEb;;OAEG;IACH,UAAU,EAAE,KAAK,CAAC;IAElB;;OAEG;IACH,IAAI,CAAC,EAAE,KAAK,CAAC;IAEb;;OAEG;IACH,MAAM,CAAC,EAAE,KAAK,CAAC;IAEf;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CAEd;AAED,MAAM,WAAW,mBAAoB,SAAQ,eAAe;IAC3D,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,WAAY,SAAQ,MAAM;IAC1C,SAAS,EAAE,mBAAmB,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,OAAO,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC;IAClB,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAA;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;CAEnB;AAID,MAAM,WAAW,eAAgB,SAAQ,eAAe;IAEvD;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;;;;;;OAQG;IACH,WAAW,CAAC,EAAE,eAAe,GAAG,QAAQ,GAAG,MAAM,CAAA;CAEjD;AAED,MAAM,WAAW,cAAe,SAAQ,cAAc;CACrD;AAED;;;;;GAKG;AACH,qBAAa,MAAO,SAAQ,MAAM;IACjC,SAAS,CAAC,SAAS;IAMnB,OAAc,SAAS,EAAE,MAAM,CAAY;IAC3C,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAgD;IAExE,SAAS,EAAE,eAAe,CAAC;IAC3B,gBAAgB,EAAE,cAAc,CAAC;IACjC,iBAAiB,EAAE,eAAe,CAAC;IAElD;;;;OAIG;IACH,SAAgB,cAAc,EAAE,YAAY,CAAC,SAAS,CAAC,CAUrD;IAEF;;OAEG;IACI,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,GAAG,SAAS;IAQlF;;OAEG;IACI,UAAU,IAAI,SAAS;IAO9B;;;;OAIG;IACH,SAAgB,OAAO,EAAE,YAAY,CAAC,SAAS,CAAC,CAK9C;IAEF;;OAEG;IACI,SAAS,IAAI,KAAK;IAMzB;;;;OAIG;IACH,SAAgB,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,CAKzC;IAEF;;OAEG;IACI,cAAc,IAAI,KAAK;IAM9B;;;;OAIG;IACH,SAAgB,WAAW,EAAE,YAAY,CAAC,KAAK,CAAC,CAK9C;IAEF;;OAEG;IACI,mBAAmB,IAAI,gBAAgB;IAM9C;;;;OAIG;IACH,SAAgB,gBAAgB,EAAE,YAAY,CAAC,gBAAgB,CAAC,CAK9D;IAGF,SAAS,CAAC,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAgHvE,SAAS,CAAC,eAAe,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAgBjH,SAAS,CAAC,eAAe,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAmBhH;;OAEG;IACI,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;CAiCpE"}
1
+ {"version":3,"file":"Legend.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Legend.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,6 @@ import { Series } from "./Series";
3
3
  import { Container } from "../../core/render/Container";
4
4
  import { Label } from "../../core/render/Label";
5
5
  import { RoundedRectangle } from "../../core/render/RoundedRectangle";
6
- import { Rectangle } from "../../core/render/Rectangle";
7
6
  import { Template } from "../../core/util/Template";
8
7
  import { ListTemplate } from "../../core/util/List";
9
8
  import * as $utils from "../../core/util/Utils";
@@ -29,7 +28,7 @@ var Legend = /** @class */ (function (_super) {
29
28
  value: new ListTemplate(Template.new({}), function () { return Container._new(_this._root, {
30
29
  themeTags: $utils.mergeTags(_this.itemContainers.template.get("themeTags", []), ["legend", "item"]),
31
30
  themeTagsSelf: $utils.mergeTags(_this.itemContainers.template.get("themeTagsSelf", []), ["itemcontainer"]),
32
- background: Rectangle.new(_this._root, {
31
+ background: RoundedRectangle.new(_this._root, {
33
32
  themeTags: $utils.mergeTags(_this.itemContainers.template.get("themeTags", []), ["legend", "item", "background"]),
34
33
  themeTagsSelf: $utils.mergeTags(_this.itemContainers.template.get("themeTagsSelf", []), ["itemcontainer"])
35
34
  })
@@ -180,9 +179,9 @@ var Legend = /** @class */ (function (_super) {
180
179
  var strokeField = this.get("strokeField");
181
180
  if (itemContainer) {
182
181
  var clickTarget = this.get("clickTarget", "itemContainer");
183
- var item = dataItem.dataContext;
184
- if (item && item.set) {
185
- item.set("legendDataItem", dataItem);
182
+ var item_1 = dataItem.dataContext;
183
+ if (item_1 && item_1.set) {
184
+ item_1.set("legendDataItem", dataItem);
186
185
  }
187
186
  itemContainer._setDataItem(dataItem);
188
187
  dataItem.set("itemContainer", itemContainer);
@@ -192,27 +191,37 @@ var Legend = /** @class */ (function (_super) {
192
191
  marker._setDataItem(dataItem);
193
192
  dataItem.set("marker", marker);
194
193
  var useDefaultMarker = this.get("useDefaultMarker");
195
- var markerRectangle = marker.children.push(this.makeMarkerRectangle());
194
+ var markerRectangle_1 = marker.children.push(this.makeMarkerRectangle());
196
195
  var fill = dataItem.get("fill");
197
196
  var stroke = dataItem.get("stroke");
198
- dataItem.set("markerRectangle", markerRectangle);
199
- if (item && item.get) {
200
- fill = item.get(fillField, fill);
201
- stroke = item.get(strokeField, stroke);
197
+ dataItem.set("markerRectangle", markerRectangle_1);
198
+ if (item_1 && item_1.get) {
199
+ fill = item_1.get(fillField, fill);
200
+ stroke = item_1.get(strokeField, stroke);
202
201
  }
203
202
  if (!stroke) {
204
203
  stroke = fill;
205
204
  }
206
205
  if (!useDefaultMarker) {
207
- if (item && item.createLegendMarker) {
208
- item.createLegendMarker();
206
+ if (item_1 && item_1.createLegendMarker) {
207
+ item_1.createLegendMarker();
209
208
  }
210
209
  }
211
- markerRectangle.setAll({ fill: fill, stroke: stroke });
210
+ else {
211
+ if (item_1.on) {
212
+ item_1.on(fillField, function () {
213
+ markerRectangle_1.set("fill", item_1.get(fillField));
214
+ });
215
+ item_1.on(strokeField, function () {
216
+ markerRectangle_1.set("stroke", item_1.get(strokeField));
217
+ });
218
+ }
219
+ }
220
+ markerRectangle_1.setAll({ fill: fill, stroke: stroke });
212
221
  // this solves if template field is set on slice
213
- var component = item.component;
222
+ var component = item_1.component;
214
223
  if (component && component.updateLegendMarker) {
215
- component.updateLegendMarker(item);
224
+ component.updateLegendMarker(item_1);
216
225
  }
217
226
  }
218
227
  var label_1 = this.makeLabel();
@@ -223,8 +232,8 @@ var Legend = /** @class */ (function (_super) {
223
232
  label_1.text.on("text", function () {
224
233
  itemContainer.set("ariaLabel", label_1.text._getText() + "; " + _this._t("Press ENTER to toggle"));
225
234
  });
226
- if (item && item.get) {
227
- dataItem.set("name", item.get(nameField));
235
+ if (item_1 && item_1.get) {
236
+ dataItem.set("name", item_1.get(nameField));
228
237
  }
229
238
  var name_1 = dataItem.get("name");
230
239
  if (name_1) {
@@ -237,30 +246,31 @@ var Legend = /** @class */ (function (_super) {
237
246
  valueLabel._setDataItem(dataItem);
238
247
  dataItem.set("valueLabel", valueLabel);
239
248
  }
240
- if (item && item.show) {
241
- this._disposers.push(item.on("visible", function (visible) {
249
+ if (item_1 && item_1.show) {
250
+ this._disposers.push(item_1.on("visible", function (visible) {
242
251
  itemContainer.set("disabled", !visible);
243
252
  }));
244
- if (!item.get("visible")) {
253
+ if (!item_1.get("visible")) {
245
254
  itemContainer.set("disabled", true);
246
255
  }
247
- var clickContainer = itemContainer;
248
- this._addHoverEvents(clickContainer, item, dataItem);
249
256
  if (clickTarget != "none") {
257
+ var clickContainer = itemContainer;
250
258
  if (clickTarget == "marker") {
251
259
  clickContainer = marker;
252
260
  }
253
- this._addClickEvents(clickContainer, item, dataItem);
261
+ this._addClickEvents(clickContainer, item_1, dataItem);
254
262
  }
255
263
  }
256
264
  }
257
265
  }
258
266
  });
259
- Object.defineProperty(Legend.prototype, "_addHoverEvents", {
267
+ Object.defineProperty(Legend.prototype, "_addClickEvents", {
260
268
  enumerable: false,
261
269
  configurable: true,
262
270
  writable: true,
263
- value: function (container, item, _dataItem) {
271
+ value: function (container, item, dataItem) {
272
+ var _this = this;
273
+ container.set("cursorOverStyle", "pointer");
264
274
  container.events.on("pointerover", function () {
265
275
  var component = item.component;
266
276
  if (component && component.hoverDataItem) {
@@ -273,15 +283,6 @@ var Legend = /** @class */ (function (_super) {
273
283
  component.unhoverDataItem(item);
274
284
  }
275
285
  });
276
- }
277
- });
278
- Object.defineProperty(Legend.prototype, "_addClickEvents", {
279
- enumerable: false,
280
- configurable: true,
281
- writable: true,
282
- value: function (container, item, dataItem) {
283
- var _this = this;
284
- container.set("cursorOverStyle", "pointer");
285
286
  container.events.on("click", function () {
286
287
  var labelText = dataItem.get("label").text._getText();
287
288
  if (item.show && item.isHidden && (item.isHidden() || item.get("visible") === false)) {
@@ -1 +1 @@
1
- {"version":3,"file":"Legend.js","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Legend.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport type { Entity, IEntitySettings } from \"../../core/util/Entity\";\nimport type { Color } from \"../../core/util/Color\";\n\nimport { Series, ISeriesSettings, ISeriesDataItem, ISeriesPrivate } from \"./Series\";\nimport { Container } from \"../../core/render/Container\";\nimport { Label } from \"../../core/render/Label\";\nimport { RoundedRectangle } from \"../../core/render/RoundedRectangle\";\nimport { Rectangle } from \"../../core/render/Rectangle\";\nimport { Template } from \"../../core/util/Template\";\nimport { ListTemplate } from \"../../core/util/List\";\n\nimport * as $utils from \"../../core/util/Utils\";\n\nexport interface ILegendDataItem extends ISeriesDataItem {\n\n\t/**\n\t * [[Container]] element holding all other legend item elements, labels,\n\t * markers, etc.\n\t */\n\titemContainer: Container;\n\n\t/**\n\t * Marker element.\n\t */\n\tmarker: Container;\n\n\t/**\n\t * Marker rectangle element.\n\t */\n\tmarkerRectangle: RoundedRectangle;\n\n\t/**\n\t * Label element.\n\t */\n\tlabel: Label;\n\n\t/**\n\t * Value label element.\n\t */\n\tvalueLabel: Label;\n\n\t/**\n\t * Marker fill color.\n\t */\n\tfill?: Color;\n\n\t/**\n\t * Marker stroke (outline) color.\n\t */\n\tstroke?: Color;\n\n\t/**\n\t * Name of the legend item.\n\t */\n\tname?: string;\n\n}\n\nexport interface ILegendItemSettings extends IEntitySettings {\n\tvisible?: boolean;\n}\n\n/**\n * @ignore\n */\nexport interface ILegendItem extends Entity {\n\t_settings: ILegendItemSettings;\n\tisHidden?: () => boolean;\n\tshow?: () => void;\n\thide?: () => void;\n\tcreateLegendMarker?: () => {}\n\tcomponent?: Series;\n\t// how to define that properties of dataItem should have legendDataItem?\n}\n\n//type ILegendDataItemSettings = { [K in keyof ILegendDataItem]?: string; };\n\nexport interface ILegendSettings extends ISeriesSettings {\n\n\t/**\n\t * If set to `true` the legend will not try to mimic appearance of the actual\n\t * item but rather show default square marker.\n\t *\n\t * @default false\n\t */\n\tuseDefaultMarker?: boolean;\n\n\t/**\n\t * A key to look up in data for a name of the data item.\n\t *\n\t */\n\tnameField?: string;\n\n\t/**\n\t * A key to look up in data for a fill of the data item.\n\t *\n\t */\n\tfillField?: string;\n\n\t/**\n\t * A key to look up in data for a stroke of the data item.\n\t *\n\t */\n\tstrokeField?: string;\n\n\t/**\n\t * Which legend item element will be clickable to toggle related chart item:\n\t * * `\"itemContainer\"` - the whole legend item (default).\n\t * * `\"marker\"` - legend item marker.\n\t * * `\"none\"` - disables toggling of legend item.\n\t *\n\t * @default \"itemContainer\"\n\t * @since 5.0.13\n\t */\n\tclickTarget?: \"itemContainer\" | \"marker\" | \"none\"\n\n}\n\nexport interface ILegendPrivate extends ISeriesPrivate {\n}\n\n/**\n * A universal legend control.\n *\n * @important\n * @see {@link https://www.amcharts.com/docs/v5/concepts/legend/} for more info\n */\nexport class Legend extends Series {\n\tprotected _afterNew() {\n\t\tthis._settings.themeTags = $utils.mergeTags(this._settings.themeTags, [\"legend\"]);\n\t\tthis.fields.push(\"name\", \"stroke\", \"fill\");\n\t\tsuper._afterNew();\n\t}\n\n\tpublic static className: string = \"Legend\";\n\tpublic static classNames: Array<string> = Series.classNames.concat([Legend.className]);\n\n\tdeclare public _settings: ILegendSettings;\n\tdeclare public _privateSettings: ILegendPrivate;\n\tdeclare public _dataItemSettings: ILegendDataItem;\n\n\t/**\n\t * List of all [[Container]] elements for legend items.\n\t *\n\t * @default new ListTemplate<Container>\n\t */\n\tpublic readonly itemContainers: ListTemplate<Container> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => Container._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.itemContainers.template.get(\"themeTags\", []), [\"legend\", \"item\"]),\n\t\t\tthemeTagsSelf: $utils.mergeTags(this.itemContainers.template.get(\"themeTagsSelf\", []), [\"itemcontainer\"]),\n\t\t\tbackground: Rectangle.new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.itemContainers.template.get(\"themeTags\", []), [\"legend\", \"item\", \"background\"]),\n\t\t\t\tthemeTagsSelf: $utils.mergeTags(this.itemContainers.template.get(\"themeTagsSelf\", []), [\"itemcontainer\"])\n\t\t\t})\n\t\t}, [this.itemContainers.template])\n\t);\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeItemContainer(dataItem: DataItem<this[\"_dataItemSettings\"]>): Container {\n\t\tconst itemContainer = this.children.push(this.itemContainers.make());\n\t\titemContainer._setDataItem(dataItem);\n\t\tthis.itemContainers.push(itemContainer);\n\t\titemContainer.states.create(\"disabled\", {});\n\t\treturn itemContainer;\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeMarker(): Container {\n\t\tconst marker = this.markers.make();\n\t\tthis.markers.push(marker);\n\t\tmarker.states.create(\"disabled\", {});\n\t\treturn marker;\n\t}\n\n\t/**\n\t * List of legend marker elements.\n\t *\n\t * @default new ListTemplate<Container>\n\t */\n\tpublic readonly markers: ListTemplate<Container> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => Container._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.markers.template.get(\"themeTags\", []), [\"legend\", \"marker\"])\n\t\t}, [this.markers.template])\n\t);\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeLabel(): Label {\n\t\tconst label = this.labels.make();\n\t\tlabel.states.create(\"disabled\", {});\n\t\treturn label;\n\t}\n\n\t/**\n\t * List of legend label elements.\n\t *\n\t * @default new ListTemplate<Label>\n\t */\n\tpublic readonly labels: ListTemplate<Label> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => Label._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.labels.template.get(\"themeTags\", []), [\"legend\", \"label\"])\n\t\t}, [this.labels.template])\n\t);\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeValueLabel(): Label {\n\t\tconst valueLabel = this.valueLabels.make();\n\t\tvalueLabel.states.create(\"disabled\", {});\n\t\treturn valueLabel;\n\t}\n\n\t/**\n\t * List of legend value label elements.\n\t *\n\t * @default new ListTemplate<label>\n\t */\n\tpublic readonly valueLabels: ListTemplate<Label> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => Label._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.valueLabels.template.get(\"themeTags\", []), [\"legend\", \"label\", \"value\"])\n\t\t}, [this.valueLabels.template])\n\t);\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeMarkerRectangle(): RoundedRectangle {\n\t\tconst markerRectangle = this.markerRectangles.make();\n\t\tmarkerRectangle.states.create(\"disabled\", {});\n\t\treturn markerRectangle;\n\t}\n\n\t/**\n\t * List of rectangle elements used for default legend markers.\n\t *\n\t * @default new ListTemplate<RoundedRectangle>\n\t */\n\tpublic readonly markerRectangles: ListTemplate<RoundedRectangle> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => RoundedRectangle._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.markerRectangles.template.get(\"themeTags\", []), [\"legend\", \"marker\", \"rectangle\"])\n\t\t}, [this.markerRectangles.template])\n\t);\n\n\n\tprotected processDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.processDataItem(dataItem);\n\n\t\tconst itemContainer = this.makeItemContainer(dataItem);\n\n\t\tconst nameField = this.get(\"nameField\");\n\t\tconst fillField = this.get(\"fillField\");\n\t\tconst strokeField = this.get(\"strokeField\");\n\n\t\tif (itemContainer) {\n\t\t\tconst clickTarget = this.get(\"clickTarget\", \"itemContainer\");\n\n\t\t\tconst item = dataItem.dataContext as ILegendItem;\n\n\t\t\tif (item && item.set) {\n\t\t\t\titem.set(<any>\"legendDataItem\", dataItem);\n\t\t\t}\n\n\t\t\titemContainer._setDataItem(dataItem);\n\t\t\tdataItem.set(\"itemContainer\", itemContainer);\n\n\t\t\tconst marker = this.makeMarker();\n\t\t\tif (marker) {\n\t\t\t\titemContainer.children.push(marker);\n\t\t\t\tmarker._setDataItem(dataItem);\n\t\t\t\tdataItem.set(\"marker\", marker);\n\n\t\t\t\tconst useDefaultMarker = this.get(\"useDefaultMarker\");\n\n\t\t\t\tconst markerRectangle = marker.children.push(this.makeMarkerRectangle());\n\n\t\t\t\tlet fill = dataItem.get(\"fill\");\n\t\t\t\tlet stroke = dataItem.get(\"stroke\");\n\n\t\t\t\tdataItem.set(\"markerRectangle\", markerRectangle);\n\n\t\t\t\tif (item && item.get) {\n\t\t\t\t\tfill = item.get(fillField as any, fill);\n\t\t\t\t\tstroke = item.get(strokeField as any, stroke);\n\t\t\t\t}\n\n\t\t\t\tif (!stroke) {\n\t\t\t\t\tstroke = fill;\n\t\t\t\t}\n\n\t\t\t\tif (!useDefaultMarker) {\n\t\t\t\t\tif (item && item.createLegendMarker) {\n\t\t\t\t\t\titem.createLegendMarker();\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tmarkerRectangle.setAll({ fill, stroke });\n\n\t\t\t\t// this solves if template field is set on slice\n\t\t\t\tconst component = item.component;\n\t\t\t\tif (component && component.updateLegendMarker) {\n\t\t\t\t\tcomponent.updateLegendMarker(item as any);\n\t\t\t\t}\n\n\t\t\t}\n\n\t\t\tconst label = this.makeLabel();\n\n\t\t\tif (label) {\n\t\t\t\titemContainer.children.push(label);\n\t\t\t\tlabel._setDataItem(dataItem);\n\t\t\t\tdataItem.set(\"label\", label);\n\n\t\t\t\tlabel.text.on(\"text\", () => {\n\t\t\t\t\titemContainer.set(\"ariaLabel\", label.text._getText() + \"; \" + this._t(\"Press ENTER to toggle\"));\n\t\t\t\t});\n\n\t\t\t\tif (item && item.get) {\n\t\t\t\t\tdataItem.set(\"name\", item.get(nameField as any) as string);\n\t\t\t\t}\n\n\t\t\t\tlet name = dataItem.get(\"name\");\n\n\t\t\t\tif (name) {\n\t\t\t\t\tlabel.set(\"text\", name);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tconst valueLabel = this.makeValueLabel();\n\t\t\tif (valueLabel) {\n\t\t\t\titemContainer.children.push(valueLabel);\n\t\t\t\tvalueLabel._setDataItem(dataItem);\n\t\t\t\tdataItem.set(\"valueLabel\", valueLabel);\n\t\t\t}\n\n\t\t\tif (item && item.show) {\n\n\t\t\t\tthis._disposers.push(item.on(\"visible\", (visible) => {\n\t\t\t\t\titemContainer.set(\"disabled\", !visible)\n\t\t\t\t}));\n\n\t\t\t\tif (!item.get(\"visible\")) {\n\t\t\t\t\titemContainer.set(\"disabled\", true);\n\t\t\t\t}\n\n\t\t\t\tvar clickContainer = itemContainer;\n\t\t\t\tthis._addHoverEvents(clickContainer, item, dataItem)\n\t\t\t\tif (clickTarget != \"none\") {\n\t\t\t\t\tif (clickTarget == \"marker\") {\n\t\t\t\t\t\tclickContainer = marker;\n\t\t\t\t\t}\n\t\t\t\t\tthis._addClickEvents(clickContainer, item, dataItem)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected _addHoverEvents(container: Container, item: ILegendItem, _dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tcontainer.events.on(\"pointerover\", () => {\n\t\t\tconst component = item.component;\n\t\t\tif (component && component.hoverDataItem) {\n\t\t\t\tcomponent.hoverDataItem(item as any)\n\t\t\t}\n\t\t})\n\n\t\tcontainer.events.on(\"pointerout\", () => {\n\t\t\tconst component = item.component;\n\t\t\tif (component && component.hoverDataItem) {\n\t\t\t\tcomponent.unhoverDataItem(item as any)\n\t\t\t}\n\t\t})\n\t}\n\n\tprotected _addClickEvents(container: Container, item: ILegendItem, dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tcontainer.set(\"cursorOverStyle\", \"pointer\");\n\t\tcontainer.events.on(\"click\", () => {\n\t\t\tconst labelText = dataItem.get(\"label\").text._getText();\n\n\t\t\tif (item.show && item.isHidden && (item.isHidden() || item.get(\"visible\") === false)) {\n\t\t\t\titem.show();\n\t\t\t\tcontainer.set(\"disabled\", false);\n\t\t\t\tthis._root.readerAlert(this._t(\"%1 shown\", this._root.locale, labelText));\n\t\t\t}\n\t\t\telse if (item.hide) {\n\t\t\t\titem.hide();\n\t\t\t\tcontainer.set(\"disabled\", true);\n\t\t\t\tthis._root.readerAlert(this._t(\"%1 hidden\", this._root.locale, labelText));\n\t\t\t}\n\t\t})\n\t}\n\n\n\t/**\n\t * @ignore\n\t */\n\tpublic disposeDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\n\t\tlet itemContainer = dataItem.get(\"itemContainer\");\n\t\tif (itemContainer) {\n\t\t\tthis.itemContainers.removeValue(itemContainer);\n\t\t\titemContainer.dispose();\n\t\t}\n\n\t\tlet marker = dataItem.get(\"marker\");\n\t\tif (marker) {\n\t\t\tthis.markers.removeValue(marker);\n\t\t\tmarker.dispose();\n\t\t}\n\n\t\tlet markerRectangle = dataItem.get(\"markerRectangle\");\n\t\tif (markerRectangle) {\n\t\t\tthis.markerRectangles.removeValue(markerRectangle);\n\t\t\tmarkerRectangle.dispose();\n\t\t}\n\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 valueLabel = dataItem.get(\"valueLabel\");\n\t\tif (valueLabel) {\n\t\t\tthis.valueLabels.removeValue(valueLabel);\n\t\t\tvalueLabel.dispose();\n\t\t}\n\n\t}\n}\n"]}
1
+ {"version":3,"file":"Legend.js","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Legend.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport { Series, ISeriesSettings, ISeriesDataItem, ISeriesPrivate, ISeriesEvents } from \"./Series\";\nimport { Container } from \"../../core/render/Container\";\nimport { Label } from \"../../core/render/Label\";\nimport { RoundedRectangle } from \"../../core/render/RoundedRectangle\";\nimport { Template } from \"../../core/util/Template\";\nimport { ListTemplate } from \"../../core/util/List\";\nimport type { Entity, IEntitySettings } from \"../../core/util/Entity\";\nimport type { Color } from \"../../core/util/Color\";\nimport * as $utils from \"../../core/util/Utils\";\n\nexport interface ILegendDataItem extends ISeriesDataItem {\n\n\t/**\n\t * [[Container]] element holding all other legend item elements, labels,\n\t * markers, etc.\n\t */\n\titemContainer: Container;\n\n\t/**\n\t * Marker element.\n\t */\n\tmarker: Container;\n\n\t/**\n\t * Marker rectangle element.\n\t */\n\tmarkerRectangle: RoundedRectangle;\n\n\t/**\n\t * Label element.\n\t */\n\tlabel: Label;\n\n\t/**\n\t * Value label element.\n\t */\n\tvalueLabel: Label;\n\n\t/**\n\t * Marker fill color.\n\t */\n\tfill?: Color;\n\n\t/**\n\t * Marker stroke (outline) color.\n\t */\n\tstroke?: Color;\n\n\t/**\n\t * Name of the legend item.\n\t */\n\tname?: string;\n\n}\n\nexport interface ILegendItemSettings extends IEntitySettings {\n\tvisible?: boolean;\n}\n\n/**\n * @ignore\n */\nexport interface ILegendItem extends Entity {\n\t_settings: ILegendItemSettings;\n\tisHidden?: () => boolean;\n\tshow?: () => void;\n\thide?: () => void;\n\tcreateLegendMarker?: () => {}\n\tcomponent?: Series;\n\t// how to define that properties of dataItem should have legendDataItem?\n}\n\n//type ILegendDataItemSettings = { [K in keyof ILegendDataItem]?: string; };\n\nexport interface ILegendSettings extends ISeriesSettings {\n\n\t/**\n\t * If set to `true` the legend will not try to mimic appearance of the actual\n\t * item but rather show default square marker.\n\t *\n\t * @default false\n\t */\n\tuseDefaultMarker?: boolean;\n\n\t/**\n\t * A key to look up in data for a name of the data item.\n\t *\n\t */\n\tnameField?: string;\n\n\t/**\n\t * A key to look up in data for a fill of the data item.\n\t *\n\t */\n\tfillField?: string;\n\n\t/**\n\t * A key to look up in data for a stroke of the data item.\n\t *\n\t */\n\tstrokeField?: string;\n\n\t/**\n\t * Which legend item element will be clickable to toggle related chart item:\n\t * * `\"itemContainer\"` - the whole legend item (default).\n\t * * `\"marker\"` - legend item marker.\n\t * * `\"none\"` - disables toggling of legend item.\n\t *\n\t * @default \"itemContainer\"\n\t * @since 5.0.13\n\t */\n\tclickTarget?: \"itemContainer\" | \"marker\" | \"none\"\n\n}\n\nexport interface ILegendPrivate extends ISeriesPrivate {\n}\n\nexport interface ILegendEvents extends ISeriesEvents {\n\n}\n\n/**\n * A universal legend control.\n *\n * @important\n * @see {@link https://www.amcharts.com/docs/v5/concepts/legend/} for more info\n */\nexport class Legend extends Series {\n\tprotected _afterNew() {\n\t\tthis._settings.themeTags = $utils.mergeTags(this._settings.themeTags, [\"legend\"]);\n\t\tthis.fields.push(\"name\", \"stroke\", \"fill\");\n\t\tsuper._afterNew();\n\t}\n\n\tpublic static className: string = \"Legend\";\n\tpublic static classNames: Array<string> = Series.classNames.concat([Legend.className]);\n\n\tdeclare public _settings: ILegendSettings;\n\tdeclare public _privateSettings: ILegendPrivate;\n\tdeclare public _dataItemSettings: ILegendDataItem;\n\tdeclare public _events: ILegendEvents;\n\n\n\t/**\n\t * List of all [[Container]] elements for legend items.\n\t *\n\t * @default new ListTemplate<Container>\n\t */\n\tpublic readonly itemContainers: ListTemplate<Container> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => Container._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.itemContainers.template.get(\"themeTags\", []), [\"legend\", \"item\"]),\n\t\t\tthemeTagsSelf: $utils.mergeTags(this.itemContainers.template.get(\"themeTagsSelf\", []), [\"itemcontainer\"]),\n\t\t\tbackground: RoundedRectangle.new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.itemContainers.template.get(\"themeTags\", []), [\"legend\", \"item\", \"background\"]),\n\t\t\t\tthemeTagsSelf: $utils.mergeTags(this.itemContainers.template.get(\"themeTagsSelf\", []), [\"itemcontainer\"])\n\t\t\t})\n\t\t}, [this.itemContainers.template])\n\t);\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeItemContainer(dataItem: DataItem<this[\"_dataItemSettings\"]>): Container {\n\t\tconst itemContainer = this.children.push(this.itemContainers.make());\n\t\titemContainer._setDataItem(dataItem);\n\t\tthis.itemContainers.push(itemContainer);\n\t\titemContainer.states.create(\"disabled\", {});\n\t\treturn itemContainer;\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeMarker(): Container {\n\t\tconst marker = this.markers.make();\n\t\tthis.markers.push(marker);\n\t\tmarker.states.create(\"disabled\", {});\n\t\treturn marker;\n\t}\n\n\t/**\n\t * List of legend marker elements.\n\t *\n\t * @default new ListTemplate<Container>\n\t */\n\tpublic readonly markers: ListTemplate<Container> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => Container._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.markers.template.get(\"themeTags\", []), [\"legend\", \"marker\"])\n\t\t}, [this.markers.template])\n\t);\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeLabel(): Label {\n\t\tconst label = this.labels.make();\n\t\tlabel.states.create(\"disabled\", {});\n\t\treturn label;\n\t}\n\n\t/**\n\t * List of legend label elements.\n\t *\n\t * @default new ListTemplate<Label>\n\t */\n\tpublic readonly labels: ListTemplate<Label> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => Label._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.labels.template.get(\"themeTags\", []), [\"legend\", \"label\"])\n\t\t}, [this.labels.template])\n\t);\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeValueLabel(): Label {\n\t\tconst valueLabel = this.valueLabels.make();\n\t\tvalueLabel.states.create(\"disabled\", {});\n\t\treturn valueLabel;\n\t}\n\n\t/**\n\t * List of legend value label elements.\n\t *\n\t * @default new ListTemplate<label>\n\t */\n\tpublic readonly valueLabels: ListTemplate<Label> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => Label._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.valueLabels.template.get(\"themeTags\", []), [\"legend\", \"label\", \"value\"])\n\t\t}, [this.valueLabels.template])\n\t);\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeMarkerRectangle(): RoundedRectangle {\n\t\tconst markerRectangle = this.markerRectangles.make();\n\t\tmarkerRectangle.states.create(\"disabled\", {});\n\t\treturn markerRectangle;\n\t}\n\n\t/**\n\t * List of rectangle elements used for default legend markers.\n\t *\n\t * @default new ListTemplate<RoundedRectangle>\n\t */\n\tpublic readonly markerRectangles: ListTemplate<RoundedRectangle> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => RoundedRectangle._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.markerRectangles.template.get(\"themeTags\", []), [\"legend\", \"marker\", \"rectangle\"])\n\t\t}, [this.markerRectangles.template])\n\t);\n\n\n\tprotected processDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.processDataItem(dataItem);\n\n\t\tconst itemContainer = this.makeItemContainer(dataItem);\n\n\t\tconst nameField = this.get(\"nameField\");\n\t\tconst fillField = this.get(\"fillField\");\n\t\tconst strokeField = this.get(\"strokeField\");\n\n\t\tif (itemContainer) {\n\t\t\tconst clickTarget = this.get(\"clickTarget\", \"itemContainer\");\n\n\t\t\tconst item = dataItem.dataContext as ILegendItem;\n\n\t\t\tif (item && item.set) {\n\t\t\t\titem.set(<any>\"legendDataItem\", dataItem);\n\t\t\t}\n\n\t\t\titemContainer._setDataItem(dataItem);\n\t\t\tdataItem.set(\"itemContainer\", itemContainer);\n\n\t\t\tconst marker = this.makeMarker();\n\t\t\tif (marker) {\n\t\t\t\titemContainer.children.push(marker);\n\t\t\t\tmarker._setDataItem(dataItem);\n\t\t\t\tdataItem.set(\"marker\", marker);\n\n\t\t\t\tconst useDefaultMarker = this.get(\"useDefaultMarker\");\n\n\t\t\t\tconst markerRectangle = marker.children.push(this.makeMarkerRectangle());\n\n\t\t\t\tlet fill = dataItem.get(\"fill\");\n\t\t\t\tlet stroke = dataItem.get(\"stroke\");\n\n\t\t\t\tdataItem.set(\"markerRectangle\", markerRectangle);\n\n\t\t\t\tif (item && item.get) {\n\t\t\t\t\tfill = item.get(fillField as any, fill);\n\t\t\t\t\tstroke = item.get(strokeField as any, stroke);\n\t\t\t\t}\n\n\t\t\t\tif (!stroke) {\n\t\t\t\t\tstroke = fill;\n\t\t\t\t}\n\n\t\t\t\tif (!useDefaultMarker) {\n\t\t\t\t\tif (item && item.createLegendMarker) {\n\t\t\t\t\t\titem.createLegendMarker();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tif (item.on) {\n\t\t\t\t\t\titem.on(fillField as any, () => {\n\t\t\t\t\t\t\tmarkerRectangle.set(\"fill\", item.get(fillField as any));\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\titem.on(strokeField as any, () => {\n\t\t\t\t\t\t\tmarkerRectangle.set(\"stroke\", item.get(strokeField as any));\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tmarkerRectangle.setAll({ fill, stroke });\n\n\t\t\t\t// this solves if template field is set on slice\n\t\t\t\tconst component = item.component;\n\t\t\t\tif (component && component.updateLegendMarker) {\n\t\t\t\t\tcomponent.updateLegendMarker(item as any);\n\t\t\t\t}\n\n\t\t\t}\n\n\t\t\tconst label = this.makeLabel();\n\n\t\t\tif (label) {\n\t\t\t\titemContainer.children.push(label);\n\t\t\t\tlabel._setDataItem(dataItem);\n\t\t\t\tdataItem.set(\"label\", label);\n\n\t\t\t\tlabel.text.on(\"text\", () => {\n\t\t\t\t\titemContainer.set(\"ariaLabel\", label.text._getText() + \"; \" + this._t(\"Press ENTER to toggle\"));\n\t\t\t\t});\n\n\t\t\t\tif (item && item.get) {\n\t\t\t\t\tdataItem.set(\"name\", item.get(nameField as any) as string);\n\t\t\t\t}\n\n\t\t\t\tlet name = dataItem.get(\"name\");\n\n\t\t\t\tif (name) {\n\t\t\t\t\tlabel.set(\"text\", name);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tconst valueLabel = this.makeValueLabel();\n\t\t\tif (valueLabel) {\n\t\t\t\titemContainer.children.push(valueLabel);\n\t\t\t\tvalueLabel._setDataItem(dataItem);\n\t\t\t\tdataItem.set(\"valueLabel\", valueLabel);\n\t\t\t}\n\n\t\t\tif (item && item.show) {\n\n\t\t\t\tthis._disposers.push(item.on(\"visible\", (visible) => {\n\t\t\t\t\titemContainer.set(\"disabled\", !visible)\n\t\t\t\t}));\n\n\t\t\t\tif (!item.get(\"visible\")) {\n\t\t\t\t\titemContainer.set(\"disabled\", true);\n\t\t\t\t}\n\n\t\t\t\tif (clickTarget != \"none\") {\n\t\t\t\t\tvar clickContainer = itemContainer;\n\t\t\t\t\tif (clickTarget == \"marker\") {\n\t\t\t\t\t\tclickContainer = marker;\n\t\t\t\t\t}\n\t\t\t\t\tthis._addClickEvents(clickContainer, item, dataItem)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\n\tprotected _addClickEvents(container: Container, item: ILegendItem, dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tcontainer.set(\"cursorOverStyle\", \"pointer\");\n\t\tcontainer.events.on(\"pointerover\", () => {\n\t\t\tconst component = item.component;\n\t\t\tif (component && component.hoverDataItem) {\n\t\t\t\tcomponent.hoverDataItem(item as any)\n\t\t\t}\n\t\t})\n\n\t\tcontainer.events.on(\"pointerout\", () => {\n\t\t\tconst component = item.component;\n\t\t\tif (component && component.hoverDataItem) {\n\t\t\t\tcomponent.unhoverDataItem(item as any)\n\t\t\t}\n\t\t})\n\n\t\tcontainer.events.on(\"click\", () => {\n\t\t\tconst labelText = dataItem.get(\"label\").text._getText();\n\n\t\t\tif (item.show && item.isHidden && (item.isHidden() || item.get(\"visible\") === false)) {\n\t\t\t\titem.show();\n\t\t\t\tcontainer.set(\"disabled\", false);\n\t\t\t\tthis._root.readerAlert(this._t(\"%1 shown\", this._root.locale, labelText));\n\t\t\t}\n\t\t\telse if (item.hide) {\n\t\t\t\titem.hide();\n\t\t\t\tcontainer.set(\"disabled\", true);\n\t\t\t\tthis._root.readerAlert(this._t(\"%1 hidden\", this._root.locale, labelText));\n\t\t\t}\n\t\t})\n\t}\n\n\n\t/**\n\t * @ignore\n\t */\n\tpublic disposeDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\n\t\tlet itemContainer = dataItem.get(\"itemContainer\");\n\t\tif (itemContainer) {\n\t\t\tthis.itemContainers.removeValue(itemContainer);\n\t\t\titemContainer.dispose();\n\t\t}\n\n\t\tlet marker = dataItem.get(\"marker\");\n\t\tif (marker) {\n\t\t\tthis.markers.removeValue(marker);\n\t\t\tmarker.dispose();\n\t\t}\n\n\t\tlet markerRectangle = dataItem.get(\"markerRectangle\");\n\t\tif (markerRectangle) {\n\t\t\tthis.markerRectangles.removeValue(markerRectangle);\n\t\t\tmarkerRectangle.dispose();\n\t\t}\n\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 valueLabel = dataItem.get(\"valueLabel\");\n\t\tif (valueLabel) {\n\t\t\tthis.valueLabels.removeValue(valueLabel);\n\t\t\tvalueLabel.dispose();\n\t\t}\n\n\t}\n}\n"]}
@@ -36,7 +36,7 @@ var Line = /** @class */ (function (_super) {
36
36
  this._display.moveTo(point.x, point.y);
37
37
  $draw.segmentedLine(this._display, [[points]]);
38
38
  }
39
- else {
39
+ else if (!this.get("draw")) {
40
40
  var w = this.width();
41
41
  var h = this.height();
42
42
  this._display.moveTo(0, 0);
@@ -1 +1 @@
1
- {"version":3,"file":"Line.js","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Line.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAuC,MAAM,YAAY,CAAC;AAE3E,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AActC;;;;;GAKG;AACH;IAA0B,wBAAQ;IAAlC;;IAsCA,CAAC;;;;;eA9BA;YACC,iBAAM,cAAc,WAAE,CAAC;YAEvB,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE;gBAC/G,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;aACnB;QACF,CAAC;;;;;;eAED;YACC,iBAAM,QAAQ,WAAE,CAAC;YAEjB,IAAI,IAAI,CAAC,MAAM,EAAE;gBAEhB,IAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAE,CAAC;gBAEnC,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;oBAChC,IAAI,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;oBAEtB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;oBACvC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;iBAC/C;qBACI;oBACJ,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;oBACrB,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;oBAEtB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBAC3B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;iBAC3B;aACD;QACF,CAAC;;IAhCD;;;;eAAkC,MAAM;OAAC;IACzC;;;;eAA0C,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;OAAC;IAgCxF,WAAC;CAAA,AAtCD,CAA0B,QAAQ,GAsCjC;SAtCY,IAAI","sourcesContent":["import { Graphics, IGraphicsSettings, IGraphicsPrivate } from \"./Graphics\";\nimport type { IPoint } from \"../util/IPoint\";\nimport * as $draw from \"../util/Draw\";\n\nexport interface ILineSettings extends IGraphicsSettings {\n\n\t/**\n\t * A list of [[IPoint]] (x/y coordinates) points for the line.\n\t */\n\tpoints?: Array<IPoint>;\n\n}\n\nexport interface ILinePrivate extends IGraphicsPrivate {\n}\n\n/**\n * Draws a line.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/graphics/} for more info\n * @important\n */\nexport class Line extends Graphics {\n\n\tdeclare public _settings: ILineSettings;\n\tdeclare public _privateSettings: ILinePrivate;\n\n\tpublic static className: string = \"Line\";\n\tpublic static classNames: Array<string> = Graphics.classNames.concat([Line.className]);\n\n\tpublic _beforeChanged() {\n\t\tsuper._beforeChanged();\n\n\t\tif (this.isDirty(\"points\") || this._sizeDirty || this.isPrivateDirty(\"width\") || this.isPrivateDirty(\"height\")) {\n\t\t\tthis._clear = true;\n\t\t}\n\t}\n\n\tpublic _changed() {\n\t\tsuper._changed();\n\n\t\tif (this._clear) {\n\n\t\t\tconst points = this.get(\"points\")!;\n\n\t\t\tif (points && points.length > 0) {\n\t\t\t\tlet point = points[0];\n\n\t\t\t\tthis._display.moveTo(point.x, point.y);\n\t\t\t\t$draw.segmentedLine(this._display, [[points]]);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tlet w = this.width();\n\t\t\t\tlet h = this.height();\n\n\t\t\t\tthis._display.moveTo(0, 0);\n\t\t\t\tthis._display.lineTo(w, h);\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
1
+ {"version":3,"file":"Line.js","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Line.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAuC,MAAM,YAAY,CAAC;AAE3E,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AActC;;;;;GAKG;AACH;IAA0B,wBAAQ;IAAlC;;IAsCA,CAAC;;;;;eA9BA;YACC,iBAAM,cAAc,WAAE,CAAC;YAEvB,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE;gBAC/G,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;aACnB;QACF,CAAC;;;;;;eAED;YACC,iBAAM,QAAQ,WAAE,CAAC;YAEjB,IAAI,IAAI,CAAC,MAAM,EAAE;gBAEhB,IAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAE,CAAC;gBAEnC,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;oBAChC,IAAI,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;oBAEtB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;oBACvC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;iBAC/C;qBACI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;oBAC3B,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;oBACrB,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;oBAEtB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBAC3B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;iBAC3B;aACD;QACF,CAAC;;IAhCD;;;;eAAkC,MAAM;OAAC;IACzC;;;;eAA0C,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;OAAC;IAgCxF,WAAC;CAAA,AAtCD,CAA0B,QAAQ,GAsCjC;SAtCY,IAAI","sourcesContent":["import { Graphics, IGraphicsSettings, IGraphicsPrivate } from \"./Graphics\";\nimport type { IPoint } from \"../util/IPoint\";\nimport * as $draw from \"../util/Draw\";\n\nexport interface ILineSettings extends IGraphicsSettings {\n\n\t/**\n\t * A list of [[IPoint]] (x/y coordinates) points for the line.\n\t */\n\tpoints?: Array<IPoint>;\n\n}\n\nexport interface ILinePrivate extends IGraphicsPrivate {\n}\n\n/**\n * Draws a line.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/graphics/} for more info\n * @important\n */\nexport class Line extends Graphics {\n\n\tdeclare public _settings: ILineSettings;\n\tdeclare public _privateSettings: ILinePrivate;\n\n\tpublic static className: string = \"Line\";\n\tpublic static classNames: Array<string> = Graphics.classNames.concat([Line.className]);\n\n\tpublic _beforeChanged() {\n\t\tsuper._beforeChanged();\n\n\t\tif (this.isDirty(\"points\") || this._sizeDirty || this.isPrivateDirty(\"width\") || this.isPrivateDirty(\"height\")) {\n\t\t\tthis._clear = true;\n\t\t}\n\t}\n\n\tpublic _changed() {\n\t\tsuper._changed();\n\n\t\tif (this._clear) {\n\n\t\t\tconst points = this.get(\"points\")!;\n\n\t\t\tif (points && points.length > 0) {\n\t\t\t\tlet point = points[0];\n\n\t\t\t\tthis._display.moveTo(point.x, point.y);\n\t\t\t\t$draw.segmentedLine(this._display, [[points]]);\n\t\t\t}\n\t\t\telse if (!this.get(\"draw\")) {\n\t\t\t\tlet w = this.width();\n\t\t\t\tlet h = this.height();\n\n\t\t\t\tthis._display.moveTo(0, 0);\n\t\t\t\tthis._display.lineTo(w, h);\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
@@ -54,7 +54,7 @@ export interface IHeatRule {
54
54
  * Can be used to do custom manipulation on complex objects requiring more
55
55
  * than modifying a setting.
56
56
  */
57
- customFunction?: (target: Sprite, minValue: number, maxValue: number, propertyValue?: any) => void;
57
+ customFunction?: (target: Sprite, minValue: number, maxValue: number, value?: any) => void;
58
58
  }
59
59
  export interface ISeriesDataItem extends IComponentDataItem {
60
60
  id?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"Series.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Series.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Series.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Series.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { __awaiter, __extends, __generator } from "tslib";
2
- import { Component } from "../../core/render/Component";
2
+ import { Component, DataItem } from "../../core/render/Component";
3
3
  import { List } from "../../core/util/List";
4
4
  import { Color } from "../../core/util/Color";
5
5
  import { percentInterpolate } from "../../core/util/Animation";
@@ -87,6 +87,8 @@ var Series = /** @class */ (function (_super) {
87
87
  value: function () {
88
88
  var _this = this;
89
89
  this.valueFields.push("value");
90
+ // for holding some extra info which could be used when formatting legend and similar
91
+ this._dataItem = new DataItem(this, {}, {});
90
92
  _super.prototype._afterNew.call(this);
91
93
  this._disposers.push(this.bullets.events.onAll(function (change) {
92
94
  if (change.type === "clear") {
@@ -154,7 +156,7 @@ var Series = /** @class */ (function (_super) {
154
156
  dataItem.bullets = undefined;
155
157
  }
156
158
  });
157
- this._markDirtyValues();
159
+ this.markDirtyValues();
158
160
  }
159
161
  });
160
162
  /**
@@ -416,7 +418,7 @@ var Series = /** @class */ (function (_super) {
416
418
  propertyValue = percentInterpolate(percent, rule.min, rule.max);
417
419
  }
418
420
  if (rule.customFunction) {
419
- rule.customFunction.call(_this, target, minValue, maxValue, propertyValue);
421
+ rule.customFunction.call(_this, target, minValue, maxValue, value);
420
422
  }
421
423
  else {
422
424
  target.set(rule.key, propertyValue);