react-native-wagmi-charts 2.7.3 → 2.8.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 (357) hide show
  1. package/README.md +42 -15
  2. package/lib/commonjs/charts/candle/Candle.js +177 -93
  3. package/lib/commonjs/charts/candle/Candle.js.map +1 -1
  4. package/lib/commonjs/charts/candle/Candles.js +66 -43
  5. package/lib/commonjs/charts/candle/Candles.js.map +1 -1
  6. package/lib/commonjs/charts/candle/Chart.js +38 -28
  7. package/lib/commonjs/charts/candle/Chart.js.map +1 -1
  8. package/lib/commonjs/charts/candle/Context.js +74 -43
  9. package/lib/commonjs/charts/candle/Context.js.map +1 -1
  10. package/lib/commonjs/charts/candle/Crosshair.js +190 -81
  11. package/lib/commonjs/charts/candle/Crosshair.js.map +1 -1
  12. package/lib/commonjs/charts/candle/CrosshairTooltip.js +140 -61
  13. package/lib/commonjs/charts/candle/CrosshairTooltip.js.map +1 -1
  14. package/lib/commonjs/charts/candle/DatetimeText.js +19 -14
  15. package/lib/commonjs/charts/candle/DatetimeText.js.map +1 -1
  16. package/lib/commonjs/charts/candle/Line.js +73 -28
  17. package/lib/commonjs/charts/candle/Line.js.map +1 -1
  18. package/lib/commonjs/charts/candle/PriceText.js +19 -14
  19. package/lib/commonjs/charts/candle/PriceText.js.map +1 -1
  20. package/lib/commonjs/charts/candle/index.js +67 -64
  21. package/lib/commonjs/charts/candle/types.js +4 -4
  22. package/lib/commonjs/charts/candle/useCandleData.js +9 -12
  23. package/lib/commonjs/charts/candle/useCandlestickChart.js +10 -9
  24. package/lib/commonjs/charts/candle/useCandlestickChart.js.map +1 -1
  25. package/lib/commonjs/charts/candle/useDatetime.js +16 -18
  26. package/lib/commonjs/charts/candle/useDatetime.js.map +1 -1
  27. package/lib/commonjs/charts/candle/usePrice.js +21 -22
  28. package/lib/commonjs/charts/candle/usePrice.js.map +1 -1
  29. package/lib/commonjs/charts/candle/utils/getDomain.js +5 -8
  30. package/lib/commonjs/charts/candle/utils/getHeight.js +12 -11
  31. package/lib/commonjs/charts/candle/utils/getPrice.js +12 -11
  32. package/lib/commonjs/charts/candle/utils/getY.js +12 -11
  33. package/lib/commonjs/charts/candle/utils/index.js +16 -16
  34. package/lib/commonjs/charts/line/Axis.js +402 -0
  35. package/lib/commonjs/charts/line/Axis.js.map +1 -0
  36. package/lib/commonjs/charts/line/Chart.js +140 -69
  37. package/lib/commonjs/charts/line/Chart.js.map +1 -1
  38. package/lib/commonjs/charts/line/ChartPath.js +290 -90
  39. package/lib/commonjs/charts/line/ChartPath.js.map +1 -1
  40. package/lib/commonjs/charts/line/Context.js +98 -40
  41. package/lib/commonjs/charts/line/Context.js.map +1 -1
  42. package/lib/commonjs/charts/line/Cursor.js +129 -75
  43. package/lib/commonjs/charts/line/Cursor.js.map +1 -1
  44. package/lib/commonjs/charts/line/CursorCrosshair.js +151 -58
  45. package/lib/commonjs/charts/line/CursorCrosshair.js.map +1 -1
  46. package/lib/commonjs/charts/line/CursorLine.js +251 -45
  47. package/lib/commonjs/charts/line/CursorLine.js.map +1 -1
  48. package/lib/commonjs/charts/line/Data.js +73 -35
  49. package/lib/commonjs/charts/line/Data.js.map +1 -1
  50. package/lib/commonjs/charts/line/DatetimeText.js +27 -14
  51. package/lib/commonjs/charts/line/DatetimeText.js.map +1 -1
  52. package/lib/commonjs/charts/line/Dot.js +150 -57
  53. package/lib/commonjs/charts/line/Dot.js.map +1 -1
  54. package/lib/commonjs/charts/line/Gradient.js +124 -54
  55. package/lib/commonjs/charts/line/Gradient.js.map +1 -1
  56. package/lib/commonjs/charts/line/Group.js +54 -24
  57. package/lib/commonjs/charts/line/Group.js.map +1 -1
  58. package/lib/commonjs/charts/line/Highlight.js +115 -47
  59. package/lib/commonjs/charts/line/Highlight.js.map +1 -1
  60. package/lib/commonjs/charts/line/HorizontalLine.js +92 -40
  61. package/lib/commonjs/charts/line/HorizontalLine.js.map +1 -1
  62. package/lib/commonjs/charts/line/HoverTrap/index.js +10 -7
  63. package/lib/commonjs/charts/line/HoverTrap/index.js.map +1 -1
  64. package/lib/commonjs/charts/line/HoverTrap/index.web.js +115 -86
  65. package/lib/commonjs/charts/line/HoverTrap/index.web.js.map +1 -1
  66. package/lib/commonjs/charts/line/LineChartPathContext.js +14 -11
  67. package/lib/commonjs/charts/line/LineChartPathContext.js.map +1 -1
  68. package/lib/commonjs/charts/line/Path.js +78 -39
  69. package/lib/commonjs/charts/line/Path.js.map +1 -1
  70. package/lib/commonjs/charts/line/PriceText.js +113 -14
  71. package/lib/commonjs/charts/line/PriceText.js.map +1 -1
  72. package/lib/commonjs/charts/line/Tooltip.js +236 -106
  73. package/lib/commonjs/charts/line/Tooltip.js.map +1 -1
  74. package/lib/commonjs/charts/line/index.js +75 -62
  75. package/lib/commonjs/charts/line/index.js.map +1 -1
  76. package/lib/commonjs/charts/line/types.js +4 -4
  77. package/lib/commonjs/charts/line/useAnimatedPath.js +28 -23
  78. package/lib/commonjs/charts/line/useAnimatedPath.js.map +1 -1
  79. package/lib/commonjs/charts/line/useCurrentY.js +17 -17
  80. package/lib/commonjs/charts/line/useDatetime.js +34 -33
  81. package/lib/commonjs/charts/line/useDatetime.js.map +1 -1
  82. package/lib/commonjs/charts/line/useLineChart.js +21 -17
  83. package/lib/commonjs/charts/line/useLineChart.js.map +1 -1
  84. package/lib/commonjs/charts/line/usePrice.js +30 -28
  85. package/lib/commonjs/charts/line/usePrice.js.map +1 -1
  86. package/lib/commonjs/charts/line/utils/getArea.js +48 -20
  87. package/lib/commonjs/charts/line/utils/getArea.js.map +1 -1
  88. package/lib/commonjs/charts/line/utils/getDomain.js +5 -7
  89. package/lib/commonjs/charts/line/utils/getPath.js +54 -20
  90. package/lib/commonjs/charts/line/utils/getPath.js.map +1 -1
  91. package/lib/commonjs/charts/line/utils/getXPositionForCurve.js +8 -5
  92. package/lib/commonjs/charts/line/utils/getXPositionForCurve.js.map +1 -1
  93. package/lib/commonjs/charts/line/utils/index.js +19 -19
  94. package/lib/commonjs/charts/line/utils/interpolatePath.js +102 -62
  95. package/lib/commonjs/charts/line/utils/interpolatePath.js.map +1 -1
  96. package/lib/commonjs/charts/line/utils/lineChartDataPropToArray.js +5 -5
  97. package/lib/commonjs/components/AnimatedText.js +66 -39
  98. package/lib/commonjs/components/AnimatedText.js.map +1 -1
  99. package/lib/commonjs/index.js +27 -16
  100. package/lib/commonjs/index.js.map +1 -1
  101. package/lib/commonjs/types.js +2 -0
  102. package/lib/commonjs/types.js.map +1 -0
  103. package/lib/commonjs/utils/formatDatetime.js +5 -9
  104. package/lib/commonjs/utils/formatPrice.js +13 -9
  105. package/lib/commonjs/utils/formatPrice.js.map +1 -1
  106. package/lib/commonjs/utils/index.js +13 -13
  107. package/lib/commonjs/utils/usePrevious.js +10 -9
  108. package/lib/commonjs/utils/usePrevious.js.map +1 -1
  109. package/lib/module/charts/candle/Candle.js +126 -76
  110. package/lib/module/charts/candle/Candle.js.map +1 -1
  111. package/lib/module/charts/candle/Candles.js +53 -34
  112. package/lib/module/charts/candle/Candles.js.map +1 -1
  113. package/lib/module/charts/candle/Chart.js +23 -20
  114. package/lib/module/charts/candle/Chart.js.map +1 -1
  115. package/lib/module/charts/candle/Context.js +53 -23
  116. package/lib/module/charts/candle/Context.js.map +1 -1
  117. package/lib/module/charts/candle/Crosshair.js +151 -69
  118. package/lib/module/charts/candle/Crosshair.js.map +1 -1
  119. package/lib/module/charts/candle/CrosshairTooltip.js +102 -52
  120. package/lib/module/charts/candle/CrosshairTooltip.js.map +1 -1
  121. package/lib/module/charts/candle/DatetimeText.js +5 -5
  122. package/lib/module/charts/candle/Line.js +37 -19
  123. package/lib/module/charts/candle/PriceText.js +5 -5
  124. package/lib/module/charts/candle/PriceText.js.map +1 -1
  125. package/lib/module/charts/candle/index.js +2 -2
  126. package/lib/module/charts/candle/types.js +1 -1
  127. package/lib/module/charts/candle/useCandleData.js +3 -7
  128. package/lib/module/charts/candle/useCandlestickChart.js +2 -2
  129. package/lib/module/charts/candle/useCandlestickChart.js.map +1 -1
  130. package/lib/module/charts/candle/useDatetime.js +10 -12
  131. package/lib/module/charts/candle/useDatetime.js.map +1 -1
  132. package/lib/module/charts/candle/usePrice.js +12 -14
  133. package/lib/module/charts/candle/usePrice.js.map +1 -1
  134. package/lib/module/charts/candle/utils/getDomain.js +2 -5
  135. package/lib/module/charts/candle/utils/getHeight.js +8 -7
  136. package/lib/module/charts/candle/utils/getPrice.js +2 -6
  137. package/lib/module/charts/candle/utils/getY.js +2 -6
  138. package/lib/module/charts/candle/utils/index.js +1 -1
  139. package/lib/module/charts/line/Axis.js +349 -0
  140. package/lib/module/charts/line/Axis.js.map +1 -0
  141. package/lib/module/charts/line/Chart.js +82 -46
  142. package/lib/module/charts/line/Chart.js.map +1 -1
  143. package/lib/module/charts/line/ChartPath.js +246 -77
  144. package/lib/module/charts/line/ChartPath.js.map +1 -1
  145. package/lib/module/charts/line/Context.js +65 -32
  146. package/lib/module/charts/line/Context.js.map +1 -1
  147. package/lib/module/charts/line/Cursor.js +86 -60
  148. package/lib/module/charts/line/Cursor.js.map +1 -1
  149. package/lib/module/charts/line/CursorCrosshair.js +118 -50
  150. package/lib/module/charts/line/CursorCrosshair.js.map +1 -1
  151. package/lib/module/charts/line/CursorLine.js +210 -33
  152. package/lib/module/charts/line/CursorLine.js.map +1 -1
  153. package/lib/module/charts/line/Data.js +41 -28
  154. package/lib/module/charts/line/Data.js.map +1 -1
  155. package/lib/module/charts/line/DatetimeText.js +14 -6
  156. package/lib/module/charts/line/DatetimeText.js.map +1 -1
  157. package/lib/module/charts/line/Dot.js +95 -41
  158. package/lib/module/charts/line/Dot.js.map +1 -1
  159. package/lib/module/charts/line/Gradient.js +80 -42
  160. package/lib/module/charts/line/Gradient.js.map +1 -1
  161. package/lib/module/charts/line/Group.js +15 -14
  162. package/lib/module/charts/line/Highlight.js +62 -32
  163. package/lib/module/charts/line/Highlight.js.map +1 -1
  164. package/lib/module/charts/line/HorizontalLine.js +49 -27
  165. package/lib/module/charts/line/HorizontalLine.js.map +1 -1
  166. package/lib/module/charts/line/HoverTrap/index.js +3 -2
  167. package/lib/module/charts/line/HoverTrap/index.web.js +102 -76
  168. package/lib/module/charts/line/HoverTrap/index.web.js.map +1 -1
  169. package/lib/module/charts/line/LineChartPathContext.js +3 -3
  170. package/lib/module/charts/line/Path.js +34 -27
  171. package/lib/module/charts/line/Path.js.map +1 -1
  172. package/lib/module/charts/line/PriceText.js +80 -6
  173. package/lib/module/charts/line/PriceText.js.map +1 -1
  174. package/lib/module/charts/line/Tooltip.js +202 -94
  175. package/lib/module/charts/line/Tooltip.js.map +1 -1
  176. package/lib/module/charts/line/index.js +6 -3
  177. package/lib/module/charts/line/index.js.map +1 -1
  178. package/lib/module/charts/line/types.js +1 -1
  179. package/lib/module/charts/line/useAnimatedPath.js +22 -16
  180. package/lib/module/charts/line/useAnimatedPath.js.map +1 -1
  181. package/lib/module/charts/line/useCurrentY.js +4 -9
  182. package/lib/module/charts/line/useDatetime.js +28 -27
  183. package/lib/module/charts/line/useDatetime.js.map +1 -1
  184. package/lib/module/charts/line/useLineChart.js +11 -8
  185. package/lib/module/charts/line/useLineChart.js.map +1 -1
  186. package/lib/module/charts/line/usePrice.js +24 -22
  187. package/lib/module/charts/line/usePrice.js.map +1 -1
  188. package/lib/module/charts/line/utils/getArea.js +16 -11
  189. package/lib/module/charts/line/utils/getArea.js.map +1 -1
  190. package/lib/module/charts/line/utils/getDomain.js +2 -4
  191. package/lib/module/charts/line/utils/getPath.js +22 -11
  192. package/lib/module/charts/line/utils/getPath.js.map +1 -1
  193. package/lib/module/charts/line/utils/getXPositionForCurve.js +5 -2
  194. package/lib/module/charts/line/utils/getXPositionForCurve.js.map +1 -1
  195. package/lib/module/charts/line/utils/index.js +1 -1
  196. package/lib/module/charts/line/utils/interpolatePath.js +99 -59
  197. package/lib/module/charts/line/utils/interpolatePath.js.map +1 -1
  198. package/lib/module/charts/line/utils/lineChartDataPropToArray.js +2 -2
  199. package/lib/module/components/AnimatedText.js +24 -30
  200. package/lib/module/components/AnimatedText.js.map +1 -1
  201. package/lib/module/index.js +2 -1
  202. package/lib/module/index.js.map +1 -1
  203. package/lib/module/types.js +1 -0
  204. package/lib/module/types.js.map +1 -0
  205. package/lib/module/utils/formatDatetime.js +2 -6
  206. package/lib/module/utils/formatPrice.js +10 -6
  207. package/lib/module/utils/formatPrice.js.map +1 -1
  208. package/lib/module/utils/index.js +1 -1
  209. package/lib/module/utils/usePrevious.js +2 -2
  210. package/lib/module/utils/usePrevious.js.map +1 -1
  211. package/lib/typescript/src/charts/candle/Candle.d.ts +45 -31
  212. package/lib/typescript/src/charts/candle/Candle.d.ts.map +1 -1
  213. package/lib/typescript/src/charts/candle/Candles.d.ts +25 -14
  214. package/lib/typescript/src/charts/candle/Candles.d.ts.map +1 -1
  215. package/lib/typescript/src/charts/candle/Chart.d.ts +13 -8
  216. package/lib/typescript/src/charts/candle/Chart.d.ts.map +1 -1
  217. package/lib/typescript/src/charts/candle/Context.d.ts +15 -8
  218. package/lib/typescript/src/charts/candle/Context.d.ts.map +1 -1
  219. package/lib/typescript/src/charts/candle/Crosshair.d.ts +18 -10
  220. package/lib/typescript/src/charts/candle/Crosshair.d.ts.map +1 -1
  221. package/lib/typescript/src/charts/candle/CrosshairTooltip.d.ts +16 -9
  222. package/lib/typescript/src/charts/candle/CrosshairTooltip.d.ts.map +1 -1
  223. package/lib/typescript/src/charts/candle/DatetimeText.d.ts +16 -10
  224. package/lib/typescript/src/charts/candle/DatetimeText.d.ts.map +1 -1
  225. package/lib/typescript/src/charts/candle/Line.d.ts +10 -5
  226. package/lib/typescript/src/charts/candle/Line.d.ts.map +1 -1
  227. package/lib/typescript/src/charts/candle/PriceText.d.ts +15 -8
  228. package/lib/typescript/src/charts/candle/PriceText.d.ts.map +1 -1
  229. package/lib/typescript/src/charts/candle/index.d.ts +32 -14
  230. package/lib/typescript/src/charts/candle/index.d.ts.map +1 -1
  231. package/lib/typescript/src/charts/candle/types.d.ts +16 -19
  232. package/lib/typescript/src/charts/candle/types.d.ts.map +1 -1
  233. package/lib/typescript/src/charts/candle/useCandleData.d.ts +1 -1
  234. package/lib/typescript/src/charts/candle/useCandlestickChart.d.ts +1 -1
  235. package/lib/typescript/src/charts/candle/useDatetime.d.ts +14 -10
  236. package/lib/typescript/src/charts/candle/useDatetime.d.ts.map +1 -1
  237. package/lib/typescript/src/charts/candle/usePrice.d.ts +13 -8
  238. package/lib/typescript/src/charts/candle/usePrice.d.ts.map +1 -1
  239. package/lib/typescript/src/charts/candle/utils/getDomain.d.ts +1 -1
  240. package/lib/typescript/src/charts/candle/utils/getHeight.d.ts +9 -5
  241. package/lib/typescript/src/charts/candle/utils/getPrice.d.ts +9 -5
  242. package/lib/typescript/src/charts/candle/utils/getY.d.ts +9 -5
  243. package/lib/typescript/src/charts/candle/utils/index.d.ts +1 -1
  244. package/lib/typescript/src/charts/line/Axis.d.ts +33 -0
  245. package/lib/typescript/src/charts/line/Axis.d.ts.map +1 -0
  246. package/lib/typescript/src/charts/line/Chart.d.ts +33 -23
  247. package/lib/typescript/src/charts/line/Chart.d.ts.map +1 -1
  248. package/lib/typescript/src/charts/line/ChartPath.d.ts +29 -16
  249. package/lib/typescript/src/charts/line/ChartPath.d.ts.map +1 -1
  250. package/lib/typescript/src/charts/line/Context.d.ts +17 -10
  251. package/lib/typescript/src/charts/line/Context.d.ts.map +1 -1
  252. package/lib/typescript/src/charts/line/Cursor.d.ts +23 -13
  253. package/lib/typescript/src/charts/line/Cursor.d.ts.map +1 -1
  254. package/lib/typescript/src/charts/line/CursorCrosshair.d.ts +24 -12
  255. package/lib/typescript/src/charts/line/CursorCrosshair.d.ts.map +1 -1
  256. package/lib/typescript/src/charts/line/CursorLine.d.ts +19 -8
  257. package/lib/typescript/src/charts/line/CursorLine.d.ts.map +1 -1
  258. package/lib/typescript/src/charts/line/Data.d.ts +17 -13
  259. package/lib/typescript/src/charts/line/DatetimeText.d.ts +15 -9
  260. package/lib/typescript/src/charts/line/DatetimeText.d.ts.map +1 -1
  261. package/lib/typescript/src/charts/line/Dot.d.ts +39 -26
  262. package/lib/typescript/src/charts/line/Dot.d.ts.map +1 -1
  263. package/lib/typescript/src/charts/line/Gradient.d.ts +9 -5
  264. package/lib/typescript/src/charts/line/Gradient.d.ts.map +1 -1
  265. package/lib/typescript/src/charts/line/Group.d.ts +6 -3
  266. package/lib/typescript/src/charts/line/Highlight.d.ts +17 -9
  267. package/lib/typescript/src/charts/line/Highlight.d.ts.map +1 -1
  268. package/lib/typescript/src/charts/line/HorizontalLine.d.ts +30 -26
  269. package/lib/typescript/src/charts/line/HorizontalLine.d.ts.map +1 -1
  270. package/lib/typescript/src/charts/line/HoverTrap/index.d.ts +1 -1
  271. package/lib/typescript/src/charts/line/HoverTrap/index.web.d.ts +2 -2
  272. package/lib/typescript/src/charts/line/HoverTrap/index.web.d.ts.map +1 -1
  273. package/lib/typescript/src/charts/line/LineChartPathContext.d.ts +4 -4
  274. package/lib/typescript/src/charts/line/Path.d.ts +28 -23
  275. package/lib/typescript/src/charts/line/Path.d.ts.map +1 -1
  276. package/lib/typescript/src/charts/line/PriceText.d.ts +29 -13
  277. package/lib/typescript/src/charts/line/PriceText.d.ts.map +1 -1
  278. package/lib/typescript/src/charts/line/Tooltip.d.ts +34 -22
  279. package/lib/typescript/src/charts/line/Tooltip.d.ts.map +1 -1
  280. package/lib/typescript/src/charts/line/index.d.ts +34 -20
  281. package/lib/typescript/src/charts/line/index.d.ts.map +1 -1
  282. package/lib/typescript/src/charts/line/types.d.ts +19 -18
  283. package/lib/typescript/src/charts/line/types.d.ts.map +1 -1
  284. package/lib/typescript/src/charts/line/useAnimatedPath.d.ts +10 -7
  285. package/lib/typescript/src/charts/line/useAnimatedPath.d.ts.map +1 -1
  286. package/lib/typescript/src/charts/line/useCurrentY.d.ts +2 -2
  287. package/lib/typescript/src/charts/line/useCurrentY.d.ts.map +1 -1
  288. package/lib/typescript/src/charts/line/useDatetime.d.ts +12 -8
  289. package/lib/typescript/src/charts/line/useDatetime.d.ts.map +1 -1
  290. package/lib/typescript/src/charts/line/useLineChart.d.ts +10 -10
  291. package/lib/typescript/src/charts/line/usePrice.d.ts +12 -8
  292. package/lib/typescript/src/charts/line/usePrice.d.ts.map +1 -1
  293. package/lib/typescript/src/charts/line/utils/getArea.d.ts +17 -9
  294. package/lib/typescript/src/charts/line/utils/getArea.d.ts.map +1 -1
  295. package/lib/typescript/src/charts/line/utils/getDomain.d.ts +1 -1
  296. package/lib/typescript/src/charts/line/utils/getPath.d.ts +21 -11
  297. package/lib/typescript/src/charts/line/utils/getPath.d.ts.map +1 -1
  298. package/lib/typescript/src/charts/line/utils/getXPositionForCurve.d.ts +1 -1
  299. package/lib/typescript/src/charts/line/utils/index.d.ts +1 -1
  300. package/lib/typescript/src/charts/line/utils/interpolatePath.d.ts +17 -5
  301. package/lib/typescript/src/charts/line/utils/lineChartDataPropToArray.d.ts +4 -2
  302. package/lib/typescript/src/components/AnimatedText.d.ts +7 -4
  303. package/lib/typescript/src/components/AnimatedText.d.ts.map +1 -1
  304. package/lib/typescript/src/index.d.ts +2 -1
  305. package/lib/typescript/src/index.d.ts.map +1 -1
  306. package/lib/typescript/src/types.d.ts +8 -0
  307. package/lib/typescript/src/types.d.ts.map +1 -0
  308. package/lib/typescript/src/utils/formatDatetime.d.ts +9 -5
  309. package/lib/typescript/src/utils/formatPrice.d.ts +9 -5
  310. package/lib/typescript/src/utils/formatPrice.d.ts.map +1 -1
  311. package/lib/typescript/src/utils/index.d.ts +1 -1
  312. package/lib/typescript/src/utils/usePrevious.d.ts +1 -1
  313. package/package.json +19 -43
  314. package/src/charts/candle/Candle.tsx +2 -17
  315. package/src/charts/candle/Candles.tsx +1 -3
  316. package/src/charts/candle/Chart.tsx +1 -1
  317. package/src/charts/candle/Context.tsx +30 -7
  318. package/src/charts/candle/Crosshair.tsx +20 -8
  319. package/src/charts/candle/CrosshairTooltip.tsx +3 -1
  320. package/src/charts/candle/DatetimeText.tsx +1 -1
  321. package/src/charts/candle/PriceText.tsx +2 -1
  322. package/src/charts/candle/types.ts +1 -7
  323. package/src/charts/candle/useCandlestickChart.ts +1 -1
  324. package/src/charts/candle/useDatetime.ts +3 -1
  325. package/src/charts/candle/usePrice.ts +5 -1
  326. package/src/charts/line/Axis.tsx +363 -0
  327. package/src/charts/line/Chart.tsx +10 -7
  328. package/src/charts/line/ChartPath.tsx +77 -18
  329. package/src/charts/line/Context.tsx +29 -18
  330. package/src/charts/line/Cursor.tsx +15 -11
  331. package/src/charts/line/CursorCrosshair.tsx +27 -8
  332. package/src/charts/line/CursorLine.tsx +177 -18
  333. package/src/charts/line/Data.tsx +6 -4
  334. package/src/charts/line/DatetimeText.tsx +12 -3
  335. package/src/charts/line/Dot.tsx +2 -2
  336. package/src/charts/line/Gradient.tsx +2 -5
  337. package/src/charts/line/Highlight.tsx +8 -4
  338. package/src/charts/line/HorizontalLine.tsx +2 -8
  339. package/src/charts/line/HoverTrap/index.web.tsx +93 -60
  340. package/src/charts/line/Path.tsx +10 -17
  341. package/src/charts/line/PriceText.tsx +74 -4
  342. package/src/charts/line/Tooltip.tsx +129 -63
  343. package/src/charts/line/index.ts +4 -1
  344. package/src/charts/line/types.ts +1 -2
  345. package/src/charts/line/useAnimatedPath.ts +1 -2
  346. package/src/charts/line/useDatetime.ts +13 -10
  347. package/src/charts/line/useLineChart.ts +1 -1
  348. package/src/charts/line/usePrice.ts +6 -4
  349. package/src/charts/line/utils/getArea.ts +12 -10
  350. package/src/charts/line/utils/getPath.ts +13 -10
  351. package/src/charts/line/utils/getXPositionForCurve.ts +1 -1
  352. package/src/charts/line/utils/interpolatePath.ts +2 -2
  353. package/src/components/AnimatedText.tsx +13 -20
  354. package/src/index.ts +1 -0
  355. package/src/types.ts +7 -0
  356. package/src/utils/formatPrice.ts +7 -7
  357. package/src/utils/usePrevious.ts +1 -1
