@octanejs/recharts 0.1.50 → 0.1.52

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 (158) hide show
  1. package/package.json +5 -5
  2. package/src/animation/AnimationController.ts +1 -1
  3. package/src/animation/AnimationControllerImpl.ts +2 -2
  4. package/src/animation/AnimationHandle.ts +1 -1
  5. package/src/animation/CSSTransitionAnimate.tsrx +2 -8
  6. package/src/animation/matchBy.ts +1 -1
  7. package/src/cartesian/Area.tsrx +23 -19
  8. package/src/cartesian/AreaRevealShape.tsrx +2 -2
  9. package/src/cartesian/CartesianGrid.tsrx +6 -6
  10. package/src/cartesian/ErrorBar.tsrx +5 -5
  11. package/src/cartesian/Funnel.tsrx +30 -27
  12. package/src/cartesian/ReferenceLine.tsrx +10 -7
  13. package/src/cartesian/Scatter.tsrx +41 -33
  14. package/src/cartesian/ZAxis.tsrx +4 -4
  15. package/src/cartesian/getCartesianPosition.ts +2 -2
  16. package/src/cartesian/getEquidistantTicks.ts +2 -2
  17. package/src/cartesian/getTicks.ts +2 -2
  18. package/src/chart/AreaChart.tsrx +1 -1
  19. package/src/chart/ComposedChart.tsrx +1 -1
  20. package/src/chart/FunnelChart.tsrx +1 -1
  21. package/src/chart/PieChart.tsrx +1 -1
  22. package/src/chart/PolarChart.tsrx +3 -3
  23. package/src/chart/RadarChart.tsrx +1 -1
  24. package/src/chart/RadialBarChart.tsrx +1 -1
  25. package/src/chart/Sankey.tsrx +9 -9
  26. package/src/chart/ScatterChart.tsrx +1 -1
  27. package/src/chart/SunburstChart.tsrx +14 -8
  28. package/src/component/Cursor.tsrx +7 -7
  29. package/src/component/DefaultLegendContent.tsrx +5 -5
  30. package/src/component/DefaultTooltipContent.tsrx +2 -2
  31. package/src/component/Legend.tsrx +8 -8
  32. package/src/component/Tooltip.tsrx +12 -12
  33. package/src/component/TooltipBoundingBox.tsrx +2 -2
  34. package/src/context/legendPayloadContext.tsrx +1 -1
  35. package/src/context/tooltipContext.ts +2 -2
  36. package/src/context/useTooltipAxis.ts +1 -1
  37. package/src/hooks.ts +6 -6
  38. package/src/polar/Pie.tsrx +28 -28
  39. package/src/polar/PolarAngleAxis.tsrx +16 -16
  40. package/src/polar/PolarGrid.tsrx +3 -3
  41. package/src/polar/PolarRadiusAxis.tsrx +17 -17
  42. package/src/polar/Radar.tsrx +10 -10
  43. package/src/polar/RadialBar.tsrx +29 -29
  44. package/src/polar/defaultPolarAngleAxisProps.ts +1 -1
  45. package/src/polar/defaultPolarRadiusAxisProps.ts +1 -1
  46. package/src/state/ReportPolarOptions.tsrx +1 -1
  47. package/src/state/brushSlice.ts +2 -2
  48. package/src/state/cartesianAxisSlice.ts +4 -4
  49. package/src/state/chartDataSlice.ts +2 -2
  50. package/src/state/errorBarSlice.ts +4 -4
  51. package/src/state/eventSettingsSlice.ts +2 -2
  52. package/src/state/externalEventsMiddleware.ts +5 -5
  53. package/src/state/graphicalItemsSlice.ts +11 -11
  54. package/src/state/keyboardEventsMiddleware.ts +3 -3
  55. package/src/state/layoutSlice.ts +2 -2
  56. package/src/state/legendSlice.ts +3 -3
  57. package/src/state/mouseEventsMiddleware.ts +4 -4
  58. package/src/state/optionsSlice.ts +2 -2
  59. package/src/state/polarAxisSlice.ts +2 -2
  60. package/src/state/polarOptionsSlice.ts +1 -1
  61. package/src/state/referenceElementsSlice.ts +5 -5
  62. package/src/state/renderedTicksSlice.ts +4 -4
  63. package/src/state/rootPropsSlice.ts +4 -4
  64. package/src/state/selectors/areaSelectors.ts +7 -7
  65. package/src/state/selectors/axisSelectors.ts +22 -18
  66. package/src/state/selectors/barSelectors.ts +11 -11
  67. package/src/state/selectors/brushSelectors.ts +2 -2
  68. package/src/state/selectors/combiners/combineActiveLabel.ts +3 -3
  69. package/src/state/selectors/combiners/combineActiveTooltipIndex.ts +3 -3
  70. package/src/state/selectors/combiners/combineAllBarPositions.ts +3 -3
  71. package/src/state/selectors/combiners/combineAxisRangeWithReverse.ts +2 -2
  72. package/src/state/selectors/combiners/combineBarPosition.ts +3 -3
  73. package/src/state/selectors/combiners/combineBarSizeList.ts +5 -5
  74. package/src/state/selectors/combiners/combineCheckedDomain.ts +1 -1
  75. package/src/state/selectors/combiners/combineConfiguredScale.ts +4 -4
  76. package/src/state/selectors/combiners/combineCoordinateForDefaultIndex.ts +2 -2
  77. package/src/state/selectors/combiners/combineDisplayedStackedData.ts +4 -4
  78. package/src/state/selectors/combiners/combineInverseScaleFunction.ts +2 -2
  79. package/src/state/selectors/combiners/combineRealScaleType.ts +2 -2
  80. package/src/state/selectors/combiners/combineStackedData.ts +2 -2
  81. package/src/state/selectors/combiners/combineTooltipInteractionState.ts +5 -5
  82. package/src/state/selectors/combiners/combineTooltipPayload.ts +4 -4
  83. package/src/state/selectors/combiners/combineTooltipPayloadConfigurations.ts +4 -4
  84. package/src/state/selectors/containerSelectors.ts +2 -2
  85. package/src/state/selectors/dataSelectors.ts +2 -2
  86. package/src/state/selectors/funnelSelectors.ts +5 -5
  87. package/src/state/selectors/graphicalItemSelectors.ts +3 -3
  88. package/src/state/selectors/legendSelectors.ts +4 -4
  89. package/src/state/selectors/lineSelectors.ts +6 -6
  90. package/src/state/selectors/numberDomainEqualityCheck.ts +1 -1
  91. package/src/state/selectors/pickAxisId.ts +2 -2
  92. package/src/state/selectors/pickAxisType.ts +1 -1
  93. package/src/state/selectors/pieSelectors.ts +5 -5
  94. package/src/state/selectors/polarAxisSelectors.ts +6 -6
  95. package/src/state/selectors/polarGridSelectors.ts +3 -3
  96. package/src/state/selectors/polarScaleSelectors.ts +4 -4
  97. package/src/state/selectors/polarSelectors.ts +6 -6
  98. package/src/state/selectors/radarSelectors.ts +11 -11
  99. package/src/state/selectors/radialBarSelectors.ts +16 -16
  100. package/src/state/selectors/rootPropsSelectors.ts +4 -4
  101. package/src/state/selectors/scatterSelectors.ts +8 -8
  102. package/src/state/selectors/selectActivePropsFromChartPointer.ts +3 -3
  103. package/src/state/selectors/selectAllAxes.ts +2 -2
  104. package/src/state/selectors/selectChartOffset.ts +2 -2
  105. package/src/state/selectors/selectChartOffsetInternal.ts +4 -4
  106. package/src/state/selectors/selectTooltipAxisId.ts +2 -2
  107. package/src/state/selectors/selectTooltipAxisType.ts +1 -1
  108. package/src/state/selectors/selectTooltipEventType.ts +3 -3
  109. package/src/state/selectors/selectTooltipPayloadSearcher.ts +2 -2
  110. package/src/state/selectors/selectTooltipSettings.ts +2 -2
  111. package/src/state/selectors/selectTooltipState.ts +2 -2
  112. package/src/state/selectors/selectors.ts +5 -5
  113. package/src/state/selectors/tooltipSelectors.ts +16 -16
  114. package/src/state/selectors/touchSelectors.ts +4 -4
  115. package/src/state/store.ts +3 -3
  116. package/src/state/tooltipSlice.ts +5 -5
  117. package/src/state/touchEventsMiddleware.ts +4 -4
  118. package/src/state/types/AreaSettings.ts +5 -5
  119. package/src/state/types/BarSettings.ts +3 -3
  120. package/src/state/types/LineSettings.ts +3 -3
  121. package/src/state/types/PieSettings.ts +5 -5
  122. package/src/state/types/RadarSettings.ts +1 -1
  123. package/src/state/types/RadialBarSettings.ts +2 -2
  124. package/src/state/types/ScatterSettings.ts +4 -4
  125. package/src/state/types/StackedGraphicalItem.ts +3 -3
  126. package/src/state/zIndexSlice.ts +1 -1
  127. package/src/synchronisation/syncSelectors.ts +2 -2
  128. package/src/synchronisation/types.ts +2 -2
  129. package/src/util/CartesianUtils.ts +1 -1
  130. package/src/util/ChartUtils.ts +8 -8
  131. package/src/util/DOMUtils.ts +1 -1
  132. package/src/util/DataUtils.ts +1 -1
  133. package/src/util/Events.ts +3 -3
  134. package/src/util/FunnelUtils.tsrx +2 -2
  135. package/src/util/OctaneTypes.ts +7 -6
  136. package/src/util/PolarUtils.ts +1 -1
  137. package/src/util/RadialBarUtils.tsrx +2 -2
  138. package/src/util/ScatterUtils.tsrx +4 -4
  139. package/src/util/TickUtils.ts +1 -1
  140. package/src/util/axisPropsAreEqual.ts +3 -3
  141. package/src/util/cursor/getCursorPoints.ts +6 -6
  142. package/src/util/cursor/getCursorRectangle.ts +1 -1
  143. package/src/util/cursor/getRadialCursorPoints.ts +1 -1
  144. package/src/util/getActiveCoordinate.ts +2 -2
  145. package/src/util/getAxisTypeBasedOnLayout.ts +1 -1
  146. package/src/util/getRadiusAndStrokeWidthFromDot.ts +1 -1
  147. package/src/util/getRelativeCoordinate.ts +1 -1
  148. package/src/util/isDomainSpecifiedByUser.ts +1 -1
  149. package/src/util/scale/CartesianScaleHelper.ts +2 -2
  150. package/src/util/scale/CustomScaleDefinition.ts +1 -1
  151. package/src/util/scale/RechartsScale.ts +2 -2
  152. package/src/util/scale/createCategoricalInverse.ts +2 -2
  153. package/src/util/scale/getNiceTickValues.ts +2 -2
  154. package/src/util/stacks/getStackSeriesIdentifier.ts +2 -2
  155. package/src/util/stacks/stackTypes.ts +4 -4
  156. package/src/util/tooltip/translate.ts +1 -1
  157. package/src/util/types.ts +12 -12
  158. package/src/zIndex/zIndexSelectors.ts +1 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@octanejs/recharts",
