@octanejs/recharts 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (219) hide show
  1. package/LICENSE +21 -0
  2. package/package.json +53 -0
  3. package/src/animation/AnimatedItems.tsrx +82 -0
  4. package/src/animation/AnimationControllerImpl.js +33 -0
  5. package/src/animation/AnimationHandle.js +291 -0
  6. package/src/animation/JavascriptAnimate.tsrx +81 -0
  7. package/src/animation/easing.js +193 -0
  8. package/src/animation/matchBy.js +279 -0
  9. package/src/animation/timeoutController.js +49 -0
  10. package/src/animation/useAnimationController.ts +22 -0
  11. package/src/animation/useAnimationStartSnapshot.ts +43 -0
  12. package/src/animation/util.js +11 -0
  13. package/src/cartesian/Bar.ts +4 -0
  14. package/src/cartesian/Bar.tsrx +716 -0
  15. package/src/cartesian/Bar.tsrx.d.ts +4 -0
  16. package/src/cartesian/BarStack.tsrx +97 -0
  17. package/src/cartesian/BarStack.tsrx.d.ts +6 -0
  18. package/src/cartesian/CartesianAxis.tsrx +413 -0
  19. package/src/cartesian/CartesianAxis.tsrx.d.ts +3 -0
  20. package/src/cartesian/GraphicalItemClipPath.tsrx +44 -0
  21. package/src/cartesian/Line.ts +4 -0
  22. package/src/cartesian/Line.tsrx +544 -0
  23. package/src/cartesian/Line.tsrx.d.ts +4 -0
  24. package/src/cartesian/LineDrawShape.tsrx +106 -0
  25. package/src/cartesian/LineDrawShape.tsrx.d.ts +2 -0
  26. package/src/cartesian/XAxis.tsrx +156 -0
  27. package/src/cartesian/XAxis.tsrx.d.ts +3 -0
  28. package/src/cartesian/YAxis.tsrx +183 -0
  29. package/src/cartesian/YAxis.tsrx.d.ts +3 -0
  30. package/src/cartesian/getCartesianPosition.js +277 -0
  31. package/src/cartesian/getEquidistantTicks.js +133 -0
  32. package/src/cartesian/getTicks.js +280 -0
  33. package/src/cartesian/useAnimatedLineLength.ts +33 -0
  34. package/src/chart/BarChart.tsrx +22 -0
  35. package/src/chart/BarChart.tsrx.d.ts +2 -0
  36. package/src/chart/CartesianChart.tsrx +76 -0
  37. package/src/chart/CartesianChart.tsrx.d.ts +10 -0
  38. package/src/chart/CategoricalChart.tsrx +54 -0
  39. package/src/chart/LineChart.tsrx +22 -0
  40. package/src/chart/LineChart.tsrx.d.ts +2 -0
  41. package/src/chart/RechartsWrapper.tsrx +294 -0
  42. package/src/component/ActivePoints.tsrx +76 -0
  43. package/src/component/Cell.ts +37 -0
  44. package/src/component/Dots.tsrx +74 -0
  45. package/src/component/Label.tsrx +309 -0
  46. package/src/component/Label.tsrx.d.ts +12 -0
  47. package/src/component/LabelList.tsrx +83 -0
  48. package/src/component/LabelList.tsrx.d.ts +8 -0
  49. package/src/component/ResponsiveContainer.ts +22 -0
  50. package/src/component/Text.tsrx +281 -0
  51. package/src/component/Text.tsrx.d.ts +9 -0
  52. package/src/component/responsiveContainerUtils.js +111 -0
  53. package/src/container/ClipPathProvider.tsrx +29 -0
  54. package/src/container/Layer.tsrx +9 -0
  55. package/src/container/Layer.tsrx.d.ts +6 -0
  56. package/src/container/RootSurface.tsrx +76 -0
  57. package/src/container/Surface.tsrx +23 -0
  58. package/src/container/Surface.tsrx.d.ts +12 -0
  59. package/src/context/CellsContext.ts +80 -0
  60. package/src/context/ErrorBarContext.tsrx +53 -0
  61. package/src/context/PanoramaContext.ts +10 -0
  62. package/src/context/RegisterGraphicalItemId.tsrx +19 -0
  63. package/src/context/accessibilityContext.js +10 -0
  64. package/src/context/chartDataContext.ts +57 -0
  65. package/src/context/chartLayoutContext.ts +171 -0
  66. package/src/context/legendPortalContext.ts +5 -0
  67. package/src/context/tooltipContext.js +55 -0
  68. package/src/context/tooltipPortalContext.ts +5 -0
  69. package/src/hooks.js +509 -0
  70. package/src/index.ts +64 -0
  71. package/src/internal.ts +37 -0
  72. package/src/polar/defaultPolarAngleAxisProps.js +27 -0
  73. package/src/polar/defaultPolarRadiusAxisProps.js +24 -0
  74. package/src/shape/Cross.tsrx +25 -0
  75. package/src/shape/Cross.tsrx.d.ts +12 -0
  76. package/src/shape/Curve.tsrx +132 -0
  77. package/src/shape/Curve.tsrx.d.ts +42 -0
  78. package/src/shape/Dot.tsrx +21 -0
  79. package/src/shape/Dot.tsrx.d.ts +9 -0
  80. package/src/shape/Polygon.tsrx +95 -0
  81. package/src/shape/Polygon.tsrx.d.ts +13 -0
  82. package/src/shape/Rectangle.tsrx +162 -0
  83. package/src/shape/Rectangle.tsrx.d.ts +31 -0
  84. package/src/shape/Sector.tsrx +219 -0
  85. package/src/shape/Sector.tsrx.d.ts +29 -0
  86. package/src/shape/Symbols.tsrx +95 -0
  87. package/src/shape/Symbols.tsrx.d.ts +15 -0
  88. package/src/shape/Trapezoid.tsrx +56 -0
  89. package/src/shape/Trapezoid.tsrx.d.ts +29 -0
  90. package/src/state/RechartsReduxContext.ts +7 -0
  91. package/src/state/RechartsStoreProvider.tsrx +24 -0
  92. package/src/state/ReportChartProps.ts +13 -0
  93. package/src/state/ReportEventSettings.ts +15 -0
  94. package/src/state/ReportMainChartProps.ts +22 -0
  95. package/src/state/SetGraphicalItem.ts +61 -0
  96. package/src/state/SetLegendPayload.ts +61 -0
  97. package/src/state/SetTooltipEntrySettings.ts +40 -0
  98. package/src/state/brushSlice.js +36 -0
  99. package/src/state/cartesianAxisSlice.js +256 -0
  100. package/src/state/chartDataSlice.js +67 -0
  101. package/src/state/errorBarSlice.js +53 -0
  102. package/src/state/eventSettingsSlice.js +25 -0
  103. package/src/state/externalEventsMiddleware.js +127 -0
  104. package/src/state/graphicalItemsSlice.js +91 -0
  105. package/src/state/hooks.ts +46 -0
  106. package/src/state/keyboardEventsMiddleware.js +226 -0
  107. package/src/state/layoutSlice.js +57 -0
  108. package/src/state/legendSlice.js +83 -0
  109. package/src/state/mouseEventsMiddleware.js +130 -0
  110. package/src/state/optionsSlice.js +45 -0
  111. package/src/state/polarAxisSlice.js +33 -0
  112. package/src/state/polarOptionsSlice.js +26 -0
  113. package/src/state/reduxDevtoolsJsonStringifyReplacer.js +14 -0
  114. package/src/state/referenceElementsSlice.js +51 -0
  115. package/src/state/renderedTicksSlice.js +41 -0
  116. package/src/state/rootPropsSlice.js +48 -0
  117. package/src/state/selectors/arrayEqualityCheck.js +32 -0
  118. package/src/state/selectors/axisSelectors.js +2113 -0
  119. package/src/state/selectors/barSelectors.js +263 -0
  120. package/src/state/selectors/barStackSelectors.js +65 -0
  121. package/src/state/selectors/brushSelectors.js +21 -0
  122. package/src/state/selectors/combiners/combineActiveLabel.js +18 -0
  123. package/src/state/selectors/combiners/combineActiveTooltipIndex.js +75 -0
  124. package/src/state/selectors/combiners/combineAllBarPositions.js +169 -0
  125. package/src/state/selectors/combiners/combineAxisRangeWithReverse.js +11 -0
  126. package/src/state/selectors/combiners/combineBarPosition.js +17 -0
  127. package/src/state/selectors/combiners/combineBarSizeList.js +115 -0
  128. package/src/state/selectors/combiners/combineCheckedDomain.js +44 -0
  129. package/src/state/selectors/combiners/combineConfiguredScale.js +46 -0
  130. package/src/state/selectors/combiners/combineCoordinateForDefaultIndex.js +48 -0
  131. package/src/state/selectors/combiners/combineDisplayedStackedData.js +54 -0
  132. package/src/state/selectors/combiners/combineInverseScaleFunction.js +12 -0
  133. package/src/state/selectors/combiners/combineRealScaleType.js +36 -0
  134. package/src/state/selectors/combiners/combineStackedData.js +22 -0
  135. package/src/state/selectors/combiners/combineTooltipInteractionState.js +121 -0
  136. package/src/state/selectors/combiners/combineTooltipPayload.js +248 -0
  137. package/src/state/selectors/combiners/combineTooltipPayloadConfigurations.js +59 -0
  138. package/src/state/selectors/containerSelectors.js +6 -0
  139. package/src/state/selectors/dataSelectors.js +97 -0
  140. package/src/state/selectors/graphicalItemSelectors.js +25 -0
  141. package/src/state/selectors/legendSelectors.js +18 -0
  142. package/src/state/selectors/lineSelectors.js +106 -0
  143. package/src/state/selectors/numberDomainEqualityCheck.js +11 -0
  144. package/src/state/selectors/pickAxisId.js +3 -0
  145. package/src/state/selectors/pickAxisType.js +3 -0
  146. package/src/state/selectors/polarAxisSelectors.js +237 -0
  147. package/src/state/selectors/rootPropsSelectors.js +13 -0
  148. package/src/state/selectors/selectActivePropsFromChartPointer.js +23 -0
  149. package/src/state/selectors/selectAllAxes.js +15 -0
  150. package/src/state/selectors/selectChartOffset.js +12 -0
  151. package/src/state/selectors/selectChartOffsetInternal.js +174 -0
  152. package/src/state/selectors/selectPlotArea.js +19 -0
  153. package/src/state/selectors/selectTooltipAxisId.js +3 -0
  154. package/src/state/selectors/selectTooltipAxisType.js +25 -0
  155. package/src/state/selectors/selectTooltipEventType.js +27 -0
  156. package/src/state/selectors/selectTooltipPayloadSearcher.js +3 -0
  157. package/src/state/selectors/selectTooltipSettings.js +3 -0
  158. package/src/state/selectors/selectTooltipState.js +3 -0
  159. package/src/state/selectors/selectors.js +222 -0
  160. package/src/state/selectors/tooltipSelectors.js +471 -0
  161. package/src/state/selectors/touchSelectors.js +31 -0
  162. package/src/state/store.js +101 -0
  163. package/src/state/tooltipSlice.js +237 -0
  164. package/src/state/touchEventsMiddleware.js +140 -0
  165. package/src/state/types/StackedGraphicalItem.js +18 -0
  166. package/src/state/zIndexSlice.js +167 -0
  167. package/src/synchronisation/syncSelectors.js +5 -0
  168. package/src/synchronisation/useChartSynchronisation.tsrx +285 -0
  169. package/src/util/ActiveShapeUtils.tsrx +62 -0
  170. package/src/util/BarUtils.tsrx +35 -0
  171. package/src/util/CartesianUtils.js +66 -0
  172. package/src/util/ChartUtils.js +630 -0
  173. package/src/util/Constants.js +42 -0
  174. package/src/util/DOMUtils.js +180 -0
  175. package/src/util/DataUtils.js +199 -0
  176. package/src/util/Events.js +7 -0
  177. package/src/util/Global.js +13 -0
  178. package/src/util/LRUCache.js +58 -0
  179. package/src/util/LogUtils.js +29 -0
  180. package/src/util/PolarUtils.js +190 -0
  181. package/src/util/ReactUtils.ts +94 -0
  182. package/src/util/ReduceCSSCalc.js +260 -0
  183. package/src/util/TickUtils.js +43 -0
  184. package/src/util/YAxisUtils.js +43 -0
  185. package/src/util/axisPropsAreEqual.js +63 -0
  186. package/src/util/createEventProxy.js +18 -0
  187. package/src/util/excludeEventProps.js +172 -0
  188. package/src/util/getActiveCoordinate.js +253 -0
  189. package/src/util/getAxisTypeBasedOnLayout.js +17 -0
  190. package/src/util/getClassNameFromUnknown.js +8 -0
  191. package/src/util/getEveryNth.js +29 -0
  192. package/src/util/getRadiusAndStrokeWidthFromDot.js +28 -0
  193. package/src/util/getRelativeCoordinate.js +96 -0
  194. package/src/util/getSliced.js +11 -0
  195. package/src/util/isDomainSpecifiedByUser.js +255 -0
  196. package/src/util/isWellBehavedNumber.js +8 -0
  197. package/src/util/propsAreEqual.js +96 -0
  198. package/src/util/resolveDefaultProps.js +131 -0
  199. package/src/util/round.js +39 -0
  200. package/src/util/scale/RechartsScale.js +68 -0
  201. package/src/util/scale/createCategoricalInverse.js +77 -0
  202. package/src/util/scale/getNiceTickValues.js +354 -0
  203. package/src/util/scale/index.js +3 -0
  204. package/src/util/scale/util/arithmetic.js +51 -0
  205. package/src/util/stacks/getStackSeriesIdentifier.js +10 -0
  206. package/src/util/svgPropertiesAndEvents.ts +29 -0
  207. package/src/util/svgPropertiesNoEvents.js +383 -0
  208. package/src/util/types.ts +59 -0
  209. package/src/util/useAnimationId.ts +14 -0
  210. package/src/util/useId.ts +13 -0
  211. package/src/util/usePrefersReducedMotion.ts +30 -0
  212. package/src/util/useReportScale.ts +26 -0
  213. package/src/util/useUniqueId.js +34 -0
  214. package/src/zIndex/DefaultZIndexes.js +75 -0
  215. package/src/zIndex/ZIndexLayer.tsrx +80 -0
  216. package/src/zIndex/ZIndexLayer.tsrx.d.ts +2 -0
  217. package/src/zIndex/ZIndexPortal.tsrx +43 -0
  218. package/src/zIndex/getZIndexFromUnknown.js +15 -0
  219. package/src/zIndex/zIndexSelectors.js +45 -0
