@solidports/recharts 0.1.0 → 0.1.1
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.
- package/dist/index.d.ts +40 -2
- package/dist/index.js +14238 -7174
- package/dist/{dev.js → index.jsx} +18367 -15900
- package/dist/server.js +48178 -0
- package/package.json +36 -19
- package/src/animation/AnimatedItems.tsx +0 -183
- package/src/animation/AnimationController.ts +0 -33
- package/src/animation/AnimationControllerImpl.ts +0 -36
- package/src/animation/AnimationHandle.ts +0 -307
- package/src/animation/CSSTransitionAnimate.tsx +0 -170
- package/src/animation/JavascriptAnimate.tsx +0 -119
- package/src/animation/easing.ts +0 -221
- package/src/animation/matchBy.ts +0 -164
- package/src/animation/timeoutController.ts +0 -70
- package/src/animation/useAnimationController.tsx +0 -34
- package/src/animation/useAnimationStartSnapshot.ts +0 -118
- package/src/animation/util.ts +0 -41
- package/src/cartesian/Area.tsx +0 -915
- package/src/cartesian/AreaRevealShape.tsx +0 -190
- package/src/cartesian/Bar.tsx +0 -1369
- package/src/cartesian/BarStack.tsx +0 -152
- package/src/cartesian/Brush.tsx +0 -951
- package/src/cartesian/CartesianAxis.tsx +0 -722
- package/src/cartesian/CartesianGrid.tsx +0 -711
- package/src/cartesian/ErrorBar.tsx +0 -361
- package/src/cartesian/Funnel.tsx +0 -803
- package/src/cartesian/GraphicalItemClipPath.tsx +0 -67
- package/src/cartesian/Line.tsx +0 -863
- package/src/cartesian/LineDrawShape.tsx +0 -89
- package/src/cartesian/ReferenceArea.tsx +0 -331
- package/src/cartesian/ReferenceDot.tsx +0 -304
- package/src/cartesian/ReferenceLine.tsx +0 -474
- package/src/cartesian/Scatter.tsx +0 -888
- package/src/cartesian/XAxis.tsx +0 -433
- package/src/cartesian/YAxis.tsx +0 -443
- package/src/cartesian/ZAxis.tsx +0 -155
- package/src/cartesian/cartesianPositionToCSSTranslate.tsx +0 -29
- package/src/cartesian/cartesianViewBoxToTrapezoid.tsx +0 -21
- package/src/cartesian/getCartesianPosition.tsx +0 -267
- package/src/cartesian/getEquidistantTicks.ts +0 -144
- package/src/cartesian/getTicks.ts +0 -225
- package/src/cartesian/isOutsidePosition.ts +0 -15
- package/src/cartesian/useAnimatedLineLength.ts +0 -54
- package/src/chart/AreaChart.tsx +0 -29
- package/src/chart/BarChart.tsx +0 -29
- package/src/chart/CartesianChart.tsx +0 -131
- package/src/chart/CategoricalChart.tsx +0 -94
- package/src/chart/ComposedChart.tsx +0 -29
- package/src/chart/FunnelChart.tsx +0 -29
- package/src/chart/LineChart.tsx +0 -29
- package/src/chart/PieChart.tsx +0 -50
- package/src/chart/PolarChart.tsx +0 -164
- package/src/chart/RadarChart.tsx +0 -70
- package/src/chart/RadialBarChart.tsx +0 -46
- package/src/chart/RechartsWrapper.tsx +0 -551
- package/src/chart/Sankey.tsx +0 -1534
- package/src/chart/ScatterChart.tsx +0 -29
- package/src/chart/SunburstChart.tsx +0 -504
- package/src/chart/Treemap.tsx +0 -1223
- package/src/chart/createInitialRootProps.ts +0 -24
- package/src/chart/types.ts +0 -53
- package/src/component/ActivePoints.tsx +0 -144
- package/src/component/Cell.tsx +0 -37
- package/src/component/Cursor.tsx +0 -185
- package/src/component/Customized.tsx +0 -50
- package/src/component/DefaultLegendContent.tsx +0 -348
- package/src/component/DefaultTooltipContent.tsx +0 -224
- package/src/component/Dots.tsx +0 -157
- package/src/component/Label.tsx +0 -636
- package/src/component/LabelList.tsx +0 -375
- package/src/component/Legend.tsx +0 -512
- package/src/component/ResponsiveContainer.tsx +0 -348
- package/src/component/Text.tsx +0 -541
- package/src/component/Tooltip.tsx +0 -470
- package/src/component/TooltipBoundingBox.tsx +0 -146
- package/src/component/responsiveContainerUtils.ts +0 -134
- package/src/container/ClipPathProvider.tsx +0 -51
- package/src/container/Layer.tsx +0 -38
- package/src/container/RootSurface.tsx +0 -120
- package/src/container/Surface.tsx +0 -61
- package/src/context/CellsContext.tsx +0 -54
- package/src/context/ErrorBarContext.tsx +0 -146
- package/src/context/GraphicalItemChildrenScope.tsx +0 -18
- package/src/context/PanoramaContext.tsx +0 -9
- package/src/context/RegisterGraphicalItemId.tsx +0 -30
- package/src/context/accessibilityContext.tsx +0 -6
- package/src/context/brushUpdateContext.tsx +0 -9
- package/src/context/chartDataContext.tsx +0 -97
- package/src/context/chartLayoutContext.tsx +0 -201
- package/src/context/legendPayloadContext.tsx +0 -20
- package/src/context/legendPortalContext.tsx +0 -12
- package/src/context/tooltipContext.tsx +0 -89
- package/src/context/tooltipPortalContext.tsx +0 -12
- package/src/context/useTooltipAxis.ts +0 -22
- package/src/hooks.ts +0 -476
- package/src/index.ts +0 -280
- package/src/polar/Pie.tsx +0 -1360
- package/src/polar/PolarAngleAxis.tsx +0 -616
- package/src/polar/PolarGrid.tsx +0 -312
- package/src/polar/PolarRadiusAxis.tsx +0 -547
- package/src/polar/Radar.tsx +0 -734
- package/src/polar/RadialBar.tsx +0 -917
- package/src/polar/defaultPolarAngleAxisProps.tsx +0 -27
- package/src/polar/defaultPolarRadiusAxisProps.tsx +0 -25
- package/src/shape/Cross.tsx +0 -89
- package/src/shape/Curve.tsx +0 -343
- package/src/shape/Dot.tsx +0 -70
- package/src/shape/Polygon.tsx +0 -195
- package/src/shape/Rectangle.tsx +0 -470
- package/src/shape/Sector.tsx +0 -347
- package/src/shape/Symbols.tsx +0 -139
- package/src/shape/Trapezoid.tsx +0 -280
- package/src/state/RechartsStateContext.tsx +0 -12
- package/src/state/RechartsStateProvider.tsx +0 -87
- package/src/state/RechartsStoreContext.tsx +0 -25
- package/src/state/RechartsStoreProvider.tsx +0 -35
- package/src/state/ReportChartProps.tsx +0 -40
- package/src/state/ReportEventSettings.tsx +0 -30
- package/src/state/ReportMainChartProps.tsx +0 -61
- package/src/state/ReportPolarOptions.tsx +0 -35
- package/src/state/SetGraphicalItem.ts +0 -79
- package/src/state/SetLegendPayload.ts +0 -134
- package/src/state/SetTooltipEntrySettings.tsx +0 -72
- package/src/state/actions.ts +0 -464
- package/src/state/brushSlice.ts +0 -13
- package/src/state/cartesianAxisSlice.ts +0 -141
- package/src/state/chartDataSlice.ts +0 -50
- package/src/state/chartState.ts +0 -297
- package/src/state/errorBarSlice.ts +0 -29
- package/src/state/eventSettingsSlice.ts +0 -8
- package/src/state/events.ts +0 -76
- package/src/state/externalEventsMiddleware.ts +0 -255
- package/src/state/graphicalItemsSlice.ts +0 -74
- package/src/state/hooks/useChartSelectors.tsx +0 -45
- package/src/state/keyboardEventsMiddleware.ts +0 -228
- package/src/state/layoutSlice.ts +0 -21
- package/src/state/legendSlice.ts +0 -57
- package/src/state/mouseEventsMiddleware.ts +0 -185
- package/src/state/optionsSlice.ts +0 -47
- package/src/state/polarAxisSlice.ts +0 -10
- package/src/state/polarOptionsSlice.ts +0 -12
- package/src/state/rawData.ts +0 -26
- package/src/state/referenceElementsSlice.ts +0 -40
- package/src/state/renderedTicksSlice.ts +0 -15
- package/src/state/rootPropsSlice.ts +0 -47
- package/src/state/selectors/areaSelectors.ts +0 -240
- package/src/state/selectors/arrayEqualityCheck.ts +0 -29
- package/src/state/selectors/axisSelectors.ts +0 -2157
- package/src/state/selectors/barSelectors.ts +0 -310
- package/src/state/selectors/barStackSelectors.ts +0 -77
- package/src/state/selectors/brushSelectors.ts +0 -33
- package/src/state/selectors/chartSelector.ts +0 -185
- package/src/state/selectors/combiners/combineActiveLabel.ts +0 -16
- package/src/state/selectors/combiners/combineActiveTooltipIndex.ts +0 -95
- package/src/state/selectors/combiners/combineAllBarPositions.ts +0 -122
- package/src/state/selectors/combiners/combineAxisRangeWithReverse.ts +0 -16
- package/src/state/selectors/combiners/combineBarPosition.ts +0 -23
- package/src/state/selectors/combiners/combineBarSizeList.ts +0 -80
- package/src/state/selectors/combiners/combineCheckedDomain.ts +0 -48
- package/src/state/selectors/combiners/combineConfiguredScale.ts +0 -111
- package/src/state/selectors/combiners/combineCoordinateForDefaultIndex.ts +0 -45
- package/src/state/selectors/combiners/combineDisplayedStackedData.ts +0 -50
- package/src/state/selectors/combiners/combineInverseScaleFunction.ts +0 -16
- package/src/state/selectors/combiners/combineRealScaleType.ts +0 -44
- package/src/state/selectors/combiners/combineStackedData.ts +0 -27
- package/src/state/selectors/combiners/combineTooltipInteractionState.ts +0 -86
- package/src/state/selectors/combiners/combineTooltipPayload.ts +0 -205
- package/src/state/selectors/combiners/combineTooltipPayloadConfigurations.ts +0 -58
- package/src/state/selectors/containerSelectors.ts +0 -12
- package/src/state/selectors/dataSelectors.ts +0 -88
- package/src/state/selectors/funnelSelectors.ts +0 -75
- package/src/state/selectors/graphicalItemSelectors.ts +0 -30
- package/src/state/selectors/legendSelectors.ts +0 -29
- package/src/state/selectors/lineSelectors.ts +0 -134
- package/src/state/selectors/numberDomainEqualityCheck.ts +0 -14
- package/src/state/selectors/pickAxisId.ts +0 -5
- package/src/state/selectors/pickAxisType.ts +0 -3
- package/src/state/selectors/pieSelectors.ts +0 -97
- package/src/state/selectors/polarAxisSelectors.ts +0 -201
- package/src/state/selectors/polarGridSelectors.ts +0 -28
- package/src/state/selectors/polarScaleSelectors.ts +0 -133
- package/src/state/selectors/polarSelectors.ts +0 -219
- package/src/state/selectors/radarSelectors.ts +0 -191
- package/src/state/selectors/radialBarSelectors.ts +0 -435
- package/src/state/selectors/rootPropsSelectors.ts +0 -25
- package/src/state/selectors/scatterSelectors.ts +0 -96
- package/src/state/selectors/selectActivePropsFromChartPointer.ts +0 -26
- package/src/state/selectors/selectAllAxes.ts +0 -17
- package/src/state/selectors/selectChartOffset.ts +0 -16
- package/src/state/selectors/selectChartOffsetInternal.ts +0 -136
- package/src/state/selectors/selectLegendArea.ts +0 -20
- package/src/state/selectors/selectPlotArea.ts +0 -22
- package/src/state/selectors/selectTooltipAxisId.ts +0 -7
- package/src/state/selectors/selectTooltipAxisType.ts +0 -32
- package/src/state/selectors/selectTooltipEventType.ts +0 -48
- package/src/state/selectors/selectTooltipPayloadSearcher.ts +0 -6
- package/src/state/selectors/selectTooltipSettings.ts +0 -39
- package/src/state/selectors/selectTooltipState.ts +0 -8
- package/src/state/selectors/selectors.ts +0 -271
- package/src/state/selectors/tooltipSelectors.ts +0 -578
- package/src/state/selectors/touchSelectors.ts +0 -31
- package/src/state/store.ts +0 -29
- package/src/state/storeIdentity.ts +0 -9
- package/src/state/teardownWrite.ts +0 -10
- package/src/state/tooltipInteraction.ts +0 -23
- package/src/state/tooltipSlice.ts +0 -334
- package/src/state/touchEventsMiddleware.ts +0 -214
- package/src/state/types/AnimationSettings.ts +0 -20
- package/src/state/types/AreaSettings.ts +0 -14
- package/src/state/types/BarSettings.ts +0 -15
- package/src/state/types/LineSettings.ts +0 -9
- package/src/state/types/PieSettings.ts +0 -34
- package/src/state/types/RadarSettings.ts +0 -5
- package/src/state/types/RadialBarSettings.ts +0 -10
- package/src/state/types/ScatterSettings.ts +0 -12
- package/src/state/types/StackedGraphicalItem.ts +0 -34
- package/src/state/useChartState.ts +0 -17
- package/src/state/zIndexSlice.ts +0 -39
- package/src/synchronisation/syncSelectors.ts +0 -7
- package/src/synchronisation/types.ts +0 -44
- package/src/synchronisation/useChartSynchronisation.tsx +0 -404
- package/src/theme/RechartsTheme.ts +0 -16
- package/src/theme/RechartsThemeContext.ts +0 -19
- package/src/theme/darkTheme.ts +0 -13
- package/src/theme/graphicalItemIdentity.ts +0 -70
- package/src/theme/legacyTheme.ts +0 -17
- package/src/theme/lightTheme.ts +0 -13
- package/src/types.ts +0 -54
- package/src/util/ActiveShapeUtils.tsx +0 -162
- package/src/util/BarUtils.tsx +0 -62
- package/src/util/BarePortal.tsx +0 -50
- package/src/util/CamelCaseSVGAttrs.ts +0 -34
- package/src/util/CartesianUtils.ts +0 -48
- package/src/util/ChartUtils.ts +0 -802
- package/src/util/Constants.ts +0 -42
- package/src/util/CssPrefixUtils.ts +0 -20
- package/src/util/DOMUtils.ts +0 -129
- package/src/util/DataUtils.ts +0 -216
- package/src/util/Events.ts +0 -16
- package/src/util/FunnelUtils.tsx +0 -15
- package/src/util/Global.ts +0 -12
- package/src/util/IfOverflow.ts +0 -15
- package/src/util/LRUCache.ts +0 -41
- package/src/util/LogUtils.ts +0 -22
- package/src/util/PolarUtils.ts +0 -132
- package/src/util/RadialBarUtils.tsx +0 -24
- package/src/util/ReactUtils.ts +0 -95
- package/src/util/ReduceCSSCalc.ts +0 -187
- package/src/util/ScatterUtils.tsx +0 -52
- package/src/util/ShapeElementProps.tsx +0 -87
- package/src/util/TickUtils.ts +0 -60
- package/src/util/XAxisUtils.ts +0 -48
- package/src/util/YAxisUtils.ts +0 -48
- package/src/util/axisPropsAreEqual.ts +0 -48
- package/src/util/createCartesianCharts.tsx +0 -150
- package/src/util/createEventProxy.ts +0 -20
- package/src/util/createPolarCharts.tsx +0 -112
- package/src/util/cursor/getCursorPoints.ts +0 -46
- package/src/util/cursor/getCursorRectangle.ts +0 -28
- package/src/util/cursor/getRadialCursorPoints.ts +0 -32
- package/src/util/excludeEventProps.ts +0 -171
- package/src/util/getActiveCoordinate.ts +0 -213
- package/src/util/getAxisTypeBasedOnLayout.ts +0 -21
- package/src/util/getClassNameFromUnknown.ts +0 -6
- package/src/util/getEveryNth.ts +0 -27
- package/src/util/getRadiusAndStrokeWidthFromDot.ts +0 -35
- package/src/util/getRelativeCoordinate.ts +0 -80
- package/src/util/getSliced.ts +0 -13
- package/src/util/hoverDedupe.ts +0 -41
- package/src/util/isDomainSpecifiedByUser.ts +0 -219
- package/src/util/isWellBehavedNumber.ts +0 -7
- package/src/util/pathTotalLength.ts +0 -25
- package/src/util/payload/getUniqPayload.ts +0 -28
- package/src/util/propsAreEqual.ts +0 -121
- package/src/util/resolveDefaultProps.ts +0 -161
- package/src/util/round.ts +0 -32
- package/src/util/scale/CartesianScaleHelper.ts +0 -72
- package/src/util/scale/CustomScaleDefinition.ts +0 -81
- package/src/util/scale/RechartsScale.ts +0 -130
- package/src/util/scale/createCategoricalInverse.ts +0 -72
- package/src/util/scale/getNiceTickValues.ts +0 -311
- package/src/util/scale/index.ts +0 -2
- package/src/util/scale/util/arithmetic.ts +0 -54
- package/src/util/solid-1-compat.ts +0 -310
- package/src/util/solidJsxCamelAugment.d.ts +0 -84
- package/src/util/stacks/getStackSeriesIdentifier.ts +0 -21
- package/src/util/stacks/stackTypes.ts +0 -60
- package/src/util/structurallyEqual.ts +0 -31
- package/src/util/svgPropertiesAndEvents.ts +0 -53
- package/src/util/svgPropertiesNoEvents.ts +0 -571
- package/src/util/tooltip/translate.ts +0 -171
- package/src/util/typedDataKey.ts +0 -48
- package/src/util/types.ts +0 -1560
- package/src/util/useAnimationId.ts +0 -31
- package/src/util/useElementOffset.ts +0 -110
- package/src/util/useId.ts +0 -8
- package/src/util/usePrefersReducedMotion.ts +0 -48
- package/src/util/useReportScale.ts +0 -24
- package/src/util/useUniqueId.ts +0 -30
- package/src/zIndex/DefaultZIndexes.ts +0 -84
- package/src/zIndex/ZIndexLayer.tsx +0 -121
- package/src/zIndex/ZIndexPortal.tsx +0 -79
- package/src/zIndex/getZIndexFromUnknown.ts +0 -14
- package/src/zIndex/zIndexSelectors.ts +0 -48
|
@@ -1,219 +0,0 @@
|
|
|
1
|
-
/* eslint-disable import/no-cycle */
|
|
2
|
-
import type { AppliedChartData, ChartData } from "../chartDataSlice"
|
|
3
|
-
import { selectChartDataSliceIgnoringIndexes } from "./dataSelectors"
|
|
4
|
-
import type { ChartState } from "../store"
|
|
5
|
-
import type { AxisId, BaseCartesianAxis } from "../cartesianAxisSlice"
|
|
6
|
-
import { selectChartDataAndAlwaysIgnoreIndexes } from "./dataSelectors"
|
|
7
|
-
import {
|
|
8
|
-
type AppliedChartDataWithErrorDomain,
|
|
9
|
-
combineAppliedValues,
|
|
10
|
-
combineAxisDomain,
|
|
11
|
-
combineAxisDomainWithNiceTicks,
|
|
12
|
-
combineDisplayedData,
|
|
13
|
-
combineDomainOfAllAppliedNumericalValuesIncludingErrorValues,
|
|
14
|
-
combineGraphicalItemsData,
|
|
15
|
-
combineGraphicalItemsSettings,
|
|
16
|
-
combineNiceTicks,
|
|
17
|
-
combineNumericalDomain,
|
|
18
|
-
itemAxisPredicate,
|
|
19
|
-
selectAllErrorBarSettings,
|
|
20
|
-
selectBaseAxis,
|
|
21
|
-
selectDomainDefinition,
|
|
22
|
-
selectDomainFromUserPreference,
|
|
23
|
-
selectRealScaleType,
|
|
24
|
-
selectRenderableAxisSettings,
|
|
25
|
-
} from "./axisSelectors"
|
|
26
|
-
import type { PolarGraphicalItemSettings } from "../graphicalItemsSlice"
|
|
27
|
-
import { readChartState } from "../chartState"
|
|
28
|
-
import type { CategoricalDomain, NumberDomain } from "../../util/types"
|
|
29
|
-
import { selectChartLayout } from "../../context/chartLayoutContext"
|
|
30
|
-
import { getValueByDataKey } from "../../util/ChartUtils"
|
|
31
|
-
import { selectStackOffsetType } from "./rootPropsSelectors"
|
|
32
|
-
import { combineCheckedDomain } from "./combiners/combineCheckedDomain"
|
|
33
|
-
|
|
34
|
-
export type PolarAxisType = "angleAxis" | "radiusAxis"
|
|
35
|
-
|
|
36
|
-
export const selectUnfilteredPolarItems = (
|
|
37
|
-
state: ChartState,
|
|
38
|
-
): ReadonlyArray<PolarGraphicalItemSettings> => {
|
|
39
|
-
const graphicalItems = readChartState(state).graphicalItems
|
|
40
|
-
const result: PolarGraphicalItemSettings[] = []
|
|
41
|
-
for (const id in graphicalItems) {
|
|
42
|
-
const item = graphicalItems[id]
|
|
43
|
-
if (
|
|
44
|
-
item != null &&
|
|
45
|
-
typeof item === "object" &&
|
|
46
|
-
(item.type === "pie" || item.type === "radar" || item.type === "radialBar")
|
|
47
|
-
) {
|
|
48
|
-
const settings = item.settings
|
|
49
|
-
if (settings !== null && typeof settings === "object") {
|
|
50
|
-
result.push(settings)
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
return result
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
export function selectPolarItemsSettings(
|
|
58
|
-
state: ChartState,
|
|
59
|
-
axisType: PolarAxisType,
|
|
60
|
-
polarAxisId: AxisId,
|
|
61
|
-
): ReadonlyArray<PolarGraphicalItemSettings> {
|
|
62
|
-
const graphicalItems = selectUnfilteredPolarItems(state)
|
|
63
|
-
const axisSettings = selectBaseAxis(state, axisType, polarAxisId)
|
|
64
|
-
const axisPredicate = itemAxisPredicate(axisType, polarAxisId)
|
|
65
|
-
return combineGraphicalItemsSettings(graphicalItems, axisSettings, axisPredicate)
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
function selectPolarGraphicalItemsData(
|
|
69
|
-
state: ChartState,
|
|
70
|
-
axisType: PolarAxisType,
|
|
71
|
-
polarAxisId: AxisId,
|
|
72
|
-
): ChartData {
|
|
73
|
-
return combineGraphicalItemsData(selectPolarItemsSettings(state, axisType, polarAxisId))
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
export function selectPolarDisplayedData(
|
|
77
|
-
state: ChartState,
|
|
78
|
-
axisType: PolarAxisType,
|
|
79
|
-
polarAxisId: AxisId,
|
|
80
|
-
): ChartData {
|
|
81
|
-
return combineDisplayedData(
|
|
82
|
-
selectPolarGraphicalItemsData(state, axisType, polarAxisId),
|
|
83
|
-
selectChartDataAndAlwaysIgnoreIndexes(state),
|
|
84
|
-
)
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
export function selectPolarAppliedValues(
|
|
88
|
-
state: ChartState,
|
|
89
|
-
axisType: PolarAxisType,
|
|
90
|
-
axisId: AxisId,
|
|
91
|
-
): AppliedChartData {
|
|
92
|
-
return combineAppliedValues(
|
|
93
|
-
selectPolarDisplayedData(state, axisType, axisId),
|
|
94
|
-
selectBaseAxis(state, axisType, axisId),
|
|
95
|
-
selectPolarItemsSettings(state, axisType, axisId),
|
|
96
|
-
)
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
export function selectAllPolarAppliedNumericalValues(
|
|
100
|
-
state: ChartState,
|
|
101
|
-
axisType: PolarAxisType,
|
|
102
|
-
axisId: AxisId,
|
|
103
|
-
): ReadonlyArray<AppliedChartDataWithErrorDomain> {
|
|
104
|
-
const data = selectPolarDisplayedData(state, axisType, axisId)
|
|
105
|
-
const axisSettings: BaseCartesianAxis = selectBaseAxis(state, axisType, axisId)
|
|
106
|
-
const items = selectPolarItemsSettings(state, axisType, axisId)
|
|
107
|
-
|
|
108
|
-
if (items.length > 0) {
|
|
109
|
-
return data
|
|
110
|
-
.flatMap((entry) => {
|
|
111
|
-
return items.flatMap((item): AppliedChartDataWithErrorDomain | undefined => {
|
|
112
|
-
const valueByDataKey: unknown = getValueByDataKey(
|
|
113
|
-
entry,
|
|
114
|
-
axisSettings.dataKey ?? item.dataKey,
|
|
115
|
-
)
|
|
116
|
-
return {
|
|
117
|
-
errorDomain: [],
|
|
118
|
-
value: valueByDataKey,
|
|
119
|
-
}
|
|
120
|
-
})
|
|
121
|
-
})
|
|
122
|
-
.filter(Boolean) as ReadonlyArray<AppliedChartDataWithErrorDomain>
|
|
123
|
-
}
|
|
124
|
-
if (axisSettings?.dataKey != null) {
|
|
125
|
-
return data.map(
|
|
126
|
-
(item): AppliedChartDataWithErrorDomain => ({
|
|
127
|
-
errorDomain: [],
|
|
128
|
-
value: getValueByDataKey(item, axisSettings.dataKey),
|
|
129
|
-
}),
|
|
130
|
-
)
|
|
131
|
-
}
|
|
132
|
-
return data.map((entry): AppliedChartDataWithErrorDomain => ({ errorDomain: [], value: entry }))
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
const unsupportedInPolarChart = (): undefined => undefined
|
|
136
|
-
|
|
137
|
-
function selectDomainOfAllPolarAppliedNumericalValues(
|
|
138
|
-
state: ChartState,
|
|
139
|
-
axisType: PolarAxisType,
|
|
140
|
-
axisId: AxisId,
|
|
141
|
-
): NumberDomain | undefined {
|
|
142
|
-
return combineDomainOfAllAppliedNumericalValuesIncludingErrorValues(
|
|
143
|
-
selectPolarDisplayedData(state, axisType, axisId),
|
|
144
|
-
selectBaseAxis(state, axisType, axisId),
|
|
145
|
-
selectPolarItemsSettings(state, axisType, axisId),
|
|
146
|
-
selectAllErrorBarSettings(state),
|
|
147
|
-
axisType,
|
|
148
|
-
selectChartDataSliceIgnoringIndexes(state),
|
|
149
|
-
)
|
|
150
|
-
}
|
|
151
|
-
|
|
152
|
-
function selectPolarNumericalDomain(
|
|
153
|
-
state: ChartState,
|
|
154
|
-
axisType: PolarAxisType,
|
|
155
|
-
axisId: AxisId,
|
|
156
|
-
): NumberDomain | undefined {
|
|
157
|
-
return combineNumericalDomain(
|
|
158
|
-
selectBaseAxis(state, axisType, axisId),
|
|
159
|
-
selectDomainDefinition(state, axisType, axisId),
|
|
160
|
-
selectDomainFromUserPreference(state, axisType, axisId),
|
|
161
|
-
unsupportedInPolarChart(),
|
|
162
|
-
selectDomainOfAllPolarAppliedNumericalValues(state, axisType, axisId),
|
|
163
|
-
unsupportedInPolarChart(),
|
|
164
|
-
selectChartLayout(state),
|
|
165
|
-
axisType,
|
|
166
|
-
)
|
|
167
|
-
}
|
|
168
|
-
|
|
169
|
-
export function selectPolarAxisDomain(
|
|
170
|
-
state: ChartState,
|
|
171
|
-
axisType: PolarAxisType,
|
|
172
|
-
polarAxisId: AxisId,
|
|
173
|
-
): NumberDomain | CategoricalDomain | undefined {
|
|
174
|
-
return combineAxisDomain(
|
|
175
|
-
selectBaseAxis(state, axisType, polarAxisId),
|
|
176
|
-
selectChartLayout(state),
|
|
177
|
-
selectPolarDisplayedData(state, axisType, polarAxisId),
|
|
178
|
-
selectPolarAppliedValues(state, axisType, polarAxisId),
|
|
179
|
-
selectStackOffsetType(state),
|
|
180
|
-
axisType,
|
|
181
|
-
selectPolarNumericalDomain(state, axisType, polarAxisId),
|
|
182
|
-
)
|
|
183
|
-
}
|
|
184
|
-
|
|
185
|
-
export function selectPolarNiceTicks(
|
|
186
|
-
state: ChartState,
|
|
187
|
-
axisType: PolarAxisType,
|
|
188
|
-
polarAxisId: AxisId,
|
|
189
|
-
): ReadonlyArray<number> | undefined {
|
|
190
|
-
return combineNiceTicks(
|
|
191
|
-
selectPolarAxisDomain(state, axisType, polarAxisId),
|
|
192
|
-
selectRenderableAxisSettings(state, axisType, polarAxisId),
|
|
193
|
-
selectRealScaleType(state, axisType, polarAxisId),
|
|
194
|
-
)
|
|
195
|
-
}
|
|
196
|
-
|
|
197
|
-
export function selectPolarAxisDomainIncludingNiceTicks(
|
|
198
|
-
state: ChartState,
|
|
199
|
-
axisType: PolarAxisType,
|
|
200
|
-
polarAxisId: AxisId,
|
|
201
|
-
): NumberDomain | CategoricalDomain | undefined {
|
|
202
|
-
return combineAxisDomainWithNiceTicks(
|
|
203
|
-
selectBaseAxis(state, axisType, polarAxisId),
|
|
204
|
-
selectPolarAxisDomain(state, axisType, polarAxisId),
|
|
205
|
-
selectPolarNiceTicks(state, axisType, polarAxisId),
|
|
206
|
-
axisType,
|
|
207
|
-
)
|
|
208
|
-
}
|
|
209
|
-
|
|
210
|
-
export function selectPolarAxisCheckedDomain(
|
|
211
|
-
state: ChartState,
|
|
212
|
-
axisType: PolarAxisType,
|
|
213
|
-
polarAxisId: AxisId,
|
|
214
|
-
): NumberDomain | CategoricalDomain | undefined {
|
|
215
|
-
return combineCheckedDomain(
|
|
216
|
-
selectRealScaleType(state, axisType, polarAxisId),
|
|
217
|
-
selectPolarAxisDomainIncludingNiceTicks(state, axisType, polarAxisId),
|
|
218
|
-
)
|
|
219
|
-
}
|
|
@@ -1,191 +0,0 @@
|
|
|
1
|
-
/* eslint-disable import/no-cycle */
|
|
2
|
-
import type { ChartState } from "../store"
|
|
3
|
-
import type { AngleAxisForRadar, RadarComposedData, RadiusAxisForRadar } from "../../polar/Radar"
|
|
4
|
-
import { computeRadarPoints } from "../../polar/Radar"
|
|
5
|
-
import type { BaseAxisWithScale } from "./axisSelectors"
|
|
6
|
-
import { selectHasBar } from "./axisSelectors"
|
|
7
|
-
import { selectPolarAxisScale, selectPolarAxisTicks } from "./polarScaleSelectors"
|
|
8
|
-
import { selectAngleAxis, selectAngleAxisRangeWithReversed, selectPolarViewBox, selectRadiusAxis } from "./polarAxisSelectors"
|
|
9
|
-
import type { AxisId } from "../cartesianAxisSlice"
|
|
10
|
-
import { selectChartDataAndAlwaysIgnoreIndexes } from "./dataSelectors"
|
|
11
|
-
import type { ChartDataState } from "../chartDataSlice"
|
|
12
|
-
import type { CategoricalDomain, DataKey, LayoutType, PolarViewBoxRequired, TickItem } from "../../util/types"
|
|
13
|
-
import { selectChartLayout } from "../../context/chartLayoutContext"
|
|
14
|
-
import { getBandSizeOfAxis, isCategoricalAxis } from "../../util/ChartUtils"
|
|
15
|
-
import type { AngleAxisSettings } from "../polarAxisSlice"
|
|
16
|
-
import { selectUnfilteredPolarItems, selectPolarAxisCheckedDomain } from "./polarSelectors"
|
|
17
|
-
import type { GraphicalItemId } from "../graphicalItemsSlice"
|
|
18
|
-
import { type RechartsScale, rechartsScaleFactory } from "../../util/scale/RechartsScale"
|
|
19
|
-
import { combineConfiguredScale } from "./combiners/combineConfiguredScale"
|
|
20
|
-
import { combineRealScaleType } from "./combiners/combineRealScaleType"
|
|
21
|
-
import { chartSelector } from "./chartSelector"
|
|
22
|
-
import { selectChartName } from "./rootPropsSelectors"
|
|
23
|
-
|
|
24
|
-
const selectRadiusAxisScale = chartSelector((
|
|
25
|
-
state: ChartState,
|
|
26
|
-
radiusAxisId: AxisId,
|
|
27
|
-
): RechartsScale | undefined => selectPolarAxisScale(state, "radiusAxis", radiusAxisId))
|
|
28
|
-
|
|
29
|
-
const selectRadiusAxisForRadar = chartSelector(function selectRadiusAxisForRadar(state: ChartState, radiusAxisId: AxisId): RadiusAxisForRadar | undefined {
|
|
30
|
-
const scale = selectRadiusAxisScale(state, radiusAxisId)
|
|
31
|
-
if (scale == null) {
|
|
32
|
-
return undefined
|
|
33
|
-
}
|
|
34
|
-
return { scale }
|
|
35
|
-
})
|
|
36
|
-
|
|
37
|
-
export const selectRadiusAxisForBandSize = chartSelector(function selectRadiusAxisForBandSize(state: ChartState, radiusAxisId: AxisId): BaseAxisWithScale | undefined {
|
|
38
|
-
const axisSettings = selectRadiusAxis(state, radiusAxisId)
|
|
39
|
-
const scale = selectRadiusAxisScale(state, radiusAxisId)
|
|
40
|
-
if (axisSettings == null || scale == null) {
|
|
41
|
-
return undefined
|
|
42
|
-
}
|
|
43
|
-
return {
|
|
44
|
-
...axisSettings,
|
|
45
|
-
scale,
|
|
46
|
-
}
|
|
47
|
-
})
|
|
48
|
-
|
|
49
|
-
const selectRadiusAxisTicks = chartSelector((
|
|
50
|
-
state: ChartState,
|
|
51
|
-
radiusAxisId: AxisId,
|
|
52
|
-
_angleAxisId: AxisId,
|
|
53
|
-
isPanorama: boolean,
|
|
54
|
-
): ReadonlyArray<TickItem> | undefined => {
|
|
55
|
-
return selectPolarAxisTicks(state, "radiusAxis", radiusAxisId, isPanorama)
|
|
56
|
-
})
|
|
57
|
-
|
|
58
|
-
const selectAngleAxisForRadar = (
|
|
59
|
-
state: ChartState,
|
|
60
|
-
_radiusAxisId: AxisId,
|
|
61
|
-
angleAxisId: AxisId,
|
|
62
|
-
): AngleAxisSettings => selectAngleAxis(state, angleAxisId)
|
|
63
|
-
|
|
64
|
-
const selectPolarAxisScaleForRadar = chartSelector((
|
|
65
|
-
state: ChartState,
|
|
66
|
-
_radiusAxisId: AxisId,
|
|
67
|
-
angleAxisId: AxisId,
|
|
68
|
-
): RechartsScale | undefined => selectPolarAxisScale(state, "angleAxis", angleAxisId))
|
|
69
|
-
|
|
70
|
-
export const selectAngleAxisForBandSize = chartSelector(function selectAngleAxisForBandSize(state: ChartState, _radiusAxisId: AxisId, angleAxisId: AxisId): BaseAxisWithScale | undefined {
|
|
71
|
-
const axisSettings = selectAngleAxisForRadar(state, _radiusAxisId, angleAxisId)
|
|
72
|
-
const scale = selectPolarAxisScaleForRadar(state, _radiusAxisId, angleAxisId)
|
|
73
|
-
if (axisSettings == null || scale == null) {
|
|
74
|
-
return undefined
|
|
75
|
-
}
|
|
76
|
-
return {
|
|
77
|
-
...axisSettings,
|
|
78
|
-
scale,
|
|
79
|
-
}
|
|
80
|
-
})
|
|
81
|
-
|
|
82
|
-
const selectAngleAxisTicks = chartSelector((
|
|
83
|
-
state: ChartState,
|
|
84
|
-
_radiusAxisId: AxisId,
|
|
85
|
-
angleAxisId: AxisId,
|
|
86
|
-
isPanorama: boolean,
|
|
87
|
-
): ReadonlyArray<TickItem> | undefined => {
|
|
88
|
-
return selectPolarAxisTicks(state, "angleAxis", angleAxisId, isPanorama)
|
|
89
|
-
})
|
|
90
|
-
|
|
91
|
-
export const selectAngleAxisWithScaleAndViewport = chartSelector(function selectAngleAxisWithScaleAndViewport(state: ChartState, _radiusAxisId: AxisId, angleAxisId: AxisId): AngleAxisForRadar | undefined {
|
|
92
|
-
const axisOptions = selectAngleAxisForRadar(state, _radiusAxisId, angleAxisId)
|
|
93
|
-
const scale = selectPolarAxisScaleForRadar(state, _radiusAxisId, angleAxisId)
|
|
94
|
-
const polarViewBox: PolarViewBoxRequired | undefined = selectPolarViewBox(state)
|
|
95
|
-
|
|
96
|
-
if (polarViewBox == null || scale == null) {
|
|
97
|
-
return undefined
|
|
98
|
-
}
|
|
99
|
-
return {
|
|
100
|
-
cx: polarViewBox.cx,
|
|
101
|
-
cy: polarViewBox.cy,
|
|
102
|
-
dataKey: axisOptions.dataKey,
|
|
103
|
-
scale,
|
|
104
|
-
type: axisOptions.type,
|
|
105
|
-
}
|
|
106
|
-
})
|
|
107
|
-
|
|
108
|
-
const selectAngleAxisWithScaleAndViewportWithOverride = chartSelector(function selectAngleAxisWithScaleAndViewportWithOverride(state: ChartState, _radiusAxisId: AxisId, angleAxisId: AxisId, override: AngleAxisSettings): AngleAxisForRadar | undefined {
|
|
109
|
-
const polarViewBox: PolarViewBoxRequired | undefined = selectPolarViewBox(state)
|
|
110
|
-
if (polarViewBox == null) {
|
|
111
|
-
return undefined
|
|
112
|
-
}
|
|
113
|
-
const axisRange = selectAngleAxisRangeWithReversed(state, angleAxisId)
|
|
114
|
-
if (axisRange == null) {
|
|
115
|
-
return undefined
|
|
116
|
-
}
|
|
117
|
-
/* When override has an explicit domain use it directly so mutations that set a
|
|
118
|
-
numerical domain on a categorical axis actually change the scale — bypassing
|
|
119
|
-
the data-derived categorical domain that would otherwise override it. */
|
|
120
|
-
const axisDomain = override.domain != null
|
|
121
|
-
? (override.domain as unknown as CategoricalDomain)
|
|
122
|
-
: selectPolarAxisCheckedDomain(state, "angleAxis", angleAxisId)
|
|
123
|
-
if (axisDomain == null) {
|
|
124
|
-
return undefined
|
|
125
|
-
}
|
|
126
|
-
const realScaleType = combineRealScaleType(override, selectHasBar(state), selectChartName(state))
|
|
127
|
-
const scale: RechartsScale | undefined = rechartsScaleFactory(
|
|
128
|
-
combineConfiguredScale(override, realScaleType, axisDomain, axisRange),
|
|
129
|
-
)
|
|
130
|
-
if (scale == null) {
|
|
131
|
-
return undefined
|
|
132
|
-
}
|
|
133
|
-
return {
|
|
134
|
-
cx: polarViewBox.cx,
|
|
135
|
-
cy: polarViewBox.cy,
|
|
136
|
-
dataKey: override.dataKey,
|
|
137
|
-
scale,
|
|
138
|
-
type: override.type,
|
|
139
|
-
}
|
|
140
|
-
})
|
|
141
|
-
|
|
142
|
-
const selectBandSizeOfAxis = chartSelector(function selectBandSizeOfAxis(state: ChartState, radiusAxisId: AxisId, angleAxisId: AxisId, isPanorama: boolean): number | undefined {
|
|
143
|
-
const layout: LayoutType = selectChartLayout(state)
|
|
144
|
-
const radiusAxis = selectRadiusAxisForBandSize(state, radiusAxisId)
|
|
145
|
-
const radiusAxisTicks = selectRadiusAxisTicks(state, radiusAxisId, angleAxisId, isPanorama)
|
|
146
|
-
const angleAxis = selectAngleAxisForBandSize(state, radiusAxisId, angleAxisId)
|
|
147
|
-
const angleAxisTicks = selectAngleAxisTicks(state, radiusAxisId, angleAxisId, isPanorama)
|
|
148
|
-
|
|
149
|
-
if (isCategoricalAxis(layout, "radiusAxis")) {
|
|
150
|
-
return getBandSizeOfAxis(radiusAxis, radiusAxisTicks, false)
|
|
151
|
-
}
|
|
152
|
-
return getBandSizeOfAxis(angleAxis, angleAxisTicks, false)
|
|
153
|
-
})
|
|
154
|
-
|
|
155
|
-
const selectSynchronisedRadarDataKey = chartSelector(function selectSynchronisedRadarDataKey(state: ChartState, radarId: GraphicalItemId): DataKey<unknown> | undefined {
|
|
156
|
-
const graphicalItems = selectUnfilteredPolarItems(state)
|
|
157
|
-
if (graphicalItems == null) {
|
|
158
|
-
return undefined
|
|
159
|
-
}
|
|
160
|
-
const pgis = graphicalItems.find((item) => item.type === "radar" && radarId === item.id)
|
|
161
|
-
return pgis?.dataKey
|
|
162
|
-
})
|
|
163
|
-
|
|
164
|
-
export const selectRadarPoints = chartSelector(function selectRadarPoints(state: ChartState, radiusAxisId: AxisId, angleAxisId: AxisId, isPanorama: boolean, radarId: GraphicalItemId, angleAxisOverride?: AngleAxisSettings): RadarComposedData | undefined {
|
|
165
|
-
const radiusAxis = selectRadiusAxisForRadar(state, radiusAxisId)
|
|
166
|
-
const angleAxis = angleAxisOverride != null
|
|
167
|
-
? selectAngleAxisWithScaleAndViewportWithOverride(state, radiusAxisId, angleAxisId, angleAxisOverride)
|
|
168
|
-
: selectAngleAxisWithScaleAndViewport(state, radiusAxisId, angleAxisId)
|
|
169
|
-
const { chartData, dataStartIndex, dataEndIndex }: ChartDataState =
|
|
170
|
-
selectChartDataAndAlwaysIgnoreIndexes(state)
|
|
171
|
-
const dataKey = selectSynchronisedRadarDataKey(state, radarId)
|
|
172
|
-
const bandSize = selectBandSizeOfAxis(state, radiusAxisId, angleAxisId, isPanorama)
|
|
173
|
-
|
|
174
|
-
if (
|
|
175
|
-
radiusAxis == null ||
|
|
176
|
-
angleAxis == null ||
|
|
177
|
-
chartData == null ||
|
|
178
|
-
bandSize == null ||
|
|
179
|
-
dataKey == null
|
|
180
|
-
) {
|
|
181
|
-
return undefined
|
|
182
|
-
}
|
|
183
|
-
const displayedData = chartData.slice(dataStartIndex, dataEndIndex + 1)
|
|
184
|
-
return computeRadarPoints({
|
|
185
|
-
angleAxis,
|
|
186
|
-
bandSize,
|
|
187
|
-
dataKey,
|
|
188
|
-
displayedData,
|
|
189
|
-
radiusAxis,
|
|
190
|
-
})
|
|
191
|
-
})
|