@octanejs/recharts 0.1.41 → 0.1.42

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 (375) hide show
  1. package/{LICENSE → LICENSE.recharts} +3 -2
  2. package/README.md +12 -0
  3. package/package.json +10 -9
  4. package/src/animation/AnimatedItems.tsrx +36 -3
  5. package/src/animation/AnimationController.ts +17 -65
  6. package/src/animation/{AnimationControllerImpl.js → AnimationControllerImpl.ts} +19 -12
  7. package/src/animation/{AnimationHandle.js → AnimationHandle.ts} +82 -65
  8. package/src/animation/CSSTransitionAnimate.tsrx +3 -2
  9. package/src/animation/JavascriptAnimate.tsrx +18 -2
  10. package/src/animation/easing.ts +235 -0
  11. package/src/animation/{matchBy.js → matchBy.ts} +76 -120
  12. package/src/animation/timeoutController.ts +71 -0
  13. package/src/animation/useAnimationController.ts +4 -1
  14. package/src/animation/useAnimationStartSnapshot.ts +3 -3
  15. package/src/animation/util.ts +12 -0
  16. package/src/cartesian/Area.tsrx +33 -31
  17. package/src/cartesian/AreaRevealShape.tsrx +4 -3
  18. package/src/cartesian/Bar.ts +1 -0
  19. package/src/cartesian/Bar.tsrx +293 -39
  20. package/src/cartesian/BarStack.tsrx +31 -9
  21. package/src/cartesian/CartesianAxis.tsrx +154 -22
  22. package/src/cartesian/CartesianGrid.tsrx +5 -6
  23. package/src/cartesian/ErrorBar.tsrx +9 -8
  24. package/src/cartesian/Funnel.tsrx +40 -37
  25. package/src/cartesian/GraphicalItemClipPath.tsrx +11 -4
  26. package/src/cartesian/Line.ts +1 -0
  27. package/src/cartesian/Line.tsrx +206 -28
  28. package/src/cartesian/LineDrawShape.tsrx +23 -10
  29. package/src/cartesian/ReferenceLine.tsrx +8 -8
  30. package/src/cartesian/Scatter.tsrx +61 -66
  31. package/src/cartesian/XAxis.tsrx +78 -9
  32. package/src/cartesian/YAxis.tsrx +85 -12
  33. package/src/cartesian/getCartesianPosition.ts +265 -0
  34. package/src/cartesian/getEquidistantTicks.ts +144 -0
  35. package/src/cartesian/getTicks.ts +221 -0
  36. package/src/chart/AreaChart.tsrx +5 -1
  37. package/src/chart/BarChart.tsrx +8 -2
  38. package/src/chart/CartesianChart.tsrx +17 -4
  39. package/src/chart/CategoricalChart.tsrx +4 -1
  40. package/src/chart/ComposedChart.tsrx +5 -1
  41. package/src/chart/FunnelChart.tsrx +5 -1
  42. package/src/chart/LineChart.tsrx +8 -2
  43. package/src/chart/PieChart.tsrx +6 -2
  44. package/src/chart/PolarChart.tsrx +5 -4
  45. package/src/chart/RadarChart.tsrx +6 -2
  46. package/src/chart/RadialBarChart.tsrx +6 -2
  47. package/src/chart/RechartsWrapper.tsrx +57 -21
  48. package/src/chart/Sankey.tsrx +89 -91
  49. package/src/chart/ScatterChart.tsrx +5 -1
  50. package/src/chart/SunburstChart.tsrx +21 -14
  51. package/src/chart/types.ts +0 -1
  52. package/src/component/ActivePoints.tsrx +30 -5
  53. package/src/component/Cell.ts +19 -1
  54. package/src/component/Cursor.tsrx +11 -10
  55. package/src/component/DefaultLegendContent.tsrx +15 -10
  56. package/src/component/DefaultTooltipContent.tsrx +11 -9
  57. package/src/component/Dots.tsrx +37 -6
  58. package/src/component/Label.tsrx +99 -19
  59. package/src/component/LabelList.tsrx +54 -5
  60. package/src/component/Legend.tsrx +9 -5
  61. package/src/component/ResponsiveContainer.tsrx +13 -10
  62. package/src/component/Text.tsrx +95 -32
  63. package/src/component/Tooltip.tsrx +11 -10
  64. package/src/component/TooltipBoundingBox.tsrx +4 -5
  65. package/src/component/{responsiveContainerUtils.js → responsiveContainerUtils.ts} +59 -36
  66. package/src/container/ClipPathProvider.tsrx +6 -2
  67. package/src/container/Layer.tsrx +8 -1
  68. package/src/container/RootSurface.tsrx +15 -4
  69. package/src/container/Surface.tsrx +15 -1
  70. package/src/context/CellsContext.ts +6 -5
  71. package/src/context/ErrorBarContext.tsrx +23 -4
  72. package/src/context/RegisterGraphicalItemId.tsrx +10 -2
  73. package/src/context/accessibilityContext.ts +5 -0
  74. package/src/context/brushUpdateContext.ts +11 -0
  75. package/src/context/chartDataContext.ts +5 -4
  76. package/src/context/chartLayoutContext.ts +22 -8
  77. package/src/context/legendPayloadContext.tsrx +1 -1
  78. package/src/context/tooltipContext.ts +83 -0
  79. package/src/{hooks.js → hooks.ts} +88 -66
  80. package/src/index.ts +37 -37
  81. package/src/legacy-props.ts +129 -0
  82. package/src/polar/Pie.tsrx +91 -69
  83. package/src/polar/PolarAngleAxis.tsrx +47 -47
  84. package/src/polar/PolarGrid.tsrx +7 -6
  85. package/src/polar/PolarRadiusAxis.tsrx +29 -21
  86. package/src/polar/Radar.tsrx +26 -19
  87. package/src/polar/RadialBar.tsrx +59 -42
  88. package/src/polar/{defaultPolarAngleAxisProps.js → defaultPolarAngleAxisProps.ts} +6 -6
  89. package/src/polar/{defaultPolarRadiusAxisProps.js → defaultPolarRadiusAxisProps.ts} +5 -4
  90. package/src/shape/Cross.tsrx +14 -2
  91. package/src/shape/Curve.tsrx +111 -23
  92. package/src/shape/Dot.tsrx +12 -1
  93. package/src/shape/Polygon.tsrx +28 -6
  94. package/src/shape/Rectangle.tsrx +30 -3
  95. package/src/shape/Sector.tsrx +48 -6
  96. package/src/shape/Symbols.tsrx +24 -6
  97. package/src/shape/Trapezoid.tsrx +33 -3
  98. package/src/state/RechartsStoreProvider.tsrx +11 -2
  99. package/src/state/ReportChartProps.ts +2 -2
  100. package/src/state/ReportMainChartProps.ts +2 -1
  101. package/src/state/SetGraphicalItem.ts +6 -4
  102. package/src/state/SetLegendPayload.ts +7 -4
  103. package/src/state/SetTooltipEntrySettings.ts +5 -2
  104. package/src/state/brushSlice.ts +40 -0
  105. package/src/state/cartesianAxisSlice.ts +291 -0
  106. package/src/state/chartDataSlice.ts +87 -0
  107. package/src/state/errorBarSlice.ts +78 -0
  108. package/src/state/eventSettingsSlice.ts +30 -0
  109. package/src/state/{externalEventsMiddleware.js → externalEventsMiddleware.ts} +55 -34
  110. package/src/state/graphicalItemsSlice.ts +180 -0
  111. package/src/state/{keyboardEventsMiddleware.js → keyboardEventsMiddleware.ts} +72 -57
  112. package/src/state/layoutSlice.ts +50 -0
  113. package/src/state/legendSlice.ts +109 -0
  114. package/src/state/{mouseEventsMiddleware.js → mouseEventsMiddleware.ts} +45 -35
  115. package/src/state/optionsSlice.ts +65 -0
  116. package/src/state/polarAxisSlice.ts +42 -0
  117. package/src/state/polarOptionsSlice.ts +43 -0
  118. package/src/state/reduxDevtoolsJsonStringifyReplacer.ts +13 -0
  119. package/src/state/referenceElementsSlice.ts +100 -0
  120. package/src/state/renderedTicksSlice.ts +60 -0
  121. package/src/state/rootPropsSlice.ts +72 -0
  122. package/src/state/selectors/areaSelectors.ts +1 -2
  123. package/src/state/selectors/{arrayEqualityCheck.js → arrayEqualityCheck.ts} +4 -5
  124. package/src/state/selectors/axisSelectors.ts +2502 -0
  125. package/src/state/selectors/barSelectors.ts +373 -0
  126. package/src/state/selectors/barStackSelectors.ts +99 -0
  127. package/src/state/selectors/brushSelectors.ts +28 -0
  128. package/src/state/selectors/combiners/combineActiveLabel.ts +16 -0
  129. package/src/state/selectors/combiners/{combineActiveTooltipIndex.js → combineActiveTooltipIndex.ts} +45 -23
  130. package/src/state/selectors/combiners/combineAllBarPositions.ts +130 -0
  131. package/src/state/selectors/combiners/combineAxisRangeWithReverse.ts +16 -0
  132. package/src/state/selectors/combiners/combineBarPosition.ts +23 -0
  133. package/src/state/selectors/combiners/combineBarSizeList.ts +79 -0
  134. package/src/state/selectors/combiners/{combineCheckedDomain.js → combineCheckedDomain.ts} +9 -6
  135. package/src/state/selectors/combiners/combineConfiguredScale.ts +100 -0
  136. package/src/state/selectors/combiners/combineCoordinateForDefaultIndex.ts +46 -0
  137. package/src/state/selectors/combiners/{combineDisplayedStackedData.js → combineDisplayedStackedData.ts} +23 -19
  138. package/src/state/selectors/combiners/combineInverseScaleFunction.ts +16 -0
  139. package/src/state/selectors/combiners/{combineRealScaleType.js → combineRealScaleType.ts} +16 -8
  140. package/src/state/selectors/combiners/combineStackedData.ts +27 -0
  141. package/src/state/selectors/combiners/combineTooltipInteractionState.ts +86 -0
  142. package/src/state/selectors/combiners/combineTooltipPayload.ts +201 -0
  143. package/src/state/selectors/combiners/{combineTooltipPayloadConfigurations.js → combineTooltipPayloadConfigurations.ts} +17 -18
  144. package/src/state/selectors/containerSelectors.ts +12 -0
  145. package/src/state/selectors/{dataSelectors.js → dataSelectors.ts} +43 -41
  146. package/src/state/selectors/funnelSelectors.ts +5 -5
  147. package/src/state/selectors/graphicalItemSelectors.ts +22 -0
  148. package/src/state/selectors/legendSelectors.ts +25 -0
  149. package/src/state/selectors/lineSelectors.ts +159 -0
  150. package/src/state/selectors/numberDomainEqualityCheck.ts +15 -0
  151. package/src/state/selectors/pickAxisId.ts +6 -0
  152. package/src/state/selectors/pickAxisType.ts +4 -0
  153. package/src/state/selectors/pieSelectors.ts +14 -13
  154. package/src/state/selectors/polarAxisSelectors.ts +223 -0
  155. package/src/state/selectors/polarSelectors.ts +1 -1
  156. package/src/state/selectors/radarSelectors.ts +1 -1
  157. package/src/state/selectors/radialBarSelectors.ts +17 -16
  158. package/src/state/selectors/rootPropsSelectors.ts +26 -0
  159. package/src/state/selectors/scatterSelectors.ts +11 -10
  160. package/src/state/selectors/{selectActivePropsFromChartPointer.js → selectActivePropsFromChartPointer.ts} +11 -4
  161. package/src/state/selectors/selectAllAxes.ts +20 -0
  162. package/src/state/selectors/selectChartOffset.ts +17 -0
  163. package/src/state/selectors/selectChartOffsetInternal.ts +147 -0
  164. package/src/state/selectors/{selectPlotArea.js → selectPlotArea.ts} +4 -3
  165. package/src/state/selectors/selectTooltipAxisId.ts +6 -0
  166. package/src/state/selectors/{selectTooltipAxisType.js → selectTooltipAxisType.ts} +10 -4
  167. package/src/state/selectors/selectTooltipEventType.ts +39 -0
  168. package/src/state/selectors/selectTooltipPayloadSearcher.ts +6 -0
  169. package/src/state/selectors/selectTooltipSettings.ts +6 -0
  170. package/src/state/selectors/selectTooltipState.ts +5 -0
  171. package/src/state/selectors/selectors.ts +315 -0
  172. package/src/state/selectors/tooltipSelectors.ts +611 -0
  173. package/src/state/selectors/touchSelectors.ts +52 -0
  174. package/src/state/{store.js → store.ts} +46 -36
  175. package/src/state/tooltipSlice.ts +507 -0
  176. package/src/state/{touchEventsMiddleware.js → touchEventsMiddleware.ts} +54 -42
  177. package/src/state/types/AreaSettings.ts +15 -0
  178. package/src/state/types/BarSettings.ts +15 -0
  179. package/src/state/types/LineSettings.ts +10 -0
  180. package/src/state/types/PieSettings.ts +32 -0
  181. package/src/state/types/RadarSettings.ts +6 -0
  182. package/src/state/types/RadialBarSettings.ts +10 -0
  183. package/src/state/types/ScatterSettings.ts +13 -0
  184. package/src/state/types/StackedGraphicalItem.ts +34 -0
  185. package/src/state/zIndexSlice.ts +137 -0
  186. package/src/synchronisation/syncSelectors.ts +7 -0
  187. package/src/synchronisation/types.ts +42 -0
  188. package/src/synchronisation/useChartSynchronisation.tsrx +26 -11
  189. package/src/types.ts +55 -0
  190. package/src/util/ActiveShapeUtils.tsrx +34 -10
  191. package/src/util/BarUtils.tsrx +43 -3
  192. package/src/util/{CartesianUtils.js → CartesianUtils.ts} +22 -39
  193. package/src/util/ChartUtils.ts +759 -0
  194. package/src/util/{Constants.js → Constants.ts} +6 -6
  195. package/src/util/DOMUtils.ts +135 -0
  196. package/src/util/{DataUtils.js → DataUtils.ts} +120 -47
  197. package/src/util/Events.ts +22 -0
  198. package/src/util/FunnelUtils.tsrx +3 -3
  199. package/src/util/Global.ts +13 -0
  200. package/src/util/IfOverflow.ts +16 -0
  201. package/src/util/LRUCache.ts +42 -0
  202. package/src/util/{LogUtils.js → LogUtils.ts} +7 -12
  203. package/src/util/OctaneTypes.ts +51 -0
  204. package/src/util/PolarUtils.ts +132 -0
  205. package/src/util/RadialBarUtils.tsrx +3 -3
  206. package/src/util/ReduceCSSCalc.ts +186 -0
  207. package/src/util/ScatterUtils.tsrx +9 -7
  208. package/src/util/{TickUtils.js → TickUtils.ts} +30 -13
  209. package/src/util/{YAxisUtils.js → YAxisUtils.ts} +27 -17
  210. package/src/util/axisPropsAreEqual.ts +49 -0
  211. package/src/util/createEventProxy.ts +20 -0
  212. package/src/util/{excludeEventProps.js → excludeEventProps.ts} +8 -6
  213. package/src/util/getActiveCoordinate.ts +210 -0
  214. package/src/util/{getAxisTypeBasedOnLayout.js → getAxisTypeBasedOnLayout.ts} +7 -3
  215. package/src/util/getClassNameFromUnknown.ts +7 -0
  216. package/src/util/{getEveryNth.js → getEveryNth.ts} +5 -6
  217. package/src/util/getRadiusAndStrokeWidthFromDot.ts +31 -0
  218. package/src/util/{getRelativeCoordinate.js → getRelativeCoordinate.ts} +26 -9
  219. package/src/util/getSliced.ts +14 -0
  220. package/src/util/{isDomainSpecifiedByUser.js → isDomainSpecifiedByUser.ts} +46 -100
  221. package/src/util/isWellBehavedNumber.ts +8 -0
  222. package/src/util/payload/getUniqPayload.ts +1 -1
  223. package/src/util/{propsAreEqual.js → propsAreEqual.ts} +10 -8
  224. package/src/util/{resolveDefaultProps.js → resolveDefaultProps.ts} +35 -57
  225. package/src/util/round.ts +33 -0
  226. package/src/util/scale/CustomScaleDefinition.ts +82 -0
  227. package/src/util/scale/RechartsScale.ts +131 -0
  228. package/src/util/scale/{createCategoricalInverse.js → createCategoricalInverse.ts} +24 -29
  229. package/src/util/scale/{getNiceTickValues.js → getNiceTickValues.ts} +125 -146
  230. package/src/util/scale/index.ts +2 -0
  231. package/src/util/scale/util/{arithmetic.js → arithmetic.ts} +12 -8
  232. package/src/util/stacks/getStackSeriesIdentifier.ts +21 -0
  233. package/src/util/stacks/stackTypes.ts +58 -0
  234. package/src/util/{svgPropertiesNoEvents.js → svgPropertiesNoEvents.ts} +52 -27
  235. package/src/util/tooltip/translate.ts +2 -1
  236. package/src/util/typedDataKey.ts +49 -0
  237. package/src/util/types.ts +1265 -7
  238. package/src/util/{useUniqueId.js → useUniqueId.ts} +9 -5
  239. package/src/zIndex/{DefaultZIndexes.js → DefaultZIndexes.ts} +13 -4
  240. package/src/zIndex/ZIndexLayer.tsrx +13 -4
  241. package/src/zIndex/ZIndexPortal.tsrx +14 -4
  242. package/src/zIndex/{getZIndexFromUnknown.js → getZIndexFromUnknown.ts} +3 -3
  243. package/src/zIndex/{zIndexSelectors.js → zIndexSelectors.ts} +17 -11
  244. package/src/animation/easing.js +0 -193
  245. package/src/animation/timeoutController.js +0 -49
  246. package/src/animation/util.js +0 -11
  247. package/src/cartesian/Area.tsrx.d.ts +0 -340
  248. package/src/cartesian/Bar.tsrx.d.ts +0 -4
  249. package/src/cartesian/BarStack.tsrx.d.ts +0 -6
  250. package/src/cartesian/CartesianAxis.tsrx.d.ts +0 -3
  251. package/src/cartesian/CartesianGrid.tsrx.d.ts +0 -219
  252. package/src/cartesian/ErrorBar.tsrx.d.ts +0 -131
  253. package/src/cartesian/Funnel.tsrx.d.ts +0 -274
  254. package/src/cartesian/Line.tsrx.d.ts +0 -4
  255. package/src/cartesian/LineDrawShape.tsrx.d.ts +0 -2
  256. package/src/cartesian/ReferenceLine.tsrx.d.ts +0 -178
  257. package/src/cartesian/Scatter.tsrx.d.ts +0 -351
  258. package/src/cartesian/XAxis.tsrx.d.ts +0 -3
  259. package/src/cartesian/YAxis.tsrx.d.ts +0 -3
  260. package/src/cartesian/ZAxis.tsrx.d.ts +0 -102
  261. package/src/cartesian/getCartesianPosition.js +0 -277
  262. package/src/cartesian/getEquidistantTicks.js +0 -133
  263. package/src/cartesian/getTicks.js +0 -280
  264. package/src/chart/AreaChart.tsrx.d.ts +0 -12
  265. package/src/chart/BarChart.tsrx.d.ts +0 -2
  266. package/src/chart/CartesianChart.tsrx.d.ts +0 -10
  267. package/src/chart/ComposedChart.tsrx.d.ts +0 -12
  268. package/src/chart/FunnelChart.tsrx.d.ts +0 -12
  269. package/src/chart/LineChart.tsrx.d.ts +0 -2
  270. package/src/chart/PieChart.tsrx.d.ts +0 -31
  271. package/src/chart/RadarChart.tsrx.d.ts +0 -31
  272. package/src/chart/RadialBarChart.tsrx.d.ts +0 -31
  273. package/src/chart/Sankey.tsrx.d.ts +0 -253
  274. package/src/chart/ScatterChart.tsrx.d.ts +0 -12
  275. package/src/chart/SunburstChart.tsrx.d.ts +0 -146
  276. package/src/component/DefaultLegendContent.tsrx.d.ts +0 -125
  277. package/src/component/DefaultTooltipContent.tsrx.d.ts +0 -87
  278. package/src/component/Label.tsrx.d.ts +0 -12
  279. package/src/component/LabelList.tsrx.d.ts +0 -8
  280. package/src/component/Legend.tsrx.d.ts +0 -88
  281. package/src/component/ResponsiveContainer.tsrx.d.ts +0 -81
  282. package/src/component/Text.tsrx.d.ts +0 -9
  283. package/src/component/Tooltip.tsrx.d.ts +0 -246
  284. package/src/container/Layer.tsrx.d.ts +0 -6
  285. package/src/container/Surface.tsrx.d.ts +0 -12
  286. package/src/context/accessibilityContext.js +0 -10
  287. package/src/context/tooltipContext.js +0 -55
  288. package/src/index.d.ts +0 -281
  289. package/src/polar/Pie.tsrx.d.ts +0 -436
  290. package/src/polar/PolarAngleAxis.tsrx.d.ts +0 -215
  291. package/src/polar/PolarGrid.tsrx.d.ts +0 -117
  292. package/src/polar/PolarRadiusAxis.tsrx.d.ts +0 -209
  293. package/src/polar/Radar.tsrx.d.ts +0 -215
  294. package/src/polar/RadialBar.tsrx.d.ts +0 -340
  295. package/src/shape/Cross.tsrx.d.ts +0 -12
  296. package/src/shape/Curve.tsrx.d.ts +0 -42
  297. package/src/shape/Dot.tsrx.d.ts +0 -9
  298. package/src/shape/Polygon.tsrx.d.ts +0 -13
  299. package/src/shape/Rectangle.tsrx.d.ts +0 -31
  300. package/src/shape/Sector.tsrx.d.ts +0 -29
  301. package/src/shape/Symbols.tsrx.d.ts +0 -15
  302. package/src/shape/Trapezoid.tsrx.d.ts +0 -29
  303. package/src/state/brushSlice.js +0 -36
  304. package/src/state/cartesianAxisSlice.js +0 -256
  305. package/src/state/chartDataSlice.js +0 -67
  306. package/src/state/errorBarSlice.js +0 -53
  307. package/src/state/eventSettingsSlice.js +0 -25
  308. package/src/state/graphicalItemsSlice.js +0 -91
  309. package/src/state/layoutSlice.js +0 -57
  310. package/src/state/legendSlice.js +0 -83
  311. package/src/state/optionsSlice.js +0 -45
  312. package/src/state/polarAxisSlice.js +0 -33
  313. package/src/state/polarOptionsSlice.js +0 -26
  314. package/src/state/reduxDevtoolsJsonStringifyReplacer.js +0 -14
  315. package/src/state/referenceElementsSlice.js +0 -51
  316. package/src/state/renderedTicksSlice.js +0 -41
  317. package/src/state/rootPropsSlice.js +0 -48
  318. package/src/state/selectors/axisSelectors.js +0 -2113
  319. package/src/state/selectors/barSelectors.js +0 -263
  320. package/src/state/selectors/barStackSelectors.js +0 -65
  321. package/src/state/selectors/brushSelectors.js +0 -21
  322. package/src/state/selectors/combiners/combineActiveLabel.js +0 -18
  323. package/src/state/selectors/combiners/combineAllBarPositions.js +0 -169
  324. package/src/state/selectors/combiners/combineAxisRangeWithReverse.js +0 -11
  325. package/src/state/selectors/combiners/combineBarPosition.js +0 -17
  326. package/src/state/selectors/combiners/combineBarSizeList.js +0 -115
  327. package/src/state/selectors/combiners/combineConfiguredScale.js +0 -46
  328. package/src/state/selectors/combiners/combineCoordinateForDefaultIndex.js +0 -48
  329. package/src/state/selectors/combiners/combineInverseScaleFunction.js +0 -12
  330. package/src/state/selectors/combiners/combineStackedData.js +0 -22
  331. package/src/state/selectors/combiners/combineTooltipInteractionState.js +0 -121
  332. package/src/state/selectors/combiners/combineTooltipPayload.js +0 -248
  333. package/src/state/selectors/containerSelectors.js +0 -6
  334. package/src/state/selectors/graphicalItemSelectors.js +0 -25
  335. package/src/state/selectors/legendSelectors.js +0 -18
  336. package/src/state/selectors/lineSelectors.js +0 -106
  337. package/src/state/selectors/numberDomainEqualityCheck.js +0 -11
  338. package/src/state/selectors/pickAxisId.js +0 -3
  339. package/src/state/selectors/pickAxisType.js +0 -3
  340. package/src/state/selectors/polarAxisSelectors.js +0 -237
  341. package/src/state/selectors/rootPropsSelectors.js +0 -13
  342. package/src/state/selectors/selectAllAxes.js +0 -15
  343. package/src/state/selectors/selectChartOffset.js +0 -12
  344. package/src/state/selectors/selectChartOffsetInternal.js +0 -174
  345. package/src/state/selectors/selectTooltipAxisId.js +0 -3
  346. package/src/state/selectors/selectTooltipEventType.js +0 -27
  347. package/src/state/selectors/selectTooltipPayloadSearcher.js +0 -3
  348. package/src/state/selectors/selectTooltipSettings.js +0 -3
  349. package/src/state/selectors/selectTooltipState.js +0 -3
  350. package/src/state/selectors/selectors.js +0 -222
  351. package/src/state/selectors/tooltipSelectors.js +0 -471
  352. package/src/state/selectors/touchSelectors.js +0 -31
  353. package/src/state/tooltipSlice.js +0 -237
  354. package/src/state/types/StackedGraphicalItem.js +0 -18
  355. package/src/state/zIndexSlice.js +0 -167
  356. package/src/synchronisation/syncSelectors.js +0 -5
  357. package/src/util/ChartUtils.js +0 -630
  358. package/src/util/DOMUtils.js +0 -180
  359. package/src/util/Events.js +0 -7
  360. package/src/util/Global.js +0 -13
  361. package/src/util/LRUCache.js +0 -58
  362. package/src/util/PolarUtils.js +0 -190
  363. package/src/util/ReduceCSSCalc.js +0 -260
  364. package/src/util/axisPropsAreEqual.js +0 -63
  365. package/src/util/createEventProxy.js +0 -18
  366. package/src/util/getActiveCoordinate.js +0 -253
  367. package/src/util/getClassNameFromUnknown.js +0 -8
  368. package/src/util/getRadiusAndStrokeWidthFromDot.js +0 -28
  369. package/src/util/getSliced.js +0 -11
  370. package/src/util/isWellBehavedNumber.js +0 -8
  371. package/src/util/round.js +0 -39
  372. package/src/util/scale/RechartsScale.js +0 -68
  373. package/src/util/scale/index.js +0 -3
  374. package/src/util/stacks/getStackSeriesIdentifier.js +0 -10
  375. package/src/zIndex/ZIndexLayer.tsrx.d.ts +0 -2
