@amcharts/amcharts5 5.15.6 → 5.16.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 (742) hide show
  1. package/.internal/charts/flow/ArcDiagram.js +4 -24
  2. package/.internal/charts/flow/ArcDiagram.js.map +1 -1
  3. package/.internal/charts/flow/ArcDiagramLink.js +3 -30
  4. package/.internal/charts/flow/ArcDiagramLink.js.map +1 -1
  5. package/.internal/charts/flow/ArcDiagramNodes.js +5 -39
  6. package/.internal/charts/flow/ArcDiagramNodes.js.map +1 -1
  7. package/.internal/charts/flow/Chord.d.ts.map +1 -1
  8. package/.internal/charts/flow/Chord.js +22 -59
  9. package/.internal/charts/flow/Chord.js.map +1 -1
  10. package/.internal/charts/flow/ChordDirected.js +5 -30
  11. package/.internal/charts/flow/ChordDirected.js.map +1 -1
  12. package/.internal/charts/flow/ChordLink.js +2 -33
  13. package/.internal/charts/flow/ChordLink.js.map +1 -1
  14. package/.internal/charts/flow/ChordLinkDirected.js +2 -12
  15. package/.internal/charts/flow/ChordLinkDirected.js.map +1 -1
  16. package/.internal/charts/flow/ChordNodes.js +6 -45
  17. package/.internal/charts/flow/ChordNodes.js.map +1 -1
  18. package/.internal/charts/flow/ChordNonRibbon.js +2 -12
  19. package/.internal/charts/flow/ChordNonRibbon.js.map +1 -1
  20. package/.internal/charts/flow/Flow.js +8 -48
  21. package/.internal/charts/flow/Flow.js.map +1 -1
  22. package/.internal/charts/flow/FlowLink.js +2 -33
  23. package/.internal/charts/flow/FlowLink.js.map +1 -1
  24. package/.internal/charts/flow/FlowNode.js +2 -24
  25. package/.internal/charts/flow/FlowNode.js.map +1 -1
  26. package/.internal/charts/flow/FlowNodes.js +5 -30
  27. package/.internal/charts/flow/FlowNodes.js.map +1 -1
  28. package/.internal/charts/flow/Sankey.js +7 -48
  29. package/.internal/charts/flow/Sankey.js.map +1 -1
  30. package/.internal/charts/flow/SankeyLink.js +4 -24
  31. package/.internal/charts/flow/SankeyLink.js.map +1 -1
  32. package/.internal/charts/flow/SankeyNodes.js +3 -27
  33. package/.internal/charts/flow/SankeyNodes.js.map +1 -1
  34. package/.internal/charts/funnel/FunnelSeries.js +8 -48
  35. package/.internal/charts/funnel/FunnelSeries.js.map +1 -1
  36. package/.internal/charts/funnel/FunnelSlice.js +15 -90
  37. package/.internal/charts/funnel/FunnelSlice.js.map +1 -1
  38. package/.internal/charts/funnel/PictorialStackedSeries.js +5 -30
  39. package/.internal/charts/funnel/PictorialStackedSeries.js.map +1 -1
  40. package/.internal/charts/funnel/PyramidSeries.js +3 -24
  41. package/.internal/charts/funnel/PyramidSeries.js.map +1 -1
  42. package/.internal/charts/funnel/SlicedChart.js +2 -12
  43. package/.internal/charts/funnel/SlicedChart.js.map +1 -1
  44. package/.internal/charts/gantt/Gantt.js +57 -188
  45. package/.internal/charts/gantt/Gantt.js.map +1 -1
  46. package/.internal/charts/gantt/GanttCategoryAxis.js +9 -110
  47. package/.internal/charts/gantt/GanttCategoryAxis.js.map +1 -1
  48. package/.internal/charts/gantt/GanttCategoryAxisRenderer.js +27 -72
  49. package/.internal/charts/gantt/GanttCategoryAxisRenderer.js.map +1 -1
  50. package/.internal/charts/gantt/GanttDateAxis.js +2 -24
  51. package/.internal/charts/gantt/GanttDateAxis.js.map +1 -1
  52. package/.internal/charts/gantt/GanttDateAxisRenderer.js +2 -12
  53. package/.internal/charts/gantt/GanttDateAxisRenderer.js.map +1 -1
  54. package/.internal/charts/gantt/GanttSeries.js +49 -173
  55. package/.internal/charts/gantt/GanttSeries.js.map +1 -1
  56. package/.internal/charts/hierarchy/BreadcrumbBar.js +8 -29
  57. package/.internal/charts/hierarchy/BreadcrumbBar.js.map +1 -1
  58. package/.internal/charts/hierarchy/ForceDirected.js +10 -60
  59. package/.internal/charts/hierarchy/ForceDirected.js.map +1 -1
  60. package/.internal/charts/hierarchy/Hierarchy.js +11 -64
  61. package/.internal/charts/hierarchy/Hierarchy.js.map +1 -1
  62. package/.internal/charts/hierarchy/HierarchyLink.js +3 -24
  63. package/.internal/charts/hierarchy/HierarchyLink.js.map +1 -1
  64. package/.internal/charts/hierarchy/HierarchyNode.js +2 -30
  65. package/.internal/charts/hierarchy/HierarchyNode.js.map +1 -1
  66. package/.internal/charts/hierarchy/LinkedHierarchy.js +18 -58
  67. package/.internal/charts/hierarchy/LinkedHierarchy.js.map +1 -1
  68. package/.internal/charts/hierarchy/LinkedHierarchyNode.js +2 -12
  69. package/.internal/charts/hierarchy/LinkedHierarchyNode.js.map +1 -1
  70. package/.internal/charts/hierarchy/Pack.js +7 -38
  71. package/.internal/charts/hierarchy/Pack.js.map +1 -1
  72. package/.internal/charts/hierarchy/Partition.js +7 -32
  73. package/.internal/charts/hierarchy/Partition.js.map +1 -1
  74. package/.internal/charts/hierarchy/Sunburst.js +10 -40
  75. package/.internal/charts/hierarchy/Sunburst.js.map +1 -1
  76. package/.internal/charts/hierarchy/Tree.js +4 -30
  77. package/.internal/charts/hierarchy/Tree.js.map +1 -1
  78. package/.internal/charts/hierarchy/Treemap.d.ts +1 -1
  79. package/.internal/charts/hierarchy/Treemap.d.ts.map +1 -1
  80. package/.internal/charts/hierarchy/Treemap.js +17 -45
  81. package/.internal/charts/hierarchy/Treemap.js.map +1 -1
  82. package/.internal/charts/hierarchy/VoronoiTreemap.js +7 -32
  83. package/.internal/charts/hierarchy/VoronoiTreemap.js.map +1 -1
  84. package/.internal/charts/map/ClusteredPointSeries.d.ts +0 -2
  85. package/.internal/charts/map/ClusteredPointSeries.d.ts.map +1 -1
  86. package/.internal/charts/map/ClusteredPointSeries.js +128 -127
  87. package/.internal/charts/map/ClusteredPointSeries.js.map +1 -1
  88. package/.internal/charts/map/GraticuleSeries.js +3 -18
  89. package/.internal/charts/map/GraticuleSeries.js.map +1 -1
  90. package/.internal/charts/map/MapChart.d.ts +39 -1
  91. package/.internal/charts/map/MapChart.d.ts.map +1 -1
  92. package/.internal/charts/map/MapChart.js +168 -187
  93. package/.internal/charts/map/MapChart.js.map +1 -1
  94. package/.internal/charts/map/MapLine.js +3 -18
  95. package/.internal/charts/map/MapLine.js.map +1 -1
  96. package/.internal/charts/map/MapLineSeries.js +4 -24
  97. package/.internal/charts/map/MapLineSeries.js.map +1 -1
  98. package/.internal/charts/map/MapPointSeries.d.ts.map +1 -1
  99. package/.internal/charts/map/MapPointSeries.js +5 -24
  100. package/.internal/charts/map/MapPointSeries.js.map +1 -1
  101. package/.internal/charts/map/MapPolygon.js +3 -27
  102. package/.internal/charts/map/MapPolygon.js.map +1 -1
  103. package/.internal/charts/map/MapPolygonSeries.js +4 -24
  104. package/.internal/charts/map/MapPolygonSeries.js.map +1 -1
  105. package/.internal/charts/map/MapSeries.js +7 -42
  106. package/.internal/charts/map/MapSeries.js.map +1 -1
  107. package/.internal/charts/map/ZoomControl.js +2 -12
  108. package/.internal/charts/map/ZoomControl.js.map +1 -1
  109. package/.internal/charts/percent/PercentChart.js +2 -12
  110. package/.internal/charts/percent/PercentChart.js.map +1 -1
  111. package/.internal/charts/percent/PercentSeries.js +11 -66
  112. package/.internal/charts/percent/PercentSeries.js.map +1 -1
  113. package/.internal/charts/pie/PieChart.js +3 -18
  114. package/.internal/charts/pie/PieChart.js.map +1 -1
  115. package/.internal/charts/pie/PieSeries.js +2 -12
  116. package/.internal/charts/pie/PieSeries.js.map +1 -1
  117. package/.internal/charts/radar/AxisRendererCircular.js +9 -34
  118. package/.internal/charts/radar/AxisRendererCircular.js.map +1 -1
  119. package/.internal/charts/radar/AxisRendererRadial.js +6 -26
  120. package/.internal/charts/radar/AxisRendererRadial.js.map +1 -1
  121. package/.internal/charts/radar/ClockHand.js +4 -24
  122. package/.internal/charts/radar/ClockHand.js.map +1 -1
  123. package/.internal/charts/radar/RadarChart.js +5 -30
  124. package/.internal/charts/radar/RadarChart.js.map +1 -1
  125. package/.internal/charts/radar/RadarColumnSeries.js +6 -21
  126. package/.internal/charts/radar/RadarColumnSeries.js.map +1 -1
  127. package/.internal/charts/radar/RadarCursor.js +3 -18
  128. package/.internal/charts/radar/RadarCursor.js.map +1 -1
  129. package/.internal/charts/radar/RadarLineSeries.js +2 -12
  130. package/.internal/charts/radar/RadarLineSeries.js.map +1 -1
  131. package/.internal/charts/radar/SmoothedRadarLineSeries.js +2 -12
  132. package/.internal/charts/radar/SmoothedRadarLineSeries.js.map +1 -1
  133. package/.internal/charts/stock/PanelControls.js +26 -56
  134. package/.internal/charts/stock/PanelControls.js.map +1 -1
  135. package/.internal/charts/stock/SettingsModal.js +3 -30
  136. package/.internal/charts/stock/SettingsModal.js.map +1 -1
  137. package/.internal/charts/stock/StockChart.js +11 -108
  138. package/.internal/charts/stock/StockChart.js.map +1 -1
  139. package/.internal/charts/stock/StockLegend.js +14 -34
  140. package/.internal/charts/stock/StockLegend.js.map +1 -1
  141. package/.internal/charts/stock/StockPanel.js +3 -38
  142. package/.internal/charts/stock/StockPanel.js.map +1 -1
  143. package/.internal/charts/stock/drawing/AverageSeries.js +3 -18
  144. package/.internal/charts/stock/drawing/AverageSeries.js.map +1 -1
  145. package/.internal/charts/stock/drawing/CalloutSeries.js +3 -18
  146. package/.internal/charts/stock/drawing/CalloutSeries.js.map +1 -1
  147. package/.internal/charts/stock/drawing/DoodleSeries.js +5 -42
  148. package/.internal/charts/stock/drawing/DoodleSeries.js.map +1 -1
  149. package/.internal/charts/stock/drawing/DrawingSeries.js +32 -200
  150. package/.internal/charts/stock/drawing/DrawingSeries.js.map +1 -1
  151. package/.internal/charts/stock/drawing/EllipseSeries.js +7 -42
  152. package/.internal/charts/stock/drawing/EllipseSeries.js.map +1 -1
  153. package/.internal/charts/stock/drawing/FibonacciSeries.js +7 -42
  154. package/.internal/charts/stock/drawing/FibonacciSeries.js.map +1 -1
  155. package/.internal/charts/stock/drawing/FibonacciTimezoneSeries.js +3 -18
  156. package/.internal/charts/stock/drawing/FibonacciTimezoneSeries.js.map +1 -1
  157. package/.internal/charts/stock/drawing/HorizontalLineSeries.js +3 -18
  158. package/.internal/charts/stock/drawing/HorizontalLineSeries.js.map +1 -1
  159. package/.internal/charts/stock/drawing/HorizontalRaySeries.js +3 -18
  160. package/.internal/charts/stock/drawing/HorizontalRaySeries.js.map +1 -1
  161. package/.internal/charts/stock/drawing/IconSeries.js +3 -24
  162. package/.internal/charts/stock/drawing/IconSeries.js.map +1 -1
  163. package/.internal/charts/stock/drawing/LabelSeries.js +5 -36
  164. package/.internal/charts/stock/drawing/LabelSeries.js.map +1 -1
  165. package/.internal/charts/stock/drawing/LineArrowSeries.js +4 -24
  166. package/.internal/charts/stock/drawing/LineArrowSeries.js.map +1 -1
  167. package/.internal/charts/stock/drawing/Measure.js +6 -36
  168. package/.internal/charts/stock/drawing/Measure.js.map +1 -1
  169. package/.internal/charts/stock/drawing/ParallelChannelSeries.js +5 -30
  170. package/.internal/charts/stock/drawing/ParallelChannelSeries.js.map +1 -1
  171. package/.internal/charts/stock/drawing/PolylineSeries.js +4 -24
  172. package/.internal/charts/stock/drawing/PolylineSeries.js.map +1 -1
  173. package/.internal/charts/stock/drawing/QuadrantLineSeries.js +3 -18
  174. package/.internal/charts/stock/drawing/QuadrantLineSeries.js.map +1 -1
  175. package/.internal/charts/stock/drawing/RectangleSeries.js +4 -24
  176. package/.internal/charts/stock/drawing/RectangleSeries.js.map +1 -1
  177. package/.internal/charts/stock/drawing/RegressionSeries.js +3 -18
  178. package/.internal/charts/stock/drawing/RegressionSeries.js.map +1 -1
  179. package/.internal/charts/stock/drawing/SimpleLineSeries.js +9 -54
  180. package/.internal/charts/stock/drawing/SimpleLineSeries.js.map +1 -1
  181. package/.internal/charts/stock/drawing/TrendLineSeries.js +3 -18
  182. package/.internal/charts/stock/drawing/TrendLineSeries.js.map +1 -1
  183. package/.internal/charts/stock/drawing/VerticalLineSeries.js +3 -18
  184. package/.internal/charts/stock/drawing/VerticalLineSeries.js.map +1 -1
  185. package/.internal/charts/stock/indicators/AccelerationBands.js +23 -56
  186. package/.internal/charts/stock/indicators/AccelerationBands.js.map +1 -1
  187. package/.internal/charts/stock/indicators/AccumulationDistribution.js +11 -26
  188. package/.internal/charts/stock/indicators/AccumulationDistribution.js.map +1 -1
  189. package/.internal/charts/stock/indicators/AccumulativeSwingIndex.js +15 -42
  190. package/.internal/charts/stock/indicators/AccumulativeSwingIndex.js.map +1 -1
  191. package/.internal/charts/stock/indicators/Aroon.js +15 -30
  192. package/.internal/charts/stock/indicators/Aroon.js.map +1 -1
  193. package/.internal/charts/stock/indicators/AverageTrueRange.js +11 -26
  194. package/.internal/charts/stock/indicators/AverageTrueRange.js.map +1 -1
  195. package/.internal/charts/stock/indicators/AwesomeOscillator.js +11 -26
  196. package/.internal/charts/stock/indicators/AwesomeOscillator.js.map +1 -1
  197. package/.internal/charts/stock/indicators/BollingerBands.js +33 -66
  198. package/.internal/charts/stock/indicators/BollingerBands.js.map +1 -1
  199. package/.internal/charts/stock/indicators/BullBearPower.js +11 -26
  200. package/.internal/charts/stock/indicators/BullBearPower.js.map +1 -1
  201. package/.internal/charts/stock/indicators/ChaikinMoneyFlow.js +11 -26
  202. package/.internal/charts/stock/indicators/ChaikinMoneyFlow.js.map +1 -1
  203. package/.internal/charts/stock/indicators/ChaikinOscillator.js +15 -30
  204. package/.internal/charts/stock/indicators/ChaikinOscillator.js.map +1 -1
  205. package/.internal/charts/stock/indicators/ChartIndicator.js +3 -54
  206. package/.internal/charts/stock/indicators/ChartIndicator.js.map +1 -1
  207. package/.internal/charts/stock/indicators/CommodityChannelIndex.js +2 -12
  208. package/.internal/charts/stock/indicators/CommodityChannelIndex.js.map +1 -1
  209. package/.internal/charts/stock/indicators/DisparityIndex.js +21 -36
  210. package/.internal/charts/stock/indicators/DisparityIndex.js.map +1 -1
  211. package/.internal/charts/stock/indicators/HeikinAshi.js +11 -26
  212. package/.internal/charts/stock/indicators/HeikinAshi.js.map +1 -1
  213. package/.internal/charts/stock/indicators/Indicator.js +4 -42
  214. package/.internal/charts/stock/indicators/Indicator.js.map +1 -1
  215. package/.internal/charts/stock/indicators/MACD.js +31 -64
  216. package/.internal/charts/stock/indicators/MACD.js.map +1 -1
  217. package/.internal/charts/stock/indicators/MACross.js +19 -34
  218. package/.internal/charts/stock/indicators/MACross.js.map +1 -1
  219. package/.internal/charts/stock/indicators/MedianPrice.js +11 -26
  220. package/.internal/charts/stock/indicators/MedianPrice.js.map +1 -1
  221. package/.internal/charts/stock/indicators/Momentum.js +18 -33
  222. package/.internal/charts/stock/indicators/Momentum.js.map +1 -1
  223. package/.internal/charts/stock/indicators/MovingAverage.js +25 -40
  224. package/.internal/charts/stock/indicators/MovingAverage.js.map +1 -1
  225. package/.internal/charts/stock/indicators/MovingAverageDeviation.js +33 -48
  226. package/.internal/charts/stock/indicators/MovingAverageDeviation.js.map +1 -1
  227. package/.internal/charts/stock/indicators/MovingAverageEnvelope.js +42 -75
  228. package/.internal/charts/stock/indicators/MovingAverageEnvelope.js.map +1 -1
  229. package/.internal/charts/stock/indicators/OnBalanceVolume.js +7 -22
  230. package/.internal/charts/stock/indicators/OnBalanceVolume.js.map +1 -1
  231. package/.internal/charts/stock/indicators/OverboughtOversold.js +19 -64
  232. package/.internal/charts/stock/indicators/OverboughtOversold.js.map +1 -1
  233. package/.internal/charts/stock/indicators/PVT.js +7 -22
  234. package/.internal/charts/stock/indicators/PVT.js.map +1 -1
  235. package/.internal/charts/stock/indicators/RelativeStrengthIndex.js +2 -24
  236. package/.internal/charts/stock/indicators/RelativeStrengthIndex.js.map +1 -1
  237. package/.internal/charts/stock/indicators/StandardDeviation.js +16 -31
  238. package/.internal/charts/stock/indicators/StandardDeviation.js.map +1 -1
  239. package/.internal/charts/stock/indicators/StochasticMomentumIndex.js +2 -24
  240. package/.internal/charts/stock/indicators/StochasticMomentumIndex.js.map +1 -1
  241. package/.internal/charts/stock/indicators/StochasticOscillator.js +2 -24
  242. package/.internal/charts/stock/indicators/StochasticOscillator.js.map +1 -1
  243. package/.internal/charts/stock/indicators/SuperTrend.js +19 -52
  244. package/.internal/charts/stock/indicators/SuperTrend.js.map +1 -1
  245. package/.internal/charts/stock/indicators/Trix.js +20 -49
  246. package/.internal/charts/stock/indicators/Trix.js.map +1 -1
  247. package/.internal/charts/stock/indicators/TypicalPrice.js +11 -26
  248. package/.internal/charts/stock/indicators/TypicalPrice.js.map +1 -1
  249. package/.internal/charts/stock/indicators/VWAP.js +16 -31
  250. package/.internal/charts/stock/indicators/VWAP.js.map +1 -1
  251. package/.internal/charts/stock/indicators/Volume.js +11 -26
  252. package/.internal/charts/stock/indicators/Volume.js.map +1 -1
  253. package/.internal/charts/stock/indicators/VolumeProfile.js +32 -65
  254. package/.internal/charts/stock/indicators/VolumeProfile.js.map +1 -1
  255. package/.internal/charts/stock/indicators/WilliamsR.js +2 -12
  256. package/.internal/charts/stock/indicators/WilliamsR.js.map +1 -1
  257. package/.internal/charts/stock/indicators/ZigZag.js +15 -30
  258. package/.internal/charts/stock/indicators/ZigZag.js.map +1 -1
  259. package/.internal/charts/stock/toolbar/ColorControl.js +2 -12
  260. package/.internal/charts/stock/toolbar/ColorControl.js.map +1 -1
  261. package/.internal/charts/stock/toolbar/ComparisonControl.js +2 -12
  262. package/.internal/charts/stock/toolbar/ComparisonControl.js.map +1 -1
  263. package/.internal/charts/stock/toolbar/DataSaveControl.js +2 -12
  264. package/.internal/charts/stock/toolbar/DataSaveControl.js.map +1 -1
  265. package/.internal/charts/stock/toolbar/DateRangeSelector.js +2 -12
  266. package/.internal/charts/stock/toolbar/DateRangeSelector.js.map +1 -1
  267. package/.internal/charts/stock/toolbar/DrawingControl.js +4 -24
  268. package/.internal/charts/stock/toolbar/DrawingControl.js.map +1 -1
  269. package/.internal/charts/stock/toolbar/DrawingToolControl.js +2 -12
  270. package/.internal/charts/stock/toolbar/DrawingToolControl.js.map +1 -1
  271. package/.internal/charts/stock/toolbar/Dropdown.js +2 -12
  272. package/.internal/charts/stock/toolbar/Dropdown.js.map +1 -1
  273. package/.internal/charts/stock/toolbar/DropdownColors.js +2 -12
  274. package/.internal/charts/stock/toolbar/DropdownColors.js.map +1 -1
  275. package/.internal/charts/stock/toolbar/DropdownControl.js +2 -12
  276. package/.internal/charts/stock/toolbar/DropdownControl.js.map +1 -1
  277. package/.internal/charts/stock/toolbar/DropdownList.js +2 -21
  278. package/.internal/charts/stock/toolbar/DropdownList.js.map +1 -1
  279. package/.internal/charts/stock/toolbar/DropdownListControl.js +2 -12
  280. package/.internal/charts/stock/toolbar/DropdownListControl.js.map +1 -1
  281. package/.internal/charts/stock/toolbar/IconControl.js +2 -12
  282. package/.internal/charts/stock/toolbar/IconControl.js.map +1 -1
  283. package/.internal/charts/stock/toolbar/IndicatorControl.js +2 -12
  284. package/.internal/charts/stock/toolbar/IndicatorControl.js.map +1 -1
  285. package/.internal/charts/stock/toolbar/IntervalControl.js +2 -12
  286. package/.internal/charts/stock/toolbar/IntervalControl.js.map +1 -1
  287. package/.internal/charts/stock/toolbar/PeriodSelector.js +2 -27
  288. package/.internal/charts/stock/toolbar/PeriodSelector.js.map +1 -1
  289. package/.internal/charts/stock/toolbar/ResetControl.js +2 -12
  290. package/.internal/charts/stock/toolbar/ResetControl.js.map +1 -1
  291. package/.internal/charts/stock/toolbar/SeriesTypeControl.js +2 -12
  292. package/.internal/charts/stock/toolbar/SeriesTypeControl.js.map +1 -1
  293. package/.internal/charts/stock/toolbar/SettingsControl.js +2 -12
  294. package/.internal/charts/stock/toolbar/SettingsControl.js.map +1 -1
  295. package/.internal/charts/stock/toolbar/StockControl.js +2 -12
  296. package/.internal/charts/stock/toolbar/StockControl.js.map +1 -1
  297. package/.internal/charts/stock/toolbar/StockIcons.js +52 -57
  298. package/.internal/charts/stock/toolbar/StockIcons.js.map +1 -1
  299. package/.internal/charts/stock/toolbar/StockToolbar.js +2 -21
  300. package/.internal/charts/stock/toolbar/StockToolbar.js.map +1 -1
  301. package/.internal/charts/timeline/AxisRendererCurveX.js +11 -46
  302. package/.internal/charts/timeline/AxisRendererCurveX.js.map +1 -1
  303. package/.internal/charts/timeline/AxisRendererCurveY.js +6 -26
  304. package/.internal/charts/timeline/AxisRendererCurveY.js.map +1 -1
  305. package/.internal/charts/timeline/CurveChart.js +3 -18
  306. package/.internal/charts/timeline/CurveChart.js.map +1 -1
  307. package/.internal/charts/timeline/CurveColumnSeries.js +6 -21
  308. package/.internal/charts/timeline/CurveColumnSeries.js.map +1 -1
  309. package/.internal/charts/timeline/CurveCursor.js +2 -12
  310. package/.internal/charts/timeline/CurveCursor.js.map +1 -1
  311. package/.internal/charts/timeline/CurveLineSeries.js +2 -12
  312. package/.internal/charts/timeline/CurveLineSeries.js.map +1 -1
  313. package/.internal/charts/timeline/SerpentineChart.js +2 -12
  314. package/.internal/charts/timeline/SerpentineChart.js.map +1 -1
  315. package/.internal/charts/timeline/SpiralChart.js +2 -12
  316. package/.internal/charts/timeline/SpiralChart.js.map +1 -1
  317. package/.internal/charts/venn/Venn.js +8 -54
  318. package/.internal/charts/venn/Venn.js.map +1 -1
  319. package/.internal/charts/wordcloud/WordCloud.d.ts +1 -1
  320. package/.internal/charts/wordcloud/WordCloud.d.ts.map +1 -1
  321. package/.internal/charts/wordcloud/WordCloud.js +26 -89
  322. package/.internal/charts/wordcloud/WordCloud.js.map +1 -1
  323. package/.internal/charts/xy/XYChart.js +23 -149
  324. package/.internal/charts/xy/XYChart.js.map +1 -1
  325. package/.internal/charts/xy/XYChartScrollbar.js +15 -35
  326. package/.internal/charts/xy/XYChartScrollbar.js.map +1 -1
  327. package/.internal/charts/xy/XYCursor.js +16 -93
  328. package/.internal/charts/xy/XYCursor.js.map +1 -1
  329. package/.internal/charts/xy/axes/Axis.js +27 -166
  330. package/.internal/charts/xy/axes/Axis.js.map +1 -1
  331. package/.internal/charts/xy/axes/AxisBullet.js +2 -24
  332. package/.internal/charts/xy/axes/AxisBullet.js.map +1 -1
  333. package/.internal/charts/xy/axes/AxisLabel.js +3 -18
  334. package/.internal/charts/xy/axes/AxisLabel.js.map +1 -1
  335. package/.internal/charts/xy/axes/AxisLabelRadial.js +3 -18
  336. package/.internal/charts/xy/axes/AxisLabelRadial.js.map +1 -1
  337. package/.internal/charts/xy/axes/AxisRenderer.js +21 -131
  338. package/.internal/charts/xy/axes/AxisRenderer.js.map +1 -1
  339. package/.internal/charts/xy/axes/AxisRendererX.js +3 -18
  340. package/.internal/charts/xy/axes/AxisRendererX.js.map +1 -1
  341. package/.internal/charts/xy/axes/AxisRendererY.js +3 -24
  342. package/.internal/charts/xy/axes/AxisRendererY.js.map +1 -1
  343. package/.internal/charts/xy/axes/AxisTick.js +3 -18
  344. package/.internal/charts/xy/axes/AxisTick.js.map +1 -1
  345. package/.internal/charts/xy/axes/CategoryAxis.js +4 -24
  346. package/.internal/charts/xy/axes/CategoryAxis.js.map +1 -1
  347. package/.internal/charts/xy/axes/CategoryDateAxis.js +4 -24
  348. package/.internal/charts/xy/axes/CategoryDateAxis.js.map +1 -1
  349. package/.internal/charts/xy/axes/DateAxis.d.ts.map +1 -1
  350. package/.internal/charts/xy/axes/DateAxis.js +16 -57
  351. package/.internal/charts/xy/axes/DateAxis.js.map +1 -1
  352. package/.internal/charts/xy/axes/DurationAxis.js +5 -30
  353. package/.internal/charts/xy/axes/DurationAxis.js.map +1 -1
  354. package/.internal/charts/xy/axes/EditableAxisLabel.js +3 -18
  355. package/.internal/charts/xy/axes/EditableAxisLabel.js.map +1 -1
  356. package/.internal/charts/xy/axes/GaplessDateAxis.d.ts.map +1 -1
  357. package/.internal/charts/xy/axes/GaplessDateAxis.js +16 -40
  358. package/.internal/charts/xy/axes/GaplessDateAxis.js.map +1 -1
  359. package/.internal/charts/xy/axes/Grid.js +2 -12
  360. package/.internal/charts/xy/axes/Grid.js.map +1 -1
  361. package/.internal/charts/xy/axes/ValueAxis.d.ts.map +1 -1
  362. package/.internal/charts/xy/axes/ValueAxis.js +15 -73
  363. package/.internal/charts/xy/axes/ValueAxis.js.map +1 -1
  364. package/.internal/charts/xy/series/BaseColumnSeries.js +5 -30
  365. package/.internal/charts/xy/series/BaseColumnSeries.js.map +1 -1
  366. package/.internal/charts/xy/series/Candlestick.js +2 -12
  367. package/.internal/charts/xy/series/Candlestick.js.map +1 -1
  368. package/.internal/charts/xy/series/CandlestickSeries.js +7 -22
  369. package/.internal/charts/xy/series/CandlestickSeries.js.map +1 -1
  370. package/.internal/charts/xy/series/ColumnSeries.js +8 -33
  371. package/.internal/charts/xy/series/ColumnSeries.js.map +1 -1
  372. package/.internal/charts/xy/series/LineSeries.d.ts.map +1 -1
  373. package/.internal/charts/xy/series/LineSeries.js +21 -95
  374. package/.internal/charts/xy/series/LineSeries.js.map +1 -1
  375. package/.internal/charts/xy/series/OHLC.js +2 -12
  376. package/.internal/charts/xy/series/OHLC.js.map +1 -1
  377. package/.internal/charts/xy/series/OHLCSeries.js +7 -22
  378. package/.internal/charts/xy/series/OHLCSeries.js.map +1 -1
  379. package/.internal/charts/xy/series/SmoothedXLineSeries.js +2 -12
  380. package/.internal/charts/xy/series/SmoothedXLineSeries.js.map +1 -1
  381. package/.internal/charts/xy/series/SmoothedXYLineSeries.js +2 -12
  382. package/.internal/charts/xy/series/SmoothedXYLineSeries.js.map +1 -1
  383. package/.internal/charts/xy/series/SmoothedYLineSeries.js +2 -12
  384. package/.internal/charts/xy/series/SmoothedYLineSeries.js.map +1 -1
  385. package/.internal/charts/xy/series/StepLineSeries.js +2 -12
  386. package/.internal/charts/xy/series/StepLineSeries.js.map +1 -1
  387. package/.internal/charts/xy/series/XYSeries.d.ts.map +1 -1
  388. package/.internal/charts/xy/series/XYSeries.js +45 -286
  389. package/.internal/charts/xy/series/XYSeries.js.map +1 -1
  390. package/.internal/core/Registry.js +5 -30
  391. package/.internal/core/Registry.js.map +1 -1
  392. package/.internal/core/Root.d.ts +1 -1
  393. package/.internal/core/Root.d.ts.map +1 -1
  394. package/.internal/core/Root.js +49 -407
  395. package/.internal/core/Root.js.map +1 -1
  396. package/.internal/core/Theme.js +1 -12
  397. package/.internal/core/Theme.js.map +1 -1
  398. package/.internal/core/render/Bullet.js +2 -31
  399. package/.internal/core/render/Bullet.js.map +1 -1
  400. package/.internal/core/render/Button.js +2 -12
  401. package/.internal/core/render/Button.js.map +1 -1
  402. package/.internal/core/render/Chart.js +4 -24
  403. package/.internal/core/render/Chart.js.map +1 -1
  404. package/.internal/core/render/Circle.js +2 -12
  405. package/.internal/core/render/Circle.js.map +1 -1
  406. package/.internal/core/render/Component.js +11 -135
  407. package/.internal/core/render/Component.js.map +1 -1
  408. package/.internal/core/render/ConfirmButton.js +2 -21
  409. package/.internal/core/render/ConfirmButton.js.map +1 -1
  410. package/.internal/core/render/Container.js +13 -108
  411. package/.internal/core/render/Container.js.map +1 -1
  412. package/.internal/core/render/EditableLabel.js +2 -21
  413. package/.internal/core/render/EditableLabel.js.map +1 -1
  414. package/.internal/core/render/Ellipse.js +2 -12
  415. package/.internal/core/render/Ellipse.js.map +1 -1
  416. package/.internal/core/render/Graphics.js +4 -24
  417. package/.internal/core/render/Graphics.js.map +1 -1
  418. package/.internal/core/render/GridLayout.js +2 -12
  419. package/.internal/core/render/GridLayout.js.map +1 -1
  420. package/.internal/core/render/HeatLegend.js +9 -44
  421. package/.internal/core/render/HeatLegend.js.map +1 -1
  422. package/.internal/core/render/HorizontalLayout.js +2 -12
  423. package/.internal/core/render/HorizontalLayout.js.map +1 -1
  424. package/.internal/core/render/Label.js +41 -62
  425. package/.internal/core/render/Label.js.map +1 -1
  426. package/.internal/core/render/Layout.js +2 -12
  427. package/.internal/core/render/Layout.js.map +1 -1
  428. package/.internal/core/render/Legend.js +22 -57
  429. package/.internal/core/render/Legend.js.map +1 -1
  430. package/.internal/core/render/Line.js +2 -12
  431. package/.internal/core/render/Line.js.map +1 -1
  432. package/.internal/core/render/Link.js +10 -40
  433. package/.internal/core/render/Link.js.map +1 -1
  434. package/.internal/core/render/MonotoneXTension.js +8 -54
  435. package/.internal/core/render/MonotoneXTension.js.map +1 -1
  436. package/.internal/core/render/MonotoneYTension.js +8 -54
  437. package/.internal/core/render/MonotoneYTension.js.map +1 -1
  438. package/.internal/core/render/NumericStepper.js +6 -36
  439. package/.internal/core/render/NumericStepper.js.map +1 -1
  440. package/.internal/core/render/OrthogonalLine.js +2 -12
  441. package/.internal/core/render/OrthogonalLine.js.map +1 -1
  442. package/.internal/core/render/Picture.js +3 -18
  443. package/.internal/core/render/Picture.js.map +1 -1
  444. package/.internal/core/render/PointedRectangle.js +2 -12
  445. package/.internal/core/render/PointedRectangle.js.map +1 -1
  446. package/.internal/core/render/Polygon.js +2 -21
  447. package/.internal/core/render/Polygon.js.map +1 -1
  448. package/.internal/core/render/ProgressPie.js +8 -38
  449. package/.internal/core/render/ProgressPie.js.map +1 -1
  450. package/.internal/core/render/RadialLabel.js +3 -18
  451. package/.internal/core/render/RadialLabel.js.map +1 -1
  452. package/.internal/core/render/RadialText.js +3 -18
  453. package/.internal/core/render/RadialText.js.map +1 -1
  454. package/.internal/core/render/Rectangle.js +2 -12
  455. package/.internal/core/render/Rectangle.js.map +1 -1
  456. package/.internal/core/render/RoundedRectangle.js +2 -12
  457. package/.internal/core/render/RoundedRectangle.js.map +1 -1
  458. package/.internal/core/render/Scrollbar.js +9 -60
  459. package/.internal/core/render/Scrollbar.js.map +1 -1
  460. package/.internal/core/render/SerialChart.js +4 -24
  461. package/.internal/core/render/SerialChart.js.map +1 -1
  462. package/.internal/core/render/Series.js +8 -69
  463. package/.internal/core/render/Series.js.map +1 -1
  464. package/.internal/core/render/Slice.js +5 -30
  465. package/.internal/core/render/Slice.js.map +1 -1
  466. package/.internal/core/render/Slider.js +2 -12
  467. package/.internal/core/render/Slider.js.map +1 -1
  468. package/.internal/core/render/Sprite.js +86 -249
  469. package/.internal/core/render/Sprite.js.map +1 -1
  470. package/.internal/core/render/SpriteResizer.js +11 -72
  471. package/.internal/core/render/SpriteResizer.js.map +1 -1
  472. package/.internal/core/render/Star.js +2 -12
  473. package/.internal/core/render/Star.js.map +1 -1
  474. package/.internal/core/render/Text.js +35 -66
  475. package/.internal/core/render/Text.js.map +1 -1
  476. package/.internal/core/render/Tick.js +2 -12
  477. package/.internal/core/render/Tick.js.map +1 -1
  478. package/.internal/core/render/Tooltip.js +7 -78
  479. package/.internal/core/render/Tooltip.js.map +1 -1
  480. package/.internal/core/render/Triangle.js +2 -12
  481. package/.internal/core/render/Triangle.js.map +1 -1
  482. package/.internal/core/render/VerticalLayout.js +2 -12
  483. package/.internal/core/render/VerticalLayout.js.map +1 -1
  484. package/.internal/core/render/ZoomTools.js +5 -42
  485. package/.internal/core/render/ZoomTools.js.map +1 -1
  486. package/.internal/core/render/ZoomableContainer.js +17 -82
  487. package/.internal/core/render/ZoomableContainer.js.map +1 -1
  488. package/.internal/core/render/backend/CanvasRenderer.js +142 -1205
  489. package/.internal/core/render/backend/CanvasRenderer.js.map +1 -1
  490. package/.internal/core/render/gradients/Gradient.js +2 -12
  491. package/.internal/core/render/gradients/Gradient.js.map +1 -1
  492. package/.internal/core/render/gradients/LinearGradient.js +2 -12
  493. package/.internal/core/render/gradients/LinearGradient.js.map +1 -1
  494. package/.internal/core/render/gradients/RadialGradient.js +2 -12
  495. package/.internal/core/render/gradients/RadialGradient.js.map +1 -1
  496. package/.internal/core/render/patterns/CirclePattern.js +2 -12
  497. package/.internal/core/render/patterns/CirclePattern.js.map +1 -1
  498. package/.internal/core/render/patterns/GrainPattern.js +5 -30
  499. package/.internal/core/render/patterns/GrainPattern.js.map +1 -1
  500. package/.internal/core/render/patterns/LinePattern.js +2 -12
  501. package/.internal/core/render/patterns/LinePattern.js.map +1 -1
  502. package/.internal/core/render/patterns/PathPattern.js +2 -12
  503. package/.internal/core/render/patterns/PathPattern.js.map +1 -1
  504. package/.internal/core/render/patterns/Pattern.js +5 -36
  505. package/.internal/core/render/patterns/Pattern.js.map +1 -1
  506. package/.internal/core/render/patterns/PicturePattern.js +2 -21
  507. package/.internal/core/render/patterns/PicturePattern.js.map +1 -1
  508. package/.internal/core/render/patterns/RectanglePattern.js +2 -12
  509. package/.internal/core/render/patterns/RectanglePattern.js.map +1 -1
  510. package/.internal/core/util/Animation.js +6 -54
  511. package/.internal/core/util/Animation.js.map +1 -1
  512. package/.internal/core/util/Array.d.ts.map +1 -1
  513. package/.internal/core/util/Array.js +5 -2
  514. package/.internal/core/util/Array.js.map +1 -1
  515. package/.internal/core/util/Benchmark.js +3 -18
  516. package/.internal/core/util/Benchmark.js.map +1 -1
  517. package/.internal/core/util/Children.js +1 -18
  518. package/.internal/core/util/Children.js.map +1 -1
  519. package/.internal/core/util/Color.js +0 -6
  520. package/.internal/core/util/Color.js.map +1 -1
  521. package/.internal/core/util/ColorSet.js +2 -12
  522. package/.internal/core/util/ColorSet.js.map +1 -1
  523. package/.internal/core/util/Counter.js +2 -18
  524. package/.internal/core/util/Counter.js.map +1 -1
  525. package/.internal/core/util/Data.js +0 -26
  526. package/.internal/core/util/Data.js.map +1 -1
  527. package/.internal/core/util/DataProcessor.js +5 -30
  528. package/.internal/core/util/DataProcessor.js.map +1 -1
  529. package/.internal/core/util/Disposer.js +2 -66
  530. package/.internal/core/util/Disposer.js.map +1 -1
  531. package/.internal/core/util/DurationFormatter.js +8 -13
  532. package/.internal/core/util/DurationFormatter.js.map +1 -1
  533. package/.internal/core/util/Entity.js +31 -271
  534. package/.internal/core/util/Entity.js.map +1 -1
  535. package/.internal/core/util/EventDispatcher.js +0 -45
  536. package/.internal/core/util/EventDispatcher.js.map +1 -1
  537. package/.internal/core/util/InterfaceColors.js +2 -12
  538. package/.internal/core/util/InterfaceColors.js.map +1 -1
  539. package/.internal/core/util/List.js +3 -39
  540. package/.internal/core/util/List.js.map +1 -1
  541. package/.internal/core/util/Matrix.js +0 -36
  542. package/.internal/core/util/Matrix.js.map +1 -1
  543. package/.internal/core/util/Modal.js +2 -12
  544. package/.internal/core/util/Modal.js.map +1 -1
  545. package/.internal/core/util/PatternSet.js +2 -12
  546. package/.internal/core/util/PatternSet.js.map +1 -1
  547. package/.internal/core/util/Percent.js +0 -9
  548. package/.internal/core/util/Percent.js.map +1 -1
  549. package/.internal/core/util/ResizeSensor.js +5 -54
  550. package/.internal/core/util/ResizeSensor.js.map +1 -1
  551. package/.internal/core/util/States.js +2 -30
  552. package/.internal/core/util/States.js.map +1 -1
  553. package/.internal/core/util/Template.js +10 -96
  554. package/.internal/core/util/Template.js.map +1 -1
  555. package/.internal/core/util/TextFormatter.js +1 -6
  556. package/.internal/core/util/TextFormatter.js.map +1 -1
  557. package/.internal/core/util/Throttler.js +2 -18
  558. package/.internal/core/util/Throttler.js.map +1 -1
  559. package/.internal/core/util/Timezone.js +0 -18
  560. package/.internal/core/util/Timezone.js.map +1 -1
  561. package/.internal/core/util/Utils.js +0 -21
  562. package/.internal/core/util/Utils.js.map +1 -1
  563. package/.internal/core/util/Value.js +1 -18
  564. package/.internal/core/util/Value.js.map +1 -1
  565. package/.internal/plugins/colorPicker/ColorPicker.js +96 -235
  566. package/.internal/plugins/colorPicker/ColorPicker.js.map +1 -1
  567. package/.internal/plugins/colorPicker/ColorPickerButton.js +8 -34
  568. package/.internal/plugins/colorPicker/ColorPickerButton.js.map +1 -1
  569. package/.internal/plugins/exporting/Annotator.js +3 -36
  570. package/.internal/plugins/exporting/Annotator.js.map +1 -1
  571. package/.internal/plugins/exporting/Exporting.js +2 -12
  572. package/.internal/plugins/exporting/Exporting.js.map +1 -1
  573. package/.internal/plugins/exporting/ExportingMenu.js +6 -66
  574. package/.internal/plugins/exporting/ExportingMenu.js.map +1 -1
  575. package/.internal/plugins/json/ChartSerializer.js +8 -48
  576. package/.internal/plugins/json/ChartSerializer.js.map +1 -1
  577. package/.internal/plugins/json/Json.js +3 -24
  578. package/.internal/plugins/json/Json.js.map +1 -1
  579. package/.internal/plugins/json/Serializer.js +3 -18
  580. package/.internal/plugins/json/Serializer.js.map +1 -1
  581. package/.internal/plugins/sliceGrouper/SliceGrouper.js +2 -24
  582. package/.internal/plugins/sliceGrouper/SliceGrouper.js.map +1 -1
  583. package/.internal/themes/ResponsiveTheme.js +8 -54
  584. package/.internal/themes/ResponsiveTheme.js.map +1 -1
  585. package/CHANGELOG.md +19 -0
  586. package/examples/javascript/flow-arc-horizontal/package.json +1 -1
  587. package/examples/javascript/flow-arc-vertical/package.json +1 -1
  588. package/examples/javascript/flow-chord/package.json +1 -1
  589. package/examples/javascript/flow-chord-directed/package.json +1 -1
  590. package/examples/javascript/flow-chord-non-ribbon/package.json +1 -1
  591. package/examples/javascript/flow-sankey/package.json +1 -1
  592. package/examples/javascript/gantt/package.json +1 -1
  593. package/examples/javascript/gantt-multilevel/package.json +1 -1
  594. package/examples/javascript/gantt-simple/package.json +1 -1
  595. package/examples/javascript/gauge/package.json +1 -1
  596. package/examples/javascript/gauge-bands/package.json +1 -1
  597. package/examples/javascript/hierarchy-force-directed/package.json +1 -1
  598. package/examples/javascript/hierarchy-pack/package.json +1 -1
  599. package/examples/javascript/hierarchy-partition/package.json +1 -1
  600. package/examples/javascript/hierarchy-sunburst/package.json +1 -1
  601. package/examples/javascript/hierarchy-tree/package.json +1 -1
  602. package/examples/javascript/hierarchy-treemap/package.json +1 -1
  603. package/examples/javascript/hierarchy-voronoi-treemap/package.json +1 -1
  604. package/examples/javascript/jest/package.json +1 -1
  605. package/examples/javascript/json-pie/package.json +1 -1
  606. package/examples/javascript/json-xy/package.json +1 -1
  607. package/examples/javascript/map-animating-along-lines/package.json +1 -1
  608. package/examples/javascript/map-clustered-points/package.json +1 -1
  609. package/examples/javascript/map-day-and-night/package.json +1 -1
  610. package/examples/javascript/map-globe-rotate-to-country/package.json +1 -1
  611. package/examples/javascript/map-globe-with-projected-circles/package.json +1 -1
  612. package/examples/javascript/map-with-bubbles/package.json +1 -1
  613. package/examples/javascript/map-zoom-to-country/package.json +1 -1
  614. package/examples/javascript/misc-40-charts/package.json +1 -1
  615. package/examples/javascript/misc-microchart-grid/package.json +1 -1
  616. package/examples/javascript/pie-chart/package.json +1 -1
  617. package/examples/javascript/pie-donut-chart/package.json +1 -1
  618. package/examples/javascript/pie-variable-radius/package.json +1 -1
  619. package/examples/javascript/radar-column-iwatch-style/package.json +1 -1
  620. package/examples/javascript/radar-heat-map/package.json +1 -1
  621. package/examples/javascript/radar-line/package.json +1 -1
  622. package/examples/javascript/radar-time-line/package.json +1 -1
  623. package/examples/javascript/sliced-funnel/package.json +1 -1
  624. package/examples/javascript/sliced-pictorial-stacked/package.json +1 -1
  625. package/examples/javascript/sliced-pyramid/package.json +1 -1
  626. package/examples/javascript/stock-chart/package.json +1 -1
  627. package/examples/javascript/stock-chart-comparing-stocks/package.json +1 -1
  628. package/examples/javascript/stock-chart-data-granularity/package.json +1 -1
  629. package/examples/javascript/stock-chart-data-grouping/package.json +1 -1
  630. package/examples/javascript/stock-chart-intraday/package.json +1 -1
  631. package/examples/javascript/stock-chart-live/package.json +1 -1
  632. package/examples/javascript/stock-chart-volume-separate-panel/package.json +1 -1
  633. package/examples/javascript/timeline-horizontal-serpentine-chart/package.json +1 -1
  634. package/examples/javascript/timeline-linear-process-diagram/package.json +1 -1
  635. package/examples/javascript/timeline-serpentine-chart/package.json +1 -1
  636. package/examples/javascript/timeline-spiral-chart/package.json +1 -1
  637. package/examples/javascript/venn-diagram/package.json +1 -1
  638. package/examples/javascript/wordcloud-with-data/package.json +1 -1
  639. package/examples/javascript/wordcloud-with-text/package.json +1 -1
  640. package/examples/javascript/xy-100-percent-stacked-column/package.json +1 -1
  641. package/examples/javascript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  642. package/examples/javascript/xy-bubble/package.json +1 -1
  643. package/examples/javascript/xy-candlestick/package.json +1 -1
  644. package/examples/javascript/xy-clustered-column/package.json +1 -1
  645. package/examples/javascript/xy-column/package.json +1 -1
  646. package/examples/javascript/xy-comparing-series-google-analytics-style/package.json +1 -1
  647. package/examples/javascript/xy-data-grouping/package.json +1 -1
  648. package/examples/javascript/xy-draggable-range/package.json +1 -1
  649. package/examples/javascript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  650. package/examples/javascript/xy-dumbbell plot/package.json +1 -1
  651. package/examples/javascript/xy-evenly-spaced-date-axis/package.json +1 -1
  652. package/examples/javascript/xy-line/package.json +1 -1
  653. package/examples/javascript/xy-line-highlight-on-legend-hover/package.json +1 -1
  654. package/examples/javascript/xy-live-data/package.json +1 -1
  655. package/examples/javascript/xy-multiple-synced-value-axes/package.json +1 -1
  656. package/examples/javascript/xy-ohlc/package.json +1 -1
  657. package/examples/javascript/xy-real-time-data-sorting/package.json +1 -1
  658. package/examples/javascript/xy-smoothed-line/package.json +1 -1
  659. package/examples/javascript/xy-stacked-and-clustered-column/package.json +1 -1
  660. package/examples/javascript/xy-stacked-column/package.json +1 -1
  661. package/examples/javascript/xy-stacked-step/package.json +1 -1
  662. package/examples/javascript/xy-stock/package.json +1 -1
  663. package/examples/javascript/xy-stock-comparing/package.json +1 -1
  664. package/examples/typescript/flow-arc-horizontal/package.json +1 -1
  665. package/examples/typescript/flow-arc-vertical/package.json +1 -1
  666. package/examples/typescript/flow-chord/package.json +1 -1
  667. package/examples/typescript/flow-chord-directed/package.json +1 -1
  668. package/examples/typescript/flow-chord-non-ribbon/package.json +1 -1
  669. package/examples/typescript/flow-sankey/package.json +1 -1
  670. package/examples/typescript/gantt/package.json +1 -1
  671. package/examples/typescript/gantt-multilevel/package.json +1 -1
  672. package/examples/typescript/gantt-simple/package.json +1 -1
  673. package/examples/typescript/gauge/package.json +1 -1
  674. package/examples/typescript/gauge-bands/package.json +1 -1
  675. package/examples/typescript/hierarchy-force-directed/package.json +1 -1
  676. package/examples/typescript/hierarchy-pack/package.json +1 -1
  677. package/examples/typescript/hierarchy-partition/package.json +1 -1
  678. package/examples/typescript/hierarchy-sunburst/package.json +1 -1
  679. package/examples/typescript/hierarchy-tree/package.json +1 -1
  680. package/examples/typescript/hierarchy-treemap/package.json +1 -1
  681. package/examples/typescript/hierarchy-voronoi-treemap/package.json +1 -1
  682. package/examples/typescript/jest/package.json +1 -1
  683. package/examples/typescript/json-pie/package.json +1 -1
  684. package/examples/typescript/json-xy/package.json +1 -1
  685. package/examples/typescript/map-animating-along-lines/package.json +1 -1
  686. package/examples/typescript/map-clustered-points/package.json +1 -1
  687. package/examples/typescript/map-day-and-night/package.json +1 -1
  688. package/examples/typescript/map-globe-rotate-to-country/package.json +1 -1
  689. package/examples/typescript/map-globe-with-projected-circles/package.json +1 -1
  690. package/examples/typescript/map-with-bubbles/package.json +1 -1
  691. package/examples/typescript/map-zoom-to-country/package.json +1 -1
  692. package/examples/typescript/misc-40-charts/package.json +1 -1
  693. package/examples/typescript/misc-microchart-grid/package.json +1 -1
  694. package/examples/typescript/pie-chart/package.json +1 -1
  695. package/examples/typescript/pie-donut-chart/package.json +1 -1
  696. package/examples/typescript/pie-variable-radius/package.json +1 -1
  697. package/examples/typescript/radar-column-iwatch-style/package.json +1 -1
  698. package/examples/typescript/radar-heat-map/package.json +1 -1
  699. package/examples/typescript/radar-line/package.json +1 -1
  700. package/examples/typescript/radar-time-line/package.json +1 -1
  701. package/examples/typescript/sliced-funnel/package.json +1 -1
  702. package/examples/typescript/sliced-pictorial-stacked/package.json +1 -1
  703. package/examples/typescript/sliced-pyramid/package.json +1 -1
  704. package/examples/typescript/stock-chart/package.json +1 -1
  705. package/examples/typescript/stock-chart-comparing-stocks/package.json +1 -1
  706. package/examples/typescript/stock-chart-data-granularity/package.json +1 -1
  707. package/examples/typescript/stock-chart-data-grouping/package.json +1 -1
  708. package/examples/typescript/stock-chart-intraday/package.json +1 -1
  709. package/examples/typescript/stock-chart-live/package.json +1 -1
  710. package/examples/typescript/stock-chart-volume-separate-panel/package.json +1 -1
  711. package/examples/typescript/timeline-horizontal-serpentine-chart/package.json +1 -1
  712. package/examples/typescript/timeline-linear-process-diagram/package.json +1 -1
  713. package/examples/typescript/timeline-serpentine-chart/package.json +1 -1
  714. package/examples/typescript/timeline-spiral-chart/package.json +1 -1
  715. package/examples/typescript/venn-diagram/package.json +1 -1
  716. package/examples/typescript/wordcloud-with-data/package.json +1 -1
  717. package/examples/typescript/wordcloud-with-text/package.json +1 -1
  718. package/examples/typescript/xy-100-percent-stacked-column/package.json +1 -1
  719. package/examples/typescript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  720. package/examples/typescript/xy-bubble/package.json +1 -1
  721. package/examples/typescript/xy-candlestick/package.json +1 -1
  722. package/examples/typescript/xy-clustered-column/package.json +1 -1
  723. package/examples/typescript/xy-column/package.json +1 -1
  724. package/examples/typescript/xy-comparing-series-google-analytics-style/package.json +1 -1
  725. package/examples/typescript/xy-data-grouping/package.json +1 -1
  726. package/examples/typescript/xy-draggable-range/package.json +1 -1
  727. package/examples/typescript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  728. package/examples/typescript/xy-dumbbell plot/package.json +1 -1
  729. package/examples/typescript/xy-evenly-spaced-date-axis/package.json +1 -1
  730. package/examples/typescript/xy-line/package.json +1 -1
  731. package/examples/typescript/xy-line-highlight-on-legend-hover/package.json +1 -1
  732. package/examples/typescript/xy-live-data/package.json +1 -1
  733. package/examples/typescript/xy-multiple-synced-value-axes/package.json +1 -1
  734. package/examples/typescript/xy-ohlc/package.json +1 -1
  735. package/examples/typescript/xy-real-time-data-sorting/package.json +1 -1
  736. package/examples/typescript/xy-smoothed-line/package.json +1 -1
  737. package/examples/typescript/xy-stacked-and-clustered-column/package.json +1 -1
  738. package/examples/typescript/xy-stacked-column/package.json +1 -1
  739. package/examples/typescript/xy-stacked-step/package.json +1 -1
  740. package/examples/typescript/xy-stock/package.json +1 -1
  741. package/examples/typescript/xy-stock-comparing/package.json +1 -1
  742. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"RectanglePattern.js","sourceRoot":"","sources":["../../../../../../src/.internal/core/render/patterns/RectanglePattern.ts"],"names":[],"mappings":"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","sourcesContent":["import { Pattern, IPatternSettings, IPatternPrivate } from \"./Pattern\";\n\nimport * as $math from \"../../util/Math\";\n\nexport interface IRectanglePatternSettings extends IPatternSettings {\n\n\t/**\n\t * Gap between rectangles, in pixels.\n\t *\n\t * @default 6\n\t */\n\tgap?: number;\n\n\t/**\n\t * Maximum width of the rectangle, in pixels.\n\t *\n\t * @default 5\n\t */\n\tmaxWidth?: number;\n\n\t/**\n\t * Maximum height of the rectangle, in pixels.\n\t *\n\t * @default 5\n\t */\n\tmaxHeight?: number;\n\n\t/**\n\t * If set to `true`, will place every second rectangle, creating checkered\n\t * pattern.\n\t *\n\t * @default false\n\t */\n\tcheckered?: boolean;\n\n\t/**\n\t * Center rectangles.\n\t *\n\t * @default true\n\t */\n\tcentered?: boolean;\n\n}\n\nexport interface IRectanglePatternPrivate extends IPatternPrivate {\n}\n\n/**\n * Rectangle pattern.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/patterns/} for more info\n */\nexport class RectanglePattern extends Pattern {\n\tdeclare public _settings: IRectanglePatternSettings;\n\tdeclare public _privateSettings: IRectanglePatternPrivate;\n\n\tpublic static className: string = \"RectanglePattern\";\n\tpublic static classNames: Array<string> = Pattern.classNames.concat([RectanglePattern.className]);\n\n\tpublic _beforeChanged() {\n\t\tsuper._beforeChanged();\n\n\t\tif (this.isDirty(\"gap\")) {\n\t\t\tthis._clear = true;\n\t\t}\n\t}\n\n\tprotected _draw() {\n\t\tsuper._draw();\n\n\t\tconst checkered = this.get(\"checkered\", false);\n\t\tconst centered = this.get(\"centered\", true);\n\t\tconst gap = this.get(\"gap\", 0);\n\t\tconst rotation = this.get(\"rotation\", 0);\n\t\tlet w = this.get(\"width\", 100);\n\t\tlet h = this.get(\"height\", 100);\n\t\tlet rectW = this.get(\"maxWidth\", 5);\n\t\tlet rectH = this.get(\"maxHeight\", 5);\n\n\t\tconst display = this._display;\n\n\t\tlet cellW = rectW + gap;\n\t\tlet cellH = rectH + gap;\n\n\t\tlet cols = Math.round(w / cellW);\n\t\tlet rows = Math.round(h / cellH);\n\n\t\tcellW = w / cols;\n\t\tcellH = h / rows;\n\n\t\tif (rotation != 0) {\n\t\t\t// @todo this is probably not right\n\t\t\tdisplay.x = cellW / 2 * $math.cos(rotation);\n\t\t\tdisplay.y = -cellH / 2 * $math.sin(rotation);\n\t\t}\n\n\t\tfor (let r = rotation == 0 ? 0 : -rows * 2; r < rows * 2; r++) {\n\t\t\tfor (let c = rotation == 0 ? 0 : -cols * 2; c < cols * 2; c++) {\n\t\t\t\tif (!checkered || ((r & 1) != 1 && (c & 1) != 1) || ((r & 1) == 1 && (c & 1) == 1)) {\n\t\t\t\t\tlet x = c * cellW;\n\t\t\t\t\tlet y = r * cellH;\n\t\t\t\t\tif (centered) {\n\t\t\t\t\t\tx += (cellW - rectW) / 2;\n\t\t\t\t\t\ty += (cellH - rectH) / 2;\n\t\t\t\t\t}\n\t\t\t\t\tdisplay.drawRect(x, y, rectW, rectH);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (checkered) {\n\t\t\tw = w / 2 - gap * 2;\n\t\t\th = h / 2 - gap * 2;\n\t\t}\n\t\telse {\n\t\t\tw -= gap;\n\t\t\th -= gap;\n\t\t}\n\n\t\tconst color = this.get(\"color\");\n\t\tconst colorOpacity = this.get(\"colorOpacity\");\n\t\tif (color || colorOpacity) {\n\t\t\t// this._display.lineStyle(strokeWidth, stroke, colorOpacity);\n\t\t\t// this._display.endStroke();\n\t\t\tdisplay.beginFill(color, colorOpacity);\n\t\t\tdisplay.endFill();\n\t\t}\n\n\t}\n}\n"]}