@@ -1,16 +1,40 @@
1
- function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
- import * as React from 'react';
3
- import { StyleSheet, View } from 'react-native';
4
- import { Svg } from 'react-native-svg';
5
- import Animated, { useAnimatedProps, useSharedValue, withTiming } from 'react-native-reanimated';
1
+ function _extends() {
2
+ return (
3
+ (_extends = Object.assign
4
+ ? Object.assign.bind()
5
+ : function (n) {
6
+ for (var e = 1; e < arguments.length; e++) {
7
+ var t = arguments[e];
8
+ for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);
9
+ }
10
+ return n;
11
+ }),
12
+ _extends.apply(null, arguments)
13
+ );
14
+ }
15
+ import React from 'react';
16
+ import { StyleSheet, View, Platform } from 'react-native';
17
+ import { Svg, Defs, ClipPath, Rect, G } from 'react-native-svg';
18
+ import Animated, {
19
+ useAnimatedProps,
20
+ useSharedValue,
21
+ withTiming,
22
+ } from 'react-native-reanimated';
6
23
  import flattenChildren from 'react-keyed-flatten-children';
7
24
  import { LineChartDimensionsContext } from './Chart';
8
25
  import { LineChartPathContext } from './LineChartPathContext';
9
26
  import { LineChartPath } from './Path';