@@ -1,46 +0,0 @@
1
- // Vendored verbatim from recharts@3.9.2 es6/state/selectors/combiners/combineConfiguredScale.js (framework-agnostic).
2
- // Do not edit — update by re-vendoring when the recharts devDependency moves.
3
- import * as d3Scales from 'victory-vendor/d3-scale';
4
- import { upperFirst } from '../../../util/DataUtils';
5
- function getD3ScaleFromType(realScaleType) {
6
- var scales = d3Scales;
7
- if (realScaleType in scales && typeof scales[realScaleType] === 'function') {
8
- return scales[realScaleType]();
9
- }
10
- var name = 'scale'.concat(upperFirst(realScaleType));
11
- if (name in scales && typeof scales[name] === 'function') {
12
- return scales[name]();
13
- }
14
- return undefined;
15
- }
16
-
17
- /**
18
- * Converts external scale definition into internal RechartsScale definition.
19
- * @param scale custom function scale - if you have the `string` from outside, use `combineRealScaleType` first which will validate it and return RechartsScaleType or undefined
20
- * @param axisDomain
21
- * @param axisRange
22
- */
23
-
24
- export function combineConfiguredScaleInternal(scale, axisDomain, axisRange) {
25
- if (typeof scale === 'function') {
26
- return scale.copy().domain(axisDomain).range(axisRange);
27
- }
28
- if (scale == null) {
29
- return undefined;
30
- }
31
- var d3ScaleFunction = getD3ScaleFromType(scale);
32
- if (d3ScaleFunction == null) {
33
- return undefined;
34
- }
35
- d3ScaleFunction.domain(axisDomain).range(axisRange);
36
- return d3ScaleFunction;
37
- }
38
- export function combineConfiguredScale(axis, realScaleType, axisDomain, axisRange) {
39
- if (axisDomain == null || axisRange == null) {
40
- return undefined;
41
- }
42
- if (typeof axis.scale === 'function') {
43
- return combineConfiguredScaleInternal(axis.scale, axisDomain, axisRange);
44
- }
45
- return combineConfiguredScaleInternal(realScaleType, axisDomain, axisRange);
46
- }
@@ -1,48 +0,0 @@
1
- // Vendored verbatim from recharts@3.9.2 es6/state/selectors/combiners/combineCoordinateForDefaultIndex.js (framework-agnostic).
2
- // Do not edit — update by re-vendoring when the recharts devDependency moves.
3
- export var combineCoordinateForDefaultIndex = (
4
- width,
5
- height,
6
- layout,
7
- offset,
8
- tooltipTicks,
9
- defaultIndex,
10
- tooltipConfigurations,
11
- ) => {
12
- if (defaultIndex == null) {
13
- return undefined;
14
- }
15
- /*
16
- * With defaultIndex alone, we don't have enough information to decide _which_ of the multiple tooltips to display.
17
- * Maybe one day we could add new prop `activeGraphicalItemId` to the chart to help with that.
18
- * Until then, we choose the first one.
19
- */
20
- var firstConfiguration = tooltipConfigurations[0];
21
- var maybePosition =
22
- firstConfiguration === null || firstConfiguration === void 0
23
- ? void 0
24
- : firstConfiguration.getPosition(defaultIndex);
25
- if (maybePosition != null) {
26
- return maybePosition;
27
- }
28
- var tick =
29
- tooltipTicks === null || tooltipTicks === void 0 ? void 0 : tooltipTicks[Number(defaultIndex)];
30
- if (!tick) {
31
- return undefined;
32
- }
33
- switch (layout) {
34
- case 'horizontal': {
35
- return {
36
- x: tick.coordinate,
37
- y: (offset.top + height) / 2,
38
- };
39
- }
40
- default: {
41
- // This logic is not super sound - it conflates vertical, radial, centric layouts into just one. TODO improve!
42
- return {
43
- x: (offset.left + width) / 2,
44
- y: tick.coordinate,
45
- };
46
- }
47
- }
48
- };
@@ -1,12 +0,0 @@
1
- // Vendored verbatim from recharts@3.9.2 es6/state/selectors/combiners/combineInverseScaleFunction.js (framework-agnostic).
2
- // Do not edit — update by re-vendoring when the recharts devDependency moves.
3
- import { createCategoricalInverse } from '../../../util/scale/createCategoricalInverse';
4
- export function combineInverseScaleFunction(configuredScale) {
5
- if (configuredScale == null) {
6
- return undefined;
7
- }
8
- if ('invert' in configuredScale && typeof configuredScale.invert === 'function') {
9
- return configuredScale.invert.bind(configuredScale);
10
- }
11
- return createCategoricalInverse(configuredScale, undefined);
12
- }
@@ -1,22 +0,0 @@
1
- // Vendored verbatim from recharts@3.9.2 es6/state/selectors/combiners/combineStackedData.js (framework-agnostic).
2
- // Do not edit — update by re-vendoring when the recharts devDependency moves.
3
- import { getStackSeriesIdentifier } from '../../../util/stacks/getStackSeriesIdentifier';
4
- export var combineStackedData = (stackGroups, barSettings) => {
5
- var stackSeriesIdentifier = getStackSeriesIdentifier(barSettings);
6
- if (!stackGroups || stackSeriesIdentifier == null || barSettings == null) {
7
- return undefined;
8
- }
9
- var stackId = barSettings.stackId;
10
- if (stackId == null) {
11
- return undefined;
12
- }
13
- var stackGroup = stackGroups[stackId];
14
- if (!stackGroup) {
15
- return undefined;
16
- }
17
- var stackedData = stackGroup.stackedData;
18
- if (!stackedData) {
19
- return undefined;
20
- }
21
- return stackedData.find((sd) => sd.key === stackSeriesIdentifier);
22
- };
@@ -1,121 +0,0 @@
1
- // Vendored verbatim from recharts@3.9.2 es6/state/selectors/combiners/combineTooltipInteractionState.js (framework-agnostic).
2
- // Do not edit — update by re-vendoring when the recharts devDependency moves.
3
- function ownKeys(e, r) {
4
- var t = Object.keys(e);
5
- if (Object.getOwnPropertySymbols) {
6
- var o = Object.getOwnPropertySymbols(e);
7
- (r &&
8
- (o = o.filter(function (r) {
9
- return Object.getOwnPropertyDescriptor(e, r).enumerable;
10
- })),
11
- t.push.apply(t, o));
12
- }
13
- return t;
14
- }
15
- function _objectSpread(e) {
16
- for (var r = 1; r < arguments.length; r++) {
17
- var t = null != arguments[r] ? arguments[r] : {};
18
- r % 2
19
- ? ownKeys(Object(t), !0).forEach(function (r) {
20
- _defineProperty(e, r, t[r]);
21
- })
22
- : Object.getOwnPropertyDescriptors
23
- ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t))
24
- : ownKeys(Object(t)).forEach(function (r) {
25
- Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
26
- });
27
- }
28
- return e;
29
- }
30
- function _defineProperty(e, r, t) {
31
- return (
32
- (r = _toPropertyKey(r)) in e
33
- ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 })
34
- : (e[r] = t),
35
- e
36
- );
37
- }
38
- function _toPropertyKey(t) {
39
- var i = _toPrimitive(t, 'string');
40
- return 'symbol' == typeof i ? i : i + '';
41
- }
42
- function _toPrimitive(t, r) {
43
- if ('object' != typeof t || !t) return t;
44
- var e = t[Symbol.toPrimitive];
45
- if (void 0 !== e) {
46
- var i = e.call(t, r || 'default');
47
- if ('object' != typeof i) return i;
48
- throw new TypeError('@@toPrimitive must return a primitive value.');
49
- }
50
- return ('string' === r ? String : Number)(t);
51
- }
52
- import { noInteraction } from '../../tooltipSlice';
53
- function chooseAppropriateMouseInteraction(tooltipState, tooltipEventType, trigger) {
54
- if (tooltipEventType === 'axis') {
55
- if (trigger === 'click') {
56
- return tooltipState.axisInteraction.click;
57
- }
58
- return tooltipState.axisInteraction.hover;
59
- }
60
- if (trigger === 'click') {
61
- return tooltipState.itemInteraction.click;
62
- }
63
- return tooltipState.itemInteraction.hover;
64
- }
65
- function hasBeenActivePreviously(tooltipInteractionState) {
66
- return tooltipInteractionState.index != null;
67
- }
68
- export var combineTooltipInteractionState = (
69
- tooltipState,
70
- tooltipEventType,
71
- trigger,
72
- defaultIndex,
73
- ) => {
74
- if (tooltipEventType == null) {
75
- return noInteraction;
76
- }
77
- var appropriateMouseInteraction = chooseAppropriateMouseInteraction(
78
- tooltipState,
79
- tooltipEventType,
80
- trigger,
81
- );
82
- if (appropriateMouseInteraction == null) {
83
- return noInteraction;
84
- }
85
- if (appropriateMouseInteraction.active) {
86
- return appropriateMouseInteraction;
87
- }
88
- if (tooltipState.keyboardInteraction.active) {
89
- return tooltipState.keyboardInteraction;
90
- }
91
- if (tooltipState.syncInteraction.active && tooltipState.syncInteraction.index != null) {
92
- return tooltipState.syncInteraction;
93
- }
94
- var activeFromProps = tooltipState.settings.active === true;
95
- if (hasBeenActivePreviously(appropriateMouseInteraction)) {
96
- if (activeFromProps) {
97
- return _objectSpread(
98
- _objectSpread({}, appropriateMouseInteraction),
99
- {},
100
- {
101
- active: true,
102
- },
103
- );
104
- }
105
- } else if (defaultIndex != null) {
106
- return {
107
- active: true,
108
- coordinate: undefined,
109
- dataKey: undefined,
110
- index: defaultIndex,
111
- graphicalItemId: undefined,
112
- };
113
- }
114
- return _objectSpread(
115
- _objectSpread({}, noInteraction),
116
- {},
117
- {
118
- coordinate: appropriateMouseInteraction.coordinate,
119
- },
120
- );
121
- };
@@ -1,248 +0,0 @@
1
- // Vendored verbatim from recharts@3.9.2 es6/state/selectors/combiners/combineTooltipPayload.js (framework-agnostic).
2
- // Do not edit — update by re-vendoring when the recharts devDependency moves.
3
- function ownKeys(e, r) {
4
- var t = Object.keys(e);
5
- if (Object.getOwnPropertySymbols) {
6
- var o = Object.getOwnPropertySymbols(e);
7
- (r &&
8
- (o = o.filter(function (r) {
9
- return Object.getOwnPropertyDescriptor(e, r).enumerable;
10
- })),
11
- t.push.apply(t, o));
12
- }
13
- return t;
14
- }
15
- function _objectSpread(e) {
16
- for (var r = 1; r < arguments.length; r++) {
17
- var t = null != arguments[r] ? arguments[r] : {};
18
- r % 2
19
- ? ownKeys(Object(t), !0).forEach(function (r) {
20
- _defineProperty(e, r, t[r]);
21
- })
22
- : Object.getOwnPropertyDescriptors
23
- ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t))
24
- : ownKeys(Object(t)).forEach(function (r) {
25
- Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
26
- });
27
- }
28
- return e;
29
- }
30
- function _defineProperty(e, r, t) {
31
- return (
32
- (r = _toPropertyKey(r)) in e
33
- ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 })
34
- : (e[r] = t),
35
- e
36
- );
37
- }
38
- function _toPropertyKey(t) {
39
- var i = _toPrimitive(t, 'string');
40
- return 'symbol' == typeof i ? i : i + '';
41
- }
42
- function _toPrimitive(t, r) {
43
- if ('object' != typeof t || !t) return t;
44
- var e = t[Symbol.toPrimitive];
45
- if (void 0 !== e) {
46
- var i = e.call(t, r || 'default');
47
- if ('object' != typeof i) return i;
48
- throw new TypeError('@@toPrimitive must return a primitive value.');
49
- }
50
- return ('string' === r ? String : Number)(t);
51
- }
52
- import { findEntryInArray } from '../../../util/DataUtils';
53
- import { getTooltipEntry, getValueByDataKey } from '../../../util/ChartUtils';
54
- import { getSliced } from '../../../util/getSliced';
55
- function parseName(value) {
56
- if (typeof value === 'string' || typeof value === 'number') {
57
- return value;
58
- }
59
- return undefined;
60
- }
61
- function parseUnit(value) {
62
- if (typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean') {
63
- return value;
64
- }
65
- return undefined;
66
- }
67
- function parseDataKey(value) {
68
- if (typeof value === 'string' || typeof value === 'number') {
69
- return value;
70
- }
71
- if (typeof value === 'function') {
72
- return (obj) => value(obj);
73
- }
74
- return undefined;
75
- }
76
- function parseColor(value) {
77
- if (typeof value === 'string') {
78
- return value;
79
- }
80
- return undefined;
81
- }
82
- function parseTooltipPayloadItem(item) {
83
- if (item == null || typeof item !== 'object') {
84
- return undefined;
85
- }
86
- var name = 'name' in item ? parseName(item.name) : undefined;
87
- var unit = 'unit' in item ? parseUnit(item.unit) : undefined;
88
- var dataKey = 'dataKey' in item ? parseDataKey(item.dataKey) : undefined;
89
- var payload = 'payload' in item ? item.payload : undefined;
90
- var color = 'color' in item ? parseColor(item.color) : undefined;
91
- var fill = 'fill' in item ? parseColor(item.fill) : undefined;
92
- return {
93
- name,
94
- unit,
95
- dataKey,
96
- payload,
97
- color,
98
- fill,
99
- };
100
- }
101
- function selectFinalData(dataDefinedOnItem, dataDefinedOnChart) {
102
- /*
103
- * If a payload has data specified directly from the graphical item, prefer that.
104
- * Otherwise, fill in data from the chart level, using the same index.
105
- */
106
- if (dataDefinedOnItem != null) {
107
- return dataDefinedOnItem;
108
- }
109
- return dataDefinedOnChart;
110
- }
111
- export var combineTooltipPayload = (
112
- tooltipPayloadConfigurations,
113
- activeIndex,
114
- chartDataState,
115
- tooltipAxisDataKey,
116
- activeLabel,
117
- tooltipPayloadSearcher,
118
- tooltipEventType,
119
- ) => {
120
- if (activeIndex == null || tooltipPayloadSearcher == null) {
121
- return undefined;
122
- }
123
- var chartData = chartDataState.chartData,
124
- computedData = chartDataState.computedData,
125
- dataStartIndex = chartDataState.dataStartIndex,
126
- dataEndIndex = chartDataState.dataEndIndex;
127
- var init = [];
128
- return tooltipPayloadConfigurations.reduce((agg, _ref) => {
129
- var _settings$dataKey;
130
- var dataDefinedOnItem = _ref.dataDefinedOnItem,
131
- settings = _ref.settings;
132
- var finalData = selectFinalData(dataDefinedOnItem, chartData);
133
- var sliced = Array.isArray(finalData)
134
- ? getSliced(finalData, dataStartIndex, dataEndIndex)
135
- : finalData;
136
- var finalDataKey =
137
- (_settings$dataKey = settings === null || settings === void 0 ? void 0 : settings.dataKey) !==
138
- null && _settings$dataKey !== void 0
139
- ? _settings$dataKey
140
- : tooltipAxisDataKey;
141
- // BaseAxisProps does not support nameKey but it could!
142
- var finalNameKey = settings === null || settings === void 0 ? void 0 : settings.nameKey; // ?? tooltipAxis?.nameKey;
143
- var tooltipPayload;
144
- if (
145
- tooltipAxisDataKey &&
146
- Array.isArray(sliced) &&
147
- /*
148
- * findEntryInArray won't work for Scatter because Scatter provides an array of arrays
149
- * as tooltip payloads and findEntryInArray is not prepared to handle that.
150
- * Sad but also ScatterChart only allows 'item' tooltipEventType
151
- * and also this is only a problem if there are multiple Scatters and each has its own data array
152
- * so let's fix that some other time.
153
- */
154
- !Array.isArray(sliced[0]) &&
155
- /*
156
- * If the tooltipEventType is 'axis', we should search for the dataKey in the sliced data
157
- * because thanks to allowDuplicatedCategory=false, the order of elements in the array
158
- * no longer matches the order of elements in the original data
159
- * and so we need to search by the active dataKey + label rather than by index.
160
- *
161
- * The same happens if multiple graphical items are present in the chart
162
- * and each of them has its own data array. Those arrays get concatenated
163
- * and again the tooltip index no longer matches the original data.
164
- *
165
- * On the other hand the tooltipEventType 'item' should always search by index
166
- * because we get the index from interacting over the individual elements
167
- * which is always accurate, irrespective of the allowDuplicatedCategory setting.
168
- */
169
- tooltipEventType === 'axis'
170
- ) {
171
- tooltipPayload = findEntryInArray(sliced, tooltipAxisDataKey, activeLabel);
172
- } else {
173
- /*
174
- * This is a problem because it assumes that the index is pointing to the displayed data
175
- * which it isn't because the index is pointing to the tooltip ticks array.
176
- * The above approach (with findEntryInArray) is the correct one, but it only works
177
- * if the axis dataKey is defined explicitly, and if the data is an array of objects.
178
- */
179
- tooltipPayload = tooltipPayloadSearcher(sliced, activeIndex, computedData, finalNameKey);
180
- }
181
- if (Array.isArray(tooltipPayload)) {
182
- tooltipPayload.forEach((item) => {
183
- var _parsedItem$color, _parsedItem$fill;
184
- var parsedItem = parseTooltipPayloadItem(item);
185
- var itemName = parsedItem === null || parsedItem === void 0 ? void 0 : parsedItem.name;
186
- var itemDataKey =
187
- parsedItem === null || parsedItem === void 0 ? void 0 : parsedItem.dataKey;
188
- var itemPayload =
189
- parsedItem === null || parsedItem === void 0 ? void 0 : parsedItem.payload;
190
- var newSettings = _objectSpread(
191
- _objectSpread({}, settings),
192
- {},
193
- {
194
- name: itemName,
195
- unit: parsedItem === null || parsedItem === void 0 ? void 0 : parsedItem.unit,
196
- // Preserve item-level color/fill from graphical items.
197
- color:
198
- (_parsedItem$color =
199
- parsedItem === null || parsedItem === void 0 ? void 0 : parsedItem.color) !==
200
- null && _parsedItem$color !== void 0
201
- ? _parsedItem$color
202
- : settings === null || settings === void 0
203
- ? void 0
204
- : settings.color,
205
- fill:
206
- (_parsedItem$fill =
207
- parsedItem === null || parsedItem === void 0 ? void 0 : parsedItem.fill) !== null &&
208
- _parsedItem$fill !== void 0
209
- ? _parsedItem$fill
210
- : settings === null || settings === void 0
211
- ? void 0
212
- : settings.fill,
213
- },
214
- );
215
- agg.push(
216
- getTooltipEntry({
217
- tooltipEntrySettings: newSettings,
218
- dataKey: itemDataKey,
219
- payload: itemPayload,
220
- value: getValueByDataKey(itemPayload, itemDataKey),
221
- name: itemName == null ? undefined : String(itemName),
222
- }),
223
- );
224
- });
225
- } else {
226
- var _getValueByDataKey;
227
- // I am not quite sure why these two branches (Array vs Array of Arrays) have to behave differently - I imagine we should unify these. 3.x breaking change?
228
- agg.push(
229
- getTooltipEntry({
230
- tooltipEntrySettings: settings,
231
- dataKey: finalDataKey,
232
- payload: tooltipPayload,
233
- // getValueByDataKey does not validate the output type
234
- value: getValueByDataKey(tooltipPayload, finalDataKey),
235
- // getValueByDataKey does not validate the output type
236
- name:
237
- (_getValueByDataKey = getValueByDataKey(tooltipPayload, finalNameKey)) !== null &&
238
- _getValueByDataKey !== void 0
239
- ? _getValueByDataKey
240
- : settings === null || settings === void 0
241
- ? void 0
242
- : settings.name,
243
- }),
244
- );
245
- }
246
- return agg;
247
- }, init);
248
- };
@@ -1,6 +0,0 @@
1
- // Vendored verbatim from recharts@3.9.2 es6/state/selectors/containerSelectors.js (framework-agnostic).
2
- // Do not edit — update by re-vendoring when the recharts devDependency moves.
3
- export var selectChartWidth = (state) => state.layout.width;
4
- export var selectChartHeight = (state) => state.layout.height;
5
- export var selectContainerScale = (state) => state.layout.scale;
6
- export var selectMargin = (state) => state.layout.margin;
@@ -1,25 +0,0 @@
1
- // Vendored verbatim from recharts@3.9.2 es6/state/selectors/graphicalItemSelectors.js (framework-agnostic).
2
- // Do not edit — update by re-vendoring when the recharts devDependency moves.
3
- import { defaultAxisId } from '../cartesianAxisSlice';
4
- export function selectXAxisIdFromGraphicalItemId(state, id) {
5
- var _state$graphicalItems, _state$graphicalItems2;
6
- return (_state$graphicalItems =
7
- (_state$graphicalItems2 = state.graphicalItems.cartesianItems.find(
8
- (item) => item.id === id,
9
- )) === null || _state$graphicalItems2 === void 0
10
- ? void 0
11
- : _state$graphicalItems2.xAxisId) !== null && _state$graphicalItems !== void 0
12
- ? _state$graphicalItems
13
- : defaultAxisId;
14
- }
15
- export function selectYAxisIdFromGraphicalItemId(state, id) {
16
- var _state$graphicalItems3, _state$graphicalItems4;
17
- return (_state$graphicalItems3 =
18
- (_state$graphicalItems4 = state.graphicalItems.cartesianItems.find(
19
- (item) => item.id === id,
20
- )) === null || _state$graphicalItems4 === void 0
21
- ? void 0
22
- : _state$graphicalItems4.yAxisId) !== null && _state$graphicalItems3 !== void 0
23
- ? _state$graphicalItems3
24
- : defaultAxisId;
25
- }
@@ -1,18 +0,0 @@
1
- // Vendored verbatim from recharts@3.9.2 es6/state/selectors/legendSelectors.js (framework-agnostic).
2
- // Do not edit — update by re-vendoring when the recharts devDependency moves.
3
- // Sanctioned deviation: es-toolkit compat imports normalized to the ESM barrel
4
- // ('es-toolkit/compat') — the per-function subpaths are CJS-only and break
5
- // consumers that compile this binding from source (vite dev prebundle).
6
- import { createSelector } from 'reselect';
7
- import { sortBy } from 'es-toolkit/compat';
8
- export var selectLegendSettings = (state) => state.legend.settings;
9
- export var selectLegendSize = (state) => state.legend.size;
10
- var selectAllLegendPayload2DArray = (state) => state.legend.payload;
11
- export var selectLegendPayload = createSelector(
12
- [selectAllLegendPayload2DArray, selectLegendSettings],
13
- (payloads, _ref) => {
14
- var itemSorter = _ref.itemSorter;
15
- var flat = payloads.flat(1);
16
- return itemSorter ? sortBy(flat, itemSorter) : flat;
17
- },
18
- );
@@ -1,106 +0,0 @@
1
- // Vendored verbatim from recharts@3.9.2 es6/state/selectors/lineSelectors.js (framework-agnostic).
2
- // Do not edit — update by re-vendoring when the recharts devDependency moves.
3
- import { createSelector } from 'reselect';
4
- import { computeLinePoints } from '../../cartesian/Line';
5
- import { selectChartDataWithIndexesIfNotInPanoramaPosition4 } from './dataSelectors';
6
- import { selectChartLayout } from '../../context/chartLayoutContext';
7
- import {
8
- selectAxisWithScale,
9
- selectTicksOfGraphicalItem,
10
- selectUnfilteredCartesianItems,
11
- } from './axisSelectors';
12
- import { getBandSizeOfAxis, isCategoricalAxis } from '../../util/ChartUtils';
13
- var selectXAxisWithScale = (state, xAxisId, _yAxisId, isPanorama) =>
14
- selectAxisWithScale(state, 'xAxis', xAxisId, isPanorama);
15
- var selectXAxisTicks = (state, xAxisId, _yAxisId, isPanorama) =>
16
- selectTicksOfGraphicalItem(state, 'xAxis', xAxisId, isPanorama);
17
- var selectYAxisWithScale = (state, _xAxisId, yAxisId, isPanorama) =>
18
- selectAxisWithScale(state, 'yAxis', yAxisId, isPanorama);
19
- var selectYAxisTicks = (state, _xAxisId, yAxisId, isPanorama) =>
20
- selectTicksOfGraphicalItem(state, 'yAxis', yAxisId, isPanorama);
21
- var selectBandSize = createSelector(
22
- [
23
- selectChartLayout,
24
- selectXAxisWithScale,
25
- selectYAxisWithScale,
26
- selectXAxisTicks,
27
- selectYAxisTicks,
28
- ],
29
- (layout, xAxis, yAxis, xAxisTicks, yAxisTicks) => {
30
- if (isCategoricalAxis(layout, 'xAxis')) {
31
- return getBandSizeOfAxis(xAxis, xAxisTicks, false);
32
- }
33
- return getBandSizeOfAxis(yAxis, yAxisTicks, false);
34
- },
35
- );
36
- var pickLineId = (_state, _xAxisId, _yAxisId, _isPanorama, id) => id;
37
- function isLineSettings(item) {
38
- return item.type === 'line';
39
- }
40
-
41
- /*
42
- * There is a race condition problem because we read some data from props and some from the state.
43
- * The state is updated through a dispatch and is one render behind,
44
- * and so we have this weird one tick render where the displayedData in one selector have the old dataKey
45
- * but the new dataKey in another selector.
46
- *
47
- * So here instead of reading the dataKey from the props, we always read it from the state.
48
- */
49
- var selectSynchronisedLineSettings = createSelector(
50
- [selectUnfilteredCartesianItems, pickLineId],
51
- (graphicalItems, id) => graphicalItems.filter(isLineSettings).find((x) => x.id === id),
52
- );
53
- export var selectLinePoints = createSelector(
54
- [
55
- selectChartLayout,
56
- selectXAxisWithScale,
57
- selectYAxisWithScale,
58
- selectXAxisTicks,
59
- selectYAxisTicks,
60
- selectSynchronisedLineSettings,
61
- selectBandSize,
62
- selectChartDataWithIndexesIfNotInPanoramaPosition4,
63
- ],
64
- (layout, xAxis, yAxis, xAxisTicks, yAxisTicks, lineSettings, bandSize, _ref) => {
65
- var chartData = _ref.chartData,
66
- dataStartIndex = _ref.dataStartIndex,
67
- dataEndIndex = _ref.dataEndIndex;
68
- if (
69
- lineSettings == null ||
70
- xAxis == null ||
71
- yAxis == null ||
72
- xAxisTicks == null ||
73
- yAxisTicks == null ||
74
- xAxisTicks.length === 0 ||
75
- yAxisTicks.length === 0 ||
76
- bandSize == null ||
77
- (layout !== 'horizontal' && layout !== 'vertical')
78
- ) {
79
- return undefined;
80
- }
81
- var dataKey = lineSettings.dataKey,
82
- data = lineSettings.data;
83
- var displayedData;
84
- if (data != null && data.length > 0) {
85
- displayedData = data;
86
- } else {
87
- displayedData =
88
- chartData === null || chartData === void 0
89
- ? void 0
90
- : chartData.slice(dataStartIndex, dataEndIndex + 1);
91
- }
92
- if (displayedData == null) {
93
- return undefined;
94
- }
95
- return computeLinePoints({
96
- layout,
97
- xAxis,
98
- yAxis,
99
- xAxisTicks,
100
- yAxisTicks,
101
- dataKey,
102
- bandSize,
103
- displayedData,
104
- });
105
- },
106
- );
@@ -1,11 +0,0 @@
1
- // Vendored verbatim from recharts@3.9.2 es6/state/selectors/numberDomainEqualityCheck.js (framework-agnostic).
2
- // Do not edit — update by re-vendoring when the recharts devDependency moves.
3
- export var numberDomainEqualityCheck = (a, b) => {
4
- if (a === b) {
5
- return true;
6
- }
7
- if (a == null || b == null) {
8
- return false;
9
- }
10
- return a[0] === b[0] && a[1] === b[1];
11
- };
@@ -1,3 +0,0 @@
1
- // Vendored verbatim from recharts@3.9.2 es6/state/selectors/pickAxisId.js (framework-agnostic).
2
- // Do not edit — update by re-vendoring when the recharts devDependency moves.
3
- export var pickAxisId = (_state, _axisType, axisId) => axisId;
@@ -1,3 +0,0 @@
1
- // Vendored verbatim from recharts@3.9.2 es6/state/selectors/pickAxisType.js (framework-agnostic).
2
- // Do not edit — update by re-vendoring when the recharts devDependency moves.
3
- export var pickAxisType = (_state, axisType) => axisType;