1
+ {"version":3,"file":"RectanglePattern.js","sourceRoot":"","sources":["../../../../../../src/.internal/core/render/patterns/RectanglePattern.ts"],"names":[],"mappings":"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","sourcesContent":["import { Pattern, IPatternSettings, IPatternPrivate } from \"./Pattern\";\n\nimport * as $math from \"../../util/Math\";\n\nexport interface IRectanglePatternSettings extends IPatternSettings {\n\n\t/**\n\t * Gap between rectangles, in pixels.\n\t *\n\t * @default 6\n\t */\n\tgap?: number;\n\n\t/**\n\t * Maximum width of the rectangle, in pixels.\n\t *\n\t * @default 5\n\t */\n\tmaxWidth?: number;\n\n\t/**\n\t * Maximum height of the rectangle, in pixels.\n\t *\n\t * @default 5\n\t */\n\tmaxHeight?: number;\n\n\t/**\n\t * If set to `true`, will place every second rectangle, creating checkered\n\t * pattern.\n\t *\n\t * @default false\n\t */\n\tcheckered?: boolean;\n\n\t/**\n\t * Center rectangles.\n\t *\n\t * @default true\n\t */\n\tcentered?: boolean;\n\n}\n\nexport interface IRectanglePatternPrivate extends IPatternPrivate {\n}\n\n/**\n * Rectangle pattern.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/patterns/} for more info\n */\nexport class RectanglePattern extends Pattern {\n\tdeclare public _settings: IRectanglePatternSettings;\n\tdeclare public _privateSettings: IRectanglePatternPrivate;\n\n\tpublic static className: string = \"RectanglePattern\";\n\tpublic static classNames: Array<string> = Pattern.classNames.concat([RectanglePattern.className]);\n\n\tpublic _beforeChanged() {\n\t\tsuper._beforeChanged();\n\n\t\tif (this.isDirty(\"gap\")) {\n\t\t\tthis._clear = true;\n\t\t}\n\t}\n\n\tprotected _draw() {\n\t\tsuper._draw();\n\n\t\tconst checkered = this.get(\"checkered\", false);\n\t\tconst centered = this.get(\"centered\", true);\n\t\tconst gap = this.get(\"gap\", 0);\n\t\tconst rotation = this.get(\"rotation\", 0);\n\t\tlet w = this.get(\"width\", 100);\n\t\tlet h = this.get(\"height\", 100);\n\t\tlet rectW = this.get(\"maxWidth\", 5);\n\t\tlet rectH = this.get(\"maxHeight\", 5);\n\n\t\tconst display = this._display;\n\n\t\tlet cellW = rectW + gap;\n\t\tlet cellH = rectH + gap;\n\n\t\tlet cols = Math.round(w / cellW);\n\t\tlet rows = Math.round(h / cellH);\n\n\t\tcellW = w / cols;\n\t\tcellH = h / rows;\n\n\t\tif (rotation != 0) {\n\t\t\t// @todo this is probably not right\n\t\t\tdisplay.x = cellW / 2 * $math.cos(rotation);\n\t\t\tdisplay.y = -cellH / 2 * $math.sin(rotation);\n\t\t}\n\n\t\tfor (let r = rotation == 0 ? 0 : -rows * 2; r < rows * 2; r++) {\n\t\t\tfor (let c = rotation == 0 ? 0 : -cols * 2; c < cols * 2; c++) {\n\t\t\t\tif (!checkered || ((r & 1) != 1 && (c & 1) != 1) || ((r & 1) == 1 && (c & 1) == 1)) {\n\t\t\t\t\tlet x = c * cellW;\n\t\t\t\t\tlet y = r * cellH;\n\t\t\t\t\tif (centered) {\n\t\t\t\t\t\tx += (cellW - rectW) / 2;\n\t\t\t\t\t\ty += (cellH - rectH) / 2;\n\t\t\t\t\t}\n\t\t\t\t\tdisplay.drawRect(x, y, rectW, rectH);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (checkered) {\n\t\t\tw = w / 2 - gap * 2;\n\t\t\th = h / 2 - gap * 2;\n\t\t}\n\t\telse {\n\t\t\tw -= gap;\n\t\t\th -= gap;\n\t\t}\n\n\t\tconst color = this.get(\"color\");\n\t\tconst colorOpacity = this.get(\"colorOpacity\");\n\t\tif (color || colorOpacity) {\n\t\t\t// this._display.lineStyle(strokeWidth, stroke, colorOpacity);\n\t\t\t// this._display.endStroke();\n\t\t\tdisplay.beginFill(color, colorOpacity);\n\t\t\tdisplay.endFill();\n\t\t}\n\n\t}\n}\n"]}
@@ -83,60 +83,12 @@ export var AnimationState;
83
83
  */