10
27
  import { useLineChart } from './useLineChart';
11
- const BACKGROUND_COMPONENTS = ['LineChartHighlight', 'LineChartHorizontalLine', 'LineChartGradient', 'LineChartDot', 'LineChartTooltip'];
28
+ const BACKGROUND_COMPONENTS = [
29
+ 'LineChartHighlight',
30
+ 'LineChartHorizontalLine',
31
+ 'LineChartGradient',
32
+ 'LineChartDot',
33
+ 'LineChartTooltip',
34
+ ];
12
35
  const FOREGROUND_COMPONENTS = ['LineChartHighlight', 'LineChartDot'];
13
36
  const AnimatedSVG = Animated.createAnimatedComponent(Svg);
37
+ const AnimatedRect = Animated.createAnimatedComponent(Rect);
14
38
  LineChartPathWrapper.displayName = 'LineChartPathWrapper';
15
39
  export function LineChartPathWrapper({
16
40
  animationDuration = 300,
@@ -24,49 +48,80 @@ export function LineChartPathWrapper({
24
48
  showInactivePath = true,
25
49
  animateOnMount,
26
50
  mountAnimationDuration = animationDuration,
27
- mountAnimationProps = animationProps
51
+ mountAnimationProps = animationProps,
28
52
  }) {
29
- const {
30
- height,
31
- pathWidth,
32
- width
33
- } = React.useContext(LineChartDimensionsContext);
34
- const {
35
- currentX,
36
- isActive
37
- } = useLineChart();
53
+ const { height, pathWidth, width } = React.useContext(
54
+ LineChartDimensionsContext
55
+ );
56
+ const { currentX, isActive } = useLineChart();
38
57
  const isMounted = useSharedValue(false);
39
58
  const hasMountedAnimation = useSharedValue(false);
40
59
  React.useEffect(() => {
41
60
  isMounted.value = true;
42
- // eslint-disable-next-line react-hooks/exhaustive-deps
61
+ return () => {
62
+ isMounted.value = false;
63
+ };
43
64
  }, []);
44
65
 
45
66
  ////////////////////////////////////////////////
46
67
 
47
- const svgProps = useAnimatedProps(() => {
68
+ const clipId = React.useMemo(
69
+ () => `clip-foreground-${Math.random().toString(36).substring(2, 11)}`,
70
+ []
71
+ );
72
+ const clipProps = useAnimatedProps(() => {
48
73
  const shouldAnimateOnMount = animateOnMount === 'foreground';
49
- const inactiveWidth = !isMounted.value && shouldAnimateOnMount ? 0 : pathWidth;
50
- let duration = shouldAnimateOnMount && !hasMountedAnimation.value ? mountAnimationDuration : animationDuration;
51
- const props = shouldAnimateOnMount && !hasMountedAnimation.value ? mountAnimationProps : animationProps;
74
+ const inactiveWidth =
75
+ !isMounted.value && shouldAnimateOnMount ? 0 : pathWidth;
76
+ let duration =
77
+ shouldAnimateOnMount && !hasMountedAnimation.value
78
+ ? mountAnimationDuration
79
+ : animationDuration;
80
+ const props =
81
+ shouldAnimateOnMount && !hasMountedAnimation.value
82
+ ? mountAnimationProps
83
+ : animationProps;
52
84
  if (isActive.value) {
53
85
  duration = 0;
54
86
  }
55
87
  return {
56
- width: withTiming(isActive.value ?
57
- // on Web, <svg /> elements don't support negative widths
58
- // https://github.com/coinjar/react-native-wagmi-charts/issues/24#issuecomment-955789904
59
- Math.max(currentX.value, 0) : inactiveWidth + widthOffset, Object.assign({
60
- duration
61
- }, props), () => {
62
- hasMountedAnimation.value = true;
63
- })
88
+ width: withTiming(
89
+ isActive.value
90
+ ? // on Web, <svg /> elements don't support negative widths
91
+ // https://github.com/coinjar/react-native-wagmi-charts/issues/24#issuecomment-955789904
92
+ Math.max(currentX.value, 0)
93
+ : inactiveWidth + widthOffset,
94
+ Object.assign(
95
+ {
96
+ duration,
97
+ },
98
+ props
99
+ ),
100
+ () => {
101
+ hasMountedAnimation.value = true;
102
+ }
103
+ ),
64
104
  };
65
- }, [animateOnMount, animationDuration, animationProps, currentX, hasMountedAnimation, isActive, isMounted, mountAnimationDuration, mountAnimationProps, pathWidth, widthOffset]);
66
- const viewSize = React.useMemo(() => ({
67
- width,
68
- height
69
- }), [width, height]);
105
+ }, [
106
+ animateOnMount,
107
+ animationDuration,
108
+ animationProps,
109
+ currentX,
110
+ hasMountedAnimation,
111
+ isActive,
112
+ isMounted,
113
+ mountAnimationDuration,
114
+ mountAnimationProps,
115
+ pathWidth,
116
+ widthOffset,
117
+ ]);
118
+ const viewSize = React.useMemo(
119
+ () => ({
120
+ width,
121
+ height,
122
+ }),
123
+ [width, height]
124
+ );
70
125
 
71
126
  ////////////////////////////////////////////////
72
127
 
@@ -74,51 +129,165 @@ export function LineChartPathWrapper({
74
129
  let foregroundChildren;
75
130
  if (children) {
76
131
  const iterableChildren = flattenChildren(children);
77
- backgroundChildren = iterableChildren.filter(child =>
78
- // @ts-ignore
79
- BACKGROUND_COMPONENTS.includes(child?.type?.displayName));
80
- foregroundChildren = iterableChildren.filter(child =>
81
- // @ts-ignore
82
- FOREGROUND_COMPONENTS.includes(child?.type?.displayName));
132
+ backgroundChildren = iterableChildren.filter((child) =>
133
+ BACKGROUND_COMPONENTS.includes(child?.type?.displayName || '')
134
+ );
135
+ foregroundChildren = iterableChildren.filter((child) =>
136
+ FOREGROUND_COMPONENTS.includes(child?.type?.displayName || '')
137
+ );
83
138
  }
84
139
 
85
140
  ////////////////////////////////////////////////
86
141
 
87
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(LineChartPathContext.Provider, {
88
- value: {
89
- color,
90
- isInactive: showInactivePath,
91
- isTransitionEnabled: pathProps.isTransitionEnabled ?? true
92
- }
93
- }, /*#__PURE__*/React.createElement(View, {
94
- style: viewSize
95
- }, /*#__PURE__*/React.createElement(Svg, {
96
- width: width,
97
- height: height
98
- }, /*#__PURE__*/React.createElement(LineChartPath, _extends({
99
- color: color,
100
- inactiveColor: inactiveColor,
101
- width: strokeWidth
102
- }, pathProps))), /*#__PURE__*/React.createElement(Svg, {
103
- style: StyleSheet.absoluteFill
104
- }, backgroundChildren))), /*#__PURE__*/React.createElement(LineChartPathContext.Provider, {
105
- value: {
106
- color,
107
- isInactive: false,
108
- isTransitionEnabled: pathProps.isTransitionEnabled ?? true
109
- }
110
- }, /*#__PURE__*/React.createElement(View, {
111
- style: StyleSheet.absoluteFill
112
- }, /*#__PURE__*/React.createElement(AnimatedSVG, {
113
- animatedProps: svgProps,
114
- height: height
115
- }, /*#__PURE__*/React.createElement(LineChartPath, _extends({
116
- color: color,
117
- width: strokeWidth
118
- }, pathProps))), /*#__PURE__*/React.createElement(AnimatedSVG, {
119
- animatedProps: svgProps,
120
- height: height,
121
- style: StyleSheet.absoluteFill
122
- }, foregroundChildren))));
142
+ return /*#__PURE__*/ React.createElement(
143
+ React.Fragment,
144
+ null,
145
+ /*#__PURE__*/ React.createElement(
146
+ LineChartPathContext.Provider,
147
+ {
148
+ value: {
149
+ color,
150
+ isInactive: showInactivePath,
151
+ isTransitionEnabled: pathProps.isTransitionEnabled ?? true,
152
+ },
153
+ },
154
+ /*#__PURE__*/ React.createElement(
155
+ View,
156
+ {
157
+ style: viewSize,
158
+ },
159
+ /*#__PURE__*/ React.createElement(
160
+ Svg,
161
+ {
162
+ width: width,
163
+ height: height,
164
+ },
165
+ /*#__PURE__*/ React.createElement(
166
+ LineChartPath,
167
+ _extends(
168
+ {
169
+ color: color,
170
+ inactiveColor: inactiveColor,
171
+ width: strokeWidth,
172
+ },
173
+ pathProps
174
+ )
175
+ )
176
+ ),
177
+ /*#__PURE__*/ React.createElement(
178
+ Svg,
179
+ {
180
+ style: StyleSheet.absoluteFill,
181
+ },
182
+ backgroundChildren
183
+ )
184
+ )
185
+ ),
186
+ /*#__PURE__*/ React.createElement(
187
+ LineChartPathContext.Provider,
188
+ {
189
+ value: {
190
+ color,
191
+ isInactive: false,
192
+ isTransitionEnabled: pathProps.isTransitionEnabled ?? true,
193
+ },
194
+ },
195
+ /*#__PURE__*/ React.createElement(
196
+ View,
197
+ {
198
+ style: StyleSheet.absoluteFill,
199
+ },
200
+ Platform.OS === 'web'
201
+ ? /*#__PURE__*/ React.createElement(
202
+ React.Fragment,
203
+ null,
204
+ /*#__PURE__*/ React.createElement(
205
+ Svg,
206
+ {
207
+ width: width,
208
+ height: height,
209
+ },
210
+ /*#__PURE__*/ React.createElement(
211
+ Defs,
212
+ null,
213
+ /*#__PURE__*/ React.createElement(
214
+ ClipPath,
215
+ {
216
+ id: clipId,
217
+ },
218
+ /*#__PURE__*/ React.createElement(AnimatedRect, {
219
+ x: 0,
220
+ y: 0,
221
+ animatedProps: clipProps,
222
+ height: height,
223
+ })
224
+ )
225
+ ),
226
+ /*#__PURE__*/ React.createElement(
227
+ G,
228
+ {
229
+ clipPath: `url(#${clipId})`,
230
+ },
231
+ /*#__PURE__*/ React.createElement(
232
+ LineChartPath,
233
+ _extends(
234
+ {
235
+ color: color,
236
+ width: strokeWidth,
237
+ },
238
+ pathProps
239
+ )
240
+ )
241
+ )
242
+ ),
243
+ /*#__PURE__*/ React.createElement(
244
+ Svg,
245
+ {
246
+ width: width,
247
+ height: height,
248
+ style: StyleSheet.absoluteFill,
249
+ },
250
+ /*#__PURE__*/ React.createElement(
251
+ G,
252
+ {
253
+ clipPath: `url(#${clipId})`,
254
+ },
255
+ foregroundChildren
256
+ )
257
+ )
258
+ )
259
+ : /*#__PURE__*/ React.createElement(
260
+ React.Fragment,
261
+ null,
262
+ /*#__PURE__*/ React.createElement(
263
+ AnimatedSVG,
264
+ {
265
+ animatedProps: clipProps,
266
+ height: height,
267
+ },
268
+ /*#__PURE__*/ React.createElement(
269
+ LineChartPath,
270
+ _extends(
271
+ {
272
+ color: color,
273
+ width: strokeWidth,
274
+ },
275
+ pathProps
276
+ )
277
+ )
278
+ ),
279
+ /*#__PURE__*/ React.createElement(
280
+ AnimatedSVG,
281
+ {
282
+ animatedProps: clipProps,
283
+ height: height,
284
+ style: StyleSheet.absoluteFill,
285
+ },
286
+ foregroundChildren
287
+ )
288
+ )
289
+ )
290
+ )
291
+ );
123
292
  }
124
- //# sourceMappingURL=ChartPath.js.map
293
+ //# sourceMappingURL=ChartPath.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","StyleSheet","View","Svg","Animated","useAnimatedProps","useSharedValue","withTiming","flattenChildren","LineChartDimensionsContext","LineChartPathContext","LineChartPath","useLineChart","BACKGROUND_COMPONENTS","FOREGROUND_COMPONENTS","AnimatedSVG","createAnimatedComponent","LineChartPathWrapper","displayName","animationDuration","animationProps","children","color","inactiveColor","width","strokeWidth","widthOffset","pathProps","showInactivePath","animateOnMount","mountAnimationDuration","mountAnimationProps","height","pathWidth","useContext","currentX","isActive","isMounted","hasMountedAnimation","useEffect","value","svgProps","shouldAnimateOnMount","inactiveWidth","duration","props","Math","max","Object","assign","viewSize","useMemo","backgroundChildren","foregroundChildren","iterableChildren","filter","child","includes","type","createElement","Fragment","Provider","isInactive","isTransitionEnabled","style","_extends","absoluteFill","animatedProps"],"sourceRoot":"../../../../src","sources":["charts/line/ChartPath.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","StyleSheet","View","Platform","Svg","Defs","ClipPath","Rect","G","Animated","useAnimatedProps","useSharedValue","withTiming","flattenChildren","LineChartDimensionsContext","LineChartPathContext","LineChartPath","useLineChart","BACKGROUND_COMPONENTS","FOREGROUND_COMPONENTS","AnimatedSVG","createAnimatedComponent","AnimatedRect","LineChartPathWrapper","displayName","animationDuration","animationProps","children","color","inactiveColor","width","strokeWidth","widthOffset","pathProps","showInactivePath","animateOnMount","mountAnimationDuration","mountAnimationProps","height","pathWidth","useContext","currentX","isActive","isMounted","hasMountedAnimation","useEffect","value","clipId","useMemo","Math","random","toString","substring","clipProps","shouldAnimateOnMount","inactiveWidth","duration","props","max","Object","assign","viewSize","backgroundChildren","foregroundChildren","iterableChildren","filter","child","includes","type","createElement","Fragment","Provider","isInactive","isTransitionEnabled","style","_extends","absoluteFill","OS","id","x","y","animatedProps","clipPath"],"sourceRoot":"../../../../src","sources":["charts/line/ChartPath.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,65 +1,98 @@
1
- import * as React from 'react';
2
- import { runOnJS, useAnimatedReaction, useSharedValue } from 'react-native-reanimated';
1
+ import React, { createContext, useMemo } from 'react';
2
+ import {
3
+ runOnJS,
4
+ useAnimatedReaction,
5
+ useSharedValue,
6
+ } from 'react-native-reanimated';
3
7
  import { LineChartDataProvider } from './Data';
4
8
  import { getDomain, lineChartDataPropToArray } from './utils';
5
- export const LineChartContext = /*#__PURE__*/React.createContext({
9
+ export const LineChartContext = /*#__PURE__*/ createContext({
6
10
  currentX: {
7
- value: -1
11
+ value: -1,
8
12
  },
9
13
  currentIndex: {
10
- value: -1
14
+ value: -1,
11
15
  },
12
16
  domain: [0, 0],
13
17
  isActive: {
14
- value: false
18
+ value: false,
15
19
  },
16
20
  yDomain: {
17
21
  min: 0,
18
- max: 0
22
+ max: 0,
19
23
  },
20
24
  xDomain: undefined,
21
- xLength: 0
25
+ xLength: 0,
22
26
  });
23
- LineChartProvider.displayName = 'LineChartProvider';
24
27
  export function LineChartProvider({
25
28
  children,
26
29
  data = [],
27
30
  yRange,
28
31
  onCurrentIndexChange,
29
32
  xLength,
30
- xDomain
33
+ xDomain,
31
34
  }) {
32
35
  const currentX = useSharedValue(-1);
33
36
  const currentIndex = useSharedValue(-1);
34
37
  const isActive = useSharedValue(false);
35
- const domain = React.useMemo(() => getDomain(Array.isArray(data) ? data : Object.values(data)[0]), [data]);
36
- const contextValue = React.useMemo(() => {
37
- const values = lineChartDataPropToArray(data).map(({
38
- value
39
- }) => value);
38
+ const domain = useMemo(
39
+ () => getDomain(Array.isArray(data) ? data : Object.values(data)[0]),
40
+ [data]
41
+ );
42
+ const values = useMemo(
43
+ () => lineChartDataPropToArray(data).map(({ value }) => value),
44
+ [data]
45
+ );
46
+ const yDomainValues = useMemo(
47
+ () => ({
48
+ min: yRange?.min ?? Math.min(...values),
49
+ max: yRange?.max ?? Math.max(...values),
50
+ }),
51
+ [values, yRange?.min, yRange?.max]
52
+ );
53
+ const contextValue = useMemo(() => {
40
54
  const domainRows = Array.isArray(data) ? data : Object.values(data)[0];
41
55
  return {
42
56
  currentX,
43
57
  currentIndex,
44
58
  isActive,
45
59
  domain,
46
- yDomain: {
47
- min: yRange?.min ?? Math.min(...values),
48
- max: yRange?.max ?? Math.max(...values)
49
- },
60
+ yDomain: yDomainValues,
50
61
  xDomain,
51
- xLength: xLength ?? domainRows.length
62
+ xLength: xLength ?? domainRows.length,
52
63
  };
53
- }, [currentIndex, currentX, data, domain, isActive, yRange?.max, yRange?.min, xLength, xDomain]);
54
- useAnimatedReaction(() => currentIndex.value, (x, prevX) => {
55
- if (x !== prevX && onCurrentIndexChange) {
56
- runOnJS(onCurrentIndexChange)(x);
57
- }
58
- }, [currentIndex]);
59
- return /*#__PURE__*/React.createElement(LineChartDataProvider, {
60
- data: data
61
- }, /*#__PURE__*/React.createElement(LineChartContext.Provider, {
62
- value: contextValue
63
- }, children));
64
+ }, [
65
+ currentIndex,
66
+ currentX,
67
+ data,
68
+ domain,
69
+ isActive,
70
+ yDomainValues,
71
+ xLength,
72
+ xDomain,
73
+ ]);
74
+ useAnimatedReaction(
75
+ () => currentIndex.value,
76
+ (x, prevX) => {
77
+ if (x !== prevX && onCurrentIndexChange) {
78
+ runOnJS(onCurrentIndexChange)(x);
79
+ }
80
+ },
81
+ [currentIndex]
82
+ );
83
+ return /*#__PURE__*/ React.createElement(
84
+ LineChartDataProvider,
85
+ {
86
+ data: data,
87
+ },
88
+ /*#__PURE__*/ React.createElement(
89
+ LineChartContext.Provider,
90
+ {
91
+ value: contextValue,
92
+ },
93
+ children
94
+ )
95
+ );
64
96
  }
65
- //# sourceMappingURL=Context.js.map
97
+ LineChartProvider.displayName = 'LineChartProvider';
98
+ //# sourceMappingURL=Context.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","runOnJS","useAnimatedReaction","useSharedValue","LineChartDataProvider","getDomain","lineChartDataPropToArray","LineChartContext","createContext","currentX","value","currentIndex","domain","isActive","yDomain","min","max","xDomain","undefined","xLength","LineChartProvider","displayName","children","data","yRange","onCurrentIndexChange","useMemo","Array","isArray","Object","values","contextValue","map","domainRows","Math","length","x","prevX","createElement","Provider"],"sourceRoot":"../../../../src","sources":["charts/line/Context.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","createContext","useMemo","runOnJS","useAnimatedReaction","useSharedValue","LineChartDataProvider","getDomain","lineChartDataPropToArray","LineChartContext","currentX","value","currentIndex","domain","isActive","yDomain","min","max","xDomain","undefined","xLength","LineChartProvider","children","data","yRange","onCurrentIndexChange","Array","isArray","Object","values","map","yDomainValues","Math","contextValue","domainRows","length","x","prevX","createElement","Provider","displayName"],"sourceRoot":"../../../../src","sources":["charts/line/Context.tsx"],"mappings":"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","ignoreList":[]}