@amcharts/amcharts5 5.13.6 → 5.14.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (675) hide show
  1. package/.internal/charts/funnel/FunnelSeries.d.ts +1 -1
  2. package/.internal/charts/funnel/FunnelSeries.d.ts.map +1 -1
  3. package/.internal/charts/funnel/FunnelSeries.js.map +1 -1
  4. package/.internal/charts/funnel/FunnelSlice.d.ts +1 -1
  5. package/.internal/charts/funnel/FunnelSlice.d.ts.map +1 -1
  6. package/.internal/charts/funnel/FunnelSlice.js.map +1 -1
  7. package/.internal/charts/funnel/PyramidSeries.d.ts.map +1 -1
  8. package/.internal/charts/funnel/PyramidSeries.js.map +1 -1
  9. package/.internal/charts/funnel/SlicedChart.d.ts +1 -1
  10. package/.internal/charts/funnel/SlicedChart.d.ts.map +1 -1
  11. package/.internal/charts/funnel/SlicedChart.js.map +1 -1
  12. package/.internal/charts/gantt/Gantt.d.ts +222 -0
  13. package/.internal/charts/gantt/Gantt.d.ts.map +1 -0
  14. package/.internal/charts/gantt/Gantt.js +795 -0
  15. package/.internal/charts/gantt/Gantt.js.map +1 -0
  16. package/.internal/charts/gantt/GanttCategoryAxis.d.ts +287 -0
  17. package/.internal/charts/gantt/GanttCategoryAxis.d.ts.map +1 -0
  18. package/.internal/charts/gantt/GanttCategoryAxis.js +1238 -0
  19. package/.internal/charts/gantt/GanttCategoryAxis.js.map +1 -0
  20. package/.internal/charts/gantt/GanttCategoryAxisRenderer.d.ts +98 -0
  21. package/.internal/charts/gantt/GanttCategoryAxisRenderer.d.ts.map +1 -0
  22. package/.internal/charts/gantt/GanttCategoryAxisRenderer.js +270 -0
  23. package/.internal/charts/gantt/GanttCategoryAxisRenderer.js.map +1 -0
  24. package/.internal/charts/gantt/GanttDateAxis.d.ts +36 -0
  25. package/.internal/charts/gantt/GanttDateAxis.d.ts.map +1 -0
  26. package/.internal/charts/gantt/GanttDateAxis.js +35 -0
  27. package/.internal/charts/gantt/GanttDateAxis.js.map +1 -0
  28. package/.internal/charts/gantt/GanttDateAxisRenderer.d.ts +19 -0
  29. package/.internal/charts/gantt/GanttDateAxisRenderer.d.ts.map +1 -0
  30. package/.internal/charts/gantt/GanttDateAxisRenderer.js +23 -0
  31. package/.internal/charts/gantt/GanttDateAxisRenderer.js.map +1 -0
  32. package/.internal/charts/gantt/GanttDefaultTheme.d.ts +8 -0
  33. package/.internal/charts/gantt/GanttDefaultTheme.d.ts.map +1 -0
  34. package/.internal/charts/gantt/GanttDefaultTheme.js +769 -0
  35. package/.internal/charts/gantt/GanttDefaultTheme.js.map +1 -0
  36. package/.internal/charts/gantt/GanttSeries.d.ts +348 -0
  37. package/.internal/charts/gantt/GanttSeries.d.ts.map +1 -0
  38. package/.internal/charts/gantt/GanttSeries.js +1524 -0
  39. package/.internal/charts/gantt/GanttSeries.js.map +1 -0
  40. package/.internal/charts/hierarchy/Hierarchy.js.map +1 -1
  41. package/.internal/charts/hierarchy/HierarchyDefaultTheme.js.map +1 -1
  42. package/.internal/charts/hierarchy/HierarchyLink.d.ts +1 -1
  43. package/.internal/charts/hierarchy/HierarchyLink.d.ts.map +1 -1
  44. package/.internal/charts/hierarchy/HierarchyLink.js.map +1 -1
  45. package/.internal/charts/hierarchy/LinkedHierarchy.d.ts +2 -2
  46. package/.internal/charts/hierarchy/LinkedHierarchy.d.ts.map +1 -1
  47. package/.internal/charts/hierarchy/LinkedHierarchy.js +1 -1
  48. package/.internal/charts/hierarchy/LinkedHierarchy.js.map +1 -1
  49. package/.internal/charts/hierarchy/Pack.d.ts.map +1 -1
  50. package/.internal/charts/hierarchy/Pack.js.map +1 -1
  51. package/.internal/charts/hierarchy/Partition.d.ts.map +1 -1
  52. package/.internal/charts/hierarchy/Partition.js.map +1 -1
  53. package/.internal/charts/hierarchy/Treemap.js.map +1 -1
  54. package/.internal/charts/hierarchy/VoronoiTreemap.d.ts.map +1 -1
  55. package/.internal/charts/hierarchy/VoronoiTreemap.js +3 -3
  56. package/.internal/charts/hierarchy/VoronoiTreemap.js.map +1 -1
  57. package/.internal/charts/map/MapChart.d.ts.map +1 -1
  58. package/.internal/charts/map/MapChart.js +1 -3
  59. package/.internal/charts/map/MapChart.js.map +1 -1
  60. package/.internal/charts/stock/drawing/DrawingSeries.d.ts +1 -0
  61. package/.internal/charts/stock/drawing/DrawingSeries.d.ts.map +1 -1
  62. package/.internal/charts/stock/drawing/DrawingSeries.js +7 -0
  63. package/.internal/charts/stock/drawing/DrawingSeries.js.map +1 -1
  64. package/.internal/charts/stock/drawing/HorizontalLineSeries.d.ts.map +1 -1
  65. package/.internal/charts/stock/drawing/HorizontalLineSeries.js +2 -1
  66. package/.internal/charts/stock/drawing/HorizontalLineSeries.js.map +1 -1
  67. package/.internal/charts/stock/drawing/HorizontalRaySeries.d.ts.map +1 -1
  68. package/.internal/charts/stock/drawing/HorizontalRaySeries.js +2 -1
  69. package/.internal/charts/stock/drawing/HorizontalRaySeries.js.map +1 -1
  70. package/.internal/charts/stock/drawing/ParallelChannelSeries.d.ts.map +1 -1
  71. package/.internal/charts/stock/drawing/ParallelChannelSeries.js +2 -1
  72. package/.internal/charts/stock/drawing/ParallelChannelSeries.js.map +1 -1
  73. package/.internal/charts/stock/drawing/PolylineSeries.d.ts.map +1 -1
  74. package/.internal/charts/stock/drawing/PolylineSeries.js +3 -1
  75. package/.internal/charts/stock/drawing/PolylineSeries.js.map +1 -1
  76. package/.internal/charts/stock/drawing/SimpleLineSeries.d.ts.map +1 -1
  77. package/.internal/charts/stock/drawing/SimpleLineSeries.js +2 -1
  78. package/.internal/charts/stock/drawing/SimpleLineSeries.js.map +1 -1
  79. package/.internal/charts/stock/drawing/VerticalLineSeries.d.ts.map +1 -1
  80. package/.internal/charts/stock/drawing/VerticalLineSeries.js +2 -1
  81. package/.internal/charts/stock/drawing/VerticalLineSeries.js.map +1 -1
  82. package/.internal/charts/timeline/AxisRendererCurveX.js.map +1 -1
  83. package/.internal/charts/timeline/AxisRendererCurveY.js.map +1 -1
  84. package/.internal/charts/timeline/CurveChart.js.map +1 -1
  85. package/.internal/charts/timeline/CurveColumnSeries.js.map +1 -1
  86. package/.internal/charts/timeline/CurveCursor.js +1 -1
  87. package/.internal/charts/timeline/CurveCursor.js.map +1 -1
  88. package/.internal/charts/timeline/SerpentineChart.d.ts +1 -1
  89. package/.internal/charts/timeline/SerpentineChart.d.ts.map +1 -1
  90. package/.internal/charts/timeline/SerpentineChart.js.map +1 -1
  91. package/.internal/charts/timeline/SpiralChart.d.ts +1 -1
  92. package/.internal/charts/timeline/SpiralChart.d.ts.map +1 -1
  93. package/.internal/charts/timeline/SpiralChart.js.map +1 -1
  94. package/.internal/charts/wordcloud/WordCloud.js.map +1 -1
  95. package/.internal/charts/xy/XYChart.d.ts.map +1 -1
  96. package/.internal/charts/xy/XYChart.js +16 -8
  97. package/.internal/charts/xy/XYChart.js.map +1 -1
  98. package/.internal/charts/xy/XYChartDefaultTheme.d.ts.map +1 -1
  99. package/.internal/charts/xy/XYChartDefaultTheme.js +6 -3
  100. package/.internal/charts/xy/XYChartDefaultTheme.js.map +1 -1
  101. package/.internal/charts/xy/axes/Axis.d.ts +17 -1
  102. package/.internal/charts/xy/axes/Axis.d.ts.map +1 -1
  103. package/.internal/charts/xy/axes/Axis.js +46 -26
  104. package/.internal/charts/xy/axes/Axis.js.map +1 -1
  105. package/.internal/charts/xy/axes/AxisBullet.d.ts +1 -1
  106. package/.internal/charts/xy/axes/AxisBullet.d.ts.map +1 -1
  107. package/.internal/charts/xy/axes/AxisBullet.js.map +1 -1
  108. package/.internal/charts/xy/axes/AxisLabel.d.ts +1 -1
  109. package/.internal/charts/xy/axes/AxisLabel.d.ts.map +1 -1
  110. package/.internal/charts/xy/axes/AxisLabel.js.map +1 -1
  111. package/.internal/charts/xy/axes/AxisLabelRadial.d.ts +1 -1
  112. package/.internal/charts/xy/axes/AxisLabelRadial.d.ts.map +1 -1
  113. package/.internal/charts/xy/axes/AxisLabelRadial.js.map +1 -1
  114. package/.internal/charts/xy/axes/AxisRenderer.d.ts +5 -5
  115. package/.internal/charts/xy/axes/AxisRenderer.d.ts.map +1 -1
  116. package/.internal/charts/xy/axes/AxisRenderer.js.map +1 -1
  117. package/.internal/charts/xy/axes/AxisRendererX.d.ts +1 -1
  118. package/.internal/charts/xy/axes/AxisRendererX.d.ts.map +1 -1
  119. package/.internal/charts/xy/axes/AxisRendererX.js +9 -5
  120. package/.internal/charts/xy/axes/AxisRendererX.js.map +1 -1
  121. package/.internal/charts/xy/axes/AxisRendererY.d.ts +1 -1
  122. package/.internal/charts/xy/axes/AxisRendererY.d.ts.map +1 -1
  123. package/.internal/charts/xy/axes/AxisRendererY.js +9 -5
  124. package/.internal/charts/xy/axes/AxisRendererY.js.map +1 -1
  125. package/.internal/charts/xy/axes/CategoryAxis.d.ts +34 -3
  126. package/.internal/charts/xy/axes/CategoryAxis.d.ts.map +1 -1
  127. package/.internal/charts/xy/axes/CategoryAxis.js +243 -40
  128. package/.internal/charts/xy/axes/CategoryAxis.js.map +1 -1
  129. package/.internal/charts/xy/axes/CategoryDateAxis.d.ts +1 -1
  130. package/.internal/charts/xy/axes/CategoryDateAxis.d.ts.map +1 -1
  131. package/.internal/charts/xy/axes/CategoryDateAxis.js.map +1 -1
  132. package/.internal/charts/xy/axes/DateAxis.d.ts +16 -2
  133. package/.internal/charts/xy/axes/DateAxis.d.ts.map +1 -1
  134. package/.internal/charts/xy/axes/DateAxis.js +20 -5
  135. package/.internal/charts/xy/axes/DateAxis.js.map +1 -1
  136. package/.internal/charts/xy/axes/EditableAxisLabel.d.ts +21 -0
  137. package/.internal/charts/xy/axes/EditableAxisLabel.d.ts.map +1 -0
  138. package/.internal/charts/xy/axes/EditableAxisLabel.js +31 -0
  139. package/.internal/charts/xy/axes/EditableAxisLabel.js.map +1 -0
  140. package/.internal/charts/xy/axes/GaplessDateAxis.d.ts +2 -2
  141. package/.internal/charts/xy/axes/GaplessDateAxis.d.ts.map +1 -1
  142. package/.internal/charts/xy/axes/GaplessDateAxis.js.map +1 -1
  143. package/.internal/charts/xy/axes/ValueAxis.d.ts +2 -2
  144. package/.internal/charts/xy/axes/ValueAxis.d.ts.map +1 -1
  145. package/.internal/charts/xy/axes/ValueAxis.js +4 -3
  146. package/.internal/charts/xy/axes/ValueAxis.js.map +1 -1
  147. package/.internal/charts/xy/series/BaseColumnSeries.d.ts +5 -1
  148. package/.internal/charts/xy/series/BaseColumnSeries.d.ts.map +1 -1
  149. package/.internal/charts/xy/series/BaseColumnSeries.js +60 -32
  150. package/.internal/charts/xy/series/BaseColumnSeries.js.map +1 -1
  151. package/.internal/charts/xy/series/CandlestickSeries.d.ts +2 -1
  152. package/.internal/charts/xy/series/CandlestickSeries.d.ts.map +1 -1
  153. package/.internal/charts/xy/series/CandlestickSeries.js +99 -44
  154. package/.internal/charts/xy/series/CandlestickSeries.js.map +1 -1
  155. package/.internal/charts/xy/series/ColumnSeries.d.ts +39 -0
  156. package/.internal/charts/xy/series/ColumnSeries.d.ts.map +1 -1
  157. package/.internal/charts/xy/series/ColumnSeries.js +77 -1
  158. package/.internal/charts/xy/series/ColumnSeries.js.map +1 -1
  159. package/.internal/charts/xy/series/LineSeries.d.ts.map +1 -1
  160. package/.internal/charts/xy/series/LineSeries.js.map +1 -1
  161. package/.internal/charts/xy/series/OHLC.d.ts +6 -0
  162. package/.internal/charts/xy/series/OHLC.d.ts.map +1 -1
  163. package/.internal/charts/xy/series/OHLC.js +6 -0
  164. package/.internal/charts/xy/series/OHLC.js.map +1 -1
  165. package/.internal/charts/xy/series/SmoothedXLineSeries.d.ts.map +1 -1
  166. package/.internal/charts/xy/series/SmoothedXLineSeries.js.map +1 -1
  167. package/.internal/charts/xy/series/SmoothedXYLineSeries.d.ts.map +1 -1
  168. package/.internal/charts/xy/series/SmoothedXYLineSeries.js.map +1 -1
  169. package/.internal/charts/xy/series/SmoothedYLineSeries.d.ts.map +1 -1
  170. package/.internal/charts/xy/series/SmoothedYLineSeries.js.map +1 -1
  171. package/.internal/charts/xy/series/StepLineSeries.d.ts +8 -2
  172. package/.internal/charts/xy/series/StepLineSeries.d.ts.map +1 -1
  173. package/.internal/charts/xy/series/StepLineSeries.js +6 -0
  174. package/.internal/charts/xy/series/StepLineSeries.js.map +1 -1
  175. package/.internal/charts/xy/series/XYSeries.d.ts +1 -1
  176. package/.internal/charts/xy/series/XYSeries.d.ts.map +1 -1
  177. package/.internal/charts/xy/series/XYSeries.js +4 -1
  178. package/.internal/charts/xy/series/XYSeries.js.map +1 -1
  179. package/.internal/core/Classes.d.ts +28 -0
  180. package/.internal/core/Classes.d.ts.map +1 -1
  181. package/.internal/core/Classes.js.map +1 -1
  182. package/.internal/core/Registry.js +1 -1
  183. package/.internal/core/Registry.js.map +1 -1
  184. package/.internal/core/Root.d.ts +8 -0
  185. package/.internal/core/Root.d.ts.map +1 -1
  186. package/.internal/core/Root.js +26 -19
  187. package/.internal/core/Root.js.map +1 -1
  188. package/.internal/core/render/Button.d.ts +4 -1
  189. package/.internal/core/render/Button.d.ts.map +1 -1
  190. package/.internal/core/render/Button.js.map +1 -1
  191. package/.internal/core/render/Component.d.ts +8 -0
  192. package/.internal/core/render/Component.d.ts.map +1 -1
  193. package/.internal/core/render/Component.js +17 -0
  194. package/.internal/core/render/Component.js.map +1 -1
  195. package/.internal/core/render/ConfirmButton.d.ts +30 -0
  196. package/.internal/core/render/ConfirmButton.d.ts.map +1 -0
  197. package/.internal/core/render/ConfirmButton.js +84 -0
  198. package/.internal/core/render/ConfirmButton.js.map +1 -0
  199. package/.internal/core/render/Container.d.ts +6 -0
  200. package/.internal/core/render/Container.d.ts.map +1 -1
  201. package/.internal/core/render/Container.js +49 -2
  202. package/.internal/core/render/Container.js.map +1 -1
  203. package/.internal/core/render/EditableLabel.d.ts.map +1 -1
  204. package/.internal/core/render/EditableLabel.js +6 -6
  205. package/.internal/core/render/EditableLabel.js.map +1 -1
  206. package/.internal/core/render/HeatLegend.d.ts +14 -0
  207. package/.internal/core/render/HeatLegend.d.ts.map +1 -1
  208. package/.internal/core/render/HeatLegend.js +16 -3
  209. package/.internal/core/render/HeatLegend.js.map +1 -1
  210. package/.internal/core/render/Link.d.ts +28 -0
  211. package/.internal/core/render/Link.d.ts.map +1 -0
  212. package/.internal/core/render/Link.js +90 -0
  213. package/.internal/core/render/Link.js.map +1 -0
  214. package/.internal/core/render/MonotoneXTension.d.ts.map +1 -1
  215. package/.internal/core/render/MonotoneXTension.js.map +1 -1
  216. package/.internal/core/render/MonotoneYTension.d.ts.map +1 -1
  217. package/.internal/core/render/MonotoneYTension.js.map +1 -1
  218. package/.internal/core/render/NumericStepper.d.ts +27 -0
  219. package/.internal/core/render/NumericStepper.d.ts.map +1 -0
  220. package/.internal/core/render/NumericStepper.js +117 -0
  221. package/.internal/core/render/NumericStepper.js.map +1 -0
  222. package/.internal/core/render/OrthogonalLine.d.ts +33 -0
  223. package/.internal/core/render/OrthogonalLine.d.ts.map +1 -0
  224. package/.internal/core/render/OrthogonalLine.js +97 -0
  225. package/.internal/core/render/OrthogonalLine.js.map +1 -0
  226. package/.internal/core/render/ProgressPie.d.ts +32 -0
  227. package/.internal/core/render/ProgressPie.d.ts.map +1 -0
  228. package/.internal/core/render/ProgressPie.js +89 -0
  229. package/.internal/core/render/ProgressPie.js.map +1 -0
  230. package/.internal/core/render/Series.d.ts +0 -7
  231. package/.internal/core/render/Series.d.ts.map +1 -1
  232. package/.internal/core/render/Series.js +24 -27
  233. package/.internal/core/render/Series.js.map +1 -1
  234. package/.internal/core/render/Sprite.d.ts +3 -2
  235. package/.internal/core/render/Sprite.d.ts.map +1 -1
  236. package/.internal/core/render/Sprite.js +40 -30
  237. package/.internal/core/render/Sprite.js.map +1 -1
  238. package/.internal/core/render/patterns/LinePattern.d.ts +8 -0
  239. package/.internal/core/render/patterns/LinePattern.d.ts.map +1 -1
  240. package/.internal/core/render/patterns/LinePattern.js +32 -1
  241. package/.internal/core/render/patterns/LinePattern.js.map +1 -1
  242. package/.internal/core/util/Entity.d.ts.map +1 -1
  243. package/.internal/core/util/Entity.js.map +1 -1
  244. package/.internal/core/util/EventDispatcher.d.ts +32 -3
  245. package/.internal/core/util/EventDispatcher.d.ts.map +1 -1
  246. package/.internal/core/util/EventDispatcher.js +51 -5
  247. package/.internal/core/util/EventDispatcher.js.map +1 -1
  248. package/.internal/core/util/Language.d.ts +2 -0
  249. package/.internal/core/util/Language.d.ts.map +1 -1
  250. package/.internal/core/util/Language.js.map +1 -1
  251. package/.internal/core/util/Time.d.ts.map +1 -1
  252. package/.internal/core/util/Time.js +4 -1
  253. package/.internal/core/util/Time.js.map +1 -1
  254. package/.internal/plugins/colorPicker/ColorPicker.d.ts +151 -0
  255. package/.internal/plugins/colorPicker/ColorPicker.d.ts.map +1 -0
  256. package/.internal/plugins/colorPicker/ColorPicker.js +665 -0
  257. package/.internal/plugins/colorPicker/ColorPicker.js.map +1 -0
  258. package/.internal/plugins/colorPicker/ColorPickerButton.d.ts +28 -0
  259. package/.internal/plugins/colorPicker/ColorPickerButton.d.ts.map +1 -0
  260. package/.internal/plugins/colorPicker/ColorPickerButton.js +87 -0
  261. package/.internal/plugins/colorPicker/ColorPickerButton.js.map +1 -0
  262. package/.internal/plugins/colorPicker/ColorPickerDefaultTheme.d.ts +8 -0
  263. package/.internal/plugins/colorPicker/ColorPickerDefaultTheme.d.ts.map +1 -0
  264. package/.internal/plugins/colorPicker/ColorPickerDefaultTheme.js +248 -0
  265. package/.internal/plugins/colorPicker/ColorPickerDefaultTheme.js.map +1 -0
  266. package/.internal/plugins/json/Classes-script.d.ts +28 -0
  267. package/.internal/plugins/json/Classes-script.d.ts.map +1 -1
  268. package/.internal/plugins/json/Classes-script.js +14 -0
  269. package/.internal/plugins/json/Classes-script.js.map +1 -1
  270. package/.internal/plugins/json/Classes.d.ts +28 -0
  271. package/.internal/plugins/json/Classes.d.ts.map +1 -1
  272. package/.internal/plugins/json/Classes.js +14 -0
  273. package/.internal/plugins/json/Classes.js.map +1 -1
  274. package/.internal/themes/DefaultTheme.d.ts.map +1 -1
  275. package/.internal/themes/DefaultTheme.js +227 -2
  276. package/.internal/themes/DefaultTheme.js.map +1 -1
  277. package/CHANGELOG.md +37 -0
  278. package/examples/javascript/flow-arc-horizontal/package.json +1 -1
  279. package/examples/javascript/flow-arc-vertical/package.json +1 -1
  280. package/examples/javascript/flow-chord/package.json +1 -1
  281. package/examples/javascript/flow-chord-directed/package.json +1 -1
  282. package/examples/javascript/flow-chord-non-ribbon/package.json +1 -1
  283. package/examples/javascript/flow-sankey/package.json +1 -1
  284. package/examples/javascript/gantt/README.md +6 -0
  285. package/examples/javascript/gantt/index.css +11 -0
  286. package/examples/javascript/gantt/index.html +12 -0
  287. package/examples/javascript/gantt/index.js +228 -0
  288. package/examples/javascript/gantt/package.json +16 -0
  289. package/examples/javascript/gantt/webpack.config.js +38 -0
  290. package/examples/javascript/gantt-multilevel/README.md +6 -0
  291. package/examples/javascript/gantt-multilevel/index.css +11 -0
  292. package/examples/javascript/gantt-multilevel/index.html +12 -0
  293. package/examples/javascript/gantt-multilevel/index.js +90 -0
  294. package/examples/javascript/gantt-multilevel/package.json +16 -0
  295. package/examples/javascript/gantt-multilevel/webpack.config.js +38 -0
  296. package/examples/javascript/gantt-simple/README.md +6 -0
  297. package/examples/javascript/gantt-simple/index.css +11 -0
  298. package/examples/javascript/gantt-simple/index.html +12 -0
  299. package/examples/javascript/gantt-simple/index.js +90 -0
  300. package/examples/javascript/gantt-simple/package.json +16 -0
  301. package/examples/javascript/gantt-simple/webpack.config.js +38 -0
  302. package/examples/javascript/gauge/package.json +1 -1
  303. package/examples/javascript/gauge-bands/package.json +1 -1
  304. package/examples/javascript/hierarchy-force-directed/package.json +1 -1
  305. package/examples/javascript/hierarchy-pack/package.json +1 -1
  306. package/examples/javascript/hierarchy-partition/package.json +1 -1
  307. package/examples/javascript/hierarchy-sunburst/package.json +1 -1
  308. package/examples/javascript/hierarchy-tree/package.json +1 -1
  309. package/examples/javascript/hierarchy-treemap/package.json +1 -1
  310. package/examples/javascript/hierarchy-voronoi-treemap/package.json +1 -1
  311. package/examples/javascript/jest/package.json +1 -1
  312. package/examples/javascript/json-pie/package.json +1 -1
  313. package/examples/javascript/json-xy/package.json +1 -1
  314. package/examples/javascript/map-animating-along-lines/package.json +1 -1
  315. package/examples/javascript/map-clustered-points/package.json +1 -1
  316. package/examples/javascript/map-day-and-night/package.json +1 -1
  317. package/examples/javascript/map-globe-rotate-to-country/package.json +1 -1
  318. package/examples/javascript/map-globe-with-projected-circles/package.json +1 -1
  319. package/examples/javascript/map-with-bubbles/package.json +1 -1
  320. package/examples/javascript/map-zoom-to-country/package.json +1 -1
  321. package/examples/javascript/misc-40-charts/package.json +1 -1
  322. package/examples/javascript/misc-microchart-grid/package.json +1 -1
  323. package/examples/javascript/pie-chart/package.json +1 -1
  324. package/examples/javascript/pie-donut-chart/package.json +1 -1
  325. package/examples/javascript/pie-variable-radius/package.json +1 -1
  326. package/examples/javascript/radar-column-iwatch-style/package.json +1 -1
  327. package/examples/javascript/radar-heat-map/package.json +1 -1
  328. package/examples/javascript/radar-line/package.json +1 -1
  329. package/examples/javascript/radar-time-line/package.json +1 -1
  330. package/examples/javascript/sliced-funnel/package.json +1 -1
  331. package/examples/javascript/sliced-pictorial-stacked/package.json +1 -1
  332. package/examples/javascript/sliced-pyramid/package.json +1 -1
  333. package/examples/javascript/stock-chart/index.js +2 -0
  334. package/examples/javascript/stock-chart/package.json +1 -1
  335. package/examples/javascript/stock-chart-comparing-stocks/index.js +2 -0
  336. package/examples/javascript/stock-chart-comparing-stocks/package.json +1 -1
  337. package/examples/javascript/stock-chart-data-granularity/index.js +2 -0
  338. package/examples/javascript/stock-chart-data-granularity/package.json +1 -1
  339. package/examples/javascript/stock-chart-data-grouping/index.js +2 -0
  340. package/examples/javascript/stock-chart-data-grouping/package.json +1 -1
  341. package/examples/javascript/stock-chart-intraday/index.js +2 -0
  342. package/examples/javascript/stock-chart-intraday/package.json +1 -1
  343. package/examples/javascript/stock-chart-live/index.js +1 -0
  344. package/examples/javascript/stock-chart-live/package.json +1 -1
  345. package/examples/javascript/stock-chart-volume-separate-panel/index.js +2 -0
  346. package/examples/javascript/stock-chart-volume-separate-panel/package.json +1 -1
  347. package/examples/javascript/timeline-horizontal-serpentine-chart/package.json +1 -1
  348. package/examples/javascript/timeline-linear-process-diagram/package.json +1 -1
  349. package/examples/javascript/timeline-serpentine-chart/package.json +1 -1
  350. package/examples/javascript/timeline-spiral-chart/package.json +1 -1
  351. package/examples/javascript/venn-diagram/package.json +1 -1
  352. package/examples/javascript/wordcloud-with-data/package.json +1 -1
  353. package/examples/javascript/wordcloud-with-text/package.json +1 -1
  354. package/examples/javascript/xy-100-percent-stacked-column/package.json +1 -1
  355. package/examples/javascript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  356. package/examples/javascript/xy-bubble/package.json +1 -1
  357. package/examples/javascript/xy-candlestick/index.js +1 -0
  358. package/examples/javascript/xy-candlestick/package.json +1 -1
  359. package/examples/javascript/xy-clustered-column/package.json +1 -1
  360. package/examples/javascript/xy-column/package.json +1 -1
  361. package/examples/javascript/xy-comparing-series-google-analytics-style/package.json +1 -1
  362. package/examples/javascript/xy-data-grouping/package.json +1 -1
  363. package/examples/javascript/xy-draggable-range/package.json +1 -1
  364. package/examples/javascript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  365. package/examples/javascript/xy-dumbbell plot/package.json +1 -1
  366. package/examples/javascript/xy-evenly-spaced-date-axis/package.json +1 -1
  367. package/examples/javascript/xy-line/package.json +1 -1
  368. package/examples/javascript/xy-line-highlight-on-legend-hover/package.json +1 -1
  369. package/examples/javascript/xy-live-data/package.json +1 -1
  370. package/examples/javascript/xy-multiple-synced-value-axes/package.json +1 -1
  371. package/examples/javascript/xy-ohlc/package.json +1 -1
  372. package/examples/javascript/xy-real-time-data-sorting/package.json +1 -1
  373. package/examples/javascript/xy-smoothed-line/package.json +1 -1
  374. package/examples/javascript/xy-stacked-and-clustered-column/package.json +1 -1
  375. package/examples/javascript/xy-stacked-column/package.json +1 -1
  376. package/examples/javascript/xy-stacked-step/package.json +1 -1
  377. package/examples/javascript/xy-stock/package.json +1 -1
  378. package/examples/javascript/xy-stock-comparing/package.json +1 -1
  379. package/examples/typescript/flow-arc-horizontal/package.json +1 -1
  380. package/examples/typescript/flow-arc-vertical/package.json +1 -1
  381. package/examples/typescript/flow-chord/package.json +1 -1
  382. package/examples/typescript/flow-chord-directed/package.json +1 -1
  383. package/examples/typescript/flow-chord-non-ribbon/package.json +1 -1
  384. package/examples/typescript/flow-sankey/package.json +1 -1
  385. package/examples/typescript/gantt/README.md +6 -0
  386. package/examples/typescript/gantt/index.css +11 -0
  387. package/examples/typescript/gantt/index.html +12 -0
  388. package/examples/typescript/gantt/index.ts +228 -0
  389. package/examples/typescript/gantt/package.json +18 -0
  390. package/examples/typescript/gantt/tsconfig.json +12 -0
  391. package/examples/typescript/gantt/webpack.config.js +45 -0
  392. package/examples/typescript/gantt-multilevel/README.md +6 -0
  393. package/examples/typescript/gantt-multilevel/index.css +11 -0
  394. package/examples/typescript/gantt-multilevel/index.html +12 -0
  395. package/examples/typescript/gantt-multilevel/index.ts +90 -0
  396. package/examples/typescript/gantt-multilevel/package.json +18 -0
  397. package/examples/typescript/gantt-multilevel/tsconfig.json +12 -0
  398. package/examples/typescript/gantt-multilevel/webpack.config.js +45 -0
  399. package/examples/typescript/gantt-simple/README.md +6 -0
  400. package/examples/typescript/gantt-simple/index.css +11 -0
  401. package/examples/typescript/gantt-simple/index.html +12 -0
  402. package/examples/typescript/gantt-simple/index.ts +90 -0
  403. package/examples/typescript/gantt-simple/package.json +18 -0
  404. package/examples/typescript/gantt-simple/tsconfig.json +12 -0
  405. package/examples/typescript/gantt-simple/webpack.config.js +45 -0
  406. package/examples/typescript/gauge/package.json +1 -1
  407. package/examples/typescript/gauge-bands/package.json +1 -1
  408. package/examples/typescript/hierarchy-force-directed/package.json +1 -1
  409. package/examples/typescript/hierarchy-pack/package.json +1 -1
  410. package/examples/typescript/hierarchy-partition/package.json +1 -1
  411. package/examples/typescript/hierarchy-sunburst/package.json +1 -1
  412. package/examples/typescript/hierarchy-tree/package.json +1 -1
  413. package/examples/typescript/hierarchy-treemap/package.json +1 -1
  414. package/examples/typescript/hierarchy-voronoi-treemap/package.json +1 -1
  415. package/examples/typescript/jest/package.json +1 -1
  416. package/examples/typescript/json-pie/package.json +1 -1
  417. package/examples/typescript/json-xy/package.json +1 -1
  418. package/examples/typescript/map-animating-along-lines/package.json +1 -1
  419. package/examples/typescript/map-clustered-points/package.json +1 -1
  420. package/examples/typescript/map-day-and-night/package.json +1 -1
  421. package/examples/typescript/map-globe-rotate-to-country/package.json +1 -1
  422. package/examples/typescript/map-globe-with-projected-circles/package.json +1 -1
  423. package/examples/typescript/map-with-bubbles/package.json +1 -1
  424. package/examples/typescript/map-zoom-to-country/package.json +1 -1
  425. package/examples/typescript/misc-40-charts/package.json +1 -1
  426. package/examples/typescript/misc-microchart-grid/package.json +1 -1
  427. package/examples/typescript/pie-chart/package.json +1 -1
  428. package/examples/typescript/pie-donut-chart/package.json +1 -1
  429. package/examples/typescript/pie-variable-radius/package.json +1 -1
  430. package/examples/typescript/radar-column-iwatch-style/package.json +1 -1
  431. package/examples/typescript/radar-heat-map/package.json +1 -1
  432. package/examples/typescript/radar-line/package.json +1 -1
  433. package/examples/typescript/radar-time-line/package.json +1 -1
  434. package/examples/typescript/sliced-funnel/package.json +1 -1
  435. package/examples/typescript/sliced-pictorial-stacked/package.json +1 -1
  436. package/examples/typescript/sliced-pyramid/package.json +1 -1
  437. package/examples/typescript/stock-chart/index.ts +2 -0
  438. package/examples/typescript/stock-chart/package.json +1 -1
  439. package/examples/typescript/stock-chart-comparing-stocks/index.ts +2 -0
  440. package/examples/typescript/stock-chart-comparing-stocks/package.json +1 -1
  441. package/examples/typescript/stock-chart-data-granularity/index.ts +2 -0
  442. package/examples/typescript/stock-chart-data-granularity/package.json +1 -1
  443. package/examples/typescript/stock-chart-data-grouping/index.ts +2 -0
  444. package/examples/typescript/stock-chart-data-grouping/package.json +1 -1
  445. package/examples/typescript/stock-chart-intraday/index.ts +2 -0
  446. package/examples/typescript/stock-chart-intraday/package.json +1 -1
  447. package/examples/typescript/stock-chart-live/index.ts +1 -0
  448. package/examples/typescript/stock-chart-live/package.json +1 -1
  449. package/examples/typescript/stock-chart-volume-separate-panel/index.ts +2 -0
  450. package/examples/typescript/stock-chart-volume-separate-panel/package.json +1 -1
  451. package/examples/typescript/timeline-horizontal-serpentine-chart/package.json +1 -1
  452. package/examples/typescript/timeline-linear-process-diagram/package.json +1 -1
  453. package/examples/typescript/timeline-serpentine-chart/package.json +1 -1
  454. package/examples/typescript/timeline-spiral-chart/package.json +1 -1
  455. package/examples/typescript/venn-diagram/package.json +1 -1
  456. package/examples/typescript/wordcloud-with-data/package.json +1 -1
  457. package/examples/typescript/wordcloud-with-text/package.json +1 -1
  458. package/examples/typescript/xy-100-percent-stacked-column/package.json +1 -1
  459. package/examples/typescript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  460. package/examples/typescript/xy-bubble/package.json +1 -1
  461. package/examples/typescript/xy-candlestick/index.ts +1 -0
  462. package/examples/typescript/xy-candlestick/package.json +1 -1
  463. package/examples/typescript/xy-clustered-column/package.json +1 -1
  464. package/examples/typescript/xy-column/package.json +1 -1
  465. package/examples/typescript/xy-comparing-series-google-analytics-style/package.json +1 -1
  466. package/examples/typescript/xy-data-grouping/package.json +1 -1
  467. package/examples/typescript/xy-draggable-range/package.json +1 -1
  468. package/examples/typescript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  469. package/examples/typescript/xy-dumbbell plot/package.json +1 -1
  470. package/examples/typescript/xy-evenly-spaced-date-axis/package.json +1 -1
  471. package/examples/typescript/xy-line/package.json +1 -1
  472. package/examples/typescript/xy-line-highlight-on-legend-hover/package.json +1 -1
  473. package/examples/typescript/xy-live-data/package.json +1 -1
  474. package/examples/typescript/xy-multiple-synced-value-axes/package.json +1 -1
  475. package/examples/typescript/xy-ohlc/package.json +1 -1
  476. package/examples/typescript/xy-real-time-data-sorting/package.json +1 -1
  477. package/examples/typescript/xy-smoothed-line/package.json +1 -1
  478. package/examples/typescript/xy-stacked-and-clustered-column/package.json +1 -1
  479. package/examples/typescript/xy-stacked-column/package.json +1 -1
  480. package/examples/typescript/xy-stacked-step/package.json +1 -1
  481. package/examples/typescript/xy-stock/package.json +1 -1
  482. package/examples/typescript/xy-stock-comparing/package.json +1 -1
  483. package/gantt.d.ts +9 -0
  484. package/gantt.d.ts.map +1 -0
  485. package/gantt.js +9 -0
  486. package/gantt.js.map +1 -0
  487. package/index.d.ts +5 -0
  488. package/index.d.ts.map +1 -1
  489. package/index.js +5 -0
  490. package/index.js.map +1 -1
  491. package/locales/ar.d.ts +4 -0
  492. package/locales/ar.d.ts.map +1 -1
  493. package/locales/ar.js +5 -0
  494. package/locales/ar.js.map +1 -1
  495. package/locales/bg_BG.d.ts +2 -0
  496. package/locales/bg_BG.d.ts.map +1 -1
  497. package/locales/bg_BG.js +3 -1
  498. package/locales/bg_BG.js.map +1 -1
  499. package/locales/bs_BA.d.ts +4 -0
  500. package/locales/bs_BA.d.ts.map +1 -1
  501. package/locales/bs_BA.js +5 -0
  502. package/locales/bs_BA.js.map +1 -1
  503. package/locales/ca_ES.d.ts +4 -0
  504. package/locales/ca_ES.d.ts.map +1 -1
  505. package/locales/ca_ES.js +5 -0
  506. package/locales/ca_ES.js.map +1 -1
  507. package/locales/cs_CZ.d.ts +4 -0
  508. package/locales/cs_CZ.d.ts.map +1 -1
  509. package/locales/cs_CZ.js +5 -0
  510. package/locales/cs_CZ.js.map +1 -1
  511. package/locales/da_DK.d.ts +4 -0
  512. package/locales/da_DK.d.ts.map +1 -1
  513. package/locales/da_DK.js +5 -0
  514. package/locales/da_DK.js.map +1 -1
  515. package/locales/de_CH.d.ts +4 -0
  516. package/locales/de_CH.d.ts.map +1 -1
  517. package/locales/de_CH.js +5 -0
  518. package/locales/de_CH.js.map +1 -1
  519. package/locales/de_DE.d.ts +4 -0
  520. package/locales/de_DE.d.ts.map +1 -1
  521. package/locales/de_DE.js +5 -0
  522. package/locales/de_DE.js.map +1 -1
  523. package/locales/el_GR.d.ts +4 -0
  524. package/locales/el_GR.d.ts.map +1 -1
  525. package/locales/el_GR.js +5 -0
  526. package/locales/el_GR.js.map +1 -1
  527. package/locales/en.d.ts +2 -0
  528. package/locales/en.d.ts.map +1 -1
  529. package/locales/en.js +3 -1
  530. package/locales/en.js.map +1 -1
  531. package/locales/en_CA.d.ts +4 -0
  532. package/locales/en_CA.d.ts.map +1 -1
  533. package/locales/en_CA.js +5 -0
  534. package/locales/en_CA.js.map +1 -1
  535. package/locales/en_US.d.ts +4 -0
  536. package/locales/en_US.d.ts.map +1 -1
  537. package/locales/en_US.js +5 -0
  538. package/locales/en_US.js.map +1 -1
  539. package/locales/es_ES.d.ts +4 -0
  540. package/locales/es_ES.d.ts.map +1 -1
  541. package/locales/es_ES.js +6 -1
  542. package/locales/es_ES.js.map +1 -1
  543. package/locales/et_EE.d.ts +4 -0
  544. package/locales/et_EE.d.ts.map +1 -1
  545. package/locales/et_EE.js +5 -0
  546. package/locales/et_EE.js.map +1 -1
  547. package/locales/fi_FI.d.ts +4 -0
  548. package/locales/fi_FI.d.ts.map +1 -1
  549. package/locales/fi_FI.js +5 -0
  550. package/locales/fi_FI.js.map +1 -1
  551. package/locales/fo_FO.d.ts +2 -0
  552. package/locales/fo_FO.d.ts.map +1 -1
  553. package/locales/fo_FO.js +3 -1
  554. package/locales/fo_FO.js.map +1 -1
  555. package/locales/fr_FR.d.ts +4 -0
  556. package/locales/fr_FR.d.ts.map +1 -1
  557. package/locales/fr_FR.js +5 -0
  558. package/locales/fr_FR.js.map +1 -1
  559. package/locales/he_IL.d.ts +4 -0
  560. package/locales/he_IL.d.ts.map +1 -1
  561. package/locales/he_IL.js +5 -0
  562. package/locales/he_IL.js.map +1 -1
  563. package/locales/hi_IN.d.ts +4 -0
  564. package/locales/hi_IN.d.ts.map +1 -1
  565. package/locales/hi_IN.js +5 -0
  566. package/locales/hi_IN.js.map +1 -1
  567. package/locales/hr_HR.d.ts +4 -0
  568. package/locales/hr_HR.d.ts.map +1 -1
  569. package/locales/hr_HR.js +5 -0
  570. package/locales/hr_HR.js.map +1 -1
  571. package/locales/hu_HU.d.ts +4 -0
  572. package/locales/hu_HU.d.ts.map +1 -1
  573. package/locales/hu_HU.js +5 -0
  574. package/locales/hu_HU.js.map +1 -1
  575. package/locales/id_ID.d.ts +4 -0
  576. package/locales/id_ID.d.ts.map +1 -1
  577. package/locales/id_ID.js +5 -0
  578. package/locales/id_ID.js.map +1 -1
  579. package/locales/it_IT.d.ts +4 -0
  580. package/locales/it_IT.d.ts.map +1 -1
  581. package/locales/it_IT.js +5 -0
  582. package/locales/it_IT.js.map +1 -1
  583. package/locales/ja_JP.d.ts +4 -0
  584. package/locales/ja_JP.d.ts.map +1 -1
  585. package/locales/ja_JP.js +5 -0
  586. package/locales/ja_JP.js.map +1 -1
  587. package/locales/ko_KR.d.ts +4 -0
  588. package/locales/ko_KR.d.ts.map +1 -1
  589. package/locales/ko_KR.js +5 -0
  590. package/locales/ko_KR.js.map +1 -1
  591. package/locales/lt_LT.d.ts +4 -0
  592. package/locales/lt_LT.d.ts.map +1 -1
  593. package/locales/lt_LT.js +5 -0
  594. package/locales/lt_LT.js.map +1 -1
  595. package/locales/lv_LV.d.ts +4 -0
  596. package/locales/lv_LV.d.ts.map +1 -1
  597. package/locales/lv_LV.js +5 -0
  598. package/locales/lv_LV.js.map +1 -1
  599. package/locales/nb_NO.d.ts +4 -0
  600. package/locales/nb_NO.d.ts.map +1 -1
  601. package/locales/nb_NO.js +5 -0
  602. package/locales/nb_NO.js.map +1 -1
  603. package/locales/nl_NL.d.ts +4 -0
  604. package/locales/nl_NL.d.ts.map +1 -1
  605. package/locales/nl_NL.js +5 -0
  606. package/locales/nl_NL.js.map +1 -1
  607. package/locales/pl_PL.d.ts +4 -0
  608. package/locales/pl_PL.d.ts.map +1 -1
  609. package/locales/pl_PL.js +5 -0
  610. package/locales/pl_PL.js.map +1 -1
  611. package/locales/pt_BR.d.ts +4 -0
  612. package/locales/pt_BR.d.ts.map +1 -1
  613. package/locales/pt_BR.js +5 -0
  614. package/locales/pt_BR.js.map +1 -1
  615. package/locales/pt_PT.d.ts +4 -0
  616. package/locales/pt_PT.d.ts.map +1 -1
  617. package/locales/pt_PT.js +5 -0
  618. package/locales/pt_PT.js.map +1 -1
  619. package/locales/ro_RO.d.ts +4 -0
  620. package/locales/ro_RO.d.ts.map +1 -1
  621. package/locales/ro_RO.js +5 -0
  622. package/locales/ro_RO.js.map +1 -1
  623. package/locales/ru_RU.d.ts +4 -0
  624. package/locales/ru_RU.d.ts.map +1 -1
  625. package/locales/ru_RU.js +5 -0
  626. package/locales/ru_RU.js.map +1 -1
  627. package/locales/sk_SK.d.ts +4 -0
  628. package/locales/sk_SK.d.ts.map +1 -1
  629. package/locales/sk_SK.js +5 -0
  630. package/locales/sk_SK.js.map +1 -1
  631. package/locales/sl_SL.d.ts +4 -0
  632. package/locales/sl_SL.d.ts.map +1 -1
  633. package/locales/sl_SL.js +5 -0
  634. package/locales/sl_SL.js.map +1 -1
  635. package/locales/sr_RS.d.ts +4 -0
  636. package/locales/sr_RS.d.ts.map +1 -1
  637. package/locales/sr_RS.js +5 -0
  638. package/locales/sr_RS.js.map +1 -1
  639. package/locales/sv_SE.d.ts +4 -0
  640. package/locales/sv_SE.d.ts.map +1 -1
  641. package/locales/sv_SE.js +5 -0
  642. package/locales/sv_SE.js.map +1 -1
  643. package/locales/th_TH.d.ts +4 -0
  644. package/locales/th_TH.d.ts.map +1 -1
  645. package/locales/th_TH.js +5 -0
  646. package/locales/th_TH.js.map +1 -1
  647. package/locales/tr_TR.d.ts +4 -0
  648. package/locales/tr_TR.d.ts.map +1 -1
  649. package/locales/tr_TR.js +5 -0
  650. package/locales/tr_TR.js.map +1 -1
  651. package/locales/uk_UA.d.ts +4 -0
  652. package/locales/uk_UA.d.ts.map +1 -1
  653. package/locales/uk_UA.js +5 -0
  654. package/locales/uk_UA.js.map +1 -1
  655. package/locales/vi_VN.d.ts +4 -0
  656. package/locales/vi_VN.d.ts.map +1 -1
  657. package/locales/vi_VN.js +5 -0
  658. package/locales/vi_VN.js.map +1 -1
  659. package/locales/zh_Hans.d.ts +4 -0
  660. package/locales/zh_Hans.d.ts.map +1 -1
  661. package/locales/zh_Hans.js +5 -0
  662. package/locales/zh_Hans.js.map +1 -1
  663. package/locales/zh_Hant.d.ts +4 -0
  664. package/locales/zh_Hant.d.ts.map +1 -1
  665. package/locales/zh_Hant.js +5 -0
  666. package/locales/zh_Hant.js.map +1 -1
  667. package/package.json +1 -1
  668. package/plugins/colorPicker.d.ts +3 -0
  669. package/plugins/colorPicker.d.ts.map +1 -0
  670. package/plugins/colorPicker.js +3 -0
  671. package/plugins/colorPicker.js.map +1 -0
  672. package/xy.d.ts +1 -0
  673. package/xy.d.ts.map +1 -1
  674. package/xy.js +1 -0
  675. package/xy.js.map +1 -1