84
84
  export class AnimationTime {
85
85
  constructor(entity, duration) {
86
- Object.defineProperty(this, "_entity", {
87
- enumerable: true,
88
- configurable: true,
89
- writable: true,
90
- value: void 0
91
- });
92
- Object.defineProperty(this, "_duration", {
93
- enumerable: true,
94
- configurable: true,
95
- writable: true,
96
- value: void 0
97
- });
98
- Object.defineProperty(this, "_playingDuration", {
99
- enumerable: true,
100
- configurable: true,
101
- writable: true,
102
- value: null
103
- });
104
- Object.defineProperty(this, "_startingTime", {
105
- enumerable: true,
106
- configurable: true,
107
- writable: true,
108
- value: null
109
- });
110
- Object.defineProperty(this, "_current", {
111
- enumerable: true,
112
- configurable: true,
113
- writable: true,
114
- value: 0
115
- });
116
- Object.defineProperty(this, "_from", {
117
- enumerable: true,
118
- configurable: true,
119
- writable: true,
120
- value: 0
121
- });
122
- Object.defineProperty(this, "_to", {
123
- enumerable: true,
124
- configurable: true,
125
- writable: true,
126
- value: 0
127
- });
128
- Object.defineProperty(this, "events", {
129
- enumerable: true,
130
- configurable: true,
131
- writable: true,
132
- value: new EventDispatcher()
133
- });
134
- Object.defineProperty(this, "easing", {
135
- enumerable: true,
136
- configurable: true,
137
- writable: true,
138
- value: void 0
139
- });
86
+ this._playingDuration = null;
87
+ this._startingTime = null;
88
+ this._current = 0;
89
+ this._from = 0;
90
+ this._to = 0;
91
+ this.events = new EventDispatcher();
140
92
  this._entity = entity;
141
93
  this._duration = duration;
142
94
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Animation.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/Animation.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Entity, Animation } from \"./Entity\";\nimport { Percent } from \"./Percent\";\nimport { Color } from \"./Color\";\nimport type { Easing } from \"./Ease\";\nimport { EventDispatcher, Events } from \"./EventDispatcher\";\nimport * as $object from \"./Object\";\n\nexport type Animations<T> = { [K in keyof T]?: Animation<T[K]> };\n\n/**\n * @ignore\n */\nexport async function waitForAnimations<T>(animations: Animations<T> | undefined): Promise<void> {\n\tif (animations !== undefined) {\n\t\tconst promises: Array<Promise<void>> = [];\n\n\t\t$object.each(animations, (_, animation) => {\n\t\t\tpromises.push(animation.waitForStop());\n\t\t});\n\n\t\tawait Promise.all(promises);\n\t}\n}\n\n\ninterface ITime {\n\treadonly tag: unique symbol;\n}\n\n/**\n * New type which allows for conversion from a number into a Time, but not from a Time to a number\n */\nexport type Time = number | ITime;\n\n\n/**\n * @ignore\n */\nexport function normalize(value: number, min: number, max: number): Time {\n\tif (min === max) {\n\t\treturn 0;\n\n\t} else {\n\t\treturn Math.min(Math.max((value - min) * (1 / (max - min)), 0), 1);\n\t}\n}\n\n/**\n * @ignore\n */\nexport function range(diff: Time, from: number, to: number): number {\n\treturn from + (diff as number * (to - from));\n}\n\n/**\n * @ignore\n */\nexport function defaultInterpolate<A, B>(diff: Time, from: A, to: B): A | B {\n\tif (diff >= 1) {\n\t\treturn to;\n\n\t} else {\n\t\treturn from;\n\t}\n}\n\n/**\n * @ignore\n */\nexport function percentInterpolate(diff: Time, from: Percent, to: Percent): Percent {\n\treturn new Percent(range(diff, from.percent, to.percent));\n}\n\n/**\n * @ignore\n */\nexport function colorInterpolate(diff: Time, from: Color, to: Color): Color {\n\treturn Color.interpolate(diff, from, to);\n}\n\n/**\n * @ignore\n */\nexport function getInterpolate(from: number, to: number): typeof range;\n\n/**\n * @ignore\n */\nexport function getInterpolate(from: Percent, to: Percent): typeof percentInterpolate;\n\n/**\n * @ignore\n */\nexport function getInterpolate(from: any, to: any): typeof defaultInterpolate;\n\n/**\n * @ignore\n */\nexport function getInterpolate(from: any, to: any): (diff: Time, from: any, to: any) => any {\n\tif (typeof from === \"number\" && typeof to === \"number\") {\n\t\treturn range;\n\t}\n\n\tif (from instanceof Percent && to instanceof Percent) {\n\t\treturn percentInterpolate;\n\t}\n\n\tif (from instanceof Color && to instanceof Color) {\n\t\treturn colorInterpolate;\n\t}\n\n\treturn defaultInterpolate;\n}\n\n\nexport enum AnimationState {\n\tStopped,\n\tPlaying,\n\tPaused,\n}\n\nexport interface IAnimation {\n\t_runAnimation(_currentTime: number): AnimationState;\n}\n\n\n/**\n * @ignore\n */\nexport interface IEntityEvents {\n\tstarted: {};\n\tstopped: {};\n\t// TODO replace this with stopped\n\tended: {};\n\tprogress: { progress: number };\n}\n\n/**\n * @ignore\n */\nexport class AnimationTime implements IAnimation {\n\tprotected _entity: Entity;\n\tprotected _duration: number;\n\n\tprotected _playingDuration: number | null = null;\n\tprotected _startingTime: number | null = null;\n\tprotected _current: Time = 0;\n\tprotected _from: Time = 0;\n\tprotected _to: Time = 0;\n\n\tdeclare public _events: IEntityEvents;\n\tpublic events: EventDispatcher<Events<this, this[\"_events\"]>> = new EventDispatcher();\n\n\tpublic easing: Easing | undefined;\n\n\tconstructor(entity: Entity, duration: number) {\n\t\tthis._entity = entity;\n\t\tthis._duration = duration;\n\t}\n\n\tprivate _stopEvent() {\n\t\tconst type = \"stopped\";\n\t\tif (this.events.isEnabled(type)) {\n\t\t\tthis.events.dispatch(type, { type: type, target: this });\n\t\t}\n\t}\n\n\tpublic _runAnimation(currentTime: number): AnimationState {\n\t\tif (this._playingDuration !== null) {\n\t\t\tif (this._startingTime === null) {\n\t\t\t\tthis._startingTime = currentTime;\n\t\t\t\treturn AnimationState.Playing;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tconst diff = (currentTime - this._startingTime) / this._playingDuration;\n\n\t\t\t\tif (diff >= 1) {\n\t\t\t\t\tthis._playingDuration = null;\n\t\t\t\t\tthis._startingTime = null;\n\t\t\t\t\tthis._from = this._to;\n\t\t\t\t\tthis._current = this._to;\n\t\t\t\t\tthis._entity.markDirty();\n\t\t\t\t\tthis._stopEvent();\n\t\t\t\t\tconst type = \"ended\";\n\t\t\t\t\tif (this.events.isEnabled(type)) {\n\t\t\t\t\t\tthis.events.dispatch(type, { type: type, target: this });\n\t\t\t\t\t}\n\t\t\t\t\treturn AnimationState.Stopped;\n\n\t\t\t\t} else {\n\t\t\t\t\tthis._current = range(diff, this._from as number, this._to as number);\n\t\t\t\t\tthis._entity.markDirty();\n\n\t\t\t\t\tconst type = \"progress\";\n\t\t\t\t\tif (this.events.isEnabled(type)) {\n\t\t\t\t\t\tthis.events.dispatch(type, { type: type, target: this, progress: diff });\n\t\t\t\t\t}\n\n\t\t\t\t\treturn AnimationState.Playing;\n\t\t\t\t}\n\t\t\t}\n\n\t\t} else {\n\t\t\treturn AnimationState.Stopped;\n\t\t}\n\t}\n\n\tprivate _play() {\n\t\tthis._from = this._current;\n\n\t\tif (this._playingDuration === null) {\n\t\t\tthis._entity._root._addAnimation(this);\n\n\t\t\tconst type = \"started\";\n\t\t\tif (this.events.isEnabled(type)) {\n\t\t\t\tthis.events.dispatch(type, { type: type, target: this });\n\t\t\t}\n\n\t\t} else {\n\t\t\tthis._startingTime = null;\n\t\t}\n\n\t\tthis._playingDuration = Math.abs((this._to as number) - (this._from as number)) * this._duration;\n\t}\n\n\tpublic get duration(): number {\n\t\treturn this._duration;\n\t}\n\n\tpublic set duration(value: number) {\n\t\tif (this._duration !== value) {\n\t\t\tthis._duration = value;\n\n\t\t\tif (value === 0) {\n\t\t\t\tthis.jumpTo(this._to);\n\n\t\t\t} else if (this._current !== this._to) {\n\t\t\t\tthis._play();\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic get current(): Time {\n\t\tif (this.easing) {\n\t\t\treturn this.easing(this._current);\n\n\t\t} else {\n\t\t\treturn this._current;\n\t\t}\n\t}\n\n\tpublic stop() {\n\t\tthis.jumpTo(this._current);\n\t}\n\n\tpublic jumpTo(value: Time) {\n\t\tif (this._current !== value) {\n\t\t\tthis._entity.markDirty();\n\t\t}\n\n\t\tif (this._playingDuration !== null) {\n\t\t\tthis._stopEvent();\n\t\t}\n\n\t\tthis._playingDuration = null;\n\t\tthis._startingTime = null;\n\t\tthis._current = value;\n\t\tthis._from = value;\n\t\tthis._to = value;\n\t}\n\n\tpublic tweenTo(value: Time) {\n\t\tif (this._current === value || this._duration === 0) {\n\t\t\tthis.jumpTo(value);\n\n\t\t} else {\n\t\t\tif (this._to !== value) {\n\t\t\t\tthis._to = value;\n\t\t\t\tthis._play();\n\t\t\t}\n\t\t}\n\t}\n}\n\n\n/*export class AnimationValue extends AnimationTime {\n\tpublic _min: number;\n\tpublic _max: number;\n\n\tconstructor(entity: Entity, duration: number, min: number, max: number) {\n\t\tsuper(entity, duration);\n\t\tthis._min = min;\n\t\tthis._max = max;\n\t}\n\n\tpublic get min(): number {\n\t\treturn this._min;\n\t}\n\n\tpublic set min(value: number) {\n\t\tif (this._min !== value) {\n\t\t\tthis._min = value;\n\t\t\tthis._entity.markDirty();\n\t\t}\n\t}\n\n\tpublic get max(): number {\n\t\treturn this._max;\n\t}\n\n\tpublic set max(value: number) {\n\t\tif (this._max !== value) {\n\t\t\tthis._max = value;\n\t\t\tthis._entity.markDirty();\n\t\t}\n\t}\n\n\tpublic currentValue(): number {\n\t\treturn range(super.currentTime(), this._min, this._max);\n\t}\n\n\tpublic jumpToValue(value: number) {\n\t\tsuper.jumpToTime(normalize(value, this._min, this._max));\n\t}\n\n\tpublic tweenToValue(value: number) {\n\t\tsuper.tweenToTime(normalize(value, this._min, this._max));\n\t}\n}\n*/\n"]}
1
+ {"version":3,"file":"Animation.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/Animation.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Entity, Animation } from \"./Entity\";\nimport { Percent } from \"./Percent\";\nimport { Color } from \"./Color\";\nimport type { Easing } from \"./Ease\";\nimport { EventDispatcher, Events } from \"./EventDispatcher\";\nimport * as $object from \"./Object\";\n\nexport type Animations<T> = { [K in keyof T]?: Animation<T[K]> };\n\n/**\n * @ignore\n */\nexport async function waitForAnimations<T>(animations: Animations<T> | undefined): Promise<void> {\n\tif (animations !== undefined) {\n\t\tconst promises: Array<Promise<void>> = [];\n\n\t\t$object.each(animations, (_, animation) => {\n\t\t\tpromises.push(animation.waitForStop());\n\t\t});\n\n\t\tawait Promise.all(promises);\n\t}\n}\n\n\ninterface ITime {\n\treadonly tag: unique symbol;\n}\n\n/**\n * New type which allows for conversion from a number into a Time, but not from a Time to a number\n */\nexport type Time = number | ITime;\n\n\n/**\n * @ignore\n */\nexport function normalize(value: number, min: number, max: number): Time {\n\tif (min === max) {\n\t\treturn 0;\n\n\t} else {\n\t\treturn Math.min(Math.max((value - min) * (1 / (max - min)), 0), 1);\n\t}\n}\n\n/**\n * @ignore\n */\nexport function range(diff: Time, from: number, to: number): number {\n\treturn from + (diff as number * (to - from));\n}\n\n/**\n * @ignore\n */\nexport function defaultInterpolate<A, B>(diff: Time, from: A, to: B): A | B {\n\tif (diff >= 1) {\n\t\treturn to;\n\n\t} else {\n\t\treturn from;\n\t}\n}\n\n/**\n * @ignore\n */\nexport function percentInterpolate(diff: Time, from: Percent, to: Percent): Percent {\n\treturn new Percent(range(diff, from.percent, to.percent));\n}\n\n/**\n * @ignore\n */\nexport function colorInterpolate(diff: Time, from: Color, to: Color): Color {\n\treturn Color.interpolate(diff, from, to);\n}\n\n/**\n * @ignore\n */\nexport function getInterpolate(from: number, to: number): typeof range;\n\n/**\n * @ignore\n */\nexport function getInterpolate(from: Percent, to: Percent): typeof percentInterpolate;\n\n/**\n * @ignore\n */\nexport function getInterpolate(from: any, to: any): typeof defaultInterpolate;\n\n/**\n * @ignore\n */\nexport function getInterpolate(from: any, to: any): (diff: Time, from: any, to: any) => any {\n\tif (typeof from === \"number\" && typeof to === \"number\") {\n\t\treturn range;\n\t}\n\n\tif (from instanceof Percent && to instanceof Percent) {\n\t\treturn percentInterpolate;\n\t}\n\n\tif (from instanceof Color && to instanceof Color) {\n\t\treturn colorInterpolate;\n\t}\n\n\treturn defaultInterpolate;\n}\n\n\nexport enum AnimationState {\n\tStopped,\n\tPlaying,\n\tPaused,\n}\n\nexport interface IAnimation {\n\t_runAnimation(_currentTime: number): AnimationState;\n}\n\n\n/**\n * @ignore\n */\nexport interface IEntityEvents {\n\tstarted: {};\n\tstopped: {};\n\t// TODO replace this with stopped\n\tended: {};\n\tprogress: { progress: number };\n}\n\n/**\n * @ignore\n */\nexport class AnimationTime implements IAnimation {\n\tprotected _entity: Entity;\n\tprotected _duration: number;\n\n\tprotected _playingDuration: number | null = null;\n\tprotected _startingTime: number | null = null;\n\tprotected _current: Time = 0;\n\tprotected _from: Time = 0;\n\tprotected _to: Time = 0;\n\n\tdeclare public _events: IEntityEvents;\n\tpublic events: EventDispatcher<Events<this, this[\"_events\"]>> = new EventDispatcher();\n\n\tpublic easing: Easing | undefined;\n\n\tconstructor(entity: Entity, duration: number) {\n\t\tthis._entity = entity;\n\t\tthis._duration = duration;\n\t}\n\n\tprivate _stopEvent() {\n\t\tconst type = \"stopped\";\n\t\tif (this.events.isEnabled(type)) {\n\t\t\tthis.events.dispatch(type, { type: type, target: this });\n\t\t}\n\t}\n\n\tpublic _runAnimation(currentTime: number): AnimationState {\n\t\tif (this._playingDuration !== null) {\n\t\t\tif (this._startingTime === null) {\n\t\t\t\tthis._startingTime = currentTime;\n\t\t\t\treturn AnimationState.Playing;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tconst diff = (currentTime - this._startingTime) / this._playingDuration;\n\n\t\t\t\tif (diff >= 1) {\n\t\t\t\t\tthis._playingDuration = null;\n\t\t\t\t\tthis._startingTime = null;\n\t\t\t\t\tthis._from = this._to;\n\t\t\t\t\tthis._current = this._to;\n\t\t\t\t\tthis._entity.markDirty();\n\t\t\t\t\tthis._stopEvent();\n\t\t\t\t\tconst type = \"ended\";\n\t\t\t\t\tif (this.events.isEnabled(type)) {\n\t\t\t\t\t\tthis.events.dispatch(type, { type: type, target: this });\n\t\t\t\t\t}\n\t\t\t\t\treturn AnimationState.Stopped;\n\n\t\t\t\t} else {\n\t\t\t\t\tthis._current = range(diff, this._from as number, this._to as number);\n\t\t\t\t\tthis._entity.markDirty();\n\n\t\t\t\t\tconst type = \"progress\";\n\t\t\t\t\tif (this.events.isEnabled(type)) {\n\t\t\t\t\t\tthis.events.dispatch(type, { type: type, target: this, progress: diff });\n\t\t\t\t\t}\n\n\t\t\t\t\treturn AnimationState.Playing;\n\t\t\t\t}\n\t\t\t}\n\n\t\t} else {\n\t\t\treturn AnimationState.Stopped;\n\t\t}\n\t}\n\n\tprivate _play() {\n\t\tthis._from = this._current;\n\n\t\tif (this._playingDuration === null) {\n\t\t\tthis._entity._root._addAnimation(this);\n\n\t\t\tconst type = \"started\";\n\t\t\tif (this.events.isEnabled(type)) {\n\t\t\t\tthis.events.dispatch(type, { type: type, target: this });\n\t\t\t}\n\n\t\t} else {\n\t\t\tthis._startingTime = null;\n\t\t}\n\n\t\tthis._playingDuration = Math.abs((this._to as number) - (this._from as number)) * this._duration;\n\t}\n\n\tpublic get duration(): number {\n\t\treturn this._duration;\n\t}\n\n\tpublic set duration(value: number) {\n\t\tif (this._duration !== value) {\n\t\t\tthis._duration = value;\n\n\t\t\tif (value === 0) {\n\t\t\t\tthis.jumpTo(this._to);\n\n\t\t\t} else if (this._current !== this._to) {\n\t\t\t\tthis._play();\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic get current(): Time {\n\t\tif (this.easing) {\n\t\t\treturn this.easing(this._current);\n\n\t\t} else {\n\t\t\treturn this._current;\n\t\t}\n\t}\n\n\tpublic stop() {\n\t\tthis.jumpTo(this._current);\n\t}\n\n\tpublic jumpTo(value: Time) {\n\t\tif (this._current !== value) {\n\t\t\tthis._entity.markDirty();\n\t\t}\n\n\t\tif (this._playingDuration !== null) {\n\t\t\tthis._stopEvent();\n\t\t}\n\n\t\tthis._playingDuration = null;\n\t\tthis._startingTime = null;\n\t\tthis._current = value;\n\t\tthis._from = value;\n\t\tthis._to = value;\n\t}\n\n\tpublic tweenTo(value: Time) {\n\t\tif (this._current === value || this._duration === 0) {\n\t\t\tthis.jumpTo(value);\n\n\t\t} else {\n\t\t\tif (this._to !== value) {\n\t\t\t\tthis._to = value;\n\t\t\t\tthis._play();\n\t\t\t}\n\t\t}\n\t}\n}\n\n\n/*export class AnimationValue extends AnimationTime {\n\tpublic _min: number;\n\tpublic _max: number;\n\n\tconstructor(entity: Entity, duration: number, min: number, max: number) {\n\t\tsuper(entity, duration);\n\t\tthis._min = min;\n\t\tthis._max = max;\n\t}\n\n\tpublic get min(): number {\n\t\treturn this._min;\n\t}\n\n\tpublic set min(value: number) {\n\t\tif (this._min !== value) {\n\t\t\tthis._min = value;\n\t\t\tthis._entity.markDirty();\n\t\t}\n\t}\n\n\tpublic get max(): number {\n\t\treturn this._max;\n\t}\n\n\tpublic set max(value: number) {\n\t\tif (this._max !== value) {\n\t\t\tthis._max = value;\n\t\t\tthis._entity.markDirty();\n\t\t}\n\t}\n\n\tpublic currentValue(): number {\n\t\treturn range(super.currentTime(), this._min, this._max);\n\t}\n\n\tpublic jumpToValue(value: number) {\n\t\tsuper.jumpToTime(normalize(value, this._min, this._max));\n\t}\n\n\tpublic tweenToValue(value: number) {\n\t\tsuper.tweenToTime(normalize(value, this._min, this._max));\n\t}\n}\n*/\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Array.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/util/Array.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Array.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/util/Array.ts"],"names":[],"mappings":"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"}
@@ -508,7 +508,10 @@ export function getSortedIndex(array, ordering) {
508
508
  }
