@amcharts/amcharts5 5.17.0 → 5.17.2

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 (317) hide show
  1. package/.internal/charts/flow/ArcDiagram.d.ts +2 -2
  2. package/.internal/charts/flow/ArcDiagram.js.map +1 -1
  3. package/.internal/charts/flow/ChordNonRibbon.d.ts +1 -1
  4. package/.internal/charts/flow/ChordNonRibbon.js +1 -1
  5. package/.internal/charts/flow/ChordNonRibbon.js.map +1 -1
  6. package/.internal/charts/flow/SankeyLink.d.ts +1 -1
  7. package/.internal/charts/flow/SankeyLink.js.map +1 -1
  8. package/.internal/charts/funnel/FunnelSlice.d.ts +1 -1
  9. package/.internal/charts/funnel/FunnelSlice.js.map +1 -1
  10. package/.internal/charts/funnel/SlicedChart.d.ts +1 -1
  11. package/.internal/charts/funnel/SlicedChart.js +1 -1
  12. package/.internal/charts/funnel/SlicedChart.js.map +1 -1
  13. package/.internal/charts/hierarchy/ForceDirected.d.ts +2 -2
  14. package/.internal/charts/hierarchy/ForceDirected.js.map +1 -1
  15. package/.internal/charts/hierarchy/Hierarchy.d.ts +1 -1
  16. package/.internal/charts/hierarchy/Hierarchy.js.map +1 -1
  17. package/.internal/charts/hierarchy/Partition.d.ts +1 -1
  18. package/.internal/charts/hierarchy/Partition.js.map +1 -1
  19. package/.internal/charts/hierarchy/Treemap.d.ts +1 -2
  20. package/.internal/charts/hierarchy/Treemap.d.ts.map +1 -1
  21. package/.internal/charts/hierarchy/Treemap.js.map +1 -1
  22. package/.internal/charts/hierarchy/VoronoiTreemap.d.ts +3 -3
  23. package/.internal/charts/hierarchy/VoronoiTreemap.js.map +1 -1
  24. package/.internal/charts/map/ClusteredPointSeries.d.ts +2 -2
  25. package/.internal/charts/map/ClusteredPointSeries.js.map +1 -1
  26. package/.internal/charts/map/MapChart.d.ts +2 -2
  27. package/.internal/charts/map/MapChart.js.map +1 -1
  28. package/.internal/charts/map/MapPointSeries.d.ts +3 -1
  29. package/.internal/charts/map/MapPointSeries.d.ts.map +1 -1
  30. package/.internal/charts/map/MapPointSeries.js.map +1 -1
  31. package/.internal/charts/map/MapSankeySeries.d.ts +29 -0
  32. package/.internal/charts/map/MapSankeySeries.d.ts.map +1 -1
  33. package/.internal/charts/map/MapSankeySeries.js +126 -52
  34. package/.internal/charts/map/MapSankeySeries.js.map +1 -1
  35. package/.internal/charts/percent/PercentSeries.d.ts +2 -2
  36. package/.internal/charts/percent/PercentSeries.js.map +1 -1
  37. package/.internal/charts/radar/RadarChart.d.ts +2 -2
  38. package/.internal/charts/radar/RadarChart.js.map +1 -1
  39. package/.internal/charts/radar/RadarLineSeries.d.ts +1 -1
  40. package/.internal/charts/radar/RadarLineSeries.js.map +1 -1
  41. package/.internal/charts/stock/StockChart.d.ts +3 -3
  42. package/.internal/charts/stock/StockChart.js +3 -3
  43. package/.internal/charts/stock/StockChart.js.map +1 -1
  44. package/.internal/charts/stock/StockPanel.d.ts +1 -1
  45. package/.internal/charts/stock/StockPanel.js.map +1 -1
  46. package/.internal/charts/stock/drawing/DrawingSeries.d.ts +1 -1
  47. package/.internal/charts/stock/drawing/DrawingSeries.js.map +1 -1
  48. package/.internal/charts/stock/drawing/LabelSeries.d.ts +1 -1
  49. package/.internal/charts/stock/drawing/LabelSeries.js.map +1 -1
  50. package/.internal/charts/stock/indicators/ChaikinMoneyFlow.d.ts +1 -1
  51. package/.internal/charts/stock/indicators/ChaikinMoneyFlow.js.map +1 -1
  52. package/.internal/charts/stock/indicators/Indicator.d.ts +2 -2
  53. package/.internal/charts/stock/indicators/Indicator.js.map +1 -1
  54. package/.internal/charts/stock/toolbar/DateRangeSelector.d.ts +1 -1
  55. package/.internal/charts/stock/toolbar/DateRangeSelector.js.map +1 -1
  56. package/.internal/charts/stock/toolbar/DropdownList.d.ts +1 -1
  57. package/.internal/charts/stock/toolbar/DropdownList.js.map +1 -1
  58. package/.internal/charts/stock/toolbar/DropdownListControl.d.ts +1 -1
  59. package/.internal/charts/stock/toolbar/DropdownListControl.js.map +1 -1
  60. package/.internal/charts/stock/toolbar/PeriodSelector.d.ts +1 -1
  61. package/.internal/charts/stock/toolbar/PeriodSelector.js.map +1 -1
  62. package/.internal/charts/stock/toolbar/StockControl.d.ts +2 -2
  63. package/.internal/charts/stock/toolbar/StockControl.js.map +1 -1
  64. package/.internal/charts/timeline/SerpentineChart.d.ts +3 -3
  65. package/.internal/charts/timeline/SerpentineChart.js.map +1 -1
  66. package/.internal/charts/timeline/SpiralChart.d.ts +3 -3
  67. package/.internal/charts/timeline/SpiralChart.js.map +1 -1
  68. package/.internal/charts/venn/Venn.d.ts +1 -1
  69. package/.internal/charts/venn/Venn.js.map +1 -1
  70. package/.internal/charts/wordcloud/WordCloud.d.ts +1 -1
  71. package/.internal/charts/wordcloud/WordCloud.js +1 -1
  72. package/.internal/charts/wordcloud/WordCloud.js.map +1 -1
  73. package/.internal/charts/xy/XYChart.d.ts +1 -1
  74. package/.internal/charts/xy/XYChart.js.map +1 -1
  75. package/.internal/charts/xy/axes/Axis.d.ts +8 -8
  76. package/.internal/charts/xy/axes/Axis.js.map +1 -1
  77. package/.internal/charts/xy/axes/AxisLabel.d.ts +1 -1
  78. package/.internal/charts/xy/axes/AxisLabel.js.map +1 -1
  79. package/.internal/charts/xy/axes/DateAxis.d.ts +1 -1
  80. package/.internal/charts/xy/axes/DateAxis.js.map +1 -1
  81. package/.internal/charts/xy/series/BaseColumnSeries.d.ts +1 -1
  82. package/.internal/charts/xy/series/BaseColumnSeries.js.map +1 -1
  83. package/.internal/charts/xy/series/ColumnSeries.d.ts +1 -1
  84. package/.internal/charts/xy/series/ColumnSeries.js.map +1 -1
  85. package/.internal/charts/xy/series/XYSeries.d.ts +3 -3
  86. package/.internal/charts/xy/series/XYSeries.d.ts.map +1 -1
  87. package/.internal/charts/xy/series/XYSeries.js.map +1 -1
  88. package/.internal/core/Registry.js +1 -1
  89. package/.internal/core/Registry.js.map +1 -1
  90. package/.internal/core/render/Bullet.d.ts +2 -3
  91. package/.internal/core/render/Bullet.d.ts.map +1 -1
  92. package/.internal/core/render/Bullet.js.map +1 -1
  93. package/.internal/core/render/Container.d.ts +5 -1
  94. package/.internal/core/render/Container.d.ts.map +1 -1
  95. package/.internal/core/render/Container.js.map +1 -1
  96. package/.internal/core/render/Graphics.d.ts +3 -1
  97. package/.internal/core/render/Graphics.d.ts.map +1 -1
  98. package/.internal/core/render/Graphics.js.map +1 -1
  99. package/.internal/core/render/HeatLegend.d.ts +1 -1
  100. package/.internal/core/render/HeatLegend.js.map +1 -1
  101. package/.internal/core/render/Label.d.ts +5 -3
  102. package/.internal/core/render/Label.d.ts.map +1 -1
  103. package/.internal/core/render/Label.js.map +1 -1
  104. package/.internal/core/render/Legend.d.ts +3 -0
  105. package/.internal/core/render/Legend.d.ts.map +1 -1
  106. package/.internal/core/render/Legend.js.map +1 -1
  107. package/.internal/core/render/PointedRectangle.d.ts +2 -2
  108. package/.internal/core/render/PointedRectangle.js.map +1 -1
  109. package/.internal/core/render/Polygon.d.ts +1 -1
  110. package/.internal/core/render/Polygon.js.map +1 -1
  111. package/.internal/core/render/RadialLabel.d.ts +3 -3
  112. package/.internal/core/render/RadialLabel.js.map +1 -1
  113. package/.internal/core/render/RoundedRectangle.d.ts +1 -1
  114. package/.internal/core/render/RoundedRectangle.js.map +1 -1
  115. package/.internal/core/render/Sprite.d.ts +28 -8
  116. package/.internal/core/render/Sprite.d.ts.map +1 -1
  117. package/.internal/core/render/Sprite.js.map +1 -1
  118. package/.internal/core/render/Tooltip.d.ts +5 -4
  119. package/.internal/core/render/Tooltip.d.ts.map +1 -1
  120. package/.internal/core/render/Tooltip.js.map +1 -1
  121. package/.internal/core/render/ZoomableContainer.d.ts +1 -1
  122. package/.internal/core/render/ZoomableContainer.js.map +1 -1
  123. package/.internal/core/render/patterns/CirclePattern.d.ts +2 -2
  124. package/.internal/core/render/patterns/CirclePattern.js.map +1 -1
  125. package/.internal/core/render/patterns/GrainPattern.d.ts +1 -1
  126. package/.internal/core/render/patterns/GrainPattern.js.map +1 -1
  127. package/.internal/core/render/patterns/LinePattern.d.ts +2 -2
  128. package/.internal/core/render/patterns/LinePattern.js.map +1 -1
  129. package/.internal/core/render/patterns/Pattern.d.ts +6 -2
  130. package/.internal/core/render/patterns/Pattern.d.ts.map +1 -1
  131. package/.internal/core/render/patterns/Pattern.js.map +1 -1
  132. package/.internal/core/render/patterns/PicturePattern.d.ts +1 -1
  133. package/.internal/core/render/patterns/PicturePattern.js.map +1 -1
  134. package/.internal/core/util/ColorSet.d.ts +4 -3
  135. package/.internal/core/util/ColorSet.d.ts.map +1 -1
  136. package/.internal/core/util/ColorSet.js.map +1 -1
  137. package/.internal/core/util/DateFormatter.d.ts +1 -0
  138. package/.internal/core/util/DateFormatter.d.ts.map +1 -1
  139. package/.internal/core/util/DateFormatter.js.map +1 -1
  140. package/.internal/core/util/Entity.d.ts +4 -0
  141. package/.internal/core/util/Entity.d.ts.map +1 -1
  142. package/.internal/core/util/Entity.js.map +1 -1
  143. package/.internal/core/util/NumberFormatter.d.ts +2 -3
  144. package/.internal/core/util/NumberFormatter.d.ts.map +1 -1
  145. package/.internal/core/util/NumberFormatter.js.map +1 -1
  146. package/.internal/plugins/exporting/Annotator.d.ts +1 -1
  147. package/.internal/plugins/exporting/Annotator.js.map +1 -1
  148. package/.internal/plugins/exporting/Exporting.d.ts +2 -2
  149. package/.internal/plugins/exporting/Exporting.js.map +1 -1
  150. package/.internal/plugins/exporting/ExportingMenu.d.ts +1 -1
  151. package/.internal/plugins/exporting/ExportingMenu.js.map +1 -1
  152. package/.internal/plugins/sliceGrouper/SliceGrouper.d.ts +1 -1
  153. package/.internal/plugins/sliceGrouper/SliceGrouper.js.map +1 -1
  154. package/CHANGELOG.md +12 -0
  155. package/examples/javascript/flow-arc-horizontal/package.json +1 -1
  156. package/examples/javascript/flow-arc-vertical/package.json +1 -1
  157. package/examples/javascript/flow-chord/package.json +1 -1
  158. package/examples/javascript/flow-chord-directed/package.json +1 -1
  159. package/examples/javascript/flow-chord-non-ribbon/package.json +1 -1
  160. package/examples/javascript/flow-sankey/package.json +1 -1
  161. package/examples/javascript/gantt/package.json +1 -1
  162. package/examples/javascript/gantt-multilevel/package.json +1 -1
  163. package/examples/javascript/gantt-simple/package.json +1 -1
  164. package/examples/javascript/gauge/package.json +1 -1
  165. package/examples/javascript/gauge-bands/package.json +1 -1
  166. package/examples/javascript/hierarchy-force-directed/package.json +1 -1
  167. package/examples/javascript/hierarchy-pack/package.json +1 -1
  168. package/examples/javascript/hierarchy-partition/package.json +1 -1
  169. package/examples/javascript/hierarchy-sunburst/package.json +1 -1
  170. package/examples/javascript/hierarchy-tree/package.json +1 -1
  171. package/examples/javascript/hierarchy-treemap/package.json +1 -1
  172. package/examples/javascript/hierarchy-voronoi-treemap/package.json +1 -1
  173. package/examples/javascript/jest/package.json +1 -1
  174. package/examples/javascript/json-pie/package.json +1 -1
  175. package/examples/javascript/json-xy/package.json +1 -1
  176. package/examples/javascript/map-animating-along-lines/package.json +1 -1
  177. package/examples/javascript/map-clustered-points/package.json +1 -1
  178. package/examples/javascript/map-day-and-night/package.json +1 -1
  179. package/examples/javascript/map-globe-rotate-to-country/package.json +1 -1
  180. package/examples/javascript/map-globe-with-projected-circles/package.json +1 -1
  181. package/examples/javascript/map-sankey/index.js +48 -55
  182. package/examples/javascript/map-sankey/package.json +1 -1
  183. package/examples/javascript/map-sankey-waypoints/package.json +1 -1
  184. package/examples/javascript/map-with-bubbles/package.json +1 -1
  185. package/examples/javascript/map-zoom-to-country/package.json +1 -1
  186. package/examples/javascript/misc-40-charts/package.json +1 -1
  187. package/examples/javascript/misc-microchart-grid/package.json +1 -1
  188. package/examples/javascript/pie-chart/package.json +1 -1
  189. package/examples/javascript/pie-donut-chart/package.json +1 -1
  190. package/examples/javascript/pie-variable-radius/package.json +1 -1
  191. package/examples/javascript/radar-column-iwatch-style/package.json +1 -1
  192. package/examples/javascript/radar-heat-map/package.json +1 -1
  193. package/examples/javascript/radar-line/package.json +1 -1
  194. package/examples/javascript/radar-time-line/package.json +1 -1
  195. package/examples/javascript/sliced-funnel/package.json +1 -1
  196. package/examples/javascript/sliced-pictorial-stacked/package.json +1 -1
  197. package/examples/javascript/sliced-pyramid/package.json +1 -1
  198. package/examples/javascript/stock-chart/package.json +1 -1
  199. package/examples/javascript/stock-chart-comparing-stocks/package.json +1 -1
  200. package/examples/javascript/stock-chart-data-granularity/package.json +1 -1
  201. package/examples/javascript/stock-chart-data-grouping/package.json +1 -1
  202. package/examples/javascript/stock-chart-intraday/package.json +1 -1
  203. package/examples/javascript/stock-chart-live/package.json +1 -1
  204. package/examples/javascript/stock-chart-volume-separate-panel/package.json +1 -1
  205. package/examples/javascript/timeline-horizontal-serpentine-chart/package.json +1 -1
  206. package/examples/javascript/timeline-linear-process-diagram/package.json +1 -1
  207. package/examples/javascript/timeline-serpentine-chart/package.json +1 -1
  208. package/examples/javascript/timeline-spiral-chart/package.json +1 -1
  209. package/examples/javascript/venn-diagram/package.json +1 -1
  210. package/examples/javascript/wordcloud-with-data/package.json +1 -1
  211. package/examples/javascript/wordcloud-with-text/package.json +1 -1
  212. package/examples/javascript/xy-100-percent-stacked-column/package.json +1 -1
  213. package/examples/javascript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  214. package/examples/javascript/xy-bubble/package.json +1 -1
  215. package/examples/javascript/xy-candlestick/package.json +1 -1
  216. package/examples/javascript/xy-clustered-column/package.json +1 -1
  217. package/examples/javascript/xy-column/package.json +1 -1
  218. package/examples/javascript/xy-comparing-series-google-analytics-style/package.json +1 -1
  219. package/examples/javascript/xy-data-grouping/package.json +1 -1
  220. package/examples/javascript/xy-draggable-range/package.json +1 -1
  221. package/examples/javascript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  222. package/examples/javascript/xy-dumbbell plot/package.json +1 -1
  223. package/examples/javascript/xy-evenly-spaced-date-axis/package.json +1 -1
  224. package/examples/javascript/xy-line/package.json +1 -1
  225. package/examples/javascript/xy-line-highlight-on-legend-hover/package.json +1 -1
  226. package/examples/javascript/xy-live-data/package.json +1 -1
  227. package/examples/javascript/xy-multiple-synced-value-axes/package.json +1 -1
  228. package/examples/javascript/xy-ohlc/package.json +1 -1
  229. package/examples/javascript/xy-real-time-data-sorting/package.json +1 -1
  230. package/examples/javascript/xy-smoothed-line/package.json +1 -1
  231. package/examples/javascript/xy-stacked-and-clustered-column/package.json +1 -1
  232. package/examples/javascript/xy-stacked-column/package.json +1 -1
  233. package/examples/javascript/xy-stacked-step/package.json +1 -1
  234. package/examples/javascript/xy-stock/package.json +1 -1
  235. package/examples/javascript/xy-stock-comparing/package.json +1 -1
  236. package/examples/typescript/flow-arc-horizontal/package.json +1 -1
  237. package/examples/typescript/flow-arc-vertical/package.json +1 -1
  238. package/examples/typescript/flow-chord/package.json +1 -1
  239. package/examples/typescript/flow-chord-directed/package.json +1 -1
  240. package/examples/typescript/flow-chord-non-ribbon/package.json +1 -1
  241. package/examples/typescript/flow-sankey/package.json +1 -1
  242. package/examples/typescript/gantt/package.json +1 -1
  243. package/examples/typescript/gantt-multilevel/package.json +1 -1
  244. package/examples/typescript/gantt-simple/package.json +1 -1
  245. package/examples/typescript/gauge/package.json +1 -1
  246. package/examples/typescript/gauge-bands/package.json +1 -1
  247. package/examples/typescript/hierarchy-force-directed/package.json +1 -1
  248. package/examples/typescript/hierarchy-pack/package.json +1 -1
  249. package/examples/typescript/hierarchy-partition/package.json +1 -1
  250. package/examples/typescript/hierarchy-sunburst/package.json +1 -1
  251. package/examples/typescript/hierarchy-tree/package.json +1 -1
  252. package/examples/typescript/hierarchy-treemap/package.json +1 -1
  253. package/examples/typescript/hierarchy-voronoi-treemap/package.json +1 -1
  254. package/examples/typescript/jest/package.json +1 -1
  255. package/examples/typescript/json-pie/package.json +1 -1
  256. package/examples/typescript/json-xy/package.json +1 -1
  257. package/examples/typescript/map-animating-along-lines/package.json +1 -1
  258. package/examples/typescript/map-clustered-points/package.json +1 -1
  259. package/examples/typescript/map-day-and-night/package.json +1 -1
  260. package/examples/typescript/map-globe-rotate-to-country/package.json +1 -1
  261. package/examples/typescript/map-globe-with-projected-circles/package.json +1 -1
  262. package/examples/typescript/map-sankey/index.ts +48 -55
  263. package/examples/typescript/map-sankey/package.json +1 -1
  264. package/examples/typescript/map-sankey-waypoints/package.json +1 -1
  265. package/examples/typescript/map-with-bubbles/package.json +1 -1
  266. package/examples/typescript/map-zoom-to-country/package.json +1 -1
  267. package/examples/typescript/misc-40-charts/package.json +1 -1
  268. package/examples/typescript/misc-microchart-grid/package.json +1 -1
  269. package/examples/typescript/pie-chart/package.json +1 -1
  270. package/examples/typescript/pie-donut-chart/package.json +1 -1
  271. package/examples/typescript/pie-variable-radius/package.json +1 -1
  272. package/examples/typescript/radar-column-iwatch-style/package.json +1 -1
  273. package/examples/typescript/radar-heat-map/package.json +1 -1
  274. package/examples/typescript/radar-line/package.json +1 -1
  275. package/examples/typescript/radar-time-line/package.json +1 -1
  276. package/examples/typescript/sliced-funnel/package.json +1 -1
  277. package/examples/typescript/sliced-pictorial-stacked/package.json +1 -1
  278. package/examples/typescript/sliced-pyramid/package.json +1 -1
  279. package/examples/typescript/stock-chart/package.json +1 -1
  280. package/examples/typescript/stock-chart-comparing-stocks/package.json +1 -1
  281. package/examples/typescript/stock-chart-data-granularity/package.json +1 -1
  282. package/examples/typescript/stock-chart-data-grouping/package.json +1 -1
  283. package/examples/typescript/stock-chart-intraday/package.json +1 -1
  284. package/examples/typescript/stock-chart-live/package.json +1 -1
  285. package/examples/typescript/stock-chart-volume-separate-panel/package.json +1 -1
  286. package/examples/typescript/timeline-horizontal-serpentine-chart/package.json +1 -1
  287. package/examples/typescript/timeline-linear-process-diagram/package.json +1 -1
  288. package/examples/typescript/timeline-serpentine-chart/package.json +1 -1
  289. package/examples/typescript/timeline-spiral-chart/package.json +1 -1
  290. package/examples/typescript/venn-diagram/package.json +1 -1
  291. package/examples/typescript/wordcloud-with-data/package.json +1 -1
  292. package/examples/typescript/wordcloud-with-text/package.json +1 -1
  293. package/examples/typescript/xy-100-percent-stacked-column/package.json +1 -1
  294. package/examples/typescript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  295. package/examples/typescript/xy-bubble/package.json +1 -1
  296. package/examples/typescript/xy-candlestick/package.json +1 -1
  297. package/examples/typescript/xy-clustered-column/package.json +1 -1
  298. package/examples/typescript/xy-column/package.json +1 -1
  299. package/examples/typescript/xy-comparing-series-google-analytics-style/package.json +1 -1
  300. package/examples/typescript/xy-data-grouping/package.json +1 -1
  301. package/examples/typescript/xy-draggable-range/package.json +1 -1
  302. package/examples/typescript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  303. package/examples/typescript/xy-dumbbell plot/package.json +1 -1
  304. package/examples/typescript/xy-evenly-spaced-date-axis/package.json +1 -1
  305. package/examples/typescript/xy-line/package.json +1 -1
  306. package/examples/typescript/xy-line-highlight-on-legend-hover/package.json +1 -1
  307. package/examples/typescript/xy-live-data/package.json +1 -1
  308. package/examples/typescript/xy-multiple-synced-value-axes/package.json +1 -1
  309. package/examples/typescript/xy-ohlc/package.json +1 -1
  310. package/examples/typescript/xy-real-time-data-sorting/package.json +1 -1
  311. package/examples/typescript/xy-smoothed-line/package.json +1 -1
  312. package/examples/typescript/xy-stacked-and-clustered-column/package.json +1 -1
  313. package/examples/typescript/xy-stacked-column/package.json +1 -1
  314. package/examples/typescript/xy-stacked-step/package.json +1 -1
  315. package/examples/typescript/xy-stock/package.json +1 -1
  316. package/examples/typescript/xy-stock-comparing/package.json +1 -1
  317. package/package.json +1 -1