@@ -0,0 +1,51 @@
1
+ // Vendored verbatim from recharts@3.9.2 es6/state/referenceElementsSlice.js (framework-agnostic).
2
+ // Do not edit — update by re-vendoring when the recharts devDependency moves.
3
+ import { createSlice, current } from '@reduxjs/toolkit';
4
+ import { castDraft } from 'immer';
5
+ var initialState = {
6
+ dots: [],
7
+ areas: [],
8
+ lines: [],
9
+ };
10
+ export var referenceElementsSlice = createSlice({
11
+ name: 'referenceElements',
12
+ initialState,
13
+ reducers: {
14
+ addDot: (state, action) => {
15
+ state.dots.push(action.payload);
16
+ },
17
+ removeDot: (state, action) => {
18
+ var index = current(state).dots.findIndex((dot) => dot === action.payload);
19
+ if (index !== -1) {
20
+ state.dots.splice(index, 1);
21
+ }
22
+ },
23
+ addArea: (state, action) => {
24
+ state.areas.push(action.payload);
25
+ },
26
+ removeArea: (state, action) => {
27
+ var index = current(state).areas.findIndex((area) => area === action.payload);
28
+ if (index !== -1) {
29
+ state.areas.splice(index, 1);
30
+ }
31
+ },
32
+ addLine: (state, action) => {
33
+ state.lines.push(castDraft(action.payload));
34
+ },
35
+ removeLine: (state, action) => {
36
+ var index = current(state).lines.findIndex((line) => line === action.payload);
37
+ if (index !== -1) {
38
+ state.lines.splice(index, 1);
39
+ }
40
+ },
41
+ },
42
+ });
43
+ var _referenceElementsSli = referenceElementsSlice.actions,
44
+ addDot = _referenceElementsSli.addDot,
45
+ removeDot = _referenceElementsSli.removeDot,
46
+ addArea = _referenceElementsSli.addArea,
47
+ removeArea = _referenceElementsSli.removeArea,
48
+ addLine = _referenceElementsSli.addLine,
49
+ removeLine = _referenceElementsSli.removeLine;
50
+ export { addDot, removeDot, addArea, removeArea, addLine, removeLine };
51
+ export var referenceElementsReducer = referenceElementsSlice.reducer;
@@ -0,0 +1,41 @@
1
+ // Vendored verbatim from recharts@3.9.2 es6/state/renderedTicksSlice.js (framework-agnostic).
2
+ // Do not edit — update by re-vendoring when the recharts devDependency moves.
3
+ /**
4
+ * @fileOverview this stores actually rendered ticks.
5
+ *
6
+ * What we do is that we have the domain -> ticks mapping in the cartesianSlice,
7
+ * which is fine but the result then goes to CartesianAxis where we use DOM measurement
8
+ * to decide which ticks to actually render.
9
+ *
10
+ * This renderedTickSlice stores those actually rendered ticks so that we can return them from a hook later.
11
+ */
12
+ import { createSlice } from '@reduxjs/toolkit';
13
+ import { castDraft } from 'immer';
14
+ var initialState = {
15
+ xAxis: {},
16
+ yAxis: {},
17
+ };
18
+ export var renderedTicksSlice = createSlice({
19
+ name: 'renderedTicks',
20
+ initialState,
21
+ reducers: {
22
+ setRenderedTicks: (state, action) => {
23
+ var _action$payload = action.payload,
24
+ axisType = _action$payload.axisType,
25
+ axisId = _action$payload.axisId,
26
+ ticks = _action$payload.ticks;
27
+ state[axisType][axisId] = castDraft(ticks);
28
+ },
29
+ removeRenderedTicks: (state, action) => {
30
+ var _action$payload2 = action.payload,
31
+ axisType = _action$payload2.axisType,
32
+ axisId = _action$payload2.axisId;
33
+ delete state[axisType][axisId];
34
+ },
35
+ },
36
+ });
37
+ var _renderedTicksSlice$a = renderedTicksSlice.actions,
38
+ setRenderedTicks = _renderedTicksSlice$a.setRenderedTicks,
39
+ removeRenderedTicks = _renderedTicksSlice$a.removeRenderedTicks;
40
+ export { setRenderedTicks, removeRenderedTicks };
41
+ export var renderedTicksReducer = renderedTicksSlice.reducer;
@@ -0,0 +1,48 @@
1
+ // Vendored verbatim from recharts@3.9.2 es6/state/rootPropsSlice.js (framework-agnostic).
2
+ // Do not edit — update by re-vendoring when the recharts devDependency moves.
3
+ import { createSlice } from '@reduxjs/toolkit';
4
+
5
+ /**
6
+ * These are chart options that users can choose - which means they can also
7
+ * choose to change them which should trigger a re-render.
8
+ */
9
+
10
+ export var initialState = {
11
+ accessibilityLayer: true,
12
+ barCategoryGap: '10%',
13
+ barGap: 4,
14
+ barSize: undefined,
15
+ className: undefined,
16
+ maxBarSize: undefined,
17
+ stackOffset: 'none',
18
+ syncId: undefined,
19
+ syncMethod: 'index',
20
+ baseValue: undefined,
21
+ reverseStackOrder: false,
22
+ };
23
+ var rootPropsSlice = createSlice({
24
+ name: 'rootProps',
25
+ initialState,
26
+ reducers: {
27
+ updateOptions: (state, action) => {
28
+ var _action$payload$barGa;
29
+ state.accessibilityLayer = action.payload.accessibilityLayer;
30
+ state.barCategoryGap = action.payload.barCategoryGap;
31
+ state.barGap =
32
+ (_action$payload$barGa = action.payload.barGap) !== null && _action$payload$barGa !== void 0
33
+ ? _action$payload$barGa
34
+ : initialState.barGap;
35
+ state.barSize = action.payload.barSize;
36
+ state.maxBarSize = action.payload.maxBarSize;
37
+ state.stackOffset = action.payload.stackOffset;
38
+ state.syncId = action.payload.syncId;
39
+ state.syncMethod = action.payload.syncMethod;
40
+ state.className = action.payload.className;
41
+ state.baseValue = action.payload.baseValue;
42
+ state.reverseStackOrder = action.payload.reverseStackOrder;
43
+ },
44
+ },
45
+ });
46
+ export var rootPropsReducer = rootPropsSlice.reducer;
47
+ var updateOptions = rootPropsSlice.actions.updateOptions;
48
+ export { updateOptions };
@@ -0,0 +1,32 @@
1
+ // Vendored verbatim from recharts@3.9.2 es6/state/selectors/arrayEqualityCheck.js (framework-agnostic).
2
+ // Do not edit — update by re-vendoring when the recharts devDependency moves.
3
+ /**
4
+ * Checks if two arrays are equal, treating empty arrays as equal regardless of reference.
5
+ * If both arrays are non-empty, it checks for reference equality.
6
+ * @param a
7
+ * @param b
8
+ */
9
+ export function emptyArraysAreEqualCheck(a, b) {
10
+ if (Array.isArray(a) && Array.isArray(b) && a.length === 0 && b.length === 0) {
11
+ // empty arrays are always equal, regardless of reference
12
+ return true;
13
+ }
14
+ return a === b;
15
+ }
16
+
17
+ /**
18
+ * Checks if two arrays have the same contents in the same order.
19
+ * @param a
20
+ * @param b
21
+ */
22
+ export function arrayContentsAreEqualCheck(a, b) {
23
+ if (a.length === b.length) {
24
+ for (var i = 0; i < a.length; i++) {
25
+ if (a[i] !== b[i]) {
26
+ return false;
27
+ }
28
+ }
29
+ return true;
30
+ }
31
+ return false;
32
+ }