3
- "version": "0.1.50",
3
+ "version": "0.1.52",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "engines": {
@@ -49,13 +49,13 @@
49
49
  "octane": "^0.1.51 || ^0.2.0"
50
50
  },
51
51
  "devDependencies": {
52
- "@tsrx/react": "^0.2.67",
52
+ "@tsrx/react": "^0.3.0",
53
53
  "esbuild": "^0.28.1",
54
- "react": "^19.2.7",
55
- "react-dom": "^19.2.7",
54
+ "react": "19.2.7",
55
+ "react-dom": "19.2.7",
56
56
  "recharts": "3.9.2",
57
57
  "vitest": "^4.1.10",
58
- "octane": "0.2.4"
58
+ "octane": "0.2.14"
59
59
  },
60
60
  "scripts": {
61
61
  "test": "vitest run"
@@ -1,6 +1,6 @@
1
1
  // Adapted from recharts@3.9.2, commit b3451050c027a23957ffa50a2665c9119df21e47.
2
2
  import type { CancelableTimeout, TimeoutController } from './timeoutController';
3
- import { AnimationHandle } from './AnimationHandle';
3
+ import type { AnimationHandle } from './AnimationHandle';
4
4
 
5
5
  /**
6
6
  * JavaScript animations produce numbers and CSS transitions produce strings.
@@ -1,10 +1,10 @@
1
1
  // Adapted from recharts@3.9.2, commit b3451050c027a23957ffa50a2665c9119df21e47.
2
- import {
2
+ import type {
3
3
  AnimationController,
4
4
  AnimationControllerHandle,
5
5
  OnAnimationStateUpdate,
6
6
  } from './AnimationController';
7
- import { CancelableTimeout, TimeoutController } from './timeoutController';
7
+ import type { CancelableTimeout, TimeoutController } from './timeoutController';
8
8
 
9
9
  /**
10
10
  * JavaScript animations require trigger and repaint as soon as possible,
@@ -1,7 +1,7 @@
1
1
  // Adapted from recharts@3.9.2, commit b3451050c027a23957ffa50a2665c9119df21e47.
2
2
  // eslint-disable-next-line max-classes-per-file
3
3
  import { interpolate } from '../util/DataUtils';
4
- import { EasingFunction, NamedBezier } from './easing';
4
+ import type { EasingFunction, NamedBezier } from './easing';
5
5
 
6
6
  const INIT = 'init' as const;
7
7
  const PENDING = 'pending' as const;
@@ -1,7 +1,7 @@
1
+ import type { CSSProperties } from 'octane';
1
2
  import type { OctaneNode } from '../util/OctaneTypes.ts';
2
3
  import * as React from 'octane';
3
4
  import { useCallback, useEffect, useRef, useState } from 'octane';
4
- import type { Octane } from 'octane/jsx-runtime';
5
5
  import { noop } from '../util/DataUtils';
6
6
  import { resolveDefaultProps } from '../util/resolveDefaultProps';
7
7
  import { useAnimationController } from './useAnimationController';
@@ -10,15 +10,9 @@ import { Global } from '../util/Global';
10
10
  import { usePrefersReducedMotion } from '../util/usePrefersReducedMotion';
11
11
  import { CSSTransitionAnimation } from './AnimationHandle';
12
12
  import { RequestAnimationFrameTimeoutController } from './timeoutController';
13
- import { EasingInput, NamedBezier } from './easing';
13
+ import type { EasingInput, NamedBezier } from './easing';
14
14
  import type { AnimationController } from './AnimationController';
15
15
 
16
- // `octane` does not export `CSSProperties`. The object form of octane's JSX
17
- // `style` prop is the type this render prop hands out, so take it from there
18
- // (`octane/jsx-runtime` types it as `string | CSSProperties`) rather than
19
- // importing @types/react, which this package does not depend on.
20
- type CSSProperties = Exclude<NonNullable<Octane.HTMLAttributes<Element>['style']>, string>;
21
-
22
16
  type CSSTransitionAnimateProps = {
23
17
  animationId: string;
24
18
  animationController?: AnimationController;
@@ -1,5 +1,5 @@
1
1
  // Adapted from recharts@3.9.2, commit b3451050c027a23957ffa50a2665c9119df21e47.
2
- import { DataKey } from '../util/types';
2
+ import type { DataKey } from '../util/types';
3
3
  import { getValueByDataKey } from '../util/ChartUtils';
4
4
 
5
5
  /**
@@ -2,24 +2,24 @@ import type { MutableRefObject, OctaneElement, OctaneNode } from '../util/Octane
2
2
  import * as React from 'octane';
3
3
  import { useMemo, useRef } from 'octane';
4
4
  import { clsx } from 'clsx';
5
- import { BaseLineType, CurveType, Props as CurveProps } from '../shape/Curve.tsrx';
5
+ import type { BaseLineType, CurveType, Props as CurveProps } from '../shape/Curve.tsrx';
6
6
  import { Layer } from '../container/Layer.tsrx';
7
7
  import {
8
8
  CartesianLabelListContextProvider,
9
- CartesianLabelListEntry,
10
- ImplicitLabelListType,
9
+ type CartesianLabelListEntry,
10
+ type ImplicitLabelListType,
11
11
  LabelListFromLabelProp,
12
12
  } from '../component/LabelList.tsrx';
13
- import { Dots, DotsDotProps } from '../component/Dots.tsrx';
13
+ import { Dots, type DotsDotProps } from '../component/Dots.tsrx';
14
14
  import { interpolate, isNan, isNullish, isNumber, noop } from '../util/DataUtils';
15
15
  import {
16
16
  getCateCoordinateOfLine,
17
17
  getNormalizedStackId,
18
18
  getTooltipNameProp,
19
19
  getValueByDataKey,
20
- StackId,
20
+ type StackId,
21
21
  } from '../util/ChartUtils';
22
- import {
22
+ import type {
23
23
  ActiveDotType,
24
24
  ActiveShape,
25
25
  AnimationDuration,
@@ -37,14 +37,18 @@ import {
37
37
  } from '../util/types';
38
38
  import { isClipDot } from '../util/ReactUtils';
39
39
  import type { LegendPayload } from '../component/DefaultLegendContent.tsrx';
40
- import { Formatter } from '../component/DefaultTooltipContent.tsrx';
40
+ import type { Formatter } from '../component/DefaultTooltipContent.tsrx';
41
41
  import { ActivePoints } from '../component/ActivePoints.tsrx';
42
- import { TooltipPayloadConfiguration } from '../state/tooltipSlice';
42
+ import type { TooltipPayloadConfiguration } from '../state/tooltipSlice';
43
43
  import { SetTooltipEntrySettings } from '../state/SetTooltipEntrySettings';
44
44
  import { GraphicalItemClipPath, useNeedsClip } from './GraphicalItemClipPath.tsrx';
45
- import { BaseAxisWithScale } from '../state/selectors/axisSelectors';
46
- import { ChartData } from '../state/chartDataSlice';
47
- import { AreaPointItem, ComputedArea, selectArea } from '../state/selectors/areaSelectors';
45
+ import type { BaseAxisWithScale } from '../state/selectors/axisSelectors';
46
+ import type { ChartData } from '../state/chartDataSlice';
47
+ import {
48
+ type AreaPointItem,
49
+ type ComputedArea,
50
+ selectArea,
51
+ } from '../state/selectors/areaSelectors';
48
52
  import { useIsPanorama } from '../context/PanoramaContext';
49
53
  import { useCartesianChartLayout, useChartLayout } from '../context/chartLayoutContext';
50
54
  import { useChartName } from '../state/selectors/selectors';
@@ -52,19 +56,19 @@ import { SetLegendPayload } from '../state/SetLegendPayload';
52
56
  import { useAppSelector } from '../state/hooks';
53
57
  import {
54
58
  AnimatedItems,
55
- AnimationInterpolateFn,
59
+ type AnimationInterpolateFn,
56
60
  useAnimationCallbacks,
57
61
  } from '../animation/AnimatedItems.tsrx';
58
62
  import {
59
- AnimationItem,
60
- AnimationMatchByProp,
63
+ type AnimationItem,
64
+ type AnimationMatchByProp,
61
65
  matchAnimationItems,
62
66
  matchByIndex,
63
67
  } from '../animation/matchBy';
64
68
  import { useAnimationStartSnapshot } from '../animation/useAnimationStartSnapshot';
65
- import { RequiresDefaultProps, resolveDefaultProps } from '../util/resolveDefaultProps';
69
+ import { type RequiresDefaultProps, resolveDefaultProps } from '../util/resolveDefaultProps';
66
70
  import { usePlotArea } from '../hooks';
67
- import { WithIdRequired, WithoutId } from '../util/useUniqueId';
71
+ import type { WithIdRequired, WithoutId } from '../util/useUniqueId';
68
72
  import { RegisterGraphicalItemId } from '../context/RegisterGraphicalItemId.tsrx';
69
73
  import type { AreaSettings } from '../state/types/AreaSettings';
70
74
  import { SetCartesianGraphicalItem } from '../state/SetGraphicalItem';
@@ -72,12 +76,12 @@ import { svgPropertiesNoEvents } from '../util/svgPropertiesNoEvents';
72
76
  import { getRadiusAndStrokeWidthFromDot } from '../util/getRadiusAndStrokeWidthFromDot';
73
77
  import { svgPropertiesAndEvents } from '../util/svgPropertiesAndEvents';
74
78
  import { Shape } from '../util/ActiveShapeUtils.tsrx';
75
- import { ZIndexable, ZIndexLayer } from '../zIndex/ZIndexLayer.tsrx';
79
+ import { type ZIndexable, ZIndexLayer } from '../zIndex/ZIndexLayer.tsrx';
76
80
  import { DefaultZIndexes } from '../zIndex/DefaultZIndexes';
77
81
  import { propsAreEqual } from '../util/propsAreEqual';
78
- import { AxisId } from '../state/cartesianAxisSlice';
82
+ import type { AxisId } from '../state/cartesianAxisSlice';
79
83
  import type { StackDataPoint } from '../util/stacks/stackTypes';
80
- import { AreaRevealShape, AreaRevealShapeProps } from './AreaRevealShape.tsrx';
84
+ import { AreaRevealShape, type AreaRevealShapeProps } from './AreaRevealShape.tsrx';
81
85
 
82
86
  /**
83
87
  * @inline
@@ -1,8 +1,8 @@
1
1
  import type { OctaneElement } from '../util/OctaneTypes.ts';
2
2
  import * as React from 'octane';
3
3
  import { isNumber } from '../util/DataUtils';
4
- import { Curve, BaseLineType, Props as CurveProps } from '../shape/Curve.tsrx';
5
- import { CartesianLayout, LayoutType, ShapeAnimationProps } from '../util/types';
4
+ import { Curve, type BaseLineType, type Props as CurveProps } from '../shape/Curve.tsrx';
5
+ import type { CartesianLayout, LayoutType, ShapeAnimationProps } from '../util/types';
6
6
  import { isWellBehavedNumber } from '../util/isWellBehavedNumber';
7
7
  import { Layer } from '../container/Layer.tsrx';
8
8
  import { svgPropertiesNoEvents } from '../util/svgPropertiesNoEvents';
@@ -3,26 +3,26 @@ import * as React from 'octane';
3
3
 
4
4
  import { warn } from '../util/LogUtils';
5
5
  import { isNumber } from '../util/DataUtils';
6
- import { ChartOffsetInternal } from '../util/types';
6
+ import type { ChartOffsetInternal } from '../util/types';
7
7
 
8
8
  import {
9
- AxisPropsNeededForTicksGenerator,
9
+ type AxisPropsNeededForTicksGenerator,
10
10
  getCoordinatesOfGrid,
11
11
  getTicksOfAxis,
12
12
  } from '../util/ChartUtils';
13
- import { getTicks, GetTicksInput } from './getTicks';
13
+ import { getTicks, type GetTicksInput } from './getTicks';
14
14
  import { defaultCartesianAxisProps } from './CartesianAxis.tsrx';
15
15
  import { useChartHeight, useChartWidth, useOffsetInternal } from '../context/chartLayoutContext';
16
- import { AxisId } from '../state/cartesianAxisSlice';
16
+ import type { AxisId } from '../state/cartesianAxisSlice';
17
17
  import {
18
18
  selectAxisPropsNeededForCartesianGridTicksGenerator,
19
19
  } from '../state/selectors/axisSelectors';
20
20
  import { useAppSelector } from '../state/hooks';
21
21
  import { useIsPanorama } from '../context/PanoramaContext';
22
- import { RequiresDefaultProps, resolveDefaultProps } from '../util/resolveDefaultProps';
22
+ import { type RequiresDefaultProps, resolveDefaultProps } from '../util/resolveDefaultProps';
23
23
  import { svgPropertiesNoEvents } from '../util/svgPropertiesNoEvents';
24
24
  import { isPositiveNumber } from '../util/isWellBehavedNumber';
25
- import { ZIndexable, ZIndexLayer } from '../zIndex/ZIndexLayer.tsrx';
25
+ import { type ZIndexable, ZIndexLayer } from '../zIndex/ZIndexLayer.tsrx';
26
26
  import { DefaultZIndexes } from '../zIndex/DefaultZIndexes';
27
27
 
28
28
  /**
@@ -5,17 +5,17 @@ import type { SVGProps } from '../util/OctaneTypes.ts';
5
5
  import * as React from 'octane';
6
6
 
7
7
  import { Layer } from '../container/Layer.tsrx';
8
- import { EasingInput, DataKey, RectangleCoordinate } from '../util/types';
9
- import { BarRectangleItem } from './Bar';
10
- import { LinePointItem } from './Line';
11
- import { ScatterPointItem } from './Scatter.tsrx';
8
+ import type { EasingInput, DataKey, RectangleCoordinate } from '../util/types';
9
+ import type { BarRectangleItem } from './Bar';
10
+ import type { LinePointItem } from './Line';
11
+ import type { ScatterPointItem } from './Scatter.tsrx';
12
12
  import { ReportErrorBarSettings, useErrorBarContext } from '../context/ErrorBarContext.tsrx';
13
13
  import { useXAxis, useYAxis } from '../hooks';
14
14
  import { resolveDefaultProps } from '../util/resolveDefaultProps';
15
15
  import { svgPropertiesNoEvents } from '../util/svgPropertiesNoEvents';
16
16
  import { useChartLayout } from '../context/chartLayoutContext';
17
17
  import { CSSTransitionAnimate, extractCssEasing } from '../animation/CSSTransitionAnimate.tsrx';
18
- import { ZIndexable, ZIndexLayer } from '../zIndex/ZIndexLayer.tsrx';
18
+ import { type ZIndexable, ZIndexLayer } from '../zIndex/ZIndexLayer.tsrx';
19
19
  import { DefaultZIndexes } from '../zIndex/DefaultZIndexes';
20
20
 
21
21
  export interface ErrorBarDataItem {
@@ -8,60 +8,63 @@ import { clsx } from 'clsx';
8
8
  import { selectActiveIndex } from '../state/selectors/selectors';
9
9
  import { useAppSelector } from '../state/hooks';
10
10
  import { Layer } from '../container/Layer.tsrx';
11
- import { Props as TrapezoidProps } from '../shape/Trapezoid.tsrx';
11
+ import type { Props as TrapezoidProps } from '../shape/Trapezoid.tsrx';
12
12
  import {
13
13
  CartesianLabelListContextProvider,
14
- CartesianLabelListEntry,
15
- ImplicitLabelListType,
14
+ type CartesianLabelListEntry,
15
+ type ImplicitLabelListType,
16
16
  LabelListFromLabelProp,
17
17
  } from '../component/LabelList.tsrx';
18
18
  import { getPercentValue, interpolate } from '../util/DataUtils';
19
19
  import { getValueByDataKey } from '../util/ChartUtils';
20
20
  import {
21
- ActiveShape,
21
+ type ActiveShape,
22
22
  adaptEventsOfChild,
23
- AnimationDuration,
24
- EasingInput,
25
- CartesianViewBoxRequired,
26
- ChartOffsetInternal,
27
- Coordinate,
28
- DataConsumer,
29
- DataKey,
30
- DataProvider,
31
- LegendType,
32
- PresentationAttributesAdaptChildEvent,
33
- ShapeAnimationProps,
34
- TooltipType,
35
- TrapezoidViewBox,
36
- CartesianLayout,
23
+ type AnimationDuration,
24
+ type EasingInput,
25
+ type CartesianViewBoxRequired,
26
+ type ChartOffsetInternal,
27
+ type Coordinate,
28
+ type DataConsumer,
29
+ type DataKey,
30
+ type DataProvider,
31
+ type LegendType,
32
+ type PresentationAttributesAdaptChildEvent,
33
+ type ShapeAnimationProps,
34
+ type TooltipType,
35
+ type TrapezoidViewBox,
36
+ type CartesianLayout,
37
37
  } from '../util/types';
38
38
  import {
39
39
  defaultFunnelShape,
40
40
  FunnelTrapezoid,
41
- FunnelTrapezoidProps,
41
+ type FunnelTrapezoidProps,
42
42
  } from '../util/FunnelUtils.tsrx';
43
43
  import {
44
44
  useMouseClickItemDispatch,
45
45
  useMouseEnterItemDispatch,
46
46
  useMouseLeaveItemDispatch,
47
47
  } from '../context/tooltipContext';
48
- import { TooltipPayload, TooltipPayloadConfiguration } from '../state/tooltipSlice';
48
+ import type { TooltipPayload, TooltipPayloadConfiguration } from '../state/tooltipSlice';
49
49
  import { SetTooltipEntrySettings } from '../state/SetTooltipEntrySettings';
50
- import { Formatter } from '../component/DefaultTooltipContent.tsrx';
50
+ import type { Formatter } from '../component/DefaultTooltipContent.tsrx';
51
51
  import type { LegendPayload } from '../component/DefaultLegendContent.tsrx';
52
- import { ResolvedFunnelSettings, selectFunnelTrapezoids } from '../state/selectors/funnelSelectors';
53
- import { RequiresDefaultProps, resolveDefaultProps } from '../util/resolveDefaultProps';
52
+ import {
53
+ type ResolvedFunnelSettings,
54
+ selectFunnelTrapezoids,
55
+ } from '../state/selectors/funnelSelectors';
56
+ import { type RequiresDefaultProps, resolveDefaultProps } from '../util/resolveDefaultProps';
54
57
  import { usePlotArea } from '../hooks';
55
58
  import { svgPropertiesNoEvents } from '../util/svgPropertiesNoEvents';
56
59
  import {
57
60
  AnimatedItems,
58
- AnimationInterpolateFn,
61
+ type AnimationInterpolateFn,
59
62
  useAnimationCallbacks,
60
63
  } from '../animation/AnimatedItems.tsrx';
61
- import { AnimationMatchByProp, matchAppend } from '../animation/matchBy';
62
- import { GraphicalItemId } from '../state/graphicalItemsSlice';
64
+ import { type AnimationMatchByProp, matchAppend } from '../animation/matchBy';
65
+ import type { GraphicalItemId } from '../state/graphicalItemsSlice';
63
66
  import { RegisterGraphicalItemId } from '../context/RegisterGraphicalItemId.tsrx';
64
- import { WithIdRequired } from '../util/useUniqueId';
67
+ import type { WithIdRequired } from '../util/useUniqueId';
65
68
  import { SetLegendPayload } from '../state/SetLegendPayload';
66
69
  import { CellsContext, useCellRegistry } from '../context/CellsContext';
67
70
  import { useCartesianChartLayout } from '../context/chartLayoutContext';
@@ -9,14 +9,14 @@ import { Layer } from '../container/Layer.tsrx';
9
9
  import {
10
10
  CartesianLabelContextProvider,
11
11
  CartesianLabelFromLabelProp,
12
- ImplicitLabelType,
12
+ type ImplicitLabelType,
13
13
  } from '../component/Label.tsrx';
14
14
  import type { IfOverflow, Overflowable } from '../util/IfOverflow';
15
15
  import { isNumOrStr } from '../util/DataUtils';
16
16
  import { rectWithCoords } from '../util/CartesianUtils';
17
- import { CartesianViewBoxRequired, Coordinate } from '../util/types';
17
+ import type { CartesianViewBoxRequired, Coordinate } from '../util/types';
18
18
  import { useViewBox } from '../context/chartLayoutContext';
19
- import { addLine, ReferenceLineSettings, removeLine } from '../state/referenceElementsSlice';
19
+ import { addLine, type ReferenceLineSettings, removeLine } from '../state/referenceElementsSlice';
20
20
  import { useAppDispatch, useAppSelector } from '../state/hooks';
21
21
  import {
22
22
  selectAxisScale,
@@ -27,12 +27,15 @@ import { useIsPanorama } from '../context/PanoramaContext';
27
27
 
28
28
  import { useClipPathId } from '../container/ClipPathProvider.tsrx';
29
29
  import { svgPropertiesAndEvents } from '../util/svgPropertiesAndEvents';
30
- import { RequiresDefaultProps, resolveDefaultProps } from '../util/resolveDefaultProps';
31
- import { ZIndexable, ZIndexLayer } from '../zIndex/ZIndexLayer.tsrx';
30
+ import { type RequiresDefaultProps, resolveDefaultProps } from '../util/resolveDefaultProps';
31
+ import { type ZIndexable, ZIndexLayer } from '../zIndex/ZIndexLayer.tsrx';
32
32
  import { DefaultZIndexes } from '../zIndex/DefaultZIndexes';
33
33
  import { isWellBehavedNumber } from '../util/isWellBehavedNumber';
34
- import { BandPosition, RechartsScale } from '../util/scale/RechartsScale';
35
- import { CartesianScaleHelper, CartesianScaleHelperImpl } from '../util/scale/CartesianScaleHelper';
34
+ import type { BandPosition, RechartsScale } from '../util/scale/RechartsScale';
35
+ import {
36
+ type CartesianScaleHelper,
37
+ CartesianScaleHelperImpl,
38
+ } from '../util/scale/CartesianScaleHelper';
36
39
 
37
40
  /**
38
41
  * Single point that defines one end of a segment.
@@ -14,56 +14,64 @@ import { clsx } from 'clsx';
14
14
  import { Layer } from '../container/Layer.tsrx';
15
15
  import {
16
16
  CartesianLabelListContextProvider,
17
- CartesianLabelListEntry,
18
- ImplicitLabelListType,
17
+ type CartesianLabelListEntry,
18
+ type ImplicitLabelListType,
19
19
  LabelListFromLabelProp,
20
20
  } from '../component/LabelList.tsrx';
21
- import { Curve, CurveType, Props as CurveProps } from '../shape/Curve.tsrx';
22
- import { ErrorBarDataItem, ErrorBarDataPointFormatter, ErrorBarDirection } from './ErrorBar.tsrx';
21
+ import { Curve, type CurveType, type Props as CurveProps } from '../shape/Curve.tsrx';
22
+ import type {
23
+ ErrorBarDataItem,
24
+ ErrorBarDataPointFormatter,
25
+ ErrorBarDirection,
26
+ } from './ErrorBar.tsrx';
23
27
  import { getLinearRegression, interpolate, isNullish } from '../util/DataUtils';
24
28
  import { getCateCoordinateOfLine, getTooltipNameProp, getValueByDataKey } from '../util/ChartUtils';
25
29
  import {
26
- ActiveShape,
30
+ type ActiveShape,
27
31
  adaptEventsOfChild,
28
- AnimationDuration,
29
- EasingInput,
30
- Coordinate,
31
- DataConsumer,
32
- DataKey,
33
- DataProvider,
32
+ type AnimationDuration,
33
+ type EasingInput,
34
+ type Coordinate,
35
+ type DataConsumer,
36
+ type DataKey,
37
+ type DataProvider,
34
38
  isNonEmptyArray,
35
- LegendType,
36
- NonEmptyArray,
37
- NullableCoordinate,
38
- PresentationAttributesAdaptChildEvent,
39
- ShapeAnimationProps,
40
- SymbolType,
41
- TickItem,
42
- TrapezoidViewBox,
43
- CartesianLayout,
39
+ type LegendType,
40
+ type NonEmptyArray,
41
+ type NullableCoordinate,
42
+ type PresentationAttributesAdaptChildEvent,
43
+ type ShapeAnimationProps,
44
+ type SymbolType,
45
+ type TickItem,
46
+ type TrapezoidViewBox,
47
+ type CartesianLayout,
44
48
  } from '../util/types';
45
- import { Formatter, TooltipType } from '../component/DefaultTooltipContent.tsrx';
46
- import { ScatterShapeProps, ScatterSymbol } from '../util/ScatterUtils.tsrx';
47
- import { InnerSymbolsProp } from '../shape/Symbols.tsrx';
49
+ import type { Formatter, TooltipType } from '../component/DefaultTooltipContent.tsrx';
50
+ import { type ScatterShapeProps, ScatterSymbol } from '../util/ScatterUtils.tsrx';
51
+ import type { InnerSymbolsProp } from '../shape/Symbols.tsrx';
48
52
  import type { LegendPayload } from '../component/DefaultLegendContent.tsrx';
49
53
  import {
50
54
  useMouseClickItemDispatch,
51
55
  useMouseEnterItemDispatch,
52
56
  useMouseLeaveItemDispatch,
53
57
  } from '../context/tooltipContext';
54
- import {
58
+ import type {
55
59
  TooltipPayload,
56
60
  TooltipPayloadConfiguration,
57
61
  TooltipPayloadEntry,
58
62
  } from '../state/tooltipSlice';
59
63
  import { SetTooltipEntrySettings } from '../state/SetTooltipEntrySettings';
60
64
  import { SetErrorBarContext } from '../context/ErrorBarContext.tsrx';
61
- import { AxisId } from '../state/cartesianAxisSlice';
65
+ import type { AxisId } from '../state/cartesianAxisSlice';
62
66
  import { GraphicalItemClipPath, useNeedsClip } from './GraphicalItemClipPath.tsrx';
63
67
  import { selectScatterPoints } from '../state/selectors/scatterSelectors';
64
68
  import { useAppSelector } from '../state/hooks';
65
- import { RechartsRootState } from '../state/store';
66
- import { BaseAxisWithScale, implicitZAxis, ZAxisWithScale } from '../state/selectors/axisSelectors';
69
+ import type { RechartsRootState } from '../state/store';
70
+ import {
71
+ type BaseAxisWithScale,
72
+ implicitZAxis,
73
+ type ZAxisWithScale,
74
+ } from '../state/selectors/axisSelectors';
67
75
  import { useIsPanorama } from '../context/PanoramaContext';
68
76
  import { selectActiveTooltipIndex } from '../state/selectors/tooltipSelectors';
69
77
  import { SetLegendPayload } from '../state/SetLegendPayload';
@@ -79,16 +87,16 @@ import {
79
87
  import { useCartesianChartLayout, useViewBox } from '../context/chartLayoutContext';
80
88
  import {
81
89
  AnimatedItems,
82
- AnimationInterpolateFn,
90
+ type AnimationInterpolateFn,
83
91
  useAnimationCallbacks,
84
92
  } from '../animation/AnimatedItems.tsrx';
85
- import { AnimationMatchByProp, matchAppend } from '../animation/matchBy';
86
- import { WithIdRequired, WithoutId } from '../util/useUniqueId';
87
- import { GraphicalItemId } from '../state/graphicalItemsSlice';
88
- import { ZIndexable, ZIndexLayer } from '../zIndex/ZIndexLayer.tsrx';
93
+ import { type AnimationMatchByProp, matchAppend } from '../animation/matchBy';
94
+ import type { WithIdRequired, WithoutId } from '../util/useUniqueId';
95
+ import type { GraphicalItemId } from '../state/graphicalItemsSlice';
96
+ import { type ZIndexable, ZIndexLayer } from '../zIndex/ZIndexLayer.tsrx';
89
97
  import { DefaultZIndexes } from '../zIndex/DefaultZIndexes';
90
98
  import { propsAreEqual } from '../util/propsAreEqual';
91
- import { ChartData } from '../state/chartDataSlice';
99
+ import type { ChartData } from '../state/chartDataSlice';
92
100
  import { CellsContext, useCellRegistry } from '../context/CellsContext';
93
101
 
94
102
  export interface ScatterPointNode {
@@ -1,15 +1,15 @@
1
1
  import * as React from 'octane';
2
2
  import { useLayoutEffect, useRef } from 'octane';
3
- import { AxisDomain, BaseAxisProps, ScaleType } from '../util/types';
3
+ import type { AxisDomain, BaseAxisProps, ScaleType } from '../util/types';
4
4
  import {
5
5
  addZAxis,
6
- AxisId,
6
+ type AxisId,
7
7
  removeZAxis,
8
8
  replaceZAxis,
9
- ZAxisSettings,
9
+ type ZAxisSettings,
10
10
  } from '../state/cartesianAxisSlice';
11
11
  import { useAppDispatch } from '../state/hooks';
12
- import { AxisRange, implicitZAxis } from '../state/selectors/axisSelectors';
12
+ import { type AxisRange, implicitZAxis } from '../state/selectors/axisSelectors';
13
13
  import { resolveDefaultProps } from '../util/resolveDefaultProps';
14
14
  import type { CustomScaleDefinition } from '../util/scale/CustomScaleDefinition';
15
15
 
@@ -1,7 +1,7 @@
1
1
  // Adapted from recharts@3.9.2, commit b3451050c027a23957ffa50a2665c9119df21e47.
2
2
  import { getPercentValue, isNumber, isPercent } from '../util/DataUtils';
3
- import { CartesianViewBoxRequired, TrapezoidViewBox } from '../util/types';
4
- import { TextAnchor, TextVerticalAnchor } from '../component/Text.tsrx';
3
+ import type { CartesianViewBoxRequired, TrapezoidViewBox } from '../util/types';
4
+ import type { TextAnchor, TextVerticalAnchor } from '../component/Text.tsrx';
5
5
  import { cartesianViewBoxToTrapezoid } from '../context/chartLayoutContext';
6
6
 
7
7
  export type CartesianLabelPosition =
@@ -1,8 +1,8 @@
1
1
  // Adapted from recharts@3.9.2, commit b3451050c027a23957ffa50a2665c9119df21e47.
2
2
  import { isVisible } from '../util/TickUtils';
3
- import { CartesianTickItem } from '../util/types';
3
+ import type { CartesianTickItem } from '../util/types';
4
4
  import { getEveryNth } from '../util/getEveryNth';
5
- import { Sign } from './getTicks';
5
+ import type { Sign } from './getTicks';
6
6
 
7
7
  export function getEquidistantTicks(
8
8
  sign: Sign,
@@ -1,5 +1,5 @@
1
1
  // Adapted from recharts@3.9.2, commit b3451050c027a23957ffa50a2665c9119df21e47.
2
- import { CartesianTickItem, CartesianViewBoxRequired, Size } from '../util/types';
2
+ import type { CartesianTickItem, CartesianViewBoxRequired, Size } from '../util/types';
3
3
  import { mathSign, isNumber } from '../util/DataUtils';
4
4
  import { getStringSize } from '../util/DOMUtils';
5
5
  import { Global } from '../util/Global';
@@ -10,7 +10,7 @@ import {
10
10
  getAngledTickWidth,
11
11
  } from '../util/TickUtils';
12
12
  import { getEquidistantTicks, getEquidistantPreserveEndTicks } from './getEquidistantTicks';
13
- import {
13
+ import type {
14
14
  CartesianAxisSettings,
15
15
  XAxisOrientation,
16
16
  YAxisOrientation,
@@ -2,7 +2,7 @@ import type { Ref } from '../util/OctaneTypes.ts';
2
2
 
3
3
  import { arrayTooltipSearcher } from '../state/optionsSlice';
4
4
  import { CartesianChart } from './CartesianChart.tsrx';
5
- import { CartesianChartProps, TooltipEventType } from '../util/types';
5
+ import type { CartesianChartProps, TooltipEventType } from '../util/types';
6
6
 
7
7
  const allowedTooltipTypes: ReadonlyArray<TooltipEventType> = ['axis'];
8
8
 
@@ -2,7 +2,7 @@ import type { Ref } from '../util/OctaneTypes.ts';
2
2
 
3
3
  import { arrayTooltipSearcher } from '../state/optionsSlice';
4
4
  import { CartesianChart } from './CartesianChart.tsrx';
5
- import { CartesianChartProps, TooltipEventType } from '../util/types';
5
+ import type { CartesianChartProps, TooltipEventType } from '../util/types';
6
6
 
7
7
  const allowedTooltipTypes: ReadonlyArray<TooltipEventType> = ['axis'];
8
8
 
@@ -2,7 +2,7 @@ import type { Ref } from '../util/OctaneTypes.ts';
2
2
 
3
3
  import { arrayTooltipSearcher } from '../state/optionsSlice';
4
4
  import { CartesianChart } from './CartesianChart.tsrx';
5
- import { CartesianChartProps, TooltipEventType } from '../util/types';
5
+ import type { CartesianChartProps, TooltipEventType } from '../util/types';
6
6
 
7
7
  const allowedTooltipTypes: ReadonlyArray<TooltipEventType> = ['item'];
8
8
 
@@ -2,7 +2,7 @@ import type { Ref } from '../util/OctaneTypes.ts';
2
2
 
3
3
  import { arrayTooltipSearcher } from '../state/optionsSlice';
4
4
  import { defaultPolarChartProps, PolarChart } from './PolarChart.tsrx';
5
- import { PolarChartProps, TooltipEventType } from '../util/types';
5
+ import type { PolarChartProps, TooltipEventType } from '../util/types';
6
6
  import { resolveDefaultProps } from '../util/resolveDefaultProps';
7
7
 
8
8
  const allowedTooltipTypes: ReadonlyArray<TooltipEventType> = ['item'];
@@ -1,12 +1,12 @@
1
- import { ChartOptions } from '../state/optionsSlice';
1
+ import type { ChartOptions } from '../state/optionsSlice';
2
2
  import { RechartsStoreProvider } from '../state/RechartsStoreProvider.tsrx';
3
3
  import { ChartDataContextProvider } from '../context/chartDataContext';
4
4
  import { ReportMainChartProps } from '../state/ReportMainChartProps';
5
5
  import { ReportChartProps } from '../state/ReportChartProps';
6
6
  import { ReportEventSettings } from '../state/ReportEventSettings';
7
7
  import { ReportPolarOptions } from '../state/ReportPolarOptions.tsrx';
8
- import { Margin, PolarChartProps, TooltipEventType } from '../util/types';
9
- import { TooltipPayloadSearcher } from '../state/tooltipSlice';
8
+ import type { Margin, PolarChartProps, TooltipEventType } from '../util/types';
9
+ import type { TooltipPayloadSearcher } from '../state/tooltipSlice';
10
10
  import { CategoricalChart } from './CategoricalChart.tsrx';
11
11
  import { resolveDefaultProps } from '../util/resolveDefaultProps';
12
12
  import { initialEventSettingsState } from '../state/eventSettingsSlice';
@@ -1,7 +1,7 @@
1
1
  import type { Ref } from '../util/OctaneTypes.ts';
2
2
 
3
3
  import { arrayTooltipSearcher } from '../state/optionsSlice';
4
- import { PolarChartProps, PolarLayout, TooltipEventType } from '../util/types';
4
+ import type { PolarChartProps, PolarLayout, TooltipEventType } from '../util/types';
5
5
  import { resolveDefaultProps } from '../util/resolveDefaultProps';
6
6
  import { defaultPolarChartProps, PolarChart } from './PolarChart.tsrx';
7
7