@@ -6,7 +6,7 @@ export class Registry {
6
6
  /**
7
7
  * Currently running version of amCharts.
8
8
  */
9
- this.version = "5.17.0";
9
+ this.version = "5.17.2";
10
10
  /**
11
11
  * List of applied licenses.
12
12
  * @ignore
@@ -1 +1 @@
1
- {"version":3,"file":"Registry.js","sourceRoot":"","sources":["../../../../src/.internal/core/Registry.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,OAAO,QAAQ;IAArB;QACC;;WAEG;QACM,YAAO,GAAW,QAAQ,CAAC;QAEpC;;;WAGG;QACH,aAAQ,GAAa,EAAE,CAAC;QAExB;;WAEG;QACH,iBAAY,GAA6B,EAAE,CAAC;QAE5C;;WAEG;QACH,iBAAY,GAAU,EAAE,CAAC;QAEzB;;;;WAIG;QACH,gBAAW,GAAY,KAAK,CAAC;IAC9B,CAAC;CAAA;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;AAEvC;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,UAAU,CAAC,OAAe;IACzC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACjC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB;IACrC,IAAI,IAAI,CAAC;IACT,OAAO,CAAC,IAAI,GAAG,QAAQ,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,EAAE;QAC5C,IAAI,CAAC,OAAO,EAAE,CAAC;KACf;AACF,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAAC,EAAU;IACrC,IAAI,KAAK,CAAC;IACV,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QACtC,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,EAAE;YACtB,KAAK,GAAG,IAAI,CAAC;SACb;IACF,CAAC,CAAC,CAAC;IACH,OAAO,KAAK,CAAC;AACd,CAAC","sourcesContent":["/**\n * @ignore\n */\nexport class Registry {\n\t/**\n\t * Currently running version of amCharts.\n\t */\n\treadonly version: string = \"5.17.0\";\n\n\t/**\n\t * List of applied licenses.\n\t * @ignore\n\t */\n\tlicenses: String[] = [];\n\n\t/**\n\t * Entities that have their `id` setting set.\n\t */\n\tentitiesById: { [index: string]: any } = {};\n\n\t/**\n\t * All created [[Root]] elements.\n\t */\n\trootElements: any[] = [];\n\n\t/**\n\t * Automatically dispose a [[Root]] element if it exists in the target container.\n\t *\n\t * @since 5.14.4\n\t */\n\tautoDispose: boolean = false;\n}\n\n/**\n * @ignore\n */\nexport const registry = new Registry();\n\n/**\n * Adds a license, e.g.:\n *\n * ```TypeScript\n * am5.addLicense(\"xxxxxxxx\");\n * ```\n * ```JavaScript\n * am5.addLicense(\"xxxxxxxx\");\n * ```\n *\n * Multiple licenses can be added to cover for multiple products.\n *\n * @param license License key\n */\nexport function addLicense(license: string): void {\n\tregistry.licenses.push(license);\n}\n\n/**\n * Disposes all [[Root]] elements.\n */\nexport function disposeAllRootElements(): void {\n\tlet root;\n\twhile ((root = registry.rootElements.pop())) {\n\t\troot.dispose();\n\t}\n}\n\n/**\n * Finds and returns a `Root` element assigned to a container with `id`.\n *\n * @param id Container ID\n * @return Root\n * @since 5.9.2\n */\nexport function getRootById(id: string): any {\n\tlet found;\n\tregistry.rootElements.forEach((item) => {\n\t\tif (item.dom.id == id) {\n\t\t\tfound = item;\n\t\t}\n\t});\n\treturn found;\n}\n"]}
1
+ {"version":3,"file":"Registry.js","sourceRoot":"","sources":["../../../../src/.internal/core/Registry.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,OAAO,QAAQ;IAArB;QACC;;WAEG;QACM,YAAO,GAAW,QAAQ,CAAC;QAEpC;;;WAGG;QACH,aAAQ,GAAa,EAAE,CAAC;QAExB;;WAEG;QACH,iBAAY,GAA6B,EAAE,CAAC;QAE5C;;WAEG;QACH,iBAAY,GAAU,EAAE,CAAC;QAEzB;;;;WAIG;QACH,gBAAW,GAAY,KAAK,CAAC;IAC9B,CAAC;CAAA;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;AAEvC;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,UAAU,CAAC,OAAe;IACzC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACjC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB;IACrC,IAAI,IAAI,CAAC;IACT,OAAO,CAAC,IAAI,GAAG,QAAQ,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,EAAE;QAC5C,IAAI,CAAC,OAAO,EAAE,CAAC;KACf;AACF,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAAC,EAAU;IACrC,IAAI,KAAK,CAAC;IACV,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QACtC,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,EAAE;YACtB,KAAK,GAAG,IAAI,CAAC;SACb;IACF,CAAC,CAAC,CAAC;IACH,OAAO,KAAK,CAAC;AACd,CAAC","sourcesContent":["/**\n * @ignore\n */\nexport class Registry {\n\t/**\n\t * Currently running version of amCharts.\n\t */\n\treadonly version: string = \"5.17.2\";\n\n\t/**\n\t * List of applied licenses.\n\t * @ignore\n\t */\n\tlicenses: String[] = [];\n\n\t/**\n\t * Entities that have their `id` setting set.\n\t */\n\tentitiesById: { [index: string]: any } = {};\n\n\t/**\n\t * All created [[Root]] elements.\n\t */\n\trootElements: any[] = [];\n\n\t/**\n\t * Automatically dispose a [[Root]] element if it exists in the target container.\n\t *\n\t * @since 5.14.4\n\t */\n\tautoDispose: boolean = false;\n}\n\n/**\n * @ignore\n */\nexport const registry = new Registry();\n\n/**\n * Adds a license, e.g.:\n *\n * ```TypeScript\n * am5.addLicense(\"xxxxxxxx\");\n * ```\n * ```JavaScript\n * am5.addLicense(\"xxxxxxxx\");\n * ```\n *\n * Multiple licenses can be added to cover for multiple products.\n *\n * @param license License key\n */\nexport function addLicense(license: string): void {\n\tregistry.licenses.push(license);\n}\n\n/**\n * Disposes all [[Root]] elements.\n */\nexport function disposeAllRootElements(): void {\n\tlet root;\n\twhile ((root = registry.rootElements.pop())) {\n\t\troot.dispose();\n\t}\n}\n\n/**\n * Finds and returns a `Root` element assigned to a container with `id`.\n *\n * @param id Container ID\n * @return Root\n * @since 5.9.2\n */\nexport function getRootById(id: string): any {\n\tlet found;\n\tregistry.rootElements.forEach((item) => {\n\t\tif (item.dom.id == id) {\n\t\t\tfound = item;\n\t\t}\n\t});\n\treturn found;\n}\n"]}
@@ -5,13 +5,13 @@ export interface IBulletSettings extends IEntitySettings {
5
5
  /**
6
6
  * Horizontal location within target element.
7
7
  *
8
- * 0 - left, 1 - right, or anything inbetweeen.
8
+ * 0 - left, 1 - right, or anything in between.
9
9
  */
10
10
  locationX?: number;
11
11
  /**
12
12
  * Vertical location within target element.
13
13
  *
14
- * 0 - top, 1 - bottom, or anything inbetweeen.
14
+ * 0 - top, 1 - bottom, or anything in between.
15
15
  */
16
16
  locationY?: number;
17
17
  /**
@@ -41,7 +41,6 @@ export interface IBulletSettings extends IEntitySettings {
41
41
  */
42
42
  autoRotateAngle?: number;
43
43
  /**
44
- * If a field will be set, the bullet will be located at exact value of that field, not paying atention to locationY/locationX. Works with XYSeries only.
45
44
  * If `field` is set, bullet will be placed at the specific data value, ignoring
46
45
  * any `locationX` and `locationY` settings.
47
46
  *
@@ -1 +1 @@
1
- {"version":3,"file":"Bullet.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Bullet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACjF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAEvD,MAAM,WAAW,eAAgB,SAAQ,eAAe;IAEvD;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;;;;OAKG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;;;;;;OAQG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;;;;;;;;OASG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,CAAC;IAE1C;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC;CACjC;AAED,MAAM,WAAW,cAAe,SAAQ,cAAc;IACrD,MAAM,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;;;GAIG;AACH,qBAAa,MAAO,SAAQ,MAAM;IACjC,OAAc,SAAS,EAAE,MAAM,CAAY;IAC3C,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAgD;IAExE,SAAS,EAAE,eAAe,CAAC;IAC3B,gBAAgB,EAAE,cAAc,CAAC;IAGzC,MAAM,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACI,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAElC,SAAS,CAAC,SAAS;IAKZ,cAAc;CAiBrB"}
1
+ {"version":3,"file":"Bullet.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Bullet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACjF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAEvD,MAAM,WAAW,eAAgB,SAAQ,eAAe;IAEvD;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;;;;OAKG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;;;;;;OAQG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;;;;;;;OAQG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,CAAC;IAE1C;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC;CACjC;AAED,MAAM,WAAW,cAAe,SAAQ,cAAc;IACrD,MAAM,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;;;GAIG;AACH,qBAAa,MAAO,SAAQ,MAAM;IACjC,OAAc,SAAS,EAAE,MAAM,CAAY;IAC3C,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAgD;IAExE,SAAS,EAAE,eAAe,CAAC;IAC3B,gBAAgB,EAAE,cAAc,CAAC;IAGzC,MAAM,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACI,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAElC,SAAS,CAAC,SAAS;IAKZ,cAAc;CAiBrB"}
@@ -1 +1 @@
1
- {"version":3,"file":"Bullet.js","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Bullet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAmC,MAAM,wBAAwB,CAAC;AAiFjF;;;;GAIG;AACH,MAAM,OAAO,MAAO,SAAQ,MAAM;IAevB,SAAS;QAClB,sDAAsD;QACtD,KAAK,CAAC,oBAAoB,EAAE,CAAC;IAC9B,CAAC;IAEM,cAAc;QACpB,KAAK,CAAC,cAAc,EAAE,CAAC;QAEvB,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAClC,IAAI,MAAM,EAAE;gBACX,MAAM,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;gBACxD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aAC7B;SACD;QAED,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;YAC3D,IAAI,IAAI,CAAC,MAAM,EAAE;gBAChB,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;aAClC;SACD;IACF,CAAC;;AAnCa,gBAAS,GAAW,QAAQ,CAAC;AAC7B,iBAAU,GAAkB,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC","sourcesContent":["import { Entity, IEntitySettings, IEntityPrivate } from \"../../core/util/Entity\";\nimport type { Sprite } from \"../../core/render/Sprite\";\nimport type { Series } from \"../../core/render/Series\";\n\nexport interface IBulletSettings extends IEntitySettings {\n\n\t/**\n\t * Horizontal location within target element.\n\t *\n\t * 0 - left, 1 - right, or anything inbetweeen.\n\t */\n\tlocationX?: number;\n\n\t/**\n\t * Vertical location within target element.\n\t *\n\t * 0 - top, 1 - bottom, or anything inbetweeen.\n\t */\n\tlocationY?: number;\n\n\t/**\n\t * A visual element of the bullet.\n\t */\n\tsprite: Sprite;\n\n\t/**\n\t * If set to `true`, the bullet will redraw its `sprite` element whenever\n\t * anything in its parent series changes.\n\t *\n\t * @default false\n\t */\n\tdynamic?: boolean;\n\n\t/**\n\t * If set to `true`, the bullet will be automatically rotated to face\n\t * direction of line it is attached to.\n\t *\n\t * NOTE: Works only in [[Flow]] and [[MapPointSeries]] (when [[MapPoint]] is\n\t * attached to a [[MapLine]]).\n\t *\n\t * @default false\n\t */\n\tautoRotate?: boolean;\n\n\t/**\n\t * If `autoRotate` is set to `true`, value of `autoRotateAngle` will be added\n\t * to the automatically-calculated angle.\n\t */\n\tautoRotateAngle?: number;\n\n\t/**\n\t * If a field will be set, the bullet will be located at exact value of that field, not paying atention to locationY/locationX. Works with XYSeries\tonly.\n\t * If `field` is set, bullet will be placed at the specific data value, ignoring\n\t * any `locationX` and `locationY` settings.\n\t *\n\t * **IMPORTANT: this setting works with [[XYSeries]] only.**\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/bullets/#By_data_field} for more info\n\t * @since 5.6.0\n\t */\n\tfield?: \"open\" | \"high\" | \"low\" | \"value\";\n\n\t/**\n\t * If set, will stack bullets instead of overlapping them.\n\t *\n\t * * `\"up` - stacks bullets upwards.\n\t * * `\"down` - stacks bullets downwards.\n\t * * `\"auto` - stacks bullets in the direction that offers more space.\n\t * \n\t * **IMPORTANT: this setting works with [[XYSeries]] only.**\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/bullets/#Stacked_bullets} for more info\n\t * @since 5.6.0\n\t */\n\tstacked?: \"up\" | \"down\" | \"auto\";\n}\n\nexport interface IBulletPrivate extends IEntityPrivate {\n\thidden?: boolean;\n}\n\n/**\n * A universal placeholder for bullet elements.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/bullets/} for more info\n */\nexport class Bullet extends Entity {\n\tpublic static className: string = \"Bullet\";\n\tpublic static classNames: Array<string> = Entity.classNames.concat([Bullet.className]);\n\n\tdeclare public _settings: IBulletSettings;\n\tdeclare public _privateSettings: IBulletPrivate;\n\n\t// used by MapPolygons where one data item can have multiple bullets of the same kind\n\tpublic _index?: number;\n\n\t/**\n\t * Target series object if it's a bullet for series.\n\t */\n\tpublic series: Series | undefined;\n\n\tprotected _afterNew() {\n\t\t// Applying themes because bullet will not have parent\n\t\tsuper._afterNewApplyThemes();\n\t}\n\n\tpublic _beforeChanged() {\n\t\tsuper._beforeChanged();\n\n\t\tif (this.isDirty(\"sprite\")) {\n\t\t\tconst sprite = this.get(\"sprite\");\n\t\t\tif (sprite) {\n\t\t\t\tsprite.setAll({ position: \"absolute\", role: \"figure\" });\n\t\t\t\tthis._disposers.push(sprite);\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"locationX\") || this.isDirty(\"locationY\")) {\n\t\t\tif (this.series) {\n\t\t\t\tthis.series._positionBullet(this);\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
1
+ {"version":3,"file":"Bullet.js","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Bullet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAmC,MAAM,wBAAwB,CAAC;AAgFjF;;;;GAIG;AACH,MAAM,OAAO,MAAO,SAAQ,MAAM;IAevB,SAAS;QAClB,sDAAsD;QACtD,KAAK,CAAC,oBAAoB,EAAE,CAAC;IAC9B,CAAC;IAEM,cAAc;QACpB,KAAK,CAAC,cAAc,EAAE,CAAC;QAEvB,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAClC,IAAI,MAAM,EAAE;gBACX,MAAM,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;gBACxD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aAC7B;SACD;QAED,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;YAC3D,IAAI,IAAI,CAAC,MAAM,EAAE;gBAChB,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;aAClC;SACD;IACF,CAAC;;AAnCa,gBAAS,GAAW,QAAQ,CAAC;AAC7B,iBAAU,GAAkB,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC","sourcesContent":["import { Entity, IEntitySettings, IEntityPrivate } from \"../../core/util/Entity\";\nimport type { Sprite } from \"../../core/render/Sprite\";\nimport type { Series } from \"../../core/render/Series\";\n\nexport interface IBulletSettings extends IEntitySettings {\n\n\t/**\n\t * Horizontal location within target element.\n\t *\n\t * 0 - left, 1 - right, or anything in between.\n\t */\n\tlocationX?: number;\n\n\t/**\n\t * Vertical location within target element.\n\t *\n\t * 0 - top, 1 - bottom, or anything in between.\n\t */\n\tlocationY?: number;\n\n\t/**\n\t * A visual element of the bullet.\n\t */\n\tsprite: Sprite;\n\n\t/**\n\t * If set to `true`, the bullet will redraw its `sprite` element whenever\n\t * anything in its parent series changes.\n\t *\n\t * @default false\n\t */\n\tdynamic?: boolean;\n\n\t/**\n\t * If set to `true`, the bullet will be automatically rotated to face\n\t * direction of line it is attached to.\n\t *\n\t * NOTE: Works only in [[Flow]] and [[MapPointSeries]] (when [[MapPoint]] is\n\t * attached to a [[MapLine]]).\n\t *\n\t * @default false\n\t */\n\tautoRotate?: boolean;\n\n\t/**\n\t * If `autoRotate` is set to `true`, value of `autoRotateAngle` will be added\n\t * to the automatically-calculated angle.\n\t */\n\tautoRotateAngle?: number;\n\n\t/**\n\t * If `field` is set, bullet will be placed at the specific data value, ignoring\n\t * any `locationX` and `locationY` settings.\n\t *\n\t * **IMPORTANT: this setting works with [[XYSeries]] only.**\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/bullets/#By_data_field} for more info\n\t * @since 5.6.0\n\t */\n\tfield?: \"open\" | \"high\" | \"low\" | \"value\";\n\n\t/**\n\t * If set, will stack bullets instead of overlapping them.\n\t *\n\t * * `\"up` - stacks bullets upwards.\n\t * * `\"down` - stacks bullets downwards.\n\t * * `\"auto` - stacks bullets in the direction that offers more space.\n\t * \n\t * **IMPORTANT: this setting works with [[XYSeries]] only.**\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/bullets/#Stacked_bullets} for more info\n\t * @since 5.6.0\n\t */\n\tstacked?: \"up\" | \"down\" | \"auto\";\n}\n\nexport interface IBulletPrivate extends IEntityPrivate {\n\thidden?: boolean;\n}\n\n/**\n * A universal placeholder for bullet elements.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/bullets/} for more info\n */\nexport class Bullet extends Entity {\n\tpublic static className: string = \"Bullet\";\n\tpublic static classNames: Array<string> = Entity.classNames.concat([Bullet.className]);\n\n\tdeclare public _settings: IBulletSettings;\n\tdeclare public _privateSettings: IBulletPrivate;\n\n\t// used by MapPolygons where one data item can have multiple bullets of the same kind\n\tpublic _index?: number;\n\n\t/**\n\t * Target series object if it's a bullet for series.\n\t */\n\tpublic series: Series | undefined;\n\n\tprotected _afterNew() {\n\t\t// Applying themes because bullet will not have parent\n\t\tsuper._afterNewApplyThemes();\n\t}\n\n\tpublic _beforeChanged() {\n\t\tsuper._beforeChanged();\n\n\t\tif (this.isDirty(\"sprite\")) {\n\t\t\tconst sprite = this.get(\"sprite\");\n\t\t\tif (sprite) {\n\t\t\t\tsprite.setAll({ position: \"absolute\", role: \"figure\" });\n\t\t\t\tthis._disposers.push(sprite);\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"locationX\") || this.isDirty(\"locationY\")) {\n\t\t\tif (this.series) {\n\t\t\t\tthis.series._positionBullet(this);\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
@@ -31,7 +31,7 @@ export interface IContainerSettings extends ISpriteSettings {
31
31
  */
32
32
  background?: Graphics;
33
33
  /**
34
- * A method to layout
34
+ * A layout to use for arranging children.
35
35
  *
36
36
  * @see {@link https://www.amcharts.com/docs/v5/concepts/containers/#Layout} for more info
37
37
  */
@@ -50,6 +50,8 @@ export interface IContainerSettings extends ISpriteSettings {
50
50
  /**
51
51
  * If set to `true` all descendants - not just direct children, but every
52
52
  * element in it - will become "interactive".
53
+ *
54
+ * @default true
53
55
  */
54
56
  interactiveChildren?: boolean;
55
57
  /**
@@ -57,6 +59,8 @@ export interface IContainerSettings extends ISpriteSettings {
57
59
  * state on its children.
58
60
  *
59
61
  * @see {@link https://www.amcharts.com/docs/v5/concepts/containers/#States} for more info
62
+ *
63
+ * @default false
60
64
  */
61
65
  setStateOnChildren?: boolean;
62
66
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Container.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Container.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Container.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Container.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Container.js","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Container.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Graphics } from \"./Graphics\";\nimport type { Layout } from \"./Layout\";\nimport type { IContainer } from \"./backend/Renderer\";\nimport type { IBounds } from \"../util/IBounds\";\nimport type { Scrollbar } from \"./Scrollbar\";\nimport type { DataItem, IComponentDataItem } from \"./Component\";\n\nimport { Children } from \"../util/Children\";\nimport { Percent } from \"../util/Percent\";\nimport { Sprite, ISpriteSettings, ISpritePrivate, ISpriteEvents } from \"./Sprite\";\nimport { Rectangle } from \"./Rectangle\";\nimport { HorizontalLayout } from \"./HorizontalLayout\";\nimport { VerticalLayout } from \"./VerticalLayout\";\nimport { GridLayout } from \"./GridLayout\";\nimport { populateString } from \"../util/PopulateString\";\nimport type { IDisposer } from \"../util/Disposer\";\n\nimport * as $array from \"../util/Array\";\nimport * as $type from \"../util/Type\";\nimport * as $utils from \"../util/Utils\";\n\nexport interface IContainerSettings extends ISpriteSettings {\n\n\t/**\n\t * Left padding in pixels.\n\t */\n\tpaddingLeft?: number;\n\n\t/**\n\t * Right padding in pixels.\n\t */\n\tpaddingRight?: number;\n\n\t/**\n\t * Top padding in pixels.\n\t */\n\tpaddingTop?: number;\n\n\t/**\n\t * Bottom padding in pixels.\n\t */\n\tpaddingBottom?: number;\n\n\t/**\n\t * Background element.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/containers/#Background} for more info\n\t */\n\tbackground?: Graphics;\n\n\t/**\n\t * A method to layout\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/containers/#Layout} for more info\n\t */\n\tlayout?: Layout | null;\n\n\t/**\n\t * An element to use as a container's mask (clipping region).\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/containers/#Masks} for more info\n\t */\n\tmask?: Graphics | null;\n\n\t/**\n\t * If set to `true` all content going outside the bounds of the container\n\t * will be clipped.\n\t */\n\tmaskContent?: boolean;\n\n\t/**\n\t * If set to `true` all descendants - not just direct children, but every\n\t * element in it - will become \"interactive\".\n\t */\n\tinteractiveChildren?: boolean;\n\n\t/**\n\t * If set to `true`, applying a state on a container will also apply the same\n\t * state on its children.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/containers/#States} for more info\n\t */\n\tsetStateOnChildren?: boolean;\n\n\t/**\n\t * Setting this to an instance of [[Scrollbar]] will enable vertical\n\t * scrolling of content if it does not fit into the Container.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/containers/#Scrollbar} for more info\n\t */\n\tverticalScrollbar?: Scrollbar;\n\n\t/**\n\t * If set to `true` its children will be laid out in opposite order.\n\t *\n\t * @since 5.1.1\n\t */\n\treverseChildren?: boolean;\n\n\t/**\n\t * HTML content of the container.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/html-content/} for more info\n\t * @since 5.2.11\n\t */\n\thtml?: string;\n\n}\n\nexport interface IContainerEvents extends ISpriteEvents {\n}\n\nexport interface IContainerPrivate extends ISpritePrivate {\n\t/**\n\t * A `<div>` element used for HTML content of the `Container`.\n\t */\n\thtmlElement?: HTMLDivElement;\n\n\t/**\n\t * A wrapper `<div>` for `htmlElement`.\n\t *\n\t * @since 5.11.2\n\t */\n\thtmlElementWrapper?: HTMLDivElement;\n\n\t/**\n\t * @ignore\n\t */\n\twrapperContainer?: Container;\n}\n\n/**\n * A basic element that can have child elements, maintain their layout, and\n * have a background.\n *\n * It can have any [[Sprite]] element as a child, from very basic shapes, to\n * full-fledged charts.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/containers/} for more info\n * @important\n */\nexport class Container extends Sprite {\n\n\tdeclare public _settings: IContainerSettings;\n\tdeclare public _privateSettings: IContainerPrivate;\n\tdeclare public _events: IContainerEvents;\n\n\tpublic _display: IContainer = this._root._renderer.makeContainer();\n\n\tpublic _childrenDisplay: IContainer = this._root._renderer.makeContainer();\n\n\t/**\n\t * List of Container's child elements.\n\t */\n\tpublic children: Children<Sprite> = new Children(this);\n\n\tpublic _percentageSizeChildren: Array<Sprite> = [];\n\tpublic _percentagePositionChildren: Array<Sprite> = [];\n\n\tpublic static className: string = \"Container\";\n\tpublic static classNames: Array<string> = Sprite.classNames.concat([Container.className]);\n\n\tpublic _prevWidth: number = 0;\n\tpublic _prevHeight: number = 0;\n\n\tprotected _contentWidth: number = 0;\n\tprotected _contentHeight: number = 0;\n\n\tprotected _contentMask: Rectangle | undefined;\n\n\tprotected _vsbd0: IDisposer | undefined;\n\tprotected _vsbd1: IDisposer | undefined;\n\n\tprotected _hsbd0: IDisposer | undefined;\n\tprotected _hsbd1: IDisposer | undefined;\n\n\tpublic _childrenPrep: boolean = false;\n\tpublic _childrenUpdt: boolean = false;\n\n\tprotected _afterNew() {\n\t\tsuper._afterNew();\n\t\tthis._display.addChild(this._childrenDisplay);\n\t}\n\n\tpublic _afterChanged(): void {\n\t\tsuper._afterChanged();\n\n\t\tthis._childrenPrep = false;\n\t\tthis._childrenUpdt = false;\n\t}\n\n\tprotected _dispose() {\n\t\t$array.eachReverse(this.allChildren(), (child) => {\n\t\t\tchild.dispose();\n\t\t});\n\n\t\tif (this.getPrivate(\"htmlElement\")) {\n\t\t\tthis._root._removeHTMLContent(this);\n\t\t}\n\n\t\tsuper._dispose();\n\t}\n\n\tpublic _beforeChanged(): void {\n\n\t\tif (!this._childrenPrep) {\n\t\t\tthis._prepareChildren();\n\t\t}\n\n\t\tif (!this._childrenUpdt) {\n\t\t\tthis._updateChildren();\n\t\t}\n\t\tsuper._beforeChanged();\n\t}\n\n\tpublic _changed() {\n\t\tsuper._changed();\n\n\t\tif (this.isDirty(\"interactiveChildren\")) {\n\t\t\tthis._display.interactiveChildren = this.get(\"interactiveChildren\", false);\n\t\t}\n\n\t\tif (this.isDirty(\"layout\")) {\n\t\t\tthis._prevWidth = 0;\n\t\t\tthis._prevHeight = 0;\n\t\t\tthis.markDirtyBounds();\n\t\t\tif (this._prevSettings.layout) {\n\t\t\t\tthis.children.each((child) => {\n\t\t\t\t\tchild.removePrivate(\"x\");\n\t\t\t\t\tchild.removePrivate(\"y\");\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"paddingTop\") || this.isDirty(\"paddingBottom\") || this.isDirty(\"paddingLeft\") || this.isDirty(\"paddingRight\")) {\n\t\t\tthis.children.each((child) => {\n\t\t\t\tchild.markDirtyPosition();\n\t\t\t})\n\t\t}\n\n\t\tif (this.isDirty(\"maskContent\")) {\n\n\t\t\tconst childrenDisplay = this._childrenDisplay;\n\n\t\t\tlet contentMask = this._contentMask;\n\t\t\tif (this.get(\"maskContent\")) {\n\t\t\t\tif (!contentMask) {\n\t\t\t\t\tcontentMask = Rectangle.new(this._root, {\n\t\t\t\t\t\tx: -.5,\n\t\t\t\t\t\ty: -.5,\n\t\t\t\t\t\twidth: this.width() + 1,\n\t\t\t\t\t\theight: this.height() + 1\n\t\t\t\t\t});\n\t\t\t\t\tthis._contentMask = contentMask;\n\t\t\t\t\tchildrenDisplay.addChildAt(contentMask._display, 0);\n\t\t\t\t\tchildrenDisplay.mask = contentMask._display;\n\t\t\t\t}\n\t\t\t}\n\t\t\telse {\n\t\t\t\tif (contentMask) {\n\t\t\t\t\tchildrenDisplay.removeChild(contentMask._display);\n\t\t\t\t\tchildrenDisplay.mask = null;\n\t\t\t\t\tcontentMask.dispose();\n\t\t\t\t\tthis._contentMask = undefined;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic _updateSize() {\n\t\tsuper._updateSize();\n\n\t\t$array.each(this._percentageSizeChildren, (child) => {\n\t\t\tchild._updateSize();\n\t\t});\n\n\t\t$array.each(this._percentagePositionChildren, (child) => {\n\t\t\tchild.markDirtyPosition();\n\t\t\tchild._updateSize();\n\t\t});\n\n\t\tthis.updateBackground();\n\t}\n\n\tprotected updateBackground() {\n\t\tconst background = this.get(\"background\");\n\t\tlet bounds = this._localBounds;\n\n\t\tif (bounds && !this.isHidden()) {\n\t\t\tlet x = bounds.left;\n\t\t\tlet y = bounds.top;\n\t\t\tlet w = bounds.right - x;\n\t\t\tlet h = bounds.bottom - y;\n\n\t\t\tlet maxWidth = this.get(\"maxWidth\");\n\t\t\tlet maxHeight = this.get(\"maxHeight\");\n\n\t\t\tif (maxHeight) {\n\t\t\t\tif (h > maxHeight) {\n\t\t\t\t\th = maxHeight;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (maxWidth) {\n\t\t\t\tif (w > maxWidth) {\n\t\t\t\t\tw = maxWidth;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tlet width = this.width();\n\t\t\tlet height = this.height();\n\n\t\t\tif (background) {\n\t\t\t\tbackground.setAll({ width: w, height: h, x: x, y: y });\n\t\t\t\tif (this._display.interactive) {\n\t\t\t\t\tbackground._display.interactive = true;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tconst contentMask = this._contentMask;\n\t\t\tif (contentMask) {\n\t\t\t\tcontentMask.setAll({ width: width + 1, height: height + 1 });\n\t\t\t}\n\n\t\t\tconst verticalScrollbar = this.get(\"verticalScrollbar\")!;\n\t\t\tif (verticalScrollbar) {\n\t\t\t\tverticalScrollbar.set(\"height\", height);\n\t\t\t\tverticalScrollbar.set(\"x\", width - verticalScrollbar.width() - verticalScrollbar.get(\"marginRight\", 0));\n\t\t\t\tverticalScrollbar.set(\"end\", verticalScrollbar.get(\"start\", 0) + height / this._contentHeight);\n\n\t\t\t\t/**\n\t\t\t\t * ruins scrollToChild\n\t\t\t\tlet start = verticalScrollbar.get(\"start\", 0);\n\t\t\t\tlet end = verticalScrollbar.get(\"end\", 1);\n\n\t\t\t\tif (start > 1 - end) {\n\t\t\t\t\tverticalScrollbar.set(\"start\", Math.max(0, end - height / this._contentHeight));\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tverticalScrollbar.set(\"end\", Math.min(1, start + height / this._contentHeight));\n\t\t\t\t}\n\t\t\t\t\t*/\n\t\t\t\tconst bg = verticalScrollbar.get(\"background\");\n\t\t\t\tif (bg) {\n\t\t\t\t\tbg.setAll({ width: verticalScrollbar.width(), height: height })\n\t\t\t\t}\n\n\t\t\t\tlet visible = true;\n\t\t\t\tif (this._contentHeight <= height) {\n\t\t\t\t\tvisible = false;\n\t\t\t\t}\n\t\t\t\tverticalScrollbar.setPrivate(\"visible\", visible);\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic _applyThemes(force: boolean = false): boolean {\n\t\tif (super._applyThemes(force)) {\n\t\t\tthis.eachChildren((child) => {\n\t\t\t\tchild._applyThemes(force);\n\t\t\t});\n\n\t\t\treturn true;\n\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic _applyState(name: string): void {\n\t\tsuper._applyState(name);\n\n\t\tif (this.get(\"setStateOnChildren\")) {\n\t\t\tthis.eachChildren((child) => {\n\t\t\t\tchild.states.apply(name);\n\t\t\t});\n\t\t}\n\t}\n\n\tpublic _applyStateAnimated(name: string, duration?: number): void {\n\t\tsuper._applyStateAnimated(name, duration);\n\n\t\tif (this.get(\"setStateOnChildren\")) {\n\t\t\tthis.eachChildren((child) => {\n\t\t\t\tchild.states.applyAnimate(name, duration);\n\t\t\t});\n\t\t}\n\t}\n\n\t/**\n\t * Returns container's inner width (width without padding) in pixels.\n\t *\n\t * @return Inner width (px)\n\t */\n\tpublic innerWidth(): number {\n\t\treturn this.width() - this.get(\"paddingRight\", 0) - this.get(\"paddingLeft\", 0);\n\t}\n\n\t/**\n\t * Returns container's inner height (height without padding) in pixels.\n\t *\n\t * @return Inner height (px)\n\t */\n\tpublic innerHeight(): number {\n\t\treturn this.height() - this.get(\"paddingTop\", 0) - this.get(\"paddingBottom\", 0);\n\t}\n\n\tpublic _getBounds() {\n\t\tif (!this.get(\"html\")) {\n\t\t\tlet width = this.get(\"width\");\n\t\t\tlet height = this.get(\"height\");\n\n\t\t\tlet pWidth = this.getPrivate(\"width\");\n\t\t\tlet pHeight = this.getPrivate(\"height\");\n\n\t\t\tlet bounds: IBounds = {\n\t\t\t\tleft: 0,\n\t\t\t\ttop: 0,\n\t\t\t\tright: this.width(),\n\t\t\t\tbottom: this.height()\n\t\t\t};\n\n\t\t\tlet layout = this.get(\"layout\");\n\t\t\tlet horizontal = false;\n\t\t\tlet vertical = false;\n\t\t\tif (layout instanceof HorizontalLayout || layout instanceof GridLayout) {\n\t\t\t\thorizontal = true;\n\t\t\t}\n\n\t\t\tif (layout instanceof VerticalLayout) {\n\t\t\t\tvertical = true;\n\t\t\t}\n\n\t\t\tif ((width != null || pWidth != null) && (height != null || pHeight != null) && !this.get(\"verticalScrollbar\")) {\n\t\t\t\t// void\n\t\t\t}\n\t\t\telse {\n\t\t\t\tlet m = Number.MAX_VALUE;\n\n\t\t\t\tlet l = m;\n\t\t\t\tlet r = -m;\n\t\t\t\tlet t = m;\n\t\t\t\tlet b = -m;\n\n\t\t\t\tconst paddingLeft = this.get(\"paddingLeft\", 0);\n\t\t\t\tconst paddingTop = this.get(\"paddingTop\", 0);\n\t\t\t\tconst paddingRight = this.get(\"paddingRight\", 0);\n\t\t\t\tconst paddingBottom = this.get(\"paddingBottom\", 0);\n\n\t\t\t\tthis.children.each((child) => {\n\t\t\t\t\tif (child.get(\"position\") != \"absolute\" && child.get(\"isMeasured\")) {\n\t\t\t\t\t\tlet childBounds = child.adjustedLocalBounds();\n\t\t\t\t\t\tlet childX = child.x();\n\t\t\t\t\t\tlet childY = child.y();\n\t\t\t\t\t\tlet cl = childX + childBounds.left;\n\t\t\t\t\t\tlet cr = childX + childBounds.right;\n\t\t\t\t\t\tlet ct = childY + childBounds.top;\n\t\t\t\t\t\tlet cb = childY + childBounds.bottom;\n\n\t\t\t\t\t\tif (horizontal) {\n\t\t\t\t\t\t\tcl -= child.get(\"marginLeft\", 0);\n\t\t\t\t\t\t\tcr += child.get(\"marginRight\", 0);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (vertical) {\n\t\t\t\t\t\t\tct -= child.get(\"marginTop\", 0);\n\t\t\t\t\t\t\tcb += child.get(\"marginBottom\", 0);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (cl < l) {\n\t\t\t\t\t\t\tl = cl;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (cr > r) {\n\t\t\t\t\t\t\tr = cr;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (ct < t) {\n\t\t\t\t\t\t\tt = ct;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (cb > b) {\n\t\t\t\t\t\t\tb = cb;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t})\n\n\t\t\t\tif (l == m) {\n\t\t\t\t\tl = 0;\n\t\t\t\t}\n\n\t\t\t\tif (r == -m) {\n\t\t\t\t\tr = 0;\n\t\t\t\t}\n\n\t\t\t\tif (t == m) {\n\t\t\t\t\tt = 0;\n\t\t\t\t}\n\n\t\t\t\tif (b == -m) {\n\t\t\t\t\tb = 0;\n\t\t\t\t}\n\n\t\t\t\tbounds.left = l - paddingLeft;\n\t\t\t\tbounds.top = t - paddingTop;\n\t\t\t\tbounds.right = r + paddingRight;\n\t\t\t\tbounds.bottom = b + paddingBottom;\n\n\t\t\t\tconst minWidth = this.get(\"minWidth\");\n\n\t\t\t\tif ($type.isNumber(minWidth) && minWidth > 0) {\n\t\t\t\t\tif (bounds.right - bounds.left < minWidth) {\n\t\t\t\t\t\tif (bounds.right >= minWidth) {\n\t\t\t\t\t\t\tbounds.left = bounds.right - minWidth;\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tbounds.right = bounds.left + minWidth;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tconst minHeight = this.get(\"minHeight\");\n\n\t\t\t\tif ($type.isNumber(minHeight) && minHeight > 0) {\n\t\t\t\t\tif (bounds.bottom - bounds.top < minHeight) {\n\t\t\t\t\t\tif (bounds.bottom >= minHeight) {\n\t\t\t\t\t\t\tbounds.top = bounds.bottom - minHeight;\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tbounds.bottom = bounds.top + minHeight;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis._contentWidth = bounds.right - bounds.left;\n\t\t\tthis._contentHeight = bounds.bottom - bounds.top;\n\n\t\t\tif ($type.isNumber(width)) {\n\t\t\t\tbounds.left = 0;\n\t\t\t\tbounds.right = width;\n\t\t\t}\n\n\t\t\tif ($type.isNumber(pWidth)) {\n\t\t\t\tbounds.left = 0;\n\t\t\t\tbounds.right = pWidth;\n\t\t\t}\n\n\t\t\tif ($type.isNumber(height)) {\n\t\t\t\tbounds.top = 0;\n\t\t\t\tbounds.bottom = height;\n\t\t\t}\n\n\t\t\tif ($type.isNumber(pHeight)) {\n\t\t\t\tbounds.top = 0;\n\t\t\t\tbounds.bottom = pHeight;\n\t\t\t}\n\n\t\t\tthis._localBounds = bounds;\n\t\t}\n\t\telse {\n\t\t\tlet bounds = this._localBounds;\n\t\t\tif (bounds) {\n\t\t\t\tthis._contentWidth = bounds.right - bounds.left;\n\t\t\t\tthis._contentHeight = bounds.bottom - bounds.top;\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic _updateBounds() {\n\t\tconst layout = this.get(\"layout\");\n\n\t\tif (layout) {\n\t\t\tlayout.updateContainer(this);\n\t\t}\n\n\t\tsuper._updateBounds();\n\n\t\tthis.updateBackground();\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic markDirty(): void {\n\t\tsuper.markDirty();\n\t\tthis._root._addDirtyParent(this);\n\t}\n\n\tpublic _prepareChildren() {\n\n\t\tthis._childrenPrep = true;\n\n\t\tconst innerWidth = this.innerWidth();\n\t\tconst innerHeight = this.innerHeight();\n\n\t\tif (innerWidth != this._prevWidth || innerHeight != this._prevHeight) {\n\t\t\tlet layout = this.get(\"layout\");\n\t\t\tlet horizontal = false;\n\t\t\tlet vertical = false;\n\t\t\tif (layout) {\n\t\t\t\tif (layout instanceof HorizontalLayout || layout instanceof GridLayout) {\n\t\t\t\t\thorizontal = true;\n\t\t\t\t}\n\t\t\t\tif (layout instanceof VerticalLayout) {\n\t\t\t\t\tvertical = true;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t$array.each(this._percentageSizeChildren, (child) => {\n\t\t\t\tif (!horizontal) {\n\t\t\t\t\tlet width = child.get(\"width\");\n\t\t\t\t\tif (width instanceof Percent) {\n\t\t\t\t\t\tchild.setPrivate(\"width\", width.value * innerWidth);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (!vertical) {\n\t\t\t\t\tlet height = child.get(\"height\");\n\t\t\t\t\tif (height instanceof Percent) {\n\t\t\t\t\t\tchild.setPrivate(\"height\", height.value * innerHeight);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})\n\n\t\t\t$array.each(this._percentagePositionChildren, (child) => {\n\t\t\t\tchild.markDirtyPosition();\n\t\t\t\tchild.markDirtyBounds();\n\t\t\t})\n\n\t\t\tthis._prevWidth = innerWidth;\n\t\t\tthis._prevHeight = innerHeight;\n\n\t\t\tthis._sizeDirty = true;\n\t\t\tthis.updateBackground();\n\t\t}\n\n\t\t//this._handleStates();\n\t}\n\n\tpublic _updateHTMLContent() {\n\t\tconst html = this.get(\"html\", \"\");\n\t\tif (html && html !== \"\") {\n\t\t\tthis._root._setHTMLContent(this, populateString(this, html));\n\t\t}\n\t\telse {\n\t\t\tthis._root._removeHTMLContent(this);\n\t\t}\n\t\tthis._root._positionHTMLElement(this);\n\t}\n\n\t/**\n\t * If scrolling is enabled on the Container (by adding `verticalScrollbar`)\n\t * the Container will scroll in such way so that target element becomes\n\t * visible if its currently outside of view.\n\t *\n\t * @param child Target child\n\t * @since 5.10.5\n\t */\n\tpublic scrollToChild(child: Sprite) {\n\t\tconst verticalScrollbar = this.get(\"verticalScrollbar\")!;\n\t\tif (verticalScrollbar) {\n\t\t\tlet y = child.y();\n\t\t\tlet h = this.innerHeight();\n\t\t\tlet ch = child.height();\n\t\t\tlet contentH = this._contentHeight;\n\t\t\tlet max = 1 - (h - ch / 2) / contentH;\n\n\t\t\tif (y + ch * .7 + this._childrenDisplay.y > h || y - ch * .3 + this._childrenDisplay.y < 0) {\n\t\t\t\tlet pos = Math.max(0, Math.min(max, (y - ch / 2) / contentH));\n\t\t\t\tverticalScrollbar.animate({ key: \"start\", to: pos, duration: verticalScrollbar.get(\"animationDuration\", 0), easing: verticalScrollbar.get(\"animationEasing\") });\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic _updateChildren() {\n\n\t\tthis._childrenUpdt = true;\n\n\t\tif (this.isDirty(\"html\")) {\n\t\t\tthis._updateHTMLContent();\n\t\t}\n\n\t\tif (this.isDirty(\"verticalScrollbar\")) {\n\t\t\tconst verticalScrollbar = this.get(\"verticalScrollbar\")!;\n\t\t\tif (verticalScrollbar) {\n\t\t\t\tverticalScrollbar._setParent(this);\n\n\t\t\t\tverticalScrollbar.startGrip.setPrivate(\"visible\", false);\n\t\t\t\tverticalScrollbar.endGrip.setPrivate(\"visible\", false);\n\n\t\t\t\tthis.set(\"maskContent\", true);\n\t\t\t\tthis.set(\"paddingRight\", verticalScrollbar.width() + verticalScrollbar.get(\"marginRight\", 0) + verticalScrollbar.get(\"marginLeft\", 0));\n\n\t\t\t\tlet background = this.get(\"background\");\n\n\t\t\t\tif (!background) {\n\t\t\t\t\tbackground = this.set(\"background\", Rectangle.new(this._root, {\n\t\t\t\t\t\tthemeTags: [\"background\"],\n\t\t\t\t\t\tfillOpacity: 0,\n\t\t\t\t\t\tfill: this._root.interfaceColors.get(\"alternativeBackground\")\n\t\t\t\t\t}));\n\t\t\t\t}\n\n\t\t\t\tthis._vsbd0 = this.events.on(\"wheel\", (event) => {\n\t\t\t\t\tconst wheelEvent = event.originalEvent;\n\n\t\t\t\t\t// Ignore wheel event if it is happening on a non-chart element, e.g. if\n\t\t\t\t\t// some page element is over the chart.\n\t\t\t\t\tif ($utils.isLocalEvent(wheelEvent, this)) {\n\t\t\t\t\t\twheelEvent.preventDefault();\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tlet shiftY = wheelEvent.deltaY / 5000;\n\t\t\t\t\tconst start = verticalScrollbar.get(\"start\", 0);\n\t\t\t\t\tconst end = verticalScrollbar.get(\"end\", 1);\n\n\t\t\t\t\tif (start + shiftY <= 0) {\n\t\t\t\t\t\tshiftY = -start;\n\t\t\t\t\t}\n\t\t\t\t\tif (end + shiftY >= 1) {\n\t\t\t\t\t\tshiftY = 1 - end;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (start + shiftY >= 0 && end + shiftY <= 1) {\n\t\t\t\t\t\tverticalScrollbar.set(\"start\", start + shiftY);\n\t\t\t\t\t\tverticalScrollbar.set(\"end\", end + shiftY);\n\t\t\t\t\t}\n\n\t\t\t\t})\n\n\t\t\t\tthis._disposers.push(this._vsbd0);\n\n\t\t\t\tthis._vsbd1 = verticalScrollbar.events.on(\"rangechanged\", () => {\n\t\t\t\t\tlet h = this._contentHeight;\n\t\t\t\t\tconst childrenDisplay = this._childrenDisplay;\n\t\t\t\t\tconst contentMask = this._contentMask;\n\n\t\t\t\t\tchildrenDisplay.y = -verticalScrollbar.get(\"start\", 0) * h;\n\t\t\t\t\tchildrenDisplay.markDirtyLayer();\n\n\t\t\t\t\tif (contentMask) {\n\t\t\t\t\t\tcontentMask._display.y = -childrenDisplay.y;\n\t\t\t\t\t\tchildrenDisplay.mask = contentMask._display;\n\t\t\t\t\t}\n\t\t\t\t})\n\n\t\t\t\tthis._disposers.push(this._vsbd1);\n\n\t\t\t\tthis._display.addChild(verticalScrollbar._display);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tconst previous = this._prevSettings.verticalScrollbar\n\t\t\t\tif (previous) {\n\t\t\t\t\tthis._display.removeChild(previous._display);\n\t\t\t\t\tif (this._vsbd0) {\n\t\t\t\t\t\tthis._vsbd0.dispose();\n\t\t\t\t\t}\n\t\t\t\t\tif (this._vsbd1) {\n\t\t\t\t\t\tthis._vsbd1.dispose();\n\t\t\t\t\t}\n\t\t\t\t\tconst childrenDisplay = this._childrenDisplay;\n\t\t\t\t\tchildrenDisplay.y = 0;\n\n\t\t\t\t\tthis.setPrivate(\"height\", undefined);\n\t\t\t\t\tthis.set(\"maskContent\", false);\n\t\t\t\t\tthis.set(\"paddingRight\", undefined);\n\t\t\t\t}\n\t\t\t}\n\n\n\t\t}\n\n\t\tif (this.isDirty(\"background\")) {\n\t\t\t// TODO maybe this should dispose ?\n\t\t\tconst previous = this._prevSettings[\"background\"];\n\t\t\tif (previous) {\n\t\t\t\tthis._display.removeChild(previous._display);\n\t\t\t}\n\n\t\t\tconst background = this.get(\"background\");\n\t\t\tif (background instanceof Sprite) {\n\t\t\t\tbackground.set(\"isMeasured\", false);\n\t\t\t\tbackground._setParent(this);\n\t\t\t\tthis._display.addChildAt(background._display, 0);\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"mask\")) {\n\n\t\t\tconst mask = this.get(\"mask\");\n\n\t\t\tconst previous = this._prevSettings[\"mask\"];\n\t\t\tif (previous) {\n\t\t\t\tthis._display.removeChild(previous._display);\n\t\t\t\tif (previous != mask) {\n\t\t\t\t\tprevious.dispose();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (mask) {\n\t\t\t\tconst parent = mask.parent;\n\t\t\t\tif (parent) {\n\t\t\t\t\tparent.children.removeValue(mask);\n\t\t\t\t}\n\n\t\t\t\tmask._setParent(this);\n\t\t\t\tthis._display.addChildAt(mask._display, 0);\n\t\t\t\tthis._childrenDisplay.mask = mask._display;\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic _processTemplateField(): void {\n\t\tsuper._processTemplateField();\n\t\tthis.children.each((child) => {\n\t\t\tchild._processTemplateField();\n\t\t})\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic walkChildren(f: (child: Sprite, index?: number) => void): void {\n\t\tthis.children.each((child, index) => {\n\t\t\tif (child instanceof Container) {\n\t\t\t\tchild.walkChildren(f);\n\t\t\t}\n\t\t\tf(child, index);\n\t\t});\n\t}\n\n\tpublic eachChildren(f: (child: Sprite) => void): void {\n\t\tconst background = this.get(\"background\");\n\t\tif (background) {\n\t\t\tf(background);\n\t\t}\n\n\t\tconst verticalScrollbar = this.get(\"verticalScrollbar\");\n\t\tif (verticalScrollbar) {\n\t\t\tf(verticalScrollbar);\n\t\t}\n\n\t\tconst mask = this.get(\"mask\");\n\t\tif (mask) {\n\t\t\tf(mask);\n\t\t}\n\n\t\tthis.children.values.forEach((child) => {\n\t\t\tf(child);\n\t\t});\n\t}\n\n\tpublic allChildren(): Array<Sprite> {\n\t\tconst output: Array<Sprite> = [];\n\n\t\tthis.eachChildren((x) => {\n\t\t\toutput.push(x);\n\t\t});\n\n\t\treturn output;\n\t}\n\n\tpublic _setDataItem(dataItem?: DataItem<IComponentDataItem>): void {\n\t\tconst updated = (dataItem !== this._dataItem);\n\t\tsuper._setDataItem(dataItem);\n\t\tconst html = this.get(\"html\", \"\");\n\t\tif (html && html !== \"\" && updated) {\n\t\t\tthis._root._setHTMLContent(this, populateString(this, html));\n\t\t}\n\t}\n\n\tpublic contentWidth(): number {\n\t\treturn this._contentWidth;\n\t}\n\n\tpublic contentHeight(): number {\n\t\treturn this._contentHeight;\n\t}\n}\n"]}
1
+ {"version":3,"file":"Container.js","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Container.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Graphics } from \"./Graphics\";\nimport type { Layout } from \"./Layout\";\nimport type { IContainer } from \"./backend/Renderer\";\nimport type { IBounds } from \"../util/IBounds\";\nimport type { Scrollbar } from \"./Scrollbar\";\nimport type { DataItem, IComponentDataItem } from \"./Component\";\n\nimport { Children } from \"../util/Children\";\nimport { Percent } from \"../util/Percent\";\nimport { Sprite, ISpriteSettings, ISpritePrivate, ISpriteEvents } from \"./Sprite\";\nimport { Rectangle } from \"./Rectangle\";\nimport { HorizontalLayout } from \"./HorizontalLayout\";\nimport { VerticalLayout } from \"./VerticalLayout\";\nimport { GridLayout } from \"./GridLayout\";\nimport { populateString } from \"../util/PopulateString\";\nimport type { IDisposer } from \"../util/Disposer\";\n\nimport * as $array from \"../util/Array\";\nimport * as $type from \"../util/Type\";\nimport * as $utils from \"../util/Utils\";\n\nexport interface IContainerSettings extends ISpriteSettings {\n\n\t/**\n\t * Left padding in pixels.\n\t */\n\tpaddingLeft?: number;\n\n\t/**\n\t * Right padding in pixels.\n\t */\n\tpaddingRight?: number;\n\n\t/**\n\t * Top padding in pixels.\n\t */\n\tpaddingTop?: number;\n\n\t/**\n\t * Bottom padding in pixels.\n\t */\n\tpaddingBottom?: number;\n\n\t/**\n\t * Background element.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/containers/#Background} for more info\n\t */\n\tbackground?: Graphics;\n\n\t/**\n\t * A layout to use for arranging children.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/containers/#Layout} for more info\n\t */\n\tlayout?: Layout | null;\n\n\t/**\n\t * An element to use as a container's mask (clipping region).\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/containers/#Masks} for more info\n\t */\n\tmask?: Graphics | null;\n\n\t/**\n\t * If set to `true` all content going outside the bounds of the container\n\t * will be clipped.\n\t */\n\tmaskContent?: boolean;\n\n\t/**\n\t * If set to `true` all descendants - not just direct children, but every\n\t * element in it - will become \"interactive\".\n\t *\n\t * @default true\n\t */\n\tinteractiveChildren?: boolean;\n\n\t/**\n\t * If set to `true`, applying a state on a container will also apply the same\n\t * state on its children.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/containers/#States} for more info\n\t *\n\t * @default false\n\t */\n\tsetStateOnChildren?: boolean;\n\n\t/**\n\t * Setting this to an instance of [[Scrollbar]] will enable vertical\n\t * scrolling of content if it does not fit into the Container.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/containers/#Scrollbar} for more info\n\t */\n\tverticalScrollbar?: Scrollbar;\n\n\t/**\n\t * If set to `true` its children will be laid out in opposite order.\n\t *\n\t * @since 5.1.1\n\t */\n\treverseChildren?: boolean;\n\n\t/**\n\t * HTML content of the container.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/html-content/} for more info\n\t * @since 5.2.11\n\t */\n\thtml?: string;\n\n}\n\nexport interface IContainerEvents extends ISpriteEvents {\n}\n\nexport interface IContainerPrivate extends ISpritePrivate {\n\t/**\n\t * A `<div>` element used for HTML content of the `Container`.\n\t */\n\thtmlElement?: HTMLDivElement;\n\n\t/**\n\t * A wrapper `<div>` for `htmlElement`.\n\t *\n\t * @since 5.11.2\n\t */\n\thtmlElementWrapper?: HTMLDivElement;\n\n\t/**\n\t * @ignore\n\t */\n\twrapperContainer?: Container;\n}\n\n/**\n * A basic element that can have child elements, maintain their layout, and\n * have a background.\n *\n * It can have any [[Sprite]] element as a child, from very basic shapes, to\n * full-fledged charts.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/containers/} for more info\n * @important\n */\nexport class Container extends Sprite {\n\n\tdeclare public _settings: IContainerSettings;\n\tdeclare public _privateSettings: IContainerPrivate;\n\tdeclare public _events: IContainerEvents;\n\n\tpublic _display: IContainer = this._root._renderer.makeContainer();\n\n\tpublic _childrenDisplay: IContainer = this._root._renderer.makeContainer();\n\n\t/**\n\t * List of Container's child elements.\n\t */\n\tpublic children: Children<Sprite> = new Children(this);\n\n\tpublic _percentageSizeChildren: Array<Sprite> = [];\n\tpublic _percentagePositionChildren: Array<Sprite> = [];\n\n\tpublic static className: string = \"Container\";\n\tpublic static classNames: Array<string> = Sprite.classNames.concat([Container.className]);\n\n\tpublic _prevWidth: number = 0;\n\tpublic _prevHeight: number = 0;\n\n\tprotected _contentWidth: number = 0;\n\tprotected _contentHeight: number = 0;\n\n\tprotected _contentMask: Rectangle | undefined;\n\n\tprotected _vsbd0: IDisposer | undefined;\n\tprotected _vsbd1: IDisposer | undefined;\n\n\tprotected _hsbd0: IDisposer | undefined;\n\tprotected _hsbd1: IDisposer | undefined;\n\n\tpublic _childrenPrep: boolean = false;\n\tpublic _childrenUpdt: boolean = false;\n\n\tprotected _afterNew() {\n\t\tsuper._afterNew();\n\t\tthis._display.addChild(this._childrenDisplay);\n\t}\n\n\tpublic _afterChanged(): void {\n\t\tsuper._afterChanged();\n\n\t\tthis._childrenPrep = false;\n\t\tthis._childrenUpdt = false;\n\t}\n\n\tprotected _dispose() {\n\t\t$array.eachReverse(this.allChildren(), (child) => {\n\t\t\tchild.dispose();\n\t\t});\n\n\t\tif (this.getPrivate(\"htmlElement\")) {\n\t\t\tthis._root._removeHTMLContent(this);\n\t\t}\n\n\t\tsuper._dispose();\n\t}\n\n\tpublic _beforeChanged(): void {\n\n\t\tif (!this._childrenPrep) {\n\t\t\tthis._prepareChildren();\n\t\t}\n\n\t\tif (!this._childrenUpdt) {\n\t\t\tthis._updateChildren();\n\t\t}\n\t\tsuper._beforeChanged();\n\t}\n\n\tpublic _changed() {\n\t\tsuper._changed();\n\n\t\tif (this.isDirty(\"interactiveChildren\")) {\n\t\t\tthis._display.interactiveChildren = this.get(\"interactiveChildren\", false);\n\t\t}\n\n\t\tif (this.isDirty(\"layout\")) {\n\t\t\tthis._prevWidth = 0;\n\t\t\tthis._prevHeight = 0;\n\t\t\tthis.markDirtyBounds();\n\t\t\tif (this._prevSettings.layout) {\n\t\t\t\tthis.children.each((child) => {\n\t\t\t\t\tchild.removePrivate(\"x\");\n\t\t\t\t\tchild.removePrivate(\"y\");\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"paddingTop\") || this.isDirty(\"paddingBottom\") || this.isDirty(\"paddingLeft\") || this.isDirty(\"paddingRight\")) {\n\t\t\tthis.children.each((child) => {\n\t\t\t\tchild.markDirtyPosition();\n\t\t\t})\n\t\t}\n\n\t\tif (this.isDirty(\"maskContent\")) {\n\n\t\t\tconst childrenDisplay = this._childrenDisplay;\n\n\t\t\tlet contentMask = this._contentMask;\n\t\t\tif (this.get(\"maskContent\")) {\n\t\t\t\tif (!contentMask) {\n\t\t\t\t\tcontentMask = Rectangle.new(this._root, {\n\t\t\t\t\t\tx: -.5,\n\t\t\t\t\t\ty: -.5,\n\t\t\t\t\t\twidth: this.width() + 1,\n\t\t\t\t\t\theight: this.height() + 1\n\t\t\t\t\t});\n\t\t\t\t\tthis._contentMask = contentMask;\n\t\t\t\t\tchildrenDisplay.addChildAt(contentMask._display, 0);\n\t\t\t\t\tchildrenDisplay.mask = contentMask._display;\n\t\t\t\t}\n\t\t\t}\n\t\t\telse {\n\t\t\t\tif (contentMask) {\n\t\t\t\t\tchildrenDisplay.removeChild(contentMask._display);\n\t\t\t\t\tchildrenDisplay.mask = null;\n\t\t\t\t\tcontentMask.dispose();\n\t\t\t\t\tthis._contentMask = undefined;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic _updateSize() {\n\t\tsuper._updateSize();\n\n\t\t$array.each(this._percentageSizeChildren, (child) => {\n\t\t\tchild._updateSize();\n\t\t});\n\n\t\t$array.each(this._percentagePositionChildren, (child) => {\n\t\t\tchild.markDirtyPosition();\n\t\t\tchild._updateSize();\n\t\t});\n\n\t\tthis.updateBackground();\n\t}\n\n\tprotected updateBackground() {\n\t\tconst background = this.get(\"background\");\n\t\tlet bounds = this._localBounds;\n\n\t\tif (bounds && !this.isHidden()) {\n\t\t\tlet x = bounds.left;\n\t\t\tlet y = bounds.top;\n\t\t\tlet w = bounds.right - x;\n\t\t\tlet h = bounds.bottom - y;\n\n\t\t\tlet maxWidth = this.get(\"maxWidth\");\n\t\t\tlet maxHeight = this.get(\"maxHeight\");\n\n\t\t\tif (maxHeight) {\n\t\t\t\tif (h > maxHeight) {\n\t\t\t\t\th = maxHeight;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (maxWidth) {\n\t\t\t\tif (w > maxWidth) {\n\t\t\t\t\tw = maxWidth;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tlet width = this.width();\n\t\t\tlet height = this.height();\n\n\t\t\tif (background) {\n\t\t\t\tbackground.setAll({ width: w, height: h, x: x, y: y });\n\t\t\t\tif (this._display.interactive) {\n\t\t\t\t\tbackground._display.interactive = true;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tconst contentMask = this._contentMask;\n\t\t\tif (contentMask) {\n\t\t\t\tcontentMask.setAll({ width: width + 1, height: height + 1 });\n\t\t\t}\n\n\t\t\tconst verticalScrollbar = this.get(\"verticalScrollbar\")!;\n\t\t\tif (verticalScrollbar) {\n\t\t\t\tverticalScrollbar.set(\"height\", height);\n\t\t\t\tverticalScrollbar.set(\"x\", width - verticalScrollbar.width() - verticalScrollbar.get(\"marginRight\", 0));\n\t\t\t\tverticalScrollbar.set(\"end\", verticalScrollbar.get(\"start\", 0) + height / this._contentHeight);\n\n\t\t\t\t/**\n\t\t\t\t * ruins scrollToChild\n\t\t\t\tlet start = verticalScrollbar.get(\"start\", 0);\n\t\t\t\tlet end = verticalScrollbar.get(\"end\", 1);\n\n\t\t\t\tif (start > 1 - end) {\n\t\t\t\t\tverticalScrollbar.set(\"start\", Math.max(0, end - height / this._contentHeight));\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tverticalScrollbar.set(\"end\", Math.min(1, start + height / this._contentHeight));\n\t\t\t\t}\n\t\t\t\t\t*/\n\t\t\t\tconst bg = verticalScrollbar.get(\"background\");\n\t\t\t\tif (bg) {\n\t\t\t\t\tbg.setAll({ width: verticalScrollbar.width(), height: height })\n\t\t\t\t}\n\n\t\t\t\tlet visible = true;\n\t\t\t\tif (this._contentHeight <= height) {\n\t\t\t\t\tvisible = false;\n\t\t\t\t}\n\t\t\t\tverticalScrollbar.setPrivate(\"visible\", visible);\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic _applyThemes(force: boolean = false): boolean {\n\t\tif (super._applyThemes(force)) {\n\t\t\tthis.eachChildren((child) => {\n\t\t\t\tchild._applyThemes(force);\n\t\t\t});\n\n\t\t\treturn true;\n\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic _applyState(name: string): void {\n\t\tsuper._applyState(name);\n\n\t\tif (this.get(\"setStateOnChildren\")) {\n\t\t\tthis.eachChildren((child) => {\n\t\t\t\tchild.states.apply(name);\n\t\t\t});\n\t\t}\n\t}\n\n\tpublic _applyStateAnimated(name: string, duration?: number): void {\n\t\tsuper._applyStateAnimated(name, duration);\n\n\t\tif (this.get(\"setStateOnChildren\")) {\n\t\t\tthis.eachChildren((child) => {\n\t\t\t\tchild.states.applyAnimate(name, duration);\n\t\t\t});\n\t\t}\n\t}\n\n\t/**\n\t * Returns container's inner width (width without padding) in pixels.\n\t *\n\t * @return Inner width (px)\n\t */\n\tpublic innerWidth(): number {\n\t\treturn this.width() - this.get(\"paddingRight\", 0) - this.get(\"paddingLeft\", 0);\n\t}\n\n\t/**\n\t * Returns container's inner height (height without padding) in pixels.\n\t *\n\t * @return Inner height (px)\n\t */\n\tpublic innerHeight(): number {\n\t\treturn this.height() - this.get(\"paddingTop\", 0) - this.get(\"paddingBottom\", 0);\n\t}\n\n\tpublic _getBounds() {\n\t\tif (!this.get(\"html\")) {\n\t\t\tlet width = this.get(\"width\");\n\t\t\tlet height = this.get(\"height\");\n\n\t\t\tlet pWidth = this.getPrivate(\"width\");\n\t\t\tlet pHeight = this.getPrivate(\"height\");\n\n\t\t\tlet bounds: IBounds = {\n\t\t\t\tleft: 0,\n\t\t\t\ttop: 0,\n\t\t\t\tright: this.width(),\n\t\t\t\tbottom: this.height()\n\t\t\t};\n\n\t\t\tlet layout = this.get(\"layout\");\n\t\t\tlet horizontal = false;\n\t\t\tlet vertical = false;\n\t\t\tif (layout instanceof HorizontalLayout || layout instanceof GridLayout) {\n\t\t\t\thorizontal = true;\n\t\t\t}\n\n\t\t\tif (layout instanceof VerticalLayout) {\n\t\t\t\tvertical = true;\n\t\t\t}\n\n\t\t\tif ((width != null || pWidth != null) && (height != null || pHeight != null) && !this.get(\"verticalScrollbar\")) {\n\t\t\t\t// void\n\t\t\t}\n\t\t\telse {\n\t\t\t\tlet m = Number.MAX_VALUE;\n\n\t\t\t\tlet l = m;\n\t\t\t\tlet r = -m;\n\t\t\t\tlet t = m;\n\t\t\t\tlet b = -m;\n\n\t\t\t\tconst paddingLeft = this.get(\"paddingLeft\", 0);\n\t\t\t\tconst paddingTop = this.get(\"paddingTop\", 0);\n\t\t\t\tconst paddingRight = this.get(\"paddingRight\", 0);\n\t\t\t\tconst paddingBottom = this.get(\"paddingBottom\", 0);\n\n\t\t\t\tthis.children.each((child) => {\n\t\t\t\t\tif (child.get(\"position\") != \"absolute\" && child.get(\"isMeasured\")) {\n\t\t\t\t\t\tlet childBounds = child.adjustedLocalBounds();\n\t\t\t\t\t\tlet childX = child.x();\n\t\t\t\t\t\tlet childY = child.y();\n\t\t\t\t\t\tlet cl = childX + childBounds.left;\n\t\t\t\t\t\tlet cr = childX + childBounds.right;\n\t\t\t\t\t\tlet ct = childY + childBounds.top;\n\t\t\t\t\t\tlet cb = childY + childBounds.bottom;\n\n\t\t\t\t\t\tif (horizontal) {\n\t\t\t\t\t\t\tcl -= child.get(\"marginLeft\", 0);\n\t\t\t\t\t\t\tcr += child.get(\"marginRight\", 0);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (vertical) {\n\t\t\t\t\t\t\tct -= child.get(\"marginTop\", 0);\n\t\t\t\t\t\t\tcb += child.get(\"marginBottom\", 0);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (cl < l) {\n\t\t\t\t\t\t\tl = cl;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (cr > r) {\n\t\t\t\t\t\t\tr = cr;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (ct < t) {\n\t\t\t\t\t\t\tt = ct;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (cb > b) {\n\t\t\t\t\t\t\tb = cb;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t})\n\n\t\t\t\tif (l == m) {\n\t\t\t\t\tl = 0;\n\t\t\t\t}\n\n\t\t\t\tif (r == -m) {\n\t\t\t\t\tr = 0;\n\t\t\t\t}\n\n\t\t\t\tif (t == m) {\n\t\t\t\t\tt = 0;\n\t\t\t\t}\n\n\t\t\t\tif (b == -m) {\n\t\t\t\t\tb = 0;\n\t\t\t\t}\n\n\t\t\t\tbounds.left = l - paddingLeft;\n\t\t\t\tbounds.top = t - paddingTop;\n\t\t\t\tbounds.right = r + paddingRight;\n\t\t\t\tbounds.bottom = b + paddingBottom;\n\n\t\t\t\tconst minWidth = this.get(\"minWidth\");\n\n\t\t\t\tif ($type.isNumber(minWidth) && minWidth > 0) {\n\t\t\t\t\tif (bounds.right - bounds.left < minWidth) {\n\t\t\t\t\t\tif (bounds.right >= minWidth) {\n\t\t\t\t\t\t\tbounds.left = bounds.right - minWidth;\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tbounds.right = bounds.left + minWidth;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tconst minHeight = this.get(\"minHeight\");\n\n\t\t\t\tif ($type.isNumber(minHeight) && minHeight > 0) {\n\t\t\t\t\tif (bounds.bottom - bounds.top < minHeight) {\n\t\t\t\t\t\tif (bounds.bottom >= minHeight) {\n\t\t\t\t\t\t\tbounds.top = bounds.bottom - minHeight;\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tbounds.bottom = bounds.top + minHeight;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis._contentWidth = bounds.right - bounds.left;\n\t\t\tthis._contentHeight = bounds.bottom - bounds.top;\n\n\t\t\tif ($type.isNumber(width)) {\n\t\t\t\tbounds.left = 0;\n\t\t\t\tbounds.right = width;\n\t\t\t}\n\n\t\t\tif ($type.isNumber(pWidth)) {\n\t\t\t\tbounds.left = 0;\n\t\t\t\tbounds.right = pWidth;\n\t\t\t}\n\n\t\t\tif ($type.isNumber(height)) {\n\t\t\t\tbounds.top = 0;\n\t\t\t\tbounds.bottom = height;\n\t\t\t}\n\n\t\t\tif ($type.isNumber(pHeight)) {\n\t\t\t\tbounds.top = 0;\n\t\t\t\tbounds.bottom = pHeight;\n\t\t\t}\n\n\t\t\tthis._localBounds = bounds;\n\t\t}\n\t\telse {\n\t\t\tlet bounds = this._localBounds;\n\t\t\tif (bounds) {\n\t\t\t\tthis._contentWidth = bounds.right - bounds.left;\n\t\t\t\tthis._contentHeight = bounds.bottom - bounds.top;\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic _updateBounds() {\n\t\tconst layout = this.get(\"layout\");\n\n\t\tif (layout) {\n\t\t\tlayout.updateContainer(this);\n\t\t}\n\n\t\tsuper._updateBounds();\n\n\t\tthis.updateBackground();\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic markDirty(): void {\n\t\tsuper.markDirty();\n\t\tthis._root._addDirtyParent(this);\n\t}\n\n\tpublic _prepareChildren() {\n\n\t\tthis._childrenPrep = true;\n\n\t\tconst innerWidth = this.innerWidth();\n\t\tconst innerHeight = this.innerHeight();\n\n\t\tif (innerWidth != this._prevWidth || innerHeight != this._prevHeight) {\n\t\t\tlet layout = this.get(\"layout\");\n\t\t\tlet horizontal = false;\n\t\t\tlet vertical = false;\n\t\t\tif (layout) {\n\t\t\t\tif (layout instanceof HorizontalLayout || layout instanceof GridLayout) {\n\t\t\t\t\thorizontal = true;\n\t\t\t\t}\n\t\t\t\tif (layout instanceof VerticalLayout) {\n\t\t\t\t\tvertical = true;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t$array.each(this._percentageSizeChildren, (child) => {\n\t\t\t\tif (!horizontal) {\n\t\t\t\t\tlet width = child.get(\"width\");\n\t\t\t\t\tif (width instanceof Percent) {\n\t\t\t\t\t\tchild.setPrivate(\"width\", width.value * innerWidth);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (!vertical) {\n\t\t\t\t\tlet height = child.get(\"height\");\n\t\t\t\t\tif (height instanceof Percent) {\n\t\t\t\t\t\tchild.setPrivate(\"height\", height.value * innerHeight);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})\n\n\t\t\t$array.each(this._percentagePositionChildren, (child) => {\n\t\t\t\tchild.markDirtyPosition();\n\t\t\t\tchild.markDirtyBounds();\n\t\t\t})\n\n\t\t\tthis._prevWidth = innerWidth;\n\t\t\tthis._prevHeight = innerHeight;\n\n\t\t\tthis._sizeDirty = true;\n\t\t\tthis.updateBackground();\n\t\t}\n\n\t\t//this._handleStates();\n\t}\n\n\tpublic _updateHTMLContent() {\n\t\tconst html = this.get(\"html\", \"\");\n\t\tif (html && html !== \"\") {\n\t\t\tthis._root._setHTMLContent(this, populateString(this, html));\n\t\t}\n\t\telse {\n\t\t\tthis._root._removeHTMLContent(this);\n\t\t}\n\t\tthis._root._positionHTMLElement(this);\n\t}\n\n\t/**\n\t * If scrolling is enabled on the Container (by adding `verticalScrollbar`)\n\t * the Container will scroll in such way so that target element becomes\n\t * visible if its currently outside of view.\n\t *\n\t * @param child Target child\n\t * @since 5.10.5\n\t */\n\tpublic scrollToChild(child: Sprite) {\n\t\tconst verticalScrollbar = this.get(\"verticalScrollbar\")!;\n\t\tif (verticalScrollbar) {\n\t\t\tlet y = child.y();\n\t\t\tlet h = this.innerHeight();\n\t\t\tlet ch = child.height();\n\t\t\tlet contentH = this._contentHeight;\n\t\t\tlet max = 1 - (h - ch / 2) / contentH;\n\n\t\t\tif (y + ch * .7 + this._childrenDisplay.y > h || y - ch * .3 + this._childrenDisplay.y < 0) {\n\t\t\t\tlet pos = Math.max(0, Math.min(max, (y - ch / 2) / contentH));\n\t\t\t\tverticalScrollbar.animate({ key: \"start\", to: pos, duration: verticalScrollbar.get(\"animationDuration\", 0), easing: verticalScrollbar.get(\"animationEasing\") });\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic _updateChildren() {\n\n\t\tthis._childrenUpdt = true;\n\n\t\tif (this.isDirty(\"html\")) {\n\t\t\tthis._updateHTMLContent();\n\t\t}\n\n\t\tif (this.isDirty(\"verticalScrollbar\")) {\n\t\t\tconst verticalScrollbar = this.get(\"verticalScrollbar\")!;\n\t\t\tif (verticalScrollbar) {\n\t\t\t\tverticalScrollbar._setParent(this);\n\n\t\t\t\tverticalScrollbar.startGrip.setPrivate(\"visible\", false);\n\t\t\t\tverticalScrollbar.endGrip.setPrivate(\"visible\", false);\n\n\t\t\t\tthis.set(\"maskContent\", true);\n\t\t\t\tthis.set(\"paddingRight\", verticalScrollbar.width() + verticalScrollbar.get(\"marginRight\", 0) + verticalScrollbar.get(\"marginLeft\", 0));\n\n\t\t\t\tlet background = this.get(\"background\");\n\n\t\t\t\tif (!background) {\n\t\t\t\t\tbackground = this.set(\"background\", Rectangle.new(this._root, {\n\t\t\t\t\t\tthemeTags: [\"background\"],\n\t\t\t\t\t\tfillOpacity: 0,\n\t\t\t\t\t\tfill: this._root.interfaceColors.get(\"alternativeBackground\")\n\t\t\t\t\t}));\n\t\t\t\t}\n\n\t\t\t\tthis._vsbd0 = this.events.on(\"wheel\", (event) => {\n\t\t\t\t\tconst wheelEvent = event.originalEvent;\n\n\t\t\t\t\t// Ignore wheel event if it is happening on a non-chart element, e.g. if\n\t\t\t\t\t// some page element is over the chart.\n\t\t\t\t\tif ($utils.isLocalEvent(wheelEvent, this)) {\n\t\t\t\t\t\twheelEvent.preventDefault();\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tlet shiftY = wheelEvent.deltaY / 5000;\n\t\t\t\t\tconst start = verticalScrollbar.get(\"start\", 0);\n\t\t\t\t\tconst end = verticalScrollbar.get(\"end\", 1);\n\n\t\t\t\t\tif (start + shiftY <= 0) {\n\t\t\t\t\t\tshiftY = -start;\n\t\t\t\t\t}\n\t\t\t\t\tif (end + shiftY >= 1) {\n\t\t\t\t\t\tshiftY = 1 - end;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (start + shiftY >= 0 && end + shiftY <= 1) {\n\t\t\t\t\t\tverticalScrollbar.set(\"start\", start + shiftY);\n\t\t\t\t\t\tverticalScrollbar.set(\"end\", end + shiftY);\n\t\t\t\t\t}\n\n\t\t\t\t})\n\n\t\t\t\tthis._disposers.push(this._vsbd0);\n\n\t\t\t\tthis._vsbd1 = verticalScrollbar.events.on(\"rangechanged\", () => {\n\t\t\t\t\tlet h = this._contentHeight;\n\t\t\t\t\tconst childrenDisplay = this._childrenDisplay;\n\t\t\t\t\tconst contentMask = this._contentMask;\n\n\t\t\t\t\tchildrenDisplay.y = -verticalScrollbar.get(\"start\", 0) * h;\n\t\t\t\t\tchildrenDisplay.markDirtyLayer();\n\n\t\t\t\t\tif (contentMask) {\n\t\t\t\t\t\tcontentMask._display.y = -childrenDisplay.y;\n\t\t\t\t\t\tchildrenDisplay.mask = contentMask._display;\n\t\t\t\t\t}\n\t\t\t\t})\n\n\t\t\t\tthis._disposers.push(this._vsbd1);\n\n\t\t\t\tthis._display.addChild(verticalScrollbar._display);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tconst previous = this._prevSettings.verticalScrollbar\n\t\t\t\tif (previous) {\n\t\t\t\t\tthis._display.removeChild(previous._display);\n\t\t\t\t\tif (this._vsbd0) {\n\t\t\t\t\t\tthis._vsbd0.dispose();\n\t\t\t\t\t}\n\t\t\t\t\tif (this._vsbd1) {\n\t\t\t\t\t\tthis._vsbd1.dispose();\n\t\t\t\t\t}\n\t\t\t\t\tconst childrenDisplay = this._childrenDisplay;\n\t\t\t\t\tchildrenDisplay.y = 0;\n\n\t\t\t\t\tthis.setPrivate(\"height\", undefined);\n\t\t\t\t\tthis.set(\"maskContent\", false);\n\t\t\t\t\tthis.set(\"paddingRight\", undefined);\n\t\t\t\t}\n\t\t\t}\n\n\n\t\t}\n\n\t\tif (this.isDirty(\"background\")) {\n\t\t\t// TODO maybe this should dispose ?\n\t\t\tconst previous = this._prevSettings[\"background\"];\n\t\t\tif (previous) {\n\t\t\t\tthis._display.removeChild(previous._display);\n\t\t\t}\n\n\t\t\tconst background = this.get(\"background\");\n\t\t\tif (background instanceof Sprite) {\n\t\t\t\tbackground.set(\"isMeasured\", false);\n\t\t\t\tbackground._setParent(this);\n\t\t\t\tthis._display.addChildAt(background._display, 0);\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"mask\")) {\n\n\t\t\tconst mask = this.get(\"mask\");\n\n\t\t\tconst previous = this._prevSettings[\"mask\"];\n\t\t\tif (previous) {\n\t\t\t\tthis._display.removeChild(previous._display);\n\t\t\t\tif (previous != mask) {\n\t\t\t\t\tprevious.dispose();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (mask) {\n\t\t\t\tconst parent = mask.parent;\n\t\t\t\tif (parent) {\n\t\t\t\t\tparent.children.removeValue(mask);\n\t\t\t\t}\n\n\t\t\t\tmask._setParent(this);\n\t\t\t\tthis._display.addChildAt(mask._display, 0);\n\t\t\t\tthis._childrenDisplay.mask = mask._display;\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic _processTemplateField(): void {\n\t\tsuper._processTemplateField();\n\t\tthis.children.each((child) => {\n\t\t\tchild._processTemplateField();\n\t\t})\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic walkChildren(f: (child: Sprite, index?: number) => void): void {\n\t\tthis.children.each((child, index) => {\n\t\t\tif (child instanceof Container) {\n\t\t\t\tchild.walkChildren(f);\n\t\t\t}\n\t\t\tf(child, index);\n\t\t});\n\t}\n\n\tpublic eachChildren(f: (child: Sprite) => void): void {\n\t\tconst background = this.get(\"background\");\n\t\tif (background) {\n\t\t\tf(background);\n\t\t}\n\n\t\tconst verticalScrollbar = this.get(\"verticalScrollbar\");\n\t\tif (verticalScrollbar) {\n\t\t\tf(verticalScrollbar);\n\t\t}\n\n\t\tconst mask = this.get(\"mask\");\n\t\tif (mask) {\n\t\t\tf(mask);\n\t\t}\n\n\t\tthis.children.values.forEach((child) => {\n\t\t\tf(child);\n\t\t});\n\t}\n\n\tpublic allChildren(): Array<Sprite> {\n\t\tconst output: Array<Sprite> = [];\n\n\t\tthis.eachChildren((x) => {\n\t\t\toutput.push(x);\n\t\t});\n\n\t\treturn output;\n\t}\n\n\tpublic _setDataItem(dataItem?: DataItem<IComponentDataItem>): void {\n\t\tconst updated = (dataItem !== this._dataItem);\n\t\tsuper._setDataItem(dataItem);\n\t\tconst html = this.get(\"html\", \"\");\n\t\tif (html && html !== \"\" && updated) {\n\t\t\tthis._root._setHTMLContent(this, populateString(this, html));\n\t\t}\n\t}\n\n\tpublic contentWidth(): number {\n\t\treturn this._contentWidth;\n\t}\n\n\tpublic contentHeight(): number {\n\t\treturn this._contentHeight;\n\t}\n}\n"]}
@@ -63,6 +63,8 @@ export interface IGraphicsSettings extends ISpriteSettings {
63
63
  strokeOpacity?: number;
64
64
  /**
65
65
  * Width of the stroke (border or line) in pixels.
66
+ *
67
+ * @default 1
66
68
  */
67
69
  strokeWidth?: number;
68
70
  /**
@@ -102,7 +104,7 @@ export interface IGraphicsSettings extends ISpriteSettings {
102
104
  */
103
105
  shadowColor?: Color | null;
104
106
  /**
105
- * Blurriness of the the shadow.
107
+ * Blurriness of the shadow.
106
108
  *
107
109
  * The bigger the number, the more blurry shadow will be.
108
110
  *
@@ -1 +1 @@
1
- {"version":3,"file":"Graphics.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Graphics.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAG7D,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClF,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAM1D,eAAO,MAAM,cAAc,UAAqU,CAAC;AAEjW,MAAM,WAAW,iBAAkB,SAAQ,eAAe;IAEzD;;;;OAIG;IACH,IAAI,CAAC,EAAE,KAAK,CAAC;IAEb;;;;OAIG;IACH,MAAM,CAAC,EAAE,KAAK,CAAC;IAEf;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;;;OAIG;IACH,YAAY,CAAC,EAAE,QAAQ,CAAC;IAExB;;;;OAIG;IACH,cAAc,CAAC,EAAE,QAAQ,CAAC;IAE1B;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IAEpC;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;;;;;OAMG;IACH,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC;IAExD;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;IAE3B;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC;IAEvC;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;CACtC;AAED,MAAM,WAAW,gBAAiB,SAAQ,cAAc;CAEvD;AAED,MAAM,WAAW,eAAgB,SAAQ,aAAa;CAErD;AAED;;;;;GAKG;AACH,qBAAa,QAAS,SAAQ,MAAM;IAEpB,SAAS,EAAE,iBAAiB,CAAC;IAC7B,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,OAAO,EAAE,eAAe,CAAC;IAEjC,QAAQ,EAAE,SAAS,CAAuC;IAEjE,SAAS,CAAC,MAAM,UAAS;IAEzB,OAAc,SAAS,EAAE,MAAM,CAAc;IAC7C,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAkD;IAElF,cAAc;IAiDd,QAAQ;IAwCR,aAAa;CAqJpB"}
1
+ {"version":3,"file":"Graphics.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Graphics.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAG7D,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClF,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAM1D,eAAO,MAAM,cAAc,UAAqU,CAAC;AAEjW,MAAM,WAAW,iBAAkB,SAAQ,eAAe;IAEzD;;;;OAIG;IACH,IAAI,CAAC,EAAE,KAAK,CAAC;IAEb;;;;OAIG;IACH,MAAM,CAAC,EAAE,KAAK,CAAC;IAEf;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;;;OAIG;IACH,YAAY,CAAC,EAAE,QAAQ,CAAC;IAExB;;;;OAIG;IACH,cAAc,CAAC,EAAE,QAAQ,CAAC;IAE1B;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IAEpC;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;;;;;OAMG;IACH,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC;IAExD;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;IAE3B;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC;IAEvC;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;CACtC;AAED,MAAM,WAAW,gBAAiB,SAAQ,cAAc;CAEvD;AAED,MAAM,WAAW,eAAgB,SAAQ,aAAa;CAErD;AAED;;;;;GAKG;AACH,qBAAa,QAAS,SAAQ,MAAM;IAEpB,SAAS,EAAE,iBAAiB,CAAC;IAC7B,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,OAAO,EAAE,eAAe,CAAC;IAEjC,QAAQ,EAAE,SAAS,CAAuC;IAEjE,SAAS,CAAC,MAAM,UAAS;IAEzB,OAAc,SAAS,EAAE,MAAM,CAAc;IAC7C,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAkD;IAElF,cAAc;IAiDd,QAAQ;IAwCR,aAAa;CAqJpB"}
@@ -1 +1 @@
1
- {"version":3,"file":"Graphics.js","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Graphics.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Color } from \"../util/Color\";\nimport type { Pattern } from \"../render/patterns/Pattern\";\nimport type { Gradient } from \"../render/gradients/Gradient\";\n\nimport { PicturePattern } from \"../render/patterns/PicturePattern\";\nimport { ISpriteSettings, ISpritePrivate, ISpriteEvents, Sprite } from \"./Sprite\";\nimport { IGraphics, BlendMode } from \"./backend/Renderer\";\n\nimport * as $type from \"../util/Type\";\nimport * as $array from \"../util/Array\";\n\n\nexport const visualSettings = [\"fill\", \"fillOpacity\", \"stroke\", \"strokeWidth\", \"strokeOpacity\", \"fillPattern\", \"strokePattern\", \"fillGradient\", \"strokeGradient\", \"strokeDasharray\", \"strokeDashoffset\", \"shadowBlur\", \"shadowColor\", \"shadowOpacity\", \"shadowOffsetX\", \"shadowOffsetY\", \"blur\", \"sepia\", \"invert\", \"brightness\", \"hue\", \"contrast\", \"saturate\"];\n\nexport interface IGraphicsSettings extends ISpriteSettings {\n\n\t/**\n\t * Fill color.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/} for more information\n\t */\n\tfill?: Color;\n\n\t/**\n\t * Stroke (border or line) color.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/} for more information\n\t */\n\tstroke?: Color;\n\n\t/**\n\t * Fill pattern.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/patterns/} for more information\n\t */\n\tfillPattern?: Pattern;\n\n\t/**\n\t * Stroke (border or line) pattern.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/patterns/} for more information\n\t */\n\tstrokePattern?: Pattern;\n\n\t/**\n\t * Fill gradient.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/gradients/} for more information\n\t */\n\tfillGradient?: Gradient;\n\n\t/**\n\t * Stroke (border or line) gradient.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/gradients/} for more information\n\t */\n\tstrokeGradient?: Gradient;\n\n\t/**\n\t * Stroke (border or line) dash settings.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/#Dashed_lines} for more information\n\t */\n\tstrokeDasharray?: number[] | number;\n\n\t/**\n\t * Stroke (border or line) dash offset.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/#Dashed_lines} for more information\n\t */\n\tstrokeDashoffset?: number;\n\n\t/**\n\t * Opacity of the fill. 0 - fully transparent; 1 - fully opaque.\n\t */\n\tfillOpacity?: number;\n\n\t/**\n\t * Opacity of the stroke (border or line). 0 - fully transparent; 1 - fully opaque.\n\t */\n\tstrokeOpacity?: number;\n\n\t/**\n\t * Width of the stroke (border or line) in pixels.\n\t */\n\tstrokeWidth?: number;\n\n\t/**\n\t * Indicates if stroke of a Graphics should stay the same when it's scale changes. Note, this doesn't take into account parent container scale changes.\n\t * @default false\n\t */\n\tnonScalingStroke?: boolean;\n\n\t/**\n\t * Drawing function.\n\t *\n\t * Must use renderer (`display` parameter) methods to draw.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/graphics/#Custom_draw_functions} for more info\n\t */\n\tdraw?: (display: IGraphics, graphics: Graphics) => void;\n\n\t/**\n\t * Rendering mode.\n\t *\n\t * @default BlendMode.NORMAL (\"source-over\")\n\t * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/globalCompositeOperation} for more information\n\t * @ignore\n\t */\n\tblendMode?: BlendMode;\n\n\t/**\n\t * Draw a shape using an SVG path.\n\t *\n\t * @see {@link https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths} for more information\n\t */\n\tsvgPath?: string;\n\n\t/**\n\t * Color of the element's shadow.\n\t *\n\t * For this to work at least one of the following needs to be set as well:\n\t * `shadowBlur`, `shadowOffsetX`, `shadowOffsetY`.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/shadows/} for more info\n\t */\n\tshadowColor?: Color | null;\n\n\t/**\n\t * Blurriness of the the shadow.\n\t *\n\t * The bigger the number, the more blurry shadow will be.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/shadows/} for more info\n\t */\n\tshadowBlur?: number;\n\n\t/**\n\t * Horizontal shadow offset in pixels.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/shadows/} for more info\n\t */\n\tshadowOffsetX?: number;\n\n\t/**\n\t * Vertical shadow offset in pixels.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/shadows/} for more info\n\t */\n\tshadowOffsetY?: number;\n\n\t/**\n\t * Opacity of the shadow (0-1).\n\t *\n\t * If not set, will use the same as `fillOpacity` of the element.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/shadows/} for more info\n\t */\n\tshadowOpacity?: number;\n\n\t/**\n\t * A method to be used on anchor points (joints) of the multi-point line.\n\t *\n\t * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/lineJoin} for more info\n\t * @default \"miter\"\n\t * @since 5.2.10\n\t */\n\tlineJoin?: \"miter\" | \"round\" | \"bevel\";\n\n\t/**\n\t * This setting determines the shape used to draw the end points of lines.\n\t *\n\t * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/lineCap} for more info\n\t * @default \"butt\"\n\t * @since 5.10.8\n\t */\n\tlineCap?: \"butt\" | \"round\" | \"square\";\n}\n\nexport interface IGraphicsPrivate extends ISpritePrivate {\n\n}\n\nexport interface IGraphicsEvents extends ISpriteEvents {\n\n}\n\n/**\n * Base class used for drawing shapes.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/graphics/} for more info\n * @important\n */\nexport class Graphics extends Sprite {\n\n\tdeclare public _settings: IGraphicsSettings;\n\tdeclare public _privateSettings: IGraphicsPrivate;\n\tdeclare public _events: IGraphicsEvents;\n\n\tpublic _display: IGraphics = this._root._renderer.makeGraphics();\n\n\tprotected _clear = false;\n\n\tpublic static className: string = \"Graphics\";\n\tpublic static classNames: Array<string> = Sprite.classNames.concat([Graphics.className]);\n\n\tpublic _beforeChanged() {\n\t\tsuper._beforeChanged();\n\n\t\tif (this.isDirty(\"draw\") || this.isDirty(\"svgPath\")) {\n\t\t\tthis.markDirtyBounds();\n\t\t}\n\n\t\tif (this.isDirty(\"fill\") || this.isDirty(\"stroke\") || this.isDirty(\"visible\") || this.isDirty(\"forceHidden\") || this.isDirty(\"scale\") || this.isDirty(\"fillGradient\") || this.isDirty(\"strokeGradient\") || this.isDirty(\"fillPattern\") || this.isDirty(\"strokePattern\") || this.isDirty(\"fillOpacity\") || this.isDirty(\"strokeOpacity\") || this.isDirty(\"strokeWidth\") || this.isDirty(\"draw\") || this.isDirty(\"blendMode\") || this.isDirty(\"strokeDasharray\") || this.isDirty(\"strokeDashoffset\") || this.isDirty(\"svgPath\") || this.isDirty(\"lineJoin\") || this.isDirty(\"lineCap\") || this.isDirty(\"shadowColor\") || this.isDirty(\"shadowBlur\") || this.isDirty(\"shadowOffsetX\") || this.isDirty(\"shadowOffsetY\")) {\n\t\t\tthis._clear = true;\n\t\t}\n\n\t\tthis._display.crisp = this.get(\"crisp\", false);\n\n\t\tif (this.isDirty(\"fillGradient\")) {\n\t\t\tconst gradient = this.get(\"fillGradient\");\n\t\t\tif (gradient) {\n\t\t\t\tthis._display.isMeasured = true;\n\t\t\t\tconst gradientTarget = gradient.get(\"target\");\n\t\t\t\tif (gradientTarget) {\n\t\t\t\t\tthis._disposers.push(gradientTarget.events.on(\"boundschanged\", () => {\n\t\t\t\t\t\tthis._markDirtyKey(\"fill\");\n\t\t\t\t\t}))\n\t\t\t\t\tthis._disposers.push(\n\t\t\t\t\t\tgradientTarget.events.on(\"positionchanged\", () => {\n\t\t\t\t\t\t\tthis._markDirtyKey(\"fill\");\n\t\t\t\t\t\t}))\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"strokeGradient\")) {\n\t\t\tconst gradient = this.get(\"strokeGradient\");\n\t\t\tif (gradient) {\n\t\t\t\tthis._display.isMeasured = true;\n\t\t\t\tconst gradientTarget = gradient.get(\"target\");\n\t\t\t\tif (gradientTarget) {\n\t\t\t\t\tthis._disposers.push(\n\t\t\t\t\t\tgradientTarget.events.on(\"boundschanged\", () => {\n\t\t\t\t\t\t\tthis._markDirtyKey(\"stroke\");\n\t\t\t\t\t\t}))\n\t\t\t\t\tthis._disposers.push(\n\t\t\t\t\t\tgradientTarget.events.on(\"positionchanged\", () => {\n\t\t\t\t\t\t\tthis._markDirtyKey(\"stroke\");\n\t\t\t\t\t\t}))\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic _changed() {\n\t\tsuper._changed();\n\n\t\tif (this._clear) {\n\t\t\tthis.markDirtyBounds();\n\t\t\tthis.markDirtyLayer();\n\t\t\tthis._display.clear();\n\n\t\t\tlet strokeDasharray = this.get(\"strokeDasharray\");\n\t\t\tif ($type.isNumber(strokeDasharray)) {\n\t\t\t\tif (strokeDasharray < 0.5) {\n\t\t\t\t\tstrokeDasharray = [0];\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tstrokeDasharray = [strokeDasharray]\n\t\t\t\t}\n\t\t\t}\n\t\t\tthis._display.setLineDash(strokeDasharray as number[]);\n\n\t\t\tconst strokeDashoffset = this.get(\"strokeDashoffset\");\n\t\t\tif (strokeDashoffset) {\n\t\t\t\tthis._display.setLineDashOffset(strokeDashoffset);\n\t\t\t}\n\n\t\t\tconst blendMode = this.get(\"blendMode\", BlendMode.NORMAL);\n\t\t\tthis._display.blendMode = blendMode;\n\n\t\t\tconst draw = this.get(\"draw\");\n\n\t\t\tif (draw && typeof draw === \"function\") {\n\t\t\t\tdraw(this._display, this);\n\t\t\t}\n\n\t\t\tconst svgPath = this.get(\"svgPath\");\n\t\t\tif (svgPath != null) {\n\t\t\t\tthis._display.svgPath(svgPath!);\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic _afterChanged() {\n\t\tsuper._afterChanged();\n\n\t\tif (this._clear) {\n\t\t\tconst fill = this.get(\"fill\");\n\t\t\tconst fillGradient = this.get(\"fillGradient\");\n\t\t\tconst fillPattern = this.get(\"fillPattern\");\n\t\t\tconst fillOpacity = this.get(\"fillOpacity\");\n\n\t\t\tconst stroke = this.get(\"stroke\");\n\t\t\tconst strokeGradient = this.get(\"strokeGradient\");\n\t\t\tconst strokePattern = this.get(\"strokePattern\");\n\n\t\t\tconst shadowColor = this.get(\"shadowColor\");\n\t\t\tconst shadowBlur = this.get(\"shadowBlur\");\n\t\t\tconst shadowOffsetX = this.get(\"shadowOffsetX\");\n\t\t\tconst shadowOffsetY = this.get(\"shadowOffsetY\");\n\t\t\tconst shadowOpacity = this.get(\"shadowOpacity\");\n\n\t\t\tif (shadowColor && (shadowBlur || shadowOffsetX || shadowOffsetY)) {\n\t\t\t\tthis._display.shadow(shadowColor, shadowBlur, shadowOffsetX, shadowOffsetY, shadowOpacity);\n\t\t\t}\n\n\t\t\tif (fill && !fillGradient) {\n\t\t\t\tthis._display.beginFill(fill, fillOpacity);\n\t\t\t\tthis._display.endFill();\n\t\t\t}\n\n\t\t\tif (fillGradient) {\n\t\t\t\tif (fill) {\n\t\t\t\t\tconst stops = fillGradient.get(\"stops\", []);\n\t\t\t\t\tif (stops.length) {\n\t\t\t\t\t\t$array.each(stops, (stop: any) => {\n\t\t\t\t\t\t\tif ((!stop.color || stop.colorInherited) && fill) {\n\t\t\t\t\t\t\t\tstop.color = fill;\n\t\t\t\t\t\t\t\tstop.colorInherited = true;\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tif (stop.opacity == null || stop.opacityInherited) {\n\t\t\t\t\t\t\t\tstop.opacity = fillOpacity;\n\t\t\t\t\t\t\t\tstop.opacityInherited = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconst gradient = fillGradient.getFill(this);\n\t\t\t\tif (gradient) {\n\t\t\t\t\tthis._display.beginFill(gradient, fillOpacity);\n\t\t\t\t\tthis._display.endFill();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (fillPattern) {\n\t\t\t\tconst pattern = fillPattern.pattern;\n\t\t\t\tif (pattern) {\n\t\t\t\t\tthis._display.beginFill(pattern, fillOpacity);\n\t\t\t\t\tthis._display.endFill();\n\n\t\t\t\t\tif (fillPattern instanceof PicturePattern) {\n\t\t\t\t\t\tfillPattern.events.once(\"loaded\", () => {\n\t\t\t\t\t\t\tthis._clear = true;\n\t\t\t\t\t\t\tthis.markDirty();\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (stroke || strokeGradient || strokePattern) {\n\t\t\t\tconst strokeOpacity = this.get(\"strokeOpacity\");\n\t\t\t\tlet strokeWidth = this.get(\"strokeWidth\", 1);\n\n\t\t\t\tif (this.get(\"nonScalingStroke\")) {\n\t\t\t\t\tstrokeWidth = strokeWidth / this.get(\"scale\", 1)\n\t\t\t\t}\n\n\t\t\t\tif (this.get(\"crisp\")) {\n\t\t\t\t\tstrokeWidth /= this._root._renderer.resolution;\n\t\t\t\t}\n\n\t\t\t\tconst lineJoin = this.get(\"lineJoin\");\n\t\t\t\tconst lineCap = this.get(\"lineCap\");\n\n\t\t\t\tif (stroke && !strokeGradient) {\n\t\t\t\t\tthis._display.lineStyle(strokeWidth, stroke, strokeOpacity, lineJoin, lineCap);\n\t\t\t\t\tthis._display.endStroke();\n\t\t\t\t}\n\n\n\t\t\t\tif (strokeGradient) {\n\t\t\t\t\tconst stops = strokeGradient.get(\"stops\", []);\n\t\t\t\t\tif (stops.length) {\n\t\t\t\t\t\t$array.each(stops, (stop: any) => {\n\t\t\t\t\t\t\tif ((!stop.color || stop.colorInherited) && stroke) {\n\t\t\t\t\t\t\t\tstop.color = stroke;\n\t\t\t\t\t\t\t\tstop.colorInherited = true;\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tif (stop.opacity == null || stop.opacityInherited) {\n\t\t\t\t\t\t\t\tstop.opacity = strokeOpacity;\n\t\t\t\t\t\t\t\tstop.opacityInherited = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\n\t\t\t\t\tconst gradient = strokeGradient.getFill(this);\n\t\t\t\t\tif (gradient) {\n\t\t\t\t\t\tthis._display.lineStyle(strokeWidth, gradient, strokeOpacity, lineJoin, lineCap);\n\t\t\t\t\t\tthis._display.endStroke();\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (strokePattern) {\n\t\t\t\t\t/*\n\t\t\t\t\tlet changed = false;\n\t\t\t\t\t\n\t\t\t\t\tif (stroke && (!strokePattern.get(\"color\") || strokePattern.get(\"colorInherited\"))) {\n\t\t\t\t\t\tstrokePattern.set(\"color\", stroke);\n\t\t\t\t\t\tstrokePattern.set(\"colorInherited\", true);\n\t\t\t\t\t\tchanged = true;\n\t\t\t\t\t}\n\t\t\t\t\tif (changed) {\n\t\t\t\t\t\t// @todo: is this OK?\n\t\t\t\t\t\tstrokePattern._changed();\n\t\t\t\t\t}\n\t\t\t\t\t*/\n\t\t\t\t\tlet pattern = strokePattern.pattern;\n\n\t\t\t\t\tif (pattern) {\n\t\t\t\t\t\tthis._display.lineStyle(strokeWidth, pattern, strokeOpacity, lineJoin, lineCap);\n\t\t\t\t\t\tthis._display.endStroke();\n\n\t\t\t\t\t\tif (strokePattern instanceof PicturePattern) {\n\t\t\t\t\t\t\tstrokePattern.events.once(\"loaded\", () => {\n\t\t\t\t\t\t\t\tthis._clear = true;\n\t\t\t\t\t\t\t\tthis.markDirty();\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (this.getPrivate(\"showingTooltip\")) {\n\t\t\t\tthis.showTooltip();\n\t\t\t}\n\t\t}\n\n\t\tthis._clear = false;\n\t}\n\n}\n"]}
1
+ {"version":3,"file":"Graphics.js","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Graphics.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Color } from \"../util/Color\";\nimport type { Pattern } from \"../render/patterns/Pattern\";\nimport type { Gradient } from \"../render/gradients/Gradient\";\n\nimport { PicturePattern } from \"../render/patterns/PicturePattern\";\nimport { ISpriteSettings, ISpritePrivate, ISpriteEvents, Sprite } from \"./Sprite\";\nimport { IGraphics, BlendMode } from \"./backend/Renderer\";\n\nimport * as $type from \"../util/Type\";\nimport * as $array from \"../util/Array\";\n\n\nexport const visualSettings = [\"fill\", \"fillOpacity\", \"stroke\", \"strokeWidth\", \"strokeOpacity\", \"fillPattern\", \"strokePattern\", \"fillGradient\", \"strokeGradient\", \"strokeDasharray\", \"strokeDashoffset\", \"shadowBlur\", \"shadowColor\", \"shadowOpacity\", \"shadowOffsetX\", \"shadowOffsetY\", \"blur\", \"sepia\", \"invert\", \"brightness\", \"hue\", \"contrast\", \"saturate\"];\n\nexport interface IGraphicsSettings extends ISpriteSettings {\n\n\t/**\n\t * Fill color.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/} for more information\n\t */\n\tfill?: Color;\n\n\t/**\n\t * Stroke (border or line) color.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/} for more information\n\t */\n\tstroke?: Color;\n\n\t/**\n\t * Fill pattern.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/patterns/} for more information\n\t */\n\tfillPattern?: Pattern;\n\n\t/**\n\t * Stroke (border or line) pattern.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/patterns/} for more information\n\t */\n\tstrokePattern?: Pattern;\n\n\t/**\n\t * Fill gradient.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/gradients/} for more information\n\t */\n\tfillGradient?: Gradient;\n\n\t/**\n\t * Stroke (border or line) gradient.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/gradients/} for more information\n\t */\n\tstrokeGradient?: Gradient;\n\n\t/**\n\t * Stroke (border or line) dash settings.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/#Dashed_lines} for more information\n\t */\n\tstrokeDasharray?: number[] | number;\n\n\t/**\n\t * Stroke (border or line) dash offset.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/#Dashed_lines} for more information\n\t */\n\tstrokeDashoffset?: number;\n\n\t/**\n\t * Opacity of the fill. 0 - fully transparent; 1 - fully opaque.\n\t */\n\tfillOpacity?: number;\n\n\t/**\n\t * Opacity of the stroke (border or line). 0 - fully transparent; 1 - fully opaque.\n\t */\n\tstrokeOpacity?: number;\n\n\t/**\n\t * Width of the stroke (border or line) in pixels.\n\t *\n\t * @default 1\n\t */\n\tstrokeWidth?: number;\n\n\t/**\n\t * Indicates if stroke of a Graphics should stay the same when it's scale changes. Note, this doesn't take into account parent container scale changes.\n\t * @default false\n\t */\n\tnonScalingStroke?: boolean;\n\n\t/**\n\t * Drawing function.\n\t *\n\t * Must use renderer (`display` parameter) methods to draw.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/graphics/#Custom_draw_functions} for more info\n\t */\n\tdraw?: (display: IGraphics, graphics: Graphics) => void;\n\n\t/**\n\t * Rendering mode.\n\t *\n\t * @default BlendMode.NORMAL (\"source-over\")\n\t * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/globalCompositeOperation} for more information\n\t * @ignore\n\t */\n\tblendMode?: BlendMode;\n\n\t/**\n\t * Draw a shape using an SVG path.\n\t *\n\t * @see {@link https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths} for more information\n\t */\n\tsvgPath?: string;\n\n\t/**\n\t * Color of the element's shadow.\n\t *\n\t * For this to work at least one of the following needs to be set as well:\n\t * `shadowBlur`, `shadowOffsetX`, `shadowOffsetY`.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/shadows/} for more info\n\t */\n\tshadowColor?: Color | null;\n\n\t/**\n\t * Blurriness of the shadow.\n\t *\n\t * The bigger the number, the more blurry shadow will be.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/shadows/} for more info\n\t */\n\tshadowBlur?: number;\n\n\t/**\n\t * Horizontal shadow offset in pixels.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/shadows/} for more info\n\t */\n\tshadowOffsetX?: number;\n\n\t/**\n\t * Vertical shadow offset in pixels.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/shadows/} for more info\n\t */\n\tshadowOffsetY?: number;\n\n\t/**\n\t * Opacity of the shadow (0-1).\n\t *\n\t * If not set, will use the same as `fillOpacity` of the element.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/shadows/} for more info\n\t */\n\tshadowOpacity?: number;\n\n\t/**\n\t * A method to be used on anchor points (joints) of the multi-point line.\n\t *\n\t * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/lineJoin} for more info\n\t * @default \"miter\"\n\t * @since 5.2.10\n\t */\n\tlineJoin?: \"miter\" | \"round\" | \"bevel\";\n\n\t/**\n\t * This setting determines the shape used to draw the end points of lines.\n\t *\n\t * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/lineCap} for more info\n\t * @default \"butt\"\n\t * @since 5.10.8\n\t */\n\tlineCap?: \"butt\" | \"round\" | \"square\";\n}\n\nexport interface IGraphicsPrivate extends ISpritePrivate {\n\n}\n\nexport interface IGraphicsEvents extends ISpriteEvents {\n\n}\n\n/**\n * Base class used for drawing shapes.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/graphics/} for more info\n * @important\n */\nexport class Graphics extends Sprite {\n\n\tdeclare public _settings: IGraphicsSettings;\n\tdeclare public _privateSettings: IGraphicsPrivate;\n\tdeclare public _events: IGraphicsEvents;\n\n\tpublic _display: IGraphics = this._root._renderer.makeGraphics();\n\n\tprotected _clear = false;\n\n\tpublic static className: string = \"Graphics\";\n\tpublic static classNames: Array<string> = Sprite.classNames.concat([Graphics.className]);\n\n\tpublic _beforeChanged() {\n\t\tsuper._beforeChanged();\n\n\t\tif (this.isDirty(\"draw\") || this.isDirty(\"svgPath\")) {\n\t\t\tthis.markDirtyBounds();\n\t\t}\n\n\t\tif (this.isDirty(\"fill\") || this.isDirty(\"stroke\") || this.isDirty(\"visible\") || this.isDirty(\"forceHidden\") || this.isDirty(\"scale\") || this.isDirty(\"fillGradient\") || this.isDirty(\"strokeGradient\") || this.isDirty(\"fillPattern\") || this.isDirty(\"strokePattern\") || this.isDirty(\"fillOpacity\") || this.isDirty(\"strokeOpacity\") || this.isDirty(\"strokeWidth\") || this.isDirty(\"draw\") || this.isDirty(\"blendMode\") || this.isDirty(\"strokeDasharray\") || this.isDirty(\"strokeDashoffset\") || this.isDirty(\"svgPath\") || this.isDirty(\"lineJoin\") || this.isDirty(\"lineCap\") || this.isDirty(\"shadowColor\") || this.isDirty(\"shadowBlur\") || this.isDirty(\"shadowOffsetX\") || this.isDirty(\"shadowOffsetY\")) {\n\t\t\tthis._clear = true;\n\t\t}\n\n\t\tthis._display.crisp = this.get(\"crisp\", false);\n\n\t\tif (this.isDirty(\"fillGradient\")) {\n\t\t\tconst gradient = this.get(\"fillGradient\");\n\t\t\tif (gradient) {\n\t\t\t\tthis._display.isMeasured = true;\n\t\t\t\tconst gradientTarget = gradient.get(\"target\");\n\t\t\t\tif (gradientTarget) {\n\t\t\t\t\tthis._disposers.push(gradientTarget.events.on(\"boundschanged\", () => {\n\t\t\t\t\t\tthis._markDirtyKey(\"fill\");\n\t\t\t\t\t}))\n\t\t\t\t\tthis._disposers.push(\n\t\t\t\t\t\tgradientTarget.events.on(\"positionchanged\", () => {\n\t\t\t\t\t\t\tthis._markDirtyKey(\"fill\");\n\t\t\t\t\t\t}))\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"strokeGradient\")) {\n\t\t\tconst gradient = this.get(\"strokeGradient\");\n\t\t\tif (gradient) {\n\t\t\t\tthis._display.isMeasured = true;\n\t\t\t\tconst gradientTarget = gradient.get(\"target\");\n\t\t\t\tif (gradientTarget) {\n\t\t\t\t\tthis._disposers.push(\n\t\t\t\t\t\tgradientTarget.events.on(\"boundschanged\", () => {\n\t\t\t\t\t\t\tthis._markDirtyKey(\"stroke\");\n\t\t\t\t\t\t}))\n\t\t\t\t\tthis._disposers.push(\n\t\t\t\t\t\tgradientTarget.events.on(\"positionchanged\", () => {\n\t\t\t\t\t\t\tthis._markDirtyKey(\"stroke\");\n\t\t\t\t\t\t}))\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic _changed() {\n\t\tsuper._changed();\n\n\t\tif (this._clear) {\n\t\t\tthis.markDirtyBounds();\n\t\t\tthis.markDirtyLayer();\n\t\t\tthis._display.clear();\n\n\t\t\tlet strokeDasharray = this.get(\"strokeDasharray\");\n\t\t\tif ($type.isNumber(strokeDasharray)) {\n\t\t\t\tif (strokeDasharray < 0.5) {\n\t\t\t\t\tstrokeDasharray = [0];\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tstrokeDasharray = [strokeDasharray]\n\t\t\t\t}\n\t\t\t}\n\t\t\tthis._display.setLineDash(strokeDasharray as number[]);\n\n\t\t\tconst strokeDashoffset = this.get(\"strokeDashoffset\");\n\t\t\tif (strokeDashoffset) {\n\t\t\t\tthis._display.setLineDashOffset(strokeDashoffset);\n\t\t\t}\n\n\t\t\tconst blendMode = this.get(\"blendMode\", BlendMode.NORMAL);\n\t\t\tthis._display.blendMode = blendMode;\n\n\t\t\tconst draw = this.get(\"draw\");\n\n\t\t\tif (draw && typeof draw === \"function\") {\n\t\t\t\tdraw(this._display, this);\n\t\t\t}\n\n\t\t\tconst svgPath = this.get(\"svgPath\");\n\t\t\tif (svgPath != null) {\n\t\t\t\tthis._display.svgPath(svgPath!);\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic _afterChanged() {\n\t\tsuper._afterChanged();\n\n\t\tif (this._clear) {\n\t\t\tconst fill = this.get(\"fill\");\n\t\t\tconst fillGradient = this.get(\"fillGradient\");\n\t\t\tconst fillPattern = this.get(\"fillPattern\");\n\t\t\tconst fillOpacity = this.get(\"fillOpacity\");\n\n\t\t\tconst stroke = this.get(\"stroke\");\n\t\t\tconst strokeGradient = this.get(\"strokeGradient\");\n\t\t\tconst strokePattern = this.get(\"strokePattern\");\n\n\t\t\tconst shadowColor = this.get(\"shadowColor\");\n\t\t\tconst shadowBlur = this.get(\"shadowBlur\");\n\t\t\tconst shadowOffsetX = this.get(\"shadowOffsetX\");\n\t\t\tconst shadowOffsetY = this.get(\"shadowOffsetY\");\n\t\t\tconst shadowOpacity = this.get(\"shadowOpacity\");\n\n\t\t\tif (shadowColor && (shadowBlur || shadowOffsetX || shadowOffsetY)) {\n\t\t\t\tthis._display.shadow(shadowColor, shadowBlur, shadowOffsetX, shadowOffsetY, shadowOpacity);\n\t\t\t}\n\n\t\t\tif (fill && !fillGradient) {\n\t\t\t\tthis._display.beginFill(fill, fillOpacity);\n\t\t\t\tthis._display.endFill();\n\t\t\t}\n\n\t\t\tif (fillGradient) {\n\t\t\t\tif (fill) {\n\t\t\t\t\tconst stops = fillGradient.get(\"stops\", []);\n\t\t\t\t\tif (stops.length) {\n\t\t\t\t\t\t$array.each(stops, (stop: any) => {\n\t\t\t\t\t\t\tif ((!stop.color || stop.colorInherited) && fill) {\n\t\t\t\t\t\t\t\tstop.color = fill;\n\t\t\t\t\t\t\t\tstop.colorInherited = true;\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tif (stop.opacity == null || stop.opacityInherited) {\n\t\t\t\t\t\t\t\tstop.opacity = fillOpacity;\n\t\t\t\t\t\t\t\tstop.opacityInherited = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconst gradient = fillGradient.getFill(this);\n\t\t\t\tif (gradient) {\n\t\t\t\t\tthis._display.beginFill(gradient, fillOpacity);\n\t\t\t\t\tthis._display.endFill();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (fillPattern) {\n\t\t\t\tconst pattern = fillPattern.pattern;\n\t\t\t\tif (pattern) {\n\t\t\t\t\tthis._display.beginFill(pattern, fillOpacity);\n\t\t\t\t\tthis._display.endFill();\n\n\t\t\t\t\tif (fillPattern instanceof PicturePattern) {\n\t\t\t\t\t\tfillPattern.events.once(\"loaded\", () => {\n\t\t\t\t\t\t\tthis._clear = true;\n\t\t\t\t\t\t\tthis.markDirty();\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (stroke || strokeGradient || strokePattern) {\n\t\t\t\tconst strokeOpacity = this.get(\"strokeOpacity\");\n\t\t\t\tlet strokeWidth = this.get(\"strokeWidth\", 1);\n\n\t\t\t\tif (this.get(\"nonScalingStroke\")) {\n\t\t\t\t\tstrokeWidth = strokeWidth / this.get(\"scale\", 1)\n\t\t\t\t}\n\n\t\t\t\tif (this.get(\"crisp\")) {\n\t\t\t\t\tstrokeWidth /= this._root._renderer.resolution;\n\t\t\t\t}\n\n\t\t\t\tconst lineJoin = this.get(\"lineJoin\");\n\t\t\t\tconst lineCap = this.get(\"lineCap\");\n\n\t\t\t\tif (stroke && !strokeGradient) {\n\t\t\t\t\tthis._display.lineStyle(strokeWidth, stroke, strokeOpacity, lineJoin, lineCap);\n\t\t\t\t\tthis._display.endStroke();\n\t\t\t\t}\n\n\n\t\t\t\tif (strokeGradient) {\n\t\t\t\t\tconst stops = strokeGradient.get(\"stops\", []);\n\t\t\t\t\tif (stops.length) {\n\t\t\t\t\t\t$array.each(stops, (stop: any) => {\n\t\t\t\t\t\t\tif ((!stop.color || stop.colorInherited) && stroke) {\n\t\t\t\t\t\t\t\tstop.color = stroke;\n\t\t\t\t\t\t\t\tstop.colorInherited = true;\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tif (stop.opacity == null || stop.opacityInherited) {\n\t\t\t\t\t\t\t\tstop.opacity = strokeOpacity;\n\t\t\t\t\t\t\t\tstop.opacityInherited = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\n\t\t\t\t\tconst gradient = strokeGradient.getFill(this);\n\t\t\t\t\tif (gradient) {\n\t\t\t\t\t\tthis._display.lineStyle(strokeWidth, gradient, strokeOpacity, lineJoin, lineCap);\n\t\t\t\t\t\tthis._display.endStroke();\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (strokePattern) {\n\t\t\t\t\t/*\n\t\t\t\t\tlet changed = false;\n\t\t\t\t\t\n\t\t\t\t\tif (stroke && (!strokePattern.get(\"color\") || strokePattern.get(\"colorInherited\"))) {\n\t\t\t\t\t\tstrokePattern.set(\"color\", stroke);\n\t\t\t\t\t\tstrokePattern.set(\"colorInherited\", true);\n\t\t\t\t\t\tchanged = true;\n\t\t\t\t\t}\n\t\t\t\t\tif (changed) {\n\t\t\t\t\t\t// @todo: is this OK?\n\t\t\t\t\t\tstrokePattern._changed();\n\t\t\t\t\t}\n\t\t\t\t\t*/\n\t\t\t\t\tlet pattern = strokePattern.pattern;\n\n\t\t\t\t\tif (pattern) {\n\t\t\t\t\t\tthis._display.lineStyle(strokeWidth, pattern, strokeOpacity, lineJoin, lineCap);\n\t\t\t\t\t\tthis._display.endStroke();\n\n\t\t\t\t\t\tif (strokePattern instanceof PicturePattern) {\n\t\t\t\t\t\t\tstrokePattern.events.once(\"loaded\", () => {\n\t\t\t\t\t\t\t\tthis._clear = true;\n\t\t\t\t\t\t\t\tthis.markDirty();\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (this.getPrivate(\"showingTooltip\")) {\n\t\t\t\tthis.showTooltip();\n\t\t\t}\n\t\t}\n\n\t\tthis._clear = false;\n\t}\n\n}\n"]}
@@ -20,7 +20,7 @@ export interface IHeatLegendSettings extends IContainerSettings {
20
20
  */
21
21
  startOpacity: number;
22
22
  /**
23
- * Ending (lowest value) opacity.
23
+ * Ending (highest value) opacity.
24
24
  *
25
25
  * @default 1
26
26
  * @since 5.14.0
@@ -1 +1 @@
1
- {"version":3,"file":"HeatLegend.js","sourceRoot":"","sources":["../../../../../src/.internal/core/render/HeatLegend.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAyC,MAAM,aAAa,CAAC;AAC/E,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAC;AAE5E,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAC;AAChD,OAAO,KAAK,KAAK,MAAM,sBAAsB,CAAC;AAsE9C;;;;GAIG;AACH,MAAM,OAAO,UAAW,SAAQ,SAAS;IAAzC;;QAEC;;;;WAIG;QACa,mBAAc,GAAc,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;QAE9F;;;;WAIG;QACa,oBAAe,GAAc,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;QAE/F;;;;WAIG;QACa,eAAU,GAAU,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;QAEvH;;;;WAIG;QACa,aAAQ,GAAU,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;QA0BnH;;;;WAIG;QACa,YAAO,GAAmC,IAAI,CAAC,WAAW,CAAC,IAAI,YAAY,CAC1F,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAChB,GAAG,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YACvC,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;SAC1H,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAC3B,CAAC,CAAC;IAwJJ,CAAC;IAnLU,SAAS;QAClB,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;QAClH,KAAK,CAAC,SAAS,EAAE,CAAC;QAClB,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE;YAC3C,SAAS,EAAE,CAAC,YAAY,CAAC;SACzB,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACI,UAAU;QAChB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACnC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QACrC,OAAO,MAAM,CAAC;IACf,CAAC;IAeD;;;;;;;;OAQG;IACI,SAAS,CAAC,KAAa,EAAE,IAAa,EAAE,KAAa;QAC3D,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAClC,IAAI,OAAO,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YAErC,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;YAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;YAEzC,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,GAAG,UAAU,CAAC,CAAC;YAEvD,IAAG,CAAC,IAAI,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE;gBAC/C,CAAC,GAAG,GAAG,CAAC;aACR;YAED,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAE,CAAC;YAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAE,CAAC;YAEvC,IAAI,CAAC,IAAI,EAAE;gBACV,IAAI,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;aAC/C;YAED,IAAI,CAAC,KAAK,EAAE;gBACX,KAAK,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;aACnD;YAED,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAChC,IAAI,CAAQ,CAAC;YAEb,IAAI,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,UAAU,EAAE;gBAC1C,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;aAC7E;iBACI;gBACJ,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;aACtE;YAED,IAAI,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YAC3C,IAAI,UAAU,EAAE;gBACf,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;aAC7B;YACD,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;YAC1B,OAAO,CAAC,IAAI,EAAE,CAAC;SACf;IACF,CAAC;IAEM,gBAAgB;QACtB,KAAK,CAAC,gBAAgB,EAAE,CAAC;QAEzB,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QAC3C,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC5C,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAElC,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE;YAChC,IAAI,WAAW,IAAI,UAAU,EAAE;gBAC9B,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjF,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;gBAChD,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC3E,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;gBACnE,cAAc,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;gBAC1D,IAAI,OAAO,EAAE;oBACZ,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,YAAY,CAAC,CAAC;iBAChD;aACD;iBACI;gBACJ,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;gBAClF,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;gBAC9C,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;gBAClE,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;gBACtE,cAAc,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;gBAC1D,IAAI,OAAO,EAAE;oBACZ,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,UAAU,CAAC,CAAC;iBAC9C;aACD;SACD;QAED,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;YAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;YAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAE,CAAC;YAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAE,CAAC;YAEvC,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;YACjD,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;YAE7C,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;YACtC,IAAI,SAAS,GAAG,CAAC,EAAE;gBAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC,EAAE,EAAE;oBACnC,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;oBAEjC,IAAI,WAAW,IAAI,UAAU,EAAE;wBAC9B,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;qBACnD;yBACI;wBACJ,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;qBAC3C;oBAED,IAAI,UAAU,IAAI,QAAQ,EAAE;wBAC3B,MAAM,CAAC,MAAM,CAAC;4BACb,IAAI,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,GAAG,SAAS,EAAE,UAAU,EAAE,QAAQ,CAAC;4BAC5D,WAAW,EAAE,OAAO,CAAC,CAAC,GAAG,SAAS,GAAG,GAAG,CAAC,CAAC,WAAW,CAAC,YAAY,EAAE,UAAU,CAAC;yBAC/E,CAAC,CAAC;qBACH;iBACD;aACD;iBACI,IAAI,SAAS,IAAI,CAAC,EAAE;gBACxB,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;gBACjC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC3C,MAAM,QAAQ,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE;oBAC/C,KAAK,EAAE,CAAC;4BACP,KAAK,EAAE,UAAU;4BACjB,OAAO,EAAE,YAAY;yBACrB,EAAE;4BACF,KAAK,EAAE,QAAQ;4BACf,OAAO,EAAE,UAAU;yBACnB,CAAC;iBACF,CAAC,CAAC;gBAEH,IAAI,WAAW,IAAI,UAAU,EAAE;oBAC9B,QAAQ,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;oBAC7B,IAAI,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;oBAClC,IAAI,KAAK,EAAE;wBACV,KAAK,CAAC,OAAO,EAAE,CAAC;qBAChB;iBACD;qBACI;oBACJ,QAAQ,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;iBAC5B;gBACD,IAAI,UAAU,IAAI,QAAQ,EAAE;oBAC3B,MAAM,CAAC,GAAG,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;iBACrC;aACD;SACD;QAED,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;YAC5D,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,kBAAkB,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAC3G;QAED,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;YACxD,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,kBAAkB,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;SACpG;IACF,CAAC;;AAzLa,oBAAS,GAAW,YAAY,CAAC;AACjC,qBAAU,GAAkB,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC","sourcesContent":["import type { IPoint } from \"../../core/util/IPoint\";\n\nimport { Container, IContainerSettings, IContainerPrivate } from \"./Container\";\nimport { Label } from \"../../core/render/Label\";\nimport { percent, p100 } from \"../../core/util/Percent\";\nimport { RoundedRectangle } from \"../../core/render/RoundedRectangle\";\nimport { Template } from \"../../core/util/Template\";\nimport { ListTemplate } from \"../../core/util/List\";\nimport { Color } from \"../../core/util/Color\";\nimport { Tooltip } from \"../../core/render/Tooltip\";\nimport { LinearGradient } from \"../../core/render/gradients/LinearGradient\";\n\nimport * as $utils from \"../../core/util/Utils\";\nimport * as $type from \"../../core/util/Type\";\n\nexport interface IHeatLegendSettings extends IContainerSettings {\n\n\t/**\n\t * Starting (lowest value) color.\n\t */\n\tstartColor: Color;\n\n\t/**\n\t * Ending (highest value) color.\n\t */\n\tendColor: Color;\n\n\t/**\n\t * Starting (lowest value) opacity.\n\t * \n\t * @default 1\n\t * @since 5.14.0\n\t */\n\tstartOpacity: number;\n\n\t/**\n\t * Ending (lowest value) opacity.\n\t * \n\t * @default 1\n\t * @since 5.14.0\n\t */\n\tendOpacity: number;\n\n\t/**\n\t * Start (lowest) value.\n\t */\n\tstartValue?: number;\n\n\t/**\n\t * End (highest) value.\n\t */\n\tendValue?: number;\n\n\t/**\n\t * Text for start label.\n\t */\n\tstartText?: string;\n\n\t/**\n\t * Text for end label.\n\t */\n\tendText?: string;\n\n\t/**\n\t * Number of steps\n\t *\n\t * @default 1\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/legend/heat-legend/#Gradient_or_steps} for more info\n\t */\n\tstepCount?: number;\n\n\t/**\n\t * Orientation of the heat legend.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/legend/heat-legend/#Orientation} for more info\n\t */\n\torientation: \"horizontal\" | \"vertical\";\n\n}\n\nexport interface IHeatLegendPrivate extends IContainerPrivate {\n}\n\n/**\n * Heat legend.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/legend/heat-legend/} for more info\n */\nexport class HeatLegend extends Container {\n\n\t/**\n\t * A [[Container]] that all labels are placed in.\n\t *\n\t * @default Container.new()\n\t */\n\tpublic readonly labelContainer: Container = this.children.push(Container.new(this._root, {}));\n\n\t/**\n\t * A [[Container]] that all markers are placed in.\n\t *\n\t * @default Container.new()\n\t */\n\tpublic readonly markerContainer: Container = this.children.push(Container.new(this._root, {}));\n\n\t/**\n\t * A start [[Label]].\n\t *\n\t * @default Label.new()\n\t */\n\tpublic readonly startLabel: Label = this.labelContainer.children.push(Label.new(this._root, { themeTags: [\"start\"] }));\n\n\t/**\n\t * An end [[Label]].\n\t *\n\t * @default Label.new()\n\t */\n\tpublic readonly endLabel: Label = this.labelContainer.children.push(Label.new(this._root, { themeTags: [\"end\"] }));\n\n\tpublic static className: string = \"HeatLegend\";\n\tpublic static classNames: Array<string> = Container.classNames.concat([HeatLegend.className]);\n\n\tdeclare public _settings: IHeatLegendSettings;\n\tdeclare public _privateSettings: IHeatLegendPrivate;\n\n\n\tprotected _afterNew() {\n\t\tthis._settings.themeTags = $utils.mergeTags(this._settings.themeTags, [\"heatlegend\", this._settings.orientation]);\n\t\tsuper._afterNew();\n\t\tthis.set(\"tooltip\", Tooltip.new(this._root, {\n\t\t\tthemeTags: [\"heatlegend\"]\n\t\t}));\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeMarker(): RoundedRectangle {\n\t\tconst marker = this.markers.make();\n\t\tmarker.states.create(\"disabled\", {});\n\t\treturn marker;\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 markers: ListTemplate<RoundedRectangle> = this.addDisposer(new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => RoundedRectangle._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.markers.template.get(\"themeTags\", []), [this.get(\"orientation\"), \"heatlegend\", \"marker\"])\n\t\t}, [this.markers.template])\n\t));\n\n\n\t/**\n\t * Moves and shows tooltip at specific value.\n\t *\n\t * Can also specify optional text to show in tooltip, as well as the color.\n\t *\n\t * @param value Value\n\t * @param text Text\n\t * @param color Color\n\t */\n\tpublic showValue(value: number, text?: string, color?: Color) {\n\t\tconst tooltip = this.getTooltip();\n\t\tif (tooltip && $type.isNumber(value)) {\n\n\t\t\tconst startValue = this.get(\"startValue\", 0);\n\t\t\tconst endValue = this.get(\"endValue\", 1);\n\n\t\t\tlet c = (value - startValue) / (endValue - startValue);\n\n\t\t\tif(c == Infinity || c == -Infinity || isNaN(c)) {\n\t\t\t\tc = 0.5;\n\t\t\t}\n\n\t\t\tconst startColor = this.get(\"startColor\")!;\n\t\t\tconst endColor = this.get(\"endColor\")!;\n\n\t\t\tif (!text) {\n\t\t\t\ttext = this.getNumberFormatter().format(value);\n\t\t\t}\n\n\t\t\tif (!color) {\n\t\t\t\tcolor = Color.interpolate(c, startColor, endColor);\n\t\t\t}\n\n\t\t\ttooltip.label.set(\"text\", text);\n\t\t\tlet p:IPoint;\n\n\t\t\tif (this.get(\"orientation\") == \"vertical\") {\n\t\t\t\tp = this.markerContainer.toGlobal({ x: 0, y: this.innerHeight() * (1 - c) });\n\t\t\t}\n\t\t\telse {\n\t\t\t\tp = this.markerContainer.toGlobal({ x: this.innerWidth() * c, y: 0 });\n\t\t\t}\n\n\t\t\tlet background = tooltip.get(\"background\");\n\t\t\tif (background) {\n\t\t\t\tbackground.set(\"fill\", color)\n\t\t\t}\n\t\t\ttooltip.set(\"pointTo\", p);\n\t\t\ttooltip.show();\n\t\t}\n\t}\n\n\tpublic _prepareChildren() {\n\t\tsuper._prepareChildren();\n\n\t\tconst labelContainer = this.labelContainer;\n\t\tconst orientation = this.get(\"orientation\");\n\t\tconst startLabel = this.startLabel;\n\t\tconst endLabel = this.endLabel;\n\t\tconst tooltip = this.getTooltip();\n\n\t\tif (this.isDirty(\"orientation\")) {\n\t\t\tif (orientation == \"vertical\") {\n\t\t\t\tthis.markerContainer.setAll({ layout: this._root.verticalLayout, height: p100 });\n\t\t\t\tthis.set(\"layout\", this._root.horizontalLayout);\n\t\t\t\tstartLabel.setAll({ y: p100, x: undefined, centerY: p100, centerX: p100 });\n\t\t\t\tendLabel.setAll({ y: 0, x: undefined, centerY: 0, centerX: p100 });\n\t\t\t\tlabelContainer.setAll({ height: p100, width: undefined });\n\t\t\t\tif (tooltip) {\n\t\t\t\t\ttooltip.set(\"pointerOrientation\", \"horizontal\");\n\t\t\t\t}\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis.markerContainer.setAll({ layout: this._root.horizontalLayout, width: p100 });\n\t\t\t\tthis.set(\"layout\", this._root.verticalLayout);\n\t\t\t\tstartLabel.setAll({ x: 0, y: undefined, centerX: 0, centerY: 0 });\n\t\t\t\tendLabel.setAll({ x: p100, y: undefined, centerX: p100, centerY: 0 });\n\t\t\t\tlabelContainer.setAll({ width: p100, height: undefined });\n\t\t\t\tif (tooltip) {\n\t\t\t\t\ttooltip.set(\"pointerOrientation\", \"vertical\");\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"stepCount\")) {\n\t\t\tconst stepCount = this.get(\"stepCount\", 1);\n\t\t\tconst startColor = this.get(\"startColor\")!;\n\t\t\tconst endColor = this.get(\"endColor\")!;\n\n\t\t\tconst startOpacity = this.get(\"startOpacity\", 1);\n\t\t\tconst endOpacity = this.get(\"endOpacity\", 1);\n\n\t\t\tthis.markerContainer.children.clear();\n\t\t\tif (stepCount > 1) {\n\t\t\t\tfor (let i = 0; i < stepCount; i++) {\n\t\t\t\t\tconst marker = this.makeMarker();\n\n\t\t\t\t\tif (orientation == \"vertical\") {\n\t\t\t\t\t\tthis.markerContainer.children.moveValue(marker, 0);\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthis.markerContainer.children.push(marker);\n\t\t\t\t\t}\n\n\t\t\t\t\tif (startColor && endColor) {\n\t\t\t\t\t\tmarker.setAll({\n\t\t\t\t\t\t\tfill: Color.interpolate(i / stepCount, startColor, endColor),\n\t\t\t\t\t\t\tfillOpacity: percent(i / stepCount * 100).interpolate(startOpacity, endOpacity)\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\telse if (stepCount == 1) {\n\t\t\t\tconst marker = this.makeMarker();\n\t\t\t\tthis.markerContainer.children.push(marker);\n\t\t\t\tconst gradient = LinearGradient.new(this._root, {\n\t\t\t\t\tstops: [{\n\t\t\t\t\t\tcolor: startColor,\n\t\t\t\t\t\topacity: startOpacity\n\t\t\t\t\t}, {\n\t\t\t\t\t\tcolor: endColor,\n\t\t\t\t\t\topacity: endOpacity\n\t\t\t\t\t}]\n\t\t\t\t});\n\n\t\t\t\tif (orientation == \"vertical\") {\n\t\t\t\t\tgradient.set(\"rotation\", 90);\n\t\t\t\t\tlet stops = gradient.get(\"stops\");\n\t\t\t\t\tif (stops) {\n\t\t\t\t\t\tstops.reverse();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tgradient.set(\"rotation\", 0);\n\t\t\t\t}\n\t\t\t\tif (startColor && endColor) {\n\t\t\t\t\tmarker.set(\"fillGradient\", gradient);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"startText\") || this.isDirty(\"startValue\")) {\n\t\t\tstartLabel.set(\"text\", this.get(\"startText\", this.getNumberFormatter().format(this.get(\"startValue\", 0))));\n\t\t}\n\n\t\tif (this.isDirty(\"endText\") || this.isDirty(\"endValue\")) {\n\t\t\tendLabel.set(\"text\", this.get(\"endText\", this.getNumberFormatter().format(this.get(\"endValue\", 1))))\n\t\t}\n\t}\n}\n"]}
1
+ {"version":3,"file":"HeatLegend.js","sourceRoot":"","sources":["../../../../../src/.internal/core/render/HeatLegend.ts"],"names":[],"mappings":"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","sourcesContent":["import type { IPoint } from \"../../core/util/IPoint\";\n\nimport { Container, IContainerSettings, IContainerPrivate } from \"./Container\";\nimport { Label } from \"../../core/render/Label\";\nimport { percent, p100 } from \"../../core/util/Percent\";\nimport { RoundedRectangle } from \"../../core/render/RoundedRectangle\";\nimport { Template } from \"../../core/util/Template\";\nimport { ListTemplate } from \"../../core/util/List\";\nimport { Color } from \"../../core/util/Color\";\nimport { Tooltip } from \"../../core/render/Tooltip\";\nimport { LinearGradient } from \"../../core/render/gradients/LinearGradient\";\n\nimport * as $utils from \"../../core/util/Utils\";\nimport * as $type from \"../../core/util/Type\";\n\nexport interface IHeatLegendSettings extends IContainerSettings {\n\n\t/**\n\t * Starting (lowest value) color.\n\t */\n\tstartColor: Color;\n\n\t/**\n\t * Ending (highest value) color.\n\t */\n\tendColor: Color;\n\n\t/**\n\t * Starting (lowest value) opacity.\n\t * \n\t * @default 1\n\t * @since 5.14.0\n\t */\n\tstartOpacity: number;\n\n\t/**\n\t * Ending (highest value) opacity.\n\t * \n\t * @default 1\n\t * @since 5.14.0\n\t */\n\tendOpacity: number;\n\n\t/**\n\t * Start (lowest) value.\n\t */\n\tstartValue?: number;\n\n\t/**\n\t * End (highest) value.\n\t */\n\tendValue?: number;\n\n\t/**\n\t * Text for start label.\n\t */\n\tstartText?: string;\n\n\t/**\n\t * Text for end label.\n\t */\n\tendText?: string;\n\n\t/**\n\t * Number of steps\n\t *\n\t * @default 1\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/legend/heat-legend/#Gradient_or_steps} for more info\n\t */\n\tstepCount?: number;\n\n\t/**\n\t * Orientation of the heat legend.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/legend/heat-legend/#Orientation} for more info\n\t */\n\torientation: \"horizontal\" | \"vertical\";\n\n}\n\nexport interface IHeatLegendPrivate extends IContainerPrivate {\n}\n\n/**\n * Heat legend.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/legend/heat-legend/} for more info\n */\nexport class HeatLegend extends Container {\n\n\t/**\n\t * A [[Container]] that all labels are placed in.\n\t *\n\t * @default Container.new()\n\t */\n\tpublic readonly labelContainer: Container = this.children.push(Container.new(this._root, {}));\n\n\t/**\n\t * A [[Container]] that all markers are placed in.\n\t *\n\t * @default Container.new()\n\t */\n\tpublic readonly markerContainer: Container = this.children.push(Container.new(this._root, {}));\n\n\t/**\n\t * A start [[Label]].\n\t *\n\t * @default Label.new()\n\t */\n\tpublic readonly startLabel: Label = this.labelContainer.children.push(Label.new(this._root, { themeTags: [\"start\"] }));\n\n\t/**\n\t * An end [[Label]].\n\t *\n\t * @default Label.new()\n\t */\n\tpublic readonly endLabel: Label = this.labelContainer.children.push(Label.new(this._root, { themeTags: [\"end\"] }));\n\n\tpublic static className: string = \"HeatLegend\";\n\tpublic static classNames: Array<string> = Container.classNames.concat([HeatLegend.className]);\n\n\tdeclare public _settings: IHeatLegendSettings;\n\tdeclare public _privateSettings: IHeatLegendPrivate;\n\n\n\tprotected _afterNew() {\n\t\tthis._settings.themeTags = $utils.mergeTags(this._settings.themeTags, [\"heatlegend\", this._settings.orientation]);\n\t\tsuper._afterNew();\n\t\tthis.set(\"tooltip\", Tooltip.new(this._root, {\n\t\t\tthemeTags: [\"heatlegend\"]\n\t\t}));\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeMarker(): RoundedRectangle {\n\t\tconst marker = this.markers.make();\n\t\tmarker.states.create(\"disabled\", {});\n\t\treturn marker;\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 markers: ListTemplate<RoundedRectangle> = this.addDisposer(new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => RoundedRectangle._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.markers.template.get(\"themeTags\", []), [this.get(\"orientation\"), \"heatlegend\", \"marker\"])\n\t\t}, [this.markers.template])\n\t));\n\n\n\t/**\n\t * Moves and shows tooltip at specific value.\n\t *\n\t * Can also specify optional text to show in tooltip, as well as the color.\n\t *\n\t * @param value Value\n\t * @param text Text\n\t * @param color Color\n\t */\n\tpublic showValue(value: number, text?: string, color?: Color) {\n\t\tconst tooltip = this.getTooltip();\n\t\tif (tooltip && $type.isNumber(value)) {\n\n\t\t\tconst startValue = this.get(\"startValue\", 0);\n\t\t\tconst endValue = this.get(\"endValue\", 1);\n\n\t\t\tlet c = (value - startValue) / (endValue - startValue);\n\n\t\t\tif(c == Infinity || c == -Infinity || isNaN(c)) {\n\t\t\t\tc = 0.5;\n\t\t\t}\n\n\t\t\tconst startColor = this.get(\"startColor\")!;\n\t\t\tconst endColor = this.get(\"endColor\")!;\n\n\t\t\tif (!text) {\n\t\t\t\ttext = this.getNumberFormatter().format(value);\n\t\t\t}\n\n\t\t\tif (!color) {\n\t\t\t\tcolor = Color.interpolate(c, startColor, endColor);\n\t\t\t}\n\n\t\t\ttooltip.label.set(\"text\", text);\n\t\t\tlet p:IPoint;\n\n\t\t\tif (this.get(\"orientation\") == \"vertical\") {\n\t\t\t\tp = this.markerContainer.toGlobal({ x: 0, y: this.innerHeight() * (1 - c) });\n\t\t\t}\n\t\t\telse {\n\t\t\t\tp = this.markerContainer.toGlobal({ x: this.innerWidth() * c, y: 0 });\n\t\t\t}\n\n\t\t\tlet background = tooltip.get(\"background\");\n\t\t\tif (background) {\n\t\t\t\tbackground.set(\"fill\", color)\n\t\t\t}\n\t\t\ttooltip.set(\"pointTo\", p);\n\t\t\ttooltip.show();\n\t\t}\n\t}\n\n\tpublic _prepareChildren() {\n\t\tsuper._prepareChildren();\n\n\t\tconst labelContainer = this.labelContainer;\n\t\tconst orientation = this.get(\"orientation\");\n\t\tconst startLabel = this.startLabel;\n\t\tconst endLabel = this.endLabel;\n\t\tconst tooltip = this.getTooltip();\n\n\t\tif (this.isDirty(\"orientation\")) {\n\t\t\tif (orientation == \"vertical\") {\n\t\t\t\tthis.markerContainer.setAll({ layout: this._root.verticalLayout, height: p100 });\n\t\t\t\tthis.set(\"layout\", this._root.horizontalLayout);\n\t\t\t\tstartLabel.setAll({ y: p100, x: undefined, centerY: p100, centerX: p100 });\n\t\t\t\tendLabel.setAll({ y: 0, x: undefined, centerY: 0, centerX: p100 });\n\t\t\t\tlabelContainer.setAll({ height: p100, width: undefined });\n\t\t\t\tif (tooltip) {\n\t\t\t\t\ttooltip.set(\"pointerOrientation\", \"horizontal\");\n\t\t\t\t}\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis.markerContainer.setAll({ layout: this._root.horizontalLayout, width: p100 });\n\t\t\t\tthis.set(\"layout\", this._root.verticalLayout);\n\t\t\t\tstartLabel.setAll({ x: 0, y: undefined, centerX: 0, centerY: 0 });\n\t\t\t\tendLabel.setAll({ x: p100, y: undefined, centerX: p100, centerY: 0 });\n\t\t\t\tlabelContainer.setAll({ width: p100, height: undefined });\n\t\t\t\tif (tooltip) {\n\t\t\t\t\ttooltip.set(\"pointerOrientation\", \"vertical\");\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"stepCount\")) {\n\t\t\tconst stepCount = this.get(\"stepCount\", 1);\n\t\t\tconst startColor = this.get(\"startColor\")!;\n\t\t\tconst endColor = this.get(\"endColor\")!;\n\n\t\t\tconst startOpacity = this.get(\"startOpacity\", 1);\n\t\t\tconst endOpacity = this.get(\"endOpacity\", 1);\n\n\t\t\tthis.markerContainer.children.clear();\n\t\t\tif (stepCount > 1) {\n\t\t\t\tfor (let i = 0; i < stepCount; i++) {\n\t\t\t\t\tconst marker = this.makeMarker();\n\n\t\t\t\t\tif (orientation == \"vertical\") {\n\t\t\t\t\t\tthis.markerContainer.children.moveValue(marker, 0);\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthis.markerContainer.children.push(marker);\n\t\t\t\t\t}\n\n\t\t\t\t\tif (startColor && endColor) {\n\t\t\t\t\t\tmarker.setAll({\n\t\t\t\t\t\t\tfill: Color.interpolate(i / stepCount, startColor, endColor),\n\t\t\t\t\t\t\tfillOpacity: percent(i / stepCount * 100).interpolate(startOpacity, endOpacity)\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\telse if (stepCount == 1) {\n\t\t\t\tconst marker = this.makeMarker();\n\t\t\t\tthis.markerContainer.children.push(marker);\n\t\t\t\tconst gradient = LinearGradient.new(this._root, {\n\t\t\t\t\tstops: [{\n\t\t\t\t\t\tcolor: startColor,\n\t\t\t\t\t\topacity: startOpacity\n\t\t\t\t\t}, {\n\t\t\t\t\t\tcolor: endColor,\n\t\t\t\t\t\topacity: endOpacity\n\t\t\t\t\t}]\n\t\t\t\t});\n\n\t\t\t\tif (orientation == \"vertical\") {\n\t\t\t\t\tgradient.set(\"rotation\", 90);\n\t\t\t\t\tlet stops = gradient.get(\"stops\");\n\t\t\t\t\tif (stops) {\n\t\t\t\t\t\tstops.reverse();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tgradient.set(\"rotation\", 0);\n\t\t\t\t}\n\t\t\t\tif (startColor && endColor) {\n\t\t\t\t\tmarker.set(\"fillGradient\", gradient);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"startText\") || this.isDirty(\"startValue\")) {\n\t\t\tstartLabel.set(\"text\", this.get(\"startText\", this.getNumberFormatter().format(this.get(\"startValue\", 0))));\n\t\t}\n\n\t\tif (this.isDirty(\"endText\") || this.isDirty(\"endValue\")) {\n\t\t\tendLabel.set(\"text\", this.get(\"endText\", this.getNumberFormatter().format(this.get(\"endValue\", 1))))\n\t\t}\n\t}\n}\n"]}