509
509
  else if (order === 0) {
510
510
  found = true;
511
- start = pivot + 1;
511
+ for (start = pivot + 1; start < end && ordering(array[start]) === 0; start++)
512
+ ;
513
+ start--;
514
+ break;
512
515
  // more
513
516
  }
514
517
  else {
@@ -517,7 +520,7 @@ export function getSortedIndex(array, ordering) {
517
520
  }
518
521
  return {
519
522
  found: found,
520
- index: (found ? start - 1 : start)
523
+ index: start
521
524
  };
522
525
  }
523
526
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Array.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/Array.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * ============================================================================\n * IMPORTS\n * ============================================================================\n * @hidden\n */\nimport type { Optional } from \"./Type\";\nimport * as $type from \"./Type\";\n\n\n/**\n * ============================================================================\n * UTILITY FUNCTIONS\n * ============================================================================\n * @hidden\n */\n\n/**\n * Searches `array` for `value`.\n *\n * Returns -1 if not found.\n *\n * @param array Source array\n * @param value Value to search\n * @returns Index\n */\nexport function indexOf<A>(array: ArrayLike<A>, value: A): number {\n\tconst length = array.length;\n\n\tfor (let i = 0; i < length; ++i) {\n\t\t// TODO handle NaN\n\t\tif (array[i] === value) {\n\t\t\treturn i;\n\t\t}\n\t}\n\n\treturn -1;\n}\n\n/**\n * Calls `test` for each element in `array`.\n *\n * If `test` returns `true` then it immediately returns `true`.\n *\n * If `test` returns `false` for all of the elements in `array` then it returns `false`.\n *\n * @param array Source array\n * @param test Function which is called on each element\n * @returns Whether `test` returned true or not\n */\nexport function any<A>(array: ArrayLike<A>, test: (value: A) => boolean): boolean {\n\tconst length = array.length;\n\n\tfor (let i = 0; i < length; ++i) {\n\t\tif (test(array[i])) {\n\t\t\treturn true;\n\t\t}\n\t}\n\n\treturn false;\n}\n\n/**\n * Calls `fn` function for every member of array and returns a new array out\n * of all outputs.\n *\n * @param array Source array\n * @param fn Callback function\n * @returns New array\n */\nexport function map<A, B>(array: ArrayLike<A>, fn: (value: A, index: number) => B): Array<B> {\n\tconst length = array.length;\n\tconst output = new Array(length);\n\n\tfor (let i = 0; i < length; ++i) {\n\t\toutput[i] = fn(array[i], i);\n\t}\n\n\treturn output;\n}\n\n/**\n * Iterates through all items in array and calls `fn` function for each of\n * them.\n *\n * @param array Source array\n * @param fn Callback function\n */\nexport function each<A>(array: ArrayLike<A>, fn: (value: A, index: number) => void): void {\n\tconst length = array.length;\n\n\tfor (let i = 0; i < length; ++i) {\n\t\tfn(array[i], i);\n\t}\n}\n\n/**\n * Iterates through all items in array in reverse order and calls `fn` function for each of\n * them.\n *\n * @param array Source array\n * @param fn Callback function\n */\nexport function eachReverse<A>(array: ArrayLike<A>, fn: (value: A, index: number) => void): void {\n\tlet i = array.length;\n\n\twhile (i > 0) {\n\t\t--i;\n\t\tfn(array[i], i);\n\t}\n}\n\n/**\n * Iterates through all items in array and calls `fn` function for each of\n * them.\n *\n * If `fn` call evaluates to `false`, further iteration is cancelled.\n *\n * @param array Source array\n * @param fn Callback function\n */\nexport function eachContinue<A>(array: ArrayLike<A>, fn: (value: A, index: number) => boolean): void {\n\tconst length = array.length;\n\n\tfor (let i = 0; i < length; ++i) {\n\t\tif (!fn(array[i], i)) {\n\t\t\tbreak;\n\t\t}\n\t}\n}\n\n/**\n * Shifts an item at `index` towards beginning of the array.\n *\n * @param array Source array\n * @param index Target element index\n */\nexport function shiftLeft<A>(array: Array<A>, index: number): void {\n\tconst length = array.length;\n\n\tfor (let i = index; i < length; ++i) {\n\t\tarray[i - index] = array[i];\n\t}\n\n\tarray.length = length - index;\n}\n\n/**\n * Returns the last item of the array.\n *\n * @param array Source array\n * @returns Last item\n */\nexport function last<A>(array: Array<A>): Optional<A> {\n\tconst length = array.length;\n\treturn length ? array[length - 1] : undefined;\n}\n\n/**\n * Returns the first item of the array.\n *\n * @param array Source array\n * @returns Last item\n */\nexport function first<A>(array: Array<A>): Optional<A> {\n\treturn array[0];\n}\n\n/**\n * Inserts `element` into `array` at `index`.\n *\n * Caps `index` to be between `0` and `array.length`\n *\n * @param array Source array\n * @param element Item to insert\n * @param array Index to insert item at\n */\nexport function insert<A>(array: Array<A>, element: A, index: number): void {\n\t//if (array) {\n\tindex = Math.max(0, Math.min(index, array.length));\n\tarray.splice(index, 0, element);\n\t//}\n}\n\n/**\n * Removes all copies of `element` from `array` (if they exist) and then\n * inserts `element` at `index`.\n *\n * @param array Source array\n * @param element Item\n * @param array Index to move item to\n */\nexport function setIndex<A>(array: Array<A>, element: A, index: number): void {\n\tremove(array, element);\n\tinsert(array, element, index);\n}\n\n\n/**\n * Pushes all of the elements from `input` into `array`.\n *\n * @param array Output array\n * @param input Input array\n */\nexport function pushAll<A>(array: Array<A>, input: Array<A>) {\n\tconst length = input.length;\n\n\tfor (let i = 0; i < length; ++i) {\n\t\tarray.push(input[i]);\n\t}\n}\n\n\n/**\n * Removes `element` from `array`.\n *\n * If there are multiple copies of `element`, they are all removed.\n *\n * @param array Source array\n * @param element Item to remove\n */\nexport function remove<A>(array: Array<A>, element: A): boolean {\n\tlet found: boolean = false;\n\tlet index: number = 0;\n\n\tfor (;;) {\n\t\tindex = array.indexOf(element, index);\n\n\t\tif (index === -1) {\n\t\t\treturn found;\n\n\t\t} else {\n\t\t\tfound = true;\n\t\t\tarray.splice(index, 1);\n\t\t}\n\t}\n}\n\nexport function removeFirst<A>(array: Array<A>, element: A): boolean {\n\tlet index: number = array.indexOf(element);\n\n\tif (index !== -1) {\n\t\tarray.splice(index, 1);\n\t\treturn true;\n\n\t} else {\n\t\treturn false;\n\t}\n}\n\n/**\n * Adds an `element` to `array`.\n *\n * If array already contains and item like this, it is removed before adding\n * it again.\n *\n * Optionally `toIndex` can be specified to add element at specific index.\n *\n * @param array Source array\n * @param element Item to add\n * @param array Index to move item to\n */\nexport function move<A>(array: Array<A>, element: A, toIndex?: number): void {\n\t// @todo this implementation must be the same as the List.moveValue method\n\t// @todo don't do anything if the desired index is the same as the current index\n\tlet index = indexOf(array, element);\n\n\t// @todo remove all old values rather than only the first ?\n\tif (index !== -1) {\n\t\tremoveIndex(array, index);\n\t}\n\n\tif (toIndex == null) {\n\t\tarray.push(element);\n\t} else {\n\t\tinsertIndex(array, toIndex, element);\n\t}\n}\n\n\n/**\n * Inserts `element` into `array` at `index`.\n *\n * If `index` is not provided, it will insert `element` at the end of `array`.\n *\n * @param array Source array\n * @param element Item to add\n * @param array Index to add item at\n */\nexport function add<A>(array: Array<A>, element: A, index?: number): void {\n\t// Append to the end if index is not set\n\tif (!$type.isNumber(index)) {\n\t\tarray.push(element);\n\t}\n\n\t// Add to the beginning of array if index is 0\n\telse if (index === 0) {\n\t\tarray.unshift(element);\n\t}\n\t// Add to indicated place if index is set\n\telse {\n\t\tarray.splice(index, 0, element);\n\t}\n}\n\n\n/**\n * Pushes `element` into `array` if it doesn't already exist.\n *\n * @param array Source array\n * @param element Item to add\n */\nexport function pushOne<A>(array: Array<A>, element: A): void {\n\tif (array.indexOf(element) === -1) {\n\t\tarray.push(element);\n\t}\n}\n\n\n/**\n * Removes `element` from `array` (if it exists) and then inserts `element` at\n * `index`.\n *\n * If `index` is not provided, it will insert `element` at the end of `array`.\n *\n * @param array Source array\n * @param element Item to remove\n * @param array Index to move item to\n */\nexport function replace<A>(array: Array<A>, element: A, index?: number): void {\n\t// check if exists\n\tlet ind: number = array.indexOf(element);\n\n\t// remove if exists\n\tif (ind !== -1) {\n\t\tarray.splice(ind, 1);\n\t}\n\n\t// add to end if index is not set\n\tif (!$type.isNumber(index)) {\n\t\tarray.push(element);\n\t}\n\t// add to indicated place if index is set\n\telse {\n\t\tarray.splice(index, 0, element);\n\t}\n}\n\n/**\n * Wraps `input` in an array, if it isn't already an array.\n *\n * @param input Source value\n * @return An array\n */\nexport function toArray<A>(input: Array<A> | A): Array<A> {\n\tif (Array.isArray(input)) {\n\t\treturn input;\n\t}\n\telse {\n\t\treturn [input];\n\t}\n}\n\n/**\n * Returns `true` if `element` exists in `array`.\n *\n * @param array Source array\n * @param element Item to search for\n * @returns Item in array?\n */\nexport function has<A>(array: ArrayLike<A>, element: A): boolean {\n\treturn indexOf(array, element) !== -1;\n}\n\n/**\n * Returns a shallow copy of `array`.\n *\n * @param array Source array\n * @returns Copy of the array\n */\nexport function copy<A>(array: ArrayLike<A>): Array<A> {\n\tconst length = array.length;\n\n\t// It's faster to create the array with a pre-defined length\n\tconst output = new Array(length);\n\n\tfor (let i = 0; i < length; ++i) {\n\t\t// Because the array has a pre-defined length, we have to assign rather than push\n\t\t// This is also faster than pushing\n\t\toutput[i] = array[i];\n\t}\n\n\treturn output;\n}\n\n\n/**\n * Returns a copy of `array` which contains all the elements between `start`\n * and `end`. (including `start` and excluding `end`)\n *\n * If `end` is not provided, it defaults to `array.length`.\n *\n * @param array Source array\n * @param start Start index\n * @param end End index\n * @returns Part of the array\n */\nexport function slice<A>(array: ArrayLike<A>, start: number, end: number = array.length): Array<A> {\n\tconst output = new Array(end - start);\n\n\tfor (let i = start; i < end; ++i) {\n\t\toutput[i - start] = array[i];\n\t}\n\n\treturn output;\n}\n\n/**\n * Inserts a value into array at specific index.\n *\n * @param array Source array\n * @param index Index\n * @param value Value to insert\n */\nexport function insertIndex<A>(array: Array<A>, index: number, value: A): void {\n\tarray.splice(index, 0, value);\n}\n\n/**\n * Removes a value from array at specific index.\n *\n * @param array Source array\n * @param index Index\n */\nexport function removeIndex<A>(array: Array<A>, index: number): void {\n\tarray.splice(index, 1);\n}\n\n/**\n * @ignore Exclude from docs\n * @todo Description\n */\nexport interface SortResult {\n\tfound: boolean;\n\tindex: number\n}\n\n/**\n * Searches the array using custom function and returns index of the item if\n * found.\n *\n * Will call `matches` function on all items of the array. If return value\n * evaluates to `true`, index is returned.\n *\n * Otherwise returns -1.\n *\n * @param array Source array\n * @param matches Search function\n * @returns Index of the item if found\n */\nexport function findIndex<A>(array: ArrayLike<A>, matches: (value: A, index: number) => boolean): number {\n\tconst length = array.length;\n\n\tfor (let i = 0; i < length; ++i) {\n\t\tif (matches(array[i], i)) {\n\t\t\treturn i;\n\t\t}\n\t}\n\n\treturn -1;\n}\n\n/**\n * This is the same as `findIndex` except it searches from right to left.\n *\n * @param array Source array\n * @param matches Search function\n * @returns Index of the item if found\n */\nexport function findIndexReverse<A>(array: ArrayLike<A>, matches: (value: A, index: number) => boolean): number {\n\tlet i = array.length;\n\n\twhile (i > 0) {\n\t\t--i;\n\t\tif (matches(array[i], i)) {\n\t\t\treturn i;\n\t\t}\n\t}\n\n\treturn -1;\n}\n\n/**\n * Searches the array using custom function and returns item if found.\n *\n * Will call `matches` function on all items of the array. If return value\n * evaluates to `true`, index is returned.\n *\n * Otherwise returns `undefined`.\n *\n * @param array Source array\n * @param matches Search function\n * @returns Item if found\n */\nexport function find<A>(array: ArrayLike<A>, matches: (value: A, index: number) => boolean): A | undefined {\n\tconst index = findIndex(array, matches);\n\n\tif (index !== -1) {\n\t\treturn array[index];\n\t}\n}\n\n/**\n * This is the same as `find` except it searches from right to left.\n *\n * @param array Source array\n * @param matches Search function\n * @returns Item if found\n */\nexport function findReverse<A>(array: ArrayLike<A>, matches: (value: A, index: number) => boolean): A | undefined {\n\tconst index = findIndexReverse(array, matches);\n\n\tif (index !== -1) {\n\t\treturn array[index];\n\t}\n}\n\n/**\n * Searches the array using custom function and returns item if found.\n *\n * Will call `matches` function on all items of the array. If value\n * is not `undefined`, it returns it.\n *\n * Otherwise returns `undefined`.\n *\n * @param array Source array\n * @param matches Search function\n * @returns Item if found\n */\nexport function findMap<A, B>(array: ArrayLike<A>, matches: (value: A, index: number) => B | undefined): B | undefined {\n\tconst length = array.length;\n\n\tfor (let i = 0; i < length; ++i) {\n\t\tconst value = matches(array[i], i);\n\n\t\tif (value !== undefined) {\n\t\t\treturn value;\n\t\t}\n\t}\n}\n\n/**\n * Iterates through all items in array and calls `fn` function for each of\n * them.\n *\n * @param array Source array\n * @param fn Callback function\n */\nexport function shuffle<A>(array: Array<A>) {\n\t// https://stackoverflow.com/a/2450976/449477\n\tlet currentIndex = array.length,\n\t\ttemporaryValue,\n\t\trandomIndex;\n\n\t// While there remain elements to shuffle...\n\twhile (0 !== currentIndex) {\n\t\t// Pick a remaining element...\n\t\trandomIndex = Math.floor(Math.random() * currentIndex);\n\t\tcurrentIndex -= 1;\n\n\t\t// And swap it with the current element.\n\t\ttemporaryValue = array[currentIndex];\n\t\tarray[currentIndex] = array[randomIndex];\n\t\tarray[randomIndex] = temporaryValue;\n\t}\n}\n\n\nexport type Ordering = -1 | 0 | 1;\n\n/**\n * @ignore Exclude from docs\n * @todo Description\n */\nexport interface SortResult {\n\tfound: boolean;\n\tindex: number\n}\n\n/**\n * Orders an array using specific `ordering` function and returns right-most index of\n * the `value`.\n *\n * @ignore Exclude from docs\n * @param array Source array\n * @param ordering An ordering function\n * @returns Result of the search\n */\nexport function getSortedIndex<A>(array: ArrayLike<A>, ordering: (left: A) => Ordering): SortResult {\n\tlet start = 0;\n\tlet end = array.length;\n\tlet found = false;\n\n\twhile (start < end) {\n\t\t// TODO is this faster/slower than using Math.floor ?\n\t\tconst pivot = (start + end) >> 1;\n\n\t\tconst order = ordering(array[pivot]);\n\n\t\t// less\n\t\tif (order < 0) {\n\t\t\tstart = pivot + 1;\n\n\t\t// equal\n\t\t} else if (order === 0) {\n\t\t\tfound = true;\n\t\t\tstart = pivot + 1;\n\n\t\t// more\n\t\t} else {\n\t\t\tend = pivot;\n\t\t}\n\t}\n\n\treturn {\n\t\tfound: found,\n\t\tindex: (found ? start - 1 : start)\n\t};\n}\n\n\n/**\n * Orders an array using specific `ordering` function and returns left-most index of\n * the `value`.\n *\n * @ignore Exclude from docs\n * @param array Source array\n * @param ordering An ordering function\n * @returns Result of the search\n */\nexport function getFirstSortedIndex<A>(array: ArrayLike<A>, ordering: (left: A) => Ordering): SortResult {\n\tlet start = 0;\n\tlet end = array.length;\n\tlet found = false;\n\n\twhile (start < end) {\n\t\t// TODO is this faster/slower than using Math.floor ?\n\t\tconst pivot = (start + end) >> 1;\n\n\t\tconst order = ordering(array[pivot]);\n\n\t\t// less\n\t\tif (order < 0) {\n\t\t\tstart = pivot + 1;\n\n\t\t// equal\n\t\t} else if (order === 0) {\n\t\t\tfound = true;\n\t\t\tend = pivot;\n\n\t\t// more\n\t\t} else {\n\t\t\tend = pivot;\n\t\t}\n\t}\n\n\treturn {\n\t\tfound: found,\n\t\tindex: start\n\t};\n}\n\n\nexport function keepIf<A>(array: Array<A>, keep: (value: A) => boolean): void {\n\tlet i = array.length;\n\n\twhile (i > 0) {\n\t\t--i;\n\n\t\tif (!keep(array[i])) {\n\t\t\tarray.splice(i, 1);\n\t\t}\n\t}\n}\n"]}
1
+ {"version":3,"file":"Array.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/Array.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * ============================================================================\n * IMPORTS\n * ============================================================================\n * @hidden\n */\nimport type { Optional } from \"./Type\";\nimport * as $type from \"./Type\";\n\n\n/**\n * ============================================================================\n * UTILITY FUNCTIONS\n * ============================================================================\n * @hidden\n */\n\n/**\n * Searches `array` for `value`.\n *\n * Returns -1 if not found.\n *\n * @param array Source array\n * @param value Value to search\n * @returns Index\n */\nexport function indexOf<A>(array: ArrayLike<A>, value: A): number {\n\tconst length = array.length;\n\n\tfor (let i = 0; i < length; ++i) {\n\t\t// TODO handle NaN\n\t\tif (array[i] === value) {\n\t\t\treturn i;\n\t\t}\n\t}\n\n\treturn -1;\n}\n\n/**\n * Calls `test` for each element in `array`.\n *\n * If `test` returns `true` then it immediately returns `true`.\n *\n * If `test` returns `false` for all of the elements in `array` then it returns `false`.\n *\n * @param array Source array\n * @param test Function which is called on each element\n * @returns Whether `test` returned true or not\n */\nexport function any<A>(array: ArrayLike<A>, test: (value: A) => boolean): boolean {\n\tconst length = array.length;\n\n\tfor (let i = 0; i < length; ++i) {\n\t\tif (test(array[i])) {\n\t\t\treturn true;\n\t\t}\n\t}\n\n\treturn false;\n}\n\n/**\n * Calls `fn` function for every member of array and returns a new array out\n * of all outputs.\n *\n * @param array Source array\n * @param fn Callback function\n * @returns New array\n */\nexport function map<A, B>(array: ArrayLike<A>, fn: (value: A, index: number) => B): Array<B> {\n\tconst length = array.length;\n\tconst output = new Array(length);\n\n\tfor (let i = 0; i < length; ++i) {\n\t\toutput[i] = fn(array[i], i);\n\t}\n\n\treturn output;\n}\n\n/**\n * Iterates through all items in array and calls `fn` function for each of\n * them.\n *\n * @param array Source array\n * @param fn Callback function\n */\nexport function each<A>(array: ArrayLike<A>, fn: (value: A, index: number) => void): void {\n\tconst length = array.length;\n\n\tfor (let i = 0; i < length; ++i) {\n\t\tfn(array[i], i);\n\t}\n}\n\n/**\n * Iterates through all items in array in reverse order and calls `fn` function for each of\n * them.\n *\n * @param array Source array\n * @param fn Callback function\n */\nexport function eachReverse<A>(array: ArrayLike<A>, fn: (value: A, index: number) => void): void {\n\tlet i = array.length;\n\n\twhile (i > 0) {\n\t\t--i;\n\t\tfn(array[i], i);\n\t}\n}\n\n/**\n * Iterates through all items in array and calls `fn` function for each of\n * them.\n *\n * If `fn` call evaluates to `false`, further iteration is cancelled.\n *\n * @param array Source array\n * @param fn Callback function\n */\nexport function eachContinue<A>(array: ArrayLike<A>, fn: (value: A, index: number) => boolean): void {\n\tconst length = array.length;\n\n\tfor (let i = 0; i < length; ++i) {\n\t\tif (!fn(array[i], i)) {\n\t\t\tbreak;\n\t\t}\n\t}\n}\n\n/**\n * Shifts an item at `index` towards beginning of the array.\n *\n * @param array Source array\n * @param index Target element index\n */\nexport function shiftLeft<A>(array: Array<A>, index: number): void {\n\tconst length = array.length;\n\n\tfor (let i = index; i < length; ++i) {\n\t\tarray[i - index] = array[i];\n\t}\n\n\tarray.length = length - index;\n}\n\n/**\n * Returns the last item of the array.\n *\n * @param array Source array\n * @returns Last item\n */\nexport function last<A>(array: Array<A>): Optional<A> {\n\tconst length = array.length;\n\treturn length ? array[length - 1] : undefined;\n}\n\n/**\n * Returns the first item of the array.\n *\n * @param array Source array\n * @returns Last item\n */\nexport function first<A>(array: Array<A>): Optional<A> {\n\treturn array[0];\n}\n\n/**\n * Inserts `element` into `array` at `index`.\n *\n * Caps `index` to be between `0` and `array.length`\n *\n * @param array Source array\n * @param element Item to insert\n * @param array Index to insert item at\n */\nexport function insert<A>(array: Array<A>, element: A, index: number): void {\n\t//if (array) {\n\tindex = Math.max(0, Math.min(index, array.length));\n\tarray.splice(index, 0, element);\n\t//}\n}\n\n/**\n * Removes all copies of `element` from `array` (if they exist) and then\n * inserts `element` at `index`.\n *\n * @param array Source array\n * @param element Item\n * @param array Index to move item to\n */\nexport function setIndex<A>(array: Array<A>, element: A, index: number): void {\n\tremove(array, element);\n\tinsert(array, element, index);\n}\n\n\n/**\n * Pushes all of the elements from `input` into `array`.\n *\n * @param array Output array\n * @param input Input array\n */\nexport function pushAll<A>(array: Array<A>, input: Array<A>) {\n\tconst length = input.length;\n\n\tfor (let i = 0; i < length; ++i) {\n\t\tarray.push(input[i]);\n\t}\n}\n\n\n/**\n * Removes `element` from `array`.\n *\n * If there are multiple copies of `element`, they are all removed.\n *\n * @param array Source array\n * @param element Item to remove\n */\nexport function remove<A>(array: Array<A>, element: A): boolean {\n\tlet found: boolean = false;\n\tlet index: number = 0;\n\n\tfor (;;) {\n\t\tindex = array.indexOf(element, index);\n\n\t\tif (index === -1) {\n\t\t\treturn found;\n\n\t\t} else {\n\t\t\tfound = true;\n\t\t\tarray.splice(index, 1);\n\t\t}\n\t}\n}\n\nexport function removeFirst<A>(array: Array<A>, element: A): boolean {\n\tlet index: number = array.indexOf(element);\n\n\tif (index !== -1) {\n\t\tarray.splice(index, 1);\n\t\treturn true;\n\n\t} else {\n\t\treturn false;\n\t}\n}\n\n/**\n * Adds an `element` to `array`.\n *\n * If array already contains and item like this, it is removed before adding\n * it again.\n *\n * Optionally `toIndex` can be specified to add element at specific index.\n *\n * @param array Source array\n * @param element Item to add\n * @param array Index to move item to\n */\nexport function move<A>(array: Array<A>, element: A, toIndex?: number): void {\n\t// @todo this implementation must be the same as the List.moveValue method\n\t// @todo don't do anything if the desired index is the same as the current index\n\tlet index = indexOf(array, element);\n\n\t// @todo remove all old values rather than only the first ?\n\tif (index !== -1) {\n\t\tremoveIndex(array, index);\n\t}\n\n\tif (toIndex == null) {\n\t\tarray.push(element);\n\t} else {\n\t\tinsertIndex(array, toIndex, element);\n\t}\n}\n\n\n/**\n * Inserts `element` into `array` at `index`.\n *\n * If `index` is not provided, it will insert `element` at the end of `array`.\n *\n * @param array Source array\n * @param element Item to add\n * @param array Index to add item at\n */\nexport function add<A>(array: Array<A>, element: A, index?: number): void {\n\t// Append to the end if index is not set\n\tif (!$type.isNumber(index)) {\n\t\tarray.push(element);\n\t}\n\n\t// Add to the beginning of array if index is 0\n\telse if (index === 0) {\n\t\tarray.unshift(element);\n\t}\n\t// Add to indicated place if index is set\n\telse {\n\t\tarray.splice(index, 0, element);\n\t}\n}\n\n\n/**\n * Pushes `element` into `array` if it doesn't already exist.\n *\n * @param array Source array\n * @param element Item to add\n */\nexport function pushOne<A>(array: Array<A>, element: A): void {\n\tif (array.indexOf(element) === -1) {\n\t\tarray.push(element);\n\t}\n}\n\n\n/**\n * Removes `element` from `array` (if it exists) and then inserts `element` at\n * `index`.\n *\n * If `index` is not provided, it will insert `element` at the end of `array`.\n *\n * @param array Source array\n * @param element Item to remove\n * @param array Index to move item to\n */\nexport function replace<A>(array: Array<A>, element: A, index?: number): void {\n\t// check if exists\n\tlet ind: number = array.indexOf(element);\n\n\t// remove if exists\n\tif (ind !== -1) {\n\t\tarray.splice(ind, 1);\n\t}\n\n\t// add to end if index is not set\n\tif (!$type.isNumber(index)) {\n\t\tarray.push(element);\n\t}\n\t// add to indicated place if index is set\n\telse {\n\t\tarray.splice(index, 0, element);\n\t}\n}\n\n/**\n * Wraps `input` in an array, if it isn't already an array.\n *\n * @param input Source value\n * @return An array\n */\nexport function toArray<A>(input: Array<A> | A): Array<A> {\n\tif (Array.isArray(input)) {\n\t\treturn input;\n\t}\n\telse {\n\t\treturn [input];\n\t}\n}\n\n/**\n * Returns `true` if `element` exists in `array`.\n *\n * @param array Source array\n * @param element Item to search for\n * @returns Item in array?\n */\nexport function has<A>(array: ArrayLike<A>, element: A): boolean {\n\treturn indexOf(array, element) !== -1;\n}\n\n/**\n * Returns a shallow copy of `array`.\n *\n * @param array Source array\n * @returns Copy of the array\n */\nexport function copy<A>(array: ArrayLike<A>): Array<A> {\n\tconst length = array.length;\n\n\t// It's faster to create the array with a pre-defined length\n\tconst output = new Array(length);\n\n\tfor (let i = 0; i < length; ++i) {\n\t\t// Because the array has a pre-defined length, we have to assign rather than push\n\t\t// This is also faster than pushing\n\t\toutput[i] = array[i];\n\t}\n\n\treturn output;\n}\n\n\n/**\n * Returns a copy of `array` which contains all the elements between `start`\n * and `end`. (including `start` and excluding `end`)\n *\n * If `end` is not provided, it defaults to `array.length`.\n *\n * @param array Source array\n * @param start Start index\n * @param end End index\n * @returns Part of the array\n */\nexport function slice<A>(array: ArrayLike<A>, start: number, end: number = array.length): Array<A> {\n\tconst output = new Array(end - start);\n\n\tfor (let i = start; i < end; ++i) {\n\t\toutput[i - start] = array[i];\n\t}\n\n\treturn output;\n}\n\n/**\n * Inserts a value into array at specific index.\n *\n * @param array Source array\n * @param index Index\n * @param value Value to insert\n */\nexport function insertIndex<A>(array: Array<A>, index: number, value: A): void {\n\tarray.splice(index, 0, value);\n}\n\n/**\n * Removes a value from array at specific index.\n *\n * @param array Source array\n * @param index Index\n */\nexport function removeIndex<A>(array: Array<A>, index: number): void {\n\tarray.splice(index, 1);\n}\n\n/**\n * @ignore Exclude from docs\n * @todo Description\n */\nexport interface SortResult {\n\tfound: boolean;\n\tindex: number\n}\n\n/**\n * Searches the array using custom function and returns index of the item if\n * found.\n *\n * Will call `matches` function on all items of the array. If return value\n * evaluates to `true`, index is returned.\n *\n * Otherwise returns -1.\n *\n * @param array Source array\n * @param matches Search function\n * @returns Index of the item if found\n */\nexport function findIndex<A>(array: ArrayLike<A>, matches: (value: A, index: number) => boolean): number {\n\tconst length = array.length;\n\n\tfor (let i = 0; i < length; ++i) {\n\t\tif (matches(array[i], i)) {\n\t\t\treturn i;\n\t\t}\n\t}\n\n\treturn -1;\n}\n\n/**\n * This is the same as `findIndex` except it searches from right to left.\n *\n * @param array Source array\n * @param matches Search function\n * @returns Index of the item if found\n */\nexport function findIndexReverse<A>(array: ArrayLike<A>, matches: (value: A, index: number) => boolean): number {\n\tlet i = array.length;\n\n\twhile (i > 0) {\n\t\t--i;\n\t\tif (matches(array[i], i)) {\n\t\t\treturn i;\n\t\t}\n\t}\n\n\treturn -1;\n}\n\n/**\n * Searches the array using custom function and returns item if found.\n *\n * Will call `matches` function on all items of the array. If return value\n * evaluates to `true`, index is returned.\n *\n * Otherwise returns `undefined`.\n *\n * @param array Source array\n * @param matches Search function\n * @returns Item if found\n */\nexport function find<A>(array: ArrayLike<A>, matches: (value: A, index: number) => boolean): A | undefined {\n\tconst index = findIndex(array, matches);\n\n\tif (index !== -1) {\n\t\treturn array[index];\n\t}\n}\n\n/**\n * This is the same as `find` except it searches from right to left.\n *\n * @param array Source array\n * @param matches Search function\n * @returns Item if found\n */\nexport function findReverse<A>(array: ArrayLike<A>, matches: (value: A, index: number) => boolean): A | undefined {\n\tconst index = findIndexReverse(array, matches);\n\n\tif (index !== -1) {\n\t\treturn array[index];\n\t}\n}\n\n/**\n * Searches the array using custom function and returns item if found.\n *\n * Will call `matches` function on all items of the array. If value\n * is not `undefined`, it returns it.\n *\n * Otherwise returns `undefined`.\n *\n * @param array Source array\n * @param matches Search function\n * @returns Item if found\n */\nexport function findMap<A, B>(array: ArrayLike<A>, matches: (value: A, index: number) => B | undefined): B | undefined {\n\tconst length = array.length;\n\n\tfor (let i = 0; i < length; ++i) {\n\t\tconst value = matches(array[i], i);\n\n\t\tif (value !== undefined) {\n\t\t\treturn value;\n\t\t}\n\t}\n}\n\n/**\n * Iterates through all items in array and calls `fn` function for each of\n * them.\n *\n * @param array Source array\n * @param fn Callback function\n */\nexport function shuffle<A>(array: Array<A>) {\n\t// https://stackoverflow.com/a/2450976/449477\n\tlet currentIndex = array.length,\n\t\ttemporaryValue,\n\t\trandomIndex;\n\n\t// While there remain elements to shuffle...\n\twhile (0 !== currentIndex) {\n\t\t// Pick a remaining element...\n\t\trandomIndex = Math.floor(Math.random() * currentIndex);\n\t\tcurrentIndex -= 1;\n\n\t\t// And swap it with the current element.\n\t\ttemporaryValue = array[currentIndex];\n\t\tarray[currentIndex] = array[randomIndex];\n\t\tarray[randomIndex] = temporaryValue;\n\t}\n}\n\n\nexport type Ordering = -1 | 0 | 1;\n\n/**\n * @ignore Exclude from docs\n * @todo Description\n */\nexport interface SortResult {\n\tfound: boolean;\n\tindex: number\n}\n\n/**\n * Orders an array using specific `ordering` function and returns right-most index of\n * the `value`.\n *\n * @ignore Exclude from docs\n * @param array Source array\n * @param ordering An ordering function\n * @returns Result of the search\n */\nexport function getSortedIndex<A>(array: ArrayLike<A>, ordering: (left: A) => Ordering): SortResult {\n\tlet start = 0;\n\tlet end = array.length;\n\tlet found = false;\n\n\twhile (start < end) {\n\t\t// TODO is this faster/slower than using Math.floor ?\n\t\tconst pivot = (start + end) >> 1;\n\n\t\tconst order = ordering(array[pivot]);\n\n\t\t// less\n\t\tif (order < 0) {\n\t\t\tstart = pivot + 1;\n\n\t\t// equal\n\t\t} else if (order === 0) {\n\t\t\tfound = true;\n\t\t\tfor (start = pivot + 1; start < end && ordering(array[start]) === 0; start++);\n\t\t\tstart--;\n\t\t\tbreak;\n\n\t\t// more\n\t\t} else {\n\t\t\tend = pivot;\n\t\t}\n\t}\n\n\treturn {\n\t\tfound: found,\n\t\tindex: start\n\t};\n}\n\n\n/**\n * Orders an array using specific `ordering` function and returns left-most index of\n * the `value`.\n *\n * @ignore Exclude from docs\n * @param array Source array\n * @param ordering An ordering function\n * @returns Result of the search\n */\nexport function getFirstSortedIndex<A>(array: ArrayLike<A>, ordering: (left: A) => Ordering): SortResult {\n\tlet start = 0;\n\tlet end = array.length;\n\tlet found = false;\n\n\twhile (start < end) {\n\t\t// TODO is this faster/slower than using Math.floor ?\n\t\tconst pivot = (start + end) >> 1;\n\n\t\tconst order = ordering(array[pivot]);\n\n\t\t// less\n\t\tif (order < 0) {\n\t\t\tstart = pivot + 1;\n\n\t\t// equal\n\t\t} else if (order === 0) {\n\t\t\tfound = true;\n\t\t\tend = pivot;\n\n\t\t// more\n\t\t} else {\n\t\t\tend = pivot;\n\t\t}\n\t}\n\n\treturn {\n\t\tfound: found,\n\t\tindex: start\n\t};\n}\n\n\nexport function keepIf<A>(array: Array<A>, keep: (value: A) => boolean): void {\n\tlet i = array.length;\n\n\twhile (i > 0) {\n\t\t--i;\n\n\t\tif (!keep(array[i])) {\n\t\t\tarray.splice(i, 1);\n\t\t}\n\t}\n}\n"]}
@@ -5,18 +5,8 @@ import * as $array from "./Array";
5
5
  */
