@nativescript-community/ui-chart 1.2.36 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (365) hide show
  1. package/README.md +6 -0
  2. package/animation/ChartAnimator.d.ts +47 -4
  3. package/animation/ChartAnimator.js +49 -11
  4. package/animation/ChartAnimator.js.map +1 -1
  5. package/animation/Tween.d.ts +1 -1
  6. package/animation/Tween.js +4 -2
  7. package/animation/Tween.js.map +1 -1
  8. package/buffer/AbstractBuffer.d.ts +28 -3
  9. package/buffer/AbstractBuffer.js +22 -3
  10. package/buffer/AbstractBuffer.js.map +1 -1
  11. package/buffer/BarBuffer.d.ts +8 -12
  12. package/buffer/BarBuffer.js +33 -36
  13. package/buffer/BarBuffer.js.map +1 -1
  14. package/buffer/HorizontalBarBuffer.js +13 -10
  15. package/buffer/HorizontalBarBuffer.js.map +1 -1
  16. package/charts/BarChart.d.ts +70 -15
  17. package/charts/BarChart.js +92 -63
  18. package/charts/BarChart.js.map +1 -1
  19. package/charts/BarLineChartBase.d.ts +494 -73
  20. package/charts/BarLineChartBase.js +788 -407
  21. package/charts/BarLineChartBase.js.map +1 -1
  22. package/charts/BubbleChart.d.ts +11 -5
  23. package/charts/BubbleChart.js +10 -8
  24. package/charts/BubbleChart.js.map +1 -1
  25. package/charts/CandleStickChart.d.ts +8 -5
  26. package/charts/CandleStickChart.js +9 -10
  27. package/charts/CandleStickChart.js.map +1 -1
  28. package/charts/Chart.d.ts +420 -91
  29. package/charts/Chart.js +590 -290
  30. package/charts/Chart.js.map +1 -1
  31. package/charts/CombinedChart.d.ts +59 -29
  32. package/charts/CombinedChart.js +74 -67
  33. package/charts/CombinedChart.js.map +1 -1
  34. package/charts/HorizontalBarChart.d.ts +37 -7
  35. package/charts/HorizontalBarChart.js +97 -59
  36. package/charts/HorizontalBarChart.js.map +1 -1
  37. package/charts/LineChart.d.ts +3 -5
  38. package/charts/LineChart.js +6 -10
  39. package/charts/LineChart.js.map +1 -1
  40. package/charts/PieChart.d.ts +218 -64
  41. package/charts/PieChart.js +278 -168
  42. package/charts/PieChart.js.map +1 -1
  43. package/charts/PieRadarChartBase.d.ts +107 -18
  44. package/charts/PieRadarChartBase.js +156 -73
  45. package/charts/PieRadarChartBase.js.map +1 -1
  46. package/charts/RadarChart.d.ts +75 -35
  47. package/charts/RadarChart.js +114 -103
  48. package/charts/RadarChart.js.map +1 -1
  49. package/charts/ScatterChart.d.ts +10 -5
  50. package/charts/ScatterChart.js +11 -10
  51. package/charts/ScatterChart.js.map +1 -1
  52. package/components/AxisBase.d.ts +271 -101
  53. package/components/AxisBase.js +264 -254
  54. package/components/AxisBase.js.map +1 -1
  55. package/components/ComponentBase.d.ts +54 -19
  56. package/components/ComponentBase.js +60 -48
  57. package/components/ComponentBase.js.map +1 -1
  58. package/components/Description.d.ts +18 -9
  59. package/components/Description.js +12 -26
  60. package/components/Description.js.map +1 -1
  61. package/components/IMarker.d.ts +30 -1
  62. package/components/IMarker.js.map +1 -1
  63. package/components/Legend.d.ts +155 -58
  64. package/components/Legend.js +208 -172
  65. package/components/Legend.js.map +1 -1
  66. package/components/LegendEntry.d.ts +38 -0
  67. package/components/LegendEntry.js +34 -0
  68. package/components/LegendEntry.js.map +1 -1
  69. package/components/LimitLine.d.ts +40 -22
  70. package/components/LimitLine.js +44 -56
  71. package/components/LimitLine.js.map +1 -1
  72. package/components/MarkerImage.d.ts +1 -0
  73. package/components/MarkerImage.js +97 -0
  74. package/components/MarkerImage.js.map +1 -0
  75. package/components/XAxis.d.ts +41 -10
  76. package/components/XAxis.js +42 -24
  77. package/components/XAxis.js.map +1 -1
  78. package/components/YAxis.d.ts +114 -37
  79. package/components/YAxis.js +138 -106
  80. package/components/YAxis.js.map +1 -1
  81. package/data/BarData.d.ts +32 -4
  82. package/data/BarData.js +92 -24
  83. package/data/BarData.js.map +1 -1
  84. package/data/BarDataSet.d.ts +35 -18
  85. package/data/BarDataSet.js +42 -47
  86. package/data/BarDataSet.js.map +1 -1
  87. package/data/BarEntry.d.ts +3 -0
  88. package/data/BarEntry.js.map +1 -1
  89. package/data/BarLineScatterCandleBubbleData.d.ts +5 -0
  90. package/data/BarLineScatterCandleBubbleData.js +5 -0
  91. package/data/BarLineScatterCandleBubbleData.js.map +1 -1
  92. package/data/BarLineScatterCandleBubbleDataSet.d.ts +11 -3
  93. package/data/BarLineScatterCandleBubbleDataSet.js +11 -7
  94. package/data/BarLineScatterCandleBubbleDataSet.js.map +1 -1
  95. package/data/BaseDataSet.d.ts +129 -71
  96. package/data/BaseDataSet.js +146 -169
  97. package/data/BaseDataSet.js.map +1 -1
  98. package/data/BaseEntry.d.ts +3 -0
  99. package/data/BaseEntry.js.map +1 -1
  100. package/data/BubbleData.d.ts +7 -1
  101. package/data/BubbleData.js +8 -2
  102. package/data/BubbleData.js.map +1 -1
  103. package/data/BubbleDataSet.d.ts +7 -7
  104. package/data/BubbleDataSet.js +8 -15
  105. package/data/BubbleDataSet.js.map +1 -1
  106. package/data/BubbleEntry.d.ts +1 -0
  107. package/data/BubbleEntry.js.map +1 -1
  108. package/data/CandleData.js.map +1 -1
  109. package/data/CandleDataSet.d.ts +64 -30
  110. package/data/CandleDataSet.js +67 -74
  111. package/data/CandleDataSet.js.map +1 -1
  112. package/data/CandleEntry.d.ts +4 -0
  113. package/data/CandleEntry.js.map +1 -1
  114. package/data/ChartData.d.ts +273 -18
  115. package/data/ChartData.js +398 -93
  116. package/data/ChartData.js.map +1 -1
  117. package/data/CombinedData.d.ts +39 -12
  118. package/data/CombinedData.js +87 -71
  119. package/data/CombinedData.js.map +1 -1
  120. package/data/DataSet.d.ts +59 -8
  121. package/data/DataSet.js +114 -26
  122. package/data/DataSet.js.map +1 -1
  123. package/data/Entry.js.map +1 -1
  124. package/data/LineData.d.ts +5 -0
  125. package/data/LineData.js +5 -0
  126. package/data/LineData.js.map +1 -1
  127. package/data/LineDataSet.d.ts +80 -49
  128. package/data/LineDataSet.js +90 -135
  129. package/data/LineDataSet.js.map +1 -1
  130. package/data/LineRadarDataSet.d.ts +27 -17
  131. package/data/LineRadarDataSet.js +22 -35
  132. package/data/LineRadarDataSet.js.map +1 -1
  133. package/data/LineScatterCandleRadarDataSet.d.ts +30 -15
  134. package/data/LineScatterCandleRadarDataSet.js +36 -39
  135. package/data/LineScatterCandleRadarDataSet.js.map +1 -1
  136. package/data/PieData.d.ts +26 -0
  137. package/data/PieData.js +28 -2
  138. package/data/PieData.js.map +1 -1
  139. package/data/PieDataSet.d.ts +40 -36
  140. package/data/PieDataSet.js +36 -88
  141. package/data/PieDataSet.js.map +1 -1
  142. package/data/PieEntry.d.ts +3 -0
  143. package/data/PieEntry.js.map +1 -1
  144. package/data/RadarData.d.ts +10 -4
  145. package/data/RadarData.js +5 -6
  146. package/data/RadarData.js.map +1 -1
  147. package/data/RadarDataSet.d.ts +7 -21
  148. package/data/RadarDataSet.js +10 -49
  149. package/data/RadarDataSet.js.map +1 -1
  150. package/data/RadarEntry.js.map +1 -1
  151. package/data/ScatterData.d.ts +4 -1
  152. package/data/ScatterData.js +5 -2
  153. package/data/ScatterData.js.map +1 -1
  154. package/data/ScatterDataSet.d.ts +24 -14
  155. package/data/ScatterDataSet.js +26 -31
  156. package/data/ScatterDataSet.js.map +1 -1
  157. package/formatter/DefaultAxisValueFormatter.d.ts +17 -3
  158. package/formatter/DefaultAxisValueFormatter.js +12 -5
  159. package/formatter/DefaultAxisValueFormatter.js.map +1 -1
  160. package/formatter/DefaultFillFormatter.js +7 -7
  161. package/formatter/DefaultFillFormatter.js.map +1 -1
  162. package/formatter/DefaultValueFormatter.js.map +1 -1
  163. package/formatter/IAxisValueFormatter.d.ts +20 -2
  164. package/formatter/IAxisValueFormatter.js.map +1 -1
  165. package/formatter/IFillFormatter.d.ts +25 -0
  166. package/formatter/IFillFormatter.js.map +1 -1
  167. package/formatter/IValueFormatter.d.ts +21 -0
  168. package/formatter/IValueFormatter.js.map +1 -1
  169. package/formatter/ValueFormatter.d.ts +60 -0
  170. package/formatter/ValueFormatter.js +60 -0
  171. package/formatter/ValueFormatter.js.map +1 -1
  172. package/highlight/BarHighlighter.d.ts +22 -2
  173. package/highlight/BarHighlighter.js +43 -17
  174. package/highlight/BarHighlighter.js.map +1 -1
  175. package/highlight/ChartHighlighter.d.ts +87 -5
  176. package/highlight/ChartHighlighter.js +126 -23
  177. package/highlight/ChartHighlighter.js.map +1 -1
  178. package/highlight/CombinedHighlighter.d.ts +6 -0
  179. package/highlight/CombinedHighlighter.js +31 -16
  180. package/highlight/CombinedHighlighter.js.map +1 -1
  181. package/highlight/Highlight.d.ts +54 -1
  182. package/highlight/Highlight.js +5 -0
  183. package/highlight/Highlight.js.map +1 -1
  184. package/highlight/HorizontalBarHighlighter.d.ts +1 -1
  185. package/highlight/HorizontalBarHighlighter.js +14 -13
  186. package/highlight/HorizontalBarHighlighter.js.map +1 -1
  187. package/highlight/IHighlighter.d.ts +11 -1
  188. package/highlight/IHighlighter.js.map +1 -1
  189. package/highlight/PieHighlighter.js +2 -2
  190. package/highlight/PieHighlighter.js.map +1 -1
  191. package/highlight/PieRadarHighlighter.d.ts +12 -1
  192. package/highlight/PieRadarHighlighter.js +12 -4
  193. package/highlight/PieRadarHighlighter.js.map +1 -1
  194. package/highlight/RadarHighlighter.d.ts +12 -0
  195. package/highlight/RadarHighlighter.js +24 -10
  196. package/highlight/RadarHighlighter.js.map +1 -1
  197. package/index.d.ts +11 -0
  198. package/index.js +15 -0
  199. package/index.js.map +1 -0
  200. package/interfaces/dataprovider/BarDataProvider.d.ts +4 -4
  201. package/interfaces/dataprovider/BarLineScatterCandleBubbleDataProvider.d.ts +8 -3
  202. package/interfaces/dataprovider/BubbleDataProvider.d.ts +1 -1
  203. package/interfaces/dataprovider/CandleDataProvider.d.ts +1 -1
  204. package/interfaces/dataprovider/ChartInterface.d.ts +17 -22
  205. package/interfaces/dataprovider/CombinedDataProvider.d.ts +1 -1
  206. package/interfaces/dataprovider/LineDataProvider.d.ts +1 -1
  207. package/interfaces/dataprovider/ScatterDataProvider.d.ts +1 -1
  208. package/interfaces/datasets/IBarDataSet.d.ts +8 -22
  209. package/interfaces/datasets/IBarLineScatterCandleBubbleDataSet.d.ts +1 -3
  210. package/interfaces/datasets/IBubbleDataSet.d.ts +3 -9
  211. package/interfaces/datasets/ICandleDataSet.d.ts +44 -41
  212. package/interfaces/datasets/IDataSet.d.ts +35 -151
  213. package/interfaces/datasets/ILineDataSet.d.ts +15 -54
  214. package/interfaces/datasets/ILineRadarDataSet.d.ts +7 -28
  215. package/interfaces/datasets/ILineScatterCandleRadarDataSet.d.ts +5 -4
  216. package/interfaces/datasets/IPieDataSet.d.ts +22 -40
  217. package/interfaces/datasets/IRadarDataSet.d.ts +7 -13
  218. package/interfaces/datasets/IScatterDataSet.d.ts +17 -16
  219. package/jobs/AnimatedMoveViewJob.d.ts +3 -0
  220. package/jobs/AnimatedMoveViewJob.js +12 -8
  221. package/jobs/AnimatedMoveViewJob.js.map +1 -1
  222. package/jobs/AnimatedViewPortJob.d.ts +7 -8
  223. package/jobs/AnimatedViewPortJob.js +16 -23
  224. package/jobs/AnimatedViewPortJob.js.map +1 -1
  225. package/jobs/AnimatedZoomJob.d.ts +8 -5
  226. package/jobs/AnimatedZoomJob.js +30 -26
  227. package/jobs/AnimatedZoomJob.js.map +1 -1
  228. package/jobs/MoveViewJob.d.ts +3 -0
  229. package/jobs/MoveViewJob.js +10 -7
  230. package/jobs/MoveViewJob.js.map +1 -1
  231. package/jobs/ViewPortJob.d.ts +3 -5
  232. package/jobs/ViewPortJob.js +5 -11
  233. package/jobs/ViewPortJob.js.map +1 -1
  234. package/jobs/ZoomJob.js +14 -14
  235. package/jobs/ZoomJob.js.map +1 -1
  236. package/listener/BarLineChartTouchListener.d.ts +82 -1
  237. package/listener/BarLineChartTouchListener.js +169 -67
  238. package/listener/BarLineChartTouchListener.js.map +1 -1
  239. package/listener/ChartTouchListener.d.ts +39 -5
  240. package/listener/ChartTouchListener.js +38 -11
  241. package/listener/ChartTouchListener.js.map +1 -1
  242. package/listener/PieRadarChartTouchListener.d.ts +56 -1
  243. package/listener/PieRadarChartTouchListener.js +201 -17
  244. package/listener/PieRadarChartTouchListener.js.map +1 -1
  245. package/model/GradientColor.js.map +1 -1
  246. package/package.json +23 -15
  247. package/renderer/AxisRenderer.d.ts +66 -7
  248. package/renderer/AxisRenderer.js +69 -21
  249. package/renderer/AxisRenderer.js.map +1 -1
  250. package/renderer/BarChartRenderer.d.ts +11 -0
  251. package/renderer/BarChartRenderer.js +99 -71
  252. package/renderer/BarChartRenderer.js.map +1 -1
  253. package/renderer/BarLineScatterCandleBubbleRenderer.d.ts +37 -0
  254. package/renderer/BarLineScatterCandleBubbleRenderer.js +36 -8
  255. package/renderer/BarLineScatterCandleBubbleRenderer.js.map +1 -1
  256. package/renderer/BubbleChartRenderer.d.ts +6 -2
  257. package/renderer/BubbleChartRenderer.js +51 -40
  258. package/renderer/BubbleChartRenderer.js.map +1 -1
  259. package/renderer/CandleStickChartRenderer.d.ts +1 -1
  260. package/renderer/CandleStickChartRenderer.js +64 -50
  261. package/renderer/CandleStickChartRenderer.js.map +1 -1
  262. package/renderer/CombinedChartRenderer.d.ts +20 -1
  263. package/renderer/CombinedChartRenderer.js +72 -42
  264. package/renderer/CombinedChartRenderer.js.map +1 -1
  265. package/renderer/DataRenderer.d.ts +78 -4
  266. package/renderer/DataRenderer.js +65 -6
  267. package/renderer/DataRenderer.js.map +1 -1
  268. package/renderer/HorizontalBarChartRenderer.d.ts +5 -2
  269. package/renderer/HorizontalBarChartRenderer.js +87 -66
  270. package/renderer/HorizontalBarChartRenderer.js.map +1 -1
  271. package/renderer/LegendRenderer.d.ts +32 -0
  272. package/renderer/LegendRenderer.js +98 -59
  273. package/renderer/LegendRenderer.js.map +1 -1
  274. package/renderer/LineChartRenderer.d.ts +38 -1
  275. package/renderer/LineChartRenderer.js +185 -110
  276. package/renderer/LineChartRenderer.js.map +1 -1
  277. package/renderer/LineRadarRenderer.d.ts +19 -0
  278. package/renderer/LineRadarRenderer.js +25 -1
  279. package/renderer/LineRadarRenderer.js.map +1 -1
  280. package/renderer/LineScatterCandleRadarRenderer.d.ts +11 -0
  281. package/renderer/LineScatterCandleRadarRenderer.js +26 -9
  282. package/renderer/LineScatterCandleRadarRenderer.js.map +1 -1
  283. package/renderer/PieChartRenderer.d.ts +45 -1
  284. package/renderer/PieChartRenderer.js +195 -122
  285. package/renderer/PieChartRenderer.js.map +1 -1
  286. package/renderer/RadarChartRenderer.d.ts +10 -0
  287. package/renderer/RadarChartRenderer.js +119 -77
  288. package/renderer/RadarChartRenderer.js.map +1 -1
  289. package/renderer/Renderer.d.ts +8 -0
  290. package/renderer/Renderer.js +5 -0
  291. package/renderer/Renderer.js.map +1 -1
  292. package/renderer/ScatterChartRenderer.d.ts +5 -5
  293. package/renderer/ScatterChartRenderer.js +51 -37
  294. package/renderer/ScatterChartRenderer.js.map +1 -1
  295. package/renderer/XAxisRenderer.d.ts +29 -4
  296. package/renderer/XAxisRenderer.js +128 -95
  297. package/renderer/XAxisRenderer.js.map +1 -1
  298. package/renderer/XAxisRendererHorizontalBarChart.d.ts +11 -0
  299. package/renderer/XAxisRendererHorizontalBarChart.js +75 -57
  300. package/renderer/XAxisRendererHorizontalBarChart.js.map +1 -1
  301. package/renderer/XAxisRendererRadarChart.d.ts +5 -0
  302. package/renderer/XAxisRendererRadarChart.js +26 -13
  303. package/renderer/XAxisRendererRadarChart.js.map +1 -1
  304. package/renderer/YAxisRenderer.d.ts +42 -5
  305. package/renderer/YAxisRenderer.js +126 -69
  306. package/renderer/YAxisRenderer.js.map +1 -1
  307. package/renderer/YAxisRendererHorizontalBarChart.d.ts +22 -1
  308. package/renderer/YAxisRendererHorizontalBarChart.js +80 -58
  309. package/renderer/YAxisRendererHorizontalBarChart.js.map +1 -1
  310. package/renderer/YAxisRendererRadarChart.js +62 -32
  311. package/renderer/YAxisRendererRadarChart.js.map +1 -1
  312. package/renderer/scatter/ChevronDownShapeRenderer.d.ts +4 -0
  313. package/renderer/scatter/ChevronDownShapeRenderer.js +5 -1
  314. package/renderer/scatter/ChevronDownShapeRenderer.js.map +1 -1
  315. package/renderer/scatter/ChevronUpShapeRenderer.d.ts +4 -0
  316. package/renderer/scatter/ChevronUpShapeRenderer.js +5 -1
  317. package/renderer/scatter/ChevronUpShapeRenderer.js.map +1 -1
  318. package/renderer/scatter/CircleShapeRenderer.d.ts +4 -0
  319. package/renderer/scatter/CircleShapeRenderer.js +8 -5
  320. package/renderer/scatter/CircleShapeRenderer.js.map +1 -1
  321. package/renderer/scatter/CrossShapeRenderer.d.ts +4 -0
  322. package/renderer/scatter/CrossShapeRenderer.js +5 -1
  323. package/renderer/scatter/CrossShapeRenderer.js.map +1 -1
  324. package/renderer/scatter/IShapeRenderer.d.ts +14 -0
  325. package/renderer/scatter/IShapeRenderer.js.map +1 -1
  326. package/renderer/scatter/SquareShapeRenderer.d.ts +4 -0
  327. package/renderer/scatter/SquareShapeRenderer.js +8 -5
  328. package/renderer/scatter/SquareShapeRenderer.js.map +1 -1
  329. package/renderer/scatter/TriangleShapeRenderer.d.ts +4 -0
  330. package/renderer/scatter/TriangleShapeRenderer.js +9 -5
  331. package/renderer/scatter/TriangleShapeRenderer.js.map +1 -1
  332. package/renderer/scatter/XShapeRenderer.d.ts +4 -0
  333. package/renderer/scatter/XShapeRenderer.js +5 -1
  334. package/renderer/scatter/XShapeRenderer.js.map +1 -1
  335. package/utils/ColorTemplate.d.ts +21 -1
  336. package/utils/ColorTemplate.js +21 -3
  337. package/utils/ColorTemplate.js.map +1 -1
  338. package/utils/HorizontalViewPortHandler.d.ts +3 -0
  339. package/utils/HorizontalViewPortHandler.js +3 -0
  340. package/utils/HorizontalViewPortHandler.js.map +1 -1
  341. package/utils/MPSize.d.ts +7 -0
  342. package/utils/ObjectPool.d.ts +56 -0
  343. package/utils/ObjectPool.js +66 -8
  344. package/utils/ObjectPool.js.map +1 -1
  345. package/utils/Transformer.d.ts +118 -0
  346. package/utils/Transformer.js +141 -7
  347. package/utils/Transformer.js.map +1 -1
  348. package/utils/TransformerHorizontalBarChart.d.ts +10 -0
  349. package/utils/TransformerHorizontalBarChart.js +18 -2
  350. package/utils/TransformerHorizontalBarChart.js.map +1 -1
  351. package/utils/Utils.d.ts +139 -17
  352. package/utils/Utils.js +185 -60
  353. package/utils/Utils.js.map +1 -1
  354. package/utils/ViewPortHandler.d.ts +234 -19
  355. package/utils/ViewPortHandler.js +306 -63
  356. package/utils/ViewPortHandler.js.map +1 -1
  357. package/utils/colors/colorful.js.map +1 -1
  358. package/utils/colors/joyful.js.map +1 -1
  359. package/utils/colors/liberty.js.map +1 -1
  360. package/utils/colors/material.js.map +1 -1
  361. package/utils/colors/pastel.js.map +1 -1
  362. package/utils/colors/vordiplom.js.map +1 -1
  363. package/charts/index.d.ts +0 -11
  364. package/charts/index.js +0 -15
  365. package/charts/index.js.map +0 -1
