@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,222 +0,0 @@
1
- // Vendored verbatim from recharts@3.9.2 es6/state/selectors/selectors.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
- import { useAppSelector } from '../hooks';
9
- import { calculateCartesianTooltipPos, calculatePolarTooltipPos } from '../../util/ChartUtils';
10
- import { selectChartDataWithIndexes } from './dataSelectors';
11
- import {
12
- selectTooltipAxisDomain,
13
- selectTooltipAxisTicks,
14
- selectTooltipDisplayedData,
15
- } from './tooltipSelectors';
16
- import { selectTooltipAxisDataKey } from './axisSelectors';
17
- import { selectChartName } from './rootPropsSelectors';
18
- import { selectChartLayout } from '../../context/chartLayoutContext';
19
- import { selectChartOffsetInternal } from './selectChartOffsetInternal';
20
- import { selectChartHeight, selectChartWidth } from './containerSelectors';
21
- import { combineActiveLabel } from './combiners/combineActiveLabel';
22
- import { combineTooltipInteractionState } from './combiners/combineTooltipInteractionState';
23
- import { combineActiveTooltipIndex } from './combiners/combineActiveTooltipIndex';
24
- import { combineCoordinateForDefaultIndex } from './combiners/combineCoordinateForDefaultIndex';
25
- import { combineTooltipPayloadConfigurations } from './combiners/combineTooltipPayloadConfigurations';
26
- import { selectTooltipPayloadSearcher } from './selectTooltipPayloadSearcher';
27
- import { selectTooltipState } from './selectTooltipState';
28
- import { combineTooltipPayload } from './combiners/combineTooltipPayload';
29
- import {
30
- calculateActiveTickIndex,
31
- getActiveCartesianCoordinate,
32
- getActivePolarCoordinate,
33
- isInCartesianRange,
34
- } from '../../util/getActiveCoordinate';
35
- import { inRangeOfSector } from '../../util/PolarUtils';
36
- export var useChartName = () => {
37
- return useAppSelector(selectChartName);
38
- };
39
- var pickTooltipEventType = (_state, tooltipEventType) => tooltipEventType;
40
- var pickTrigger = (_state, _tooltipEventType, trigger) => trigger;
41
- var pickDefaultIndex = (_state, _tooltipEventType, _trigger, defaultIndex) => defaultIndex;
42
- export var selectOrderedTooltipTicks = createSelector(selectTooltipAxisTicks, (ticks) =>
43
- sortBy(ticks, (o) => o.coordinate),
44
- );
45
- export var selectTooltipInteractionState = createSelector(
46
- [selectTooltipState, pickTooltipEventType, pickTrigger, pickDefaultIndex],
47
- combineTooltipInteractionState,
48
- );
49
- export var selectActiveIndex = createSelector(
50
- [
51
- selectTooltipInteractionState,
52
- selectTooltipDisplayedData,
53
- selectTooltipAxisDataKey,
54
- selectTooltipAxisDomain,
55
- ],
56
- combineActiveTooltipIndex,
57
- );
58
- export var selectTooltipDataKey = (state, tooltipEventType, trigger) => {
59
- if (tooltipEventType == null) {
60
- return undefined;
61
- }
62
- var tooltipState = selectTooltipState(state);
63
- if (tooltipEventType === 'axis') {
64
- if (trigger === 'hover') {
65
- return tooltipState.axisInteraction.hover.dataKey;
66
- }
67
- return tooltipState.axisInteraction.click.dataKey;
68
- }
69
- if (trigger === 'hover') {
70
- return tooltipState.itemInteraction.hover.dataKey;
71
- }
72
- return tooltipState.itemInteraction.click.dataKey;
73
- };
74
- export var selectTooltipPayloadConfigurations = createSelector(
75
- [selectTooltipState, pickTooltipEventType, pickTrigger, pickDefaultIndex],
76
- combineTooltipPayloadConfigurations,
77
- );
78
- export var selectCoordinateForDefaultIndex = createSelector(
79
- [
80
- selectChartWidth,
81
- selectChartHeight,
82
- selectChartLayout,
83
- selectChartOffsetInternal,
84
- selectTooltipAxisTicks,
85
- pickDefaultIndex,
86
- selectTooltipPayloadConfigurations,
87
- ],
88
- combineCoordinateForDefaultIndex,
89
- );
90
- export var selectActiveCoordinate = createSelector(
91
- [selectTooltipInteractionState, selectCoordinateForDefaultIndex],
92
- (tooltipInteractionState, defaultIndexCoordinate) => {
93
- var _tooltipInteractionSt;
94
- return (_tooltipInteractionSt = tooltipInteractionState.coordinate) !== null &&
95
- _tooltipInteractionSt !== void 0
96
- ? _tooltipInteractionSt
97
- : defaultIndexCoordinate;
98
- },
99
- );
100
- export var selectActiveLabel = createSelector(
101
- [selectTooltipAxisTicks, selectActiveIndex],
102
- combineActiveLabel,
103
- );
104
- export var selectTooltipPayload = createSelector(
105
- [
106
- selectTooltipPayloadConfigurations,
107
- selectActiveIndex,
108
- selectChartDataWithIndexes,
109
- selectTooltipAxisDataKey,
110
- selectActiveLabel,
111
- selectTooltipPayloadSearcher,
112
- pickTooltipEventType,
113
- ],
114
- combineTooltipPayload,
115
- );
116
- export var selectIsTooltipActive = createSelector(
117
- [selectTooltipInteractionState, selectActiveIndex],
118
- (tooltipInteractionState, activeIndex) => {
119
- return {
120
- isActive: tooltipInteractionState.active && activeIndex != null,
121
- activeIndex,
122
- };
123
- },
124
- );
125
- var combineActiveCartesianProps = (
126
- chartEvent,
127
- layout,
128
- tooltipAxisType,
129
- tooltipAxisRange,
130
- tooltipTicks,
131
- orderedTooltipTicks,
132
- offset,
133
- ) => {
134
- if (!chartEvent || !tooltipAxisType || !tooltipAxisRange || !tooltipTicks) {
135
- return undefined;
136
- }
137
- if (!isInCartesianRange(chartEvent, offset)) {
138
- return undefined;
139
- }
140
- var pos = calculateCartesianTooltipPos(chartEvent, layout);
141
- var activeIndex = calculateActiveTickIndex(
142
- pos,
143
- orderedTooltipTicks,
144
- tooltipTicks,
145
- tooltipAxisType,
146
- tooltipAxisRange,
147
- );
148
- var activeCoordinate = getActiveCartesianCoordinate(
149
- layout,
150
- tooltipTicks,
151
- activeIndex,
152
- chartEvent,
153
- );
154
- return {
155
- activeIndex: String(activeIndex),
156
- activeCoordinate,
157
- };
158
- };
159
- var combineActivePolarProps = (
160
- chartEvent,
161
- layout,
162
- polarViewBox,
163
- tooltipAxisType,
164
- tooltipAxisRange,
165
- tooltipTicks,
166
- orderedTooltipTicks,
167
- ) => {
168
- if (!chartEvent || !tooltipAxisType || !tooltipAxisRange || !tooltipTicks || !polarViewBox) {
169
- return undefined;
170
- }
171
- var rangeObj = inRangeOfSector(chartEvent, polarViewBox);
172
- if (!rangeObj) {
173
- return undefined;
174
- }
175
- var pos = calculatePolarTooltipPos(rangeObj, layout);
176
- var activeIndex = calculateActiveTickIndex(
177
- pos,
178
- orderedTooltipTicks,
179
- tooltipTicks,
180
- tooltipAxisType,
181
- tooltipAxisRange,
182
- );
183
- var activeCoordinate = getActivePolarCoordinate(layout, tooltipTicks, activeIndex, rangeObj);
184
- return {
185
- activeIndex: String(activeIndex),
186
- activeCoordinate,
187
- };
188
- };
189
- export var combineActiveProps = (
190
- chartEvent,
191
- layout,
192
- polarViewBox,
193
- tooltipAxisType,
194
- tooltipAxisRange,
195
- tooltipTicks,
196
- orderedTooltipTicks,
197
- offset,
198
- ) => {
199
- if (!chartEvent || !layout || !tooltipAxisType || !tooltipAxisRange || !tooltipTicks) {
200
- return undefined;
201
- }
202
- if (layout === 'horizontal' || layout === 'vertical') {
203
- return combineActiveCartesianProps(
204
- chartEvent,
205
- layout,
206
- tooltipAxisType,
207
- tooltipAxisRange,
208
- tooltipTicks,
209
- orderedTooltipTicks,
210
- offset,
211
- );
212
- }
213
- return combineActivePolarProps(
214
- chartEvent,
215
- layout,
216
- polarViewBox,
217
- tooltipAxisType,
218
- tooltipAxisRange,
219
- tooltipTicks,
220
- orderedTooltipTicks,
221
- );
222
- };
@@ -1,471 +0,0 @@
1
- // Vendored verbatim from recharts@3.9.2 es6/state/selectors/tooltipSelectors.js (framework-agnostic).
2
- // Do not edit — update by re-vendoring when the recharts devDependency moves.
3
- import { createSelector } from 'reselect';
4
- import {
5
- combineAllAppliedValues,
6
- combineAreasDomain,
7
- combineAxisDomain,
8
- combineAxisDomainWithNiceTicks,
9
- combineCategoricalDomain,
10
- combineDisplayedData,
11
- combineDomainOfAllAppliedNumericalValuesIncludingErrorValues,
12
- combineDomainOfStackGroups,
13
- combineDotsDomain,
14
- combineDuplicateDomain,
15
- combineGraphicalItemsData,
16
- combineGraphicalItemsSettings,
17
- combineLinesDomain,
18
- combineNiceTicks,
19
- combineNumericalDomain,
20
- combineStackGroups,
21
- filterGraphicalNotStackedItems,
22
- filterReferenceElements,
23
- getDomainDefinition,
24
- itemAxisPredicate,
25
- mergeDomains,
26
- selectAllErrorBarSettings,
27
- selectAxisRange,
28
- selectHasBar,
29
- selectReferenceAreas,
30
- selectReferenceDots,
31
- selectReferenceLines,
32
- selectTooltipAxis,
33
- selectTooltipAxisDataKey,
34
- } from './axisSelectors';
35
- import { selectChartLayout } from '../../context/chartLayoutContext';
36
- import { isCategoricalAxis } from '../../util/ChartUtils';
37
- import { selectChartDataWithIndexes, selectChartDataSliceWithIndexes } from './dataSelectors';
38
- import {
39
- selectChartName,
40
- selectReverseStackOrder,
41
- selectStackOffsetType,
42
- } from './rootPropsSelectors';
43
- import { isNotNil, mathSign } from '../../util/DataUtils';
44
- import { combineAxisRangeWithReverse } from './combiners/combineAxisRangeWithReverse';
45
- import {
46
- combineTooltipEventType,
47
- selectDefaultTooltipEventType,
48
- selectValidateTooltipEventTypes,
49
- } from './selectTooltipEventType';
50
- import { combineActiveLabel } from './combiners/combineActiveLabel';
51
- import { selectTooltipSettings } from './selectTooltipSettings';
52
- import { combineTooltipInteractionState } from './combiners/combineTooltipInteractionState';
53
- import { combineActiveTooltipIndex } from './combiners/combineActiveTooltipIndex';
54
- import { combineCoordinateForDefaultIndex } from './combiners/combineCoordinateForDefaultIndex';
55
- import { selectChartHeight, selectChartWidth } from './containerSelectors';
56
- import { selectChartOffsetInternal } from './selectChartOffsetInternal';
57
- import { combineTooltipPayloadConfigurations } from './combiners/combineTooltipPayloadConfigurations';
58
- import { selectTooltipPayloadSearcher } from './selectTooltipPayloadSearcher';
59
- import { selectTooltipState } from './selectTooltipState';
60
- import { combineTooltipPayload } from './combiners/combineTooltipPayload';
61
- import { selectTooltipAxisId } from './selectTooltipAxisId';
62
- import { selectTooltipAxisType } from './selectTooltipAxisType';
63
- import { combineDisplayedStackedData } from './combiners/combineDisplayedStackedData';
64
- import { isStacked } from '../types/StackedGraphicalItem';
65
- import { numericalDomainSpecifiedWithoutRequiringData } from '../../util/isDomainSpecifiedByUser';
66
- import { numberDomainEqualityCheck } from './numberDomainEqualityCheck';
67
- import { emptyArraysAreEqualCheck } from './arrayEqualityCheck';
68
- import { rechartsScaleFactory } from '../../util/scale/RechartsScale';
69
- import { isWellBehavedNumber } from '../../util/isWellBehavedNumber';
70
- import { combineRealScaleType } from './combiners/combineRealScaleType';
71
- import { combineConfiguredScale } from './combiners/combineConfiguredScale';
72
- export var selectTooltipAxisRealScaleType = createSelector(
73
- [selectTooltipAxis, selectHasBar, selectChartName],
74
- combineRealScaleType,
75
- );
76
- export var selectAllUnfilteredGraphicalItems = createSelector(
77
- [(state) => state.graphicalItems.cartesianItems, (state) => state.graphicalItems.polarItems],
78
- (cartesianItems, polarItems) => [...cartesianItems, ...polarItems],
79
- );
80
- var selectTooltipAxisPredicate = createSelector(
81
- [selectTooltipAxisType, selectTooltipAxisId],
82
- itemAxisPredicate,
83
- );
84
- export var selectAllGraphicalItemsSettings = createSelector(
85
- [selectAllUnfilteredGraphicalItems, selectTooltipAxis, selectTooltipAxisPredicate],
86
- combineGraphicalItemsSettings,
87
- {
88
- memoizeOptions: {
89
- resultEqualityCheck: emptyArraysAreEqualCheck,
90
- },
91
- },
92
- );
93
- var selectAllStackedGraphicalItemsSettings = createSelector(
94
- [selectAllGraphicalItemsSettings],
95
- (graphicalItems) => graphicalItems.filter(isStacked),
96
- );
97
- export var selectTooltipGraphicalItemsData = createSelector(
98
- [selectAllGraphicalItemsSettings],
99
- combineGraphicalItemsData,
100
- {
101
- memoizeOptions: {
102
- resultEqualityCheck: emptyArraysAreEqualCheck,
103
- },
104
- },
105
- );
106
- var selectAnyTooltipItemUsesChartData = createSelector([selectAllGraphicalItemsSettings], (items) =>
107
- items.some((item) => !item.data),
108
- );
109
-
110
- /**
111
- * Data for tooltip always use the data with indexes set by a Brush,
112
- * and never accept the isPanorama flag:
113
- * because Tooltip never displays inside the panorama anyway
114
- * so we don't need to worry what would happen there.
115
- */
116
- export var selectTooltipDisplayedData = createSelector(
117
- [selectTooltipGraphicalItemsData, selectChartDataWithIndexes],
118
- combineDisplayedData,
119
- );
120
- var selectTooltipStackedData = createSelector(
121
- [selectAllStackedGraphicalItemsSettings, selectChartDataWithIndexes, selectTooltipAxis],
122
- combineDisplayedStackedData,
123
- );
124
- var selectAllTooltipAppliedValues = createSelector(
125
- [
126
- selectTooltipDisplayedData,
127
- selectTooltipAxis,
128
- selectAllGraphicalItemsSettings,
129
- selectChartDataWithIndexes,
130
- selectAnyTooltipItemUsesChartData,
131
- selectTooltipGraphicalItemsData,
132
- ],
133
- combineAllAppliedValues,
134
- );
135
- var selectTooltipAxisDomainDefinition = createSelector([selectTooltipAxis], getDomainDefinition);
136
- var selectTooltipDataOverflow = createSelector(
137
- [selectTooltipAxis],
138
- (axisSettings) => axisSettings.allowDataOverflow,
139
- );
140
- var selectTooltipDomainFromUserPreferences = createSelector(
141
- [selectTooltipAxisDomainDefinition, selectTooltipDataOverflow],
142
- numericalDomainSpecifiedWithoutRequiringData,
143
- );
144
- var selectAllStackedGraphicalItems = createSelector(
145
- [selectAllGraphicalItemsSettings],
146
- (graphicalItems) => graphicalItems.filter(isStacked),
147
- );
148
- var selectTooltipStackGroups = createSelector(
149
- [
150
- selectTooltipStackedData,
151
- selectAllStackedGraphicalItems,
152
- selectStackOffsetType,
153
- selectReverseStackOrder,
154
- ],
155
- combineStackGroups,
156
- );
157
- var selectTooltipDomainOfStackGroups = createSelector(
158
- [
159
- selectTooltipStackGroups,
160
- selectChartDataWithIndexes,
161
- selectTooltipAxisType,
162
- selectTooltipDomainFromUserPreferences,
163
- ],
164
- combineDomainOfStackGroups,
165
- );
166
- var selectTooltipItemsSettingsExceptStacked = createSelector(
167
- [selectAllGraphicalItemsSettings],
168
- filterGraphicalNotStackedItems,
169
- );
170
- var selectDomainOfAllAppliedNumericalValuesIncludingErrorValues = createSelector(
171
- [
172
- selectTooltipDisplayedData,
173
- selectTooltipAxis,
174
- selectTooltipItemsSettingsExceptStacked,
175
- selectAllErrorBarSettings,
176
- selectTooltipAxisType,
177
- selectChartDataSliceWithIndexes,
178
- ],
179
- combineDomainOfAllAppliedNumericalValuesIncludingErrorValues,
180
- {
181
- memoizeOptions: {
182
- resultEqualityCheck: numberDomainEqualityCheck,
183
- },
184
- },
185
- );
186
- var selectReferenceDotsByTooltipAxis = createSelector(
187
- [selectReferenceDots, selectTooltipAxisType, selectTooltipAxisId],
188
- filterReferenceElements,
189
- );
190
- var selectTooltipReferenceDotsDomain = createSelector(
191
- [selectReferenceDotsByTooltipAxis, selectTooltipAxisType],
192
- combineDotsDomain,
193
- );
194
- var selectReferenceAreasByTooltipAxis = createSelector(
195
- [selectReferenceAreas, selectTooltipAxisType, selectTooltipAxisId],
196
- filterReferenceElements,
197
- );
198
- var selectTooltipReferenceAreasDomain = createSelector(
199
- [selectReferenceAreasByTooltipAxis, selectTooltipAxisType],
200
- combineAreasDomain,
201
- );
202
- var selectReferenceLinesByTooltipAxis = createSelector(
203
- [selectReferenceLines, selectTooltipAxisType, selectTooltipAxisId],
204
- filterReferenceElements,
205
- );
206
- var selectTooltipReferenceLinesDomain = createSelector(
207
- [selectReferenceLinesByTooltipAxis, selectTooltipAxisType],
208
- combineLinesDomain,
209
- );
210
- var selectTooltipReferenceElementsDomain = createSelector(
211
- [
212
- selectTooltipReferenceDotsDomain,
213
- selectTooltipReferenceLinesDomain,
214
- selectTooltipReferenceAreasDomain,
215
- ],
216
- mergeDomains,
217
- );
218
- var selectTooltipNumericalDomain = createSelector(
219
- [
220
- selectTooltipAxis,
221
- selectTooltipAxisDomainDefinition,
222
- selectTooltipDomainFromUserPreferences,
223
- selectTooltipDomainOfStackGroups,
224
- selectDomainOfAllAppliedNumericalValuesIncludingErrorValues,
225
- selectTooltipReferenceElementsDomain,
226
- selectChartLayout,
227
- selectTooltipAxisType,
228
- ],
229
- combineNumericalDomain,
230
- );
231
- export var selectTooltipAxisDomain = createSelector(
232
- [
233
- selectTooltipAxis,
234
- selectChartLayout,
235
- selectTooltipDisplayedData,
236
- selectAllTooltipAppliedValues,
237
- selectStackOffsetType,
238
- selectTooltipAxisType,
239
- selectTooltipNumericalDomain,
240
- ],
241
- combineAxisDomain,
242
- );
243
- var selectTooltipNiceTicks = createSelector(
244
- [selectTooltipAxisDomain, selectTooltipAxis, selectTooltipAxisRealScaleType],
245
- combineNiceTicks,
246
- );
247
- export var selectTooltipAxisDomainIncludingNiceTicks = createSelector(
248
- [selectTooltipAxis, selectTooltipAxisDomain, selectTooltipNiceTicks, selectTooltipAxisType],
249
- combineAxisDomainWithNiceTicks,
250
- );
251
- var selectTooltipAxisRange = (state) => {
252
- var axisType = selectTooltipAxisType(state);
253
- var axisId = selectTooltipAxisId(state);
254
- var isPanorama = false; // Tooltip never displays in panorama so this is safe to assume
255
- return selectAxisRange(state, axisType, axisId, isPanorama);
256
- };
257
- export var selectTooltipAxisRangeWithReverse = createSelector(
258
- [selectTooltipAxis, selectTooltipAxisRange],
259
- combineAxisRangeWithReverse,
260
- );
261
- var selectTooltipConfiguredScale = createSelector(
262
- [
263
- selectTooltipAxis,
264
- selectTooltipAxisRealScaleType,
265
- selectTooltipAxisDomainIncludingNiceTicks,
266
- selectTooltipAxisRangeWithReverse,
267
- ],
268
- combineConfiguredScale,
269
- );
270
- export var selectTooltipAxisScale = createSelector(
271
- [selectTooltipConfiguredScale],
272
- rechartsScaleFactory,
273
- );
274
- var selectTooltipDuplicateDomain = createSelector(
275
- [selectChartLayout, selectAllTooltipAppliedValues, selectTooltipAxis, selectTooltipAxisType],
276
- combineDuplicateDomain,
277
- );
278
- export var selectTooltipCategoricalDomain = createSelector(
279
- [selectChartLayout, selectAllTooltipAppliedValues, selectTooltipAxis, selectTooltipAxisType],
280
- combineCategoricalDomain,
281
- );
282
- var combineTicksOfTooltipAxis = (
283
- layout,
284
- axis,
285
- realScaleType,
286
- scale,
287
- range,
288
- duplicateDomain,
289
- categoricalDomain,
290
- axisType,
291
- ) => {
292
- if (!axis) {
293
- return undefined;
294
- }
295
- var type = axis.type;
296
- var isCategorical = isCategoricalAxis(layout, axisType);
297
- if (!scale) {
298
- return undefined;
299
- }
300
- var offsetForBand = realScaleType === 'scaleBand' && scale.bandwidth ? scale.bandwidth() / 2 : 2;
301
- var offset = type === 'category' && scale.bandwidth ? scale.bandwidth() / offsetForBand : 0;
302
- offset =
303
- axisType === 'angleAxis' &&
304
- range != null &&
305
- (range === null || range === void 0 ? void 0 : range.length) >= 2
306
- ? mathSign(range[0] - range[1]) * 2 * offset
307
- : offset;
308
-
309
- // When axis is a categorical axis, but the type of axis is number or the scale of axis is not "auto"
310
- if (isCategorical && categoricalDomain) {
311
- return categoricalDomain
312
- .map((entry, index) => {
313
- var scaled = scale.map(entry);
314
- if (!isWellBehavedNumber(scaled)) {
315
- return null;
316
- }
317
- return {
318
- coordinate: scaled + offset,
319
- value: entry,
320
- index,
321
- offset,
322
- };
323
- })
324
- .filter(isNotNil);
325
- }
326
-
327
- // When axis has duplicated text, serial numbers are used to generate scale
328
- return scale
329
- .domain()
330
- .map((entry, index) => {
331
- var scaled = scale.map(entry);
332
- if (!isWellBehavedNumber(scaled)) {
333
- return null;
334
- }
335
- return {
336
- coordinate: scaled + offset,
337
- // @ts-expect-error can't use Date as an index
338
- value: duplicateDomain ? duplicateDomain[entry] : entry,
339
- index,
340
- offset,
341
- };
342
- })
343
- .filter(isNotNil);
344
- };
345
-
346
- /**
347
- * Of on four almost identical implementations of tick generation.
348
- * The four horsemen of tick generation are:
349
- * - {@link selectTooltipAxisTicks}
350
- * - {@link combineAxisTicks}
351
- * - {@link getTicksOfAxis}.
352
- * - {@link combineGraphicalItemTicks}
353
- */
354
- export var selectTooltipAxisTicks = createSelector(
355
- [
356
- selectChartLayout,
357
- selectTooltipAxis,
358
- selectTooltipAxisRealScaleType,
359
- selectTooltipAxisScale,
360
- selectTooltipAxisRange,
361
- selectTooltipDuplicateDomain,
362
- selectTooltipCategoricalDomain,
363
- selectTooltipAxisType,
364
- ],
365
- combineTicksOfTooltipAxis,
366
- );
367
- var selectTooltipEventType = createSelector(
368
- [selectDefaultTooltipEventType, selectValidateTooltipEventTypes, selectTooltipSettings],
369
- (defaultTooltipEventType, validateTooltipEventType, settings) =>
370
- combineTooltipEventType(settings.shared, defaultTooltipEventType, validateTooltipEventType),
371
- );
372
- var selectTooltipTrigger = (state) => state.tooltip.settings.trigger;
373
- var selectDefaultIndex = (state) => state.tooltip.settings.defaultIndex;
374
- var selectTooltipInteractionState = createSelector(
375
- [selectTooltipState, selectTooltipEventType, selectTooltipTrigger, selectDefaultIndex],
376
- combineTooltipInteractionState,
377
- );
378
- export var selectActiveTooltipIndex = createSelector(
379
- [
380
- selectTooltipInteractionState,
381
- selectTooltipDisplayedData,
382
- selectTooltipAxisDataKey,
383
- selectTooltipAxisDomain,
384
- ],
385
- combineActiveTooltipIndex,
386
- );
387
- export var selectActiveLabel = createSelector(
388
- [selectTooltipAxisTicks, selectActiveTooltipIndex],
389
- combineActiveLabel,
390
- );
391
- export var selectActiveTooltipDataKey = createSelector(
392
- [selectTooltipInteractionState],
393
- (tooltipInteraction) => {
394
- if (!tooltipInteraction) {
395
- return undefined;
396
- }
397
- return tooltipInteraction.dataKey;
398
- },
399
- );
400
- export var selectActiveTooltipGraphicalItemId = createSelector(
401
- [selectTooltipInteractionState],
402
- (tooltipInteraction) => {
403
- if (!tooltipInteraction) {
404
- return undefined;
405
- }
406
- return tooltipInteraction.graphicalItemId;
407
- },
408
- );
409
- var selectTooltipPayloadConfigurations = createSelector(
410
- [selectTooltipState, selectTooltipEventType, selectTooltipTrigger, selectDefaultIndex],
411
- combineTooltipPayloadConfigurations,
412
- );
413
- var selectTooltipCoordinateForDefaultIndex = createSelector(
414
- [
415
- selectChartWidth,
416
- selectChartHeight,
417
- selectChartLayout,
418
- selectChartOffsetInternal,
419
- selectTooltipAxisTicks,
420
- selectDefaultIndex,
421
- selectTooltipPayloadConfigurations,
422
- ],
423
- combineCoordinateForDefaultIndex,
424
- );
425
- export var selectActiveTooltipCoordinate = createSelector(
426
- [selectTooltipInteractionState, selectTooltipCoordinateForDefaultIndex],
427
- (tooltipInteractionState, defaultIndexCoordinate) => {
428
- if (
429
- tooltipInteractionState !== null &&
430
- tooltipInteractionState !== void 0 &&
431
- tooltipInteractionState.coordinate
432
- ) {
433
- return tooltipInteractionState.coordinate;
434
- }
435
- return defaultIndexCoordinate;
436
- },
437
- );
438
- export var selectIsTooltipActive = createSelector(
439
- [selectTooltipInteractionState],
440
- (tooltipInteractionState) => {
441
- var _tooltipInteractionSt;
442
- return (_tooltipInteractionSt =
443
- tooltipInteractionState === null || tooltipInteractionState === void 0
444
- ? void 0
445
- : tooltipInteractionState.active) !== null && _tooltipInteractionSt !== void 0
446
- ? _tooltipInteractionSt
447
- : false;
448
- },
449
- );
450
- export var selectActiveTooltipPayload = createSelector(
451
- [
452
- selectTooltipPayloadConfigurations,
453
- selectActiveTooltipIndex,
454
- selectChartDataWithIndexes,
455
- selectTooltipAxisDataKey,
456
- selectActiveLabel,
457
- selectTooltipPayloadSearcher,
458
- selectTooltipEventType,
459
- ],
460
- combineTooltipPayload,
461
- );
462
- export var selectActiveTooltipDataPoints = createSelector(
463
- [selectActiveTooltipPayload],
464
- (payload) => {
465
- if (payload == null) {
466
- return undefined;
467
- }
468
- var dataPoints = payload.map((p) => p.payload).filter((p) => p != null);
469
- return Array.from(new Set(dataPoints));
470
- },
471
- );