react-native-chart-kit 7.0.0-next.0 → 7.0.0-next.2
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/README.md +17 -0
- package/dist/v2/core/data/index.d.ts +3 -0
- package/dist/v2/core/data/index.d.ts.map +1 -0
- package/dist/v2/core/data/index.js +1 -0
- package/dist/v2/core/data/normalize.d.ts +8 -0
- package/dist/v2/core/data/normalize.d.ts.map +1 -0
- package/dist/v2/core/data/normalize.js +229 -0
- package/dist/v2/core/data/normalizeValues.d.ts +16 -0
- package/dist/v2/core/data/normalizeValues.d.ts.map +1 -0
- package/dist/v2/core/data/normalizeValues.js +96 -0
- package/dist/v2/core/data/types.d.ts +161 -0
- package/dist/v2/core/data/types.d.ts.map +1 -0
- package/dist/v2/core/data/types.js +1 -0
- package/dist/v2/core/geometry/areaPath.d.ts +3 -0
- package/dist/v2/core/geometry/areaPath.d.ts.map +1 -0
- package/dist/v2/core/geometry/areaPath.js +36 -0
- package/dist/v2/core/geometry/barRects.d.ts +44 -0
- package/dist/v2/core/geometry/barRects.d.ts.map +1 -0
- package/dist/v2/core/geometry/barRects.js +201 -0
- package/dist/v2/core/geometry/contributionHeatmap.d.ts +49 -0
- package/dist/v2/core/geometry/contributionHeatmap.d.ts.map +1 -0
- package/dist/v2/core/geometry/contributionHeatmap.js +107 -0
- package/dist/v2/core/geometry/horizontalBarRects.d.ts +27 -0
- package/dist/v2/core/geometry/horizontalBarRects.d.ts.map +1 -0
- package/dist/v2/core/geometry/horizontalBarRects.js +202 -0
- package/dist/v2/core/geometry/index.d.ts +12 -0
- package/dist/v2/core/geometry/index.d.ts.map +1 -0
- package/dist/v2/core/geometry/index.js +11 -0
- package/dist/v2/core/geometry/lineDecimation.d.ts +8 -0
- package/dist/v2/core/geometry/lineDecimation.d.ts.map +1 -0
- package/dist/v2/core/geometry/lineDecimation.js +110 -0
- package/dist/v2/core/geometry/linePath.d.ts +5 -0
- package/dist/v2/core/geometry/linePath.d.ts.map +1 -0
- package/dist/v2/core/geometry/linePath.js +98 -0
- package/dist/v2/core/geometry/lineSeries.d.ts +29 -0
- package/dist/v2/core/geometry/lineSeries.d.ts.map +1 -0
- package/dist/v2/core/geometry/lineSeries.js +51 -0
- package/dist/v2/core/geometry/path.d.ts +6 -0
- package/dist/v2/core/geometry/path.d.ts.map +1 -0
- package/dist/v2/core/geometry/path.js +24 -0
- package/dist/v2/core/geometry/pieArcs.d.ts +29 -0
- package/dist/v2/core/geometry/pieArcs.d.ts.map +1 -0
- package/dist/v2/core/geometry/pieArcs.js +142 -0
- package/dist/v2/core/geometry/progressRings.d.ts +30 -0
- package/dist/v2/core/geometry/progressRings.d.ts.map +1 -0
- package/dist/v2/core/geometry/progressRings.js +104 -0
- package/dist/v2/core/geometry/types.d.ts +32 -0
- package/dist/v2/core/geometry/types.d.ts.map +1 -0
- package/dist/v2/core/geometry/types.js +1 -0
- package/dist/v2/core/index.d.ts +6 -0
- package/dist/v2/core/index.d.ts.map +1 -0
- package/dist/v2/core/index.js +6 -0
- package/dist/v2/core/interaction/index.d.ts +5 -0
- package/dist/v2/core/interaction/index.d.ts.map +1 -0
- package/dist/v2/core/interaction/index.js +2 -0
- package/dist/v2/core/interaction/viewport.d.ts +71 -0
- package/dist/v2/core/interaction/viewport.d.ts.map +1 -0
- package/dist/v2/core/interaction/viewport.js +216 -0
- package/dist/v2/core/interaction/viewportTransform.d.ts +17 -0
- package/dist/v2/core/interaction/viewportTransform.d.ts.map +1 -0
- package/dist/v2/core/interaction/viewportTransform.js +70 -0
- package/dist/v2/core/layout/autoPadding.d.ts +3 -0
- package/dist/v2/core/layout/autoPadding.d.ts.map +1 -0
- package/dist/v2/core/layout/autoPadding.js +33 -0
- package/dist/v2/core/layout/chartBox.d.ts +5 -0
- package/dist/v2/core/layout/chartBox.d.ts.map +1 -0
- package/dist/v2/core/layout/chartBox.js +22 -0
- package/dist/v2/core/layout/debugLayout.d.ts +3 -0
- package/dist/v2/core/layout/debugLayout.d.ts.map +1 -0
- package/dist/v2/core/layout/debugLayout.js +20 -0
- package/dist/v2/core/layout/index.d.ts +8 -0
- package/dist/v2/core/layout/index.d.ts.map +1 -0
- package/dist/v2/core/layout/index.js +6 -0
- package/dist/v2/core/layout/labelCollision.d.ts +3 -0
- package/dist/v2/core/layout/labelCollision.d.ts.map +1 -0
- package/dist/v2/core/layout/labelCollision.js +90 -0
- package/dist/v2/core/layout/legendLayout.d.ts +3 -0
- package/dist/v2/core/layout/legendLayout.d.ts.map +1 -0
- package/dist/v2/core/layout/legendLayout.js +39 -0
- package/dist/v2/core/layout/tooltipPlacement.d.ts +3 -0
- package/dist/v2/core/layout/tooltipPlacement.d.ts.map +1 -0
- package/dist/v2/core/layout/tooltipPlacement.js +76 -0
- package/dist/v2/core/layout/types.d.ts +114 -0
- package/dist/v2/core/layout/types.d.ts.map +1 -0
- package/dist/v2/core/layout/types.js +1 -0
- package/dist/v2/core/scales/band.d.ts +15 -0
- package/dist/v2/core/scales/band.d.ts.map +1 -0
- package/dist/v2/core/scales/band.js +34 -0
- package/dist/v2/core/scales/domain.d.ts +6 -0
- package/dist/v2/core/scales/domain.d.ts.map +1 -0
- package/dist/v2/core/scales/domain.js +109 -0
- package/dist/v2/core/scales/index.d.ts +7 -0
- package/dist/v2/core/scales/index.d.ts.map +1 -0
- package/dist/v2/core/scales/index.js +5 -0
- package/dist/v2/core/scales/linear.d.ts +8 -0
- package/dist/v2/core/scales/linear.d.ts.map +1 -0
- package/dist/v2/core/scales/linear.js +22 -0
- package/dist/v2/core/scales/ticks.d.ts +4 -0
- package/dist/v2/core/scales/ticks.d.ts.map +1 -0
- package/dist/v2/core/scales/ticks.js +111 -0
- package/dist/v2/core/scales/time.d.ts +8 -0
- package/dist/v2/core/scales/time.d.ts.map +1 -0
- package/dist/v2/core/scales/time.js +23 -0
- package/dist/v2/core/scales/types.d.ts +46 -0
- package/dist/v2/core/scales/types.d.ts.map +1 -0
- package/dist/v2/core/scales/types.js +1 -0
- package/dist/v2/index.d.ts +1 -0
- package/dist/v2/index.js +1 -0
- package/dist/v2/react-native/charts/bar/BarChart.d.ts +6 -0
- package/dist/v2/react-native/charts/bar/BarChart.d.ts.map +1 -0
- package/dist/v2/react-native/charts/bar/BarChart.js +198 -0
- package/dist/v2/react-native/charts/bar/BarChartSurface.d.ts +36 -0
- package/dist/v2/react-native/charts/bar/BarChartSurface.d.ts.map +1 -0
- package/dist/v2/react-native/charts/bar/BarChartSurface.js +126 -0
- package/dist/v2/react-native/charts/bar/StackedBarChart.d.ts +4 -0
- package/dist/v2/react-native/charts/bar/StackedBarChart.d.ts.map +1 -0
- package/dist/v2/react-native/charts/bar/StackedBarChart.js +9 -0
- package/dist/v2/react-native/charts/bar/accessibility.d.ts +31 -0
- package/dist/v2/react-native/charts/bar/accessibility.d.ts.map +1 -0
- package/dist/v2/react-native/charts/bar/accessibility.js +87 -0
- package/dist/v2/react-native/charts/bar/interaction.d.ts +18 -0
- package/dist/v2/react-native/charts/bar/interaction.d.ts.map +1 -0
- package/dist/v2/react-native/charts/bar/interaction.js +62 -0
- package/dist/v2/react-native/charts/bar/model.d.ts +3 -0
- package/dist/v2/react-native/charts/bar/model.d.ts.map +1 -0
- package/dist/v2/react-native/charts/bar/model.js +326 -0
- package/dist/v2/react-native/charts/bar/modelUtils.d.ts +27 -0
- package/dist/v2/react-native/charts/bar/modelUtils.d.ts.map +1 -0
- package/dist/v2/react-native/charts/bar/modelUtils.js +58 -0
- package/dist/v2/react-native/charts/bar/options.d.ts +7 -0
- package/dist/v2/react-native/charts/bar/options.d.ts.map +1 -0
- package/dist/v2/react-native/charts/bar/options.js +49 -0
- package/dist/v2/react-native/charts/bar/rendererSafety.d.ts +12 -0
- package/dist/v2/react-native/charts/bar/rendererSafety.d.ts.map +1 -0
- package/dist/v2/react-native/charts/bar/rendererSafety.js +31 -0
- package/dist/v2/react-native/charts/bar/selectionAnimation.d.ts +42 -0
- package/dist/v2/react-native/charts/bar/selectionAnimation.d.ts.map +1 -0
- package/dist/v2/react-native/charts/bar/selectionAnimation.js +158 -0
- package/dist/v2/react-native/charts/bar/stackedCompat.d.ts +55 -0
- package/dist/v2/react-native/charts/bar/stackedCompat.d.ts.map +1 -0
- package/dist/v2/react-native/charts/bar/stackedCompat.js +105 -0
- package/dist/v2/react-native/charts/bar/tooltip.d.ts +11 -0
- package/dist/v2/react-native/charts/bar/tooltip.d.ts.map +1 -0
- package/dist/v2/react-native/charts/bar/tooltip.js +15 -0
- package/dist/v2/react-native/charts/bar/tooltipModel.d.ts +33 -0
- package/dist/v2/react-native/charts/bar/tooltipModel.d.ts.map +1 -0
- package/dist/v2/react-native/charts/bar/tooltipModel.js +40 -0
- package/dist/v2/react-native/charts/bar/tooltipPlacement.d.ts +9 -0
- package/dist/v2/react-native/charts/bar/tooltipPlacement.d.ts.map +1 -0
- package/dist/v2/react-native/charts/bar/tooltipPlacement.js +9 -0
- package/dist/v2/react-native/charts/bar/types.d.ts +211 -0
- package/dist/v2/react-native/charts/bar/types.d.ts.map +1 -0
- package/dist/v2/react-native/charts/bar/types.js +1 -0
- package/dist/v2/react-native/charts/bar/useAnimatedTooltipModel.d.ts +10 -0
- package/dist/v2/react-native/charts/bar/useAnimatedTooltipModel.d.ts.map +1 -0
- package/dist/v2/react-native/charts/bar/useAnimatedTooltipModel.js +87 -0
- package/dist/v2/react-native/charts/bar/viewport.d.ts +20 -0
- package/dist/v2/react-native/charts/bar/viewport.d.ts.map +1 -0
- package/dist/v2/react-native/charts/bar/viewport.js +47 -0
- package/dist/v2/react-native/charts/contribution/ContributionGraph.d.ts +13 -0
- package/dist/v2/react-native/charts/contribution/ContributionGraph.d.ts.map +1 -0
- package/dist/v2/react-native/charts/contribution/ContributionGraph.js +65 -0
- package/dist/v2/react-native/charts/contribution/accessibility.d.ts +25 -0
- package/dist/v2/react-native/charts/contribution/accessibility.d.ts.map +1 -0
- package/dist/v2/react-native/charts/contribution/accessibility.js +50 -0
- package/dist/v2/react-native/charts/contribution/model.d.ts +17 -0
- package/dist/v2/react-native/charts/contribution/model.d.ts.map +1 -0
- package/dist/v2/react-native/charts/contribution/model.js +102 -0
- package/dist/v2/react-native/charts/contribution/types.d.ts +50 -0
- package/dist/v2/react-native/charts/contribution/types.d.ts.map +1 -0
- package/dist/v2/react-native/charts/contribution/types.js +1 -0
- package/dist/v2/react-native/charts/line/AreaChart.d.ts +3 -0
- package/dist/v2/react-native/charts/line/AreaChart.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/AreaChart.js +3 -0
- package/dist/v2/react-native/charts/line/ChartSurface.d.ts +16 -0
- package/dist/v2/react-native/charts/line/ChartSurface.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/ChartSurface.js +151 -0
- package/dist/v2/react-native/charts/line/LineChart.d.ts +6 -0
- package/dist/v2/react-native/charts/line/LineChart.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/LineChart.js +294 -0
- package/dist/v2/react-native/charts/line/StickyYAxis.d.ts +15 -0
- package/dist/v2/react-native/charts/line/StickyYAxis.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/StickyYAxis.js +26 -0
- package/dist/v2/react-native/charts/line/accessibility.d.ts +34 -0
- package/dist/v2/react-native/charts/line/accessibility.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/accessibility.js +103 -0
- package/dist/v2/react-native/charts/line/axisLabels.d.ts +37 -0
- package/dist/v2/react-native/charts/line/axisLabels.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/axisLabels.js +55 -0
- package/dist/v2/react-native/charts/line/debugLayout.d.ts +26 -0
- package/dist/v2/react-native/charts/line/debugLayout.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/debugLayout.js +77 -0
- package/dist/v2/react-native/charts/line/debugOverlay.d.ts +9 -0
- package/dist/v2/react-native/charts/line/debugOverlay.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/debugOverlay.js +30 -0
- package/dist/v2/react-native/charts/line/defaultTooltip.d.ts +3 -0
- package/dist/v2/react-native/charts/line/defaultTooltip.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/defaultTooltip.js +17 -0
- package/dist/v2/react-native/charts/line/interaction.d.ts +82 -0
- package/dist/v2/react-native/charts/line/interaction.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/interaction.js +94 -0
- package/dist/v2/react-native/charts/line/legend.d.ts +35 -0
- package/dist/v2/react-native/charts/line/legend.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/legend.js +95 -0
- package/dist/v2/react-native/charts/line/markers.d.ts +11 -0
- package/dist/v2/react-native/charts/line/markers.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/markers.js +52 -0
- package/dist/v2/react-native/charts/line/options.d.ts +172 -0
- package/dist/v2/react-native/charts/line/options.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/options.js +168 -0
- package/dist/v2/react-native/charts/line/outsidePressSurfaces.d.ts +15 -0
- package/dist/v2/react-native/charts/line/outsidePressSurfaces.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/outsidePressSurfaces.js +37 -0
- package/dist/v2/react-native/charts/line/overviewProps.d.ts +45 -0
- package/dist/v2/react-native/charts/line/overviewProps.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/overviewProps.js +4 -0
- package/dist/v2/react-native/charts/line/rangeSelector.d.ts +19 -0
- package/dist/v2/react-native/charts/line/rangeSelector.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/rangeSelector.js +176 -0
- package/dist/v2/react-native/charts/line/rangeSelectorConfig.d.ts +38 -0
- package/dist/v2/react-native/charts/line/rangeSelectorConfig.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/rangeSelectorConfig.js +41 -0
- package/dist/v2/react-native/charts/line/referenceLabelPlacement.d.ts +21 -0
- package/dist/v2/react-native/charts/line/referenceLabelPlacement.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/referenceLabelPlacement.js +113 -0
- package/dist/v2/react-native/charts/line/references.d.ts +62 -0
- package/dist/v2/react-native/charts/line/references.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/references.js +156 -0
- package/dist/v2/react-native/charts/line/renderer.d.ts +4 -0
- package/dist/v2/react-native/charts/line/renderer.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/renderer.js +23 -0
- package/dist/v2/react-native/charts/line/responders.d.ts +13 -0
- package/dist/v2/react-native/charts/line/responders.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/responders.js +59 -0
- package/dist/v2/react-native/charts/line/selection.d.ts +31 -0
- package/dist/v2/react-native/charts/line/selection.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/selection.js +26 -0
- package/dist/v2/react-native/charts/line/seriesInput.d.ts +4 -0
- package/dist/v2/react-native/charts/line/seriesInput.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/seriesInput.js +13 -0
- package/dist/v2/react-native/charts/line/seriesStyles.d.ts +20 -0
- package/dist/v2/react-native/charts/line/seriesStyles.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/seriesStyles.js +33 -0
- package/dist/v2/react-native/charts/line/stickyYAxisLayout.d.ts +6 -0
- package/dist/v2/react-native/charts/line/stickyYAxisLayout.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/stickyYAxisLayout.js +2 -0
- package/dist/v2/react-native/charts/line/text.d.ts +7 -0
- package/dist/v2/react-native/charts/line/text.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/text.js +7 -0
- package/dist/v2/react-native/charts/line/thresholdRendering.d.ts +28 -0
- package/dist/v2/react-native/charts/line/thresholdRendering.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/thresholdRendering.js +145 -0
- package/dist/v2/react-native/charts/line/tooltip.d.ts +70 -0
- package/dist/v2/react-native/charts/line/tooltip.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/tooltip.js +87 -0
- package/dist/v2/react-native/charts/line/types.d.ts +371 -0
- package/dist/v2/react-native/charts/line/types.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/types.js +1 -0
- package/dist/v2/react-native/charts/line/useAnimatedTooltipModel.d.ts +13 -0
- package/dist/v2/react-native/charts/line/useAnimatedTooltipModel.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/useAnimatedTooltipModel.js +84 -0
- package/dist/v2/react-native/charts/line/useAnimatedYAxisLabels.d.ts +5 -0
- package/dist/v2/react-native/charts/line/useAnimatedYAxisLabels.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/useAnimatedYAxisLabels.js +141 -0
- package/dist/v2/react-native/charts/line/useChartModel.d.ts +103 -0
- package/dist/v2/react-native/charts/line/useChartModel.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/useChartModel.js +367 -0
- package/dist/v2/react-native/charts/line/useDebugLayout.d.ts +16 -0
- package/dist/v2/react-native/charts/line/useDebugLayout.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/useDebugLayout.js +35 -0
- package/dist/v2/react-native/charts/line/utils.d.ts +10 -0
- package/dist/v2/react-native/charts/line/utils.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/utils.js +40 -0
- package/dist/v2/react-native/charts/line/viewportInteraction.d.ts +3 -0
- package/dist/v2/react-native/charts/line/viewportInteraction.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/viewportInteraction.js +1 -0
- package/dist/v2/react-native/charts/line/viewportInteractionConfig.d.ts +3 -0
- package/dist/v2/react-native/charts/line/viewportInteractionConfig.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/viewportInteractionConfig.js +1 -0
- package/dist/v2/react-native/charts/line/viewportPinchZoom.d.ts +2 -0
- package/dist/v2/react-native/charts/line/viewportPinchZoom.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/viewportPinchZoom.js +1 -0
- package/dist/v2/react-native/charts/line/xLabelCandidates.d.ts +13 -0
- package/dist/v2/react-native/charts/line/xLabelCandidates.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/xLabelCandidates.js +23 -0
- package/dist/v2/react-native/charts/line/xLabels.d.ts +39 -0
- package/dist/v2/react-native/charts/line/xLabels.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/xLabels.js +289 -0
- package/dist/v2/react-native/charts/line/xScale.d.ts +6 -0
- package/dist/v2/react-native/charts/line/xScale.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/xScale.js +25 -0
- package/dist/v2/react-native/charts/line/yAxisModel.d.ts +29 -0
- package/dist/v2/react-native/charts/line/yAxisModel.d.ts.map +1 -0
- package/dist/v2/react-native/charts/line/yAxisModel.js +39 -0
- package/dist/v2/react-native/charts/pie/PieChart.d.ts +7 -0
- package/dist/v2/react-native/charts/pie/PieChart.d.ts.map +1 -0
- package/dist/v2/react-native/charts/pie/PieChart.js +244 -0
- package/dist/v2/react-native/charts/pie/accessibility.d.ts +28 -0
- package/dist/v2/react-native/charts/pie/accessibility.d.ts.map +1 -0
- package/dist/v2/react-native/charts/pie/accessibility.js +49 -0
- package/dist/v2/react-native/charts/pie/activeSlice.d.ts +15 -0
- package/dist/v2/react-native/charts/pie/activeSlice.d.ts.map +1 -0
- package/dist/v2/react-native/charts/pie/activeSlice.js +26 -0
- package/dist/v2/react-native/charts/pie/arcLabels.d.ts +32 -0
- package/dist/v2/react-native/charts/pie/arcLabels.d.ts.map +1 -0
- package/dist/v2/react-native/charts/pie/arcLabels.js +191 -0
- package/dist/v2/react-native/charts/pie/interaction.d.ts +26 -0
- package/dist/v2/react-native/charts/pie/interaction.d.ts.map +1 -0
- package/dist/v2/react-native/charts/pie/interaction.js +66 -0
- package/dist/v2/react-native/charts/pie/model.d.ts +15 -0
- package/dist/v2/react-native/charts/pie/model.d.ts.map +1 -0
- package/dist/v2/react-native/charts/pie/model.js +157 -0
- package/dist/v2/react-native/charts/pie/selectionAnimation.d.ts +33 -0
- package/dist/v2/react-native/charts/pie/selectionAnimation.d.ts.map +1 -0
- package/dist/v2/react-native/charts/pie/selectionAnimation.js +121 -0
- package/dist/v2/react-native/charts/pie/sliceSeparator.d.ts +7 -0
- package/dist/v2/react-native/charts/pie/sliceSeparator.d.ts.map +1 -0
- package/dist/v2/react-native/charts/pie/sliceSeparator.js +26 -0
- package/dist/v2/react-native/charts/pie/slices.d.ts +20 -0
- package/dist/v2/react-native/charts/pie/slices.d.ts.map +1 -0
- package/dist/v2/react-native/charts/pie/slices.js +54 -0
- package/dist/v2/react-native/charts/pie/types.d.ts +165 -0
- package/dist/v2/react-native/charts/pie/types.d.ts.map +1 -0
- package/dist/v2/react-native/charts/pie/types.js +1 -0
- package/dist/v2/react-native/charts/progress/ProgressChart.d.ts +7 -0
- package/dist/v2/react-native/charts/progress/ProgressChart.d.ts.map +1 -0
- package/dist/v2/react-native/charts/progress/ProgressChart.js +111 -0
- package/dist/v2/react-native/charts/progress/accessibility.d.ts +26 -0
- package/dist/v2/react-native/charts/progress/accessibility.d.ts.map +1 -0
- package/dist/v2/react-native/charts/progress/accessibility.js +71 -0
- package/dist/v2/react-native/charts/progress/animation.d.ts +36 -0
- package/dist/v2/react-native/charts/progress/animation.d.ts.map +1 -0
- package/dist/v2/react-native/charts/progress/animation.js +103 -0
- package/dist/v2/react-native/charts/progress/model.d.ts +14 -0
- package/dist/v2/react-native/charts/progress/model.d.ts.map +1 -0
- package/dist/v2/react-native/charts/progress/model.js +133 -0
- package/dist/v2/react-native/charts/progress/types.d.ts +72 -0
- package/dist/v2/react-native/charts/progress/types.d.ts.map +1 -0
- package/dist/v2/react-native/charts/progress/types.js +1 -0
- package/dist/v2/react-native/index.d.ts +24 -0
- package/dist/v2/react-native/index.d.ts.map +1 -0
- package/dist/v2/react-native/index.js +14 -0
- package/dist/v2/react-native/selection/ChartSelectionProvider.d.ts +27 -0
- package/dist/v2/react-native/selection/ChartSelectionProvider.d.ts.map +1 -0
- package/dist/v2/react-native/selection/ChartSelectionProvider.js +92 -0
- package/dist/v2/react-native/selection/index.d.ts +2 -0
- package/dist/v2/react-native/selection/index.d.ts.map +1 -0
- package/dist/v2/react-native/selection/index.js +1 -0
- package/dist/v2/react-native/selection/scope.d.ts +16 -0
- package/dist/v2/react-native/selection/scope.d.ts.map +1 -0
- package/dist/v2/react-native/selection/scope.js +18 -0
- package/dist/v2/react-native/theme/index.d.ts +4 -0
- package/dist/v2/react-native/theme/index.d.ts.map +1 -0
- package/dist/v2/react-native/theme/index.js +2 -0
- package/dist/v2/react-native/theme/presets.d.ts +84 -0
- package/dist/v2/react-native/theme/presets.d.ts.map +1 -0
- package/dist/v2/react-native/theme/presets.js +298 -0
- package/dist/v2/react-native/theme/provider.d.ts +20 -0
- package/dist/v2/react-native/theme/provider.d.ts.map +1 -0
- package/dist/v2/react-native/theme/provider.js +27 -0
- package/dist/v2/react-native/viewport/bounds.d.ts +7 -0
- package/dist/v2/react-native/viewport/bounds.d.ts.map +1 -0
- package/dist/v2/react-native/viewport/bounds.js +7 -0
- package/dist/v2/react-native/viewport/config.d.ts +13 -0
- package/dist/v2/react-native/viewport/config.d.ts.map +1 -0
- package/dist/v2/react-native/viewport/config.js +64 -0
- package/dist/v2/react-native/viewport/pan.d.ts +23 -0
- package/dist/v2/react-native/viewport/pan.d.ts.map +1 -0
- package/dist/v2/react-native/viewport/pan.js +110 -0
- package/dist/v2/react-native/viewport/panResponder.d.ts +14 -0
- package/dist/v2/react-native/viewport/panResponder.d.ts.map +1 -0
- package/dist/v2/react-native/viewport/panResponder.js +115 -0
- package/dist/v2/react-native/viewport/pinchZoom.d.ts +17 -0
- package/dist/v2/react-native/viewport/pinchZoom.d.ts.map +1 -0
- package/dist/v2/react-native/viewport/pinchZoom.js +131 -0
- package/dist/v2/react-native/viewport/types.d.ts +55 -0
- package/dist/v2/react-native/viewport/types.d.ts.map +1 -0
- package/dist/v2/react-native/viewport/types.js +1 -0
- package/dist/v2/svg-renderer/capabilities.d.ts +3 -0
- package/dist/v2/svg-renderer/capabilities.d.ts.map +1 -0
- package/dist/v2/svg-renderer/capabilities.js +12 -0
- package/dist/v2/svg-renderer/clipPath.d.ts +4 -0
- package/dist/v2/svg-renderer/clipPath.d.ts.map +1 -0
- package/dist/v2/svg-renderer/clipPath.js +35 -0
- package/dist/v2/svg-renderer/defs.d.ts +6 -0
- package/dist/v2/svg-renderer/defs.d.ts.map +1 -0
- package/dist/v2/svg-renderer/defs.js +18 -0
- package/dist/v2/svg-renderer/ensureConsole.d.ts +4 -0
- package/dist/v2/svg-renderer/ensureConsole.d.ts.map +1 -0
- package/dist/v2/svg-renderer/ensureConsole.js +54 -0
- package/dist/v2/svg-renderer/hitRegions.d.ts +3 -0
- package/dist/v2/svg-renderer/hitRegions.d.ts.map +1 -0
- package/dist/v2/svg-renderer/hitRegions.js +6 -0
- package/dist/v2/svg-renderer/index.d.ts +14 -0
- package/dist/v2/svg-renderer/index.d.ts.map +1 -0
- package/dist/v2/svg-renderer/index.js +13 -0
- package/dist/v2/svg-renderer/layerOrder.d.ts +19 -0
- package/dist/v2/svg-renderer/layerOrder.d.ts.map +1 -0
- package/dist/v2/svg-renderer/layerOrder.js +18 -0
- package/dist/v2/svg-renderer/layers.d.ts +3 -0
- package/dist/v2/svg-renderer/layers.d.ts.map +1 -0
- package/dist/v2/svg-renderer/layers.js +4 -0
- package/dist/v2/svg-renderer/primitives.d.ts +12 -0
- package/dist/v2/svg-renderer/primitives.d.ts.map +1 -0
- package/dist/v2/svg-renderer/primitives.js +13 -0
- package/dist/v2/svg-renderer/renderer.d.ts +4 -0
- package/dist/v2/svg-renderer/renderer.d.ts.map +1 -0
- package/dist/v2/svg-renderer/renderer.js +24 -0
- package/dist/v2/svg-renderer/symbolGeometry.d.ts +6 -0
- package/dist/v2/svg-renderer/symbolGeometry.d.ts.map +1 -0
- package/dist/v2/svg-renderer/symbolGeometry.js +10 -0
- package/dist/v2/svg-renderer/symbols.d.ts +3 -0
- package/dist/v2/svg-renderer/symbols.d.ts.map +1 -0
- package/dist/v2/svg-renderer/symbols.js +23 -0
- package/dist/v2/svg-renderer/testIds.d.ts +2 -0
- package/dist/v2/svg-renderer/testIds.d.ts.map +1 -0
- package/dist/v2/svg-renderer/testIds.js +10 -0
- package/dist/v2/svg-renderer/textMeasurement.d.ts +4 -0
- package/dist/v2/svg-renderer/textMeasurement.d.ts.map +1 -0
- package/dist/v2/svg-renderer/textMeasurement.js +37 -0
- package/dist/v2/svg-renderer/types.d.ts +134 -0
- package/dist/v2/svg-renderer/types.d.ts.map +1 -0
- package/dist/v2/svg-renderer/types.js +1 -0
- package/package.json +46 -47
- package/v2/index.d.ts +1 -0
- package/v2/index.js +1 -0
- package/v2/package.json +6 -0
- package/scripts/chartkit-codemod.mjs +0 -256
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
export type LineCurve = "linear" | "monotone" | "step";
|
|
2
|
+
export type GeometryPoint<TData = unknown> = {
|
|
3
|
+
index: number;
|
|
4
|
+
x: number;
|
|
5
|
+
y: number;
|
|
6
|
+
defined: boolean;
|
|
7
|
+
value?: number | null;
|
|
8
|
+
raw?: TData;
|
|
9
|
+
};
|
|
10
|
+
export type GeometrySegment<TPoint extends GeometryPoint = GeometryPoint> = {
|
|
11
|
+
points: TPoint[];
|
|
12
|
+
path: string;
|
|
13
|
+
};
|
|
14
|
+
export type LinePathModel<TPoint extends GeometryPoint = GeometryPoint> = {
|
|
15
|
+
path: string;
|
|
16
|
+
segments: Array<GeometrySegment<TPoint>>;
|
|
17
|
+
};
|
|
18
|
+
export type LinePathDecimationStrategy = "min-max";
|
|
19
|
+
export type LinePathDecimationConfig = {
|
|
20
|
+
maxPoints: number;
|
|
21
|
+
strategy?: LinePathDecimationStrategy;
|
|
22
|
+
};
|
|
23
|
+
export type BuildLinePathOptions<TPoint extends GeometryPoint = GeometryPoint> = {
|
|
24
|
+
points: TPoint[];
|
|
25
|
+
curve?: LineCurve;
|
|
26
|
+
connectNulls?: boolean;
|
|
27
|
+
decimation?: false | LinePathDecimationConfig | undefined;
|
|
28
|
+
};
|
|
29
|
+
export type BuildAreaPathOptions<TPoint extends GeometryPoint = GeometryPoint> = BuildLinePathOptions<TPoint> & {
|
|
30
|
+
baselineY: number | ((point: TPoint) => number);
|
|
31
|
+
};
|
|
32
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/geometry/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,UAAU,GAAG,MAAM,CAAC;AAEvD,MAAM,MAAM,aAAa,CAAC,KAAK,GAAG,OAAO,IAAI;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,GAAG,CAAC,EAAE,KAAK,CAAC;CACb,CAAC;AAEF,MAAM,MAAM,eAAe,CAAC,MAAM,SAAS,aAAa,GAAG,aAAa,IAAI;IAC1E,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,aAAa,CAAC,MAAM,SAAS,aAAa,GAAG,aAAa,IAAI;IACxE,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG,SAAS,CAAC;AAEnD,MAAM,MAAM,wBAAwB,GAAG;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,0BAA0B,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,oBAAoB,CAAC,MAAM,SAAS,aAAa,GAAG,aAAa,IAC3E;IACE,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,UAAU,CAAC,EAAE,KAAK,GAAG,wBAAwB,GAAG,SAAS,CAAC;CAC3D,CAAC;AAEJ,MAAM,MAAM,oBAAoB,CAAC,MAAM,SAAS,aAAa,GAAG,aAAa,IAC3E,oBAAoB,CAAC,MAAM,CAAC,GAAG;IAC7B,SAAS,EAAE,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC;CACjD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { resolveChartViewport, resolveChartViewportIndexFromPosition, resolveChartViewportInitialOffset, resolveChartViewportPresetWindow, resolveChartViewportWindow, resolveChartViewportWindowFromHandlePosition, resolveChartViewportWindowFromPosition, sliceChartViewportData } from "./viewport";
|
|
2
|
+
export { resolveChartViewportWindowFromPanDelta, resolveChartViewportWindowFromZoom } from "./viewportTransform";
|
|
3
|
+
export type { ChartViewportInitialIndex, ChartViewportPresetName, ChartViewportWindowHandle, ResolveChartViewportIndexFromPositionOptions, ResolveChartViewportPresetWindowOptions, ResolveChartViewportWindowFromHandlePositionOptions, ResolveChartViewportWindowFromPositionOptions, ResolvedChartViewportWindow, ResolvedChartViewport, ResolveChartViewportOptions, ResolveChartViewportWindowOptions } from "./viewport";
|
|
4
|
+
export type { ResolveChartViewportWindowFromPanDeltaOptions, ResolveChartViewportWindowFromZoomOptions } from "./viewportTransform";
|
|
5
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/interaction/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,qCAAqC,EACrC,iCAAiC,EACjC,gCAAgC,EAChC,0BAA0B,EAC1B,4CAA4C,EAC5C,sCAAsC,EACtC,sBAAsB,EACvB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,sCAAsC,EACtC,kCAAkC,EACnC,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EACV,yBAAyB,EACzB,uBAAuB,EACvB,yBAAyB,EACzB,4CAA4C,EAC5C,uCAAuC,EACvC,mDAAmD,EACnD,6CAA6C,EAC7C,2BAA2B,EAC3B,qBAAqB,EACrB,2BAA2B,EAC3B,iCAAiC,EAClC,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,6CAA6C,EAC7C,yCAAyC,EAC1C,MAAM,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export { resolveChartViewport, resolveChartViewportIndexFromPosition, resolveChartViewportInitialOffset, resolveChartViewportPresetWindow, resolveChartViewportWindow, resolveChartViewportWindowFromHandlePosition, resolveChartViewportWindowFromPosition, sliceChartViewportData } from "./viewport";
|
|
2
|
+
export { resolveChartViewportWindowFromPanDelta, resolveChartViewportWindowFromZoom } from "./viewportTransform";
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import type { ChartXValue } from "../data";
|
|
2
|
+
export type ChartViewportInitialIndex = "start" | "end" | number;
|
|
3
|
+
export type ChartViewportWindowHandle = "start" | "end";
|
|
4
|
+
export type ChartViewportPresetName = "1D" | "1W" | "1M" | "3M" | "6M" | "YTD" | "1Y" | "ALL";
|
|
5
|
+
export type ResolveChartViewportOptions = {
|
|
6
|
+
itemCount: number;
|
|
7
|
+
scrollable?: boolean | undefined;
|
|
8
|
+
viewportWidth: number;
|
|
9
|
+
visiblePoints?: number | undefined;
|
|
10
|
+
};
|
|
11
|
+
export type ResolvedChartViewport = {
|
|
12
|
+
contentWidth: number;
|
|
13
|
+
itemCount: number;
|
|
14
|
+
maxOffset: number;
|
|
15
|
+
pointSpacing: number;
|
|
16
|
+
scrollable: boolean;
|
|
17
|
+
viewportWidth: number;
|
|
18
|
+
visiblePoints: number;
|
|
19
|
+
};
|
|
20
|
+
export type ResolveChartViewportWindowOptions = {
|
|
21
|
+
endIndex?: number | undefined;
|
|
22
|
+
initialIndex?: ChartViewportInitialIndex | undefined;
|
|
23
|
+
itemCount: number;
|
|
24
|
+
startIndex?: number | undefined;
|
|
25
|
+
visiblePoints?: number | undefined;
|
|
26
|
+
};
|
|
27
|
+
export type ResolvedChartViewportWindow = {
|
|
28
|
+
endIndex: number;
|
|
29
|
+
isWindowed: boolean;
|
|
30
|
+
itemCount: number;
|
|
31
|
+
startIndex: number;
|
|
32
|
+
visibleCount: number;
|
|
33
|
+
};
|
|
34
|
+
export type ResolveChartViewportPresetWindowOptions = {
|
|
35
|
+
preset: ChartViewportPresetName;
|
|
36
|
+
xValues: readonly ChartXValue[];
|
|
37
|
+
};
|
|
38
|
+
export type ResolveChartViewportWindowFromPositionOptions = {
|
|
39
|
+
itemCount: number;
|
|
40
|
+
locationX: number;
|
|
41
|
+
plotWidth: number;
|
|
42
|
+
plotX: number;
|
|
43
|
+
visibleCount: number;
|
|
44
|
+
};
|
|
45
|
+
export type ResolveChartViewportIndexFromPositionOptions = {
|
|
46
|
+
itemCount: number;
|
|
47
|
+
locationX: number;
|
|
48
|
+
plotWidth: number;
|
|
49
|
+
plotX: number;
|
|
50
|
+
};
|
|
51
|
+
export type ResolveChartViewportWindowFromHandlePositionOptions = {
|
|
52
|
+
currentWindow: ResolvedChartViewportWindow;
|
|
53
|
+
handle: ChartViewportWindowHandle;
|
|
54
|
+
itemCount: number;
|
|
55
|
+
locationX: number;
|
|
56
|
+
minVisibleCount?: number | undefined;
|
|
57
|
+
plotWidth: number;
|
|
58
|
+
plotX: number;
|
|
59
|
+
};
|
|
60
|
+
export declare const resolveChartViewport: ({ itemCount, scrollable, viewportWidth, visiblePoints }: ResolveChartViewportOptions) => ResolvedChartViewport;
|
|
61
|
+
export declare const resolveChartViewportInitialOffset: ({ initialIndex, viewport }: {
|
|
62
|
+
initialIndex?: ChartViewportInitialIndex | undefined;
|
|
63
|
+
viewport: ResolvedChartViewport;
|
|
64
|
+
}) => number;
|
|
65
|
+
export declare const resolveChartViewportWindow: ({ endIndex, initialIndex, itemCount, startIndex, visiblePoints }: ResolveChartViewportWindowOptions) => ResolvedChartViewportWindow;
|
|
66
|
+
export declare const sliceChartViewportData: <TData>(data: readonly TData[], window: ResolvedChartViewportWindow) => TData[];
|
|
67
|
+
export declare const resolveChartViewportIndexFromPosition: ({ itemCount, locationX, plotWidth, plotX }: ResolveChartViewportIndexFromPositionOptions) => number;
|
|
68
|
+
export declare const resolveChartViewportWindowFromPosition: ({ itemCount, locationX, plotWidth, plotX, visibleCount }: ResolveChartViewportWindowFromPositionOptions) => ResolvedChartViewportWindow;
|
|
69
|
+
export declare const resolveChartViewportWindowFromHandlePosition: ({ currentWindow, handle, itemCount, locationX, minVisibleCount, plotWidth, plotX }: ResolveChartViewportWindowFromHandlePositionOptions) => ResolvedChartViewportWindow;
|
|
70
|
+
export declare const resolveChartViewportPresetWindow: ({ preset, xValues }: ResolveChartViewportPresetWindowOptions) => ResolvedChartViewportWindow;
|
|
71
|
+
//# sourceMappingURL=viewport.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"viewport.d.ts","sourceRoot":"","sources":["../../src/interaction/viewport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,MAAM,MAAM,yBAAyB,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,CAAC;AACjE,MAAM,MAAM,yBAAyB,GAAG,OAAO,GAAG,KAAK,CAAC;AACxD,MAAM,MAAM,uBAAuB,GAC/B,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,KAAK,GACL,IAAI,GACJ,KAAK,CAAC;AAEV,MAAM,MAAM,2BAA2B,GAAG;IACxC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACjC,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,iCAAiC,GAAG;IAC9C,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,YAAY,CAAC,EAAE,yBAAyB,GAAG,SAAS,CAAC;IACrD,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,uCAAuC,GAAG;IACpD,MAAM,EAAE,uBAAuB,CAAC;IAChC,OAAO,EAAE,SAAS,WAAW,EAAE,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,6CAA6C,GAAG;IAC1D,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,4CAA4C,GAAG;IACzD,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,mDAAmD,GAAG;IAChE,aAAa,EAAE,2BAA2B,CAAC;IAC3C,MAAM,EAAE,yBAAyB,CAAC;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAkCF,eAAO,MAAM,oBAAoB,GAAI,yDAKlC,2BAA2B,KAAG,qBAgChC,CAAC;AAEF,eAAO,MAAM,iCAAiC,GAAI,4BAG/C;IACD,YAAY,CAAC,EAAE,yBAAyB,GAAG,SAAS,CAAC;IACrD,QAAQ,EAAE,qBAAqB,CAAC;CACjC,WAgBA,CAAC;AAEF,eAAO,MAAM,0BAA0B,GAAI,kEAMxC,iCAAiC,KAAG,2BAsEtC,CAAC;AAEF,eAAO,MAAM,sBAAsB,GAAI,KAAK,EAC1C,MAAM,SAAS,KAAK,EAAE,EACtB,QAAQ,2BAA2B,YACc,CAAC;AAEpD,eAAO,MAAM,qCAAqC,GAAI,4CAKnD,4CAA4C,WAgB9C,CAAC;AAEF,eAAO,MAAM,sCAAsC,GAAI,0DAMpD,6CAA6C,KAAG,2BAkClD,CAAC;AAEF,eAAO,MAAM,4CAA4C,GAAI,oFAQ1D,mDAAmD,KAAG,2BAiDxD,CAAC;AAyCF,eAAO,MAAM,gCAAgC,GAAI,qBAG9C,uCAAuC,KAAG,2BA8B5C,CAAC"}
|
|
@@ -0,0 +1,216 @@
|
|
|
1
|
+
const minVisiblePoints = 2;
|
|
2
|
+
const millisecondsInOneDay = 24 * 60 * 60 * 1000;
|
|
3
|
+
const presetDayCounts = {
|
|
4
|
+
"1D": 1,
|
|
5
|
+
"1W": 7,
|
|
6
|
+
"1M": 30,
|
|
7
|
+
"3M": 90,
|
|
8
|
+
"6M": 180,
|
|
9
|
+
"1Y": 365
|
|
10
|
+
};
|
|
11
|
+
const clamp = (value, min, max) => {
|
|
12
|
+
if (max < min) {
|
|
13
|
+
return min;
|
|
14
|
+
}
|
|
15
|
+
return Math.min(Math.max(value, min), max);
|
|
16
|
+
};
|
|
17
|
+
const normalizePositiveInteger = (value, fallback, min = 1) => {
|
|
18
|
+
if (typeof value !== "number" || !Number.isFinite(value)) {
|
|
19
|
+
return fallback;
|
|
20
|
+
}
|
|
21
|
+
return Math.max(min, Math.floor(value));
|
|
22
|
+
};
|
|
23
|
+
export const resolveChartViewport = ({ itemCount, scrollable = false, viewportWidth, visiblePoints }) => {
|
|
24
|
+
const safeViewportWidth = Number.isFinite(viewportWidth) && viewportWidth > 0 ? viewportWidth : 0;
|
|
25
|
+
const safeItemCount = normalizePositiveInteger(itemCount, 0, 0);
|
|
26
|
+
const fallbackVisiblePoints = Math.max(safeItemCount, minVisiblePoints);
|
|
27
|
+
const normalizedVisiblePoints = clamp(normalizePositiveInteger(visiblePoints, fallbackVisiblePoints), minVisiblePoints, Math.max(safeItemCount, minVisiblePoints));
|
|
28
|
+
const shouldScroll = scrollable &&
|
|
29
|
+
safeViewportWidth > 0 &&
|
|
30
|
+
safeItemCount > normalizedVisiblePoints;
|
|
31
|
+
const pointSpacing = normalizedVisiblePoints > 1
|
|
32
|
+
? safeViewportWidth / (normalizedVisiblePoints - 1)
|
|
33
|
+
: safeViewportWidth;
|
|
34
|
+
const contentWidth = shouldScroll
|
|
35
|
+
? safeViewportWidth +
|
|
36
|
+
(safeItemCount - normalizedVisiblePoints) * pointSpacing
|
|
37
|
+
: safeViewportWidth;
|
|
38
|
+
return {
|
|
39
|
+
contentWidth,
|
|
40
|
+
itemCount: safeItemCount,
|
|
41
|
+
maxOffset: Math.max(0, contentWidth - safeViewportWidth),
|
|
42
|
+
pointSpacing,
|
|
43
|
+
scrollable: shouldScroll,
|
|
44
|
+
viewportWidth: safeViewportWidth,
|
|
45
|
+
visiblePoints: normalizedVisiblePoints
|
|
46
|
+
};
|
|
47
|
+
};
|
|
48
|
+
export const resolveChartViewportInitialOffset = ({ initialIndex = "start", viewport }) => {
|
|
49
|
+
if (!viewport.scrollable || initialIndex === "start") {
|
|
50
|
+
return 0;
|
|
51
|
+
}
|
|
52
|
+
if (initialIndex === "end") {
|
|
53
|
+
return viewport.maxOffset;
|
|
54
|
+
}
|
|
55
|
+
if (!Number.isFinite(initialIndex)) {
|
|
56
|
+
return 0;
|
|
57
|
+
}
|
|
58
|
+
const index = clamp(Math.floor(initialIndex), 0, viewport.itemCount - 1);
|
|
59
|
+
return clamp(index * viewport.pointSpacing, 0, viewport.maxOffset);
|
|
60
|
+
};
|
|
61
|
+
export const resolveChartViewportWindow = ({ endIndex, initialIndex = "start", itemCount, startIndex, visiblePoints }) => {
|
|
62
|
+
const safeItemCount = normalizePositiveInteger(itemCount, 0, 0);
|
|
63
|
+
if (safeItemCount === 0) {
|
|
64
|
+
return {
|
|
65
|
+
endIndex: 0,
|
|
66
|
+
isWindowed: false,
|
|
67
|
+
itemCount: 0,
|
|
68
|
+
startIndex: 0,
|
|
69
|
+
visibleCount: 0
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
if (startIndex !== undefined || endIndex !== undefined) {
|
|
73
|
+
const normalizedStartIndex = clamp(normalizePositiveInteger(startIndex, 0, 0), 0, safeItemCount - 1);
|
|
74
|
+
const normalizedEndIndex = clamp(normalizePositiveInteger(endIndex, safeItemCount, 0), normalizedStartIndex + 1, safeItemCount);
|
|
75
|
+
return {
|
|
76
|
+
endIndex: normalizedEndIndex,
|
|
77
|
+
isWindowed: normalizedStartIndex > 0 || normalizedEndIndex < safeItemCount,
|
|
78
|
+
itemCount: safeItemCount,
|
|
79
|
+
startIndex: normalizedStartIndex,
|
|
80
|
+
visibleCount: normalizedEndIndex - normalizedStartIndex
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
const normalizedVisiblePoints = clamp(normalizePositiveInteger(visiblePoints, safeItemCount), minVisiblePoints, safeItemCount);
|
|
84
|
+
if (normalizedVisiblePoints >= safeItemCount) {
|
|
85
|
+
return {
|
|
86
|
+
endIndex: safeItemCount,
|
|
87
|
+
isWindowed: false,
|
|
88
|
+
itemCount: safeItemCount,
|
|
89
|
+
startIndex: 0,
|
|
90
|
+
visibleCount: safeItemCount
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
const startFromInitialIndex = initialIndex === "end"
|
|
94
|
+
? safeItemCount - normalizedVisiblePoints
|
|
95
|
+
: typeof initialIndex === "number" && Number.isFinite(initialIndex)
|
|
96
|
+
? Math.floor(initialIndex)
|
|
97
|
+
: 0;
|
|
98
|
+
const normalizedStartIndex = clamp(startFromInitialIndex, 0, safeItemCount - normalizedVisiblePoints);
|
|
99
|
+
return {
|
|
100
|
+
endIndex: normalizedStartIndex + normalizedVisiblePoints,
|
|
101
|
+
isWindowed: true,
|
|
102
|
+
itemCount: safeItemCount,
|
|
103
|
+
startIndex: normalizedStartIndex,
|
|
104
|
+
visibleCount: normalizedVisiblePoints
|
|
105
|
+
};
|
|
106
|
+
};
|
|
107
|
+
export const sliceChartViewportData = (data, window) => data.slice(window.startIndex, window.endIndex);
|
|
108
|
+
export const resolveChartViewportIndexFromPosition = ({ itemCount, locationX, plotWidth, plotX }) => {
|
|
109
|
+
const safeItemCount = normalizePositiveInteger(itemCount, 0, 0);
|
|
110
|
+
if (safeItemCount === 0) {
|
|
111
|
+
return 0;
|
|
112
|
+
}
|
|
113
|
+
const safePlotWidth = Number.isFinite(plotWidth) && plotWidth > 0 ? plotWidth : 1;
|
|
114
|
+
const normalizedPosition = clamp((locationX - plotX) / safePlotWidth, 0, 1);
|
|
115
|
+
return clamp(Math.round(normalizedPosition * (safeItemCount - 1)), 0, safeItemCount - 1);
|
|
116
|
+
};
|
|
117
|
+
export const resolveChartViewportWindowFromPosition = ({ itemCount, locationX, plotWidth, plotX, visibleCount }) => {
|
|
118
|
+
const safeItemCount = normalizePositiveInteger(itemCount, 0, 0);
|
|
119
|
+
if (safeItemCount === 0) {
|
|
120
|
+
return resolveChartViewportWindow({ itemCount: safeItemCount });
|
|
121
|
+
}
|
|
122
|
+
const safeVisibleCount = clamp(normalizePositiveInteger(visibleCount, safeItemCount), minVisiblePoints, safeItemCount);
|
|
123
|
+
if (safeVisibleCount >= safeItemCount) {
|
|
124
|
+
return resolveChartViewportWindow({ itemCount: safeItemCount });
|
|
125
|
+
}
|
|
126
|
+
const centerIndex = resolveChartViewportIndexFromPosition({
|
|
127
|
+
itemCount: safeItemCount,
|
|
128
|
+
locationX,
|
|
129
|
+
plotWidth,
|
|
130
|
+
plotX
|
|
131
|
+
});
|
|
132
|
+
const startIndex = clamp(centerIndex - Math.floor(safeVisibleCount / 2), 0, safeItemCount - safeVisibleCount);
|
|
133
|
+
return resolveChartViewportWindow({
|
|
134
|
+
itemCount: safeItemCount,
|
|
135
|
+
startIndex,
|
|
136
|
+
endIndex: startIndex + safeVisibleCount
|
|
137
|
+
});
|
|
138
|
+
};
|
|
139
|
+
export const resolveChartViewportWindowFromHandlePosition = ({ currentWindow, handle, itemCount, locationX, minVisibleCount, plotWidth, plotX }) => {
|
|
140
|
+
const safeItemCount = normalizePositiveInteger(itemCount, 0, 0);
|
|
141
|
+
if (safeItemCount === 0) {
|
|
142
|
+
return resolveChartViewportWindow({ itemCount: safeItemCount });
|
|
143
|
+
}
|
|
144
|
+
const normalizedCurrentWindow = resolveChartViewportWindow({
|
|
145
|
+
itemCount: safeItemCount,
|
|
146
|
+
startIndex: currentWindow.startIndex,
|
|
147
|
+
endIndex: currentWindow.endIndex
|
|
148
|
+
});
|
|
149
|
+
const safeMinVisibleCount = clamp(normalizePositiveInteger(minVisibleCount, minVisiblePoints), minVisiblePoints, safeItemCount);
|
|
150
|
+
const targetIndex = resolveChartViewportIndexFromPosition({
|
|
151
|
+
itemCount: safeItemCount,
|
|
152
|
+
locationX,
|
|
153
|
+
plotWidth,
|
|
154
|
+
plotX
|
|
155
|
+
});
|
|
156
|
+
if (handle === "start") {
|
|
157
|
+
const startIndex = clamp(targetIndex, 0, normalizedCurrentWindow.endIndex - safeMinVisibleCount);
|
|
158
|
+
return resolveChartViewportWindow({
|
|
159
|
+
itemCount: safeItemCount,
|
|
160
|
+
startIndex,
|
|
161
|
+
endIndex: normalizedCurrentWindow.endIndex
|
|
162
|
+
});
|
|
163
|
+
}
|
|
164
|
+
const endIndex = clamp(targetIndex + 1, normalizedCurrentWindow.startIndex + safeMinVisibleCount, safeItemCount);
|
|
165
|
+
return resolveChartViewportWindow({
|
|
166
|
+
itemCount: safeItemCount,
|
|
167
|
+
startIndex: normalizedCurrentWindow.startIndex,
|
|
168
|
+
endIndex
|
|
169
|
+
});
|
|
170
|
+
};
|
|
171
|
+
const isFiniteDate = (value) => value instanceof Date && Number.isFinite(value.valueOf());
|
|
172
|
+
const getPresetPointFallback = (preset, itemCount) => {
|
|
173
|
+
if (preset === "ALL") {
|
|
174
|
+
return itemCount;
|
|
175
|
+
}
|
|
176
|
+
if (preset === "YTD") {
|
|
177
|
+
return Math.min(itemCount, 252);
|
|
178
|
+
}
|
|
179
|
+
return Math.min(itemCount, presetDayCounts[preset] ?? itemCount);
|
|
180
|
+
};
|
|
181
|
+
const getStartDateForPreset = (preset, lastDate) => {
|
|
182
|
+
if (preset === "ALL") {
|
|
183
|
+
return undefined;
|
|
184
|
+
}
|
|
185
|
+
if (preset === "YTD") {
|
|
186
|
+
return new Date(lastDate.getFullYear(), 0, 1);
|
|
187
|
+
}
|
|
188
|
+
const days = presetDayCounts[preset];
|
|
189
|
+
if (days === undefined) {
|
|
190
|
+
return undefined;
|
|
191
|
+
}
|
|
192
|
+
return new Date(lastDate.valueOf() - days * millisecondsInOneDay);
|
|
193
|
+
};
|
|
194
|
+
export const resolveChartViewportPresetWindow = ({ preset, xValues }) => {
|
|
195
|
+
const itemCount = xValues.length;
|
|
196
|
+
if (preset === "ALL") {
|
|
197
|
+
return resolveChartViewportWindow({ itemCount });
|
|
198
|
+
}
|
|
199
|
+
const lastValue = xValues[itemCount - 1];
|
|
200
|
+
if (lastValue && isFiniteDate(lastValue)) {
|
|
201
|
+
const startDate = getStartDateForPreset(preset, lastValue);
|
|
202
|
+
if (startDate) {
|
|
203
|
+
const startIndex = xValues.findIndex((value) => isFiniteDate(value) && value.valueOf() >= startDate.valueOf());
|
|
204
|
+
return resolveChartViewportWindow({
|
|
205
|
+
itemCount,
|
|
206
|
+
startIndex: startIndex >= 0 ? startIndex : itemCount - 1,
|
|
207
|
+
endIndex: itemCount
|
|
208
|
+
});
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
return resolveChartViewportWindow({
|
|
212
|
+
itemCount,
|
|
213
|
+
visiblePoints: getPresetPointFallback(preset, itemCount),
|
|
214
|
+
initialIndex: "end"
|
|
215
|
+
});
|
|
216
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { type ResolvedChartViewportWindow } from "./viewport";
|
|
2
|
+
export type ResolveChartViewportWindowFromZoomOptions = {
|
|
3
|
+
anchorIndex?: number | undefined;
|
|
4
|
+
currentWindow: ResolvedChartViewportWindow;
|
|
5
|
+
itemCount: number;
|
|
6
|
+
maxVisibleCount?: number | undefined;
|
|
7
|
+
minVisibleCount?: number | undefined;
|
|
8
|
+
zoomFactor: number;
|
|
9
|
+
};
|
|
10
|
+
export type ResolveChartViewportWindowFromPanDeltaOptions = {
|
|
11
|
+
currentWindow: ResolvedChartViewportWindow;
|
|
12
|
+
deltaPoints: number;
|
|
13
|
+
itemCount: number;
|
|
14
|
+
};
|
|
15
|
+
export declare const resolveChartViewportWindowFromZoom: ({ anchorIndex, currentWindow, itemCount, maxVisibleCount, minVisibleCount, zoomFactor }: ResolveChartViewportWindowFromZoomOptions) => ResolvedChartViewportWindow;
|
|
16
|
+
export declare const resolveChartViewportWindowFromPanDelta: ({ currentWindow, deltaPoints, itemCount }: ResolveChartViewportWindowFromPanDeltaOptions) => ResolvedChartViewportWindow;
|
|
17
|
+
//# sourceMappingURL=viewportTransform.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"viewportTransform.d.ts","sourceRoot":"","sources":["../../src/interaction/viewportTransform.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,2BAA2B,EACjC,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,yCAAyC,GAAG;IACtD,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,aAAa,EAAE,2BAA2B,CAAC;IAC3C,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,6CAA6C,GAAG;IAC1D,aAAa,EAAE,2BAA2B,CAAC;IAC3C,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAwBF,eAAO,MAAM,kCAAkC,GAAI,yFAOhD,yCAAyC,KAAG,2BA+D9C,CAAC;AAEF,eAAO,MAAM,sCAAsC,GAAI,2CAIpD,6CAA6C,KAAG,2BAgClD,CAAC"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { resolveChartViewportWindow } from "./viewport";
|
|
2
|
+
const minVisiblePoints = 2;
|
|
3
|
+
const clamp = (value, min, max) => {
|
|
4
|
+
if (max < min) {
|
|
5
|
+
return min;
|
|
6
|
+
}
|
|
7
|
+
return Math.min(Math.max(value, min), max);
|
|
8
|
+
};
|
|
9
|
+
const normalizePositiveInteger = (value, fallback, min = 1) => {
|
|
10
|
+
if (typeof value !== "number" || !Number.isFinite(value)) {
|
|
11
|
+
return fallback;
|
|
12
|
+
}
|
|
13
|
+
return Math.max(min, Math.floor(value));
|
|
14
|
+
};
|
|
15
|
+
export const resolveChartViewportWindowFromZoom = ({ anchorIndex, currentWindow, itemCount, maxVisibleCount, minVisibleCount, zoomFactor }) => {
|
|
16
|
+
const safeItemCount = normalizePositiveInteger(itemCount, 0, 0);
|
|
17
|
+
if (safeItemCount === 0) {
|
|
18
|
+
return resolveChartViewportWindow({ itemCount: safeItemCount });
|
|
19
|
+
}
|
|
20
|
+
const normalizedCurrentWindow = resolveChartViewportWindow({
|
|
21
|
+
itemCount: safeItemCount,
|
|
22
|
+
startIndex: currentWindow.startIndex,
|
|
23
|
+
endIndex: currentWindow.endIndex
|
|
24
|
+
});
|
|
25
|
+
const normalizedMinVisibleCount = clamp(normalizePositiveInteger(minVisibleCount, minVisiblePoints), minVisiblePoints, safeItemCount);
|
|
26
|
+
const normalizedMaxVisibleCount = clamp(normalizePositiveInteger(maxVisibleCount, safeItemCount), normalizedMinVisibleCount, safeItemCount);
|
|
27
|
+
const safeZoomFactor = typeof zoomFactor === "number" && Number.isFinite(zoomFactor)
|
|
28
|
+
? Math.max(0.01, zoomFactor)
|
|
29
|
+
: 1;
|
|
30
|
+
const nextVisibleCount = clamp(Math.round(normalizedCurrentWindow.visibleCount / safeZoomFactor), normalizedMinVisibleCount, normalizedMaxVisibleCount);
|
|
31
|
+
if (nextVisibleCount >= safeItemCount) {
|
|
32
|
+
return resolveChartViewportWindow({ itemCount: safeItemCount });
|
|
33
|
+
}
|
|
34
|
+
const currentSpan = Math.max(1, normalizedCurrentWindow.visibleCount - 1);
|
|
35
|
+
const fallbackAnchor = normalizedCurrentWindow.startIndex +
|
|
36
|
+
(normalizedCurrentWindow.visibleCount - 1) / 2;
|
|
37
|
+
const resolvedAnchor = clamp(typeof anchorIndex === "number" && Number.isFinite(anchorIndex)
|
|
38
|
+
? anchorIndex
|
|
39
|
+
: fallbackAnchor, normalizedCurrentWindow.startIndex, normalizedCurrentWindow.endIndex - 1);
|
|
40
|
+
const anchorRatio = clamp((resolvedAnchor - normalizedCurrentWindow.startIndex) / currentSpan, 0, 1);
|
|
41
|
+
const startIndex = clamp(Math.round(resolvedAnchor - (nextVisibleCount - 1) * anchorRatio), 0, safeItemCount - nextVisibleCount);
|
|
42
|
+
return resolveChartViewportWindow({
|
|
43
|
+
itemCount: safeItemCount,
|
|
44
|
+
startIndex,
|
|
45
|
+
endIndex: startIndex + nextVisibleCount
|
|
46
|
+
});
|
|
47
|
+
};
|
|
48
|
+
export const resolveChartViewportWindowFromPanDelta = ({ currentWindow, deltaPoints, itemCount }) => {
|
|
49
|
+
const safeItemCount = normalizePositiveInteger(itemCount, 0, 0);
|
|
50
|
+
if (safeItemCount === 0) {
|
|
51
|
+
return resolveChartViewportWindow({ itemCount: safeItemCount });
|
|
52
|
+
}
|
|
53
|
+
const normalizedCurrentWindow = resolveChartViewportWindow({
|
|
54
|
+
itemCount: safeItemCount,
|
|
55
|
+
startIndex: currentWindow.startIndex,
|
|
56
|
+
endIndex: currentWindow.endIndex
|
|
57
|
+
});
|
|
58
|
+
if (normalizedCurrentWindow.visibleCount >= safeItemCount) {
|
|
59
|
+
return normalizedCurrentWindow;
|
|
60
|
+
}
|
|
61
|
+
const delta = typeof deltaPoints === "number" && Number.isFinite(deltaPoints)
|
|
62
|
+
? Math.round(deltaPoints)
|
|
63
|
+
: 0;
|
|
64
|
+
const startIndex = clamp(normalizedCurrentWindow.startIndex + delta, 0, safeItemCount - normalizedCurrentWindow.visibleCount);
|
|
65
|
+
return resolveChartViewportWindow({
|
|
66
|
+
itemCount: safeItemCount,
|
|
67
|
+
startIndex,
|
|
68
|
+
endIndex: startIndex + normalizedCurrentWindow.visibleCount
|
|
69
|
+
});
|
|
70
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"autoPadding.d.ts","sourceRoot":"","sources":["../../src/layout/autoPadding.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,OAAO,EAAQ,MAAM,SAAS,CAAC;AAUjE,eAAO,MAAM,oBAAoB,GAAI,yEAQlC,kBAAkB,KAAG,OAyBvB,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { normalizePadding } from "./chartBox";
|
|
2
|
+
const maxWidth = (sizes = []) => {
|
|
3
|
+
return sizes.reduce((max, size) => Math.max(max, size.width), 0);
|
|
4
|
+
};
|
|
5
|
+
const maxHeight = (sizes = []) => {
|
|
6
|
+
return sizes.reduce((max, size) => Math.max(max, size.height), 0);
|
|
7
|
+
};
|
|
8
|
+
export const calculateAutoPadding = ({ base = {}, leftLabels = [], rightLabels = [], topLabels = [], bottomLabels = [], legend, gap = 8 }) => {
|
|
9
|
+
const padding = normalizePadding(base);
|
|
10
|
+
const leftLabelWidth = maxWidth(leftLabels);
|
|
11
|
+
const rightLabelWidth = maxWidth(rightLabels);
|
|
12
|
+
const topLabelHeight = maxHeight(topLabels);
|
|
13
|
+
const bottomLabelHeight = maxHeight(bottomLabels);
|
|
14
|
+
padding.left += leftLabelWidth > 0 ? leftLabelWidth + gap : 0;
|
|
15
|
+
padding.right += rightLabelWidth > 0 ? rightLabelWidth + gap : 0;
|
|
16
|
+
padding.top += topLabelHeight > 0 ? topLabelHeight + gap : 0;
|
|
17
|
+
padding.bottom += bottomLabelHeight > 0 ? bottomLabelHeight + gap : 0;
|
|
18
|
+
if (legend) {
|
|
19
|
+
if (legend.position === "top") {
|
|
20
|
+
padding.top += legend.height + gap;
|
|
21
|
+
}
|
|
22
|
+
else if (legend.position === "bottom") {
|
|
23
|
+
padding.bottom += legend.height + gap;
|
|
24
|
+
}
|
|
25
|
+
else if (legend.position === "left") {
|
|
26
|
+
padding.left += legend.width + gap;
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
padding.right += legend.width + gap;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
return padding;
|
|
33
|
+
};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { ChartBoxes, Padding, Rect, Size } from "./types";
|
|
2
|
+
export declare const normalizePadding: (padding?: Partial<Padding>) => Padding;
|
|
3
|
+
export declare const createRect: (x: number, y: number, width: number, height: number) => Rect;
|
|
4
|
+
export declare const solveChartBoxes: (size: Size, padding?: Partial<Padding>) => ChartBoxes;
|
|
5
|
+
//# sourceMappingURL=chartBox.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chartBox.d.ts","sourceRoot":"","sources":["../../src/layout/chartBox.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/D,eAAO,MAAM,gBAAgB,GAAI,UAAS,OAAO,CAAC,OAAO,CAAM,KAAG,OAKhE,CAAC;AAEH,eAAO,MAAM,UAAU,GACrB,GAAG,MAAM,EACT,GAAG,MAAM,EACT,OAAO,MAAM,EACb,QAAQ,MAAM,KACb,IAKD,CAAC;AAEH,eAAO,MAAM,eAAe,GAC1B,MAAM,IAAI,EACV,UAAS,OAAO,CAAC,OAAO,CAAM,KAC7B,UAeF,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export const normalizePadding = (padding = {}) => ({
|
|
2
|
+
top: padding.top ?? 0,
|
|
3
|
+
right: padding.right ?? 0,
|
|
4
|
+
bottom: padding.bottom ?? 0,
|
|
5
|
+
left: padding.left ?? 0
|
|
6
|
+
});
|
|
7
|
+
export const createRect = (x, y, width, height) => ({
|
|
8
|
+
x,
|
|
9
|
+
y,
|
|
10
|
+
width: Math.max(0, width),
|
|
11
|
+
height: Math.max(0, height)
|
|
12
|
+
});
|
|
13
|
+
export const solveChartBoxes = (size, padding = {}) => {
|
|
14
|
+
const normalizedPadding = normalizePadding(padding);
|
|
15
|
+
const outer = createRect(0, 0, size.width, size.height);
|
|
16
|
+
const plot = createRect(normalizedPadding.left, normalizedPadding.top, size.width - normalizedPadding.left - normalizedPadding.right, size.height - normalizedPadding.top - normalizedPadding.bottom);
|
|
17
|
+
return {
|
|
18
|
+
outer,
|
|
19
|
+
plot,
|
|
20
|
+
padding: normalizedPadding
|
|
21
|
+
};
|
|
22
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"debugLayout.d.ts","sourceRoot":"","sources":["../../src/layout/debugLayout.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,4BAA4B,EAC5B,gBAAgB,EAEjB,MAAM,SAAS,CAAC;AAUjB,eAAO,MAAM,qBAAqB,GAAI,oCAKnC,4BAA4B,KAAG,gBAmBjC,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
const withKind = (rect, kind) => ({
|
|
2
|
+
...rect,
|
|
3
|
+
kind
|
|
4
|
+
});
|
|
5
|
+
export const buildLayoutDebugModel = ({ boxes, labels = [], legend, tooltip }) => {
|
|
6
|
+
const rects = [
|
|
7
|
+
withKind({ id: "outer", ...boxes.outer }, "outer"),
|
|
8
|
+
withKind({ id: "plot", ...boxes.plot }, "plot")
|
|
9
|
+
];
|
|
10
|
+
labels.forEach((label) => {
|
|
11
|
+
rects.push(withKind(label, "label"));
|
|
12
|
+
});
|
|
13
|
+
legend?.items.forEach((item) => {
|
|
14
|
+
rects.push(withKind(item, "legend"));
|
|
15
|
+
});
|
|
16
|
+
if (tooltip) {
|
|
17
|
+
rects.push(withKind({ id: "tooltip", ...tooltip.rect }, "tooltip"));
|
|
18
|
+
}
|
|
19
|
+
return { rects };
|
|
20
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export { calculateAutoPadding } from "./autoPadding";
|
|
2
|
+
export { createRect, normalizePadding, solveChartBoxes } from "./chartBox";
|
|
3
|
+
export { buildLayoutDebugModel } from "./debugLayout";
|
|
4
|
+
export { solveLabelCollision } from "./labelCollision";
|
|
5
|
+
export { layoutLegend } from "./legendLayout";
|
|
6
|
+
export { placeTooltip } from "./tooltipPlacement";
|
|
7
|
+
export type { AutoPaddingOptions, BuildLayoutDebugModelOptions, ChartBoxes, LabelBox, LabelCollisionOptions, LabelCollisionResult, LabelStrategy, LayoutDebugModel, LayoutDebugRect, LegendItem, LegendLayout, LegendLayoutItem, LegendLayoutOptions, LegendPosition, Padding, Rect, Size, TooltipPlacement, TooltipPlacementOptions, TooltipPlacementResult } from "./types";
|
|
8
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/layout/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC3E,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,YAAY,EACV,kBAAkB,EAClB,4BAA4B,EAC5B,UAAU,EACV,QAAQ,EACR,qBAAqB,EACrB,oBAAoB,EACpB,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,UAAU,EACV,YAAY,EACZ,gBAAgB,EAChB,mBAAmB,EACnB,cAAc,EACd,OAAO,EACP,IAAI,EACJ,IAAI,EACJ,gBAAgB,EAChB,uBAAuB,EACvB,sBAAsB,EACvB,MAAM,SAAS,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { calculateAutoPadding } from "./autoPadding";
|
|
2
|
+
export { createRect, normalizePadding, solveChartBoxes } from "./chartBox";
|
|
3
|
+
export { buildLayoutDebugModel } from "./debugLayout";
|
|
4
|
+
export { solveLabelCollision } from "./labelCollision";
|
|
5
|
+
export { layoutLegend } from "./legendLayout";
|
|
6
|
+
export { placeTooltip } from "./tooltipPlacement";
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import type { LabelCollisionOptions, LabelCollisionResult } from "./types";
|
|
2
|
+
export declare const solveLabelCollision: ({ labels, availableWidth, allowRotate, allowStagger, minGap, maxRotation }: LabelCollisionOptions) => LabelCollisionResult;
|
|
3
|
+
//# sourceMappingURL=labelCollision.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"labelCollision.d.ts","sourceRoot":"","sources":["../../src/layout/labelCollision.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,SAAS,CAAC;AAuCjB,eAAO,MAAM,mBAAmB,GAAI,4EAOjC,qBAAqB,KAAG,oBA+E1B,CAAC"}
|