6
6
  class Result {
7
7
  constructor(duration, iterations) {
8
- Object.defineProperty(this, "duration", {
9
- enumerable: true,
10
- configurable: true,
11
- writable: true,
12
- value: duration
13
- });
14
- Object.defineProperty(this, "iterations", {
15
- enumerable: true,
16
- configurable: true,
17
- writable: true,
18
- value: iterations
19
- });
8
+ this.duration = duration;
9
+ this.iterations = iterations;
20
10
  }
21
11
  ms() {
22
12
  return this.duration / this.iterations;
@@ -45,12 +35,7 @@ function runTest(fn) {
45
35
  */
46
36
  export class Benchmark {
47
37
  constructor() {
48
- Object.defineProperty(this, "tests", {
49
- enumerable: true,
50
- configurable: true,
51
- writable: true,
52
- value: []
53
- });
38
+ this.tests = [];
54
39
  }
55
40
  test(name, fn) {
56
41
  this.tests.push({ name, fn });
@@ -1 +1 @@
1
- {"version":3,"file":"Benchmark.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/Benchmark.ts"],"names":[],"mappings":"AAAA,cAAc,CAAA,MAAM;AAEpB,OAAO,KAAK,MAAM,MAAM,SAAS,CAAC;AAUlC;;GAEG;AACH,MAAM,MAAM;IACX,YAAmB,QAAgB,EAAS,UAAkB;;;;;mBAA3C;;;;;;mBAAyB;;IAAqB,CAAC;IAE3D,EAAE;QACR,OAAO,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC;IACxC,CAAC;CACD;AAED;;GAEG;AACH,SAAS,OAAO,CAAC,EAAiB;IACjC,IAAI,UAAU,GAAG,CAAC,CAAC;IAEnB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACzB,MAAM,GAAG,GAAG,KAAK,GAAG,KAAK,CAAC;IAE1B,SAAS;QACR,IAAI,CAAC,EAAE,EAAE,EAAE;YACV,OAAO;SACP;QAED,EAAE,UAAU,CAAC;QAEb,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEvB,IAAI,GAAG,IAAI,GAAG,EAAE;YACf,OAAO,IAAI,MAAM,CAAC,GAAG,GAAG,KAAK,EAAE,UAAU,CAAC,CAAC;SAC3C;KACD;AACF,CAAC;AAED;;GAEG;AACH,MAAM,OAAO,SAAS;IAAtB;QACC;;;;mBAA+B,EAAE;WAAC;IAkCnC,CAAC;IAhCO,IAAI,CAAC,IAAY,EAAE,EAAiB;QAC1C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;IAC/B,CAAC;IAEM,GAAG;QACT,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QAErC,IAAI,MAAM,GAAG,CAAC,CAAC;QAEf,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE;YAChC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE;gBACf,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC;aACvC;YAED,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAE,CAAC,EAAE,EAAE,CAAC;QAExC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE;YAChC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAEhC,IAAI,MAAM,EAAE;gBACX,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;aAEvF;iBAAM;gBACN,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC;aACvC;QACF,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IACnC,CAAC;CACD","sourcesContent":["/** @ignore *//** */\n\nimport * as $array from \"./Array\";\n\n/**\n * @ignore\n */\ninterface Test {\n\tname: string;\n\tfn: () => boolean;\n}\n\n/**\n * @ignore\n */\nclass Result {\n\tconstructor(public duration: number, public iterations: number) {}\n\n\tpublic ms(): number {\n\t\treturn this.duration / this.iterations;\n\t}\n}\n\n/**\n * @ignore\n */\nfunction runTest(fn: () => boolean): Result | undefined {\n\tlet iterations = 0;\n\n\tconst start = Date.now();\n\tconst end = start + 10000;\n\n\tfor (;;) {\n\t\tif (!fn()) {\n\t\t\treturn;\n\t\t}\n\n\t\t++iterations;\n\n\t\tconst now = Date.now();\n\n\t\tif (now >= end) {\n\t\t\treturn new Result(now - start, iterations);\n\t\t}\n\t}\n}\n\n/**\n * @ignore\n */\nexport class Benchmark {\n\tprotected tests: Array<Test> = [];\n\n\tpublic test(name: string, fn: () => boolean): void {\n\t\tthis.tests.push({ name, fn });\n\t}\n\n\tpublic run(): void {\n\t\tconsole.log(\"Benchmark starting...\");\n\n\t\tlet maxLen = 0;\n\n\t\t$array.each(this.tests, (test) => {\n\t\t\tif (!test.fn()) {\n\t\t\t\tthrow new Error(test.name + \" failed\");\n\t\t\t}\n\n\t\t\tmaxLen = Math.max(maxLen, test.name.length);\n\t\t});\n\n\t\tconst empty = runTest(() => true)!.ms();\n\n\t\t$array.each(this.tests, (test) => {\n\t\t\tconst result = runTest(test.fn);\n\n\t\t\tif (result) {\n\t\t\t\tconsole.log(`${test.name.padStart(maxLen)}: ${(result.ms() - empty).toFixed(10)} ms`);\n\n\t\t\t} else {\n\t\t\t\tthrow new Error(test.name + \" failed\");\n\t\t\t}\n\t\t});\n\n\t\tconsole.log(\"Benchmark finished\");\n\t}\n}\n"]}
1
+ {"version":3,"file":"Benchmark.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/Benchmark.ts"],"names":[],"mappings":"AAAA,cAAc,CAAA,MAAM;AAEpB,OAAO,KAAK,MAAM,MAAM,SAAS,CAAC;AAUlC;;GAEG;AACH,MAAM,MAAM;IACX,YAAmB,QAAgB,EAAS,UAAkB;QAA3C,aAAQ,GAAR,QAAQ,CAAQ;QAAS,eAAU,GAAV,UAAU,CAAQ;IAAG,CAAC;IAE3D,EAAE;QACR,OAAO,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC;IACxC,CAAC;CACD;AAED;;GAEG;AACH,SAAS,OAAO,CAAC,EAAiB;IACjC,IAAI,UAAU,GAAG,CAAC,CAAC;IAEnB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACzB,MAAM,GAAG,GAAG,KAAK,GAAG,KAAK,CAAC;IAE1B,SAAS;QACR,IAAI,CAAC,EAAE,EAAE,EAAE;YACV,OAAO;SACP;QAED,EAAE,UAAU,CAAC;QAEb,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEvB,IAAI,GAAG,IAAI,GAAG,EAAE;YACf,OAAO,IAAI,MAAM,CAAC,GAAG,GAAG,KAAK,EAAE,UAAU,CAAC,CAAC;SAC3C;KACD;AACF,CAAC;AAED;;GAEG;AACH,MAAM,OAAO,SAAS;IAAtB;QACW,UAAK,GAAgB,EAAE,CAAC;IAkCnC,CAAC;IAhCO,IAAI,CAAC,IAAY,EAAE,EAAiB;QAC1C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;IAC/B,CAAC;IAEM,GAAG;QACT,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QAErC,IAAI,MAAM,GAAG,CAAC,CAAC;QAEf,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE;YAChC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE;gBACf,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC;aACvC;YAED,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAE,CAAC,EAAE,EAAE,CAAC;QAExC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE;YAChC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAEhC,IAAI,MAAM,EAAE;gBACX,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;aAEvF;iBAAM;gBACN,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC;aACvC;QACF,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IACnC,CAAC;CACD","sourcesContent":["/** @ignore *//** */\n\nimport * as $array from \"./Array\";\n\n/**\n * @ignore\n */\ninterface Test {\n\tname: string;\n\tfn: () => boolean;\n}\n\n/**\n * @ignore\n */\nclass Result {\n\tconstructor(public duration: number, public iterations: number) {}\n\n\tpublic ms(): number {\n\t\treturn this.duration / this.iterations;\n\t}\n}\n\n/**\n * @ignore\n */\nfunction runTest(fn: () => boolean): Result | undefined {\n\tlet iterations = 0;\n\n\tconst start = Date.now();\n\tconst end = start + 10000;\n\n\tfor (;;) {\n\t\tif (!fn()) {\n\t\t\treturn;\n\t\t}\n\n\t\t++iterations;\n\n\t\tconst now = Date.now();\n\n\t\tif (now >= end) {\n\t\t\treturn new Result(now - start, iterations);\n\t\t}\n\t}\n}\n\n/**\n * @ignore\n */\nexport class Benchmark {\n\tprotected tests: Array<Test> = [];\n\n\tpublic test(name: string, fn: () => boolean): void {\n\t\tthis.tests.push({ name, fn });\n\t}\n\n\tpublic run(): void {\n\t\tconsole.log(\"Benchmark starting...\");\n\n\t\tlet maxLen = 0;\n\n\t\t$array.each(this.tests, (test) => {\n\t\t\tif (!test.fn()) {\n\t\t\t\tthrow new Error(test.name + \" failed\");\n\t\t\t}\n\n\t\t\tmaxLen = Math.max(maxLen, test.name.length);\n\t\t});\n\n\t\tconst empty = runTest(() => true)!.ms();\n\n\t\t$array.each(this.tests, (test) => {\n\t\t\tconst result = runTest(test.fn);\n\n\t\t\tif (result) {\n\t\t\t\tconsole.log(`${test.name.padStart(maxLen)}: ${(result.ms() - empty).toFixed(10)} ms`);\n\n\t\t\t} else {\n\t\t\t\tthrow new Error(test.name + \" failed\");\n\t\t\t}\n\t\t});\n\n\t\tconsole.log(\"Benchmark finished\");\n\t}\n}\n"]}
@@ -8,24 +8,7 @@ import * as $array from "./Array";
8
8
  export class Children extends List {
9
9
  constructor(container) {
10
10
  super();
11
- Object.defineProperty(this, "_disposed", {
12
- enumerable: true,
13
- configurable: true,
14
- writable: true,
15
- value: false
16
- });
17
- Object.defineProperty(this, "_container", {
18
- enumerable: true,
19
- configurable: true,
20
- writable: true,
21
- value: void 0
22
- });
23
- Object.defineProperty(this, "_events", {
24
- enumerable: true,
25
- configurable: true,
26
- writable: true,
27
- value: void 0
28
- });
11
+ this._disposed = false;
29
12
  this._container = container;
30
13
  this._events = this.events.onAll((change) => {
31
14
  if (change.type === "clear") {
@@ -1 +1 @@
1
- {"version":3,"file":"Children.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/Children.ts"],"names":[],"mappings":"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","sourcesContent":["import { List } from \"./List\";\nimport type { IDisposer } from \"./Disposer\";\nimport type { Container } from \"../render/Container\";\nimport type { Sprite } from \"../render/Sprite\";\nimport * as $array from \"./Array\";\n\n/**\n * A version of [[List]] to hold children of the [[Container]].\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/containers/} for more info\n */\nexport class Children<A extends Sprite> extends List<A> implements IDisposer {\n\tprivate _disposed: boolean = false;\n\tprivate _container: Container;\n\tprivate _events: IDisposer;\n\n\tpublic constructor(container: Container) {\n\t\tsuper();\n\n\t\tthis._container = container;\n\n\t\tthis._events = this.events.onAll((change) => {\n\t\t\tif (change.type === \"clear\") {\n\t\t\t\t$array.each(change.oldValues, (x) => {\n\t\t\t\t\tthis._onRemoved(x);\n\t\t\t\t});\n\n\t\t\t} else if (change.type === \"push\") {\n\t\t\t\tthis._onInserted(change.newValue);\n\n\t\t\t} else if (change.type === \"setIndex\") {\n\t\t\t\tthis._onRemoved(change.oldValue);\n\t\t\t\tthis._onInserted(change.newValue, change.index);\n\n\t\t\t} else if (change.type === \"insertIndex\") {\n\t\t\t\tthis._onInserted(change.newValue, change.index);\n\n\t\t\t} else if (change.type === \"removeIndex\") {\n\t\t\t\tthis._onRemoved(change.oldValue);\n\n\t\t\t} else if (change.type === \"moveIndex\") {\n\t\t\t\tthis._onRemoved(change.value);\n\t\t\t\tthis._onInserted(change.value, change.newIndex);\n\n\t\t\t} else {\n\t\t\t\tthrow new Error(\"Unknown IListEvent type\");\n\t\t\t}\n\t\t});\n\t}\n\n\tprotected _onInserted(child: A, index?: number) {\n\t\tchild._setParent(this._container, true);\n\t\tconst childrenDisplay = this._container._childrenDisplay;\n\t\tif (index === undefined) {\n\t\t\tchildrenDisplay.addChild(child._display);\n\n\t\t} else {\n\t\t\tchildrenDisplay.addChildAt(child._display, index);\n\t\t}\n\t}\n\n\tprotected _onRemoved(child: A) {\n\t\tthis._container._childrenDisplay.removeChild(child._display);\n\t\tthis._container.markDirtyBounds();\n\t\tthis._container.markDirty();\n\t}\n\n\t/**\n\t * Returns `true` if obejct is disposed.\n\t */\n\tpublic isDisposed(): boolean {\n\t\treturn this._disposed;\n\t}\n\n\t/**\n\t * Permanently dispose this object.\n\t */\n\tpublic dispose() {\n\t\tif (!this._disposed) {\n\t\t\tthis._disposed = true;\n\n\t\t\tthis._events.dispose();\n\n\t\t\t$array.each(this.values, (child) => {\n\t\t\t\tchild.dispose();\n\t\t\t});\n\t\t}\n\t}\n}\n"]}
1
+ {"version":3,"file":"Children.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/Children.ts"],"names":[],"mappings":"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","sourcesContent":["import { List } from \"./List\";\nimport type { IDisposer } from \"./Disposer\";\nimport type { Container } from \"../render/Container\";\nimport type { Sprite } from \"../render/Sprite\";\nimport * as $array from \"./Array\";\n\n/**\n * A version of [[List]] to hold children of the [[Container]].\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/containers/} for more info\n */\nexport class Children<A extends Sprite> extends List<A> implements IDisposer {\n\tprivate _disposed: boolean = false;\n\tprivate _container: Container;\n\tprivate _events: IDisposer;\n\n\tpublic constructor(container: Container) {\n\t\tsuper();\n\n\t\tthis._container = container;\n\n\t\tthis._events = this.events.onAll((change) => {\n\t\t\tif (change.type === \"clear\") {\n\t\t\t\t$array.each(change.oldValues, (x) => {\n\t\t\t\t\tthis._onRemoved(x);\n\t\t\t\t});\n\n\t\t\t} else if (change.type === \"push\") {\n\t\t\t\tthis._onInserted(change.newValue);\n\n\t\t\t} else if (change.type === \"setIndex\") {\n\t\t\t\tthis._onRemoved(change.oldValue);\n\t\t\t\tthis._onInserted(change.newValue, change.index);\n\n\t\t\t} else if (change.type === \"insertIndex\") {\n\t\t\t\tthis._onInserted(change.newValue, change.index);\n\n\t\t\t} else if (change.type === \"removeIndex\") {\n\t\t\t\tthis._onRemoved(change.oldValue);\n\n\t\t\t} else if (change.type === \"moveIndex\") {\n\t\t\t\tthis._onRemoved(change.value);\n\t\t\t\tthis._onInserted(change.value, change.newIndex);\n\n\t\t\t} else {\n\t\t\t\tthrow new Error(\"Unknown IListEvent type\");\n\t\t\t}\n\t\t});\n\t}\n\n\tprotected _onInserted(child: A, index?: number) {\n\t\tchild._setParent(this._container, true);\n\t\tconst childrenDisplay = this._container._childrenDisplay;\n\t\tif (index === undefined) {\n\t\t\tchildrenDisplay.addChild(child._display);\n\n\t\t} else {\n\t\t\tchildrenDisplay.addChildAt(child._display, index);\n\t\t}\n\t}\n\n\tprotected _onRemoved(child: A) {\n\t\tthis._container._childrenDisplay.removeChild(child._display);\n\t\tthis._container.markDirtyBounds();\n\t\tthis._container.markDirty();\n\t}\n\n\t/**\n\t * Returns `true` if obejct is disposed.\n\t */\n\tpublic isDisposed(): boolean {\n\t\treturn this._disposed;\n\t}\n\n\t/**\n\t * Permanently dispose this object.\n\t */\n\tpublic dispose() {\n\t\tif (!this._disposed) {\n\t\t\tthis._disposed = true;\n\n\t\t\tthis._events.dispose();\n\n\t\t\t$array.each(this.values, (child) => {\n\t\t\t\tchild.dispose();\n\t\t\t});\n\t\t}\n\t}\n}\n"]}
@@ -67,12 +67,6 @@ export function color(input) {
67
67
  */
68
68
  export class Color {
69
69
  constructor(hex) {
70
- Object.defineProperty(this, "_hex", {
71
- enumerable: true,
72
- configurable: true,
73
- writable: true,
74
- value: void 0
75
- });
76
70
  this._hex = hex | 0;
77
71
  }
78
72
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Color.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/Color.ts"],"names":[],"mappings":"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","sourcesContent":["import { range, Time } from \"./Animation\";\nimport * as $utils from \"./Utils\";\nimport * as $type from \"./Type\";\n\n/**\n * @ignore\n */\nfunction string2hex(string: string): number {\n\t//string = cssColorNames[string.toLowerCase()] || string;\n\n\tif (string[0] === \"#\") {\n\t\tstring = string.substr(1);\n\t}\n\tif (string.length == 3) {\n\t\tstring = string[0].repeat(2) + string[1].repeat(2) + string[2].repeat(2);\n\t}\n\n\treturn parseInt(string, 16);\n}\n\n/**\n * @ignore\n */\nexport function rgba2hex(color: string): number {\n\tcolor = color.replace(/[ ]/g, \"\");\n\n\t// Init\n\tlet matches: string[] | null = color.match(/^rgb\\(([0-9]*),([0-9]*),([0-9]*)\\)/i);\n\n\t// Try rgb() format\n\tif (matches) {\n\t\tmatches.push(\"1\");\n\n\t} else {\n\t\tmatches = color.match(/^rgba\\(([0-9]*),([0-9]*),([0-9]*),([.0-9]*)\\)/i);\n\n\t\tif (!matches) {\n\t\t\treturn 0x000000;\n\t\t}\n\t}\n\n\tlet hex = \"\";\n\tfor (let i = 1; i <= 3; i++) {\n\t\tlet val = parseInt(matches[i]).toString(16);\n\t\tif (val.length == 1) {\n\t\t\tval = \"0\" + val;\n\t\t}\n\t\thex += val;\n\t}\n\n\treturn string2hex(hex);\n\n}\n\n/**\n * Returns a new [[Color]] object base on input.\n *\n * Accepts parameters in CSS hex or rgb/rtba strings, or hex numbers.\n *\n * * `\"#f00\"`\n * * `\"#ff0000\"`\n * * `\"rgb(255, 0, 0)\"`\n * * `\"rgba(255, 0, 0, 1)\"`\n * * `0xff0000`\n *\n * @param input Input color\n * @return Color\n */\nexport function color(input: number | string): Color {\n\treturn Color.fromAny(input);\n}\n\n/**\n * Wherever color needs to be specified in amCharts 5, `Color` object needs to\n * be used.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/} for more info\n * @important\n */\nexport class Color {\n\tprotected _hex: number;\n\n\tprivate constructor(hex: number) {\n\t\tthis._hex = hex | 0;\n\t}\n\n\t/**\n\t * Color numeric value.\n\t */\n\tpublic get hex(): number {\n\t\treturn this._hex;\n\t}\n\n\t/**\n\t * Value of color's R channel.\n\t * @return R value\n\t */\n\tpublic get r(): number {\n\t\treturn this._hex >>> 16;\n\t}\n\n\t/**\n\t * Value of color's G channel.\n\t * @return G value\n\t */\n\tpublic get g(): number {\n\t\treturn (this._hex >> 8) & 0xFF;\n\t}\n\n\t/**\n\t * Value of color's B channel.\n\t * @return B value\n\t */\n\tpublic get b(): number {\n\t\treturn this._hex & 0xFF;\n\t}\n\n\t/**\n\t * Returns color CSS representation in form of `rgba(r, g, b, a)` string.\n\t *\n\t * @param alpha Opacity\n\t * @return CSS string\n\t */\n\tpublic toCSS(alpha: number = 1): string {\n\t\treturn \"rgba(\" + this.r + \", \" + this.g + \", \" + this.b + \", \" + alpha + \")\";\n\t}\n\n\t/**\n\t * Returns color CSS representation in form of `#rgb` string.\n\t *\n\t * @return CSS string\n\t */\n\tpublic toCSSHex(): string {\n\t\treturn \"#\" + $utils.padString(this.r.toString(16), 2) + $utils.padString(this.g.toString(16), 2) + $utils.padString(this.b.toString(16), 2);\n\t}\n\n\t/**\n\t * Returns color's HSL info.\n\t * @param alpha Opacity\n\t * @return HSL info\n\t */\n\tpublic toHSL(alpha: number = 1): $utils.iHSL {\n\t\treturn $utils.rgbToHsl({\n\t\t\tr: this.r,\n\t\t\tg: this.g,\n\t\t\tb: this.b,\n\t\t\ta: alpha\n\t\t})\n\t}\n\n\t/**\n\t * Converts HSL values into a new [[Color]] object.\n\t *\n\t * @param h H value\n\t * @param s S value\n\t * @param l L value\n\t * @return Color object\n\t */\n\tpublic static fromHSL(h: number, s: number, l: number): Color {\n\t\tconst rgb = $utils.hslToRgb({\n\t\t\th: h,\n\t\t\ts: s,\n\t\t\tl: l\n\t\t});\n\t\treturn this.fromRGB(rgb.r, rgb.g, rgb.b);\n\t}\n\n\tpublic toString(): string {\n\t\treturn this.toCSSHex();\n\t}\n\n\t/**\n\t * Converts hex number into a new [[Color]] object.\n\t *\n\t * ```TypeScript\n\t * Color.fromHex(0xff0000) // red\n\t * ```\n\t * ```JavaScript\n\t * Color.fromHex(0xff0000) // red\n\t * ```\n\t *\n\t * @param hex Hex color\n\t * @return Color\n\t */\n\tpublic static fromHex(hex: number): Color {\n\t\treturn new Color(hex);\n\t}\n\n\t/**\n\t * Converts RGB values to a new [[Color]] object.\n\t *\n\t * @param r R value\n\t * @param g G value\n\t * @param b B value\n\t * @return Color\n\t */\n\tpublic static fromRGB(r: number, g: number, b: number): Color {\n\t\treturn new Color((b | 0) + (g << 8) + (r << 16));\n\t}\n\n\t/**\n\t * Converts RGB string to a new [[Color]] object.\n\t *\n\t * ```TypeScript\n\t * Color.fromString(\"#ff0000\") // red\n\t * ```\n\t * ```JavaScript\n\t * Color.fromString(\"#ff0000\") // red\n\t * ```\n\t *\n\t * @param s RGB string\n\t * @return Color\n\t */\n\tpublic static fromString(s: string): Color {\n\t\treturn new Color(string2hex(s));\n\t}\n\n\t/**\n\t * Converts CSS rgba() syntax to a new [[Color]] object.\n\t *\n\t * ```TypeScript\n\t * Color.fromCSS(\"rgba(255, 0, 0, 1)\") // red\n\t * ```\n\t * ```JavaScript\n\t * Color.fromCSS(\"rgba(255, 0, 0, 1)\") // red\n\t * ```\n\t *\n\t * @param {string} s [description]\n\t * @return {Color} [description]\n\t */\n\tpublic static fromCSS(s: string): Color {\n\t\treturn new Color(rgba2hex(s));\n\t}\n\n\t/**\n\t * Convert to color from virtually anything.\n\t *\n\t * Will throw an exception if unable to resolve the color.\n\t *\n\t * @param s Source\n\t * @return Color\n\t */\n\tpublic static fromAny(s: string | number | Color): Color {\n\t\tif ($type.isString(s)) {\n\t\t\tif (s[0] == \"#\") {\n\t\t\t\treturn Color.fromString(s);\n\t\t\t}\n\t\t\telse if (s.substr(0, 3) == \"rgb\") {\n\t\t\t\treturn Color.fromCSS(s);\n\t\t\t}\n\t\t}\n\t\telse if ($type.isNumber(s)) {\n\t\t\treturn Color.fromHex(s);\n\t\t}\n\t\telse if (s instanceof Color) {\n\t\t\treturn Color.fromHex(s.hex);\n\t\t}\n\n\t\tthrow new Error(\"Unknown color syntax: \" + s);\n\t}\n\n\t/**\n\t * Returns a new [[Color]] object based on either `lightAlternative` or\n\t * `darkAlternative` depending on which one is more contrasting with\n\t * the `color`.\n\t *\n\t * @param color Reference color\n\t * @param lightAlternative Light color\n\t * @param darkAlternative Dark color\n\t * @return Alternative color\n\t */\n\tpublic static alternative(color: Color, lightAlternative?: Color, darkAlternative?: Color): Color {\n\t\tconst rgb = $utils.alternativeColor(\n\t\t\t{ r: color.r, g: color.g, b: color.b },\n\t\t\tlightAlternative ? { r: lightAlternative.r, g: lightAlternative.g, b: lightAlternative.b } : undefined,\n\t\t\tdarkAlternative ? { r: darkAlternative.r, g: darkAlternative.g, b: darkAlternative.b } : undefined\n\t\t);\n\t\treturn this.fromRGB(rgb.r, rgb.g, rgb.b);\n\t}\n\n\t/**\n\t * Returns an intermediate Color between two reference colors depending on\n\t * the progress (`diff`) between the two.\n\t *\n\t * @param diff Progress\n\t * @param from Source color\n\t * @param to Target color\n\t * @param mode Interpolation mode\n\t * @return Color\n\t */\n\tpublic static interpolate(diff: Time, from: Color, to: Color, mode: \"rgb\" | \"hsl\" = \"rgb\"): Color {\n\t\tif (mode == \"hsl\") {\n\t\t\tconst fromHSL = from.toHSL();\n\t\t\tconst toHSL = to.toHSL();\n\t\t\treturn Color.fromHSL(\n\t\t\t\trange(diff, fromHSL.h, toHSL.h),\n\t\t\t\trange(diff, fromHSL.s, toHSL.s),\n\t\t\t\trange(diff, fromHSL.l, toHSL.l)\n\t\t\t);\n\t\t}\n\t\telse {\n\t\t\treturn Color.fromRGB(\n\t\t\t\trange(diff, from.r, to.r),\n\t\t\t\trange(diff, from.g, to.g),\n\t\t\t\trange(diff, from.b, to.b)\n\t\t\t);\n\t\t}\n\t}\n\n\t/**\n\t * Returns a new [[Color]] lightened by `percent` value.\n\t *\n\t * Use negative value to darken the color.\n\t *\n\t * @param color Source color\n\t * @param percent Percent\n\t * @return New color\n\t */\n\tpublic static lighten(color: Color, percent: number): Color {\n\t\tconst rgb = $utils.lighten({ r: color.r, g: color.g, b: color.b }, percent);\n\t\treturn Color.fromRGB(rgb!.r, rgb!.g, rgb!.b);\n\t}\n\n\t/**\n\t * Returns a new [[Color]] brightened by `percent` value.\n\t *\n\t * Use negative value to dim the color.\n\t *\n\t * @param color Source color\n\t * @param percent Percent\n\t * @return New color\n\t */\n\tpublic static brighten(color: Color, percent: number): Color {\n\t\tconst rgb = $utils.brighten({ r: color.r, g: color.g, b: color.b }, percent);\n\t\treturn Color.fromRGB(rgb!.r, rgb!.g, rgb!.b);\n\t}\n\n\t/**\n\t * Returns a new [[Color]] saturated by `percent` value.\n\t *\n\t * Value range is between `0` (fully desaturated), to `1` (full color).\n\t *\n\t * @param color Source color\n\t * @param percent Percent\n\t * @return New color\n\t */\n\tpublic static saturate(color: Color, percent: number): Color {\n\t\tconst rgb = $utils.saturate({ r: color.r, g: color.g, b: color.b }, percent);\n\t\treturn Color.fromRGB(rgb!.r, rgb!.g, rgb!.b);\n\t}\n}\n"]}
1
+ {"version":3,"file":"Color.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/Color.ts"],"names":[],"mappings":"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","sourcesContent":["import { range, Time } from \"./Animation\";\nimport * as $utils from \"./Utils\";\nimport * as $type from \"./Type\";\n\n/**\n * @ignore\n */\nfunction string2hex(string: string): number {\n\t//string = cssColorNames[string.toLowerCase()] || string;\n\n\tif (string[0] === \"#\") {\n\t\tstring = string.substr(1);\n\t}\n\tif (string.length == 3) {\n\t\tstring = string[0].repeat(2) + string[1].repeat(2) + string[2].repeat(2);\n\t}\n\n\treturn parseInt(string, 16);\n}\n\n/**\n * @ignore\n */\nexport function rgba2hex(color: string): number {\n\tcolor = color.replace(/[ ]/g, \"\");\n\n\t// Init\n\tlet matches: string[] | null = color.match(/^rgb\\(([0-9]*),([0-9]*),([0-9]*)\\)/i);\n\n\t// Try rgb() format\n\tif (matches) {\n\t\tmatches.push(\"1\");\n\n\t} else {\n\t\tmatches = color.match(/^rgba\\(([0-9]*),([0-9]*),([0-9]*),([.0-9]*)\\)/i);\n\n\t\tif (!matches) {\n\t\t\treturn 0x000000;\n\t\t}\n\t}\n\n\tlet hex = \"\";\n\tfor (let i = 1; i <= 3; i++) {\n\t\tlet val = parseInt(matches[i]).toString(16);\n\t\tif (val.length == 1) {\n\t\t\tval = \"0\" + val;\n\t\t}\n\t\thex += val;\n\t}\n\n\treturn string2hex(hex);\n\n}\n\n/**\n * Returns a new [[Color]] object base on input.\n *\n * Accepts parameters in CSS hex or rgb/rtba strings, or hex numbers.\n *\n * * `\"#f00\"`\n * * `\"#ff0000\"`\n * * `\"rgb(255, 0, 0)\"`\n * * `\"rgba(255, 0, 0, 1)\"`\n * * `0xff0000`\n *\n * @param input Input color\n * @return Color\n */\nexport function color(input: number | string): Color {\n\treturn Color.fromAny(input);\n}\n\n/**\n * Wherever color needs to be specified in amCharts 5, `Color` object needs to\n * be used.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/} for more info\n * @important\n */\nexport class Color {\n\tprotected _hex: number;\n\n\tprivate constructor(hex: number) {\n\t\tthis._hex = hex | 0;\n\t}\n\n\t/**\n\t * Color numeric value.\n\t */\n\tpublic get hex(): number {\n\t\treturn this._hex;\n\t}\n\n\t/**\n\t * Value of color's R channel.\n\t * @return R value\n\t */\n\tpublic get r(): number {\n\t\treturn this._hex >>> 16;\n\t}\n\n\t/**\n\t * Value of color's G channel.\n\t * @return G value\n\t */\n\tpublic get g(): number {\n\t\treturn (this._hex >> 8) & 0xFF;\n\t}\n\n\t/**\n\t * Value of color's B channel.\n\t * @return B value\n\t */\n\tpublic get b(): number {\n\t\treturn this._hex & 0xFF;\n\t}\n\n\t/**\n\t * Returns color CSS representation in form of `rgba(r, g, b, a)` string.\n\t *\n\t * @param alpha Opacity\n\t * @return CSS string\n\t */\n\tpublic toCSS(alpha: number = 1): string {\n\t\treturn \"rgba(\" + this.r + \", \" + this.g + \", \" + this.b + \", \" + alpha + \")\";\n\t}\n\n\t/**\n\t * Returns color CSS representation in form of `#rgb` string.\n\t *\n\t * @return CSS string\n\t */\n\tpublic toCSSHex(): string {\n\t\treturn \"#\" + $utils.padString(this.r.toString(16), 2) + $utils.padString(this.g.toString(16), 2) + $utils.padString(this.b.toString(16), 2);\n\t}\n\n\t/**\n\t * Returns color's HSL info.\n\t * @param alpha Opacity\n\t * @return HSL info\n\t */\n\tpublic toHSL(alpha: number = 1): $utils.iHSL {\n\t\treturn $utils.rgbToHsl({\n\t\t\tr: this.r,\n\t\t\tg: this.g,\n\t\t\tb: this.b,\n\t\t\ta: alpha\n\t\t})\n\t}\n\n\t/**\n\t * Converts HSL values into a new [[Color]] object.\n\t *\n\t * @param h H value\n\t * @param s S value\n\t * @param l L value\n\t * @return Color object\n\t */\n\tpublic static fromHSL(h: number, s: number, l: number): Color {\n\t\tconst rgb = $utils.hslToRgb({\n\t\t\th: h,\n\t\t\ts: s,\n\t\t\tl: l\n\t\t});\n\t\treturn this.fromRGB(rgb.r, rgb.g, rgb.b);\n\t}\n\n\tpublic toString(): string {\n\t\treturn this.toCSSHex();\n\t}\n\n\t/**\n\t * Converts hex number into a new [[Color]] object.\n\t *\n\t * ```TypeScript\n\t * Color.fromHex(0xff0000) // red\n\t * ```\n\t * ```JavaScript\n\t * Color.fromHex(0xff0000) // red\n\t * ```\n\t *\n\t * @param hex Hex color\n\t * @return Color\n\t */\n\tpublic static fromHex(hex: number): Color {\n\t\treturn new Color(hex);\n\t}\n\n\t/**\n\t * Converts RGB values to a new [[Color]] object.\n\t *\n\t * @param r R value\n\t * @param g G value\n\t * @param b B value\n\t * @return Color\n\t */\n\tpublic static fromRGB(r: number, g: number, b: number): Color {\n\t\treturn new Color((b | 0) + (g << 8) + (r << 16));\n\t}\n\n\t/**\n\t * Converts RGB string to a new [[Color]] object.\n\t *\n\t * ```TypeScript\n\t * Color.fromString(\"#ff0000\") // red\n\t * ```\n\t * ```JavaScript\n\t * Color.fromString(\"#ff0000\") // red\n\t * ```\n\t *\n\t * @param s RGB string\n\t * @return Color\n\t */\n\tpublic static fromString(s: string): Color {\n\t\treturn new Color(string2hex(s));\n\t}\n\n\t/**\n\t * Converts CSS rgba() syntax to a new [[Color]] object.\n\t *\n\t * ```TypeScript\n\t * Color.fromCSS(\"rgba(255, 0, 0, 1)\") // red\n\t * ```\n\t * ```JavaScript\n\t * Color.fromCSS(\"rgba(255, 0, 0, 1)\") // red\n\t * ```\n\t *\n\t * @param {string} s [description]\n\t * @return {Color} [description]\n\t */\n\tpublic static fromCSS(s: string): Color {\n\t\treturn new Color(rgba2hex(s));\n\t}\n\n\t/**\n\t * Convert to color from virtually anything.\n\t *\n\t * Will throw an exception if unable to resolve the color.\n\t *\n\t * @param s Source\n\t * @return Color\n\t */\n\tpublic static fromAny(s: string | number | Color): Color {\n\t\tif ($type.isString(s)) {\n\t\t\tif (s[0] == \"#\") {\n\t\t\t\treturn Color.fromString(s);\n\t\t\t}\n\t\t\telse if (s.substr(0, 3) == \"rgb\") {\n\t\t\t\treturn Color.fromCSS(s);\n\t\t\t}\n\t\t}\n\t\telse if ($type.isNumber(s)) {\n\t\t\treturn Color.fromHex(s);\n\t\t}\n\t\telse if (s instanceof Color) {\n\t\t\treturn Color.fromHex(s.hex);\n\t\t}\n\n\t\tthrow new Error(\"Unknown color syntax: \" + s);\n\t}\n\n\t/**\n\t * Returns a new [[Color]] object based on either `lightAlternative` or\n\t * `darkAlternative` depending on which one is more contrasting with\n\t * the `color`.\n\t *\n\t * @param color Reference color\n\t * @param lightAlternative Light color\n\t * @param darkAlternative Dark color\n\t * @return Alternative color\n\t */\n\tpublic static alternative(color: Color, lightAlternative?: Color, darkAlternative?: Color): Color {\n\t\tconst rgb = $utils.alternativeColor(\n\t\t\t{ r: color.r, g: color.g, b: color.b },\n\t\t\tlightAlternative ? { r: lightAlternative.r, g: lightAlternative.g, b: lightAlternative.b } : undefined,\n\t\t\tdarkAlternative ? { r: darkAlternative.r, g: darkAlternative.g, b: darkAlternative.b } : undefined\n\t\t);\n\t\treturn this.fromRGB(rgb.r, rgb.g, rgb.b);\n\t}\n\n\t/**\n\t * Returns an intermediate Color between two reference colors depending on\n\t * the progress (`diff`) between the two.\n\t *\n\t * @param diff Progress\n\t * @param from Source color\n\t * @param to Target color\n\t * @param mode Interpolation mode\n\t * @return Color\n\t */\n\tpublic static interpolate(diff: Time, from: Color, to: Color, mode: \"rgb\" | \"hsl\" = \"rgb\"): Color {\n\t\tif (mode == \"hsl\") {\n\t\t\tconst fromHSL = from.toHSL();\n\t\t\tconst toHSL = to.toHSL();\n\t\t\treturn Color.fromHSL(\n\t\t\t\trange(diff, fromHSL.h, toHSL.h),\n\t\t\t\trange(diff, fromHSL.s, toHSL.s),\n\t\t\t\trange(diff, fromHSL.l, toHSL.l)\n\t\t\t);\n\t\t}\n\t\telse {\n\t\t\treturn Color.fromRGB(\n\t\t\t\trange(diff, from.r, to.r),\n\t\t\t\trange(diff, from.g, to.g),\n\t\t\t\trange(diff, from.b, to.b)\n\t\t\t);\n\t\t}\n\t}\n\n\t/**\n\t * Returns a new [[Color]] lightened by `percent` value.\n\t *\n\t * Use negative value to darken the color.\n\t *\n\t * @param color Source color\n\t * @param percent Percent\n\t * @return New color\n\t */\n\tpublic static lighten(color: Color, percent: number): Color {\n\t\tconst rgb = $utils.lighten({ r: color.r, g: color.g, b: color.b }, percent);\n\t\treturn Color.fromRGB(rgb!.r, rgb!.g, rgb!.b);\n\t}\n\n\t/**\n\t * Returns a new [[Color]] brightened by `percent` value.\n\t *\n\t * Use negative value to dim the color.\n\t *\n\t * @param color Source color\n\t * @param percent Percent\n\t * @return New color\n\t */\n\tpublic static brighten(color: Color, percent: number): Color {\n\t\tconst rgb = $utils.brighten({ r: color.r, g: color.g, b: color.b }, percent);\n\t\treturn Color.fromRGB(rgb!.r, rgb!.g, rgb!.b);\n\t}\n\n\t/**\n\t * Returns a new [[Color]] saturated by `percent` value.\n\t *\n\t * Value range is between `0` (fully desaturated), to `1` (full color).\n\t *\n\t * @param color Source color\n\t * @param percent Percent\n\t * @return New color\n\t */\n\tpublic static saturate(color: Color, percent: number): Color {\n\t\tconst rgb = $utils.saturate({ r: color.r, g: color.g, b: color.b }, percent);\n\t\treturn Color.fromRGB(rgb!.r, rgb!.g, rgb!.b);\n\t}\n}\n"]}
@@ -92,16 +92,6 @@ export class ColorSet extends Entity {
92
92
  this.setPrivate("currentPass", 0);
93
93
  }
94
94
  }
95
- Object.defineProperty(ColorSet, "className", {
96
- enumerable: true,
97
- configurable: true,
98
- writable: true,
99
- value: "ColorSet"
100
- });
101
- Object.defineProperty(ColorSet, "classNames", {
102
- enumerable: true,
103
- configurable: true,
104
- writable: true,
105
- value: Entity.classNames.concat([ColorSet.className])
106
- });
95
+ ColorSet.className = "ColorSet";
96
+ ColorSet.classNames = Entity.classNames.concat([ColorSet.className]);
107
97
  //# sourceMappingURL=ColorSet.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ColorSet.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/ColorSet.ts"],"names":[],"mappings":"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","sourcesContent":["import { Entity, IEntitySettings, IEntityPrivate } from \"./Entity\";\nimport { Color } from \"./Color\";\n\n\nexport interface IColorSetSettings extends IEntitySettings {\n\n\t/**\n\t * List of colors in the set.\n\t */\n\tcolors?: Color[];\n\n\t/**\n\t * A step size when using `next()`.\n\t *\n\t * E.g. setting to `2` will make it return every second color in the list.\n\t *\n\t * @default 1\n\t */\n\tstep?: number;\n\n\t/**\n\t * Start iterating colors from specific index.\n\t */\n\tstartIndex?: number;\n\n\t/**\n\t * If set to `true`, color set will reuse existing colors from the list\n\t * inestead of generating new ones.\n\t *\n\t * @default false\n\t */\n\treuse?: boolean;\n\n\t/**\n\t * A base color to generate new colors from if `colors` is not specified.\n\t * @type {[type]}\n\t */\n\tbaseColor?: Color;\n\n\t/**\n\t * A set of tranformation to apply to base list of colors when the set runs\n\t * out of colors and generates additional ones.\n\t */\n\tpassOptions?: IColorSetStepOptions;\n\n\t/**\n\t * If set, each returned color will be applied saturation.\n\t */\n\tsaturation?: number;\n\n\t// count?: number;\n}\n\nexport interface IColorSetPrivate extends IEntityPrivate {\n\n\tcurrentStep?: number;\n\tcurrentPass?: number;\n\n\t/**\n\t * @ignore\n\t */\n\tnumColors?: number;\n\n}\n\nexport interface IColorSetStepOptions {\n\n\t/**\n\t * Value to add to \"hue\".\n\t */\n\thue?: number;\n\n\t/**\n\t * Value to add to \"saturation\".\n\t */\n\tsaturation?: number;\n\n\t/**\n\t * Value to add to \"lightness\".\n\t */\n\tlightness?: number;\n\n}\n\n\n/**\n * An object which holds list of colors and can generate new ones.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/#Color_sets} for more info\n */\nexport class ColorSet extends Entity {\n\tpublic static className: string = \"ColorSet\";\n\tpublic static classNames: Array<string> = Entity.classNames.concat([ColorSet.className]);\n\n\tdeclare public _settings: IColorSetSettings;\n\tdeclare public _privateSettings: IColorSetPrivate;\n\n\t//protected _currentPass: number = 0;\n\n\tprotected _afterNew() {\n\t\t// Applying themes because color set will not have parent\n\t\tsuper._afterNewApplyThemes();\n\t\tthis._dirty[\"colors\"] = false;\n\t}\n\n\tpublic _beforeChanged(): void {\n\t\tif (this.isDirty(\"colors\")) {\n\t\t\tthis.reset();\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic generateColors(): void {\n\t\tthis.setPrivate(\"currentPass\", this.getPrivate(\"currentPass\", 0) + 1)\n\t\tconst pass = this.getPrivate(\"currentPass\");\n\t\tconst colors = this.get(\"colors\", [this.get(\"baseColor\", Color.fromHex(0xff0000))]);\n\t\tif (!this.getPrivate(\"numColors\")) {\n\t\t\tthis.setPrivate(\"numColors\", colors.length);\n\t\t}\n\t\t//const len = colors.length;\n\t\tconst len = this.getPrivate(\"numColors\")!;\n\t\t//const start = len - this.getPrivate(\"numColors\")!;\n\t\tconst start = 0;\n\t\tconst passOptions = this.get(\"passOptions\")!;\n\t\tconst reuse = this.get(\"reuse\");\n\t\tfor (let i = start; i < len; i++) {\n\t\t\tif (reuse) {\n\t\t\t\tcolors.push(colors[i])\n\t\t\t}\n\t\t\telse {\n\t\t\t\tconst hsl = colors[i]!.toHSL();\n\t\t\t\tlet h = hsl.h + (passOptions.hue || 0) * pass!;\n\t\t\t\twhile (h > 1) h -= 1;\n\n\t\t\t\tlet s = hsl.s + (passOptions.saturation || 0) * pass!;\n\t\t\t\t//if (s > 1) s -= Math.floor(s);\n\t\t\t\tif (s > 1) s = 1;\n\t\t\t\tif (s < 0) s = 0;\n\n\t\t\t\tlet l = hsl.l + (passOptions.lightness || 0) * pass!;\n\t\t\t\t//if (l > 1) l -= Math.floor(l);\n\t\t\t\twhile (l > 1) l -= 1;\n\t\t\t\tcolors.push(Color.fromHSL(h, s, l));\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Returns a [[Color]] at specific index.\n\t *\n\t * If there's no color at this index, a new color is generated.\n\t *\n\t * @param index Index\n\t * @return Color\n\t */\n\tpublic getIndex(index: number): Color {\n\t\tconst colors = this.get(\"colors\", []);\n\t\tconst saturation = this.get(\"saturation\");\n\t\tif (index >= colors.length) {\n\t\t\tthis.generateColors();\n\t\t\treturn this.getIndex(index);\n\t\t}\n\n\t\treturn saturation != null ? Color.saturate(colors[index], saturation!) : colors[index];\n\t}\n\n\t/**\n\t * Returns next [[Color]] in the list.\n\t *\n\t * If the list is out of colors, new ones are generated dynamically.\n\t */\n\tpublic next() {\n\t\tlet currentStep = this.getPrivate(\"currentStep\", this.get(\"startIndex\", 0));\n\t\tthis.setPrivate(\"currentStep\", currentStep + this.get(\"step\", 1));\n\t\treturn this.getIndex(currentStep);\n\t}\n\n\t/**\n\t * Resets counter to the start of the list, so the next call for `next()` will\n\t * return the first color.\n\t */\n\tpublic reset() {\n\t\tthis.setPrivate(\"currentStep\", this.get(\"startIndex\", 0));\n\t\tthis.setPrivate(\"currentPass\", 0);\n\t}\n}\n"]}
1
+ {"version":3,"file":"ColorSet.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/ColorSet.ts"],"names":[],"mappings":"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","sourcesContent":["import { Entity, IEntitySettings, IEntityPrivate } from \"./Entity\";\nimport { Color } from \"./Color\";\n\n\nexport interface IColorSetSettings extends IEntitySettings {\n\n\t/**\n\t * List of colors in the set.\n\t */\n\tcolors?: Color[];\n\n\t/**\n\t * A step size when using `next()`.\n\t *\n\t * E.g. setting to `2` will make it return every second color in the list.\n\t *\n\t * @default 1\n\t */\n\tstep?: number;\n\n\t/**\n\t * Start iterating colors from specific index.\n\t */\n\tstartIndex?: number;\n\n\t/**\n\t * If set to `true`, color set will reuse existing colors from the list\n\t * inestead of generating new ones.\n\t *\n\t * @default false\n\t */\n\treuse?: boolean;\n\n\t/**\n\t * A base color to generate new colors from if `colors` is not specified.\n\t * @type {[type]}\n\t */\n\tbaseColor?: Color;\n\n\t/**\n\t * A set of tranformation to apply to base list of colors when the set runs\n\t * out of colors and generates additional ones.\n\t */\n\tpassOptions?: IColorSetStepOptions;\n\n\t/**\n\t * If set, each returned color will be applied saturation.\n\t */\n\tsaturation?: number;\n\n\t// count?: number;\n}\n\nexport interface IColorSetPrivate extends IEntityPrivate {\n\n\tcurrentStep?: number;\n\tcurrentPass?: number;\n\n\t/**\n\t * @ignore\n\t */\n\tnumColors?: number;\n\n}\n\nexport interface IColorSetStepOptions {\n\n\t/**\n\t * Value to add to \"hue\".\n\t */\n\thue?: number;\n\n\t/**\n\t * Value to add to \"saturation\".\n\t */\n\tsaturation?: number;\n\n\t/**\n\t * Value to add to \"lightness\".\n\t */\n\tlightness?: number;\n\n}\n\n\n/**\n * An object which holds list of colors and can generate new ones.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/#Color_sets} for more info\n */\nexport class ColorSet extends Entity {\n\tpublic static className: string = \"ColorSet\";\n\tpublic static classNames: Array<string> = Entity.classNames.concat([ColorSet.className]);\n\n\tdeclare public _settings: IColorSetSettings;\n\tdeclare public _privateSettings: IColorSetPrivate;\n\n\t//protected _currentPass: number = 0;\n\n\tprotected _afterNew() {\n\t\t// Applying themes because color set will not have parent\n\t\tsuper._afterNewApplyThemes();\n\t\tthis._dirty[\"colors\"] = false;\n\t}\n\n\tpublic _beforeChanged(): void {\n\t\tif (this.isDirty(\"colors\")) {\n\t\t\tthis.reset();\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic generateColors(): void {\n\t\tthis.setPrivate(\"currentPass\", this.getPrivate(\"currentPass\", 0) + 1)\n\t\tconst pass = this.getPrivate(\"currentPass\");\n\t\tconst colors = this.get(\"colors\", [this.get(\"baseColor\", Color.fromHex(0xff0000))]);\n\t\tif (!this.getPrivate(\"numColors\")) {\n\t\t\tthis.setPrivate(\"numColors\", colors.length);\n\t\t}\n\t\t//const len = colors.length;\n\t\tconst len = this.getPrivate(\"numColors\")!;\n\t\t//const start = len - this.getPrivate(\"numColors\")!;\n\t\tconst start = 0;\n\t\tconst passOptions = this.get(\"passOptions\")!;\n\t\tconst reuse = this.get(\"reuse\");\n\t\tfor (let i = start; i < len; i++) {\n\t\t\tif (reuse) {\n\t\t\t\tcolors.push(colors[i])\n\t\t\t}\n\t\t\telse {\n\t\t\t\tconst hsl = colors[i]!.toHSL();\n\t\t\t\tlet h = hsl.h + (passOptions.hue || 0) * pass!;\n\t\t\t\twhile (h > 1) h -= 1;\n\n\t\t\t\tlet s = hsl.s + (passOptions.saturation || 0) * pass!;\n\t\t\t\t//if (s > 1) s -= Math.floor(s);\n\t\t\t\tif (s > 1) s = 1;\n\t\t\t\tif (s < 0) s = 0;\n\n\t\t\t\tlet l = hsl.l + (passOptions.lightness || 0) * pass!;\n\t\t\t\t//if (l > 1) l -= Math.floor(l);\n\t\t\t\twhile (l > 1) l -= 1;\n\t\t\t\tcolors.push(Color.fromHSL(h, s, l));\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Returns a [[Color]] at specific index.\n\t *\n\t * If there's no color at this index, a new color is generated.\n\t *\n\t * @param index Index\n\t * @return Color\n\t */\n\tpublic getIndex(index: number): Color {\n\t\tconst colors = this.get(\"colors\", []);\n\t\tconst saturation = this.get(\"saturation\");\n\t\tif (index >= colors.length) {\n\t\t\tthis.generateColors();\n\t\t\treturn this.getIndex(index);\n\t\t}\n\n\t\treturn saturation != null ? Color.saturate(colors[index], saturation!) : colors[index];\n\t}\n\n\t/**\n\t * Returns next [[Color]] in the list.\n\t *\n\t * If the list is out of colors, new ones are generated dynamically.\n\t */\n\tpublic next() {\n\t\tlet currentStep = this.getPrivate(\"currentStep\", this.get(\"startIndex\", 0));\n\t\tthis.setPrivate(\"currentStep\", currentStep + this.get(\"step\", 1));\n\t\treturn this.getIndex(currentStep);\n\t}\n\n\t/**\n\t * Resets counter to the start of the list, so the next call for `next()` will\n\t * return the first color.\n\t */\n\tpublic reset() {\n\t\tthis.setPrivate(\"currentStep\", this.get(\"startIndex\", 0));\n\t\tthis.setPrivate(\"currentPass\", 0);\n\t}\n}\n"]}