package/README.md CHANGED
@@ -10,6 +10,12 @@
10
10
 
11
11
  ---
12
12
 
13
+ ## Migration to 2.x
14
+
15
+ In 2.x most methods like `setColor`/`getColor` have been changed to properties like `color`
16
+ You can either to it manually and update them all (you should get tsc errors for removed or renamed methods), or you can use a regexp like `/set([A-Z])(\w*?)\(/` to search and replace (first group should be lowercase in the replace) with something like `\L$1$2=(`
17
+ Then use typings to fix potential name change
18
+
13
19
  ## Usage
14
20
 
15
21
  For gestures to work, make sure to add the following code block inside main application file (e.g. app.ts):
@@ -1,18 +1,61 @@
1
1
  import { EasingFunction } from './Tween';
2
2
  export { EasingFunction };
3
3
  export declare class ChartAnimator {
4
+ /** object that is updated upon animation update */
4
5
  private mListener;
6
+ /** The phase of drawn values on the y-axis. 0 - 1 */
5
7
  protected mPhaseY: number;
8
+ /** The phase of drawn values on the x-axis. 0 - 1 */
6
9
  protected mPhaseX: number;
7
10
  constructor(listener?: (state: any) => void);
8
11
  private startAnim;
9
12
  private startXAnim;
10
13
  private startYAnim;
14
+ /**
15
+ * Animates values along the X axis.
16
+ *
17
+ * @param durationMillis animation duration
18
+ * @param easing EasingFunction
19
+ */
11
20
  animateX(durationMillis: any, easing?: EasingFunction): void;
21
+ /**
22
+ * Animates values along both the X and Y axes.
23
+ *
24
+ * @param durationMillisX animation duration along the X axis
25
+ * @param durationMillisY animation duration along the Y axis
26
+ * @param easingX EasingFunction for the X axis
27
+ * @param easingY EasingFunction for the Y axis
28
+ */
12
29
  animateXY(durationMillisX: any, durationMillisY: any, easingX?: EasingFunction, easingY?: EasingFunction): void;
30
+ /**
31
+ * Animates values along the Y axis.
32
+ *
33
+ * @param durationMillis animation duration
34
+ * @param easing EasingFunction
35
+ */
13
36
  animateY(durationMillis: any, easing?: EasingFunction): void;
14
- getPhaseY(): number;
15
- setPhaseY(phase: any): void;
16
- getPhaseX(): number;
17
- setPhaseX(phase: any): void;
37
+ /**
38
+ * Gets the Y axis phase of the animation.
39
+ *
40
+ * @return let value of {@link #mPhaseY}
41
+ */
42
+ get phaseY(): number;
43
+ /**
44
+ * Sets the Y axis phase of the animation.
45
+ *
46
+ * @param phase let value between 0 - 1
47
+ */
48
+ set phaseY(phase: number);
49
+ /**
50
+ * Gets the X axis phase of the animation.
51
+ *
52
+ * @return let value of {@link #mPhaseX}
53
+ */
54
+ get phaseX(): number;
55
+ /**
56
+ * Sets the X axis phase of the animation.
57
+ *
58
+ * @param phase let value between 0 - 1
59
+ */
60
+ set phaseX(phase: number);
18
61
  }