@@ -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\t\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 _afterNew() {\n\t\tsuper._afterNew();\n\t\tthis._display.addChild(this._childrenDisplay);\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 _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\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\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\tthis._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\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\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) => void): void {\n\t\tthis.children.each((child) => {\n\t\t\tif (child instanceof Container) {\n\t\t\t\tchild.walkChildren(f);\n\t\t\t}\n\t\t\tf(child);\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 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\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\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) => void): void {\n\t\tthis.children.each((child) => {\n\t\t\tif (child instanceof Container) {\n\t\t\t\tchild.walkChildren(f);\n\t\t\t}\n\t\t\tf(child);\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 +1 @@
1
- {"version":3,"file":"EditableLabel.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/render/EditableLabel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAIxC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAOjD,MAAM,WAAW,sBAAuB,SAAQ,cAAc;IAE7D;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,EAAE,OAAO,GAAG,UAAU,GAAG,YAAY,GAAG,aAAa,GAAG,MAAM,CAAC;IAEtE;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CAEpB;AAED,MAAM,WAAW,qBAAsB,SAAQ,aAAa;IAC3D,KAAK,EAAE,SAAS,CAAC;IACjB,QAAQ,EAAE,mBAAmB,CAAC;CAC9B;AAED,MAAM,WAAW,oBAAqB,SAAQ,YAAY;IACzD,MAAM,EAAE,EAAE,CAAC;CACX;AAED;;;;GAIG;AACH,qBAAa,aAAc,SAAQ,KAAK;IAExB,SAAS,EAAE,sBAAsB,CAAC;IAClC,gBAAgB,EAAE,qBAAqB,CAAC;IACxC,OAAO,EAAE,oBAAoB,CAAC;IAE7C,OAAc,SAAS,EAAE,MAAM,CAAmB;IAClD,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAsD;IAE7F,SAAS,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC;IAExC,SAAS,CAAC,SAAS;IAyBZ,cAAc;IAwBd,gBAAgB;IAKhB,eAAe;IAuBtB,SAAS,CAAC,kBAAkB;IAiD5B,SAAS,CAAC,SAAS,IAAI,OAAO;IAI9B,SAAS,CAAC,aAAa;IAuBvB,SAAS,CAAC,YAAY;IAgBtB,SAAS,CAAC,UAAU;IAoIpB,SAAS,CAAC,SAAS;CAWnB"}
1
+ {"version":3,"file":"EditableLabel.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/render/EditableLabel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAIxC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAOjD,MAAM,WAAW,sBAAuB,SAAQ,cAAc;IAE7D;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,EAAE,OAAO,GAAG,UAAU,GAAG,YAAY,GAAG,aAAa,GAAG,MAAM,CAAC;IAEtE;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,qBAAsB,SAAQ,aAAa;IAC3D,KAAK,EAAE,SAAS,CAAC;IACjB,QAAQ,EAAE,mBAAmB,CAAC;CAC9B;AAED,MAAM,WAAW,oBAAqB,SAAQ,YAAY;IACzD,MAAM,EAAE,EAAE,CAAC;CACX;AAED;;;;GAIG;AACH,qBAAa,aAAc,SAAQ,KAAK;IAExB,SAAS,EAAE,sBAAsB,CAAC;IAClC,gBAAgB,EAAE,qBAAqB,CAAC;IACxC,OAAO,EAAE,oBAAoB,CAAC;IAE7C,OAAc,SAAS,EAAE,MAAM,CAAmB;IAClD,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAsD;IAE7F,SAAS,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC;IAExC,SAAS,CAAC,SAAS;IAyBZ,cAAc;IAwBd,gBAAgB;IAKhB,eAAe;IAuBtB,SAAS,CAAC,kBAAkB;IAiD5B,SAAS,CAAC,SAAS,IAAI,OAAO;IAI9B,SAAS,CAAC,aAAa;IAuBvB,SAAS,CAAC,YAAY;IAgBtB,SAAS,CAAC,UAAU;IAoIpB,SAAS,CAAC,SAAS;CAWnB"}
@@ -170,9 +170,9 @@ export class EditableLabel extends Label {
170
170
  _syncStyle() {
171
171
  const input = this.getPrivate("input");
172
172
  const textarea = this.getPrivate("textarea");
173
- if (textarea) {
173
+ const el = input.getPrivate("htmlElement");
174
+ if (textarea && el) {
174
175
  // Set up HTML
175
- const el = input.getPrivate("htmlElement");
176
176
  // Reset all styles
177
177
  const computedStyles = window.getComputedStyle(textarea);
178
178
  $array.each(computedStyles, (style) => {
@@ -220,12 +220,12 @@ export class EditableLabel extends Label {
220
220
  // Font stuff
221
221
  let fontFamily = this.get("fontFamily");
222
222
  if (!fontFamily) {
223
- fontFamily = getComputedStyle(input.getPrivate("htmlElement"), "font-family").getPropertyValue("font-family");
223
+ fontFamily = getComputedStyle(el, "font-family").getPropertyValue("font-family");
224
224
  }
225
225
  textarea.style.fontFamily = fontFamily;
226
226
  let fontSize = this.get("fontSize");
227
227
  if (!fontSize) {
228
- fontSize = getComputedStyle(input.getPrivate("htmlElement"), "font-size").getPropertyValue("font-size");
228
+ fontSize = getComputedStyle(el, "font-size").getPropertyValue("font-size");
229
229
  }
230
230
  else if ($type.isNumber(fontSize)) {
231
231
  fontSize = fontSize + "px";
@@ -236,7 +236,7 @@ export class EditableLabel extends Label {
236
236
  textarea.style.fontSize = fontSize;
237
237
  let fontWeight = this.get("fontWeight");
238
238
  if (!fontWeight) {
239
- fontWeight = getComputedStyle(input.getPrivate("htmlElement"), "font-weight").getPropertyValue("font-weight");
239
+ fontWeight = getComputedStyle(el, "font-weight").getPropertyValue("font-weight");
240
240
  }
241
241
  else {
242
242
  fontWeight = fontWeight;
@@ -244,7 +244,7 @@ export class EditableLabel extends Label {
244
244
  textarea.style.fontWeight = fontWeight;
245
245
  let fontStyle = this.get("fontStyle");
246
246
  if (!fontStyle) {
247
- fontStyle = getComputedStyle(input.getPrivate("htmlElement"), "font-style").getPropertyValue("font-style");
247
+ fontStyle = getComputedStyle(el, "font-style").getPropertyValue("font-style");
248
248
  }
249
249
  else {
250
250
  fontStyle = fontStyle;
@@ -1 +1 @@
1
- {"version":3,"file":"EditableLabel.js","sourceRoot":"","sources":["../../../../../src/.internal/core/render/EditableLabel.ts"],"names":[],"mappings":"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","sourcesContent":["import { Label, ILabelPrivate, ILabelSettings, ILabelEvents } from \"./Label\";\nimport { Container } from \"./Container\";\nimport { RoundedRectangle } from \"./RoundedRectangle\";\nimport { Percent } from \"../util/Percent\"\nimport { color } from \"../util/Color\";\nimport { MultiDisposer } from \"../util/Disposer\";\n\n\nimport * as $utils from \"../util/Utils\"\nimport * as $type from \"../util/Type\"\nimport * as $array from \"../util/Array\"\n\nexport interface IEditableLabelSettings extends ILabelSettings {\n\n\t/**\n\t * Start editing on click (`\"click\"`; default) or double-click ('\"dblclick\"').\n\t *\n\t * All available options:\n\t *\n\t * *`\"click\"` (default)\n\t * *`\"dblclick\"`\n\t * *`\"rightclick\"`\n\t * *`\"middleclick\"`\n\t * *`\"none\"`\n\t *\n\t * @default \"click\"\n\t */\n\teditOn?: \"click\" | \"dblclick\" | \"rightclick\" | \"middleclick\" | \"none\";\n\n\t/**\n\t * Allow multiple lines (`true` - dfault) or no (`false`).\n\t *\n\t * @default true\n\t * @since 5.9.6\n\t */\n\tmultiLine?: boolean;\n\n}\n\nexport interface IEditableLabelPrivate extends ILabelPrivate {\n\tinput: Container;\n\ttextarea: HTMLTextAreaElement;\n}\n\nexport interface IEditableLabelEvents extends ILabelEvents {\n\tinited: {};\n}\n\n/**\n * Editable label.\n *\n * @since 5.9.5\n */\nexport class EditableLabel extends Label {\n\n\tdeclare public _settings: IEditableLabelSettings;\n\tdeclare public _privateSettings: IEditableLabelPrivate;\n\tdeclare public _events: IEditableLabelEvents;\n\n\tpublic static className: string = \"EditableLabel\";\n\tpublic static classNames: Array<string> = Label.classNames.concat([EditableLabel.className]);\n\n\tprotected _editOnEvents?: MultiDisposer;\n\n\tprotected _afterNew() {\n\t\tsuper._afterNew();\n\n\t\tconst input = this.children.push(Container.new(this._root, {\n\t\t\thtml: \"<textarea class=\\\"am5-editable-label\\\"></textarea>\",\n\t\t\tisMeasured: false\n\t\t}));\n\n\t\tinput.hide();\n\t\tthis.setPrivate(\"input\", input);\n\n\t\t// Set background\n\t\tlet background = this.get(\"background\");\n\n\t\tif (!background) {\n\t\t\tbackground = this.set(\"background\", RoundedRectangle.new(this._root, {\n\t\t\t\tthemeTags: [\"editablelabel\", \"background\"]\n\t\t\t}));\n\t\t}\n\t\telse {\n\t\t\tbackground.set(\"themeTags\", [\"editablelabel\", \"background\"]);\n\t\t}\n\n\t}\n\n\tpublic _beforeChanged() {\n\t\tsuper._beforeChanged();\n\n\t\t// If editOn setting is changed, remove old listeners\n\t\tif (this.isDirty(\"editOn\")) {\n\t\t\tif (this._editOnEvents) {\n\t\t\t\tthis._editOnEvents.dispose();\n\t\t\t}\n\t\t\tconst editOn: any = this.get(\"editOn\", \"click\");\n\t\t\tif (editOn != \"none\") {\n\t\t\t\tthis._editOnEvents = new MultiDisposer([\n\t\t\t\t\tthis.getPrivate(\"input\").events.on(editOn, (_ev) => {\n\t\t\t\t\t\t// this is here just to make it interactive\n\t\t\t\t\t}),\n\t\t\t\t\tthis.events.on(editOn, (_ev) => {\n\t\t\t\t\t\tthis.set(\"active\", true);\n\t\t\t\t\t})\n\t\t\t]);\n\t\t\t}\n\t\t}\n\n\t}\n\n\n\tpublic _prepareChildren() {\n\t\tsuper._prepareChildren();\n\t\tthis._maybeInitTextarea();\n\t}\n\n\tpublic _updateChildren() {\n\t\tsuper._updateChildren();\n\n\t\tif (this.isDirty(\"active\")) {\n\n\t\t\tconst editing = this.get(\"active\", false);\n\t\t\tif (editing) {\n\t\t\t\tthis._startEditing();\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis._stopEditing();\n\t\t\t}\n\n\t\t\tconst bg = this.get(\"background\");\n\t\t\tif (bg) {\n\t\t\t\tbg.set(\"active\", editing);\n\t\t\t}\n\t\t};\n\n\t\tthis._syncText();\n\t\tthis._syncStyle();\n\t}\n\n\tprotected _maybeInitTextarea() {\n\t\tif (!this._isInited()) {\n\t\t\tconst input = this.getPrivate(\"input\");\n\t\t\tif (input && input.getPrivate(\"htmlElement\")) {\n\t\t\t\tconst el = input.getPrivate(\"htmlElement\")!;\n\t\t\t\tconst textarea = el.querySelector(\".am5-editable-label\") as HTMLTextAreaElement;\n\t\t\t\tif (textarea) {\n\t\t\t\t\tthis.setPrivate(\"textarea\", textarea as HTMLTextAreaElement);\n\n\t\t\t\t\t// Resize textarea on keypress\n\t\t\t\t\ttextarea.addEventListener(\"input\", _ev => {\n\t\t\t\t\t\tif (this.get(\"multiLine\") === false) {\n\t\t\t\t\t\t\t// replace line breaks with spaces for single-line labels\n\t\t\t\t\t\t\ttextarea.value = textarea.value.replace(/\\n/g, \" \");\n\t\t\t\t\t\t}\n\t\t\t\t\t\tthis.set(\"text\", textarea.value);\n\t\t\t\t\t\tthis._syncStyle();\n\t\t\t\t\t});\n\n\t\t\t\t\t// Finish editing on blur\n\t\t\t\t\ttextarea.addEventListener(\"blur\", _ev => this.set(\"active\", false));\n\n\t\t\t\t\t// Finish editing on ESC press\n\t\t\t\t\tif ($utils.supports(\"keyboardevents\")) {\n\t\t\t\t\t\tthis._disposers.push($utils.addEventListener(document, \"keydown\", (ev: KeyboardEvent) => {\n\t\t\t\t\t\t\tif ($utils.getEventKey(ev) == \"Escape\") {\n\t\t\t\t\t\t\t\tthis.set(\"active\", false);\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\t// Intercept ENTER if necessary\n\t\t\t\t\tthis._disposers.push($utils.addEventListener(document, \"keydown\", (ev: KeyboardEvent) => {\n\t\t\t\t\t\tif ($utils.getEventKey(ev) == \"Enter\" && this.get(\"multiLine\") === false) {\n\t\t\t\t\t\t\t// Single-line label, save instead of breaking into new line\n\t\t\t\t\t\t\tev.preventDefault();\n\t\t\t\t\t\t\tthis.set(\"active\", false);\n\t\t\t\t\t\t}\n\t\t\t\t\t}));\n\n\t\t\t\t\tthis.events.dispatch(\"inited\", {\n\t\t\t\t\t\ttype: \"inited\",\n\t\t\t\t\t\ttarget: this\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected _isInited(): boolean {\n\t\treturn this.getPrivate(\"textarea\") ? true : false;\n\t}\n\n\tprotected _startEditing() {\n\t\tif (!this._isInited()) {\n\t\t\tthis.events.once(\"inited\", () => {\n\t\t\t\tthis._startEditing();\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tthis._text.set(\"opacity\", 0);\n\t\tconst input = this.getPrivate(\"input\");\n\t\tconst textarea = this.getPrivate(\"textarea\");\n\t\tif (textarea) {\n\t\t\tif (this.get(\"text\", \"\") == \"\") {\n\t\t\t\tthis.set(\"text\", \" \");\n\t\t\t}\n\t\t\tinput.show(0);\n\t\t\tthis.setTimeout(() => {\n\t\t\t\t// size textarea to fit its actual content\n\t\t\t\tthis._syncStyle();\n\t\t\t\ttextarea.focus();\n\t\t\t}, 100);\n\t\t}\n\t}\n\n\tprotected _stopEditing() {\n\t\tif (!this._isInited()) {\n\t\t\tthis.events.once(\"inited\", () => {\n\t\t\t\tthis._stopEditing();\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tconst input = this.getPrivate(\"input\");\n\t\tconst textarea = this.getPrivate(\"textarea\");\n\t\tif (textarea) {\n\t\t\tthis.set(\"text\", textarea.value);\n\t\t\tinput.hide(0);\n\t\t\tthis._text.set(\"opacity\", 1);\n\t\t}\n\t}\n\n\tprotected _syncStyle() {\n\t\tconst input = this.getPrivate(\"input\");\n\t\tconst textarea = this.getPrivate(\"textarea\");\n\t\tif (textarea) {\n\t\t\t// Set up HTML\n\t\t\tconst el = input.getPrivate(\"htmlElement\")!;\n\n\t\t\t// Reset all styles\n\t\t\tconst computedStyles = window.getComputedStyle(textarea);\n\t\t\t$array.each(computedStyles, (style: any) => {\n\t\t\t\ttextarea.style[style] = \"initial\";\n\t\t\t});\n\n\t\t\t// Remove textarea attributes\n\t\t\ttextarea.style.color = this.get(\"fill\", color(0x000000)).toCSS(this.get(\"fillOpacity\", 1));\n\t\t\ttextarea.style.backgroundColor = \"rgba(0, 0, 0, 0)\";\n\t\t\ttextarea.style.border = \"none\";\n\t\t\ttextarea.style.outline = \"none\";\n\t\t\ttextarea.style.padding = \"0\";\n\n\t\t\t// Wrapping\n\t\t\ttextarea.wrap = \"off\";\n\t\t\ttextarea.style.resize = \"none\";\n\n\t\t\t// Place carret under mouse cursor\n\t\t\t// @todo\n\n\t\t\t// Size\n\t\t\ttextarea.style.overflow = \"hidden\";\n\t\t\tconst maxWidth = this.get(\"maxWidth\", 0) - this.get(\"paddingLeft\", 0) - this.get(\"paddingRight\", 0);\n\t\t\tif (maxWidth > 0) {\n\t\t\t\ttextarea.style.maxWidth = maxWidth + \"px\";\n\t\t\t}\n\t\t\telse {\n\t\t\t\t// The actual minWidth will be set on frameend\n\t\t\t\ttextarea.style.minWidth = \"\";\n\t\t\t}\n\n\t\t\ttextarea.style.height = \"auto\";\n\t\t\ttextarea.style.minHeight = textarea.scrollHeight + \"px\";\n\n\t\t\t// If width is explicitly set on a label, use it for textarea\n\t\t\tif (this.get(\"width\")) {\n\t\t\t\ttextarea.style.width = (this.width() - this.get(\"paddingLeft\", 0) - this.get(\"paddingRight\", 0)) + \"px\";\n\t\t\t\ttextarea.style.minWidth = \"\";\n\t\t\t}\n\n\t\t\t// Line height\n\t\t\tconst lineHeight = this.get(\"lineHeight\");\n\t\t\tif (!lineHeight) {\n\t\t\t\ttextarea.style.lineHeight = \"1.2\";\n\t\t\t}\n\t\t\telse if (lineHeight instanceof Percent) {\n\t\t\t\ttextarea.style.lineHeight = lineHeight.value + \"\";\n\t\t\t}\n\t\t\telse if ($type.isNumber(lineHeight)) {\n\t\t\t\ttextarea.style.lineHeight = lineHeight + \"\";\n\t\t\t}\n\n\t\t\t// Font stuff\n\t\t\tlet fontFamily: any = this.get(\"fontFamily\");\n\t\t\tif (!fontFamily) {\n\t\t\t\tfontFamily = getComputedStyle(input.getPrivate(\"htmlElement\")!, \"font-family\").getPropertyValue(\"font-family\");\n\t\t\t}\n\t\t\ttextarea.style.fontFamily = fontFamily;\n\n\t\t\tlet fontSize: any = this.get(\"fontSize\");\n\t\t\tif (!fontSize) {\n\t\t\t\tfontSize = getComputedStyle(input.getPrivate(\"htmlElement\")!, \"font-size\").getPropertyValue(\"font-size\");\n\t\t\t}\n\t\t\telse if ($type.isNumber(fontSize)) {\n\t\t\t\tfontSize = fontSize + \"px\";\n\t\t\t}\n\t\t\telse {\n\t\t\t\tfontSize = fontSize;\n\t\t\t}\n\t\t\ttextarea.style.fontSize = fontSize;\n\n\t\t\tlet fontWeight: any = this.get(\"fontWeight\");\n\t\t\tif (!fontWeight) {\n\t\t\t\tfontWeight = getComputedStyle(input.getPrivate(\"htmlElement\")!, \"font-weight\").getPropertyValue(\"font-weight\");\n\t\t\t}\n\t\t\telse {\n\t\t\t\tfontWeight = fontWeight;\n\t\t\t}\n\t\t\ttextarea.style.fontWeight = fontWeight;\n\n\t\t\tlet fontStyle: any = this.get(\"fontStyle\");\n\t\t\tif (!fontStyle) {\n\t\t\t\tfontStyle = getComputedStyle(input.getPrivate(\"htmlElement\")!, \"font-style\").getPropertyValue(\"font-style\");\n\t\t\t}\n\t\t\telse {\n\t\t\t\tfontStyle = fontStyle;\n\t\t\t}\n\t\t\ttextarea.style.fontStyle = fontStyle;\n\n\t\t\tconst oversizeBehavior = this.get(\"oversizedBehavior\");\n\t\t\tif (oversizeBehavior == \"wrap\") {\n\t\t\t\ttextarea.style.whiteSpace = \"pre-wrap\";\n\t\t\t}\n\t\t\telse {\n\t\t\t\ttextarea.style.whiteSpace = \"nowrap\";\n\t\t\t}\n\n\t\t\t// Adjust textarea postion based on textAlign setting\n\t\t\tthis._root.events.on(\"frameended\", () => {\n\n\t\t\t\tif (textarea.style.minWidth == \"\") {\n\t\t\t\t\ttextarea.style.minWidth = (textarea.scrollWidth + 20) + \"px\";\n\t\t\t\t}\n\n\t\t\t\tconst textAlign = this.get(\"textAlign\", \"start\");\n\t\t\t\tif (textAlign == \"center\") {\n\t\t\t\t\ttextarea.style.textAlign = \"center\";\n\t\t\t\t\tif (!el.style.transform.match(/translateX/) && !this.get(\"width\")) {\n\t\t\t\t\t\tel.style.transform += \" translateX(-50%)\";\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse if (textAlign == \"end\") {\n\t\t\t\t\ttextarea.style.textAlign = \"right\";\n\t\t\t\t\tif (!el.style.transform.match(/translateX/) && !this.get(\"width\")) {\n\t\t\t\t\t\tel.style.transform += \" translateX(-100%)\";\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\ttextarea.style.textAlign = textAlign;\n\t\t\t\t}\n\t\t\t});\n\n\t\t}\n\t}\n\n\tprotected _syncText() {\n\t\tconst textarea = this.getPrivate(\"textarea\");\n\t\tlet text = this.get(\"text\", \"\");\n\t\tif (text == \" \") {\n\t\t\ttext = \"\";\n\t\t}\n\t\tif (textarea) {\n\t\t\ttextarea.value = text;\n\t\t}\n\t}\n\n}"]}
1
+ {"version":3,"file":"EditableLabel.js","sourceRoot":"","sources":["../../../../../src/.internal/core/render/EditableLabel.ts"],"names":[],"mappings":"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","sourcesContent":["import { Label, ILabelPrivate, ILabelSettings, ILabelEvents } from \"./Label\";\nimport { Container } from \"./Container\";\nimport { RoundedRectangle } from \"./RoundedRectangle\";\nimport { Percent } from \"../util/Percent\"\nimport { color } from \"../util/Color\";\nimport { MultiDisposer } from \"../util/Disposer\";\n\n\nimport * as $utils from \"../util/Utils\"\nimport * as $type from \"../util/Type\"\nimport * as $array from \"../util/Array\"\n\nexport interface IEditableLabelSettings extends ILabelSettings {\n\n\t/**\n\t * Start editing on click (`\"click\"`; default) or double-click ('\"dblclick\"').\n\t *\n\t * All available options:\n\t *\n\t * *`\"click\"` (default)\n\t * *`\"dblclick\"`\n\t * *`\"rightclick\"`\n\t * *`\"middleclick\"`\n\t * *`\"none\"`\n\t *\n\t * @default \"click\"\n\t */\n\teditOn?: \"click\" | \"dblclick\" | \"rightclick\" | \"middleclick\" | \"none\";\n\n\t/**\n\t * Allow multiple lines (`true` - dfault) or no (`false`).\n\t *\n\t * @default true\n\t * @since 5.9.6\n\t */\n\tmultiLine?: boolean;\n}\n\nexport interface IEditableLabelPrivate extends ILabelPrivate {\n\tinput: Container;\n\ttextarea: HTMLTextAreaElement;\n}\n\nexport interface IEditableLabelEvents extends ILabelEvents {\n\tinited: {};\n}\n\n/**\n * Editable label.\n *\n * @since 5.9.5\n */\nexport class EditableLabel extends Label {\n\n\tdeclare public _settings: IEditableLabelSettings;\n\tdeclare public _privateSettings: IEditableLabelPrivate;\n\tdeclare public _events: IEditableLabelEvents;\n\n\tpublic static className: string = \"EditableLabel\";\n\tpublic static classNames: Array<string> = Label.classNames.concat([EditableLabel.className]);\n\n\tprotected _editOnEvents?: MultiDisposer;\n\n\tprotected _afterNew() {\n\t\tsuper._afterNew();\n\n\t\tconst input = this.children.push(Container.new(this._root, {\n\t\t\thtml: \"<textarea class=\\\"am5-editable-label\\\"></textarea>\",\n\t\t\tisMeasured: false\n\t\t}));\n\n\t\tinput.hide();\n\t\tthis.setPrivate(\"input\", input);\n\n\t\t// Set background\n\t\tlet background = this.get(\"background\");\n\n\t\tif (!background) {\n\t\t\tbackground = this.set(\"background\", RoundedRectangle.new(this._root, {\n\t\t\t\tthemeTags: [\"editablelabel\", \"background\"]\n\t\t\t}));\n\t\t}\n\t\telse {\n\t\t\tbackground.set(\"themeTags\", [\"editablelabel\", \"background\"]);\n\t\t}\n\n\t}\n\n\tpublic _beforeChanged() {\n\t\tsuper._beforeChanged();\n\n\t\t// If editOn setting is changed, remove old listeners\n\t\tif (this.isDirty(\"editOn\")) {\n\t\t\tif (this._editOnEvents) {\n\t\t\t\tthis._editOnEvents.dispose();\n\t\t\t}\n\t\t\tconst editOn: any = this.get(\"editOn\", \"click\");\n\t\t\tif (editOn != \"none\") {\n\t\t\t\tthis._editOnEvents = new MultiDisposer([\n\t\t\t\t\tthis.getPrivate(\"input\").events.on(editOn, (_ev) => {\n\t\t\t\t\t\t// this is here just to make it interactive\n\t\t\t\t\t}),\n\t\t\t\t\tthis.events.on(editOn, (_ev) => {\n\t\t\t\t\t\tthis.set(\"active\", true);\n\t\t\t\t\t})\n\t\t\t]);\n\t\t\t}\n\t\t}\n\n\t}\n\n\n\tpublic _prepareChildren() {\n\t\tsuper._prepareChildren();\n\t\tthis._maybeInitTextarea();\n\t}\n\n\tpublic _updateChildren() {\n\t\tsuper._updateChildren();\n\n\t\tif (this.isDirty(\"active\")) {\n\n\t\t\tconst editing = this.get(\"active\", false);\n\t\t\tif (editing) {\n\t\t\t\tthis._startEditing();\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis._stopEditing();\n\t\t\t}\n\n\t\t\tconst bg = this.get(\"background\");\n\t\t\tif (bg) {\n\t\t\t\tbg.set(\"active\", editing);\n\t\t\t}\n\t\t};\n\n\t\tthis._syncText();\n\t\tthis._syncStyle();\n\t}\n\n\tprotected _maybeInitTextarea() {\n\t\tif (!this._isInited()) {\n\t\t\tconst input = this.getPrivate(\"input\");\n\t\t\tif (input && input.getPrivate(\"htmlElement\")) {\n\t\t\t\tconst el = input.getPrivate(\"htmlElement\")!;\n\t\t\t\tconst textarea = el.querySelector(\".am5-editable-label\") as HTMLTextAreaElement;\n\t\t\t\tif (textarea) {\n\t\t\t\t\tthis.setPrivate(\"textarea\", textarea as HTMLTextAreaElement);\n\n\t\t\t\t\t// Resize textarea on keypress\n\t\t\t\t\ttextarea.addEventListener(\"input\", _ev => {\n\t\t\t\t\t\tif (this.get(\"multiLine\") === false) {\n\t\t\t\t\t\t\t// replace line breaks with spaces for single-line labels\n\t\t\t\t\t\t\ttextarea.value = textarea.value.replace(/\\n/g, \" \");\n\t\t\t\t\t\t}\n\t\t\t\t\t\tthis.set(\"text\", textarea.value);\n\t\t\t\t\t\tthis._syncStyle();\n\t\t\t\t\t});\n\n\t\t\t\t\t// Finish editing on blur\n\t\t\t\t\ttextarea.addEventListener(\"blur\", _ev => this.set(\"active\", false));\n\n\t\t\t\t\t// Finish editing on ESC press\n\t\t\t\t\tif ($utils.supports(\"keyboardevents\")) {\n\t\t\t\t\t\tthis._disposers.push($utils.addEventListener(document, \"keydown\", (ev: KeyboardEvent) => {\n\t\t\t\t\t\t\tif ($utils.getEventKey(ev) == \"Escape\") {\n\t\t\t\t\t\t\t\tthis.set(\"active\", false);\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\t// Intercept ENTER if necessary\n\t\t\t\t\tthis._disposers.push($utils.addEventListener(document, \"keydown\", (ev: KeyboardEvent) => {\n\t\t\t\t\t\tif ($utils.getEventKey(ev) == \"Enter\" && this.get(\"multiLine\") === false) {\n\t\t\t\t\t\t\t// Single-line label, save instead of breaking into new line\n\t\t\t\t\t\t\tev.preventDefault();\n\t\t\t\t\t\t\tthis.set(\"active\", false);\n\t\t\t\t\t\t}\n\t\t\t\t\t}));\n\n\t\t\t\t\tthis.events.dispatch(\"inited\", {\n\t\t\t\t\t\ttype: \"inited\",\n\t\t\t\t\t\ttarget: this\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected _isInited(): boolean {\n\t\treturn this.getPrivate(\"textarea\") ? true : false;\n\t}\n\n\tprotected _startEditing() {\n\t\tif (!this._isInited()) {\n\t\t\tthis.events.once(\"inited\", () => {\n\t\t\t\tthis._startEditing();\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tthis._text.set(\"opacity\", 0);\n\t\tconst input = this.getPrivate(\"input\");\n\t\tconst textarea = this.getPrivate(\"textarea\");\n\t\tif (textarea) {\n\t\t\tif (this.get(\"text\", \"\") == \"\") {\n\t\t\t\tthis.set(\"text\", \" \");\n\t\t\t}\n\t\t\tinput.show(0);\n\t\t\tthis.setTimeout(() => {\n\t\t\t\t// size textarea to fit its actual content\n\t\t\t\tthis._syncStyle();\n\t\t\t\ttextarea.focus();\n\t\t\t}, 100);\n\t\t}\n\t}\n\n\tprotected _stopEditing() {\n\t\tif (!this._isInited()) {\n\t\t\tthis.events.once(\"inited\", () => {\n\t\t\t\tthis._stopEditing();\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tconst input = this.getPrivate(\"input\");\n\t\tconst textarea = this.getPrivate(\"textarea\");\n\t\tif (textarea) {\n\t\t\tthis.set(\"text\", textarea.value);\n\t\t\tinput.hide(0);\n\t\t\tthis._text.set(\"opacity\", 1);\n\t\t}\n\t}\n\n\tprotected _syncStyle() {\n\t\tconst input = this.getPrivate(\"input\");\n\t\tconst textarea = this.getPrivate(\"textarea\");\n\t\tconst el = input.getPrivate(\"htmlElement\");\n\t\tif (textarea && el) {\n\t\t\t// Set up HTML\n\n\t\t\t// Reset all styles\n\t\t\tconst computedStyles = window.getComputedStyle(textarea);\n\t\t\t$array.each(computedStyles, (style: any) => {\n\t\t\t\ttextarea.style[style] = \"initial\";\n\t\t\t});\n\n\t\t\t// Remove textarea attributes\n\t\t\ttextarea.style.color = this.get(\"fill\", color(0x000000)).toCSS(this.get(\"fillOpacity\", 1));\n\t\t\ttextarea.style.backgroundColor = \"rgba(0, 0, 0, 0)\";\n\t\t\ttextarea.style.border = \"none\";\n\t\t\ttextarea.style.outline = \"none\";\n\t\t\ttextarea.style.padding = \"0\";\n\n\t\t\t// Wrapping\n\t\t\ttextarea.wrap = \"off\";\n\t\t\ttextarea.style.resize = \"none\";\n\n\t\t\t// Place carret under mouse cursor\n\t\t\t// @todo\n\n\t\t\t// Size\n\t\t\ttextarea.style.overflow = \"hidden\";\n\t\t\tconst maxWidth = this.get(\"maxWidth\", 0) - this.get(\"paddingLeft\", 0) - this.get(\"paddingRight\", 0);\n\t\t\tif (maxWidth > 0) {\n\t\t\t\ttextarea.style.maxWidth = maxWidth + \"px\";\n\t\t\t}\n\t\t\telse {\n\t\t\t\t// The actual minWidth will be set on frameend\n\t\t\t\ttextarea.style.minWidth = \"\";\n\t\t\t}\n\n\t\t\ttextarea.style.height = \"auto\";\n\t\t\ttextarea.style.minHeight = textarea.scrollHeight + \"px\";\n\n\t\t\t// If width is explicitly set on a label, use it for textarea\n\t\t\tif (this.get(\"width\")) {\n\t\t\t\ttextarea.style.width = (this.width() - this.get(\"paddingLeft\", 0) - this.get(\"paddingRight\", 0)) + \"px\";\n\t\t\t\ttextarea.style.minWidth = \"\";\n\t\t\t}\n\n\t\t\t// Line height\n\t\t\tconst lineHeight = this.get(\"lineHeight\");\n\t\t\tif (!lineHeight) {\n\t\t\t\ttextarea.style.lineHeight = \"1.2\";\n\t\t\t}\n\t\t\telse if (lineHeight instanceof Percent) {\n\t\t\t\ttextarea.style.lineHeight = lineHeight.value + \"\";\n\t\t\t}\n\t\t\telse if ($type.isNumber(lineHeight)) {\n\t\t\t\ttextarea.style.lineHeight = lineHeight + \"\";\n\t\t\t}\n\n\t\t\t// Font stuff\n\t\t\tlet fontFamily: any = this.get(\"fontFamily\");\n\t\t\tif (!fontFamily) {\n\t\t\t\tfontFamily = getComputedStyle(el, \"font-family\").getPropertyValue(\"font-family\");\n\t\t\t}\n\t\t\ttextarea.style.fontFamily = fontFamily;\n\n\t\t\tlet fontSize: any = this.get(\"fontSize\");\n\t\t\tif (!fontSize) {\n\t\t\t\tfontSize = getComputedStyle(el, \"font-size\").getPropertyValue(\"font-size\");\n\t\t\t}\n\t\t\telse if ($type.isNumber(fontSize)) {\n\t\t\t\tfontSize = fontSize + \"px\";\n\t\t\t}\n\t\t\telse {\n\t\t\t\tfontSize = fontSize;\n\t\t\t}\n\t\t\ttextarea.style.fontSize = fontSize;\n\n\t\t\tlet fontWeight: any = this.get(\"fontWeight\");\n\t\t\tif (!fontWeight) {\n\t\t\t\tfontWeight = getComputedStyle(el, \"font-weight\").getPropertyValue(\"font-weight\");\n\t\t\t}\n\t\t\telse {\n\t\t\t\tfontWeight = fontWeight;\n\t\t\t}\n\t\t\ttextarea.style.fontWeight = fontWeight;\n\n\t\t\tlet fontStyle: any = this.get(\"fontStyle\");\n\t\t\tif (!fontStyle) {\n\t\t\t\tfontStyle = getComputedStyle(el, \"font-style\").getPropertyValue(\"font-style\");\n\t\t\t}\n\t\t\telse {\n\t\t\t\tfontStyle = fontStyle;\n\t\t\t}\n\t\t\ttextarea.style.fontStyle = fontStyle;\n\n\t\t\tconst oversizeBehavior = this.get(\"oversizedBehavior\");\n\t\t\tif (oversizeBehavior == \"wrap\") {\n\t\t\t\ttextarea.style.whiteSpace = \"pre-wrap\";\n\t\t\t}\n\t\t\telse {\n\t\t\t\ttextarea.style.whiteSpace = \"nowrap\";\n\t\t\t}\n\n\t\t\t// Adjust textarea postion based on textAlign setting\n\t\t\tthis._root.events.on(\"frameended\", () => {\n\n\t\t\t\tif (textarea.style.minWidth == \"\") {\n\t\t\t\t\ttextarea.style.minWidth = (textarea.scrollWidth + 20) + \"px\";\n\t\t\t\t}\n\n\t\t\t\tconst textAlign = this.get(\"textAlign\", \"start\");\n\t\t\t\tif (textAlign == \"center\") {\n\t\t\t\t\ttextarea.style.textAlign = \"center\";\n\t\t\t\t\tif (!el.style.transform.match(/translateX/) && !this.get(\"width\")) {\n\t\t\t\t\t\tel.style.transform += \" translateX(-50%)\";\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse if (textAlign == \"end\") {\n\t\t\t\t\ttextarea.style.textAlign = \"right\";\n\t\t\t\t\tif (!el.style.transform.match(/translateX/) && !this.get(\"width\")) {\n\t\t\t\t\t\tel.style.transform += \" translateX(-100%)\";\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\ttextarea.style.textAlign = textAlign;\n\t\t\t\t}\n\t\t\t});\n\n\t\t}\n\t}\n\n\tprotected _syncText() {\n\t\tconst textarea = this.getPrivate(\"textarea\");\n\t\tlet text = this.get(\"text\", \"\");\n\t\tif (text == \" \") {\n\t\t\ttext = \"\";\n\t\t}\n\t\tif (textarea) {\n\t\t\ttextarea.value = text;\n\t\t}\n\t}\n\n}"]}
@@ -12,6 +12,20 @@ export interface IHeatLegendSettings extends IContainerSettings {
12
12
  * Ending (highest value) color.
13
13
  */
14
14
  endColor: Color;
15
+ /**
16
+ * Starting (lowest value) opacity.
17
+ *
18
+ * @default 1
19
+ * @since 5.14.0
20
+ */
21
+ startOpacity: number;
22
+ /**
23
+ * Ending (lowest value) opacity.
24
+ *
25
+ * @default 1
26
+ * @since 5.14.0
27
+ */
28
+ endOpacity: number;
15
29
  /**
16
30
  * Start (lowest) value.
17
31
  */
@@ -1 +1 @@
1
- {"version":3,"file":"HeatLegend.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/render/HeatLegend.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAEhD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAEtE,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAO9C,MAAM,WAAW,mBAAoB,SAAQ,kBAAkB;IAE9D;;OAEG;IACH,UAAU,EAAE,KAAK,CAAC;IAElB;;OAEG;IACH,QAAQ,EAAE,KAAK,CAAC;IAEhB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;;OAIG;IACH,WAAW,EAAE,YAAY,GAAG,UAAU,CAAC;CAEvC;AAED,MAAM,WAAW,kBAAmB,SAAQ,iBAAiB;CAC5D;AAED;;;;GAIG;AACH,qBAAa,UAAW,SAAQ,SAAS;IAExC;;;;OAIG;IACH,SAAgB,cAAc,EAAE,SAAS,CAAqD;IAE9F;;;;OAIG;IACH,SAAgB,eAAe,EAAE,SAAS,CAAqD;IAE/F;;;;OAIG;IACH,SAAgB,UAAU,EAAE,KAAK,CAAsF;IAEvH;;;;OAIG;IACH,SAAgB,QAAQ,EAAE,KAAK,CAAoF;IAEnH,OAAc,SAAS,EAAE,MAAM,CAAgB;IAC/C,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAuD;IAE/E,SAAS,EAAE,mBAAmB,CAAC;IAC/B,gBAAgB,EAAE,kBAAkB,CAAC;IAGpD,SAAS,CAAC,SAAS;IAQnB;;OAEG;IACI,UAAU,IAAI,gBAAgB;IAMrC;;;;OAIG;IACH,SAAgB,OAAO,EAAE,YAAY,CAAC,gBAAgB,CAAC,CAKpD;IAGH;;;;;;;;OAQG;IACI,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK;IA2CrD,gBAAgB;CAkFvB"}
1
+ {"version":3,"file":"HeatLegend.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/render/HeatLegend.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAEhD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAEtE,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAO9C,MAAM,WAAW,mBAAoB,SAAQ,kBAAkB;IAE9D;;OAEG;IACH,UAAU,EAAE,KAAK,CAAC;IAElB;;OAEG;IACH,QAAQ,EAAE,KAAK,CAAC;IAEhB;;;;;OAKG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;;;;OAKG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;;OAIG;IACH,WAAW,EAAE,YAAY,GAAG,UAAU,CAAC;CAEvC;AAED,MAAM,WAAW,kBAAmB,SAAQ,iBAAiB;CAC5D;AAED;;;;GAIG;AACH,qBAAa,UAAW,SAAQ,SAAS;IAExC;;;;OAIG;IACH,SAAgB,cAAc,EAAE,SAAS,CAAqD;IAE9F;;;;OAIG;IACH,SAAgB,eAAe,EAAE,SAAS,CAAqD;IAE/F;;;;OAIG;IACH,SAAgB,UAAU,EAAE,KAAK,CAAsF;IAEvH;;;;OAIG;IACH,SAAgB,QAAQ,EAAE,KAAK,CAAoF;IAEnH,OAAc,SAAS,EAAE,MAAM,CAAgB;IAC/C,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAuD;IAE/E,SAAS,EAAE,mBAAmB,CAAC;IAC/B,gBAAgB,EAAE,kBAAkB,CAAC;IAGpD,SAAS,CAAC,SAAS;IAQnB;;OAEG;IACI,UAAU,IAAI,gBAAgB;IAMrC;;;;OAIG;IACH,SAAgB,OAAO,EAAE,YAAY,CAAC,gBAAgB,CAAC,CAKpD;IAGH;;;;;;;;OAQG;IACI,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK;IA2CrD,gBAAgB;CAiGvB"}
@@ -1,6 +1,6 @@
1
1
  import { Container } from "./Container";
2
2
  import { Label } from "../../core/render/Label";
3
- import { p100 } from "../../core/util/Percent";
3
+ import { percent, p100 } from "../../core/util/Percent";
4
4
  import { RoundedRectangle } from "../../core/render/RoundedRectangle";
5
5
  import { Template } from "../../core/util/Template";
6
6
  import { ListTemplate } from "../../core/util/List";
@@ -165,6 +165,8 @@ export class HeatLegend extends Container {
165
165
  const stepCount = this.get("stepCount", 1);
166
166
  const startColor = this.get("startColor");
167
167
  const endColor = this.get("endColor");
168
+ const startOpacity = this.get("startOpacity", 1);
169
+ const endOpacity = this.get("endOpacity", 1);
168
170
  this.markerContainer.children.clear();
169
171
  if (stepCount > 1) {
170
172
  for (let i = 0; i < stepCount; i++) {
@@ -176,14 +178,25 @@ export class HeatLegend extends Container {
176
178
  this.markerContainer.children.push(marker);
177
179
  }
178
180
  if (startColor && endColor) {
179
- marker.set("fill", Color.interpolate(i / stepCount, startColor, endColor));
181
+ marker.setAll({
182
+ fill: Color.interpolate(i / stepCount, startColor, endColor),
183
+ fillOpacity: percent(i / stepCount * 100).interpolate(startOpacity, endOpacity)
184
+ });
180
185
  }
181
186
  }
182
187
  }
183
188
  else if (stepCount == 1) {
184
189
  const marker = this.makeMarker();
185
190
  this.markerContainer.children.push(marker);
186
- const gradient = LinearGradient.new(this._root, { stops: [{ color: startColor }, { color: endColor }] });
191
+ const gradient = LinearGradient.new(this._root, {
192
+ stops: [{
193
+ color: startColor,
194
+ opacity: startOpacity
195
+ }, {
196
+ color: endColor,
197
+ opacity: endOpacity
198
+ }]
199
+ });
187
200
  if (orientation == "vertical") {
188
201
  gradient.set("rotation", 90);
189
202
  let stops = gradient.get("stops");
@@ -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,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAC/C,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;AAsD9C;;;;GAIG;AACH,MAAM,OAAO,UAAW,SAAQ,SAAS;IAAzC;;QAEC;;;;WAIG;QACH;;;;mBAA4C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;WAAC;QAE9F;;;;WAIG;QACH;;;;mBAA6C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;WAAC;QAE/F;;;;WAIG;QACH;;;;mBAAoC,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;WAAC;QAEvH;;;;WAIG;QACH;;;;mBAAkC,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;WAAC;QA0BnH;;;;WAIG;QACH;;;;mBAA0D,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;gBACvC,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;aAC1H,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAC3B,CAAC;WAAC;IAyIJ,CAAC;IApKU,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;YACvC,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,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,GAAG,SAAS,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC;qBAC3E;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,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC;gBAEzG,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;;AA1KD;;;;WAAkC,YAAY;GAAC;AAC/C;;;;WAA0C,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;GAAC","sourcesContent":["import type { IPoint } from \"../../core/util/IPoint\";\n\nimport { Container, IContainerSettings, IContainerPrivate } from \"./Container\";\nimport { Label } from \"../../core/render/Label\";\nimport { 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 * 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\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.set(\"fill\", Color.interpolate(i / stepCount, startColor, endColor));\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, { stops: [{ color: startColor }, { color: endColor }] });\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 (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"]}
@@ -0,0 +1,28 @@
1
+ import type { IPoint } from "../util/IPoint";
2
+ import { Container, IContainerSettings, IContainerPrivate } from "./Container";
3
+ import { Triangle } from "./Triangle";
4
+ import { OrthogonalLine } from "./OrthogonalLine";
5
+ export interface ILinkSettings extends IContainerSettings {
6
+ points?: Array<IPoint>;
7
+ cornerRadius?: number;
8
+ }
9
+ export interface ILinkPrivate extends IContainerPrivate {
10
+ }
11
+ /**
12
+ *
13
+ * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/graphics/} for more info
14
+ * @important
15
+ */
16
+ export declare class Link extends Container {
17
+ _settings: ILinkSettings;
18
+ _privateSettings: ILinkPrivate;
19
+ static className: string;
20
+ static classNames: Array<string>;
21
+ line: OrthogonalLine;
22
+ hitLine: OrthogonalLine;
23
+ startArrow: Triangle;
24
+ endArrow: Triangle;
25
+ protected _afterNew(): void;
26
+ _updateChildren(): void;
27
+ }
28
+ //# sourceMappingURL=Link.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Link.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Link.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAIlD,MAAM,WAAW,aAAc,SAAQ,kBAAkB;IACxD,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,YAAa,SAAQ,iBAAiB;CACtD;AAED;;;;GAIG;AACH,qBAAa,IAAK,SAAQ,SAAS;IAEnB,SAAS,EAAE,aAAa,CAAC;IACzB,gBAAgB,EAAE,YAAY,CAAC;IAE9C,OAAc,SAAS,EAAE,MAAM,CAAU;IACzC,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAiD;IAEjF,IAAI,EAAE,cAAc,CAA+E;IACnG,OAAO,EAAE,cAAc,CAA8E;IAErG,UAAU,EAAE,QAAQ,CAEvB;IAEG,QAAQ,EAAE,QAAQ,CAErB;IAEJ,SAAS,CAAC,SAAS;IAKZ,eAAe;CAmCtB"}