@@ -4,53 +4,91 @@ function clamp(value) {
4
4
  }
5
5
  export class ChartAnimator {
6
6
  constructor(listener) {
7
+ /** The phase of drawn values on the y-axis. 0 - 1 */
7
8
  this.mPhaseY = 1;
9
+ /** The phase of drawn values on the x-axis. 0 - 1 */
8
10
  this.mPhaseX = 1;
9
11
  this.mListener = listener;
10
12
  }
11
13
  startAnim(duration, easing, listener) {
12
14
  const anim = new Tween({
13
- onRender: (state) => {
14
- if (listener) {
15
- listener(state);
16
- }
17
- }
15
+ onRender: listener
18
16
  });
19
17
  anim.tween({ value: 0 }, { value: 1 }, duration);
20
18
  return anim;
21
19
  }
22
20
  startXAnim(duration, easing, listener) {
23
21
  return this.startAnim(duration, easing, (state) => {
24
- this.setPhaseX(state.value);
22
+ this.phaseX = state.value;
25
23
  listener?.(state);
26
24
  });
27
25
  }
28
26
  startYAnim(duration, easing, listener) {
29
27
  return this.startAnim(duration, easing, (state) => {
30
- this.setPhaseY(state.value);
28
+ this.phaseY = state.value;
31
29
  listener?.(state);
32
30
  });
33
31
  }
32
+ /**
33
+ * Animates values along the X axis.
34
+ *
35
+ * @param durationMillis animation duration
36
+ * @param easing EasingFunction
37
+ */
34
38
  animateX(durationMillis, easing) {
35
39
  this.startXAnim(durationMillis, easing, this.mListener);
36
40
  }
41
+ /**
42
+ * Animates values along both the X and Y axes.
43
+ *
44
+ * @param durationMillisX animation duration along the X axis
45
+ * @param durationMillisY animation duration along the Y axis
46
+ * @param easingX EasingFunction for the X axis
47
+ * @param easingY EasingFunction for the Y axis
48
+ */
37
49
  animateXY(durationMillisX, durationMillisY, easingX, easingY) {
38
50
  this.startXAnim(durationMillisX, easingX, durationMillisX > durationMillisY ? this.mListener : undefined);
39
51
  this.startYAnim(durationMillisY, easingY || easingX, durationMillisX > durationMillisY ? undefined : this.mListener);
40
52
  }
53
+ /**
54
+ * Animates values along the Y axis.
55
+ *
56
+ * @param durationMillis animation duration
57
+ * @param easing EasingFunction
58
+ */
41
59
  animateY(durationMillis, easing) {
42
60
  this.startYAnim(durationMillis, easing, this.mListener);
43
61
  }
44
- getPhaseY() {
62
+ /**
63
+ * Gets the Y axis phase of the animation.
64
+ *
65
+ * @return let value of {@link #mPhaseY}
66
+ */
67
+ get phaseY() {
45
68
  return this.mPhaseY;
46
69
  }
47
- setPhaseY(phase) {
70
+ /**
71
+ * Sets the Y axis phase of the animation.
72
+ *
73
+ * @param phase let value between 0 - 1
74
+ */
75
+ set phaseY(phase) {
48
76
  this.mPhaseY = clamp(phase);
49
77
  }
50
- getPhaseX() {
78
+ /**
79
+ * Gets the X axis phase of the animation.
80
+ *
81
+ * @return let value of {@link #mPhaseX}
82
+ */
83
+ get phaseX() {
51
84
  return this.mPhaseX;
52
85
  }
53
- setPhaseX(phase) {
86
+ /**
87
+ * Sets the X axis phase of the animation.
88
+ *
89
+ * @param phase let value between 0 - 1
90
+ */
91
+ set phaseX(phase) {
54
92
  this.mPhaseX = clamp(phase);
55
93
  }
56
94
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ChartAnimator.js","sourceRoot":"../src/","sources":["animation/ChartAnimator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,KAAK,EAAE,MAAM,SAAS,CAAC;AAGhD,SAAS,KAAK,CAAC,KAAK;IAChB,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;AAC3C,CAAC;AAED,MAAM,OAAO,aAAa;IAUtB,YAAY,QAA0B;QAL5B,YAAO,GAAG,CAAC,CAAC;QAGZ,YAAO,GAAG,CAAC,CAAC;QAGlB,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;IAC9B,CAAC;IAEO,SAAS,CAAC,QAAQ,EAAE,MAAuB,EAAE,QAA0B;QAC3E,MAAM,IAAI,GAAG,IAAI,KAAK,CAAC;YACnB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;gBAChB,IAAI,QAAQ,EAAE;oBACV,QAAQ,CAAC,KAAK,CAAC,CAAC;iBACnB;YACL,CAAC;SACJ,CAAC,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QACjD,OAAO,IAAI,CAAC;IAChB,CAAC;IACO,UAAU,CAAC,QAAQ,EAAE,MAAuB,EAAE,QAA0B;QAC5E,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;YAC9C,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC5B,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,UAAU,CAAC,QAAQ,EAAE,MAAuB,EAAE,QAA0B;QAC5E,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;YAC9C,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC5B,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC,CAAC,CAAC;IACP,CAAC;IAQM,QAAQ,CAAC,cAAc,EAAE,MAAuB;QACnD,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAC5D,CAAC;IAUM,SAAS,CAAC,eAAe,EAAE,eAAe,EAAE,OAAwB,EAAE,OAAwB;QACjG,IAAI,CAAC,UAAU,CAAC,eAAe,EAAE,OAAO,EAAE,eAAe,GAAG,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAC1G,IAAI,CAAC,UAAU,CAAC,eAAe,EAAE,OAAO,IAAI,OAAO,EAAE,eAAe,GAAG,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACzH,CAAC;IAQM,QAAQ,CAAC,cAAc,EAAE,MAAuB;QACnD,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAC5D,CAAC;IAOM,SAAS;QACZ,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAOM,SAAS,CAAC,KAAK;QAClB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAOM,SAAS;QACZ,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAOM,SAAS,CAAC,KAAK;QAClB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;CACJ"}
1
+ {"version":3,"file":"ChartAnimator.js","sourceRoot":"","sources":["../../../src/ui-chart/animation/ChartAnimator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,KAAK,EAAE,MAAM,SAAS,CAAC;AAGhD,SAAS,KAAK,CAAC,KAAK;IAChB,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;AAC3C,CAAC;AAED,MAAM,OAAO,aAAa;IAUtB,YAAY,QAA0B;QANtC,qDAAqD;QAC3C,YAAO,GAAG,CAAC,CAAC;QAEtB,qDAAqD;QAC3C,YAAO,GAAG,CAAC,CAAC;QAGlB,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;IAC9B,CAAC;IAEO,SAAS,CAAC,QAAQ,EAAE,MAAuB,EAAE,QAA0B;QAC3E,MAAM,IAAI,GAAG,IAAI,KAAK,CAAC;YACnB,QAAQ,EAAE,QAAQ;SACrB,CAAC,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QACjD,OAAO,IAAI,CAAC;IAChB,CAAC;IACO,UAAU,CAAC,QAAQ,EAAE,MAAuB,EAAE,QAA0B;QAC5E,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;YAC9C,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC;YAC1B,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,UAAU,CAAC,QAAQ,EAAE,MAAuB,EAAE,QAA0B;QAC5E,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;YAC9C,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC;YAC1B,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;;OAKG;IACI,QAAQ,CAAC,cAAc,EAAE,MAAuB;QACnD,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAC5D,CAAC;IAED;;;;;;;OAOG;IACI,SAAS,CAAC,eAAe,EAAE,eAAe,EAAE,OAAwB,EAAE,OAAwB;QACjG,IAAI,CAAC,UAAU,CAAC,eAAe,EAAE,OAAO,EAAE,eAAe,GAAG,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAC1G,IAAI,CAAC,UAAU,CAAC,eAAe,EAAE,OAAO,IAAI,OAAO,EAAE,eAAe,GAAG,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACzH,CAAC;IAED;;;;;OAKG;IACI,QAAQ,CAAC,cAAc,EAAE,MAAuB;QACnD,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAC5D,CAAC;IAED;;;;OAIG;IACH,IAAW,MAAM;QACb,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAED;;;;OAIG;IACH,IAAW,MAAM,CAAC,KAAK;QACnB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAED;;;;OAIG;IACH,IAAW,MAAM;QACb,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAED;;;;OAIG;IACH,IAAW,MAAM,CAAC,KAAK;QACnB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;CACJ"}
@@ -1,4 +1,4 @@
1
- import { AdditiveTweening, EasingFunction } from 'additween';
1
+ import { AdditiveTweening, EasingFunction } from '@nativescript-community/additween';
2
2
  export { EasingFunction };
3
3
  export declare class Tween<T extends Record<string, number>> extends AdditiveTweening<T> {
4
4
  }
@@ -1,7 +1,8 @@
1
1
  import { time } from '@nativescript/core/profiling';
2
- import { AdditiveTweening } from 'additween';
2
+ import { cancelAnimationFrame, requestAnimationFrame } from '@nativescript/core/animation-frame';
3
+ import { AdditiveTweening } from '@nativescript-community/additween';
3
4
  if (!global.window) {
4
- window = global.window = {
5
+ global.window = {
5
6
  requestAnimationFrame,
6
7
  cancelAnimationFrame,
7
8
  performance: {
@@ -13,6 +14,7 @@ else if (!global.window.requestAnimationFrame) {
13
14
  global.window.requestAnimationFrame = requestAnimationFrame;
14
15
  global.window.cancelAnimationFrame = cancelAnimationFrame;
15
16
  if (!global.window.performance) {
17
+ //@ts-ignore
16
18
  global.window.performance = {
17
19
  now: time
18
20
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Tween.js","sourceRoot":"../src/","sources":["animation/Tween.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAkB,MAAM,WAAW,CAAC;AAE7D,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;IAChB,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG;QACrB,qBAAqB;QACrB,oBAAoB;QACpB,WAAW,EAAE;YACT,GAAG,EAAE,IAAI;SACZ;KACG,CAAC;CACZ;KAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,qBAAqB,EAAE;IAC7C,MAAM,CAAC,MAAM,CAAC,qBAAqB,GAAG,qBAAqB,CAAC;IAC5D,MAAM,CAAC,MAAM,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;IAC1D,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE;QAE5B,MAAM,CAAC,MAAM,CAAC,WAAW,GAAG;YACxB,GAAG,EAAE,IAAI;SACZ,CAAC;KACL;CACJ;AAED,MAAM,OAAO,KAAwC,SAAQ,gBAAmB;CAAG"}
1
+ {"version":3,"file":"Tween.js","sourceRoot":"","sources":["../../../src/ui-chart/animation/Tween.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AACjG,OAAO,EAAE,gBAAgB,EAAkB,MAAM,mCAAmC,CAAC;AAErF,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;IACjB,MAAM,CAAC,MAAM,GAAG;QACZ,qBAAqB;QACrB,oBAAoB;QACpB,WAAW,EAAE;YACT,GAAG,EAAE,IAAI;SACZ;KACG,CAAC;AACb,CAAC;KAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,qBAAqB,EAAE,CAAC;IAC9C,MAAM,CAAC,MAAM,CAAC,qBAAqB,GAAG,qBAAqB,CAAC;IAC5D,MAAM,CAAC,MAAM,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;IAC1D,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;QAC7B,YAAY;QACZ,MAAM,CAAC,MAAM,CAAC,WAAW,GAAG;YACxB,GAAG,EAAE,IAAI;SACZ,CAAC;IACN,CAAC;AACL,CAAC;AAED,MAAM,OAAO,KAAwC,SAAQ,gBAAmB;CAAG"}
@@ -2,14 +2,39 @@ export declare abstract class AbstractBuffer<T> {
2
2
  protected index: number;
3
3
  protected phaseX: number;
4
4
  protected phaseY: number;
5
- protected mFrom: number;
6
- protected mTo: number;
5
+ protected from: number;
6
+ protected to: number;
7
7
  buffer: any;
8
+ /**
9
+ * Initialization with buffer-size.
10
+ *
11
+ * @param size
12
+ */
8
13
  constructor(size: number);
14
+ /** limits the drawing on the x-axis */
9
15
  limitFrom(from: number): void;
16
+ /** limits the drawing on the x-axis */
10
17
  limitTo(to: number): void;
18
+ /**
19
+ * Resets the buffer index to 0 and makes the buffer reusable.
20
+ */
11
21
  reset(): void;
12
- size(): any;
22
+ /**
23
+ * Returns the size (length) of the buffer array.
24
+ */
25
+ get length(): any;
26
+ /**
27
+ * Set the phases used for animations.
28
+ *
29
+ * @param phaseX
30
+ * @param phaseY
31
+ */
13
32
  setPhases(phaseX: any, phaseY: any): void;
33
+ /**
34
+ * Builds up the buffer with the provided data and resets the buffer-index
35
+ * after feed-completion. This needs to run FAST.
36
+ *
37
+ * @param data
38
+ */
14
39
  abstract feed(data: any): any;
15
40
  }
@@ -1,27 +1,46 @@
1
1
  import { Utils } from '../utils/Utils';
2
2
  export class AbstractBuffer {
3
+ /**
4
+ * Initialization with buffer-size.
5
+ *
6
+ * @param size
7
+ */
3
8
  constructor(size) {
4
9
  this.index = 0;
5
10
  this.buffer = Utils.getTempArray(size);
6
11
  }
12
+ /** limits the drawing on the x-axis */
7
13
  limitFrom(from) {
8
14
  if (from < 0) {
9
15
  from = 0;
10
16
  }
11
- this.mFrom = from;
17
+ this.from = from;
12
18
  }
19
+ /** limits the drawing on the x-axis */
13
20
  limitTo(to) {
14
21
  if (to < 0) {
15
22
  to = 0;
16
23
  }
17
- this.mTo = to;
24
+ this.to = to;
18
25
  }
26
+ /**
27
+ * Resets the buffer index to 0 and makes the buffer reusable.
28
+ */
19
29
  reset() {
20
30
  this.index = 0;
21
31
  }
22
- size() {
32
+ /**
33
+ * Returns the size (length) of the buffer array.
34
+ */
35
+ get length() {
23
36
  return this.buffer.length;
24
37
  }
38
+ /**
39
+ * Set the phases used for animations.
40
+ *
41
+ * @param phaseX
42
+ * @param phaseY
43
+ */
25
44
  setPhases(phaseX, phaseY) {
26
45
  this.phaseX = phaseX;
27
46
  this.phaseY = phaseY;
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractBuffer.js","sourceRoot":"../src/","sources":["buffer/AbstractBuffer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAEvC,MAAM,OAAgB,cAAc;IAchC,YAAY,IAAY;QACpB,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;QACf,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC;IAGM,SAAS,CAAC,IAAY;QACzB,IAAI,IAAI,GAAG,CAAC,EAAE;YACV,IAAI,GAAG,CAAC,CAAC;SACZ;QACD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACtB,CAAC;IAGM,OAAO,CAAC,EAAU;QACrB,IAAI,EAAE,GAAG,CAAC,EAAE;YACR,EAAE,GAAG,CAAC,CAAC;SACV;QACD,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;IAClB,CAAC;IAKM,KAAK;QACR,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;IACnB,CAAC;IAOM,IAAI;QACP,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;IAC9B,CAAC;IAQM,SAAS,CAAC,MAAM,EAAE,MAAM;QAC3B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;CASJ"}
1
+ {"version":3,"file":"AbstractBuffer.js","sourceRoot":"","sources":["../../../src/ui-chart/buffer/AbstractBuffer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAEvC,MAAM,OAAgB,cAAc;IAShC;;;;OAIG;IACH,YAAY,IAAY;QACpB,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;QACf,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC;IAED,uCAAuC;IAChC,SAAS,CAAC,IAAY;QACzB,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;YACX,IAAI,GAAG,CAAC,CAAC;QACb,CAAC;QACD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACrB,CAAC;IAED,uCAAuC;IAChC,OAAO,CAAC,EAAU;QACrB,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC;YACT,EAAE,GAAG,CAAC,CAAC;QACX,CAAC;QACD,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IACjB,CAAC;IAED;;OAEG;IACI,KAAK;QACR,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;IACnB,CAAC;IAED;;OAEG;IACH,IAAW,MAAM;QACb,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;IAC9B,CAAC;IAED;;;;;OAKG;IACI,SAAS,CAAC,MAAM,EAAE,MAAM;QAC3B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;CASJ"}
@@ -1,19 +1,15 @@
1
1
  import { AbstractBuffer } from './AbstractBuffer';
2
2
  import { IBarDataSet } from '../interfaces/datasets/IBarDataSet';
3
3
  export declare class BarBuffer extends AbstractBuffer<IBarDataSet> {
4
- protected mDataSetIndex: number;
5
- protected mDataSetCount: number;
6
- protected mContainsStacks: boolean;
7
- protected mInverted: boolean;
8
- protected mBarWidth: number;
9
- protected mYAxisMin: number;
10
- protected mYAxisMax: number;
4
+ dataSetIndex: number;
5
+ dataSetCount: number;
6
+ containsStacks: boolean;
7
+ inverted: boolean;
8
+ /** width of the bar on the x-axis, in values (not pixels) */
9
+ barWidth: number;
10
+ yAxisMin: number;
11
+ yAxisMax: number;
11
12
  constructor(size: number, dataSetCount: number, containsStacks: boolean);
12
- setBarWidth(barWidth: number): void;
13
- setDataSet(index: number): void;
14
- setInverted(inverted: boolean): void;
15
- setYAxisMin(min: number): void;
16
- setYAxisMax(max: number): void;
17
13
  protected addBar(left: any, top: any, right: any, bottom: any): void;
18
14
  feed(data: IBarDataSet): void;
19
15
  }
@@ -2,30 +2,16 @@ import { AbstractBuffer } from './AbstractBuffer';
2
2
  export class BarBuffer extends AbstractBuffer {
3
3
  constructor(size, dataSetCount, containsStacks) {
4
4
  super(size);
5
- this.mDataSetIndex = 0;
6
- this.mDataSetCount = 1;
7
- this.mContainsStacks = false;
8
- this.mInverted = false;
9
- this.mBarWidth = 1;
10
- this.mYAxisMin = 0;
11
- this.mYAxisMax = 0;
12
- this.mDataSetCount = dataSetCount;
13
- this.mContainsStacks = containsStacks;
14
- }
15
- setBarWidth(barWidth) {
16
- this.mBarWidth = barWidth;
17
- }
18
- setDataSet(index) {
19
- this.mDataSetIndex = index;
20
- }
21
- setInverted(inverted) {
22
- this.mInverted = inverted;
23
- }
24
- setYAxisMin(min) {
25
- this.mYAxisMin = min;
26
- }
27
- setYAxisMax(max) {
28
- this.mYAxisMax = max;
5
+ this.dataSetIndex = 0;
6
+ this.dataSetCount = 1;
7
+ this.containsStacks = false;
8
+ this.inverted = false;
9
+ /** width of the bar on the x-axis, in values (not pixels) */
10
+ this.barWidth = 1;
11
+ this.yAxisMin = 0;
12
+ this.yAxisMax = 0;
13
+ this.dataSetCount = dataSetCount;
14
+ this.containsStacks = containsStacks;
29
15
  }
30
16
  addBar(left, top, right, bottom) {
31
17
  this.buffer[this.index++] = left;
@@ -34,44 +20,52 @@ export class BarBuffer extends AbstractBuffer {
34
20
  this.buffer[this.index++] = bottom;
35
21
  }
36
22
  feed(data) {
37
- const size = data.getEntryCount() * this.phaseX;
38
- const barWidthHalf = this.mBarWidth / 2;
23
+ const size = data.entryCount * this.phaseX;
24
+ const barWidthHalf = this.barWidth / 2;
39
25
  const yKey = data.yProperty;
40
26
  for (let i = 0; i < size; i++) {
41
27
  const e = data.getEntryForIndex(i);
42
- if (e == null) {
28
+ if (!e) {
43
29
  continue;
44
30
  }
45
31
  const x = data.getEntryXValue(e, i);
46
32
  let y = e[yKey];
47
33
  const vals = e.yVals;
48
- if (!this.mContainsStacks || vals == null || vals.length === 0) {
34
+ if (!this.containsStacks || !vals || vals.length === 0) {
35
+ if (y === undefined || y === null) {
36
+ continue;
37
+ }
49
38
  const left = x - barWidthHalf;
50
39
  const right = x + barWidthHalf;
51
40
  let bottom, top;
52
- if (this.mInverted) {
53
- bottom = y >= 0 ? y : this.mYAxisMax <= 0 ? this.mYAxisMax : 0;
54
- top = y <= 0 ? y : this.mYAxisMin >= 0 ? this.mYAxisMin : 0;
41
+ if (this.inverted) {
42
+ bottom = y >= 0 ? y : this.yAxisMax <= 0 ? this.yAxisMax : 0;
43
+ top = y <= 0 ? y : this.yAxisMin >= 0 ? this.yAxisMin : 0;
55
44
  }
56
45
  else {
57
- top = y >= 0 ? y : this.mYAxisMax <= 0 ? this.mYAxisMax : 0;
58
- bottom = y <= 0 ? y : this.mYAxisMin >= 0 ? this.mYAxisMin : 0;
46
+ top = y >= 0 ? y : this.yAxisMax <= 0 ? this.yAxisMax : 0;
47
+ bottom = y <= 0 ? y : this.yAxisMin >= 0 ? this.yAxisMin : 0;
59
48
  }
49
+ // multiply the height of the rect with the phase
60
50
  if (top > 0) {
61
51
  top = bottom + this.phaseY * (top - bottom);
62
52
  }
63
53
  else {
64
54
  bottom = top + this.phaseY * (bottom - top);
65
55
  }
66
- this.addBar(left, top, right, bottom);
56
+ if (left !== right && top !== bottom) {
57
+ this.addBar(left, top, right, bottom);
58
+ }
67
59
  }
68
60
  else {
69
61
  let posY = 0;
70
62
  let negY = -e.negativeSum;
71
63
  let yStart = 0;
64
+ // fill the stack
72
65
  for (let k = 0; k < vals.length; k++) {
73
66
  const value = vals[k];
74
67
  if (value === 0.0 && (posY === 0.0 || negY === 0.0)) {
68
+ // Take care of the situation of a 0.0 value, which overlaps a non-zero bar
75
69
  y = value;
76
70
  yStart = y;
77
71
  }
@@ -88,7 +82,7 @@ export class BarBuffer extends AbstractBuffer {
88
82
  const left = x - barWidthHalf;
89
83
  const right = x + barWidthHalf;
90
84
  let bottom, top;
91
- if (this.mInverted) {
85
+ if (this.inverted) {
92
86
  bottom = y >= yStart ? y : yStart;
93
87
  top = y <= yStart ? y : yStart;
94
88
  }
@@ -96,13 +90,16 @@ export class BarBuffer extends AbstractBuffer {
96
90
  top = y >= yStart ? y : yStart;
97
91
  bottom = y <= yStart ? y : yStart;
98
92
  }
93
+ // multiply the height of the rect with the phase
99
94
  if (top > 0) {
100
95
  top = bottom + this.phaseY * (top - bottom);
101
96
  }
102
97
  else {
103
98
  bottom = top + this.phaseY * (bottom - top);
104
99
  }
105
- this.addBar(left, top, right, bottom);
100
+ if (left !== right && top !== bottom) {
101
+ this.addBar(left, top, right, bottom);
102
+ }
106
103
  }
107
104
  }
108
105
  }
@@ -1 +1 @@
1
- {"version":3,"file":"BarBuffer.js","sourceRoot":"../src/","sources":["buffer/BarBuffer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BarBuffer.js","sourceRoot":"","sources":["../../../src/ui-chart/buffer/BarBuffer.ts"],"names":[],"mappings":"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"}
@@ -4,29 +4,30 @@ export class HorizontalBarBuffer extends BarBuffer {
4
4
  super(size, dataSetCount, containsStacks);
5
5
  }
6
6
  feed(data) {
7
- const size = data.getEntryCount() * this.phaseX;
8
- const barWidthHalf = this.mBarWidth / 2;
7
+ const size = data.entryCount * this.phaseX;
8
+ const barWidthHalf = this.barWidth / 2;
9
9
  const yKey = data.yProperty;
10
10
  for (let i = 0; i < size; i++) {
11
11
  const e = data.getEntryForIndex(i);
12
- if (e == null) {
12
+ if (!e) {
13
13
  continue;
14
14
  }
15
15
  const x = data.getEntryXValue(e, i);
16
16
  let y = e[yKey];
17
17
  const vals = e.yVals;
18
- if (!this.mContainsStacks || vals == null) {
18
+ if (!this.containsStacks || !vals) {
19
19
  const bottom = x - barWidthHalf;
20
20
  const top = x + barWidthHalf;
21
21
  let left, right;
22
- if (this.mInverted) {
23
- left = y >= 0 ? y : this.mYAxisMax <= 0 ? this.mYAxisMax : 0;
24
- right = y <= 0 ? y : this.mYAxisMin >= 0 ? this.mYAxisMin : 0;
22
+ if (this.inverted) {
23
+ left = y >= 0 ? y : this.yAxisMax <= 0 ? this.yAxisMax : 0;
24
+ right = y <= 0 ? y : this.yAxisMin >= 0 ? this.yAxisMin : 0;
25
25
  }
26
26
  else {
27
- right = y >= 0 ? y : this.mYAxisMax <= 0 ? this.mYAxisMax : 0;
28
- left = y <= 0 ? y : this.mYAxisMin >= 0 ? this.mYAxisMin : 0;
27
+ right = y >= 0 ? y : this.yAxisMax <= 0 ? this.yAxisMax : 0;
28
+ left = y <= 0 ? y : this.yAxisMin >= 0 ? this.yAxisMin : 0;
29
29
  }
30
+ // multiply the height of the rect with the phase
30
31
  if (right > 0) {
31
32
  right = left + this.phaseY * (right - left);
32
33
  }
@@ -39,6 +40,7 @@ export class HorizontalBarBuffer extends BarBuffer {
39
40
  let posY = 0;
40
41
  let negY = -e.negativeSum;
41
42
  let yStart = 0;
43
+ // fill the stack
42
44
  for (let k = 0; k < vals.length; k++) {
43
45
  const value = vals[k];
44
46
  if (value >= 0) {
@@ -54,7 +56,7 @@ export class HorizontalBarBuffer extends BarBuffer {
54
56
  const bottom = x - barWidthHalf;
55
57
  const top = x + barWidthHalf;
56
58
  let left, right;
57
- if (this.mInverted) {
59
+ if (this.inverted) {
58
60
  left = y >= yStart ? y : yStart;
59
61
  right = y <= yStart ? y : yStart;
60
62
  }
@@ -62,6 +64,7 @@ export class HorizontalBarBuffer extends BarBuffer {
62
64
  right = y >= yStart ? y : yStart;
63
65
  left = y <= yStart ? y : yStart;
64
66
  }
67
+ // multiply the height of the rect with the phase
65
68
  if (right > 0) {
66
69
  right = left + this.phaseY * (right - left);
67
70
  }
@@ -1 +1 @@
1
- {"version":3,"file":"HorizontalBarBuffer.js","sourceRoot":"../src/","sources":["buffer/HorizontalBarBuffer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HorizontalBarBuffer.js","sourceRoot":"","sources":["../../../src/ui-chart/buffer/HorizontalBarBuffer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,MAAM,OAAO,mBAAoB,SAAQ,SAAS;IAC9C,YAAY,IAAY,EAAE,YAAoB,EAAE,cAAuB;QACnE,KAAK,CAAC,IAAI,EAAE,YAAY,EAAE,cAAc,CAAC,CAAC;IAC9C,CAAC;IAEM,IAAI,CAAC,IAAiB;QACzB,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3C,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;QACvC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;QAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5B,MAAM,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;YACnC,IAAI,CAAC,CAAC,EAAE,CAAC;gBACL,SAAS;YACb,CAAC;YAED,MAAM,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACpC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;YAChB,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC;YAErB,IAAI,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,EAAE,CAAC;gBAChC,MAAM,MAAM,GAAG,CAAC,GAAG,YAAY,CAAC;gBAChC,MAAM,GAAG,GAAG,CAAC,GAAG,YAAY,CAAC;gBAC7B,IAAI,IAAI,EAAE,KAAK,CAAC;gBAChB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAChB,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC3D,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;gBAChE,CAAC;qBAAM,CAAC;oBACJ,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC5D,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC/D,CAAC;gBAED,iDAAiD;gBACjD,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;oBACZ,KAAK,GAAG,IAAI,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;gBAChD,CAAC;qBAAM,CAAC;oBACJ,IAAI,GAAG,KAAK,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC;gBAChD,CAAC;gBACD,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;YAC1C,CAAC;iBAAM,CAAC;gBACJ,IAAI,IAAI,GAAG,CAAC,CAAC;gBACb,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC;gBAC1B,IAAI,MAAM,GAAG,CAAC,CAAC;gBAEf,iBAAiB;gBACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBACnC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;oBAEtB,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;wBACb,CAAC,GAAG,IAAI,CAAC;wBACT,MAAM,GAAG,IAAI,GAAG,KAAK,CAAC;wBACtB,IAAI,GAAG,MAAM,CAAC;oBAClB,CAAC;yBAAM,CAAC;wBACJ,CAAC,GAAG,IAAI,CAAC;wBACT,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;wBAChC,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;oBAC5B,CAAC;oBAED,MAAM,MAAM,GAAG,CAAC,GAAG,YAAY,CAAC;oBAChC,MAAM,GAAG,GAAG,CAAC,GAAG,YAAY,CAAC;oBAC7B,IAAI,IAAI,EAAE,KAAK,CAAC;oBAChB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;wBAChB,IAAI,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;wBAChC,KAAK,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;oBACrC,CAAC;yBAAM,CAAC;wBACJ,KAAK,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;wBACjC,IAAI,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;oBACpC,CAAC;oBAED,iDAAiD;oBACjD,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;wBACZ,KAAK,GAAG,IAAI,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;oBAChD,CAAC;yBAAM,CAAC;wBACJ,IAAI,GAAG,KAAK,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC;oBAChD,CAAC;oBAED,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;gBAC1C,CAAC;YACL,CAAC;QACL,CAAC;QACD,IAAI,CAAC,KAAK,EAAE,CAAC;IACjB,CAAC;CACJ"}